summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoey Castillo <jose.castillo@gmail.com>2021-10-25 14:52:40 -0400
committerJoey Castillo <jose.castillo@gmail.com>2021-10-25 14:52:40 -0400
commit22c072ac3f4fb450315b204dc4a6f2644c8665a7 (patch)
tree340cedd1875e873448449a868bf9c937cece881f
parent24e160611e12df8d31edc02af21ce07ad0929e1b (diff)
parentbadb4ba9090c6228738a555b82c988aafbe72fec (diff)
downloadSensor-Watch-22c072ac3f4fb450315b204dc4a6f2644c8665a7.tar.gz
Sensor-Watch-22c072ac3f4fb450315b204dc4a6f2644c8665a7.tar.bz2
Sensor-Watch-22c072ac3f4fb450315b204dc4a6f2644c8665a7.zip
Merge branch 'main' into more-asf-files
-rw-r--r--PCB/Main Boards/OSO-SWAT-A1-05-BLUE.brd6
-rw-r--r--PCB/Main Boards/OSO-SWAT-A1-05-BLUE.sch4
-rw-r--r--PCB/Main Boards/Watch Dev Board/OSO-FEAL-A1-00.brd7947
-rw-r--r--PCB/Main Boards/Watch Dev Board/OSO-FEAL-A1-00.sch6772
-rw-r--r--PCB/Sensor Boards/OSO-MISC-21-015 Temperature and Light Board.brd621
-rw-r--r--PCB/Sensor Boards/OSO-MISC-21-015 Temperature and Light Board.sch1090
-rw-r--r--PCB/Sensor Boards/OSO-MISC-21-016 Power Test.brd543
-rw-r--r--PCB/Sensor Boards/OSO-MISC-21-016 Power Test.sch1558
-rw-r--r--PCB/Sensor Boards/OSO-MISC-21-017 Sensor Watch Flash.brd576
-rw-r--r--PCB/Sensor Boards/OSO-MISC-21-017 Sensor Watch Flash.sch1324
-rw-r--r--PCB/Sensor Boards/OSO-MISC-21-018 Temperature Board.brd541
-rw-r--r--PCB/Sensor Boards/OSO-MISC-21-018 Temperature Board.sch947
-rw-r--r--apps/Sensor Watch BME280 Project/app.c70
-rw-r--r--apps/Sensor Watch Buzzer Demo/app.c6
-rw-r--r--apps/Sensor Watch Starter Project/app.c75
-rw-r--r--apps/beats-time/app.c282
-rwxr-xr-xapps/beats-time/make/.gitignore1
-rwxr-xr-xapps/beats-time/make/Makefile24
-rw-r--r--boards/OSO-FEAL-A1-00/pins.h (renamed from boards/OSO-MISC-21-013/pins.h)48
-rw-r--r--make.mk23
-rw-r--r--movement/README.md297
-rwxr-xr-xmovement/make/.gitignore1
-rwxr-xr-xmovement/make/Makefile39
-rw-r--r--movement/movement.c244
-rw-r--r--movement/movement.h190
-rw-r--r--movement/movement_config.h21
-rw-r--r--movement/watch_faces/clock/simple_clock_face.c85
-rw-r--r--movement/watch_faces/clock/simple_clock_face.h21
-rw-r--r--movement/watch_faces/complications/beats_face.c75
-rw-r--r--movement/watch_faces/complications/beats_face.h20
-rw-r--r--movement/watch_faces/complications/pulsometer_face.c90
-rw-r--r--movement/watch_faces/complications/pulsometer_face.h25
-rw-r--r--movement/watch_faces/demos/character_set_face.c51
-rw-r--r--movement/watch_faces/demos/character_set_face.h19
-rw-r--r--movement/watch_faces/settings/preferences_face.c168
-rw-r--r--movement/watch_faces/settings/preferences_face.h19
-rw-r--r--movement/watch_faces/settings/set_time_face.c112
-rw-r--r--movement/watch_faces/settings/set_time_face.h19
-rw-r--r--movement/watch_faces/thermistor/thermistor_driver.c76
-rw-r--r--movement/watch_faces/thermistor/thermistor_driver.h13
-rw-r--r--movement/watch_faces/thermistor/thermistor_logging_face.c114
-rw-r--r--movement/watch_faces/thermistor/thermistor_logging_face.h35
-rw-r--r--movement/watch_faces/thermistor/thermistor_readout_face.c73
-rw-r--r--movement/watch_faces/thermistor/thermistor_readout_face.h19
-rw-r--r--watch-library/config/hpl_eic_config.h7
-rw-r--r--watch-library/config/hpl_gclk_config.h5
-rw-r--r--watch-library/config/hpl_osc32kctrl_config.h4
-rw-r--r--watch-library/config/hpl_slcd_config.h48
-rw-r--r--watch-library/hal/documentation/calendar.rst72
-rw-r--r--watch-library/hal/include/hal_calendar.h159
-rw-r--r--watch-library/hal/include/hpl_calendar.h251
-rw-r--r--watch-library/hal/src/hal_calendar.c645
-rw-r--r--watch-library/hpl/rtc/hpl_rtc.c430
-rw-r--r--watch-library/hpl/rtc/hpl_rtc_base.h52
-rw-r--r--watch-library/hw/driver_init.c11
-rw-r--r--watch-library/hw/driver_init.h21
-rwxr-xr-xwatch-library/main.c6
-rw-r--r--watch-library/watch/watch.c12
-rw-r--r--watch-library/watch/watch.h2
-rw-r--r--watch-library/watch/watch_adc.c2
-rw-r--r--watch-library/watch/watch_adc.h5
-rw-r--r--watch-library/watch/watch_app.h47
-rw-r--r--watch-library/watch/watch_buzzer.c2
-rw-r--r--watch-library/watch/watch_buzzer.h5
-rw-r--r--watch-library/watch/watch_deepsleep.c116
-rw-r--r--watch-library/watch/watch_deepsleep.h144
-rw-r--r--watch-library/watch/watch_extint.c10
-rw-r--r--watch-library/watch/watch_extint.h4
-rw-r--r--watch-library/watch/watch_gpio.c2
-rw-r--r--watch-library/watch/watch_gpio.h5
-rw-r--r--watch-library/watch/watch_i2c.c4
-rw-r--r--watch-library/watch/watch_i2c.h5
-rw-r--r--watch-library/watch/watch_led.c2
-rw-r--r--watch-library/watch/watch_led.h5
-rw-r--r--watch-library/watch/watch_private.c4
-rw-r--r--watch-library/watch/watch_private.h8
-rw-r--r--watch-library/watch/watch_rtc.c167
-rw-r--r--watch-library/watch/watch_rtc.h114
-rw-r--r--watch-library/watch/watch_slcd.c81
-rw-r--r--watch-library/watch/watch_slcd.h49
-rw-r--r--watch-library/watch/watch_uart.c1
-rw-r--r--watch-library/watch/watch_uart.h5
-rw-r--r--watch-library/watch/watch_utility.c35
-rw-r--r--watch-library/watch/watch_utility.h41
84 files changed, 24967 insertions, 1905 deletions
diff --git a/PCB/Main Boards/OSO-SWAT-A1-05-BLUE.brd b/PCB/Main Boards/OSO-SWAT-A1-05-BLUE.brd
index 6fc45acf..4f691500 100644
--- a/PCB/Main Boards/OSO-SWAT-A1-05-BLUE.brd
+++ b/PCB/Main Boards/OSO-SWAT-A1-05-BLUE.brd
@@ -3,7 +3,7 @@
<eagle version="9.6.2">
<drawing>
<settings>
-<setting alwaysvectorfont="yes"/>
+<setting alwaysvectorfont="no"/>
<setting keepoldvectorfont="yes"/>
<setting verticaltext="up"/>
</settings>
@@ -3134,11 +3134,11 @@ Please make sure your boards conform to these design rules.
<attribute name="PURCHASE-URL" value="https://pricing.snapeda.com/search/part/EVP-BB1AAB000/?ref=eda" x="15.9004" y="1.143" size="1.778" layer="28" rot="MR0" display="off"/>
<attribute name="VALUE" x="18.53021875" y="-1.86251875" size="0.508" layer="28" font="vector" ratio="18" rot="MR0" align="center"/>
</element>
-<element name="R8" library="microbuilder" package="_0603MP" value="220" x="3.937" y="15.1384" smashed="yes" rot="R180">
+<element name="R8" library="microbuilder" package="_0603MP" value="100" x="3.937" y="15.1384" smashed="yes" rot="R180">
<attribute name="NAME" x="5.7277" y="15.1384" size="0.508" layer="25" font="vector" ratio="18" rot="R180" align="center"/>
<attribute name="VALUE" x="4.8895" y="16.0909" size="0.4064" layer="27" ratio="10" rot="R180"/>
</element>
-<element name="R9" library="microbuilder" package="_0603MP" value="220" x="3.6576" y="16.1798" smashed="yes" rot="R180">
+<element name="R9" library="microbuilder" package="_0603MP" value="100" x="3.6576" y="16.1798" smashed="yes" rot="R180">
<attribute name="NAME" x="5.4737" y="16.1798" size="0.508" layer="25" font="vector" ratio="18" rot="R180" align="center"/>
<attribute name="VALUE" x="4.6101" y="17.1323" size="0.4064" layer="27" ratio="10" rot="R180"/>
</element>
diff --git a/PCB/Main Boards/OSO-SWAT-A1-05-BLUE.sch b/PCB/Main Boards/OSO-SWAT-A1-05-BLUE.sch
index 8fe68647..52751cc6 100644
--- a/PCB/Main Boards/OSO-SWAT-A1-05-BLUE.sch
+++ b/PCB/Main Boards/OSO-SWAT-A1-05-BLUE.sch
@@ -4223,8 +4223,8 @@ by exp-lbrs.ulp</description>
<part name="+3V1" library="supply1" library_urn="urn:adsk.eagle:library:371" deviceset="+3V3" device=""/>
<part name="RESET" library="EVP-BB1AAB000" deviceset="EVP-BB1AAB000" device=""/>
<part name="GND15" library="supply1" deviceset="GND" device=""/>
-<part name="R8" library="microbuilder" deviceset="RESISTOR" device="_0603MP" value="220"/>
-<part name="R9" library="microbuilder" deviceset="RESISTOR" device="_0603MP" value="220"/>
+<part name="R8" library="microbuilder" deviceset="RESISTOR" device="_0603MP" value="100"/>
+<part name="R9" library="microbuilder" deviceset="RESISTOR" device="_0603MP" value="100"/>
<part name="R2" library="microbuilder" deviceset="RESISTOR" device="_0603MP" value="10K"/>
<part name="SUPPLY5" library="SparkFun-PowerSymbols" deviceset="VCC" device=""/>
<part name="R5" library="microbuilder" deviceset="RESISTOR" device="_0603MP" value="10K"/>
diff --git a/PCB/Main Boards/Watch Dev Board/OSO-FEAL-A1-00.brd b/PCB/Main Boards/Watch Dev Board/OSO-FEAL-A1-00.brd
new file mode 100644
index 00000000..60e8374a
--- /dev/null
+++ b/PCB/Main Boards/Watch Dev Board/OSO-FEAL-A1-00.brd
@@ -0,0 +1,7947 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE eagle SYSTEM "eagle.dtd">
+<eagle version="9.6.2">
+<drawing>
+<settings>
+<setting alwaysvectorfont="yes"/>
+<setting keepoldvectorfont="yes"/>
+<setting verticaltext="up"/>
+</settings>
+<grid distance="0.01" unitdist="inch" unit="inch" style="lines" multiple="1" display="no" altdistance="0.001" altunitdist="inch" altunit="inch"/>
+<layers>
+<layer number="1" name="Top" color="4" fill="1" visible="yes" active="yes"/>
+<layer number="2" name="Route2" color="37" fill="1" visible="no" active="yes"/>
+<layer number="3" name="Route3" color="4" fill="3" visible="no" active="no"/>
+<layer number="4" name="Route4" color="1" fill="4" visible="no" active="no"/>
+<layer number="5" name="Route5" color="4" fill="4" visible="no" active="no"/>
+<layer number="6" name="Route6" color="1" fill="8" visible="no" active="no"/>
+<layer number="7" name="Route7" color="4" fill="8" visible="no" active="no"/>
+<layer number="8" name="Route8" color="1" fill="2" visible="no" active="no"/>
+<layer number="9" name="Route9" color="4" fill="2" visible="no" active="no"/>
+<layer number="10" name="Route10" color="1" fill="7" visible="no" active="no"/>
+<layer number="11" name="Route11" color="4" fill="7" visible="no" active="no"/>
+<layer number="12" name="Route12" color="1" fill="5" visible="no" active="no"/>
+<layer number="13" name="Route13" color="4" fill="5" visible="no" active="no"/>
+<layer number="14" name="Route14" color="1" fill="6" visible="no" active="no"/>
+<layer number="15" name="Route15" color="38" fill="1" visible="no" active="yes"/>
+<layer number="16" name="Bottom" color="1" fill="1" visible="no" active="yes"/>
+<layer number="17" name="Pads" color="2" fill="1" visible="yes" active="yes"/>
+<layer number="18" name="Vias" color="2" fill="1" visible="yes" active="yes"/>
+<layer number="19" name="Unrouted" color="6" fill="1" visible="yes" active="yes"/>
+<layer number="20" name="Dimension" color="15" fill="1" visible="yes" active="yes"/>
+<layer number="21" name="tPlace" color="14" fill="1" visible="yes" active="yes"/>
+<layer number="22" name="bPlace" color="13" fill="1" visible="no" active="yes"/>
+<layer number="23" name="tOrigins" color="14" fill="1" visible="yes" active="yes"/>
+<layer number="24" name="bOrigins" color="13" fill="1" visible="no" active="yes"/>
+<layer number="25" name="tNames" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="26" name="bNames" color="7" fill="1" visible="no" active="yes"/>
+<layer number="27" name="tValues" color="11" fill="1" visible="no" active="yes"/>
+<layer number="28" name="bValues" color="7" fill="1" visible="no" active="yes"/>
+<layer number="29" name="tStop" color="7" fill="3" visible="no" active="yes"/>
+<layer number="30" name="bStop" color="7" fill="6" visible="no" active="yes"/>
+<layer number="31" name="tCream" color="7" fill="4" visible="no" active="yes"/>
+<layer number="32" name="bCream" color="7" fill="5" visible="no" active="yes"/>
+<layer number="33" name="tFinish" color="6" fill="3" visible="no" active="yes"/>
+<layer number="34" name="bFinish" color="6" fill="6" visible="no" active="yes"/>
+<layer number="35" name="tGlue" color="7" fill="4" visible="no" active="yes"/>
+<layer number="36" name="bGlue" color="7" fill="5" visible="no" active="yes"/>
+<layer number="37" name="tTest" color="7" fill="1" visible="no" active="yes"/>
+<layer number="38" name="bTest" color="7" fill="1" visible="no" active="yes"/>
+<layer number="39" name="tKeepout" color="4" fill="11" visible="yes" active="yes"/>
+<layer number="40" name="bKeepout" color="1" fill="11" visible="no" active="yes"/>
+<layer number="41" name="tRestrict" color="4" fill="10" visible="yes" active="yes"/>
+<layer number="42" name="bRestrict" color="1" fill="10" visible="no" active="yes"/>
+<layer number="43" name="vRestrict" color="2" fill="10" visible="no" active="yes"/>
+<layer number="44" name="Drills" color="7" fill="1" visible="no" active="yes"/>
+<layer number="45" name="Holes" color="7" fill="1" visible="no" active="yes"/>
+<layer number="46" name="Milling" color="3" fill="1" visible="no" active="yes"/>
+<layer number="47" name="Measures" color="7" fill="1" visible="no" active="yes"/>
+<layer number="48" name="Document" color="7" fill="1" visible="no" active="yes"/>
+<layer number="49" name="Reference" color="7" fill="1" visible="no" active="yes"/>
+<layer number="50" name="dxf" color="7" fill="1" visible="no" active="no"/>
+<layer number="51" name="tDocu" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="52" name="bDocu" color="7" fill="1" visible="no" active="yes"/>
+<layer number="53" name="tGND_GNDA" color="7" fill="9" visible="no" active="no"/>
+<layer number="54" name="bGND_GNDA" color="1" fill="9" visible="no" active="no"/>
+<layer number="56" name="wert" color="7" fill="1" visible="no" active="no"/>
+<layer number="57" name="tCAD" color="7" fill="1" visible="no" active="no"/>
+<layer number="58" name="b3D" color="7" fill="1" visible="no" active="no"/>
+<layer number="59" name="tCarbon" color="7" fill="1" visible="no" active="no"/>
+<layer number="60" name="bCarbon" color="7" fill="1" visible="no" active="no"/>
+<layer number="61" name="stand" color="7" fill="1" visible="no" active="no"/>
+<layer number="88" name="SimResults" color="9" fill="1" visible="no" active="no"/>
+<layer number="89" name="SimProbes" color="9" fill="1" visible="no" active="no"/>
+<layer number="90" name="Modules" color="7" fill="1" visible="no" active="no"/>
+<layer number="91" name="Nets" color="2" fill="1" visible="no" active="no"/>
+<layer number="92" name="Busses" color="1" fill="1" visible="no" active="no"/>
+<layer number="93" name="Pins" color="2" fill="1" visible="no" active="no"/>
+<layer number="94" name="Symbols" color="4" fill="1" visible="no" active="no"/>
+<layer number="95" name="Names" color="7" fill="1" visible="no" active="no"/>
+<layer number="96" name="Values" color="7" fill="1" visible="no" active="no"/>
+<layer number="97" name="Info" color="7" fill="1" visible="no" active="no"/>
+<layer number="98" name="Guide" color="6" fill="1" visible="no" active="no"/>
+<layer number="99" name="SpiceOrder" color="7" fill="1" visible="no" active="no"/>
+<layer number="100" name="Muster" color="7" fill="1" visible="no" active="yes"/>
+<layer number="101" name="Patch_Top" color="12" fill="4" visible="no" active="yes"/>
+<layer number="102" name="Mittellin" color="7" fill="1" visible="no" active="yes"/>
+<layer number="103" name="Stiffner" color="7" fill="1" visible="no" active="yes"/>
+<layer number="104" name="Name" color="7" fill="1" visible="no" active="yes"/>
+<layer number="105" name="Beschreib" color="7" fill="1" visible="no" active="yes"/>
+<layer number="106" name="BGA-Top" color="7" fill="1" visible="no" active="yes"/>
+<layer number="107" name="BD-Top" color="7" fill="1" visible="no" active="yes"/>
+<layer number="108" name="tBridges" color="7" fill="1" visible="no" active="yes"/>
+<layer number="109" name="tBPL" color="7" fill="1" visible="no" active="yes"/>
+<layer number="110" name="bBPL" color="7" fill="1" visible="no" active="yes"/>
+<layer number="111" name="MPL" color="7" fill="1" visible="no" active="yes"/>
+<layer number="112" name="tSilk" color="7" fill="1" visible="no" active="yes"/>
+<layer number="113" name="ReferenceLS" color="7" fill="1" visible="no" active="no"/>
+<layer number="114" name="tPlaceRed" color="7" fill="1" visible="no" active="yes"/>
+<layer number="115" name="FRNTMAAT2" color="7" fill="1" visible="no" active="yes"/>
+<layer number="116" name="Patch_BOT" color="9" fill="4" visible="no" active="yes"/>
+<layer number="117" name="BACKMAAT1" color="7" fill="1" visible="no" active="yes"/>
+<layer number="118" name="Rect_Pads" color="7" fill="1" visible="no" active="no"/>
+<layer number="119" name="KAP_TEKEN" color="7" fill="1" visible="no" active="yes"/>
+<layer number="120" name="KAP_MAAT1" color="7" fill="1" visible="no" active="yes"/>
+<layer number="121" name="sName" color="7" fill="1" visible="no" active="yes"/>
+<layer number="122" name="_bPlace" color="7" fill="1" visible="no" active="yes"/>
+<layer number="123" name="tTestmark" color="7" fill="1" visible="no" active="yes"/>
+<layer number="124" name="bTestmark" color="7" fill="1" visible="no" active="yes"/>
+<layer number="125" name="_tNames" color="7" fill="1" visible="no" active="yes"/>
+<layer number="126" name="_bNames" color="7" fill="1" visible="no" active="yes"/>
+<layer number="127" name="_tValues" color="7" fill="1" visible="no" active="yes"/>
+<layer number="128" name="_bValues" color="7" fill="1" visible="no" active="yes"/>
+<layer number="129" name="Mask" color="7" fill="1" visible="no" active="yes"/>
+<layer number="130" name="SMDSTROOK" color="7" fill="1" visible="no" active="yes"/>
+<layer number="131" name="tAdjust" color="7" fill="1" visible="no" active="yes"/>
+<layer number="132" name="bAdjust" color="7" fill="1" visible="no" active="yes"/>
+<layer number="133" name="bottom_silk" color="7" fill="1" visible="no" active="yes"/>
+<layer number="134" name="silk_top" color="7" fill="1" visible="no" active="yes"/>
+<layer number="135" name="silk_bottom" color="7" fill="1" visible="no" active="yes"/>
+<layer number="136" name="silktop" color="7" fill="1" visible="no" active="yes"/>
+<layer number="137" name="silkbottom" color="7" fill="1" visible="no" active="yes"/>
+<layer number="138" name="EEE" color="7" fill="1" visible="no" active="yes"/>
+<layer number="139" name="_tKeepout" color="7" fill="1" visible="no" active="yes"/>
+<layer number="140" name="mbKeepout" color="7" fill="1" visible="no" active="yes"/>
+<layer number="141" name="ASSEMBLY_TOP" color="7" fill="1" visible="no" active="yes"/>
+<layer number="142" name="mbRestrict" color="7" fill="1" visible="no" active="yes"/>
+<layer number="143" name="PLACE_BOUND_TOP" color="7" fill="1" visible="no" active="yes"/>
+<layer number="144" name="Drill_legend" color="7" fill="1" visible="no" active="yes"/>
+<layer number="145" name="DrillLegend_01-16" color="2" fill="9" visible="no" active="yes"/>
+<layer number="146" name="DrillLegend_01-20" color="7" fill="1" visible="no" active="yes"/>
+<layer number="147" name="PIN_NUMBER" color="7" fill="1" visible="no" active="yes"/>
+<layer number="148" name="mDocument" color="7" fill="1" visible="no" active="yes"/>
+<layer number="149" name="DrillLegend_02-15" color="7" fill="1" visible="no" active="yes"/>
+<layer number="150" name="Notes" color="7" fill="1" visible="no" active="yes"/>
+<layer number="151" name="HeatSink" color="7" fill="1" visible="no" active="yes"/>
+<layer number="152" name="_bDocu" color="7" fill="1" visible="no" active="yes"/>
+<layer number="153" name="FabDoc1" color="6" fill="1" visible="no" active="no"/>
+<layer number="154" name="FabDoc2" color="2" fill="1" visible="no" active="no"/>
+<layer number="155" name="FabDoc3" color="7" fill="15" visible="no" active="no"/>
+<layer number="166" name="AntennaArea" color="7" fill="1" visible="no" active="yes"/>
+<layer number="168" name="4mmHeightArea" color="7" fill="1" visible="no" active="yes"/>
+<layer number="191" name="mNets" color="7" fill="1" visible="no" active="yes"/>
+<layer number="192" name="mBusses" color="7" fill="1" visible="no" active="yes"/>
+<layer number="193" name="mPins" color="7" fill="1" visible="no" active="yes"/>
+<layer number="194" name="mSymbols" color="7" fill="1" visible="no" active="yes"/>
+<layer number="195" name="mNames" color="7" fill="1" visible="no" active="yes"/>
+<layer number="196" name="mValues" color="7" fill="1" visible="no" active="yes"/>
+<layer number="199" name="Contour" color="7" fill="1" visible="no" active="yes"/>
+<layer number="200" name="200bmp" color="1" fill="10" visible="no" active="yes"/>
+<layer number="201" name="201bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="202" name="202bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="203" name="203bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="204" name="204bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="205" name="205bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="206" name="206bmp" color="7" fill="10" visible="no" active="yes"/>
+<layer number="207" name="207bmp" color="8" fill="10" visible="no" active="yes"/>
+<layer number="208" name="208bmp" color="9" fill="10" visible="no" active="yes"/>
+<layer number="209" name="209bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="210" name="210bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="211" name="211bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="212" name="212bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="213" name="213bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="214" name="214bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="215" name="215bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="216" name="216bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="217" name="217bmp" color="18" fill="1" visible="no" active="no"/>
+<layer number="218" name="218bmp" color="19" fill="1" visible="no" active="no"/>
+<layer number="219" name="219bmp" color="20" fill="1" visible="no" active="no"/>
+<layer number="220" name="220bmp" color="21" fill="1" visible="no" active="no"/>
+<layer number="221" name="221bmp" color="22" fill="1" visible="no" active="no"/>
+<layer number="222" name="222bmp" color="23" fill="1" visible="no" active="no"/>
+<layer number="223" name="223bmp" color="24" fill="1" visible="no" active="no"/>
+<layer number="224" name="224bmp" color="25" fill="1" visible="no" active="no"/>
+<layer number="225" name="225bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="226" name="226bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="227" name="227bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="228" name="228bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="229" name="229bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="230" name="230bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="231" name="Eagle3D_PG1" color="7" fill="1" visible="no" active="no"/>
+<layer number="232" name="Eagle3D_PG2" color="7" fill="1" visible="no" active="no"/>
+<layer number="233" name="Eagle3D_PG3" color="7" fill="1" visible="no" active="no"/>
+<layer number="248" name="Housing" color="7" fill="1" visible="no" active="yes"/>
+<layer number="249" name="Edge" color="7" fill="1" visible="no" active="yes"/>
+<layer number="250" name="Descript" color="7" fill="1" visible="no" active="yes"/>
+<layer number="251" name="SMDround" color="7" fill="1" visible="no" active="yes"/>
+<layer number="254" name="cooling" color="7" fill="1" visible="no" active="yes"/>
+<layer number="255" name="routoute" color="7" fill="1" visible="no" active="yes"/>
+</layers>
+<board>
+<plain>
+<wire x1="2.54" y1="0" x2="48.26" y2="0" width="0" layer="20"/>
+<wire x1="48.26" y1="0" x2="50.8" y2="2.54" width="0" layer="20" curve="90"/>
+<wire x1="50.8" y1="2.54" x2="50.8" y2="20.32" width="0" layer="20"/>
+<wire x1="50.8" y1="20.32" x2="48.26" y2="22.86" width="0" layer="20" curve="90"/>
+<wire x1="48.26" y1="22.86" x2="2.54" y2="22.86" width="0" layer="20"/>
+<wire x1="2.54" y1="22.86" x2="0" y2="20.32" width="0" layer="20" curve="90"/>
+<wire x1="0" y1="20.32" x2="0" y2="2.54" width="0" layer="20"/>
+<wire x1="0" y1="2.54" x2="2.54" y2="0" width="0" layer="20" curve="90"/>
+<text x="20.447" y="21.7424" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center">VBUS</text>
+<text x="5.207" y="1.27" size="0.635" layer="21" font="vector" ratio="12" rot="R270" align="center">RST</text>
+<text x="10.287" y="1.27" size="0.635" layer="21" font="vector" ratio="12" rot="R270" align="center">ARF</text>
+<text x="7.747" y="1.27" size="0.635" layer="21" font="vector" ratio="12" rot="R270" align="center">3V</text>
+<text x="17.907" y="1.27" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center">A6</text>
+<text x="15.367" y="1.27" size="0.635" layer="21" font="vector" ratio="12" rot="R270" align="center">A5</text>
+<text x="22.987" y="21.7424" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center">PA12</text>
+<text x="30.607" y="1.397" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center">SCK</text>
+<text x="33.147" y="1.397" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center">MO</text>
+<text x="35.687" y="1.27" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center">MI</text>
+<text x="38.227" y="1.27" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center">RX</text>
+<text x="40.767" y="1.27" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center">TX</text>
+<text x="16.51" y="20.32" size="0.635" layer="21" font="vector" ratio="12" rot="R180" align="center">VBAT</text>
+<text x="12.827" y="1.27" size="0.635" layer="21" font="vector" ratio="12" rot="R270" align="center">GND</text>
+<text x="17.907" y="21.59" size="0.635" layer="21" font="vector" ratio="12" rot="R270" align="center">EN</text>
+<hole x="48.26" y="2.54" drill="2.54"/>
+<hole x="48.26" y="20.32" drill="2.54"/>
+<text x="20.447" y="1.27" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center">A7</text>
+<text x="40.767" y="21.59" size="0.635" layer="21" font="vector" ratio="12" rot="R270" align="center">SCL</text>
+<text x="43.307" y="21.59" size="0.635" layer="21" font="vector" ratio="12" rot="R270" align="center">SDA</text>
+<dimension x1="20.574" y1="0" x2="24.13" y2="22.86" x3="58.293" y3="11.43" textsize="1.778" layer="47" dtype="vertical" unit="inch"/>
+<dimension x1="48.26" y1="1.905" x2="48.26" y2="20.955" x3="54.229" y3="11.43" textsize="1.778" layer="47" dtype="vertical" unit="inch"/>
+<dimension x1="0" y1="15.748" x2="50.8" y2="5.08" x3="25.4" y3="32.512" textsize="1.778" layer="47" dtype="horizontal" unit="inch"/>
+<dimension x1="2.54" y1="20.32" x2="48.26" y2="20.955" x3="25.4" y3="29.464" textsize="1.778" layer="47" dtype="horizontal" unit="inch"/>
+<dimension x1="1.27" y1="2.54" x2="3.81" y2="2.54" x3="2.54" y3="-3.048" textsize="1.778" layer="47" dtype="horizontal" unit="inch"/>
+<dimension x1="47.117" y1="1.778" x2="49.403" y2="1.905" x3="48.26" y3="-3.175" textsize="1.778" layer="47" dtype="horizontal" unit="inch"/>
+<dimension x1="0" y1="6.731" x2="25.4" y2="1.27" x3="12.7" y3="-6.858" textsize="1.778" layer="47" dtype="horizontal" unit="inch"/>
+<dimension x1="0" y1="20.701" x2="30.48" y2="21.59" x3="15.24" y3="26.67" textsize="1.778" layer="47" dtype="horizontal" unit="inch"/>
+<dimension x1="0" y1="20.447" x2="10.795" y2="19.304" x3="5.3975" y3="23.622" textsize="1.778" layer="47" dtype="horizontal" unit="inch"/>
+<dimension x1="3.81" y1="0" x2="4.445" y2="11.43" x3="-4.445" y3="5.715" textsize="1.778" layer="47" dtype="vertical" unit="inch"/>
+<text x="22.987" y="1.27" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center">A0</text>
+<text x="25.527" y="1.27" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center">A8</text>
+<text x="22.098" y="20.574" size="0.6096" layer="22" font="vector" ratio="12" rot="SMR270" align="center-left">VBUS</text>
+<text x="41.91" y="20.574" size="0.6096" layer="22" font="vector" ratio="12" rot="SMR270" align="center-left">SCL
+PB31</text>
+<text x="44.45" y="20.574" size="0.6096" layer="22" font="vector" ratio="12" rot="SMR270" align="center-left">SDA
+PB30</text>
+<text x="6.477" y="2.286" size="0.6096" layer="22" font="vector" ratio="12" rot="SMR270" align="center-right">!RESET</text>
+<text x="11.5062" y="2.286" size="0.6096" layer="22" font="vector" ratio="12" rot="SMR270" align="center-right">AREF
+PA03</text>
+<text x="8.89" y="2.54" size="0.6096" layer="22" font="vector" ratio="12" rot="SMR0" align="center">3V3</text>
+<text x="16.51" y="2.794" size="0.6096" layer="22" font="vector" ratio="12" distance="20" rot="SMR0" align="center">A5
+PA07</text>
+<text x="46.99" y="9.398" size="0.6096" layer="22" font="vector" ratio="12" rot="SMR0" align="center-left">A4/MISO:
+PB00</text>
+<text x="46.99" y="11.43" size="0.6096" layer="22" font="vector" ratio="12" rot="SMR0" align="center-left">RX:
+PB23</text>
+<text x="46.99" y="13.462" size="0.6096" layer="22" font="vector" ratio="12" rot="SMR0" align="center-left">TX:
+PB22</text>
+<text x="13.9192" y="2.54" size="0.6096" layer="22" font="vector" ratio="12" rot="SMR0" align="center">GND</text>
+<text x="19.05" y="2.794" size="0.6096" layer="22" font="vector" ratio="12" distance="20" rot="SMR0" align="center">A6
+PA04</text>
+<text x="24.13" y="2.286" size="0.6096" layer="22" font="vector" ratio="12" rot="SMR270" align="center-right">A0
+PB04</text>
+<text x="26.67" y="2.286" size="0.6096" layer="22" font="vector" ratio="12" rot="SMR270" align="center-right">A8
+PA02</text>
+<text x="46.99" y="7.366" size="0.6096" layer="22" font="vector" ratio="12" rot="SMR0" align="center-left">A1/SCK:
+PB01</text>
+<text x="46.99" y="4.826" size="0.6096" layer="22" font="vector" ratio="12" rot="SMR0" align="center-left">A2/
+MOSI:
+PB02</text>
+<text x="26.67" y="20.574" size="0.6096" layer="22" font="vector" ratio="12" rot="SMR270" align="center-left">PA13</text>
+<text x="29.21" y="20.574" size="0.6096" layer="22" font="vector" ratio="12" rot="SMR270" align="center-left">PA01</text>
+<text x="31.75" y="20.574" size="0.6096" layer="22" font="vector" ratio="12" rot="SMR270" align="center-left">PA00</text>
+<text x="34.29" y="20.574" size="0.6096" layer="22" font="vector" ratio="12" rot="SMR270" align="center-left">PA27</text>
+<text x="36.83" y="20.574" size="0.6096" layer="22" font="vector" ratio="12" rot="SMR270" align="center-left">SWDIO
+PA31</text>
+<text x="39.37" y="20.574" size="0.6096" layer="22" font="vector" ratio="12" rot="SMR270" align="center-left">SWCLK
+PA30</text>
+<text x="16.256" y="20.574" size="0.6096" layer="22" font="vector" ratio="12" rot="SMR270" align="center-left">VBAT</text>
+<text x="18.5674" y="20.4978" size="0.6096" layer="22" font="vector" ratio="12" rot="SMR0" align="center-left">EN</text>
+<text x="21.59" y="2.286" size="0.6096" layer="22" font="vector" ratio="12" rot="SMR270" align="center-right">A7
+PB05</text>
+<text x="9.906" y="19.812" size="0.8128" layer="22" font="vector" ratio="18" distance="40" rot="SMR0" align="center">SAM L22
+Feather with LCD
+OSO-FEAL-A1-00</text>
+<text x="38.227" y="21.7424" size="0.635" layer="21" font="vector" ratio="12" rot="R270" align="center">PA30</text>
+<text x="35.687" y="21.7424" size="0.635" layer="21" font="vector" ratio="12" rot="R270" align="center">PA31</text>
+<text x="33.147" y="21.7424" size="0.635" layer="21" font="vector" ratio="12" rot="R270" align="center">PA27</text>
+<text x="30.607" y="21.7424" size="0.635" layer="21" font="vector" ratio="12" rot="R270" align="center">PA00</text>
+<text x="28.067" y="21.7424" size="0.635" layer="21" font="vector" ratio="12" rot="R270" align="center">PA01</text>
+<text x="25.527" y="21.7424" size="0.635" layer="21" font="vector" ratio="12" rot="R270" align="center">PA13</text>
+<text x="47.752" y="16.51" size="0.508" layer="22" font="vector" ratio="18" distance="40" rot="SMR270" align="center">!RESET</text>
+<text x="47.752" y="13.97" size="0.508" layer="22" font="vector" ratio="18" distance="40" rot="SMR270" align="center">SWCLK</text>
+<text x="47.752" y="11.43" size="0.508" layer="22" font="vector" ratio="18" distance="40" rot="SMR270" align="center">3V3</text>
+<text x="47.752" y="8.89" size="0.508" layer="22" font="vector" ratio="18" distance="40" rot="SMR270" align="center">SWDIO</text>
+<text x="47.752" y="6.35" size="0.508" layer="22" font="vector" ratio="18" distance="40" rot="SMR270" align="center">GND</text>
+<text x="41.91" y="5.08" size="0.8128" layer="21" font="vector" ratio="18" distance="40" rot="SR0" align="center-right">SAM L22
+Feather with LCD
+OSO-FEAL-A1-00</text>
+<text x="28.067" y="1.27" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center">A3</text>
+<text x="29.21" y="2.286" size="0.6096" layer="22" font="vector" ratio="12" rot="SMR270" align="center-right">A3
+PB03</text>
+<text x="43.307" y="1.27" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center">NC</text>
+<dimension x1="43.3" y1="2.4" x2="43.3" y2="20.4" x3="15.1" y3="11.4" textsize="1.778" layer="47"/>
+<dimension x1="44.4" y1="17.9" x2="15.4" y2="17.9" x3="29.9" y3="50.9" textsize="1.778" layer="47"/>
+<text x="24.13" y="20.574" size="0.6096" layer="22" font="vector" ratio="12" distance="60" rot="SMR270" align="center-left">LED
+/
+PA12</text>
+<text x="23.375" y="18.6" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center-right">LCD0</text>
+<text x="24.275" y="18.6" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center-right">LCD1</text>
+<text x="25.175" y="18.6" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center-right">LCD2</text>
+<text x="41.375" y="18.6" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center-right">LCD3</text>
+<text x="40.475" y="18.6" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center-right">LCD4</text>
+<text x="39.575" y="18.6" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center-right">LCD5</text>
+<text x="38.675" y="18.6" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center-right">LCD6</text>
+<text x="37.775" y="18.6" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center-right">LCD7</text>
+<text x="36.875" y="18.6" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center-right">LCD8</text>
+<text x="35.975" y="18.6" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center-right">LCD9</text>
+<text x="35.075" y="18.6" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center-right">LCD10</text>
+<text x="34.175" y="18.6" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center-right">LCD11</text>
+<text x="33.275" y="18.6" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center-right">LCD12</text>
+<text x="32.375" y="18.6" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center-right">LCD13</text>
+<text x="31.475" y="18.6" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center-right">LCD14</text>
+<text x="30.575" y="18.6" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center-right">LCD15</text>
+<text x="29.675" y="18.6" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center-right">LCD16</text>
+<text x="28.775" y="18.6" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center-right">LCD17</text>
+<text x="27.875" y="18.6" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center-right">LCD18</text>
+<text x="26.975" y="18.6" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center-right">LCD19</text>
+<text x="26.075" y="18.6" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center-right">LCD20</text>
+<text x="22.475" y="18.6" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center-right">LCD21</text>
+<text x="21.575" y="18.6" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center-right">LCD22</text>
+<text x="20.675" y="18.6" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center-right">LCD23</text>
+<text x="19.775" y="18.6" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center-right">LCD24</text>
+<text x="18.875" y="18.6" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center-right">LCD25</text>
+<text x="17.975" y="18.6" size="0.635" layer="21" font="vector" ratio="12" rot="R90" align="center-right">LCD26</text>
+<hole x="11.43" y="10.16" drill="2.54"/>
+</plain>
+<libraries>
+<library name="microbuilder">
+<description>&lt;h2&gt;&lt;b&gt;microBuilder.eu&lt;/b&gt; Eagle Footprint Library&lt;/h2&gt;
+
+&lt;p&gt;Footprints for common components used in our projects and products. This is the same library that we use internally, and it is regularly updated. The newest version can always be found at &lt;b&gt;www.microBuilder.eu&lt;/b&gt;. If you find this library useful, please feel free to purchase something from our online store. Please also note that all holes are optimised for metric drill bits!&lt;/p&gt;
+
+&lt;h3&gt;Obligatory Warning&lt;/h3&gt;
+&lt;p&gt;While it probably goes without saying, there are no guarantees that the footprints or schematic symbols in this library are flawless, and we make no promises of fitness for production, prototyping or any other purpose. These libraries are provided for information puposes only, and are used at your own discretion. While we make every effort to produce accurate footprints, and many of the items found in this library have be proven in production, we can't make any promises of suitability for a specific purpose. If you do find any errors, though, please feel free to contact us at www.microbuilder.eu to let us know about it so that we can update the library accordingly!&lt;/p&gt;
+
+&lt;h3&gt;License&lt;/h3&gt;
+&lt;p&gt;This work is placed in the public domain, and may be freely used for commercial and non-commercial work with the following conditions:&lt;/p&gt;
+&lt;p&gt;THIS SOFTWARE IS PROVIDED ''AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+&lt;/p&gt;</description>
+<packages>
+<package name="0603-NO">
+<wire x1="-1.473" y1="0.729" x2="1.473" y2="0.729" width="0.0508" layer="39"/>
+<wire x1="1.473" y1="0.729" x2="1.473" y2="-0.729" width="0.0508" layer="39"/>
+<wire x1="1.473" y1="-0.729" x2="-1.473" y2="-0.729" width="0.0508" layer="39"/>
+<wire x1="-1.473" y1="-0.729" x2="-1.473" y2="0.729" width="0.0508" layer="39"/>
+<wire x1="-0.356" y1="0.432" x2="0.356" y2="0.432" width="0.1016" layer="51"/>
+<wire x1="-0.356" y1="-0.419" x2="0.356" y2="-0.419" width="0.1016" layer="51"/>
+<smd name="1" x="-0.85" y="0" dx="1.075" dy="1" layer="1"/>
+<smd name="2" x="0.85" y="0" dx="1.075" dy="1" layer="1"/>
+<text x="1.778" y="-0.127" size="0.8128" layer="25" font="vector" ratio="18">&gt;NAME</text>
+<text x="1.778" y="-0.762" size="0.4064" layer="27" font="vector" ratio="10">&gt;VALUE</text>
+<rectangle x1="-0.8382" y1="-0.4699" x2="-0.3381" y2="0.4801" layer="51"/>
+<rectangle x1="0.3302" y1="-0.4699" x2="0.8303" y2="0.4801" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.3" x2="0.1999" y2="0.3" layer="35"/>
+<wire x1="0" y1="0.4" x2="0" y2="-0.4" width="0.3048" layer="21"/>
+</package>
+<package name="_1206">
+<wire x1="0.9525" y1="-0.8128" x2="-0.9652" y2="-0.8128" width="0.1016" layer="51"/>
+<wire x1="0.9525" y1="0.8128" x2="-0.9652" y2="0.8128" width="0.1016" layer="51"/>
+<wire x1="-2.286" y1="1.143" x2="2.286" y2="1.143" width="0.2032" layer="21"/>
+<wire x1="2.286" y1="1.143" x2="2.286" y2="-1.143" width="0.2032" layer="21"/>
+<wire x1="2.286" y1="-1.143" x2="-2.286" y2="-1.143" width="0.2032" layer="21"/>
+<wire x1="-2.286" y1="-1.143" x2="-2.286" y2="1.143" width="0.2032" layer="21"/>
+<smd name="2" x="1.27" y="0" dx="1.4" dy="1.8" layer="1"/>
+<smd name="1" x="-1.27" y="0" dx="1.4" dy="1.8" layer="1"/>
+<rectangle x1="-1.6891" y1="-0.8763" x2="-0.9525" y2="0.8763" layer="51"/>
+<rectangle x1="0.9525" y1="-0.8763" x2="1.6891" y2="0.8763" layer="51"/>
+<rectangle x1="-0.3" y1="-0.7" x2="0.3" y2="0.7" layer="35"/>
+<text x="-2.2225" y="1.5113" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-2.2225" y="-1.8288" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="MOUNTINGHOLE_2.5_PLATED">
+<circle x="0" y="0" radius="2" width="0.2032" layer="21"/>
+<circle x="0" y="0" radius="1" width="2.032" layer="39"/>
+<circle x="0" y="0" radius="1" width="2.032" layer="40"/>
+<circle x="0" y="0" radius="1" width="2.032" layer="41"/>
+<circle x="0" y="0" radius="1" width="2.032" layer="42"/>
+<pad name="P$1" x="0" y="0" drill="2.5" diameter="3.2"/>
+</package>
+<package name="CHIPLED_0805_NOOUTLINE">
+<wire x1="-0.35" y1="0.925" x2="0.35" y2="0.925" width="0.1016" layer="51" curve="162.394521"/>
+<wire x1="-0.35" y1="-0.925" x2="0.35" y2="-0.925" width="0.1016" layer="51" curve="-162.394521"/>
+<wire x1="0.575" y1="0.525" x2="0.575" y2="-0.525" width="0.1016" layer="51"/>
+<wire x1="-0.575" y1="-0.5" x2="-0.575" y2="0.925" width="0.1016" layer="51"/>
+<circle x="-0.45" y="0.85" radius="0.103" width="0.0762" layer="51"/>
+<smd name="C" x="0" y="1.05" dx="1.2" dy="1.2" layer="1"/>
+<smd name="A" x="0" y="-1.05" dx="1.2" dy="1.2" layer="1"/>
+<text x="-1.016" y="-1.778" size="0.8128" layer="25" ratio="18" rot="R90">&gt;NAME</text>
+<text x="1.397" y="-1.778" size="0.4064" layer="27" ratio="10" rot="R90">&gt;VALUE</text>
+<text x="-0.1" y="-1.4" size="0.254" layer="51">A</text>
+<text x="-0.1" y="1.2" size="0.254" layer="51">C</text>
+<rectangle x1="0.3" y1="0.5" x2="0.625" y2="1" layer="51"/>
+<rectangle x1="-0.325" y1="0.5" x2="-0.175" y2="0.75" layer="51"/>
+<rectangle x1="0.175" y1="0.5" x2="0.325" y2="0.75" layer="51"/>
+<rectangle x1="-0.2" y1="0.5" x2="0.2" y2="0.675" layer="51"/>
+<rectangle x1="0.3" y1="-1" x2="0.625" y2="-0.5" layer="51"/>
+<rectangle x1="-0.625" y1="-1" x2="-0.3" y2="-0.5" layer="51"/>
+<rectangle x1="0.175" y1="-0.75" x2="0.325" y2="-0.5" layer="51"/>
+<rectangle x1="-0.325" y1="-0.75" x2="-0.175" y2="-0.5" layer="51"/>
+<rectangle x1="-0.2" y1="-0.675" x2="0.2" y2="-0.5" layer="51"/>
+<rectangle x1="-0.6" y1="0.5" x2="-0.3" y2="0.762" layer="51"/>
+<rectangle x1="-0.625" y1="0.925" x2="-0.3" y2="1" layer="51"/>
+<rectangle x1="-0.4445" y1="0.1405" x2="0.4445" y2="0.331" layer="21"/>
+<polygon width="0.1524" layer="21">
+<vertex x="0" y="0.254"/>
+<vertex x="-0.381" y="-0.254"/>
+<vertex x="0.381" y="-0.254"/>
+</polygon>
+</package>
+<package name="SOT23-5">
+<description>&lt;b&gt;Small Outline Transistor&lt;/b&gt; - 5 Pin</description>
+<wire x1="1.4224" y1="0.8104" x2="1.4224" y2="-0.8104" width="0.2032" layer="51"/>
+<wire x1="1.4224" y1="-0.8104" x2="-1.4224" y2="-0.8104" width="0.2032" layer="51"/>
+<wire x1="-1.4224" y1="-0.8104" x2="-1.4224" y2="0.8104" width="0.2032" layer="51"/>
+<wire x1="-1.4224" y1="0.8104" x2="1.4224" y2="0.8104" width="0.2032" layer="51"/>
+<wire x1="-1.65" y1="0.8" x2="-1.65" y2="-0.8" width="0.2032" layer="21"/>
+<wire x1="1.65" y1="0.8" x2="1.65" y2="-0.8" width="0.2032" layer="21"/>
+<smd name="1" x="-0.95" y="-1.3001" dx="0.55" dy="1.2" layer="1"/>
+<smd name="2" x="0" y="-1.3001" dx="0.55" dy="1.2" layer="1"/>
+<smd name="3" x="0.95" y="-1.3001" dx="0.55" dy="1.2" layer="1"/>
+<smd name="4" x="0.95" y="1.3001" dx="0.55" dy="1.2" layer="1"/>
+<smd name="5" x="-0.95" y="1.3001" dx="0.55" dy="1.2" layer="1"/>
+<text x="1.978" y="0" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="1.978" y="-0.635" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-1.2" y1="-1.5" x2="-0.7" y2="-0.85" layer="51"/>
+<rectangle x1="-0.25" y1="-1.5" x2="0.25" y2="-0.85" layer="51"/>
+<rectangle x1="0.7" y1="-1.5" x2="1.2" y2="-0.85" layer="51"/>
+<rectangle x1="0.7" y1="0.85" x2="1.2" y2="1.5" layer="51"/>
+<rectangle x1="-1.2" y1="0.85" x2="-0.7" y2="1.5" layer="51"/>
+<wire x1="-0.4" y1="1.05" x2="0.4" y2="1.05" width="0.2032" layer="21"/>
+</package>
+<package name="1X16_ROUND_MIN">
+<wire x1="-20.32" y1="0.635" x2="-20.32" y2="-0.635" width="0.2032" layer="51"/>
+<pad name="1" x="-19.05" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="2" x="-16.51" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="3" x="-13.97" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="4" x="-11.43" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="5" x="-8.89" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="6" x="-6.35" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="7" x="-3.81" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="8" x="-1.27" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="9" x="1.27" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="10" x="3.81" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="11" x="6.35" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="12" x="8.89" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="13" x="11.43" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="14" x="13.97" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="15" x="16.51" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="16" x="19.05" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<text x="-20.3962" y="1.8288" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-20.32" y="-3.175" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="16.256" y1="-0.254" x2="16.764" y2="0.254" layer="51"/>
+<rectangle x1="13.716" y1="-0.254" x2="14.224" y2="0.254" layer="51"/>
+<rectangle x1="11.176" y1="-0.254" x2="11.684" y2="0.254" layer="51"/>
+<rectangle x1="8.636" y1="-0.254" x2="9.144" y2="0.254" layer="51"/>
+<rectangle x1="6.096" y1="-0.254" x2="6.604" y2="0.254" layer="51"/>
+<rectangle x1="3.556" y1="-0.254" x2="4.064" y2="0.254" layer="51"/>
+<rectangle x1="1.016" y1="-0.254" x2="1.524" y2="0.254" layer="51"/>
+<rectangle x1="-1.524" y1="-0.254" x2="-1.016" y2="0.254" layer="51"/>
+<rectangle x1="-4.064" y1="-0.254" x2="-3.556" y2="0.254" layer="51"/>
+<rectangle x1="-6.604" y1="-0.254" x2="-6.096" y2="0.254" layer="51"/>
+<rectangle x1="-9.144" y1="-0.254" x2="-8.636" y2="0.254" layer="51"/>
+<rectangle x1="-11.684" y1="-0.254" x2="-11.176" y2="0.254" layer="51"/>
+<rectangle x1="-14.224" y1="-0.254" x2="-13.716" y2="0.254" layer="51"/>
+<rectangle x1="-16.764" y1="-0.254" x2="-16.256" y2="0.254" layer="51"/>
+<rectangle x1="-19.304" y1="-0.254" x2="-18.796" y2="0.254" layer="51"/>
+<rectangle x1="18.796" y1="-0.254" x2="19.304" y2="0.254" layer="51"/>
+</package>
+<package name="JSTPH2">
+<description>2-Pin JST PH Series Right-Angle Connector (+/- for batteries)</description>
+<wire x1="-4" y1="3" x2="4" y2="3" width="0.2032" layer="51"/>
+<wire x1="4" y1="3" x2="4" y2="-4.5" width="0.2032" layer="51"/>
+<wire x1="-4" y1="-4.5" x2="-4" y2="3" width="0.2032" layer="51"/>
+<wire x1="3.2" y1="-2" x2="-3.2" y2="-2" width="0.2032" layer="51"/>
+<wire x1="-3.2" y1="-2" x2="-3.2" y2="-4.5" width="0.2032" layer="51"/>
+<wire x1="-3.2" y1="-4.5" x2="-4" y2="-4.5" width="0.2032" layer="51"/>
+<wire x1="4" y1="-4.5" x2="3.2" y2="-4.5" width="0.2032" layer="51"/>
+<wire x1="3.2" y1="-4.5" x2="3.2" y2="-2" width="0.2032" layer="51"/>
+<wire x1="-2.25" y1="3" x2="2.25" y2="3" width="0.2032" layer="21"/>
+<wire x1="4" y1="-0.5" x2="4" y2="-4.5" width="0.2032" layer="21"/>
+<wire x1="4" y1="-4.5" x2="3.15" y2="-4.5" width="0.2032" layer="21"/>
+<wire x1="3.15" y1="-4.5" x2="3.15" y2="-2" width="0.2032" layer="21"/>
+<wire x1="3.15" y1="-2" x2="1.75" y2="-2" width="0.2032" layer="21"/>
+<wire x1="-1.75" y1="-2" x2="-3.15" y2="-2" width="0.2032" layer="21"/>
+<wire x1="-3.15" y1="-2" x2="-3.15" y2="-4.5" width="0.2032" layer="21"/>
+<wire x1="-3.15" y1="-4.5" x2="-4" y2="-4.5" width="0.2032" layer="21"/>
+<wire x1="-4" y1="-4.5" x2="-4" y2="-0.5" width="0.2032" layer="21"/>
+<smd name="1" x="-1" y="-3.7" dx="1" dy="4.6" layer="1"/>
+<smd name="2" x="1" y="-3.7" dx="1" dy="4.6" layer="1"/>
+<smd name="NC1" x="-3.4" y="1.5" dx="3.4" dy="1.6" layer="1" rot="R90"/>
+<smd name="NC2" x="3.4" y="1.5" dx="3.4" dy="1.6" layer="1" rot="R90"/>
+<text x="-2.2225" y="1.9685" size="0.8128" layer="25" ratio="18">&gt;Name</text>
+<text x="-2.2225" y="1.27" size="0.4064" layer="27" ratio="10">&gt;Value</text>
+</package>
+<package name="1X12_ROUND_MIN">
+<wire x1="-15.24" y1="0.635" x2="-15.24" y2="-0.635" width="0.2032" layer="51"/>
+<pad name="1" x="-13.97" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="2" x="-11.43" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="3" x="-8.89" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="4" x="-6.35" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="5" x="-3.81" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="6" x="-1.27" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="7" x="1.27" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="8" x="3.81" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="9" x="6.35" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="10" x="8.89" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="11" x="11.43" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="12" x="13.97" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<text x="-15.3162" y="1.8288" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-15.24" y="-3.175" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="6.096" y1="-0.254" x2="6.604" y2="0.254" layer="51"/>
+<rectangle x1="3.556" y1="-0.254" x2="4.064" y2="0.254" layer="51"/>
+<rectangle x1="1.016" y1="-0.254" x2="1.524" y2="0.254" layer="51"/>
+<rectangle x1="-1.524" y1="-0.254" x2="-1.016" y2="0.254" layer="51"/>
+<rectangle x1="-4.064" y1="-0.254" x2="-3.556" y2="0.254" layer="51"/>
+<rectangle x1="-6.604" y1="-0.254" x2="-6.096" y2="0.254" layer="51"/>
+<rectangle x1="-9.144" y1="-0.254" x2="-8.636" y2="0.254" layer="51"/>
+<rectangle x1="-11.684" y1="-0.254" x2="-11.176" y2="0.254" layer="51"/>
+<rectangle x1="-14.224" y1="-0.254" x2="-13.716" y2="0.254" layer="51"/>
+<rectangle x1="8.636" y1="-0.254" x2="9.144" y2="0.254" layer="51"/>
+<rectangle x1="11.176" y1="-0.254" x2="11.684" y2="0.254" layer="51"/>
+<rectangle x1="13.716" y1="-0.254" x2="14.224" y2="0.254" layer="51"/>
+</package>
+<package name="2X05_1.27MM_BOX_NOPOSTS">
+<description>&lt;p&gt;4UCon: 19735 (with cap), 15117 (without caps)&lt;/p&gt;</description>
+<smd name="2" x="-2.54" y="1.95" dx="0.76" dy="2.4" layer="1"/>
+<smd name="4" x="-1.27" y="1.95" dx="0.76" dy="2.4" layer="1"/>
+<smd name="6" x="0" y="1.95" dx="0.76" dy="2.4" layer="1"/>
+<smd name="8" x="1.27" y="1.95" dx="0.76" dy="2.4" layer="1"/>
+<smd name="10" x="2.54" y="1.95" dx="0.76" dy="2.4" layer="1"/>
+<smd name="1" x="-2.54" y="-1.95" dx="0.76" dy="2.4" layer="1"/>
+<smd name="3" x="-1.27" y="-1.95" dx="0.76" dy="2.4" layer="1"/>
+<smd name="5" x="0" y="-1.95" dx="0.76" dy="2.4" layer="1"/>
+<smd name="7" x="1.27" y="-1.95" dx="0.76" dy="2.4" layer="1"/>
+<smd name="9" x="2.54" y="-1.95" dx="0.76" dy="2.4" layer="1"/>
+<text x="-6.6" y="3" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-6.1" y="-2.4" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<wire x1="-6.45" y1="2.6" x2="6.45" y2="2.6" width="0.127" layer="51"/>
+<wire x1="6.45" y1="2.6" x2="6.45" y2="-2.6" width="0.127" layer="51"/>
+<wire x1="-6.45" y1="-2.6" x2="-6.45" y2="2.6" width="0.127" layer="51"/>
+<wire x1="-1.2" y1="-2.6" x2="-6.45" y2="-2.6" width="0.127" layer="51"/>
+<wire x1="6.45" y1="-2.6" x2="1.2" y2="-2.6" width="0.127" layer="51"/>
+<wire x1="-5.575" y1="1.8" x2="5.575" y2="1.8" width="0.127" layer="51"/>
+<wire x1="5.575" y1="1.8" x2="5.575" y2="-1.8" width="0.127" layer="51"/>
+<wire x1="-5.575" y1="-1.8" x2="-5.575" y2="1.8" width="0.127" layer="51"/>
+<wire x1="-1.2" y1="-1.8" x2="-5.575" y2="-1.8" width="0.127" layer="51"/>
+<wire x1="5.575" y1="-1.8" x2="1.2" y2="-1.8" width="0.127" layer="51"/>
+<wire x1="-1.2" y1="-1.8" x2="-1.2" y2="-2.6" width="0.127" layer="51"/>
+<wire x1="1.2" y1="-1.8" x2="1.2" y2="-2.6" width="0.127" layer="51"/>
+<polygon width="0.127" layer="21">
+<vertex x="-6.5" y="-4"/>
+<vertex x="-5.5" y="-4"/>
+<vertex x="-6" y="-3"/>
+</polygon>
+<wire x1="-3.2" y1="2.7" x2="-6.5" y2="2.7" width="0.127" layer="21"/>
+<wire x1="-6.5" y1="2.7" x2="-6.6" y2="2.7" width="0.127" layer="21"/>
+<wire x1="-6.6" y1="2.7" x2="-6.6" y2="2.6" width="0.127" layer="21"/>
+<wire x1="-6.6" y1="2.6" x2="-6.6" y2="-2.7" width="0.127" layer="21"/>
+<wire x1="-6.6" y1="-2.7" x2="-3.2" y2="-2.7" width="0.127" layer="21"/>
+<wire x1="3.2" y1="2.7" x2="6.6" y2="2.7" width="0.127" layer="21"/>
+<wire x1="6.6" y1="2.7" x2="6.6" y2="-2.7" width="0.127" layer="21"/>
+<wire x1="6.6" y1="-2.7" x2="3.2" y2="-2.7" width="0.127" layer="21"/>
+</package>
+<package name="SOD-123">
+<description>&lt;b&gt;SOD-123&lt;/b&gt;
+&lt;p&gt;Source: http://www.diodes.com/datasheets/ds30139.pdf&lt;/p&gt;</description>
+<smd name="C" x="-1.85" y="0" dx="1.4" dy="1.4" layer="1" rot="R90"/>
+<smd name="A" x="1.85" y="0" dx="1.4" dy="1.4" layer="1" rot="R90"/>
+<text x="-1.27" y="1.016" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.27" y="-1.778" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<wire x1="-0.873" y1="0.7" x2="0.873" y2="0.7" width="0.2032" layer="21"/>
+<wire x1="0.873" y1="0.7" x2="0.873" y2="-0.7" width="0.2032" layer="51"/>
+<wire x1="0.873" y1="-0.7" x2="-0.873" y2="-0.7" width="0.2032" layer="21"/>
+<wire x1="-0.873" y1="-0.7" x2="-0.873" y2="0.7" width="0.2032" layer="51"/>
+<wire x1="-0.3" y1="0" x2="0.3" y2="0.4" width="0.2032" layer="21"/>
+<wire x1="0.3" y1="0.4" x2="0.3" y2="-0.4" width="0.2032" layer="21"/>
+<wire x1="0.3" y1="-0.4" x2="-0.3" y2="0" width="0.2032" layer="21"/>
+<rectangle x1="-1.723" y1="-0.45" x2="-0.973" y2="0.4" layer="51"/>
+<rectangle x1="0.973" y1="-0.45" x2="1.723" y2="0.4" layer="51"/>
+<rectangle x1="-0.5" y1="-0.5" x2="-0.3" y2="0.5" layer="21"/>
+<polygon width="0.2032" layer="21">
+<vertex x="-0.1" y="0"/>
+<vertex x="0.2" y="0.2"/>
+<vertex x="0.2" y="-0.2"/>
+</polygon>
+</package>
+<package name="SOT23-R">
+<description>&lt;b&gt;SOT23&lt;/b&gt; - Reflow soldering</description>
+<wire x1="1.5724" y1="0.6604" x2="1.5724" y2="-0.6604" width="0.1524" layer="51"/>
+<wire x1="1.5724" y1="-0.6604" x2="-1.5724" y2="-0.6604" width="0.1524" layer="51"/>
+<wire x1="-1.5724" y1="-0.6604" x2="-1.5724" y2="0.6604" width="0.1524" layer="51"/>
+<wire x1="-1.5724" y1="0.6604" x2="1.5724" y2="0.6604" width="0.2032" layer="51"/>
+<wire x1="-1.5724" y1="-0.6524" x2="-1.5724" y2="0.6604" width="0.2032" layer="21"/>
+<wire x1="-1.5724" y1="0.6604" x2="-0.5636" y2="0.6604" width="0.2032" layer="21"/>
+<wire x1="1.5724" y1="0.6604" x2="1.5724" y2="-0.6524" width="0.2032" layer="21"/>
+<wire x1="0.5636" y1="0.6604" x2="1.5724" y2="0.6604" width="0.2032" layer="21"/>
+<wire x1="0.3724" y1="-0.6604" x2="-0.3864" y2="-0.6604" width="0.2032" layer="21"/>
+<smd name="3" x="0" y="1" dx="0.635" dy="1.016" layer="1"/>
+<smd name="2" x="0.95" y="-1" dx="0.635" dy="1.016" layer="1"/>
+<smd name="1" x="-0.95" y="-1" dx="0.635" dy="1.016" layer="1"/>
+<text x="1.778" y="-0.127" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="1.778" y="-0.635" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-0.2286" y1="0.7112" x2="0.2286" y2="1.2954" layer="51"/>
+<rectangle x1="0.7112" y1="-1.2954" x2="1.1684" y2="-0.7112" layer="51"/>
+<rectangle x1="-1.1684" y1="-1.2954" x2="-0.7112" y2="-0.7112" layer="51"/>
+</package>
+<package name="TESTPOINT_ROUND_2MM_NO">
+<smd name="P$1" x="0" y="0" dx="2" dy="2" layer="1" roundness="100" cream="no"/>
+</package>
+<package name="TACTILE_3X6MM">
+<wire x1="-3" y1="1.75" x2="3" y2="1.75" width="0.127" layer="51"/>
+<wire x1="3" y1="1.75" x2="3" y2="0.5" width="0.127" layer="51"/>
+<wire x1="3" y1="-0.5" x2="3" y2="-1.75" width="0.127" layer="51"/>
+<wire x1="3" y1="-1.75" x2="-3" y2="-1.75" width="0.127" layer="51"/>
+<wire x1="-3" y1="-1.75" x2="-3" y2="-0.5" width="0.127" layer="51"/>
+<wire x1="-3" y1="0.5" x2="-3" y2="1.75" width="0.127" layer="51"/>
+<wire x1="3.95" y1="-0.5" x2="3.95" y2="0.5" width="0.127" layer="51"/>
+<wire x1="3" y1="0.5" x2="3" y2="-0.5" width="0.127" layer="51"/>
+<wire x1="3" y1="-0.5" x2="3.95" y2="-0.5" width="0.127" layer="51"/>
+<wire x1="3.95" y1="0.5" x2="3" y2="0.5" width="0.127" layer="51"/>
+<wire x1="-3.95" y1="0.5" x2="-3" y2="0.5" width="0.127" layer="51"/>
+<wire x1="-3" y1="0.5" x2="-3" y2="-0.5" width="0.127" layer="51"/>
+<wire x1="-3" y1="-0.5" x2="-3.95" y2="-0.5" width="0.127" layer="51"/>
+<wire x1="-3.95" y1="-0.5" x2="-3.95" y2="0.5" width="0.127" layer="51"/>
+<wire x1="-1.5" y1="0.7" x2="1.5" y2="0.7" width="0.127" layer="51"/>
+<wire x1="1.5" y1="0.7" x2="1.5" y2="-0.7" width="0.127" layer="51"/>
+<wire x1="1.5" y1="-0.7" x2="-1.5" y2="-0.7" width="0.127" layer="51"/>
+<wire x1="-1.5" y1="-0.7" x2="-1.5" y2="0.7" width="0.127" layer="51"/>
+<wire x1="-3.1" y1="1.5" x2="-3.1" y2="1.9" width="0.127" layer="21"/>
+<wire x1="-3.1" y1="1.9" x2="3.1" y2="1.9" width="0.127" layer="21"/>
+<wire x1="3.1" y1="1.9" x2="3.1" y2="1.5" width="0.127" layer="21"/>
+<wire x1="-3.1" y1="-1.5" x2="-3.1" y2="-1.9" width="0.127" layer="21"/>
+<wire x1="-3.1" y1="-1.9" x2="3.1" y2="-1.9" width="0.127" layer="21"/>
+<wire x1="3.1" y1="-1.9" x2="3.1" y2="-1.5" width="0.127" layer="21"/>
+<text x="-3.043" y="2.17" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-3.016" y="-2.451" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<smd name="P$1" x="-4" y="0" dx="2" dy="1.5" layer="1"/>
+<smd name="P$2" x="4" y="0" dx="2" dy="1.5" layer="1"/>
+</package>
+</packages>
+</library>
+<library name="My Stuff">
+<description>Generated from &lt;b&gt;Hiking Log FeatherWing.brd&lt;/b&gt;&lt;p&gt;
+by exp-lbrs.ulp</description>
+<packages>
+<package name="OSO_WORDMARK_ONELINE_350MIL_1000DPI">
+<rectangle x1="-2.1463" y1="-0.4445" x2="-2.0701" y2="-0.4191" layer="21"/>
+<rectangle x1="-4.1275" y1="-0.4191" x2="-3.9243" y2="-0.3937" layer="21"/>
+<rectangle x1="-3.5433" y1="-0.4191" x2="-3.3909" y2="-0.3937" layer="21"/>
+<rectangle x1="-3.0353" y1="-0.4191" x2="-2.8829" y2="-0.3937" layer="21"/>
+<rectangle x1="-2.3495" y1="-0.4191" x2="-2.2987" y2="-0.3937" layer="21"/>
+<rectangle x1="-2.1717" y1="-0.4191" x2="-2.0701" y2="-0.3937" layer="21"/>
+<rectangle x1="-1.5875" y1="-0.4191" x2="-1.3843" y2="-0.3937" layer="21"/>
+<rectangle x1="-1.2319" y1="-0.4191" x2="-1.1303" y2="-0.3937" layer="21"/>
+<rectangle x1="-0.5969" y1="-0.4191" x2="-0.5715" y2="-0.3937" layer="21"/>
+<rectangle x1="-0.1905" y1="-0.4191" x2="-0.0635" y2="-0.3937" layer="21"/>
+<rectangle x1="-0.0127" y1="-0.4191" x2="0.0889" y2="-0.3937" layer="21"/>
+<rectangle x1="0.1651" y1="-0.4191" x2="0.2667" y2="-0.3937" layer="21"/>
+<rectangle x1="0.4191" y1="-0.4191" x2="0.5207" y2="-0.3937" layer="21"/>
+<rectangle x1="0.8763" y1="-0.4191" x2="1.0287" y2="-0.3937" layer="21"/>
+<rectangle x1="1.6383" y1="-0.4191" x2="1.8415" y2="-0.3937" layer="21"/>
+<rectangle x1="2.3495" y1="-0.4191" x2="2.5019" y2="-0.3937" layer="21"/>
+<rectangle x1="2.7051" y1="-0.4191" x2="2.7305" y2="-0.3937" layer="21"/>
+<rectangle x1="3.1115" y1="-0.4191" x2="3.1369" y2="-0.3937" layer="21"/>
+<rectangle x1="3.5179" y1="-0.4191" x2="3.6449" y2="-0.3937" layer="21"/>
+<rectangle x1="3.7973" y1="-0.4191" x2="3.8989" y2="-0.3937" layer="21"/>
+<rectangle x1="4.1529" y1="-0.4191" x2="4.3307" y2="-0.3937" layer="21"/>
+<rectangle x1="-4.2037" y1="-0.3937" x2="-3.8481" y2="-0.3683" layer="21"/>
+<rectangle x1="-3.5433" y1="-0.3937" x2="-3.3401" y2="-0.3683" layer="21"/>
+<rectangle x1="-3.0353" y1="-0.3937" x2="-2.8321" y2="-0.3683" layer="21"/>
+<rectangle x1="-2.3749" y1="-0.3937" x2="-2.2987" y2="-0.3683" layer="21"/>
+<rectangle x1="-2.1717" y1="-0.3937" x2="-2.0701" y2="-0.3683" layer="21"/>
+<rectangle x1="-1.6129" y1="-0.3937" x2="-1.3589" y2="-0.3683" layer="21"/>
+<rectangle x1="-1.2319" y1="-0.3937" x2="-1.1303" y2="-0.3683" layer="21"/>
+<rectangle x1="-0.6223" y1="-0.3937" x2="-0.5715" y2="-0.3683" layer="21"/>
+<rectangle x1="-0.2667" y1="-0.3937" x2="-0.0635" y2="-0.3683" layer="21"/>
+<rectangle x1="-0.0127" y1="-0.3937" x2="0.0889" y2="-0.3683" layer="21"/>
+<rectangle x1="0.1651" y1="-0.3937" x2="0.2667" y2="-0.3683" layer="21"/>
+<rectangle x1="0.4191" y1="-0.3937" x2="0.5207" y2="-0.3683" layer="21"/>
+<rectangle x1="0.8255" y1="-0.3937" x2="1.0287" y2="-0.3683" layer="21"/>
+<rectangle x1="1.5621" y1="-0.3937" x2="1.9177" y2="-0.3683" layer="21"/>
+<rectangle x1="2.2987" y1="-0.3937" x2="2.5527" y2="-0.3683" layer="21"/>
+<rectangle x1="2.7051" y1="-0.3937" x2="2.7559" y2="-0.3683" layer="21"/>
+<rectangle x1="3.0861" y1="-0.3937" x2="3.1369" y2="-0.3683" layer="21"/>
+<rectangle x1="3.4671" y1="-0.3937" x2="3.6449" y2="-0.3683" layer="21"/>
+<rectangle x1="3.7973" y1="-0.3937" x2="3.8989" y2="-0.3683" layer="21"/>
+<rectangle x1="4.1275" y1="-0.3937" x2="4.3815" y2="-0.3683" layer="21"/>
+<rectangle x1="-4.2545" y1="-0.3683" x2="-3.7973" y2="-0.3429" layer="21"/>
+<rectangle x1="-3.5433" y1="-0.3683" x2="-3.2893" y2="-0.3429" layer="21"/>
+<rectangle x1="-3.0353" y1="-0.3683" x2="-2.7813" y2="-0.3429" layer="21"/>
+<rectangle x1="-2.4003" y1="-0.3683" x2="-2.2987" y2="-0.3429" layer="21"/>
+<rectangle x1="-2.1717" y1="-0.3683" x2="-2.0701" y2="-0.3429" layer="21"/>
+<rectangle x1="-1.6383" y1="-0.3683" x2="-1.3335" y2="-0.3429" layer="21"/>
+<rectangle x1="-1.2319" y1="-0.3683" x2="-1.1303" y2="-0.3429" layer="21"/>
+<rectangle x1="-0.6477" y1="-0.3683" x2="-0.5715" y2="-0.3429" layer="21"/>
+<rectangle x1="-0.2921" y1="-0.3683" x2="-0.0635" y2="-0.3429" layer="21"/>
+<rectangle x1="-0.0127" y1="-0.3683" x2="0.0889" y2="-0.3429" layer="21"/>
+<rectangle x1="0.1651" y1="-0.3683" x2="0.2667" y2="-0.3429" layer="21"/>
+<rectangle x1="0.4191" y1="-0.3683" x2="0.5207" y2="-0.3429" layer="21"/>
+<rectangle x1="0.7747" y1="-0.3683" x2="1.0287" y2="-0.3429" layer="21"/>
+<rectangle x1="1.5113" y1="-0.3683" x2="1.9685" y2="-0.3429" layer="21"/>
+<rectangle x1="2.2733" y1="-0.3683" x2="2.5781" y2="-0.3429" layer="21"/>
+<rectangle x1="2.7051" y1="-0.3683" x2="2.7813" y2="-0.3429" layer="21"/>
+<rectangle x1="3.0607" y1="-0.3683" x2="3.1369" y2="-0.3429" layer="21"/>
+<rectangle x1="3.4163" y1="-0.3683" x2="3.6449" y2="-0.3429" layer="21"/>
+<rectangle x1="3.7973" y1="-0.3683" x2="3.8989" y2="-0.3429" layer="21"/>
+<rectangle x1="4.1021" y1="-0.3683" x2="4.4069" y2="-0.3429" layer="21"/>
+<rectangle x1="-4.2799" y1="-0.3429" x2="-3.7719" y2="-0.3175" layer="21"/>
+<rectangle x1="-3.5433" y1="-0.3429" x2="-3.2639" y2="-0.3175" layer="21"/>
+<rectangle x1="-3.0353" y1="-0.3429" x2="-2.7559" y2="-0.3175" layer="21"/>
+<rectangle x1="-2.4003" y1="-0.3429" x2="-2.2987" y2="-0.3175" layer="21"/>
+<rectangle x1="-2.1717" y1="-0.3429" x2="-2.0701" y2="-0.3175" layer="21"/>
+<rectangle x1="-1.6637" y1="-0.3429" x2="-1.5113" y2="-0.3175" layer="21"/>
+<rectangle x1="-1.4605" y1="-0.3429" x2="-1.3081" y2="-0.3175" layer="21"/>
+<rectangle x1="-1.2319" y1="-0.3429" x2="-1.1303" y2="-0.3175" layer="21"/>
+<rectangle x1="-0.6731" y1="-0.3429" x2="-0.5715" y2="-0.3175" layer="21"/>
+<rectangle x1="-0.3429" y1="-0.3429" x2="-0.0635" y2="-0.3175" layer="21"/>
+<rectangle x1="-0.0127" y1="-0.3429" x2="0.0889" y2="-0.3175" layer="21"/>
+<rectangle x1="0.1651" y1="-0.3429" x2="0.2667" y2="-0.3175" layer="21"/>
+<rectangle x1="0.4191" y1="-0.3429" x2="0.5207" y2="-0.3175" layer="21"/>
+<rectangle x1="0.7493" y1="-0.3429" x2="1.0033" y2="-0.3175" layer="21"/>
+<rectangle x1="1.4859" y1="-0.3429" x2="1.9939" y2="-0.3175" layer="21"/>
+<rectangle x1="2.2479" y1="-0.3429" x2="2.6035" y2="-0.3175" layer="21"/>
+<rectangle x1="2.7051" y1="-0.3429" x2="2.8067" y2="-0.3175" layer="21"/>
+<rectangle x1="3.0353" y1="-0.3429" x2="3.1369" y2="-0.3175" layer="21"/>
+<rectangle x1="3.3655" y1="-0.3429" x2="3.6449" y2="-0.3175" layer="21"/>
+<rectangle x1="3.7973" y1="-0.3429" x2="3.8989" y2="-0.3175" layer="21"/>
+<rectangle x1="4.0767" y1="-0.3429" x2="4.2037" y2="-0.3175" layer="21"/>
+<rectangle x1="4.2799" y1="-0.3429" x2="4.4069" y2="-0.3175" layer="21"/>
+<rectangle x1="-4.3053" y1="-0.3175" x2="-4.1275" y2="-0.2921" layer="21"/>
+<rectangle x1="-3.9243" y1="-0.3175" x2="-3.7465" y2="-0.2921" layer="21"/>
+<rectangle x1="-3.5433" y1="-0.3175" x2="-3.2385" y2="-0.2921" layer="21"/>
+<rectangle x1="-3.0353" y1="-0.3175" x2="-2.7305" y2="-0.2921" layer="21"/>
+<rectangle x1="-2.4257" y1="-0.3175" x2="-2.2987" y2="-0.2921" layer="21"/>
+<rectangle x1="-2.1717" y1="-0.3175" x2="-2.0701" y2="-0.2921" layer="21"/>
+<rectangle x1="-1.6637" y1="-0.3175" x2="-1.5621" y2="-0.2921" layer="21"/>
+<rectangle x1="-1.4097" y1="-0.3175" x2="-1.3081" y2="-0.2921" layer="21"/>
+<rectangle x1="-1.2319" y1="-0.3175" x2="-1.1303" y2="-0.2921" layer="21"/>
+<rectangle x1="-0.6985" y1="-0.3175" x2="-0.5715" y2="-0.2921" layer="21"/>
+<rectangle x1="-0.3683" y1="-0.3175" x2="-0.1651" y2="-0.2921" layer="21"/>
+<rectangle x1="-0.0127" y1="-0.3175" x2="0.0889" y2="-0.2921" layer="21"/>
+<rectangle x1="0.1651" y1="-0.3175" x2="0.2667" y2="-0.2921" layer="21"/>
+<rectangle x1="0.4191" y1="-0.3175" x2="0.5207" y2="-0.2921" layer="21"/>
+<rectangle x1="0.7239" y1="-0.3175" x2="0.8763" y2="-0.2921" layer="21"/>
+<rectangle x1="1.4605" y1="-0.3175" x2="1.6383" y2="-0.2921" layer="21"/>
+<rectangle x1="1.8415" y1="-0.3175" x2="2.0193" y2="-0.2921" layer="21"/>
+<rectangle x1="2.2479" y1="-0.3175" x2="2.3749" y2="-0.2921" layer="21"/>
+<rectangle x1="2.5019" y1="-0.3175" x2="2.6035" y2="-0.2921" layer="21"/>
+<rectangle x1="2.7051" y1="-0.3175" x2="2.8321" y2="-0.2921" layer="21"/>
+<rectangle x1="3.0099" y1="-0.3175" x2="3.1369" y2="-0.2921" layer="21"/>
+<rectangle x1="3.3401" y1="-0.3175" x2="3.6195" y2="-0.2921" layer="21"/>
+<rectangle x1="3.7973" y1="-0.3175" x2="3.8989" y2="-0.2921" layer="21"/>
+<rectangle x1="4.0513" y1="-0.3175" x2="4.1783" y2="-0.2921" layer="21"/>
+<rectangle x1="4.3053" y1="-0.3175" x2="4.4323" y2="-0.2921" layer="21"/>
+<rectangle x1="-4.3307" y1="-0.2921" x2="-4.1783" y2="-0.2667" layer="21"/>
+<rectangle x1="-3.8735" y1="-0.2921" x2="-3.7211" y2="-0.2667" layer="21"/>
+<rectangle x1="-3.5433" y1="-0.2921" x2="-3.4417" y2="-0.2667" layer="21"/>
+<rectangle x1="-3.3655" y1="-0.2921" x2="-3.2131" y2="-0.2667" layer="21"/>
+<rectangle x1="-3.0353" y1="-0.2921" x2="-2.9337" y2="-0.2667" layer="21"/>
+<rectangle x1="-2.8575" y1="-0.2921" x2="-2.7051" y2="-0.2667" layer="21"/>
+<rectangle x1="-2.4511" y1="-0.2921" x2="-2.3241" y2="-0.2667" layer="21"/>
+<rectangle x1="-2.1717" y1="-0.2921" x2="-2.0701" y2="-0.2667" layer="21"/>
+<rectangle x1="-1.6637" y1="-0.2921" x2="-1.5875" y2="-0.2667" layer="21"/>
+<rectangle x1="-1.4097" y1="-0.2921" x2="-1.3081" y2="-0.2667" layer="21"/>
+<rectangle x1="-1.2319" y1="-0.2921" x2="-1.1303" y2="-0.2667" layer="21"/>
+<rectangle x1="-0.6985" y1="-0.2921" x2="-0.5969" y2="-0.2667" layer="21"/>
+<rectangle x1="-0.3937" y1="-0.2921" x2="-0.2667" y2="-0.2667" layer="21"/>
+<rectangle x1="-0.0127" y1="-0.2921" x2="0.0889" y2="-0.2667" layer="21"/>
+<rectangle x1="0.1651" y1="-0.2921" x2="0.2667" y2="-0.2667" layer="21"/>
+<rectangle x1="0.4191" y1="-0.2921" x2="0.5207" y2="-0.2667" layer="21"/>
+<rectangle x1="0.6985" y1="-0.2921" x2="0.8255" y2="-0.2667" layer="21"/>
+<rectangle x1="1.4351" y1="-0.2921" x2="1.5875" y2="-0.2667" layer="21"/>
+<rectangle x1="1.8923" y1="-0.2921" x2="2.0447" y2="-0.2667" layer="21"/>
+<rectangle x1="2.2225" y1="-0.2921" x2="2.3495" y2="-0.2667" layer="21"/>
+<rectangle x1="2.5019" y1="-0.2921" x2="2.6289" y2="-0.2667" layer="21"/>
+<rectangle x1="2.7305" y1="-0.2921" x2="2.8321" y2="-0.2667" layer="21"/>
+<rectangle x1="3.0099" y1="-0.2921" x2="3.1115" y2="-0.2667" layer="21"/>
+<rectangle x1="3.3147" y1="-0.2921" x2="3.4925" y2="-0.2667" layer="21"/>
+<rectangle x1="3.7973" y1="-0.2921" x2="3.8989" y2="-0.2667" layer="21"/>
+<rectangle x1="4.0513" y1="-0.2921" x2="4.1529" y2="-0.2667" layer="21"/>
+<rectangle x1="4.3307" y1="-0.2921" x2="4.4323" y2="-0.2667" layer="21"/>
+<rectangle x1="-4.3561" y1="-0.2667" x2="-4.2291" y2="-0.2413" layer="21"/>
+<rectangle x1="-3.8227" y1="-0.2667" x2="-3.6957" y2="-0.2413" layer="21"/>
+<rectangle x1="-3.5433" y1="-0.2667" x2="-3.4417" y2="-0.2413" layer="21"/>
+<rectangle x1="-3.3147" y1="-0.2667" x2="-3.1877" y2="-0.2413" layer="21"/>
+<rectangle x1="-3.0353" y1="-0.2667" x2="-2.9337" y2="-0.2413" layer="21"/>
+<rectangle x1="-2.8067" y1="-0.2667" x2="-2.6797" y2="-0.2413" layer="21"/>
+<rectangle x1="-2.4511" y1="-0.2667" x2="-2.3495" y2="-0.2413" layer="21"/>
+<rectangle x1="-2.1717" y1="-0.2667" x2="-2.0701" y2="-0.2413" layer="21"/>
+<rectangle x1="-1.6891" y1="-0.2667" x2="-1.5875" y2="-0.2413" layer="21"/>
+<rectangle x1="-1.3843" y1="-0.2667" x2="-1.3081" y2="-0.2413" layer="21"/>
+<rectangle x1="-1.2319" y1="-0.2667" x2="-1.1303" y2="-0.2413" layer="21"/>
+<rectangle x1="-0.7239" y1="-0.2667" x2="-0.6223" y2="-0.2413" layer="21"/>
+<rectangle x1="-0.4191" y1="-0.2667" x2="-0.2921" y2="-0.2413" layer="21"/>
+<rectangle x1="-0.0127" y1="-0.2667" x2="0.0889" y2="-0.2413" layer="21"/>
+<rectangle x1="0.1651" y1="-0.2667" x2="0.2667" y2="-0.2413" layer="21"/>
+<rectangle x1="0.4191" y1="-0.2667" x2="0.5207" y2="-0.2413" layer="21"/>
+<rectangle x1="0.6731" y1="-0.2667" x2="0.8001" y2="-0.2413" layer="21"/>
+<rectangle x1="1.4097" y1="-0.2667" x2="1.5367" y2="-0.2413" layer="21"/>
+<rectangle x1="1.9431" y1="-0.2667" x2="2.0701" y2="-0.2413" layer="21"/>
+<rectangle x1="2.2225" y1="-0.2667" x2="2.3241" y2="-0.2413" layer="21"/>
+<rectangle x1="2.5273" y1="-0.2667" x2="2.6289" y2="-0.2413" layer="21"/>
+<rectangle x1="2.7305" y1="-0.2667" x2="2.8575" y2="-0.2413" layer="21"/>
+<rectangle x1="2.9845" y1="-0.2667" x2="3.0861" y2="-0.2413" layer="21"/>
+<rectangle x1="3.2893" y1="-0.2667" x2="3.4417" y2="-0.2413" layer="21"/>
+<rectangle x1="3.7973" y1="-0.2667" x2="3.8989" y2="-0.2413" layer="21"/>
+<rectangle x1="4.0513" y1="-0.2667" x2="4.1529" y2="-0.2413" layer="21"/>
+<rectangle x1="4.3307" y1="-0.2667" x2="4.4323" y2="-0.2413" layer="21"/>
+<rectangle x1="-4.3815" y1="-0.2413" x2="-4.2545" y2="-0.2159" layer="21"/>
+<rectangle x1="-3.7973" y1="-0.2413" x2="-3.6703" y2="-0.2159" layer="21"/>
+<rectangle x1="-3.5433" y1="-0.2413" x2="-3.4417" y2="-0.2159" layer="21"/>
+<rectangle x1="-3.2893" y1="-0.2413" x2="-3.1623" y2="-0.2159" layer="21"/>
+<rectangle x1="-3.0353" y1="-0.2413" x2="-2.9337" y2="-0.2159" layer="21"/>
+<rectangle x1="-2.7813" y1="-0.2413" x2="-2.6543" y2="-0.2159" layer="21"/>
+<rectangle x1="-2.4511" y1="-0.2413" x2="-2.3495" y2="-0.2159" layer="21"/>
+<rectangle x1="-2.1717" y1="-0.2413" x2="-2.0701" y2="-0.2159" layer="21"/>
+<rectangle x1="-1.6891" y1="-0.2413" x2="-1.5875" y2="-0.2159" layer="21"/>
+<rectangle x1="-1.3843" y1="-0.2413" x2="-1.3081" y2="-0.2159" layer="21"/>
+<rectangle x1="-1.2319" y1="-0.2413" x2="-1.1303" y2="-0.2159" layer="21"/>
+<rectangle x1="-0.7239" y1="-0.2413" x2="-0.6223" y2="-0.2159" layer="21"/>
+<rectangle x1="-0.4191" y1="-0.2413" x2="-0.3175" y2="-0.2159" layer="21"/>
+<rectangle x1="-0.0127" y1="-0.2413" x2="0.0889" y2="-0.2159" layer="21"/>
+<rectangle x1="0.1651" y1="-0.2413" x2="0.2667" y2="-0.2159" layer="21"/>
+<rectangle x1="0.4191" y1="-0.2413" x2="0.5207" y2="-0.2159" layer="21"/>
+<rectangle x1="0.6477" y1="-0.2413" x2="0.7747" y2="-0.2159" layer="21"/>
+<rectangle x1="1.3843" y1="-0.2413" x2="1.5113" y2="-0.2159" layer="21"/>
+<rectangle x1="1.9685" y1="-0.2413" x2="2.0955" y2="-0.2159" layer="21"/>
+<rectangle x1="2.2225" y1="-0.2413" x2="2.3241" y2="-0.2159" layer="21"/>
+<rectangle x1="2.5273" y1="-0.2413" x2="2.6289" y2="-0.2159" layer="21"/>
+<rectangle x1="2.7559" y1="-0.2413" x2="2.8575" y2="-0.2159" layer="21"/>
+<rectangle x1="2.9845" y1="-0.2413" x2="3.0861" y2="-0.2159" layer="21"/>
+<rectangle x1="3.2893" y1="-0.2413" x2="3.3909" y2="-0.2159" layer="21"/>
+<rectangle x1="3.7973" y1="-0.2413" x2="3.8989" y2="-0.2159" layer="21"/>
+<rectangle x1="4.0513" y1="-0.2413" x2="4.1529" y2="-0.2159" layer="21"/>
+<rectangle x1="4.3307" y1="-0.2413" x2="4.4323" y2="-0.2159" layer="21"/>
+<rectangle x1="-4.3815" y1="-0.2159" x2="-4.2799" y2="-0.1905" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.2159" x2="-3.6449" y2="-0.1905" layer="21"/>
+<rectangle x1="-3.5433" y1="-0.2159" x2="-3.4417" y2="-0.1905" layer="21"/>
+<rectangle x1="-3.2639" y1="-0.2159" x2="-3.1623" y2="-0.1905" layer="21"/>
+<rectangle x1="-3.0353" y1="-0.2159" x2="-2.9337" y2="-0.1905" layer="21"/>
+<rectangle x1="-2.7559" y1="-0.2159" x2="-2.6543" y2="-0.1905" layer="21"/>
+<rectangle x1="-2.4765" y1="-0.2159" x2="-2.3749" y2="-0.1905" layer="21"/>
+<rectangle x1="-2.1717" y1="-0.2159" x2="-2.0701" y2="-0.1905" layer="21"/>
+<rectangle x1="-1.6637" y1="-0.2159" x2="-1.5875" y2="-0.1905" layer="21"/>
+<rectangle x1="-1.4097" y1="-0.2159" x2="-1.3081" y2="-0.1905" layer="21"/>
+<rectangle x1="-1.2319" y1="-0.2159" x2="-1.1303" y2="-0.1905" layer="21"/>
+<rectangle x1="-0.7493" y1="-0.2159" x2="-0.6223" y2="-0.1905" layer="21"/>
+<rectangle x1="-0.4445" y1="-0.2159" x2="-0.3429" y2="-0.1905" layer="21"/>
+<rectangle x1="-0.0127" y1="-0.2159" x2="0.0889" y2="-0.1905" layer="21"/>
+<rectangle x1="0.1651" y1="-0.2159" x2="0.2667" y2="-0.1905" layer="21"/>
+<rectangle x1="0.4191" y1="-0.2159" x2="0.5207" y2="-0.1905" layer="21"/>
+<rectangle x1="0.6477" y1="-0.2159" x2="0.7493" y2="-0.1905" layer="21"/>
+<rectangle x1="1.3843" y1="-0.2159" x2="1.4859" y2="-0.1905" layer="21"/>
+<rectangle x1="1.9939" y1="-0.2159" x2="2.1209" y2="-0.1905" layer="21"/>
+<rectangle x1="2.2225" y1="-0.2159" x2="2.3241" y2="-0.1905" layer="21"/>
+<rectangle x1="2.5273" y1="-0.2159" x2="2.6289" y2="-0.1905" layer="21"/>
+<rectangle x1="2.7559" y1="-0.2159" x2="2.8575" y2="-0.1905" layer="21"/>
+<rectangle x1="2.9591" y1="-0.2159" x2="3.0607" y2="-0.1905" layer="21"/>
+<rectangle x1="3.2639" y1="-0.2159" x2="3.3909" y2="-0.1905" layer="21"/>
+<rectangle x1="3.7973" y1="-0.2159" x2="3.8989" y2="-0.1905" layer="21"/>
+<rectangle x1="4.0513" y1="-0.2159" x2="4.1529" y2="-0.1905" layer="21"/>
+<rectangle x1="4.3307" y1="-0.2159" x2="4.4323" y2="-0.1905" layer="21"/>
+<rectangle x1="-4.4069" y1="-0.1905" x2="-4.3053" y2="-0.1651" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.1905" x2="-3.6449" y2="-0.1651" layer="21"/>
+<rectangle x1="-3.5433" y1="-0.1905" x2="-3.4417" y2="-0.1651" layer="21"/>
+<rectangle x1="-3.2639" y1="-0.1905" x2="-3.1369" y2="-0.1651" layer="21"/>
+<rectangle x1="-3.0353" y1="-0.1905" x2="-2.9337" y2="-0.1651" layer="21"/>
+<rectangle x1="-2.7559" y1="-0.1905" x2="-2.6289" y2="-0.1651" layer="21"/>
+<rectangle x1="-2.4765" y1="-0.1905" x2="-2.3749" y2="-0.1651" layer="21"/>
+<rectangle x1="-2.1717" y1="-0.1905" x2="-2.0701" y2="-0.1651" layer="21"/>
+<rectangle x1="-1.6637" y1="-0.1905" x2="-1.5621" y2="-0.1651" layer="21"/>
+<rectangle x1="-1.4097" y1="-0.1905" x2="-1.3081" y2="-0.1651" layer="21"/>
+<rectangle x1="-1.2319" y1="-0.1905" x2="-1.1303" y2="-0.1651" layer="21"/>
+<rectangle x1="-0.7493" y1="-0.1905" x2="-0.6477" y2="-0.1651" layer="21"/>
+<rectangle x1="-0.4699" y1="-0.1905" x2="-0.3683" y2="-0.1651" layer="21"/>
+<rectangle x1="-0.0127" y1="-0.1905" x2="0.0889" y2="-0.1651" layer="21"/>
+<rectangle x1="0.1651" y1="-0.1905" x2="0.2667" y2="-0.1651" layer="21"/>
+<rectangle x1="0.4191" y1="-0.1905" x2="0.5207" y2="-0.1651" layer="21"/>
+<rectangle x1="0.6223" y1="-0.1905" x2="0.7239" y2="-0.1651" layer="21"/>
+<rectangle x1="1.3589" y1="-0.1905" x2="1.4605" y2="-0.1651" layer="21"/>
+<rectangle x1="1.9939" y1="-0.1905" x2="2.1209" y2="-0.1651" layer="21"/>
+<rectangle x1="2.2225" y1="-0.1905" x2="2.3241" y2="-0.1651" layer="21"/>
+<rectangle x1="2.5273" y1="-0.1905" x2="2.6289" y2="-0.1651" layer="21"/>
+<rectangle x1="2.7813" y1="-0.1905" x2="2.8829" y2="-0.1651" layer="21"/>
+<rectangle x1="2.9591" y1="-0.1905" x2="3.0607" y2="-0.1651" layer="21"/>
+<rectangle x1="3.2639" y1="-0.1905" x2="3.3655" y2="-0.1651" layer="21"/>
+<rectangle x1="3.7973" y1="-0.1905" x2="3.8989" y2="-0.1651" layer="21"/>
+<rectangle x1="4.0513" y1="-0.1905" x2="4.1783" y2="-0.1651" layer="21"/>
+<rectangle x1="4.3307" y1="-0.1905" x2="4.4323" y2="-0.1651" layer="21"/>
+<rectangle x1="-4.4069" y1="-0.1651" x2="-4.3053" y2="-0.1397" layer="21"/>
+<rectangle x1="-3.7465" y1="-0.1651" x2="-3.6449" y2="-0.1397" layer="21"/>
+<rectangle x1="-3.5433" y1="-0.1651" x2="-3.4417" y2="-0.1397" layer="21"/>
+<rectangle x1="-3.2385" y1="-0.1651" x2="-3.1369" y2="-0.1397" layer="21"/>
+<rectangle x1="-3.0353" y1="-0.1651" x2="-2.9337" y2="-0.1397" layer="21"/>
+<rectangle x1="-2.7305" y1="-0.1651" x2="-2.6289" y2="-0.1397" layer="21"/>
+<rectangle x1="-2.4765" y1="-0.1651" x2="-2.3749" y2="-0.1397" layer="21"/>
+<rectangle x1="-2.1717" y1="-0.1651" x2="-2.0701" y2="-0.1397" layer="21"/>
+<rectangle x1="-1.6637" y1="-0.1651" x2="-1.5367" y2="-0.1397" layer="21"/>
+<rectangle x1="-1.4351" y1="-0.1651" x2="-1.3081" y2="-0.1397" layer="21"/>
+<rectangle x1="-1.2319" y1="-0.1651" x2="-1.1303" y2="-0.1397" layer="21"/>
+<rectangle x1="-0.7493" y1="-0.1651" x2="-0.6477" y2="-0.1397" layer="21"/>
+<rectangle x1="-0.4699" y1="-0.1651" x2="-0.3683" y2="-0.1397" layer="21"/>
+<rectangle x1="-0.0127" y1="-0.1651" x2="0.0889" y2="-0.1397" layer="21"/>
+<rectangle x1="0.1651" y1="-0.1651" x2="0.2667" y2="-0.1397" layer="21"/>
+<rectangle x1="0.4191" y1="-0.1651" x2="0.5207" y2="-0.1397" layer="21"/>
+<rectangle x1="0.6223" y1="-0.1651" x2="0.7239" y2="-0.1397" layer="21"/>
+<rectangle x1="1.3589" y1="-0.1651" x2="1.4605" y2="-0.1397" layer="21"/>
+<rectangle x1="2.0193" y1="-0.1651" x2="2.1209" y2="-0.1397" layer="21"/>
+<rectangle x1="2.2225" y1="-0.1651" x2="2.3241" y2="-0.1397" layer="21"/>
+<rectangle x1="2.5019" y1="-0.1651" x2="2.6289" y2="-0.1397" layer="21"/>
+<rectangle x1="2.7813" y1="-0.1651" x2="2.8829" y2="-0.1397" layer="21"/>
+<rectangle x1="2.9591" y1="-0.1651" x2="3.0607" y2="-0.1397" layer="21"/>
+<rectangle x1="3.2385" y1="-0.1651" x2="3.3401" y2="-0.1397" layer="21"/>
+<rectangle x1="3.7973" y1="-0.1651" x2="3.8989" y2="-0.1397" layer="21"/>
+<rectangle x1="4.0767" y1="-0.1651" x2="4.2037" y2="-0.1397" layer="21"/>
+<rectangle x1="4.3053" y1="-0.1651" x2="4.4069" y2="-0.1397" layer="21"/>
+<rectangle x1="-4.4323" y1="-0.1397" x2="-4.3307" y2="-0.1143" layer="21"/>
+<rectangle x1="-3.7465" y1="-0.1397" x2="-3.6195" y2="-0.1143" layer="21"/>
+<rectangle x1="-3.5433" y1="-0.1397" x2="-3.4417" y2="-0.1143" layer="21"/>
+<rectangle x1="-3.2385" y1="-0.1397" x2="-3.1115" y2="-0.1143" layer="21"/>
+<rectangle x1="-3.0353" y1="-0.1397" x2="-2.9337" y2="-0.1143" layer="21"/>
+<rectangle x1="-2.7305" y1="-0.1397" x2="-2.6035" y2="-0.1143" layer="21"/>
+<rectangle x1="-2.4765" y1="-0.1397" x2="-2.3749" y2="-0.1143" layer="21"/>
+<rectangle x1="-2.1717" y1="-0.1397" x2="-2.0701" y2="-0.1143" layer="21"/>
+<rectangle x1="-1.6383" y1="-0.1397" x2="-1.4859" y2="-0.1143" layer="21"/>
+<rectangle x1="-1.4605" y1="-0.1397" x2="-1.3335" y2="-0.1143" layer="21"/>
+<rectangle x1="-1.2319" y1="-0.1397" x2="-1.1303" y2="-0.1143" layer="21"/>
+<rectangle x1="-0.7493" y1="-0.1397" x2="-0.6477" y2="-0.1143" layer="21"/>
+<rectangle x1="-0.4699" y1="-0.1397" x2="-0.3937" y2="-0.1143" layer="21"/>
+<rectangle x1="-0.0127" y1="-0.1397" x2="0.0889" y2="-0.1143" layer="21"/>
+<rectangle x1="0.1651" y1="-0.1397" x2="0.2667" y2="-0.1143" layer="21"/>
+<rectangle x1="0.4191" y1="-0.1397" x2="0.5207" y2="-0.1143" layer="21"/>
+<rectangle x1="0.6223" y1="-0.1397" x2="0.7239" y2="-0.1143" layer="21"/>
+<rectangle x1="1.3335" y1="-0.1397" x2="1.4351" y2="-0.1143" layer="21"/>
+<rectangle x1="2.0193" y1="-0.1397" x2="2.1463" y2="-0.1143" layer="21"/>
+<rectangle x1="2.2225" y1="-0.1397" x2="2.3241" y2="-0.1143" layer="21"/>
+<rectangle x1="2.3495" y1="-0.1397" x2="2.4003" y2="-0.1143" layer="21"/>
+<rectangle x1="2.4511" y1="-0.1397" x2="2.6035" y2="-0.1143" layer="21"/>
+<rectangle x1="2.7813" y1="-0.1397" x2="2.8829" y2="-0.1143" layer="21"/>
+<rectangle x1="2.9591" y1="-0.1397" x2="3.0607" y2="-0.1143" layer="21"/>
+<rectangle x1="3.2385" y1="-0.1397" x2="3.3401" y2="-0.1143" layer="21"/>
+<rectangle x1="3.7973" y1="-0.1397" x2="3.8989" y2="-0.1143" layer="21"/>
+<rectangle x1="4.0767" y1="-0.1397" x2="4.2291" y2="-0.1143" layer="21"/>
+<rectangle x1="4.2799" y1="-0.1397" x2="4.4069" y2="-0.1143" layer="21"/>
+<rectangle x1="-4.4323" y1="-0.1143" x2="-4.3307" y2="-0.0889" layer="21"/>
+<rectangle x1="-3.7211" y1="-0.1143" x2="-3.6195" y2="-0.0889" layer="21"/>
+<rectangle x1="-3.5433" y1="-0.1143" x2="-3.4417" y2="-0.0889" layer="21"/>
+<rectangle x1="-3.2131" y1="-0.1143" x2="-3.1115" y2="-0.0889" layer="21"/>
+<rectangle x1="-3.0353" y1="-0.1143" x2="-2.9337" y2="-0.0889" layer="21"/>
+<rectangle x1="-2.7051" y1="-0.1143" x2="-2.6035" y2="-0.0889" layer="21"/>
+<rectangle x1="-2.4765" y1="-0.1143" x2="-2.4003" y2="-0.0889" layer="21"/>
+<rectangle x1="-2.1717" y1="-0.1143" x2="-2.0701" y2="-0.0889" layer="21"/>
+<rectangle x1="-1.6129" y1="-0.1143" x2="-1.5113" y2="-0.0889" layer="21"/>
+<rectangle x1="-1.4859" y1="-0.1143" x2="-1.3589" y2="-0.0889" layer="21"/>
+<rectangle x1="-1.2319" y1="-0.1143" x2="-1.1303" y2="-0.0889" layer="21"/>
+<rectangle x1="-0.7493" y1="-0.1143" x2="-0.6477" y2="-0.0889" layer="21"/>
+<rectangle x1="-0.4953" y1="-0.1143" x2="-0.3937" y2="-0.0889" layer="21"/>
+<rectangle x1="-0.0127" y1="-0.1143" x2="0.0889" y2="-0.0889" layer="21"/>
+<rectangle x1="0.1651" y1="-0.1143" x2="0.2667" y2="-0.0889" layer="21"/>
+<rectangle x1="0.4191" y1="-0.1143" x2="0.5207" y2="-0.0889" layer="21"/>
+<rectangle x1="0.5969" y1="-0.1143" x2="0.6985" y2="-0.0889" layer="21"/>
+<rectangle x1="1.3335" y1="-0.1143" x2="1.4351" y2="-0.0889" layer="21"/>
+<rectangle x1="2.0447" y1="-0.1143" x2="2.1463" y2="-0.0889" layer="21"/>
+<rectangle x1="2.2225" y1="-0.1143" x2="2.3241" y2="-0.0889" layer="21"/>
+<rectangle x1="2.3495" y1="-0.1143" x2="2.5781" y2="-0.0889" layer="21"/>
+<rectangle x1="2.7813" y1="-0.1143" x2="2.8829" y2="-0.0889" layer="21"/>
+<rectangle x1="2.9591" y1="-0.1143" x2="3.0353" y2="-0.0889" layer="21"/>
+<rectangle x1="3.2385" y1="-0.1143" x2="3.3147" y2="-0.0889" layer="21"/>
+<rectangle x1="3.7973" y1="-0.1143" x2="3.8989" y2="-0.0889" layer="21"/>
+<rectangle x1="4.1021" y1="-0.1143" x2="4.2291" y2="-0.0889" layer="21"/>
+<rectangle x1="4.2545" y1="-0.1143" x2="4.3815" y2="-0.0889" layer="21"/>
+<rectangle x1="-4.4323" y1="-0.0889" x2="-4.3561" y2="-0.0635" layer="21"/>
+<rectangle x1="-3.7211" y1="-0.0889" x2="-3.6195" y2="-0.0635" layer="21"/>
+<rectangle x1="-3.5433" y1="-0.0889" x2="-3.4417" y2="-0.0635" layer="21"/>
+<rectangle x1="-3.2131" y1="-0.0889" x2="-3.1115" y2="-0.0635" layer="21"/>
+<rectangle x1="-3.0353" y1="-0.0889" x2="-2.9337" y2="-0.0635" layer="21"/>
+<rectangle x1="-2.7051" y1="-0.0889" x2="-2.6035" y2="-0.0635" layer="21"/>
+<rectangle x1="-2.4765" y1="-0.0889" x2="-2.4003" y2="-0.0635" layer="21"/>
+<rectangle x1="-2.1717" y1="-0.0889" x2="-2.0701" y2="-0.0635" layer="21"/>
+<rectangle x1="-1.5875" y1="-0.0889" x2="-1.5367" y2="-0.0635" layer="21"/>
+<rectangle x1="-1.4859" y1="-0.0889" x2="-1.3843" y2="-0.0635" layer="21"/>
+<rectangle x1="-1.2319" y1="-0.0889" x2="-1.1303" y2="-0.0635" layer="21"/>
+<rectangle x1="-0.7493" y1="-0.0889" x2="-0.6477" y2="-0.0635" layer="21"/>
+<rectangle x1="-0.4953" y1="-0.0889" x2="-0.3937" y2="-0.0635" layer="21"/>
+<rectangle x1="-0.0127" y1="-0.0889" x2="0.0889" y2="-0.0635" layer="21"/>
+<rectangle x1="0.1651" y1="-0.0889" x2="0.2667" y2="-0.0635" layer="21"/>
+<rectangle x1="0.4191" y1="-0.0889" x2="0.5207" y2="-0.0635" layer="21"/>
+<rectangle x1="0.5969" y1="-0.0889" x2="0.6985" y2="-0.0635" layer="21"/>
+<rectangle x1="1.3335" y1="-0.0889" x2="1.4097" y2="-0.0635" layer="21"/>
+<rectangle x1="2.0447" y1="-0.0889" x2="2.1463" y2="-0.0635" layer="21"/>
+<rectangle x1="2.2225" y1="-0.0889" x2="2.3241" y2="-0.0635" layer="21"/>
+<rectangle x1="2.3495" y1="-0.0889" x2="2.5527" y2="-0.0635" layer="21"/>
+<rectangle x1="2.7813" y1="-0.0889" x2="2.8829" y2="-0.0635" layer="21"/>
+<rectangle x1="2.9591" y1="-0.0889" x2="3.0353" y2="-0.0635" layer="21"/>
+<rectangle x1="3.2131" y1="-0.0889" x2="3.3147" y2="-0.0635" layer="21"/>
+<rectangle x1="3.7973" y1="-0.0889" x2="3.8989" y2="-0.0635" layer="21"/>
+<rectangle x1="4.1529" y1="-0.0889" x2="4.2037" y2="-0.0635" layer="21"/>
+<rectangle x1="4.2291" y1="-0.0889" x2="4.3561" y2="-0.0635" layer="21"/>
+<rectangle x1="-4.4323" y1="-0.0635" x2="-4.3561" y2="-0.0381" layer="21"/>
+<rectangle x1="-3.7211" y1="-0.0635" x2="-3.6195" y2="-0.0381" layer="21"/>
+<rectangle x1="-3.5433" y1="-0.0635" x2="-3.4417" y2="-0.0381" layer="21"/>
+<rectangle x1="-3.2131" y1="-0.0635" x2="-3.1115" y2="-0.0381" layer="21"/>
+<rectangle x1="-3.0353" y1="-0.0635" x2="-2.9337" y2="-0.0381" layer="21"/>
+<rectangle x1="-2.7051" y1="-0.0635" x2="-2.6035" y2="-0.0381" layer="21"/>
+<rectangle x1="-2.4765" y1="-0.0635" x2="-2.4003" y2="-0.0381" layer="21"/>
+<rectangle x1="-2.1717" y1="-0.0635" x2="-2.0701" y2="-0.0381" layer="21"/>
+<rectangle x1="-1.5113" y1="-0.0635" x2="-1.3843" y2="-0.0381" layer="21"/>
+<rectangle x1="-1.2319" y1="-0.0635" x2="-1.1303" y2="-0.0381" layer="21"/>
+<rectangle x1="-0.7493" y1="-0.0635" x2="-0.5715" y2="-0.0381" layer="21"/>
+<rectangle x1="-0.4953" y1="-0.0635" x2="-0.3937" y2="-0.0381" layer="21"/>
+<rectangle x1="-0.0127" y1="-0.0635" x2="0.0889" y2="-0.0381" layer="21"/>
+<rectangle x1="0.1651" y1="-0.0635" x2="0.3429" y2="-0.0381" layer="21"/>
+<rectangle x1="0.4191" y1="-0.0635" x2="0.5207" y2="-0.0381" layer="21"/>
+<rectangle x1="0.5969" y1="-0.0635" x2="0.6985" y2="-0.0381" layer="21"/>
+<rectangle x1="1.3335" y1="-0.0635" x2="1.4097" y2="-0.0381" layer="21"/>
+<rectangle x1="2.0447" y1="-0.0635" x2="2.1463" y2="-0.0381" layer="21"/>
+<rectangle x1="2.2225" y1="-0.0635" x2="2.3241" y2="-0.0381" layer="21"/>
+<rectangle x1="2.3495" y1="-0.0635" x2="2.5273" y2="-0.0381" layer="21"/>
+<rectangle x1="2.7813" y1="-0.0635" x2="2.8829" y2="-0.0381" layer="21"/>
+<rectangle x1="2.9591" y1="-0.0635" x2="3.1369" y2="-0.0381" layer="21"/>
+<rectangle x1="3.2131" y1="-0.0635" x2="3.3147" y2="-0.0381" layer="21"/>
+<rectangle x1="3.7973" y1="-0.0635" x2="3.8989" y2="-0.0381" layer="21"/>
+<rectangle x1="4.2291" y1="-0.0635" x2="4.3307" y2="-0.0381" layer="21"/>
+<rectangle x1="-4.4577" y1="-0.0381" x2="-4.3561" y2="-0.0127" layer="21"/>
+<rectangle x1="-3.6957" y1="-0.0381" x2="-3.5941" y2="-0.0127" layer="21"/>
+<rectangle x1="-3.5433" y1="-0.0381" x2="-3.4417" y2="-0.0127" layer="21"/>
+<rectangle x1="-3.2131" y1="-0.0381" x2="-3.1115" y2="-0.0127" layer="21"/>
+<rectangle x1="-3.0353" y1="-0.0381" x2="-2.9337" y2="-0.0127" layer="21"/>
+<rectangle x1="-2.7051" y1="-0.0381" x2="-2.6035" y2="-0.0127" layer="21"/>
+<rectangle x1="-2.4765" y1="-0.0381" x2="-2.4003" y2="-0.0127" layer="21"/>
+<rectangle x1="-2.1717" y1="-0.0381" x2="-2.0701" y2="-0.0127" layer="21"/>
+<rectangle x1="-1.5367" y1="-0.0381" x2="-1.4097" y2="-0.0127" layer="21"/>
+<rectangle x1="-1.2319" y1="-0.0381" x2="-1.1303" y2="-0.0127" layer="21"/>
+<rectangle x1="-0.7493" y1="-0.0381" x2="-0.5715" y2="-0.0127" layer="21"/>
+<rectangle x1="-0.4953" y1="-0.0381" x2="-0.3937" y2="-0.0127" layer="21"/>
+<rectangle x1="-0.0127" y1="-0.0381" x2="0.0889" y2="-0.0127" layer="21"/>
+<rectangle x1="0.1651" y1="-0.0381" x2="0.3429" y2="-0.0127" layer="21"/>
+<rectangle x1="0.4191" y1="-0.0381" x2="0.5207" y2="-0.0127" layer="21"/>
+<rectangle x1="0.5969" y1="-0.0381" x2="0.6985" y2="-0.0127" layer="21"/>
+<rectangle x1="1.3081" y1="-0.0381" x2="1.4097" y2="-0.0127" layer="21"/>
+<rectangle x1="2.0701" y1="-0.0381" x2="2.1717" y2="-0.0127" layer="21"/>
+<rectangle x1="2.2225" y1="-0.0381" x2="2.3241" y2="-0.0127" layer="21"/>
+<rectangle x1="2.4003" y1="-0.0381" x2="2.4511" y2="-0.0127" layer="21"/>
+<rectangle x1="2.7813" y1="-0.0381" x2="2.8829" y2="-0.0127" layer="21"/>
+<rectangle x1="2.9591" y1="-0.0381" x2="3.1369" y2="-0.0127" layer="21"/>
+<rectangle x1="3.2131" y1="-0.0381" x2="3.3147" y2="-0.0127" layer="21"/>
+<rectangle x1="3.7973" y1="-0.0381" x2="3.8989" y2="-0.0127" layer="21"/>
+<rectangle x1="4.2037" y1="-0.0381" x2="4.3307" y2="-0.0127" layer="21"/>
+<rectangle x1="-4.4577" y1="-0.0127" x2="-4.3561" y2="0.0127" layer="21"/>
+<rectangle x1="-3.6957" y1="-0.0127" x2="-3.5941" y2="0.0127" layer="21"/>
+<rectangle x1="-3.5433" y1="-0.0127" x2="-3.4417" y2="0.0127" layer="21"/>
+<rectangle x1="-3.2131" y1="-0.0127" x2="-3.1115" y2="0.0127" layer="21"/>
+<rectangle x1="-3.0353" y1="-0.0127" x2="-2.9337" y2="0.0127" layer="21"/>
+<rectangle x1="-2.7051" y1="-0.0127" x2="-2.6035" y2="0.0127" layer="21"/>
+<rectangle x1="-2.4765" y1="-0.0127" x2="-2.4003" y2="0.0127" layer="21"/>
+<rectangle x1="-2.1717" y1="-0.0127" x2="-2.0701" y2="0.0127" layer="21"/>
+<rectangle x1="-1.5621" y1="-0.0127" x2="-1.4351" y2="0.0127" layer="21"/>
+<rectangle x1="-1.2319" y1="-0.0127" x2="-1.1303" y2="0.0127" layer="21"/>
+<rectangle x1="-0.7493" y1="-0.0127" x2="-0.5715" y2="0.0127" layer="21"/>
+<rectangle x1="-0.4953" y1="-0.0127" x2="-0.3937" y2="0.0127" layer="21"/>
+<rectangle x1="-0.0127" y1="-0.0127" x2="0.0889" y2="0.0127" layer="21"/>
+<rectangle x1="0.1651" y1="-0.0127" x2="0.3429" y2="0.0127" layer="21"/>
+<rectangle x1="0.4191" y1="-0.0127" x2="0.5207" y2="0.0127" layer="21"/>
+<rectangle x1="0.5969" y1="-0.0127" x2="0.6985" y2="0.0127" layer="21"/>
+<rectangle x1="1.3081" y1="-0.0127" x2="1.4097" y2="0.0127" layer="21"/>
+<rectangle x1="2.0701" y1="-0.0127" x2="2.1717" y2="0.0127" layer="21"/>
+<rectangle x1="2.2225" y1="-0.0127" x2="2.3241" y2="0.0127" layer="21"/>
+<rectangle x1="2.7813" y1="-0.0127" x2="2.8829" y2="0.0127" layer="21"/>
+<rectangle x1="2.9591" y1="-0.0127" x2="3.1369" y2="0.0127" layer="21"/>
+<rectangle x1="3.2131" y1="-0.0127" x2="3.3147" y2="0.0127" layer="21"/>
+<rectangle x1="3.7973" y1="-0.0127" x2="3.8989" y2="0.0127" layer="21"/>
+<rectangle x1="4.1783" y1="-0.0127" x2="4.3053" y2="0.0127" layer="21"/>
+<rectangle x1="-4.4323" y1="0.0127" x2="-4.3561" y2="0.0381" layer="21"/>
+<rectangle x1="-3.6957" y1="0.0127" x2="-3.5941" y2="0.0381" layer="21"/>
+<rectangle x1="-3.5433" y1="0.0127" x2="-3.4417" y2="0.0381" layer="21"/>
+<rectangle x1="-3.2131" y1="0.0127" x2="-3.1115" y2="0.0381" layer="21"/>
+<rectangle x1="-3.0353" y1="0.0127" x2="-2.9337" y2="0.0381" layer="21"/>
+<rectangle x1="-2.7051" y1="0.0127" x2="-2.6035" y2="0.0381" layer="21"/>
+<rectangle x1="-2.4765" y1="0.0127" x2="-2.4003" y2="0.0381" layer="21"/>
+<rectangle x1="-2.1717" y1="0.0127" x2="-2.0701" y2="0.0381" layer="21"/>
+<rectangle x1="-1.5875" y1="0.0127" x2="-1.4605" y2="0.0381" layer="21"/>
+<rectangle x1="-1.2319" y1="0.0127" x2="-1.1303" y2="0.0381" layer="21"/>
+<rectangle x1="-1.0795" y1="0.0127" x2="-0.9525" y2="0.0381" layer="21"/>
+<rectangle x1="-0.7493" y1="0.0127" x2="-0.5715" y2="0.0381" layer="21"/>
+<rectangle x1="-0.4953" y1="0.0127" x2="-0.3937" y2="0.0381" layer="21"/>
+<rectangle x1="-0.0127" y1="0.0127" x2="0.0889" y2="0.0381" layer="21"/>
+<rectangle x1="0.1651" y1="0.0127" x2="0.3429" y2="0.0381" layer="21"/>
+<rectangle x1="0.4191" y1="0.0127" x2="0.5207" y2="0.0381" layer="21"/>
+<rectangle x1="0.5969" y1="0.0127" x2="0.6985" y2="0.0381" layer="21"/>
+<rectangle x1="1.3335" y1="0.0127" x2="1.4097" y2="0.0381" layer="21"/>
+<rectangle x1="2.0701" y1="0.0127" x2="2.1717" y2="0.0381" layer="21"/>
+<rectangle x1="2.2225" y1="0.0127" x2="2.3241" y2="0.0381" layer="21"/>
+<rectangle x1="2.3495" y1="0.0127" x2="2.5019" y2="0.0381" layer="21"/>
+<rectangle x1="2.7813" y1="0.0127" x2="2.8829" y2="0.0381" layer="21"/>
+<rectangle x1="2.9591" y1="0.0127" x2="3.1369" y2="0.0381" layer="21"/>
+<rectangle x1="3.2131" y1="0.0127" x2="3.3147" y2="0.0381" layer="21"/>
+<rectangle x1="3.7973" y1="0.0127" x2="3.8989" y2="0.0381" layer="21"/>
+<rectangle x1="4.1529" y1="0.0127" x2="4.2799" y2="0.0381" layer="21"/>
+<rectangle x1="-4.4323" y1="0.0381" x2="-4.3561" y2="0.0635" layer="21"/>
+<rectangle x1="-3.7211" y1="0.0381" x2="-3.6195" y2="0.0635" layer="21"/>
+<rectangle x1="-3.5433" y1="0.0381" x2="-3.4417" y2="0.0635" layer="21"/>
+<rectangle x1="-3.2131" y1="0.0381" x2="-3.1115" y2="0.0635" layer="21"/>
+<rectangle x1="-3.0353" y1="0.0381" x2="-2.9337" y2="0.0635" layer="21"/>
+<rectangle x1="-2.7051" y1="0.0381" x2="-2.6035" y2="0.0635" layer="21"/>
+<rectangle x1="-2.4765" y1="0.0381" x2="-2.4003" y2="0.0635" layer="21"/>
+<rectangle x1="-2.1717" y1="0.0381" x2="-2.0701" y2="0.0635" layer="21"/>
+<rectangle x1="-1.5875" y1="0.0381" x2="-1.4859" y2="0.0635" layer="21"/>
+<rectangle x1="-1.4351" y1="0.0381" x2="-1.3843" y2="0.0635" layer="21"/>
+<rectangle x1="-1.2319" y1="0.0381" x2="-1.1303" y2="0.0635" layer="21"/>
+<rectangle x1="-1.1049" y1="0.0381" x2="-0.9017" y2="0.0635" layer="21"/>
+<rectangle x1="-0.7493" y1="0.0381" x2="-0.6477" y2="0.0635" layer="21"/>
+<rectangle x1="-0.4953" y1="0.0381" x2="-0.3937" y2="0.0635" layer="21"/>
+<rectangle x1="-0.0127" y1="0.0381" x2="0.0889" y2="0.0635" layer="21"/>
+<rectangle x1="0.1651" y1="0.0381" x2="0.2667" y2="0.0635" layer="21"/>
+<rectangle x1="0.4191" y1="0.0381" x2="0.5207" y2="0.0635" layer="21"/>
+<rectangle x1="0.5969" y1="0.0381" x2="0.6985" y2="0.0635" layer="21"/>
+<rectangle x1="1.3335" y1="0.0381" x2="1.4097" y2="0.0635" layer="21"/>
+<rectangle x1="2.0447" y1="0.0381" x2="2.1463" y2="0.0635" layer="21"/>
+<rectangle x1="2.2225" y1="0.0381" x2="2.3241" y2="0.0635" layer="21"/>
+<rectangle x1="2.3495" y1="0.0381" x2="2.5527" y2="0.0635" layer="21"/>
+<rectangle x1="2.7813" y1="0.0381" x2="2.8829" y2="0.0635" layer="21"/>
+<rectangle x1="2.9591" y1="0.0381" x2="3.0353" y2="0.0635" layer="21"/>
+<rectangle x1="3.2131" y1="0.0381" x2="3.3147" y2="0.0635" layer="21"/>
+<rectangle x1="3.7973" y1="0.0381" x2="3.8989" y2="0.0635" layer="21"/>
+<rectangle x1="4.1275" y1="0.0381" x2="4.2545" y2="0.0635" layer="21"/>
+<rectangle x1="4.2799" y1="0.0381" x2="4.3307" y2="0.0635" layer="21"/>
+<rectangle x1="-4.4323" y1="0.0635" x2="-4.3561" y2="0.0889" layer="21"/>
+<rectangle x1="-3.7211" y1="0.0635" x2="-3.6195" y2="0.0889" layer="21"/>
+<rectangle x1="-3.5433" y1="0.0635" x2="-3.4417" y2="0.0889" layer="21"/>
+<rectangle x1="-3.2131" y1="0.0635" x2="-3.1115" y2="0.0889" layer="21"/>
+<rectangle x1="-3.0353" y1="0.0635" x2="-2.9337" y2="0.0889" layer="21"/>
+<rectangle x1="-2.7051" y1="0.0635" x2="-2.6035" y2="0.0889" layer="21"/>
+<rectangle x1="-2.4765" y1="0.0635" x2="-2.4003" y2="0.0889" layer="21"/>
+<rectangle x1="-2.1717" y1="0.0635" x2="-2.0701" y2="0.0889" layer="21"/>
+<rectangle x1="-1.6129" y1="0.0635" x2="-1.4859" y2="0.0889" layer="21"/>
+<rectangle x1="-1.4605" y1="0.0635" x2="-1.3589" y2="0.0889" layer="21"/>
+<rectangle x1="-1.2319" y1="0.0635" x2="-1.1303" y2="0.0889" layer="21"/>
+<rectangle x1="-1.1049" y1="0.0635" x2="-0.8763" y2="0.0889" layer="21"/>
+<rectangle x1="-0.7493" y1="0.0635" x2="-0.6477" y2="0.0889" layer="21"/>
+<rectangle x1="-0.4953" y1="0.0635" x2="-0.3937" y2="0.0889" layer="21"/>
+<rectangle x1="-0.0127" y1="0.0635" x2="0.0889" y2="0.0889" layer="21"/>
+<rectangle x1="0.1651" y1="0.0635" x2="0.2667" y2="0.0889" layer="21"/>
+<rectangle x1="0.4191" y1="0.0635" x2="0.5207" y2="0.0889" layer="21"/>
+<rectangle x1="0.5969" y1="0.0635" x2="0.6985" y2="0.0889" layer="21"/>
+<rectangle x1="1.3335" y1="0.0635" x2="1.4097" y2="0.0889" layer="21"/>
+<rectangle x1="2.0447" y1="0.0635" x2="2.1463" y2="0.0889" layer="21"/>
+<rectangle x1="2.2225" y1="0.0635" x2="2.3241" y2="0.0889" layer="21"/>
+<rectangle x1="2.3495" y1="0.0635" x2="2.5781" y2="0.0889" layer="21"/>
+<rectangle x1="2.7813" y1="0.0635" x2="2.8829" y2="0.0889" layer="21"/>
+<rectangle x1="2.9591" y1="0.0635" x2="3.0353" y2="0.0889" layer="21"/>
+<rectangle x1="3.2131" y1="0.0635" x2="3.3147" y2="0.0889" layer="21"/>
+<rectangle x1="3.7973" y1="0.0635" x2="3.8989" y2="0.0889" layer="21"/>
+<rectangle x1="4.1275" y1="0.0635" x2="4.2291" y2="0.0889" layer="21"/>
+<rectangle x1="4.2799" y1="0.0635" x2="4.3815" y2="0.0889" layer="21"/>
+<rectangle x1="-4.4323" y1="0.0889" x2="-4.3307" y2="0.1143" layer="21"/>
+<rectangle x1="-3.7211" y1="0.0889" x2="-3.6195" y2="0.1143" layer="21"/>
+<rectangle x1="-3.5433" y1="0.0889" x2="-3.4417" y2="0.1143" layer="21"/>
+<rectangle x1="-3.2131" y1="0.0889" x2="-3.1115" y2="0.1143" layer="21"/>
+<rectangle x1="-3.0353" y1="0.0889" x2="-2.9337" y2="0.1143" layer="21"/>
+<rectangle x1="-2.7051" y1="0.0889" x2="-2.6035" y2="0.1143" layer="21"/>
+<rectangle x1="-2.4765" y1="0.0889" x2="-2.4003" y2="0.1143" layer="21"/>
+<rectangle x1="-2.1717" y1="0.0889" x2="-2.0701" y2="0.1143" layer="21"/>
+<rectangle x1="-1.6383" y1="0.0889" x2="-1.5113" y2="0.1143" layer="21"/>
+<rectangle x1="-1.4859" y1="0.0889" x2="-1.3335" y2="0.1143" layer="21"/>
+<rectangle x1="-1.2319" y1="0.0889" x2="-1.1303" y2="0.1143" layer="21"/>
+<rectangle x1="-1.1049" y1="0.0889" x2="-0.8763" y2="0.1143" layer="21"/>
+<rectangle x1="-0.7493" y1="0.0889" x2="-0.6477" y2="0.1143" layer="21"/>
+<rectangle x1="-0.4953" y1="0.0889" x2="-0.3937" y2="0.1143" layer="21"/>
+<rectangle x1="-0.0127" y1="0.0889" x2="0.0889" y2="0.1143" layer="21"/>
+<rectangle x1="0.1651" y1="0.0889" x2="0.2667" y2="0.1143" layer="21"/>
+<rectangle x1="0.4191" y1="0.0889" x2="0.5207" y2="0.1143" layer="21"/>
+<rectangle x1="0.6223" y1="0.0889" x2="0.7239" y2="0.1143" layer="21"/>
+<rectangle x1="1.3335" y1="0.0889" x2="1.4351" y2="0.1143" layer="21"/>
+<rectangle x1="2.0447" y1="0.0889" x2="2.1463" y2="0.1143" layer="21"/>
+<rectangle x1="2.2225" y1="0.0889" x2="2.3241" y2="0.1143" layer="21"/>
+<rectangle x1="2.3495" y1="0.0889" x2="2.6035" y2="0.1143" layer="21"/>
+<rectangle x1="2.7813" y1="0.0889" x2="2.8829" y2="0.1143" layer="21"/>
+<rectangle x1="2.9591" y1="0.0889" x2="3.0353" y2="0.1143" layer="21"/>
+<rectangle x1="3.2385" y1="0.0889" x2="3.3147" y2="0.1143" layer="21"/>
+<rectangle x1="3.7973" y1="0.0889" x2="3.8989" y2="0.1143" layer="21"/>
+<rectangle x1="4.1021" y1="0.0889" x2="4.2291" y2="0.1143" layer="21"/>
+<rectangle x1="4.2545" y1="0.0889" x2="4.4069" y2="0.1143" layer="21"/>
+<rectangle x1="-4.4323" y1="0.1143" x2="-4.3307" y2="0.1397" layer="21"/>
+<rectangle x1="-3.7211" y1="0.1143" x2="-3.6195" y2="0.1397" layer="21"/>
+<rectangle x1="-3.5433" y1="0.1143" x2="-3.4417" y2="0.1397" layer="21"/>
+<rectangle x1="-3.2385" y1="0.1143" x2="-3.1115" y2="0.1397" layer="21"/>
+<rectangle x1="-3.0353" y1="0.1143" x2="-2.9337" y2="0.1397" layer="21"/>
+<rectangle x1="-2.7305" y1="0.1143" x2="-2.6035" y2="0.1397" layer="21"/>
+<rectangle x1="-2.4765" y1="0.1143" x2="-2.4003" y2="0.1397" layer="21"/>
+<rectangle x1="-2.1717" y1="0.1143" x2="-2.0701" y2="0.1397" layer="21"/>
+<rectangle x1="-1.6637" y1="0.1143" x2="-1.5367" y2="0.1397" layer="21"/>
+<rectangle x1="-1.4605" y1="0.1143" x2="-1.3081" y2="0.1397" layer="21"/>
+<rectangle x1="-1.2319" y1="0.1143" x2="-1.1303" y2="0.1397" layer="21"/>
+<rectangle x1="-1.1049" y1="0.1143" x2="-1.0795" y2="0.1397" layer="21"/>
+<rectangle x1="-0.9779" y1="0.1143" x2="-0.8509" y2="0.1397" layer="21"/>
+<rectangle x1="-0.7493" y1="0.1143" x2="-0.6477" y2="0.1397" layer="21"/>
+<rectangle x1="-0.4699" y1="0.1143" x2="-0.3937" y2="0.1397" layer="21"/>
+<rectangle x1="-0.0127" y1="0.1143" x2="0.0889" y2="0.1397" layer="21"/>
+<rectangle x1="0.1651" y1="0.1143" x2="0.2667" y2="0.1397" layer="21"/>
+<rectangle x1="0.4191" y1="0.1143" x2="0.5207" y2="0.1397" layer="21"/>
+<rectangle x1="0.6223" y1="0.1143" x2="0.7239" y2="0.1397" layer="21"/>
+<rectangle x1="1.3335" y1="0.1143" x2="1.4351" y2="0.1397" layer="21"/>
+<rectangle x1="2.0447" y1="0.1143" x2="2.1463" y2="0.1397" layer="21"/>
+<rectangle x1="2.2225" y1="0.1143" x2="2.3241" y2="0.1397" layer="21"/>
+<rectangle x1="2.4765" y1="0.1143" x2="2.6035" y2="0.1397" layer="21"/>
+<rectangle x1="2.7813" y1="0.1143" x2="2.8829" y2="0.1397" layer="21"/>
+<rectangle x1="2.9591" y1="0.1143" x2="3.0607" y2="0.1397" layer="21"/>
+<rectangle x1="3.2385" y1="0.1143" x2="3.3401" y2="0.1397" layer="21"/>
+<rectangle x1="3.7973" y1="0.1143" x2="3.8989" y2="0.1397" layer="21"/>
+<rectangle x1="4.0767" y1="0.1143" x2="4.2037" y2="0.1397" layer="21"/>
+<rectangle x1="4.2545" y1="0.1143" x2="4.4069" y2="0.1397" layer="21"/>
+<rectangle x1="-4.4069" y1="0.1397" x2="-4.3053" y2="0.1651" layer="21"/>
+<rectangle x1="-3.7465" y1="0.1397" x2="-3.6449" y2="0.1651" layer="21"/>
+<rectangle x1="-3.5433" y1="0.1397" x2="-3.4417" y2="0.1651" layer="21"/>
+<rectangle x1="-3.2385" y1="0.1397" x2="-3.1369" y2="0.1651" layer="21"/>
+<rectangle x1="-3.0353" y1="0.1397" x2="-2.9337" y2="0.1651" layer="21"/>
+<rectangle x1="-2.7305" y1="0.1397" x2="-2.6289" y2="0.1651" layer="21"/>
+<rectangle x1="-2.4765" y1="0.1397" x2="-2.4003" y2="0.1651" layer="21"/>
+<rectangle x1="-2.1971" y1="0.1397" x2="-2.0447" y2="0.1651" layer="21"/>
+<rectangle x1="-1.6637" y1="0.1397" x2="-1.5621" y2="0.1651" layer="21"/>
+<rectangle x1="-1.4097" y1="0.1397" x2="-1.3081" y2="0.1651" layer="21"/>
+<rectangle x1="-1.2319" y1="0.1397" x2="-1.1303" y2="0.1651" layer="21"/>
+<rectangle x1="-0.9525" y1="0.1397" x2="-0.8255" y2="0.1651" layer="21"/>
+<rectangle x1="-0.7493" y1="0.1397" x2="-0.6477" y2="0.1651" layer="21"/>
+<rectangle x1="-0.4699" y1="0.1397" x2="-0.3683" y2="0.1651" layer="21"/>
+<rectangle x1="-0.0127" y1="0.1397" x2="0.0889" y2="0.1651" layer="21"/>
+<rectangle x1="0.1651" y1="0.1397" x2="0.2667" y2="0.1651" layer="21"/>
+<rectangle x1="0.4191" y1="0.1397" x2="0.5207" y2="0.1651" layer="21"/>
+<rectangle x1="0.6223" y1="0.1397" x2="0.7493" y2="0.1651" layer="21"/>
+<rectangle x1="1.3589" y1="0.1397" x2="1.4605" y2="0.1651" layer="21"/>
+<rectangle x1="2.0193" y1="0.1397" x2="2.1209" y2="0.1651" layer="21"/>
+<rectangle x1="2.2225" y1="0.1397" x2="2.3241" y2="0.1651" layer="21"/>
+<rectangle x1="2.5019" y1="0.1397" x2="2.6289" y2="0.1651" layer="21"/>
+<rectangle x1="2.7813" y1="0.1397" x2="2.8829" y2="0.1651" layer="21"/>
+<rectangle x1="2.9591" y1="0.1397" x2="3.0607" y2="0.1651" layer="21"/>
+<rectangle x1="3.2385" y1="0.1397" x2="3.3401" y2="0.1651" layer="21"/>
+<rectangle x1="3.7973" y1="0.1397" x2="3.8989" y2="0.1651" layer="21"/>
+<rectangle x1="4.0767" y1="0.1397" x2="4.1783" y2="0.1651" layer="21"/>
+<rectangle x1="4.3053" y1="0.1397" x2="4.4323" y2="0.1651" layer="21"/>
+<rectangle x1="-4.4069" y1="0.1651" x2="-4.3053" y2="0.1905" layer="21"/>
+<rectangle x1="-3.7465" y1="0.1651" x2="-3.6449" y2="0.1905" layer="21"/>
+<rectangle x1="-3.5433" y1="0.1651" x2="-3.4417" y2="0.1905" layer="21"/>
+<rectangle x1="-3.2639" y1="0.1651" x2="-3.1369" y2="0.1905" layer="21"/>
+<rectangle x1="-3.0353" y1="0.1651" x2="-2.9337" y2="0.1905" layer="21"/>
+<rectangle x1="-2.7559" y1="0.1651" x2="-2.6289" y2="0.1905" layer="21"/>
+<rectangle x1="-2.5019" y1="0.1651" x2="-2.4003" y2="0.1905" layer="21"/>
+<rectangle x1="-2.1971" y1="0.1651" x2="-2.0447" y2="0.1905" layer="21"/>
+<rectangle x1="-1.6637" y1="0.1651" x2="-1.5621" y2="0.1905" layer="21"/>
+<rectangle x1="-1.4097" y1="0.1651" x2="-1.3081" y2="0.1905" layer="21"/>
+<rectangle x1="-1.2319" y1="0.1651" x2="-1.1303" y2="0.1905" layer="21"/>
+<rectangle x1="-0.9271" y1="0.1651" x2="-0.8255" y2="0.1905" layer="21"/>
+<rectangle x1="-0.7493" y1="0.1651" x2="-0.6477" y2="0.1905" layer="21"/>
+<rectangle x1="-0.4445" y1="0.1651" x2="-0.3683" y2="0.1905" layer="21"/>
+<rectangle x1="-0.0127" y1="0.1651" x2="0.0889" y2="0.1905" layer="21"/>
+<rectangle x1="0.1905" y1="0.1651" x2="0.2921" y2="0.1905" layer="21"/>
+<rectangle x1="0.4191" y1="0.1651" x2="0.5207" y2="0.1905" layer="21"/>
+<rectangle x1="0.6477" y1="0.1651" x2="0.7493" y2="0.1905" layer="21"/>
+<rectangle x1="1.3589" y1="0.1651" x2="1.4605" y2="0.1905" layer="21"/>
+<rectangle x1="2.0193" y1="0.1651" x2="2.1209" y2="0.1905" layer="21"/>
+<rectangle x1="2.2225" y1="0.1651" x2="2.3241" y2="0.1905" layer="21"/>
+<rectangle x1="2.5273" y1="0.1651" x2="2.6289" y2="0.1905" layer="21"/>
+<rectangle x1="2.7813" y1="0.1651" x2="2.8829" y2="0.1905" layer="21"/>
+<rectangle x1="2.9591" y1="0.1651" x2="3.0607" y2="0.1905" layer="21"/>
+<rectangle x1="3.2639" y1="0.1651" x2="3.3655" y2="0.1905" layer="21"/>
+<rectangle x1="3.7973" y1="0.1651" x2="3.8989" y2="0.1905" layer="21"/>
+<rectangle x1="4.0513" y1="0.1651" x2="4.1529" y2="0.1905" layer="21"/>
+<rectangle x1="4.3307" y1="0.1651" x2="4.4323" y2="0.1905" layer="21"/>
+<rectangle x1="-4.3815" y1="0.1905" x2="-4.2799" y2="0.2159" layer="21"/>
+<rectangle x1="-3.7719" y1="0.1905" x2="-3.6449" y2="0.2159" layer="21"/>
+<rectangle x1="-3.5433" y1="0.1905" x2="-3.4417" y2="0.2159" layer="21"/>
+<rectangle x1="-3.2893" y1="0.1905" x2="-3.1623" y2="0.2159" layer="21"/>
+<rectangle x1="-3.0353" y1="0.1905" x2="-2.9337" y2="0.2159" layer="21"/>
+<rectangle x1="-2.7813" y1="0.1905" x2="-2.6543" y2="0.2159" layer="21"/>
+<rectangle x1="-2.5019" y1="0.1905" x2="-2.4003" y2="0.2159" layer="21"/>
+<rectangle x1="-2.1971" y1="0.1905" x2="-2.0447" y2="0.2159" layer="21"/>
+<rectangle x1="-1.6637" y1="0.1905" x2="-1.5875" y2="0.2159" layer="21"/>
+<rectangle x1="-1.3843" y1="0.1905" x2="-1.2827" y2="0.2159" layer="21"/>
+<rectangle x1="-1.2319" y1="0.1905" x2="-1.1303" y2="0.2159" layer="21"/>
+<rectangle x1="-0.9271" y1="0.1905" x2="-0.8255" y2="0.2159" layer="21"/>
+<rectangle x1="-0.7239" y1="0.1905" x2="-0.6223" y2="0.2159" layer="21"/>
+<rectangle x1="-0.4445" y1="0.1905" x2="-0.3429" y2="0.2159" layer="21"/>
+<rectangle x1="-0.0127" y1="0.1905" x2="0.0889" y2="0.2159" layer="21"/>
+<rectangle x1="0.1905" y1="0.1905" x2="0.2921" y2="0.2159" layer="21"/>
+<rectangle x1="0.4191" y1="0.1905" x2="0.5207" y2="0.2159" layer="21"/>
+<rectangle x1="0.6477" y1="0.1905" x2="0.7747" y2="0.2159" layer="21"/>
+<rectangle x1="1.3843" y1="0.1905" x2="1.4859" y2="0.2159" layer="21"/>
+<rectangle x1="1.9939" y1="0.1905" x2="2.1209" y2="0.2159" layer="21"/>
+<rectangle x1="2.2225" y1="0.1905" x2="2.3241" y2="0.2159" layer="21"/>
+<rectangle x1="2.5273" y1="0.1905" x2="2.6289" y2="0.2159" layer="21"/>
+<rectangle x1="2.7813" y1="0.1905" x2="2.8829" y2="0.2159" layer="21"/>
+<rectangle x1="2.9591" y1="0.1905" x2="3.0861" y2="0.2159" layer="21"/>
+<rectangle x1="3.2639" y1="0.1905" x2="3.3909" y2="0.2159" layer="21"/>
+<rectangle x1="3.7973" y1="0.1905" x2="3.8989" y2="0.2159" layer="21"/>
+<rectangle x1="4.0513" y1="0.1905" x2="4.1529" y2="0.2159" layer="21"/>
+<rectangle x1="4.3307" y1="0.1905" x2="4.4323" y2="0.2159" layer="21"/>
+<rectangle x1="-4.3815" y1="0.2159" x2="-4.2545" y2="0.2413" layer="21"/>
+<rectangle x1="-3.7973" y1="0.2159" x2="-3.6703" y2="0.2413" layer="21"/>
+<rectangle x1="-3.5433" y1="0.2159" x2="-3.4417" y2="0.2413" layer="21"/>
+<rectangle x1="-3.3147" y1="0.2159" x2="-3.1623" y2="0.2413" layer="21"/>
+<rectangle x1="-3.0353" y1="0.2159" x2="-2.9337" y2="0.2413" layer="21"/>
+<rectangle x1="-2.8067" y1="0.2159" x2="-2.6543" y2="0.2413" layer="21"/>
+<rectangle x1="-2.5019" y1="0.2159" x2="-2.4003" y2="0.2413" layer="21"/>
+<rectangle x1="-2.2225" y1="0.2159" x2="-2.0193" y2="0.2413" layer="21"/>
+<rectangle x1="-1.6637" y1="0.2159" x2="-1.5875" y2="0.2413" layer="21"/>
+<rectangle x1="-1.3843" y1="0.2159" x2="-1.2827" y2="0.2413" layer="21"/>
+<rectangle x1="-1.2319" y1="0.2159" x2="-1.1303" y2="0.2413" layer="21"/>
+<rectangle x1="-0.9271" y1="0.2159" x2="-0.8255" y2="0.2413" layer="21"/>
+<rectangle x1="-0.7239" y1="0.2159" x2="-0.6223" y2="0.2413" layer="21"/>
+<rectangle x1="-0.4191" y1="0.2159" x2="-0.3175" y2="0.2413" layer="21"/>
+<rectangle x1="-0.0127" y1="0.2159" x2="0.0889" y2="0.2413" layer="21"/>
+<rectangle x1="0.1905" y1="0.2159" x2="0.3175" y2="0.2413" layer="21"/>
+<rectangle x1="0.4191" y1="0.2159" x2="0.5207" y2="0.2413" layer="21"/>
+<rectangle x1="0.6731" y1="0.2159" x2="0.8001" y2="0.2413" layer="21"/>
+<rectangle x1="1.3843" y1="0.2159" x2="1.5113" y2="0.2413" layer="21"/>
+<rectangle x1="1.9685" y1="0.2159" x2="2.0955" y2="0.2413" layer="21"/>
+<rectangle x1="2.2225" y1="0.2159" x2="2.3241" y2="0.2413" layer="21"/>
+<rectangle x1="2.5273" y1="0.2159" x2="2.6289" y2="0.2413" layer="21"/>
+<rectangle x1="2.7813" y1="0.2159" x2="2.8829" y2="0.2413" layer="21"/>
+<rectangle x1="2.9845" y1="0.2159" x2="3.0861" y2="0.2413" layer="21"/>
+<rectangle x1="3.2893" y1="0.2159" x2="3.3909" y2="0.2413" layer="21"/>
+<rectangle x1="3.7973" y1="0.2159" x2="3.8989" y2="0.2413" layer="21"/>
+<rectangle x1="4.0513" y1="0.2159" x2="4.1529" y2="0.2413" layer="21"/>
+<rectangle x1="4.3561" y1="0.2159" x2="4.4323" y2="0.2413" layer="21"/>
+<rectangle x1="-4.3561" y1="0.2413" x2="-4.2291" y2="0.2667" layer="21"/>
+<rectangle x1="-3.8227" y1="0.2413" x2="-3.6957" y2="0.2667" layer="21"/>
+<rectangle x1="-3.5433" y1="0.2413" x2="-3.4417" y2="0.2667" layer="21"/>
+<rectangle x1="-3.3401" y1="0.2413" x2="-3.1877" y2="0.2667" layer="21"/>
+<rectangle x1="-3.0353" y1="0.2413" x2="-2.9337" y2="0.2667" layer="21"/>
+<rectangle x1="-2.8321" y1="0.2413" x2="-2.6797" y2="0.2667" layer="21"/>
+<rectangle x1="-2.5019" y1="0.2413" x2="-2.4003" y2="0.2667" layer="21"/>
+<rectangle x1="-2.2225" y1="0.2413" x2="-2.0193" y2="0.2667" layer="21"/>
+<rectangle x1="-1.6637" y1="0.2413" x2="-1.5875" y2="0.2667" layer="21"/>
+<rectangle x1="-1.3843" y1="0.2413" x2="-1.2827" y2="0.2667" layer="21"/>
+<rectangle x1="-1.2319" y1="0.2413" x2="-1.1303" y2="0.2667" layer="21"/>
+<rectangle x1="-0.9271" y1="0.2413" x2="-0.8255" y2="0.2667" layer="21"/>
+<rectangle x1="-0.7239" y1="0.2413" x2="-0.5969" y2="0.2667" layer="21"/>
+<rectangle x1="-0.4191" y1="0.2413" x2="-0.2921" y2="0.2667" layer="21"/>
+<rectangle x1="-0.0127" y1="0.2413" x2="0.0889" y2="0.2667" layer="21"/>
+<rectangle x1="0.2159" y1="0.2413" x2="0.3175" y2="0.2667" layer="21"/>
+<rectangle x1="0.4191" y1="0.2413" x2="0.5207" y2="0.2667" layer="21"/>
+<rectangle x1="0.6985" y1="0.2413" x2="0.8255" y2="0.2667" layer="21"/>
+<rectangle x1="1.4097" y1="0.2413" x2="1.5367" y2="0.2667" layer="21"/>
+<rectangle x1="1.9431" y1="0.2413" x2="2.0701" y2="0.2667" layer="21"/>
+<rectangle x1="2.2225" y1="0.2413" x2="2.3241" y2="0.2667" layer="21"/>
+<rectangle x1="2.5273" y1="0.2413" x2="2.6289" y2="0.2667" layer="21"/>
+<rectangle x1="2.7813" y1="0.2413" x2="2.8829" y2="0.2667" layer="21"/>
+<rectangle x1="2.9845" y1="0.2413" x2="3.1115" y2="0.2667" layer="21"/>
+<rectangle x1="3.3147" y1="0.2413" x2="3.4417" y2="0.2667" layer="21"/>
+<rectangle x1="3.7973" y1="0.2413" x2="3.8989" y2="0.2667" layer="21"/>
+<rectangle x1="4.0513" y1="0.2413" x2="4.1529" y2="0.2667" layer="21"/>
+<rectangle x1="4.3307" y1="0.2413" x2="4.4323" y2="0.2667" layer="21"/>
+<rectangle x1="-4.3307" y1="0.2667" x2="-4.2037" y2="0.2921" layer="21"/>
+<rectangle x1="-3.8481" y1="0.2667" x2="-3.7211" y2="0.2921" layer="21"/>
+<rectangle x1="-3.5433" y1="0.2667" x2="-3.4417" y2="0.2921" layer="21"/>
+<rectangle x1="-3.3909" y1="0.2667" x2="-3.2131" y2="0.2921" layer="21"/>
+<rectangle x1="-3.0353" y1="0.2667" x2="-2.9337" y2="0.2921" layer="21"/>
+<rectangle x1="-2.8829" y1="0.2667" x2="-2.7051" y2="0.2921" layer="21"/>
+<rectangle x1="-2.5019" y1="0.2667" x2="-2.4003" y2="0.2921" layer="21"/>
+<rectangle x1="-2.2479" y1="0.2667" x2="-2.1209" y2="0.2921" layer="21"/>
+<rectangle x1="-2.0955" y1="0.2667" x2="-1.9939" y2="0.2921" layer="21"/>
+<rectangle x1="-1.6637" y1="0.2667" x2="-1.5621" y2="0.2921" layer="21"/>
+<rectangle x1="-1.4097" y1="0.2667" x2="-1.3081" y2="0.2921" layer="21"/>
+<rectangle x1="-1.2319" y1="0.2667" x2="-1.1049" y2="0.2921" layer="21"/>
+<rectangle x1="-0.9525" y1="0.2667" x2="-0.8255" y2="0.2921" layer="21"/>
+<rectangle x1="-0.6985" y1="0.2667" x2="-0.5715" y2="0.2921" layer="21"/>
+<rectangle x1="-0.3937" y1="0.2667" x2="-0.2413" y2="0.2921" layer="21"/>
+<rectangle x1="-0.0127" y1="0.2667" x2="0.0889" y2="0.2921" layer="21"/>
+<rectangle x1="0.2159" y1="0.2667" x2="0.3429" y2="0.2921" layer="21"/>
+<rectangle x1="0.4191" y1="0.2667" x2="0.5207" y2="0.2921" layer="21"/>
+<rectangle x1="0.7239" y1="0.2667" x2="0.9017" y2="0.2921" layer="21"/>
+<rectangle x1="1.4351" y1="0.2667" x2="1.5621" y2="0.2921" layer="21"/>
+<rectangle x1="1.9177" y1="0.2667" x2="2.0447" y2="0.2921" layer="21"/>
+<rectangle x1="2.2479" y1="0.2667" x2="2.3495" y2="0.2921" layer="21"/>
+<rectangle x1="2.5019" y1="0.2667" x2="2.6289" y2="0.2921" layer="21"/>
+<rectangle x1="2.7813" y1="0.2667" x2="2.8829" y2="0.2921" layer="21"/>
+<rectangle x1="3.0099" y1="0.2667" x2="3.1115" y2="0.2921" layer="21"/>
+<rectangle x1="3.3147" y1="0.2667" x2="3.4925" y2="0.2921" layer="21"/>
+<rectangle x1="3.7973" y1="0.2667" x2="3.8989" y2="0.2921" layer="21"/>
+<rectangle x1="4.0513" y1="0.2667" x2="4.1783" y2="0.2921" layer="21"/>
+<rectangle x1="4.3307" y1="0.2667" x2="4.4323" y2="0.2921" layer="21"/>
+<rectangle x1="-4.3053" y1="0.2921" x2="-4.1529" y2="0.3175" layer="21"/>
+<rectangle x1="-3.9243" y1="0.2921" x2="-3.7465" y2="0.3175" layer="21"/>
+<rectangle x1="-3.5433" y1="0.2921" x2="-3.2385" y2="0.3175" layer="21"/>
+<rectangle x1="-3.0353" y1="0.2921" x2="-2.7305" y2="0.3175" layer="21"/>
+<rectangle x1="-2.5019" y1="0.2921" x2="-2.4003" y2="0.3175" layer="21"/>
+<rectangle x1="-2.2733" y1="0.2921" x2="-2.1463" y2="0.3175" layer="21"/>
+<rectangle x1="-2.0955" y1="0.2921" x2="-1.9685" y2="0.3175" layer="21"/>
+<rectangle x1="-1.6637" y1="0.2921" x2="-1.5367" y2="0.3175" layer="21"/>
+<rectangle x1="-1.4351" y1="0.2921" x2="-1.3081" y2="0.3175" layer="21"/>
+<rectangle x1="-1.2065" y1="0.2921" x2="-1.0795" y2="0.3175" layer="21"/>
+<rectangle x1="-0.9779" y1="0.2921" x2="-0.8509" y2="0.3175" layer="21"/>
+<rectangle x1="-0.6731" y1="0.2921" x2="-0.5715" y2="0.3175" layer="21"/>
+<rectangle x1="-0.3683" y1="0.2921" x2="-0.1651" y2="0.3175" layer="21"/>
+<rectangle x1="-0.0127" y1="0.2921" x2="0.0889" y2="0.3175" layer="21"/>
+<rectangle x1="0.2413" y1="0.2921" x2="0.3683" y2="0.3175" layer="21"/>
+<rectangle x1="0.4191" y1="0.2921" x2="0.5207" y2="0.3175" layer="21"/>
+<rectangle x1="0.7493" y1="0.2921" x2="1.0033" y2="0.3175" layer="21"/>
+<rectangle x1="1.4605" y1="0.2921" x2="1.6129" y2="0.3175" layer="21"/>
+<rectangle x1="1.8415" y1="0.2921" x2="2.0193" y2="0.3175" layer="21"/>
+<rectangle x1="2.2479" y1="0.2921" x2="2.4003" y2="0.3175" layer="21"/>
+<rectangle x1="2.4765" y1="0.2921" x2="2.6035" y2="0.3175" layer="21"/>
+<rectangle x1="2.8067" y1="0.2921" x2="2.8829" y2="0.3175" layer="21"/>
+<rectangle x1="3.0099" y1="0.2921" x2="3.1369" y2="0.3175" layer="21"/>
+<rectangle x1="3.3401" y1="0.2921" x2="3.5687" y2="0.3175" layer="21"/>
+<rectangle x1="3.7973" y1="0.2921" x2="3.8989" y2="0.3175" layer="21"/>
+<rectangle x1="4.0767" y1="0.2921" x2="4.2037" y2="0.3175" layer="21"/>
+<rectangle x1="4.3053" y1="0.2921" x2="4.4323" y2="0.3175" layer="21"/>
+<rectangle x1="-4.2799" y1="0.3175" x2="-3.7719" y2="0.3429" layer="21"/>
+<rectangle x1="-3.5433" y1="0.3175" x2="-3.2639" y2="0.3429" layer="21"/>
+<rectangle x1="-3.0353" y1="0.3175" x2="-2.7559" y2="0.3429" layer="21"/>
+<rectangle x1="-2.5019" y1="0.3175" x2="-2.4003" y2="0.3429" layer="21"/>
+<rectangle x1="-2.2733" y1="0.3175" x2="-2.1717" y2="0.3429" layer="21"/>
+<rectangle x1="-2.0701" y1="0.3175" x2="-1.9685" y2="0.3429" layer="21"/>
+<rectangle x1="-1.6383" y1="0.3175" x2="-1.3335" y2="0.3429" layer="21"/>
+<rectangle x1="-1.1811" y1="0.3175" x2="-0.8509" y2="0.3429" layer="21"/>
+<rectangle x1="-0.6731" y1="0.3175" x2="-0.5715" y2="0.3429" layer="21"/>
+<rectangle x1="-0.3175" y1="0.3175" x2="-0.0635" y2="0.3429" layer="21"/>
+<rectangle x1="-0.0127" y1="0.3175" x2="0.0889" y2="0.3429" layer="21"/>
+<rectangle x1="0.2667" y1="0.3175" x2="0.3683" y2="0.3429" layer="21"/>
+<rectangle x1="0.4191" y1="0.3175" x2="0.5207" y2="0.3429" layer="21"/>
+<rectangle x1="0.7747" y1="0.3175" x2="1.0287" y2="0.3429" layer="21"/>
+<rectangle x1="1.4859" y1="0.3175" x2="1.9939" y2="0.3429" layer="21"/>
+<rectangle x1="2.2733" y1="0.3175" x2="2.5781" y2="0.3429" layer="21"/>
+<rectangle x1="2.8067" y1="0.3175" x2="2.8829" y2="0.3429" layer="21"/>
+<rectangle x1="3.0353" y1="0.3175" x2="3.1369" y2="0.3429" layer="21"/>
+<rectangle x1="3.3909" y1="0.3175" x2="3.6449" y2="0.3429" layer="21"/>
+<rectangle x1="3.7211" y1="0.3175" x2="4.0005" y2="0.3429" layer="21"/>
+<rectangle x1="4.0767" y1="0.3175" x2="4.4069" y2="0.3429" layer="21"/>
+<rectangle x1="-4.2291" y1="0.3429" x2="-3.7973" y2="0.3683" layer="21"/>
+<rectangle x1="-3.5433" y1="0.3429" x2="-3.2893" y2="0.3683" layer="21"/>
+<rectangle x1="-3.0353" y1="0.3429" x2="-2.7813" y2="0.3683" layer="21"/>
+<rectangle x1="-2.5019" y1="0.3429" x2="-2.4003" y2="0.3683" layer="21"/>
+<rectangle x1="-2.2733" y1="0.3429" x2="-2.1971" y2="0.3683" layer="21"/>
+<rectangle x1="-2.0447" y1="0.3429" x2="-1.9685" y2="0.3683" layer="21"/>
+<rectangle x1="-1.6129" y1="0.3429" x2="-1.3589" y2="0.3683" layer="21"/>
+<rectangle x1="-1.1811" y1="0.3429" x2="-0.8763" y2="0.3683" layer="21"/>
+<rectangle x1="-0.6477" y1="0.3429" x2="-0.5715" y2="0.3683" layer="21"/>
+<rectangle x1="-0.2921" y1="0.3429" x2="-0.0635" y2="0.3683" layer="21"/>
+<rectangle x1="-0.0127" y1="0.3429" x2="0.0889" y2="0.3683" layer="21"/>
+<rectangle x1="0.2667" y1="0.3429" x2="0.3683" y2="0.3683" layer="21"/>
+<rectangle x1="0.4191" y1="0.3429" x2="0.5207" y2="0.3683" layer="21"/>
+<rectangle x1="0.8255" y1="0.3429" x2="1.0287" y2="0.3683" layer="21"/>
+<rectangle x1="1.5367" y1="0.3429" x2="1.9685" y2="0.3683" layer="21"/>
+<rectangle x1="2.2987" y1="0.3429" x2="2.5781" y2="0.3683" layer="21"/>
+<rectangle x1="2.8067" y1="0.3429" x2="2.8829" y2="0.3683" layer="21"/>
+<rectangle x1="3.0607" y1="0.3429" x2="3.1369" y2="0.3683" layer="21"/>
+<rectangle x1="3.4163" y1="0.3429" x2="3.6449" y2="0.3683" layer="21"/>
+<rectangle x1="3.7211" y1="0.3429" x2="4.0005" y2="0.3683" layer="21"/>
+<rectangle x1="4.1021" y1="0.3429" x2="4.3815" y2="0.3683" layer="21"/>
+<rectangle x1="-4.1783" y1="0.3683" x2="-3.8481" y2="0.3937" layer="21"/>
+<rectangle x1="-3.5433" y1="0.3683" x2="-3.3401" y2="0.3937" layer="21"/>
+<rectangle x1="-3.0353" y1="0.3683" x2="-2.8321" y2="0.3937" layer="21"/>
+<rectangle x1="-2.5019" y1="0.3683" x2="-2.4003" y2="0.3937" layer="21"/>
+<rectangle x1="-2.2733" y1="0.3683" x2="-2.2225" y2="0.3937" layer="21"/>
+<rectangle x1="-2.0193" y1="0.3683" x2="-1.9685" y2="0.3937" layer="21"/>
+<rectangle x1="-1.5875" y1="0.3683" x2="-1.3843" y2="0.3937" layer="21"/>
+<rectangle x1="-1.1303" y1="0.3683" x2="-0.9271" y2="0.3937" layer="21"/>
+<rectangle x1="-0.6223" y1="0.3683" x2="-0.5715" y2="0.3937" layer="21"/>
+<rectangle x1="-0.2413" y1="0.3683" x2="-0.0635" y2="0.3937" layer="21"/>
+<rectangle x1="-0.0127" y1="0.3683" x2="0.0889" y2="0.3937" layer="21"/>
+<rectangle x1="0.3175" y1="0.3683" x2="0.3683" y2="0.3937" layer="21"/>
+<rectangle x1="0.4191" y1="0.3683" x2="0.5207" y2="0.3937" layer="21"/>
+<rectangle x1="0.8763" y1="0.3683" x2="1.0287" y2="0.3937" layer="21"/>
+<rectangle x1="1.5875" y1="0.3683" x2="1.9177" y2="0.3937" layer="21"/>
+<rectangle x1="2.3241" y1="0.3683" x2="2.5273" y2="0.3937" layer="21"/>
+<rectangle x1="2.8067" y1="0.3683" x2="2.8829" y2="0.3937" layer="21"/>
+<rectangle x1="3.0861" y1="0.3683" x2="3.1369" y2="0.3937" layer="21"/>
+<rectangle x1="3.4671" y1="0.3683" x2="3.6449" y2="0.3937" layer="21"/>
+<rectangle x1="3.7211" y1="0.3683" x2="4.0005" y2="0.3937" layer="21"/>
+<rectangle x1="4.1275" y1="0.3683" x2="4.3561" y2="0.3937" layer="21"/>
+<rectangle x1="-4.1275" y1="0.3937" x2="-3.9243" y2="0.4191" layer="21"/>
+<rectangle x1="-3.5433" y1="0.3937" x2="-3.4163" y2="0.4191" layer="21"/>
+<rectangle x1="-3.0353" y1="0.3937" x2="-2.9083" y2="0.4191" layer="21"/>
+<rectangle x1="-2.5019" y1="0.3937" x2="-2.4003" y2="0.4191" layer="21"/>
+<rectangle x1="-2.2733" y1="0.3937" x2="-2.2479" y2="0.4191" layer="21"/>
+<rectangle x1="-1.9939" y1="0.3937" x2="-1.9685" y2="0.4191" layer="21"/>
+<rectangle x1="-1.5367" y1="0.3937" x2="-1.4351" y2="0.4191" layer="21"/>
+<rectangle x1="-1.1049" y1="0.3937" x2="-0.9525" y2="0.4191" layer="21"/>
+<rectangle x1="-0.1651" y1="0.3937" x2="-0.0635" y2="0.4191" layer="21"/>
+<rectangle x1="0.0127" y1="0.3937" x2="0.0889" y2="0.4191" layer="21"/>
+<rectangle x1="0.4445" y1="0.3937" x2="0.5207" y2="0.4191" layer="21"/>
+<rectangle x1="1.6383" y1="0.3937" x2="1.8415" y2="0.4191" layer="21"/>
+<rectangle x1="2.3749" y1="0.3937" x2="2.4765" y2="0.4191" layer="21"/>
+<rectangle x1="2.8067" y1="0.3937" x2="2.8829" y2="0.4191" layer="21"/>
+<rectangle x1="3.1115" y1="0.3937" x2="3.1369" y2="0.4191" layer="21"/>
+<rectangle x1="3.5433" y1="0.3937" x2="3.6449" y2="0.4191" layer="21"/>
+<rectangle x1="3.7211" y1="0.3937" x2="3.9751" y2="0.4191" layer="21"/>
+<rectangle x1="4.2037" y1="0.3937" x2="4.3053" y2="0.4191" layer="21"/>
+</package>
+<package name="LCD_FEATHER_DISPLAY">
+<wire x1="-13.5" y1="9" x2="13.5" y2="9" width="0.127" layer="51"/>
+<wire x1="13.5" y1="9" x2="13.5" y2="-9" width="0.127" layer="51"/>
+<wire x1="13.5" y1="-9" x2="-13.5" y2="-9" width="0.127" layer="51"/>
+<wire x1="-13.5" y1="-9" x2="-13.5" y2="9" width="0.127" layer="51"/>
+<smd name="P$1" x="-11.7" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$2" x="-10.8" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$3" x="-9.9" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$4" x="-9" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$5" x="-8.1" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$6" x="-7.2" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$7" x="-6.3" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$8" x="-5.4" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$9" x="-4.5" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$10" x="-3.6" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$11" x="-2.7" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$12" x="-1.8" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$13" x="-0.9" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$14" x="0" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$15" x="0.9" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$16" x="1.8" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$17" x="2.7" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$18" x="3.6" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$19" x="4.5" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$20" x="5.4" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$21" x="6.3" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$22" x="7.2" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$23" x="8.1" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$24" x="9" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$25" x="9.9" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$26" x="10.8" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$27" x="11.7" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+</package>
+<package name="OSO_WORDMARK_THREELINE_450MIL_1000DPI">
+<rectangle x1="-1.7399" y1="-5.5499" x2="-1.5113" y2="-5.5245" layer="21"/>
+<rectangle x1="-0.6731" y1="-5.5499" x2="-0.6223" y2="-5.5245" layer="21"/>
+<rectangle x1="0.8509" y1="-5.5499" x2="0.9017" y2="-5.5245" layer="21"/>
+<rectangle x1="4.7117" y1="-5.5499" x2="5.1181" y2="-5.5245" layer="21"/>
+<rectangle x1="-4.3307" y1="-5.5245" x2="-3.9497" y2="-5.4991" layer="21"/>
+<rectangle x1="-1.8669" y1="-5.5245" x2="-1.4351" y2="-5.4991" layer="21"/>
+<rectangle x1="-0.6731" y1="-5.5245" x2="-0.5969" y2="-5.4991" layer="21"/>
+<rectangle x1="0.8255" y1="-5.5245" x2="0.9017" y2="-5.4991" layer="21"/>
+<rectangle x1="2.5019" y1="-5.5245" x2="2.7051" y2="-5.4991" layer="21"/>
+<rectangle x1="3.3401" y1="-5.5245" x2="3.6195" y2="-5.4991" layer="21"/>
+<rectangle x1="4.6355" y1="-5.5245" x2="5.1689" y2="-5.4991" layer="21"/>
+<rectangle x1="-4.4577" y1="-5.4991" x2="-3.7973" y2="-5.4737" layer="21"/>
+<rectangle x1="-1.9431" y1="-5.4991" x2="-1.3589" y2="-5.4737" layer="21"/>
+<rectangle x1="-0.6731" y1="-5.4991" x2="-0.5715" y2="-5.4737" layer="21"/>
+<rectangle x1="0.8001" y1="-5.4991" x2="0.9017" y2="-5.4737" layer="21"/>
+<rectangle x1="2.3749" y1="-5.4991" x2="2.7051" y2="-5.4737" layer="21"/>
+<rectangle x1="3.3401" y1="-5.4991" x2="3.6449" y2="-5.4737" layer="21"/>
+<rectangle x1="4.5847" y1="-5.4991" x2="5.2451" y2="-5.4737" layer="21"/>
+<rectangle x1="-4.5593" y1="-5.4737" x2="-3.6957" y2="-5.4483" layer="21"/>
+<rectangle x1="-1.9939" y1="-5.4737" x2="-1.3081" y2="-5.4483" layer="21"/>
+<rectangle x1="-0.6731" y1="-5.4737" x2="-0.5461" y2="-5.4483" layer="21"/>
+<rectangle x1="0.7747" y1="-5.4737" x2="0.9017" y2="-5.4483" layer="21"/>
+<rectangle x1="2.2733" y1="-5.4737" x2="2.7051" y2="-5.4483" layer="21"/>
+<rectangle x1="3.3401" y1="-5.4737" x2="3.6449" y2="-5.4483" layer="21"/>
+<rectangle x1="4.5339" y1="-5.4737" x2="5.2705" y2="-5.4483" layer="21"/>
+<rectangle x1="-4.6355" y1="-5.4483" x2="-3.6195" y2="-5.4229" layer="21"/>
+<rectangle x1="-2.0193" y1="-5.4483" x2="-1.2827" y2="-5.4229" layer="21"/>
+<rectangle x1="-0.6731" y1="-5.4483" x2="-0.4953" y2="-5.4229" layer="21"/>
+<rectangle x1="0.7493" y1="-5.4483" x2="0.9017" y2="-5.4229" layer="21"/>
+<rectangle x1="2.1971" y1="-5.4483" x2="2.7051" y2="-5.4229" layer="21"/>
+<rectangle x1="3.3401" y1="-5.4483" x2="3.6449" y2="-5.4229" layer="21"/>
+<rectangle x1="4.5085" y1="-5.4483" x2="5.2959" y2="-5.4229" layer="21"/>
+<rectangle x1="-4.7117" y1="-5.4229" x2="-3.5687" y2="-5.3975" layer="21"/>
+<rectangle x1="-2.0701" y1="-5.4229" x2="-1.2319" y2="-5.3975" layer="21"/>
+<rectangle x1="-0.6731" y1="-5.4229" x2="-0.4699" y2="-5.3975" layer="21"/>
+<rectangle x1="0.6985" y1="-5.4229" x2="0.9017" y2="-5.3975" layer="21"/>
+<rectangle x1="2.1209" y1="-5.4229" x2="2.7051" y2="-5.3975" layer="21"/>
+<rectangle x1="3.3401" y1="-5.4229" x2="3.6449" y2="-5.3975" layer="21"/>
+<rectangle x1="4.4831" y1="-5.4229" x2="5.3467" y2="-5.3975" layer="21"/>
+<rectangle x1="-4.7625" y1="-5.3975" x2="-3.4925" y2="-5.3721" layer="21"/>
+<rectangle x1="-2.0955" y1="-5.3975" x2="-1.2065" y2="-5.3721" layer="21"/>
+<rectangle x1="-0.6731" y1="-5.3975" x2="-0.4445" y2="-5.3721" layer="21"/>
+<rectangle x1="0.6731" y1="-5.3975" x2="0.9017" y2="-5.3721" layer="21"/>
+<rectangle x1="2.0701" y1="-5.3975" x2="2.7051" y2="-5.3721" layer="21"/>
+<rectangle x1="3.3401" y1="-5.3975" x2="3.6449" y2="-5.3721" layer="21"/>
+<rectangle x1="4.4577" y1="-5.3975" x2="5.3721" y2="-5.3721" layer="21"/>
+<rectangle x1="-4.8133" y1="-5.3721" x2="-3.4417" y2="-5.3467" layer="21"/>
+<rectangle x1="-2.1209" y1="-5.3721" x2="-1.1811" y2="-5.3467" layer="21"/>
+<rectangle x1="-0.6731" y1="-5.3721" x2="-0.4191" y2="-5.3467" layer="21"/>
+<rectangle x1="0.6477" y1="-5.3721" x2="0.9017" y2="-5.3467" layer="21"/>
+<rectangle x1="2.0193" y1="-5.3721" x2="2.7051" y2="-5.3467" layer="21"/>
+<rectangle x1="3.3401" y1="-5.3721" x2="3.6449" y2="-5.3467" layer="21"/>
+<rectangle x1="4.4323" y1="-5.3721" x2="5.3975" y2="-5.3467" layer="21"/>
+<rectangle x1="-4.8641" y1="-5.3467" x2="-3.3909" y2="-5.3213" layer="21"/>
+<rectangle x1="-2.1463" y1="-5.3467" x2="-1.1557" y2="-5.3213" layer="21"/>
+<rectangle x1="-0.6731" y1="-5.3467" x2="-0.3937" y2="-5.3213" layer="21"/>
+<rectangle x1="0.6477" y1="-5.3467" x2="0.9017" y2="-5.3213" layer="21"/>
+<rectangle x1="1.9685" y1="-5.3467" x2="2.7051" y2="-5.3213" layer="21"/>
+<rectangle x1="3.3401" y1="-5.3467" x2="3.6449" y2="-5.3213" layer="21"/>
+<rectangle x1="4.4069" y1="-5.3467" x2="5.4229" y2="-5.3213" layer="21"/>
+<rectangle x1="-4.9149" y1="-5.3213" x2="-3.3655" y2="-5.2959" layer="21"/>
+<rectangle x1="-2.1717" y1="-5.3213" x2="-1.1303" y2="-5.2959" layer="21"/>
+<rectangle x1="-0.6731" y1="-5.3213" x2="-0.3683" y2="-5.2959" layer="21"/>
+<rectangle x1="0.6223" y1="-5.3213" x2="0.9017" y2="-5.2959" layer="21"/>
+<rectangle x1="1.9177" y1="-5.3213" x2="2.7051" y2="-5.2959" layer="21"/>
+<rectangle x1="3.3401" y1="-5.3213" x2="3.6449" y2="-5.2959" layer="21"/>
+<rectangle x1="4.3815" y1="-5.3213" x2="5.4483" y2="-5.2959" layer="21"/>
+<rectangle x1="-4.9403" y1="-5.2959" x2="-3.3147" y2="-5.2705" layer="21"/>
+<rectangle x1="-2.1971" y1="-5.2959" x2="-1.1049" y2="-5.2705" layer="21"/>
+<rectangle x1="-0.6731" y1="-5.2959" x2="-0.3683" y2="-5.2705" layer="21"/>
+<rectangle x1="0.5969" y1="-5.2959" x2="0.9017" y2="-5.2705" layer="21"/>
+<rectangle x1="1.8923" y1="-5.2959" x2="2.7051" y2="-5.2705" layer="21"/>
+<rectangle x1="3.3401" y1="-5.2959" x2="3.6449" y2="-5.2705" layer="21"/>
+<rectangle x1="4.3561" y1="-5.2959" x2="5.4483" y2="-5.2705" layer="21"/>
+<rectangle x1="-4.9911" y1="-5.2705" x2="-3.2893" y2="-5.2451" layer="21"/>
+<rectangle x1="-2.2225" y1="-5.2705" x2="-1.0795" y2="-5.2451" layer="21"/>
+<rectangle x1="-0.6731" y1="-5.2705" x2="-0.3429" y2="-5.2451" layer="21"/>
+<rectangle x1="0.5715" y1="-5.2705" x2="0.9017" y2="-5.2451" layer="21"/>
+<rectangle x1="1.8415" y1="-5.2705" x2="2.7051" y2="-5.2451" layer="21"/>
+<rectangle x1="3.3401" y1="-5.2705" x2="3.6449" y2="-5.2451" layer="21"/>
+<rectangle x1="4.3307" y1="-5.2705" x2="4.8641" y2="-5.2451" layer="21"/>
+<rectangle x1="4.9657" y1="-5.2705" x2="5.4737" y2="-5.2451" layer="21"/>
+<rectangle x1="-5.0165" y1="-5.2451" x2="-3.2385" y2="-5.2197" layer="21"/>
+<rectangle x1="-2.2225" y1="-5.2451" x2="-1.0541" y2="-5.2197" layer="21"/>
+<rectangle x1="-0.6731" y1="-5.2451" x2="-0.3175" y2="-5.2197" layer="21"/>
+<rectangle x1="0.5461" y1="-5.2451" x2="0.9017" y2="-5.2197" layer="21"/>
+<rectangle x1="1.8161" y1="-5.2451" x2="2.7051" y2="-5.2197" layer="21"/>
+<rectangle x1="3.3401" y1="-5.2451" x2="3.6449" y2="-5.2197" layer="21"/>
+<rectangle x1="4.3307" y1="-5.2451" x2="4.7879" y2="-5.2197" layer="21"/>
+<rectangle x1="5.0419" y1="-5.2451" x2="5.4991" y2="-5.2197" layer="21"/>
+<rectangle x1="-5.0419" y1="-5.2197" x2="-3.2131" y2="-5.1943" layer="21"/>
+<rectangle x1="-2.2479" y1="-5.2197" x2="-1.7653" y2="-5.1943" layer="21"/>
+<rectangle x1="-1.5367" y1="-5.2197" x2="-1.0541" y2="-5.1943" layer="21"/>
+<rectangle x1="-0.6477" y1="-5.2197" x2="-0.2921" y2="-5.1943" layer="21"/>
+<rectangle x1="0.5461" y1="-5.2197" x2="0.9017" y2="-5.1943" layer="21"/>
+<rectangle x1="1.7907" y1="-5.2197" x2="2.7051" y2="-5.1943" layer="21"/>
+<rectangle x1="3.3401" y1="-5.2197" x2="3.6449" y2="-5.1943" layer="21"/>
+<rectangle x1="4.3053" y1="-5.2197" x2="4.7117" y2="-5.1943" layer="21"/>
+<rectangle x1="5.0927" y1="-5.2197" x2="5.4991" y2="-5.1943" layer="21"/>
+<rectangle x1="-5.0927" y1="-5.1943" x2="-4.3815" y2="-5.1689" layer="21"/>
+<rectangle x1="-3.9243" y1="-5.1943" x2="-3.1877" y2="-5.1689" layer="21"/>
+<rectangle x1="-2.2733" y1="-5.1943" x2="-1.8161" y2="-5.1689" layer="21"/>
+<rectangle x1="-1.4605" y1="-5.1943" x2="-1.0287" y2="-5.1689" layer="21"/>
+<rectangle x1="-0.6477" y1="-5.1943" x2="-0.2921" y2="-5.1689" layer="21"/>
+<rectangle x1="0.5207" y1="-5.1943" x2="0.9017" y2="-5.1689" layer="21"/>
+<rectangle x1="1.7399" y1="-5.1943" x2="2.7051" y2="-5.1689" layer="21"/>
+<rectangle x1="3.3401" y1="-5.1943" x2="3.6449" y2="-5.1689" layer="21"/>
+<rectangle x1="4.3053" y1="-5.1943" x2="4.6863" y2="-5.1689" layer="21"/>
+<rectangle x1="5.1435" y1="-5.1943" x2="5.5245" y2="-5.1689" layer="21"/>
+<rectangle x1="-5.1181" y1="-5.1689" x2="-4.4831" y2="-5.1435" layer="21"/>
+<rectangle x1="-3.8227" y1="-5.1689" x2="-3.1369" y2="-5.1435" layer="21"/>
+<rectangle x1="-2.2733" y1="-5.1689" x2="-1.8669" y2="-5.1435" layer="21"/>
+<rectangle x1="-1.4097" y1="-5.1689" x2="-1.0033" y2="-5.1435" layer="21"/>
+<rectangle x1="-0.6477" y1="-5.1689" x2="-0.2667" y2="-5.1435" layer="21"/>
+<rectangle x1="0.4953" y1="-5.1689" x2="0.9017" y2="-5.1435" layer="21"/>
+<rectangle x1="1.7145" y1="-5.1689" x2="2.7051" y2="-5.1435" layer="21"/>
+<rectangle x1="3.3401" y1="-5.1689" x2="3.6449" y2="-5.1435" layer="21"/>
+<rectangle x1="4.2799" y1="-5.1689" x2="4.6609" y2="-5.1435" layer="21"/>
+<rectangle x1="5.1689" y1="-5.1689" x2="5.5245" y2="-5.1435" layer="21"/>
+<rectangle x1="-5.1435" y1="-5.1435" x2="-4.5593" y2="-5.1181" layer="21"/>
+<rectangle x1="-3.7465" y1="-5.1435" x2="-3.1115" y2="-5.1181" layer="21"/>
+<rectangle x1="-2.2987" y1="-5.1435" x2="-1.8923" y2="-5.1181" layer="21"/>
+<rectangle x1="-1.3843" y1="-5.1435" x2="-1.0033" y2="-5.1181" layer="21"/>
+<rectangle x1="-0.6477" y1="-5.1435" x2="-0.2413" y2="-5.1181" layer="21"/>
+<rectangle x1="0.4953" y1="-5.1435" x2="0.8763" y2="-5.1181" layer="21"/>
+<rectangle x1="1.6891" y1="-5.1435" x2="2.5019" y2="-5.1181" layer="21"/>
+<rectangle x1="3.3401" y1="-5.1435" x2="3.6449" y2="-5.1181" layer="21"/>
+<rectangle x1="4.2799" y1="-5.1435" x2="4.6355" y2="-5.1181" layer="21"/>
+<rectangle x1="5.1943" y1="-5.1435" x2="5.5499" y2="-5.1181" layer="21"/>
+<rectangle x1="-5.1689" y1="-5.1181" x2="-4.6355" y2="-5.0927" layer="21"/>
+<rectangle x1="-3.6703" y1="-5.1181" x2="-3.0861" y2="-5.0927" layer="21"/>
+<rectangle x1="-2.2987" y1="-5.1181" x2="-1.9431" y2="-5.0927" layer="21"/>
+<rectangle x1="-1.3589" y1="-5.1181" x2="-0.9779" y2="-5.0927" layer="21"/>
+<rectangle x1="-0.6223" y1="-5.1181" x2="-0.2413" y2="-5.0927" layer="21"/>
+<rectangle x1="0.4699" y1="-5.1181" x2="0.8509" y2="-5.0927" layer="21"/>
+<rectangle x1="1.6637" y1="-5.1181" x2="2.3241" y2="-5.0927" layer="21"/>
+<rectangle x1="3.3401" y1="-5.1181" x2="3.6449" y2="-5.0927" layer="21"/>
+<rectangle x1="4.2545" y1="-5.1181" x2="4.6101" y2="-5.0927" layer="21"/>
+<rectangle x1="5.2197" y1="-5.1181" x2="5.5499" y2="-5.0927" layer="21"/>
+<rectangle x1="-5.1943" y1="-5.0927" x2="-4.6863" y2="-5.0673" layer="21"/>
+<rectangle x1="-3.6195" y1="-5.0927" x2="-3.0607" y2="-5.0673" layer="21"/>
+<rectangle x1="-2.3241" y1="-5.0927" x2="-1.9685" y2="-5.0673" layer="21"/>
+<rectangle x1="-1.3589" y1="-5.0927" x2="-0.9779" y2="-5.0673" layer="21"/>
+<rectangle x1="-0.5969" y1="-5.0927" x2="-0.2159" y2="-5.0673" layer="21"/>
+<rectangle x1="0.4445" y1="-5.0927" x2="0.8255" y2="-5.0673" layer="21"/>
+<rectangle x1="1.6383" y1="-5.0927" x2="2.2225" y2="-5.0673" layer="21"/>
+<rectangle x1="3.3401" y1="-5.0927" x2="3.6449" y2="-5.0673" layer="21"/>
+<rectangle x1="4.2545" y1="-5.0927" x2="4.5847" y2="-5.0673" layer="21"/>
+<rectangle x1="5.2197" y1="-5.0927" x2="5.5499" y2="-5.0673" layer="21"/>
+<rectangle x1="-5.2197" y1="-5.0673" x2="-4.7371" y2="-5.0419" layer="21"/>
+<rectangle x1="-3.5687" y1="-5.0673" x2="-3.0353" y2="-5.0419" layer="21"/>
+<rectangle x1="-2.3241" y1="-5.0673" x2="-1.9685" y2="-5.0419" layer="21"/>
+<rectangle x1="-1.3335" y1="-5.0673" x2="-0.9779" y2="-5.0419" layer="21"/>
+<rectangle x1="-0.5715" y1="-5.0673" x2="-0.2159" y2="-5.0419" layer="21"/>
+<rectangle x1="0.4445" y1="-5.0673" x2="0.8001" y2="-5.0419" layer="21"/>
+<rectangle x1="1.6129" y1="-5.0673" x2="2.1463" y2="-5.0419" layer="21"/>
+<rectangle x1="3.3401" y1="-5.0673" x2="3.6449" y2="-5.0419" layer="21"/>
+<rectangle x1="4.2545" y1="-5.0673" x2="4.5847" y2="-5.0419" layer="21"/>
+<rectangle x1="5.2451" y1="-5.0673" x2="5.5753" y2="-5.0419" layer="21"/>
+<rectangle x1="-5.2451" y1="-5.0419" x2="-4.7879" y2="-5.0165" layer="21"/>
+<rectangle x1="-3.5433" y1="-5.0419" x2="-3.0099" y2="-5.0165" layer="21"/>
+<rectangle x1="-2.3241" y1="-5.0419" x2="-1.9939" y2="-5.0165" layer="21"/>
+<rectangle x1="-1.3081" y1="-5.0419" x2="-0.9779" y2="-5.0165" layer="21"/>
+<rectangle x1="-0.5461" y1="-5.0419" x2="-0.1905" y2="-5.0165" layer="21"/>
+<rectangle x1="0.4191" y1="-5.0419" x2="0.8001" y2="-5.0165" layer="21"/>
+<rectangle x1="1.5875" y1="-5.0419" x2="2.0701" y2="-5.0165" layer="21"/>
+<rectangle x1="3.3401" y1="-5.0419" x2="3.6449" y2="-5.0165" layer="21"/>
+<rectangle x1="4.2545" y1="-5.0419" x2="4.5593" y2="-5.0165" layer="21"/>
+<rectangle x1="5.2451" y1="-5.0419" x2="5.5753" y2="-5.0165" layer="21"/>
+<rectangle x1="-5.2705" y1="-5.0165" x2="-4.8133" y2="-4.9911" layer="21"/>
+<rectangle x1="-3.4925" y1="-5.0165" x2="-2.9845" y2="-4.9911" layer="21"/>
+<rectangle x1="-2.3495" y1="-5.0165" x2="-1.9939" y2="-4.9911" layer="21"/>
+<rectangle x1="-1.3081" y1="-5.0165" x2="-0.9525" y2="-4.9911" layer="21"/>
+<rectangle x1="-0.5461" y1="-5.0165" x2="-0.1651" y2="-4.9911" layer="21"/>
+<rectangle x1="0.4191" y1="-5.0165" x2="0.7747" y2="-4.9911" layer="21"/>
+<rectangle x1="1.5621" y1="-5.0165" x2="2.0193" y2="-4.9911" layer="21"/>
+<rectangle x1="3.3401" y1="-5.0165" x2="3.6449" y2="-4.9911" layer="21"/>
+<rectangle x1="4.2545" y1="-5.0165" x2="4.5593" y2="-4.9911" layer="21"/>
+<rectangle x1="5.2705" y1="-5.0165" x2="5.5753" y2="-4.9911" layer="21"/>
+<rectangle x1="-5.2959" y1="-4.9911" x2="-4.8641" y2="-4.9657" layer="21"/>
+<rectangle x1="-3.4671" y1="-4.9911" x2="-2.9845" y2="-4.9657" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.9911" x2="-2.0193" y2="-4.9657" layer="21"/>
+<rectangle x1="-1.2827" y1="-4.9911" x2="-0.9525" y2="-4.9657" layer="21"/>
+<rectangle x1="-0.5207" y1="-4.9911" x2="-0.1651" y2="-4.9657" layer="21"/>
+<rectangle x1="0.3937" y1="-4.9911" x2="0.7493" y2="-4.9657" layer="21"/>
+<rectangle x1="1.5367" y1="-4.9911" x2="1.9939" y2="-4.9657" layer="21"/>
+<rectangle x1="3.3401" y1="-4.9911" x2="3.6449" y2="-4.9657" layer="21"/>
+<rectangle x1="4.2545" y1="-4.9911" x2="4.5339" y2="-4.9657" layer="21"/>
+<rectangle x1="5.2705" y1="-4.9911" x2="5.5753" y2="-4.9657" layer="21"/>
+<rectangle x1="-5.2959" y1="-4.9657" x2="-4.8895" y2="-4.9403" layer="21"/>
+<rectangle x1="-3.4163" y1="-4.9657" x2="-2.9591" y2="-4.9403" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.9657" x2="-2.0193" y2="-4.9403" layer="21"/>
+<rectangle x1="-1.2827" y1="-4.9657" x2="-0.9525" y2="-4.9403" layer="21"/>
+<rectangle x1="-0.4953" y1="-4.9657" x2="-0.1397" y2="-4.9403" layer="21"/>
+<rectangle x1="0.3937" y1="-4.9657" x2="0.7493" y2="-4.9403" layer="21"/>
+<rectangle x1="1.5367" y1="-4.9657" x2="1.9431" y2="-4.9403" layer="21"/>
+<rectangle x1="3.3401" y1="-4.9657" x2="3.6449" y2="-4.9403" layer="21"/>
+<rectangle x1="4.2545" y1="-4.9657" x2="4.5339" y2="-4.9403" layer="21"/>
+<rectangle x1="5.2705" y1="-4.9657" x2="5.5753" y2="-4.9403" layer="21"/>
+<rectangle x1="-5.3213" y1="-4.9403" x2="-4.9149" y2="-4.9149" layer="21"/>
+<rectangle x1="-3.3909" y1="-4.9403" x2="-2.9337" y2="-4.9149" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.9403" x2="-2.0193" y2="-4.9149" layer="21"/>
+<rectangle x1="-1.2827" y1="-4.9403" x2="-0.9525" y2="-4.9149" layer="21"/>
+<rectangle x1="-0.4953" y1="-4.9403" x2="-0.1397" y2="-4.9149" layer="21"/>
+<rectangle x1="0.3683" y1="-4.9403" x2="0.7239" y2="-4.9149" layer="21"/>
+<rectangle x1="1.5113" y1="-4.9403" x2="1.9177" y2="-4.9149" layer="21"/>
+<rectangle x1="3.3401" y1="-4.9403" x2="3.6449" y2="-4.9149" layer="21"/>
+<rectangle x1="4.2545" y1="-4.9403" x2="4.5339" y2="-4.9149" layer="21"/>
+<rectangle x1="5.2705" y1="-4.9403" x2="5.5753" y2="-4.9149" layer="21"/>
+<rectangle x1="-5.3467" y1="-4.9149" x2="-4.9403" y2="-4.8895" layer="21"/>
+<rectangle x1="-3.3655" y1="-4.9149" x2="-2.9083" y2="-4.8895" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.9149" x2="-2.0193" y2="-4.8895" layer="21"/>
+<rectangle x1="-1.2573" y1="-4.9149" x2="-0.9525" y2="-4.8895" layer="21"/>
+<rectangle x1="-0.4699" y1="-4.9149" x2="-0.1397" y2="-4.8895" layer="21"/>
+<rectangle x1="0.3683" y1="-4.9149" x2="0.6985" y2="-4.8895" layer="21"/>
+<rectangle x1="1.4859" y1="-4.9149" x2="1.8923" y2="-4.8895" layer="21"/>
+<rectangle x1="3.3401" y1="-4.9149" x2="3.6449" y2="-4.8895" layer="21"/>
+<rectangle x1="4.2545" y1="-4.9149" x2="4.5339" y2="-4.8895" layer="21"/>
+<rectangle x1="5.2705" y1="-4.9149" x2="5.5753" y2="-4.8895" layer="21"/>
+<rectangle x1="-5.3467" y1="-4.8895" x2="-4.9657" y2="-4.8641" layer="21"/>
+<rectangle x1="-3.3401" y1="-4.8895" x2="-2.9083" y2="-4.8641" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.8895" x2="-2.0447" y2="-4.8641" layer="21"/>
+<rectangle x1="-1.2573" y1="-4.8895" x2="-0.9525" y2="-4.8641" layer="21"/>
+<rectangle x1="-0.4699" y1="-4.8895" x2="-0.1143" y2="-4.8641" layer="21"/>
+<rectangle x1="0.3683" y1="-4.8895" x2="0.6985" y2="-4.8641" layer="21"/>
+<rectangle x1="1.4605" y1="-4.8895" x2="1.8669" y2="-4.8641" layer="21"/>
+<rectangle x1="3.3401" y1="-4.8895" x2="3.6449" y2="-4.8641" layer="21"/>
+<rectangle x1="4.2545" y1="-4.8895" x2="4.5339" y2="-4.8641" layer="21"/>
+<rectangle x1="5.2705" y1="-4.8895" x2="5.5753" y2="-4.8641" layer="21"/>
+<rectangle x1="-5.3721" y1="-4.8641" x2="-4.9911" y2="-4.8387" layer="21"/>
+<rectangle x1="-3.3147" y1="-4.8641" x2="-2.8829" y2="-4.8387" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.8641" x2="-2.0447" y2="-4.8387" layer="21"/>
+<rectangle x1="-1.2573" y1="-4.8641" x2="-0.9525" y2="-4.8387" layer="21"/>
+<rectangle x1="-0.4445" y1="-4.8641" x2="-0.1143" y2="-4.8387" layer="21"/>
+<rectangle x1="0.3429" y1="-4.8641" x2="0.6731" y2="-4.8387" layer="21"/>
+<rectangle x1="1.4605" y1="-4.8641" x2="1.8415" y2="-4.8387" layer="21"/>
+<rectangle x1="3.3401" y1="-4.8641" x2="3.6449" y2="-4.8387" layer="21"/>
+<rectangle x1="4.2545" y1="-4.8641" x2="4.5339" y2="-4.8387" layer="21"/>
+<rectangle x1="5.2705" y1="-4.8641" x2="5.5753" y2="-4.8387" layer="21"/>
+<rectangle x1="-5.3975" y1="-4.8387" x2="-5.0165" y2="-4.8133" layer="21"/>
+<rectangle x1="-3.2893" y1="-4.8387" x2="-2.8575" y2="-4.8133" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.8387" x2="-2.0447" y2="-4.8133" layer="21"/>
+<rectangle x1="-1.2573" y1="-4.8387" x2="-0.9525" y2="-4.8133" layer="21"/>
+<rectangle x1="-0.4445" y1="-4.8387" x2="-0.0889" y2="-4.8133" layer="21"/>
+<rectangle x1="0.3429" y1="-4.8387" x2="0.6731" y2="-4.8133" layer="21"/>
+<rectangle x1="1.4351" y1="-4.8387" x2="1.8161" y2="-4.8133" layer="21"/>
+<rectangle x1="3.3401" y1="-4.8387" x2="3.6449" y2="-4.8133" layer="21"/>
+<rectangle x1="4.2545" y1="-4.8387" x2="4.5339" y2="-4.8133" layer="21"/>
+<rectangle x1="5.2705" y1="-4.8387" x2="5.5753" y2="-4.8133" layer="21"/>
+<rectangle x1="-5.3975" y1="-4.8133" x2="-5.0419" y2="-4.7879" layer="21"/>
+<rectangle x1="-3.2639" y1="-4.8133" x2="-2.8575" y2="-4.7879" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.8133" x2="-2.0447" y2="-4.7879" layer="21"/>
+<rectangle x1="-1.2573" y1="-4.8133" x2="-0.9525" y2="-4.7879" layer="21"/>
+<rectangle x1="-0.4191" y1="-4.8133" x2="-0.0889" y2="-4.7879" layer="21"/>
+<rectangle x1="0.3175" y1="-4.8133" x2="0.6477" y2="-4.7879" layer="21"/>
+<rectangle x1="1.4097" y1="-4.8133" x2="1.7907" y2="-4.7879" layer="21"/>
+<rectangle x1="3.3401" y1="-4.8133" x2="3.6449" y2="-4.7879" layer="21"/>
+<rectangle x1="4.2545" y1="-4.8133" x2="4.5593" y2="-4.7879" layer="21"/>
+<rectangle x1="5.2705" y1="-4.8133" x2="5.5753" y2="-4.7879" layer="21"/>
+<rectangle x1="-5.4229" y1="-4.7879" x2="-5.0673" y2="-4.7625" layer="21"/>
+<rectangle x1="-3.2385" y1="-4.7879" x2="-2.8321" y2="-4.7625" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.7879" x2="-2.0447" y2="-4.7625" layer="21"/>
+<rectangle x1="-1.2573" y1="-4.7879" x2="-0.9525" y2="-4.7625" layer="21"/>
+<rectangle x1="-0.4191" y1="-4.7879" x2="-0.0889" y2="-4.7625" layer="21"/>
+<rectangle x1="0.3175" y1="-4.7879" x2="0.6477" y2="-4.7625" layer="21"/>
+<rectangle x1="1.4097" y1="-4.7879" x2="1.7653" y2="-4.7625" layer="21"/>
+<rectangle x1="3.3401" y1="-4.7879" x2="3.6449" y2="-4.7625" layer="21"/>
+<rectangle x1="4.2545" y1="-4.7879" x2="4.5593" y2="-4.7625" layer="21"/>
+<rectangle x1="5.2705" y1="-4.7879" x2="5.5753" y2="-4.7625" layer="21"/>
+<rectangle x1="-5.4483" y1="-4.7625" x2="-5.0927" y2="-4.7371" layer="21"/>
+<rectangle x1="-3.2131" y1="-4.7625" x2="-2.8067" y2="-4.7371" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.7625" x2="-2.0447" y2="-4.7371" layer="21"/>
+<rectangle x1="-1.2827" y1="-4.7625" x2="-0.9525" y2="-4.7371" layer="21"/>
+<rectangle x1="-0.3937" y1="-4.7625" x2="-0.0635" y2="-4.7371" layer="21"/>
+<rectangle x1="0.3175" y1="-4.7625" x2="0.6477" y2="-4.7371" layer="21"/>
+<rectangle x1="1.3843" y1="-4.7625" x2="1.7399" y2="-4.7371" layer="21"/>
+<rectangle x1="3.3401" y1="-4.7625" x2="3.6449" y2="-4.7371" layer="21"/>
+<rectangle x1="4.2545" y1="-4.7625" x2="4.5593" y2="-4.7371" layer="21"/>
+<rectangle x1="5.2451" y1="-4.7625" x2="5.5753" y2="-4.7371" layer="21"/>
+<rectangle x1="-5.4483" y1="-4.7371" x2="-5.0927" y2="-4.7117" layer="21"/>
+<rectangle x1="-3.1877" y1="-4.7371" x2="-2.8067" y2="-4.7117" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.7371" x2="-2.0447" y2="-4.7117" layer="21"/>
+<rectangle x1="-1.2827" y1="-4.7371" x2="-0.9525" y2="-4.7117" layer="21"/>
+<rectangle x1="-0.3937" y1="-4.7371" x2="-0.0635" y2="-4.7117" layer="21"/>
+<rectangle x1="0.2921" y1="-4.7371" x2="0.6223" y2="-4.7117" layer="21"/>
+<rectangle x1="1.3843" y1="-4.7371" x2="1.7399" y2="-4.7117" layer="21"/>
+<rectangle x1="3.3401" y1="-4.7371" x2="3.6449" y2="-4.7117" layer="21"/>
+<rectangle x1="4.2545" y1="-4.7371" x2="4.5847" y2="-4.7117" layer="21"/>
+<rectangle x1="5.2451" y1="-4.7371" x2="5.5753" y2="-4.7117" layer="21"/>
+<rectangle x1="-5.4737" y1="-4.7117" x2="-5.1181" y2="-4.6863" layer="21"/>
+<rectangle x1="-3.1877" y1="-4.7117" x2="-2.7813" y2="-4.6863" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.7117" x2="-2.0447" y2="-4.6863" layer="21"/>
+<rectangle x1="-1.2827" y1="-4.7117" x2="-0.9525" y2="-4.6863" layer="21"/>
+<rectangle x1="-0.3937" y1="-4.7117" x2="-0.0635" y2="-4.6863" layer="21"/>
+<rectangle x1="0.2921" y1="-4.7117" x2="0.6223" y2="-4.6863" layer="21"/>
+<rectangle x1="1.3589" y1="-4.7117" x2="1.7145" y2="-4.6863" layer="21"/>
+<rectangle x1="3.3401" y1="-4.7117" x2="3.6449" y2="-4.6863" layer="21"/>
+<rectangle x1="4.2545" y1="-4.7117" x2="4.5847" y2="-4.6863" layer="21"/>
+<rectangle x1="5.2197" y1="-4.7117" x2="5.5499" y2="-4.6863" layer="21"/>
+<rectangle x1="-5.4991" y1="-4.6863" x2="-5.1435" y2="-4.6609" layer="21"/>
+<rectangle x1="-3.1623" y1="-4.6863" x2="-2.7813" y2="-4.6609" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.6863" x2="-2.0447" y2="-4.6609" layer="21"/>
+<rectangle x1="-1.2827" y1="-4.6863" x2="-0.9525" y2="-4.6609" layer="21"/>
+<rectangle x1="-0.3683" y1="-4.6863" x2="-0.0635" y2="-4.6609" layer="21"/>
+<rectangle x1="0.2921" y1="-4.6863" x2="0.6223" y2="-4.6609" layer="21"/>
+<rectangle x1="1.3589" y1="-4.6863" x2="1.6891" y2="-4.6609" layer="21"/>
+<rectangle x1="3.3401" y1="-4.6863" x2="3.6449" y2="-4.6609" layer="21"/>
+<rectangle x1="4.2545" y1="-4.6863" x2="4.6101" y2="-4.6609" layer="21"/>
+<rectangle x1="5.2197" y1="-4.6863" x2="5.5499" y2="-4.6609" layer="21"/>
+<rectangle x1="-5.4991" y1="-4.6609" x2="-5.1435" y2="-4.6355" layer="21"/>
+<rectangle x1="-3.1369" y1="-4.6609" x2="-2.7559" y2="-4.6355" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.6609" x2="-2.0447" y2="-4.6355" layer="21"/>
+<rectangle x1="-1.3081" y1="-4.6609" x2="-0.9525" y2="-4.6355" layer="21"/>
+<rectangle x1="-0.3683" y1="-4.6609" x2="-0.0381" y2="-4.6355" layer="21"/>
+<rectangle x1="0.2921" y1="-4.6609" x2="0.5969" y2="-4.6355" layer="21"/>
+<rectangle x1="1.3335" y1="-4.6609" x2="1.6891" y2="-4.6355" layer="21"/>
+<rectangle x1="3.3401" y1="-4.6609" x2="3.6449" y2="-4.6355" layer="21"/>
+<rectangle x1="4.2799" y1="-4.6609" x2="4.6355" y2="-4.6355" layer="21"/>
+<rectangle x1="5.1943" y1="-4.6609" x2="5.5499" y2="-4.6355" layer="21"/>
+<rectangle x1="-5.4991" y1="-4.6355" x2="-5.1689" y2="-4.6101" layer="21"/>
+<rectangle x1="-3.1369" y1="-4.6355" x2="-2.7559" y2="-4.6101" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.6355" x2="-2.0447" y2="-4.6101" layer="21"/>
+<rectangle x1="-1.3335" y1="-4.6355" x2="-0.9779" y2="-4.6101" layer="21"/>
+<rectangle x1="-0.3683" y1="-4.6355" x2="-0.0381" y2="-4.6101" layer="21"/>
+<rectangle x1="0.2921" y1="-4.6355" x2="0.5969" y2="-4.6101" layer="21"/>
+<rectangle x1="1.3335" y1="-4.6355" x2="1.6637" y2="-4.6101" layer="21"/>
+<rectangle x1="3.3401" y1="-4.6355" x2="3.6449" y2="-4.6101" layer="21"/>
+<rectangle x1="4.2799" y1="-4.6355" x2="4.6355" y2="-4.6101" layer="21"/>
+<rectangle x1="5.1689" y1="-4.6355" x2="5.5245" y2="-4.6101" layer="21"/>
+<rectangle x1="-5.5245" y1="-4.6101" x2="-5.1943" y2="-4.5847" layer="21"/>
+<rectangle x1="-3.1115" y1="-4.6101" x2="-2.7559" y2="-4.5847" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.6101" x2="-2.0447" y2="-4.5847" layer="21"/>
+<rectangle x1="-1.3335" y1="-4.6101" x2="-0.9779" y2="-4.5847" layer="21"/>
+<rectangle x1="-0.3683" y1="-4.6101" x2="-0.0381" y2="-4.5847" layer="21"/>
+<rectangle x1="0.2667" y1="-4.6101" x2="0.5969" y2="-4.5847" layer="21"/>
+<rectangle x1="1.3081" y1="-4.6101" x2="1.6637" y2="-4.5847" layer="21"/>
+<rectangle x1="3.3401" y1="-4.6101" x2="3.6449" y2="-4.5847" layer="21"/>
+<rectangle x1="4.3053" y1="-4.6101" x2="4.6863" y2="-4.5847" layer="21"/>
+<rectangle x1="5.1435" y1="-4.6101" x2="5.5245" y2="-4.5847" layer="21"/>
+<rectangle x1="-5.5245" y1="-4.5847" x2="-5.1943" y2="-4.5593" layer="21"/>
+<rectangle x1="-3.1115" y1="-4.5847" x2="-2.7305" y2="-4.5593" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.5847" x2="-2.0447" y2="-4.5593" layer="21"/>
+<rectangle x1="-1.3589" y1="-4.5847" x2="-1.0033" y2="-4.5593" layer="21"/>
+<rectangle x1="-0.3429" y1="-4.5847" x2="-0.0381" y2="-4.5593" layer="21"/>
+<rectangle x1="0.2667" y1="-4.5847" x2="0.5969" y2="-4.5593" layer="21"/>
+<rectangle x1="1.3081" y1="-4.5847" x2="1.6383" y2="-4.5593" layer="21"/>
+<rectangle x1="3.3401" y1="-4.5847" x2="3.6449" y2="-4.5593" layer="21"/>
+<rectangle x1="4.3053" y1="-4.5847" x2="4.7117" y2="-4.5593" layer="21"/>
+<rectangle x1="5.1181" y1="-4.5847" x2="5.4991" y2="-4.5593" layer="21"/>
+<rectangle x1="-5.5499" y1="-4.5593" x2="-5.2197" y2="-4.5339" layer="21"/>
+<rectangle x1="-3.0861" y1="-4.5593" x2="-2.7305" y2="-4.5339" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.5593" x2="-2.0447" y2="-4.5339" layer="21"/>
+<rectangle x1="-1.3843" y1="-4.5593" x2="-1.0033" y2="-4.5339" layer="21"/>
+<rectangle x1="-0.3429" y1="-4.5593" x2="-0.0381" y2="-4.5339" layer="21"/>
+<rectangle x1="0.2667" y1="-4.5593" x2="0.5715" y2="-4.5339" layer="21"/>
+<rectangle x1="1.3081" y1="-4.5593" x2="1.6383" y2="-4.5339" layer="21"/>
+<rectangle x1="3.3401" y1="-4.5593" x2="3.6449" y2="-4.5339" layer="21"/>
+<rectangle x1="4.3307" y1="-4.5593" x2="4.7625" y2="-4.5339" layer="21"/>
+<rectangle x1="5.1181" y1="-4.5593" x2="5.4991" y2="-4.5339" layer="21"/>
+<rectangle x1="-5.5499" y1="-4.5339" x2="-5.2197" y2="-4.5085" layer="21"/>
+<rectangle x1="-3.0861" y1="-4.5339" x2="-2.7051" y2="-4.5085" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.5339" x2="-2.0447" y2="-4.5085" layer="21"/>
+<rectangle x1="-1.9177" y1="-4.5339" x2="-1.8669" y2="-4.5085" layer="21"/>
+<rectangle x1="-1.4351" y1="-4.5339" x2="-1.0033" y2="-4.5085" layer="21"/>
+<rectangle x1="-0.3429" y1="-4.5339" x2="-0.0381" y2="-4.5085" layer="21"/>
+<rectangle x1="0.2667" y1="-4.5339" x2="0.5715" y2="-4.5085" layer="21"/>
+<rectangle x1="1.2827" y1="-4.5339" x2="1.6129" y2="-4.5085" layer="21"/>
+<rectangle x1="3.3401" y1="-4.5339" x2="3.6449" y2="-4.5085" layer="21"/>
+<rectangle x1="4.3307" y1="-4.5339" x2="4.8641" y2="-4.5085" layer="21"/>
+<rectangle x1="5.0927" y1="-4.5339" x2="5.4737" y2="-4.5085" layer="21"/>
+<rectangle x1="-5.5499" y1="-4.5085" x2="-5.2451" y2="-4.4831" layer="21"/>
+<rectangle x1="-3.0607" y1="-4.5085" x2="-2.7051" y2="-4.4831" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.5085" x2="-2.0447" y2="-4.4831" layer="21"/>
+<rectangle x1="-1.9177" y1="-4.5085" x2="-1.8415" y2="-4.4831" layer="21"/>
+<rectangle x1="-1.4605" y1="-4.5085" x2="-1.0287" y2="-4.4831" layer="21"/>
+<rectangle x1="-0.3429" y1="-4.5085" x2="-0.0381" y2="-4.4831" layer="21"/>
+<rectangle x1="0.2667" y1="-4.5085" x2="0.5715" y2="-4.4831" layer="21"/>
+<rectangle x1="1.2827" y1="-4.5085" x2="1.6129" y2="-4.4831" layer="21"/>
+<rectangle x1="3.3401" y1="-4.5085" x2="3.6449" y2="-4.4831" layer="21"/>
+<rectangle x1="4.3561" y1="-4.5085" x2="4.8895" y2="-4.4831" layer="21"/>
+<rectangle x1="5.0673" y1="-4.5085" x2="5.4483" y2="-4.4831" layer="21"/>
+<rectangle x1="-5.5753" y1="-4.4831" x2="-5.2451" y2="-4.4577" layer="21"/>
+<rectangle x1="-3.0607" y1="-4.4831" x2="-2.7051" y2="-4.4577" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.4831" x2="-2.0447" y2="-4.4577" layer="21"/>
+<rectangle x1="-1.9177" y1="-4.4831" x2="-1.7907" y2="-4.4577" layer="21"/>
+<rectangle x1="-1.5113" y1="-4.4831" x2="-1.0541" y2="-4.4577" layer="21"/>
+<rectangle x1="-0.3429" y1="-4.4831" x2="-0.0127" y2="-4.4577" layer="21"/>
+<rectangle x1="0.2667" y1="-4.4831" x2="0.5715" y2="-4.4577" layer="21"/>
+<rectangle x1="1.2827" y1="-4.4831" x2="1.5875" y2="-4.4577" layer="21"/>
+<rectangle x1="3.3401" y1="-4.4831" x2="3.6449" y2="-4.4577" layer="21"/>
+<rectangle x1="4.3815" y1="-4.4831" x2="4.8641" y2="-4.4577" layer="21"/>
+<rectangle x1="5.0419" y1="-4.4831" x2="5.4483" y2="-4.4577" layer="21"/>
+<rectangle x1="-5.5753" y1="-4.4577" x2="-5.2705" y2="-4.4323" layer="21"/>
+<rectangle x1="-3.0353" y1="-4.4577" x2="-2.7051" y2="-4.4323" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.4577" x2="-2.0447" y2="-4.4323" layer="21"/>
+<rectangle x1="-1.9177" y1="-4.4577" x2="-1.0795" y2="-4.4323" layer="21"/>
+<rectangle x1="-0.3175" y1="-4.4577" x2="-0.0127" y2="-4.4323" layer="21"/>
+<rectangle x1="0.2667" y1="-4.4577" x2="0.5715" y2="-4.4323" layer="21"/>
+<rectangle x1="1.2573" y1="-4.4577" x2="1.5875" y2="-4.4323" layer="21"/>
+<rectangle x1="3.3401" y1="-4.4577" x2="3.6449" y2="-4.4323" layer="21"/>
+<rectangle x1="4.4069" y1="-4.4577" x2="4.8641" y2="-4.4323" layer="21"/>
+<rectangle x1="5.0165" y1="-4.4577" x2="5.4229" y2="-4.4323" layer="21"/>
+<rectangle x1="-5.5753" y1="-4.4323" x2="-5.2705" y2="-4.4069" layer="21"/>
+<rectangle x1="-3.0353" y1="-4.4323" x2="-2.6797" y2="-4.4069" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.4323" x2="-2.0447" y2="-4.4069" layer="21"/>
+<rectangle x1="-1.9177" y1="-4.4323" x2="-1.0795" y2="-4.4069" layer="21"/>
+<rectangle x1="-0.3175" y1="-4.4323" x2="-0.0127" y2="-4.4069" layer="21"/>
+<rectangle x1="0.2667" y1="-4.4323" x2="0.5715" y2="-4.4069" layer="21"/>
+<rectangle x1="1.2573" y1="-4.4323" x2="1.5875" y2="-4.4069" layer="21"/>
+<rectangle x1="3.3401" y1="-4.4323" x2="3.6449" y2="-4.4069" layer="21"/>
+<rectangle x1="4.4323" y1="-4.4323" x2="4.8387" y2="-4.4069" layer="21"/>
+<rectangle x1="4.9911" y1="-4.4323" x2="5.3975" y2="-4.4069" layer="21"/>
+<rectangle x1="-5.5753" y1="-4.4069" x2="-5.2959" y2="-4.3815" layer="21"/>
+<rectangle x1="-3.0353" y1="-4.4069" x2="-2.6797" y2="-4.3815" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.4069" x2="-2.0447" y2="-4.3815" layer="21"/>
+<rectangle x1="-1.9177" y1="-4.4069" x2="-1.1049" y2="-4.3815" layer="21"/>
+<rectangle x1="-0.3175" y1="-4.4069" x2="-0.0127" y2="-4.3815" layer="21"/>
+<rectangle x1="0.2667" y1="-4.4069" x2="0.5715" y2="-4.3815" layer="21"/>
+<rectangle x1="1.2573" y1="-4.4069" x2="1.5621" y2="-4.3815" layer="21"/>
+<rectangle x1="3.3401" y1="-4.4069" x2="3.6449" y2="-4.3815" layer="21"/>
+<rectangle x1="4.4577" y1="-4.4069" x2="4.8387" y2="-4.3815" layer="21"/>
+<rectangle x1="4.9911" y1="-4.4069" x2="5.3721" y2="-4.3815" layer="21"/>
+<rectangle x1="-5.6007" y1="-4.3815" x2="-5.2959" y2="-4.3561" layer="21"/>
+<rectangle x1="-3.0099" y1="-4.3815" x2="-2.6797" y2="-4.3561" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.3815" x2="-2.0447" y2="-4.3561" layer="21"/>
+<rectangle x1="-1.9177" y1="-4.3815" x2="-1.1303" y2="-4.3561" layer="21"/>
+<rectangle x1="-0.3175" y1="-4.3815" x2="-0.0127" y2="-4.3561" layer="21"/>
+<rectangle x1="0.2667" y1="-4.3815" x2="0.5715" y2="-4.3561" layer="21"/>
+<rectangle x1="1.2573" y1="-4.3815" x2="1.5621" y2="-4.3561" layer="21"/>
+<rectangle x1="3.3401" y1="-4.3815" x2="3.6449" y2="-4.3561" layer="21"/>
+<rectangle x1="4.4831" y1="-4.3815" x2="4.8133" y2="-4.3561" layer="21"/>
+<rectangle x1="4.9657" y1="-4.3815" x2="5.3467" y2="-4.3561" layer="21"/>
+<rectangle x1="-5.6007" y1="-4.3561" x2="-5.2959" y2="-4.3307" layer="21"/>
+<rectangle x1="-3.0099" y1="-4.3561" x2="-2.6543" y2="-4.3307" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.3561" x2="-2.0447" y2="-4.3307" layer="21"/>
+<rectangle x1="-1.9177" y1="-4.3561" x2="-1.1557" y2="-4.3307" layer="21"/>
+<rectangle x1="-0.3175" y1="-4.3561" x2="-0.0127" y2="-4.3307" layer="21"/>
+<rectangle x1="0.2413" y1="-4.3561" x2="0.5715" y2="-4.3307" layer="21"/>
+<rectangle x1="1.2319" y1="-4.3561" x2="1.5621" y2="-4.3307" layer="21"/>
+<rectangle x1="3.3401" y1="-4.3561" x2="3.6449" y2="-4.3307" layer="21"/>
+<rectangle x1="4.5085" y1="-4.3561" x2="4.7879" y2="-4.3307" layer="21"/>
+<rectangle x1="4.9403" y1="-4.3561" x2="5.3467" y2="-4.3307" layer="21"/>
+<rectangle x1="-5.6007" y1="-4.3307" x2="-5.2959" y2="-4.3053" layer="21"/>
+<rectangle x1="-3.0099" y1="-4.3307" x2="-2.6543" y2="-4.3053" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.3307" x2="-2.0447" y2="-4.3053" layer="21"/>
+<rectangle x1="-1.9177" y1="-4.3307" x2="-1.1811" y2="-4.3053" layer="21"/>
+<rectangle x1="-0.3175" y1="-4.3307" x2="-0.0127" y2="-4.3053" layer="21"/>
+<rectangle x1="0.2413" y1="-4.3307" x2="0.5715" y2="-4.3053" layer="21"/>
+<rectangle x1="1.2319" y1="-4.3307" x2="1.5621" y2="-4.3053" layer="21"/>
+<rectangle x1="3.3401" y1="-4.3307" x2="3.6449" y2="-4.3053" layer="21"/>
+<rectangle x1="4.5339" y1="-4.3307" x2="4.7625" y2="-4.3053" layer="21"/>
+<rectangle x1="4.9149" y1="-4.3307" x2="5.3213" y2="-4.3053" layer="21"/>
+<rectangle x1="-5.6007" y1="-4.3053" x2="-5.3213" y2="-4.2799" layer="21"/>
+<rectangle x1="-2.9845" y1="-4.3053" x2="-2.6543" y2="-4.2799" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.3053" x2="-2.0447" y2="-4.2799" layer="21"/>
+<rectangle x1="-1.9177" y1="-4.3053" x2="-1.2065" y2="-4.2799" layer="21"/>
+<rectangle x1="-0.3175" y1="-4.3053" x2="-0.0127" y2="-4.2799" layer="21"/>
+<rectangle x1="0.2413" y1="-4.3053" x2="0.5715" y2="-4.2799" layer="21"/>
+<rectangle x1="1.2319" y1="-4.3053" x2="1.5367" y2="-4.2799" layer="21"/>
+<rectangle x1="3.3401" y1="-4.3053" x2="3.6449" y2="-4.2799" layer="21"/>
+<rectangle x1="4.5847" y1="-4.3053" x2="4.7371" y2="-4.2799" layer="21"/>
+<rectangle x1="4.9149" y1="-4.3053" x2="5.2959" y2="-4.2799" layer="21"/>
+<rectangle x1="-5.6261" y1="-4.2799" x2="-5.3213" y2="-4.2545" layer="21"/>
+<rectangle x1="-2.9845" y1="-4.2799" x2="-2.6543" y2="-4.2545" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.2799" x2="-2.0447" y2="-4.2545" layer="21"/>
+<rectangle x1="-1.9177" y1="-4.2799" x2="-1.2319" y2="-4.2545" layer="21"/>
+<rectangle x1="-0.3175" y1="-4.2799" x2="-0.0127" y2="-4.2545" layer="21"/>
+<rectangle x1="0.2413" y1="-4.2799" x2="0.5715" y2="-4.2545" layer="21"/>
+<rectangle x1="1.2319" y1="-4.2799" x2="1.5367" y2="-4.2545" layer="21"/>
+<rectangle x1="3.3401" y1="-4.2799" x2="3.6449" y2="-4.2545" layer="21"/>
+<rectangle x1="4.6355" y1="-4.2799" x2="4.7371" y2="-4.2545" layer="21"/>
+<rectangle x1="4.8895" y1="-4.2799" x2="5.2705" y2="-4.2545" layer="21"/>
+<rectangle x1="-5.6261" y1="-4.2545" x2="-5.3213" y2="-4.2291" layer="21"/>
+<rectangle x1="-2.9845" y1="-4.2545" x2="-2.6543" y2="-4.2291" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.2545" x2="-2.0447" y2="-4.2291" layer="21"/>
+<rectangle x1="-1.9177" y1="-4.2545" x2="-1.2573" y2="-4.2291" layer="21"/>
+<rectangle x1="-0.3175" y1="-4.2545" x2="-0.0127" y2="-4.2291" layer="21"/>
+<rectangle x1="0.2413" y1="-4.2545" x2="0.5715" y2="-4.2291" layer="21"/>
+<rectangle x1="1.2319" y1="-4.2545" x2="1.5367" y2="-4.2291" layer="21"/>
+<rectangle x1="3.3401" y1="-4.2545" x2="3.6449" y2="-4.2291" layer="21"/>
+<rectangle x1="4.8641" y1="-4.2545" x2="5.2451" y2="-4.2291" layer="21"/>
+<rectangle x1="-5.6261" y1="-4.2291" x2="-5.3213" y2="-4.2037" layer="21"/>
+<rectangle x1="-2.9845" y1="-4.2291" x2="-2.6543" y2="-4.2037" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.2291" x2="-2.0447" y2="-4.2037" layer="21"/>
+<rectangle x1="-1.9177" y1="-4.2291" x2="-1.3081" y2="-4.2037" layer="21"/>
+<rectangle x1="-0.3175" y1="-4.2291" x2="-0.0127" y2="-4.2037" layer="21"/>
+<rectangle x1="0.2413" y1="-4.2291" x2="0.8763" y2="-4.2037" layer="21"/>
+<rectangle x1="1.2319" y1="-4.2291" x2="1.5367" y2="-4.2037" layer="21"/>
+<rectangle x1="3.3401" y1="-4.2291" x2="3.6449" y2="-4.2037" layer="21"/>
+<rectangle x1="4.8387" y1="-4.2291" x2="5.2451" y2="-4.2037" layer="21"/>
+<rectangle x1="-5.6261" y1="-4.2037" x2="-5.3213" y2="-4.1783" layer="21"/>
+<rectangle x1="-2.9845" y1="-4.2037" x2="-2.6543" y2="-4.1783" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.2037" x2="-2.0447" y2="-4.1783" layer="21"/>
+<rectangle x1="-1.9177" y1="-4.2037" x2="-1.3589" y2="-4.1783" layer="21"/>
+<rectangle x1="-0.3175" y1="-4.2037" x2="-0.0127" y2="-4.1783" layer="21"/>
+<rectangle x1="0.2413" y1="-4.2037" x2="0.8763" y2="-4.1783" layer="21"/>
+<rectangle x1="1.2065" y1="-4.2037" x2="1.5367" y2="-4.1783" layer="21"/>
+<rectangle x1="3.3401" y1="-4.2037" x2="3.6449" y2="-4.1783" layer="21"/>
+<rectangle x1="4.8387" y1="-4.2037" x2="5.2197" y2="-4.1783" layer="21"/>
+<rectangle x1="-5.6261" y1="-4.1783" x2="-5.3467" y2="-4.1529" layer="21"/>
+<rectangle x1="-2.9845" y1="-4.1783" x2="-2.6289" y2="-4.1529" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.1783" x2="-2.0447" y2="-4.1529" layer="21"/>
+<rectangle x1="-1.8923" y1="-4.1783" x2="-1.4097" y2="-4.1529" layer="21"/>
+<rectangle x1="-0.3175" y1="-4.1783" x2="-0.0127" y2="-4.1529" layer="21"/>
+<rectangle x1="0.2413" y1="-4.1783" x2="0.8763" y2="-4.1529" layer="21"/>
+<rectangle x1="1.2065" y1="-4.1783" x2="1.5113" y2="-4.1529" layer="21"/>
+<rectangle x1="3.3401" y1="-4.1783" x2="3.6449" y2="-4.1529" layer="21"/>
+<rectangle x1="4.8133" y1="-4.1783" x2="5.1943" y2="-4.1529" layer="21"/>
+<rectangle x1="-5.6261" y1="-4.1529" x2="-5.3467" y2="-4.1275" layer="21"/>
+<rectangle x1="-2.9591" y1="-4.1529" x2="-2.6289" y2="-4.1275" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.1529" x2="-2.0447" y2="-4.1275" layer="21"/>
+<rectangle x1="-1.7907" y1="-4.1529" x2="-1.5113" y2="-4.1275" layer="21"/>
+<rectangle x1="-0.3175" y1="-4.1529" x2="-0.0127" y2="-4.1275" layer="21"/>
+<rectangle x1="0.2413" y1="-4.1529" x2="0.8763" y2="-4.1275" layer="21"/>
+<rectangle x1="1.2065" y1="-4.1529" x2="1.5113" y2="-4.1275" layer="21"/>
+<rectangle x1="3.3401" y1="-4.1529" x2="3.6449" y2="-4.1275" layer="21"/>
+<rectangle x1="4.7879" y1="-4.1529" x2="5.1689" y2="-4.1275" layer="21"/>
+<rectangle x1="-5.6261" y1="-4.1275" x2="-5.3467" y2="-4.1021" layer="21"/>
+<rectangle x1="-2.9591" y1="-4.1275" x2="-2.6289" y2="-4.1021" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.1275" x2="-2.0447" y2="-4.1021" layer="21"/>
+<rectangle x1="-0.3175" y1="-4.1275" x2="-0.0127" y2="-4.1021" layer="21"/>
+<rectangle x1="0.2413" y1="-4.1275" x2="0.8763" y2="-4.1021" layer="21"/>
+<rectangle x1="1.2065" y1="-4.1275" x2="1.5113" y2="-4.1021" layer="21"/>
+<rectangle x1="3.3401" y1="-4.1275" x2="3.6449" y2="-4.1021" layer="21"/>
+<rectangle x1="4.7625" y1="-4.1275" x2="5.1435" y2="-4.1021" layer="21"/>
+<rectangle x1="-5.6261" y1="-4.1021" x2="-5.3467" y2="-4.0767" layer="21"/>
+<rectangle x1="-2.9591" y1="-4.1021" x2="-2.6289" y2="-4.0767" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.1021" x2="-2.0447" y2="-4.0767" layer="21"/>
+<rectangle x1="-0.3175" y1="-4.1021" x2="-0.0127" y2="-4.0767" layer="21"/>
+<rectangle x1="0.2413" y1="-4.1021" x2="0.8763" y2="-4.0767" layer="21"/>
+<rectangle x1="1.2065" y1="-4.1021" x2="1.5113" y2="-4.0767" layer="21"/>
+<rectangle x1="3.3401" y1="-4.1021" x2="3.6449" y2="-4.0767" layer="21"/>
+<rectangle x1="4.7371" y1="-4.1021" x2="5.1435" y2="-4.0767" layer="21"/>
+<rectangle x1="-5.6261" y1="-4.0767" x2="-5.3467" y2="-4.0513" layer="21"/>
+<rectangle x1="-2.9591" y1="-4.0767" x2="-2.6289" y2="-4.0513" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.0767" x2="-2.0447" y2="-4.0513" layer="21"/>
+<rectangle x1="-0.3175" y1="-4.0767" x2="-0.0127" y2="-4.0513" layer="21"/>
+<rectangle x1="0.2413" y1="-4.0767" x2="0.8763" y2="-4.0513" layer="21"/>
+<rectangle x1="1.2065" y1="-4.0767" x2="1.5113" y2="-4.0513" layer="21"/>
+<rectangle x1="3.3401" y1="-4.0767" x2="3.6449" y2="-4.0513" layer="21"/>
+<rectangle x1="4.7371" y1="-4.0767" x2="5.1181" y2="-4.0513" layer="21"/>
+<rectangle x1="-5.6261" y1="-4.0513" x2="-5.3467" y2="-4.0259" layer="21"/>
+<rectangle x1="-2.9591" y1="-4.0513" x2="-2.6289" y2="-4.0259" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.0513" x2="-2.0447" y2="-4.0259" layer="21"/>
+<rectangle x1="-0.3175" y1="-4.0513" x2="-0.0127" y2="-4.0259" layer="21"/>
+<rectangle x1="0.2413" y1="-4.0513" x2="0.8763" y2="-4.0259" layer="21"/>
+<rectangle x1="1.2065" y1="-4.0513" x2="1.5113" y2="-4.0259" layer="21"/>
+<rectangle x1="3.3401" y1="-4.0513" x2="3.6449" y2="-4.0259" layer="21"/>
+<rectangle x1="4.7117" y1="-4.0513" x2="5.0927" y2="-4.0259" layer="21"/>
+<rectangle x1="-5.6261" y1="-4.0259" x2="-5.3467" y2="-4.0005" layer="21"/>
+<rectangle x1="-2.9591" y1="-4.0259" x2="-2.6289" y2="-4.0005" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.0259" x2="-2.0447" y2="-4.0005" layer="21"/>
+<rectangle x1="-0.3175" y1="-4.0259" x2="-0.0127" y2="-4.0005" layer="21"/>
+<rectangle x1="0.2413" y1="-4.0259" x2="0.8763" y2="-4.0005" layer="21"/>
+<rectangle x1="1.2065" y1="-4.0259" x2="1.5113" y2="-4.0005" layer="21"/>
+<rectangle x1="3.3401" y1="-4.0259" x2="3.6449" y2="-4.0005" layer="21"/>
+<rectangle x1="4.6863" y1="-4.0259" x2="5.0673" y2="-4.0005" layer="21"/>
+<rectangle x1="-5.6261" y1="-4.0005" x2="-5.3467" y2="-3.9751" layer="21"/>
+<rectangle x1="-2.9591" y1="-4.0005" x2="-2.6289" y2="-3.9751" layer="21"/>
+<rectangle x1="-2.3495" y1="-4.0005" x2="-2.0447" y2="-3.9751" layer="21"/>
+<rectangle x1="-0.3175" y1="-4.0005" x2="-0.0127" y2="-3.9751" layer="21"/>
+<rectangle x1="0.2413" y1="-4.0005" x2="0.8763" y2="-3.9751" layer="21"/>
+<rectangle x1="1.2065" y1="-4.0005" x2="1.5113" y2="-3.9751" layer="21"/>
+<rectangle x1="3.3401" y1="-4.0005" x2="3.6449" y2="-3.9751" layer="21"/>
+<rectangle x1="4.6609" y1="-4.0005" x2="5.0673" y2="-3.9751" layer="21"/>
+<rectangle x1="-5.6261" y1="-3.9751" x2="-5.3467" y2="-3.9497" layer="21"/>
+<rectangle x1="-2.9591" y1="-3.9751" x2="-2.6289" y2="-3.9497" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.9751" x2="-2.0447" y2="-3.9497" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.9751" x2="-0.0127" y2="-3.9497" layer="21"/>
+<rectangle x1="0.2413" y1="-3.9751" x2="0.8763" y2="-3.9497" layer="21"/>
+<rectangle x1="1.2065" y1="-3.9751" x2="1.5113" y2="-3.9497" layer="21"/>
+<rectangle x1="3.3401" y1="-3.9751" x2="3.6449" y2="-3.9497" layer="21"/>
+<rectangle x1="4.6355" y1="-3.9751" x2="5.0419" y2="-3.9497" layer="21"/>
+<rectangle x1="-5.6261" y1="-3.9497" x2="-5.3213" y2="-3.9243" layer="21"/>
+<rectangle x1="-2.9591" y1="-3.9497" x2="-2.6289" y2="-3.9243" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.9497" x2="-2.0447" y2="-3.9243" layer="21"/>
+<rectangle x1="-1.8415" y1="-3.9497" x2="-1.4605" y2="-3.9243" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.9497" x2="-0.0127" y2="-3.9243" layer="21"/>
+<rectangle x1="0.2413" y1="-3.9497" x2="0.8763" y2="-3.9243" layer="21"/>
+<rectangle x1="1.2065" y1="-3.9497" x2="1.5113" y2="-3.9243" layer="21"/>
+<rectangle x1="3.3401" y1="-3.9497" x2="3.6449" y2="-3.9243" layer="21"/>
+<rectangle x1="4.6355" y1="-3.9497" x2="5.0165" y2="-3.9243" layer="21"/>
+<rectangle x1="-5.6261" y1="-3.9243" x2="-5.3213" y2="-3.8989" layer="21"/>
+<rectangle x1="-2.9591" y1="-3.9243" x2="-2.6289" y2="-3.8989" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.9243" x2="-2.0447" y2="-3.8989" layer="21"/>
+<rectangle x1="-1.9177" y1="-3.9243" x2="-1.3843" y2="-3.8989" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.9243" x2="-0.0127" y2="-3.8989" layer="21"/>
+<rectangle x1="0.2413" y1="-3.9243" x2="0.8763" y2="-3.8989" layer="21"/>
+<rectangle x1="1.2065" y1="-3.9243" x2="1.5113" y2="-3.8989" layer="21"/>
+<rectangle x1="3.3401" y1="-3.9243" x2="3.6449" y2="-3.8989" layer="21"/>
+<rectangle x1="4.6101" y1="-3.9243" x2="4.9911" y2="-3.8989" layer="21"/>
+<rectangle x1="-5.6261" y1="-3.8989" x2="-5.3213" y2="-3.8735" layer="21"/>
+<rectangle x1="-2.9591" y1="-3.8989" x2="-2.6289" y2="-3.8735" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.8989" x2="-2.0447" y2="-3.8735" layer="21"/>
+<rectangle x1="-1.9177" y1="-3.8989" x2="-1.3335" y2="-3.8735" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.8989" x2="-0.0127" y2="-3.8735" layer="21"/>
+<rectangle x1="0.2413" y1="-3.8989" x2="0.5715" y2="-3.8735" layer="21"/>
+<rectangle x1="1.2065" y1="-3.8989" x2="1.5367" y2="-3.8735" layer="21"/>
+<rectangle x1="3.3401" y1="-3.8989" x2="3.6449" y2="-3.8735" layer="21"/>
+<rectangle x1="4.5847" y1="-3.8989" x2="4.9657" y2="-3.8735" layer="21"/>
+<rectangle x1="-5.6261" y1="-3.8735" x2="-5.3213" y2="-3.8481" layer="21"/>
+<rectangle x1="-2.9591" y1="-3.8735" x2="-2.6289" y2="-3.8481" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.8735" x2="-2.0447" y2="-3.8481" layer="21"/>
+<rectangle x1="-1.9177" y1="-3.8735" x2="-1.2827" y2="-3.8481" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.8735" x2="-0.0127" y2="-3.8481" layer="21"/>
+<rectangle x1="0.2413" y1="-3.8735" x2="0.5715" y2="-3.8481" layer="21"/>
+<rectangle x1="1.2065" y1="-3.8735" x2="1.5367" y2="-3.8481" layer="21"/>
+<rectangle x1="3.3401" y1="-3.8735" x2="3.6449" y2="-3.8481" layer="21"/>
+<rectangle x1="4.5593" y1="-3.8735" x2="4.9403" y2="-3.8481" layer="21"/>
+<rectangle x1="-5.6007" y1="-3.8481" x2="-5.3213" y2="-3.8227" layer="21"/>
+<rectangle x1="-2.9845" y1="-3.8481" x2="-2.6543" y2="-3.8227" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.8481" x2="-2.0447" y2="-3.8227" layer="21"/>
+<rectangle x1="-1.9177" y1="-3.8481" x2="-1.2319" y2="-3.8227" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.8481" x2="-0.0127" y2="-3.8227" layer="21"/>
+<rectangle x1="0.2413" y1="-3.8481" x2="0.5715" y2="-3.8227" layer="21"/>
+<rectangle x1="1.2319" y1="-3.8481" x2="1.5367" y2="-3.8227" layer="21"/>
+<rectangle x1="3.3401" y1="-3.8481" x2="3.6449" y2="-3.8227" layer="21"/>
+<rectangle x1="4.5593" y1="-3.8481" x2="4.9403" y2="-3.8227" layer="21"/>
+<rectangle x1="5.0927" y1="-3.8481" x2="5.1943" y2="-3.8227" layer="21"/>
+<rectangle x1="-5.6007" y1="-3.8227" x2="-5.3213" y2="-3.7973" layer="21"/>
+<rectangle x1="-2.9845" y1="-3.8227" x2="-2.6543" y2="-3.7973" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.8227" x2="-2.0447" y2="-3.7973" layer="21"/>
+<rectangle x1="-1.9177" y1="-3.8227" x2="-1.2065" y2="-3.7973" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.8227" x2="-0.0127" y2="-3.7973" layer="21"/>
+<rectangle x1="0.2413" y1="-3.8227" x2="0.5715" y2="-3.7973" layer="21"/>
+<rectangle x1="1.2319" y1="-3.8227" x2="1.5367" y2="-3.7973" layer="21"/>
+<rectangle x1="3.3401" y1="-3.8227" x2="3.6449" y2="-3.7973" layer="21"/>
+<rectangle x1="4.5339" y1="-3.8227" x2="4.9149" y2="-3.7973" layer="21"/>
+<rectangle x1="5.0673" y1="-3.8227" x2="5.2451" y2="-3.7973" layer="21"/>
+<rectangle x1="-5.6007" y1="-3.7973" x2="-5.3213" y2="-3.7719" layer="21"/>
+<rectangle x1="-2.9845" y1="-3.7973" x2="-2.6543" y2="-3.7719" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.7973" x2="-2.0447" y2="-3.7719" layer="21"/>
+<rectangle x1="-1.9177" y1="-3.7973" x2="-1.1811" y2="-3.7719" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.7973" x2="-0.0127" y2="-3.7719" layer="21"/>
+<rectangle x1="0.2413" y1="-3.7973" x2="0.5715" y2="-3.7719" layer="21"/>
+<rectangle x1="1.2319" y1="-3.7973" x2="1.5367" y2="-3.7719" layer="21"/>
+<rectangle x1="3.3401" y1="-3.7973" x2="3.6449" y2="-3.7719" layer="21"/>
+<rectangle x1="4.5085" y1="-3.7973" x2="4.8895" y2="-3.7719" layer="21"/>
+<rectangle x1="5.0419" y1="-3.7973" x2="5.2959" y2="-3.7719" layer="21"/>
+<rectangle x1="-5.6007" y1="-3.7719" x2="-5.3213" y2="-3.7465" layer="21"/>
+<rectangle x1="-2.9845" y1="-3.7719" x2="-2.6543" y2="-3.7465" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.7719" x2="-2.0447" y2="-3.7465" layer="21"/>
+<rectangle x1="-1.9177" y1="-3.7719" x2="-1.1557" y2="-3.7465" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.7719" x2="-0.0127" y2="-3.7465" layer="21"/>
+<rectangle x1="0.2413" y1="-3.7719" x2="0.5715" y2="-3.7465" layer="21"/>
+<rectangle x1="1.2319" y1="-3.7719" x2="1.5367" y2="-3.7465" layer="21"/>
+<rectangle x1="3.3401" y1="-3.7719" x2="3.6449" y2="-3.7465" layer="21"/>
+<rectangle x1="4.4831" y1="-3.7719" x2="4.8641" y2="-3.7465" layer="21"/>
+<rectangle x1="5.0165" y1="-3.7719" x2="5.3213" y2="-3.7465" layer="21"/>
+<rectangle x1="-5.6007" y1="-3.7465" x2="-5.2959" y2="-3.7211" layer="21"/>
+<rectangle x1="-2.9845" y1="-3.7465" x2="-2.6543" y2="-3.7211" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.7465" x2="-2.0447" y2="-3.7211" layer="21"/>
+<rectangle x1="-1.9177" y1="-3.7465" x2="-1.1303" y2="-3.7211" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.7465" x2="-0.0127" y2="-3.7211" layer="21"/>
+<rectangle x1="0.2413" y1="-3.7465" x2="0.5715" y2="-3.7211" layer="21"/>
+<rectangle x1="1.2319" y1="-3.7465" x2="1.5621" y2="-3.7211" layer="21"/>
+<rectangle x1="3.3401" y1="-3.7465" x2="3.6449" y2="-3.7211" layer="21"/>
+<rectangle x1="4.4577" y1="-3.7465" x2="4.8641" y2="-3.7211" layer="21"/>
+<rectangle x1="5.0165" y1="-3.7465" x2="5.3467" y2="-3.7211" layer="21"/>
+<rectangle x1="-5.6007" y1="-3.7211" x2="-5.2959" y2="-3.6957" layer="21"/>
+<rectangle x1="-3.0099" y1="-3.7211" x2="-2.6543" y2="-3.6957" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.7211" x2="-2.0447" y2="-3.6957" layer="21"/>
+<rectangle x1="-1.9177" y1="-3.7211" x2="-1.1049" y2="-3.6957" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.7211" x2="-0.0127" y2="-3.6957" layer="21"/>
+<rectangle x1="0.2413" y1="-3.7211" x2="0.5715" y2="-3.6957" layer="21"/>
+<rectangle x1="1.2319" y1="-3.7211" x2="1.5621" y2="-3.6957" layer="21"/>
+<rectangle x1="3.3401" y1="-3.7211" x2="3.6449" y2="-3.6957" layer="21"/>
+<rectangle x1="4.4323" y1="-3.7211" x2="4.8387" y2="-3.6957" layer="21"/>
+<rectangle x1="4.9911" y1="-3.7211" x2="5.3721" y2="-3.6957" layer="21"/>
+<rectangle x1="-5.5753" y1="-3.6957" x2="-5.2959" y2="-3.6703" layer="21"/>
+<rectangle x1="-3.0099" y1="-3.6957" x2="-2.6797" y2="-3.6703" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.6957" x2="-2.0447" y2="-3.6703" layer="21"/>
+<rectangle x1="-1.9177" y1="-3.6957" x2="-1.1049" y2="-3.6703" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.6957" x2="-0.0127" y2="-3.6703" layer="21"/>
+<rectangle x1="0.2413" y1="-3.6957" x2="0.5715" y2="-3.6703" layer="21"/>
+<rectangle x1="1.2573" y1="-3.6957" x2="1.5621" y2="-3.6703" layer="21"/>
+<rectangle x1="3.3401" y1="-3.6957" x2="3.6449" y2="-3.6703" layer="21"/>
+<rectangle x1="4.4323" y1="-3.6957" x2="4.8133" y2="-3.6703" layer="21"/>
+<rectangle x1="4.9657" y1="-3.6957" x2="5.3975" y2="-3.6703" layer="21"/>
+<rectangle x1="-5.5753" y1="-3.6703" x2="-5.2959" y2="-3.6449" layer="21"/>
+<rectangle x1="-3.0099" y1="-3.6703" x2="-2.6797" y2="-3.6449" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.6703" x2="-2.0447" y2="-3.6449" layer="21"/>
+<rectangle x1="-1.9177" y1="-3.6703" x2="-1.0795" y2="-3.6449" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.6703" x2="-0.0127" y2="-3.6449" layer="21"/>
+<rectangle x1="0.2413" y1="-3.6703" x2="0.5715" y2="-3.6449" layer="21"/>
+<rectangle x1="1.2573" y1="-3.6703" x2="1.5621" y2="-3.6449" layer="21"/>
+<rectangle x1="3.3401" y1="-3.6703" x2="3.6449" y2="-3.6449" layer="21"/>
+<rectangle x1="4.4069" y1="-3.6703" x2="4.7879" y2="-3.6449" layer="21"/>
+<rectangle x1="4.9403" y1="-3.6703" x2="5.4229" y2="-3.6449" layer="21"/>
+<rectangle x1="-5.5753" y1="-3.6449" x2="-5.2705" y2="-3.6195" layer="21"/>
+<rectangle x1="-3.0353" y1="-3.6449" x2="-2.6797" y2="-3.6195" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.6449" x2="-2.0447" y2="-3.6195" layer="21"/>
+<rectangle x1="-1.9177" y1="-3.6449" x2="-1.7399" y2="-3.6195" layer="21"/>
+<rectangle x1="-1.5621" y1="-3.6449" x2="-1.0541" y2="-3.6195" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.6449" x2="-0.0127" y2="-3.6195" layer="21"/>
+<rectangle x1="0.2667" y1="-3.6449" x2="0.5715" y2="-3.6195" layer="21"/>
+<rectangle x1="1.2573" y1="-3.6449" x2="1.5875" y2="-3.6195" layer="21"/>
+<rectangle x1="3.3401" y1="-3.6449" x2="3.6449" y2="-3.6195" layer="21"/>
+<rectangle x1="4.3815" y1="-3.6449" x2="4.7879" y2="-3.6195" layer="21"/>
+<rectangle x1="4.9149" y1="-3.6449" x2="5.4483" y2="-3.6195" layer="21"/>
+<rectangle x1="-5.5753" y1="-3.6195" x2="-5.2705" y2="-3.5941" layer="21"/>
+<rectangle x1="-3.0353" y1="-3.6195" x2="-2.6797" y2="-3.5941" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.6195" x2="-2.0447" y2="-3.5941" layer="21"/>
+<rectangle x1="-1.9177" y1="-3.6195" x2="-1.8161" y2="-3.5941" layer="21"/>
+<rectangle x1="-1.4859" y1="-3.6195" x2="-1.0287" y2="-3.5941" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.6195" x2="-0.0127" y2="-3.5941" layer="21"/>
+<rectangle x1="0.2667" y1="-3.6195" x2="0.5715" y2="-3.5941" layer="21"/>
+<rectangle x1="1.2573" y1="-3.6195" x2="1.5875" y2="-3.5941" layer="21"/>
+<rectangle x1="3.3401" y1="-3.6195" x2="3.6449" y2="-3.5941" layer="21"/>
+<rectangle x1="4.3561" y1="-3.6195" x2="4.7625" y2="-3.5941" layer="21"/>
+<rectangle x1="4.9149" y1="-3.6195" x2="5.4737" y2="-3.5941" layer="21"/>
+<rectangle x1="-5.5499" y1="-3.5941" x2="-5.2451" y2="-3.5687" layer="21"/>
+<rectangle x1="-3.0353" y1="-3.5941" x2="-2.7051" y2="-3.5687" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.5941" x2="-2.0447" y2="-3.5687" layer="21"/>
+<rectangle x1="-1.9177" y1="-3.5941" x2="-1.8669" y2="-3.5687" layer="21"/>
+<rectangle x1="-1.4351" y1="-3.5941" x2="-1.0287" y2="-3.5687" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.5941" x2="-0.0127" y2="-3.5687" layer="21"/>
+<rectangle x1="0.2667" y1="-3.5941" x2="0.5715" y2="-3.5687" layer="21"/>
+<rectangle x1="1.2827" y1="-3.5941" x2="1.5875" y2="-3.5687" layer="21"/>
+<rectangle x1="3.3401" y1="-3.5941" x2="3.6449" y2="-3.5687" layer="21"/>
+<rectangle x1="4.3561" y1="-3.5941" x2="4.7371" y2="-3.5687" layer="21"/>
+<rectangle x1="4.9911" y1="-3.5941" x2="5.4991" y2="-3.5687" layer="21"/>
+<rectangle x1="-5.5499" y1="-3.5687" x2="-5.2451" y2="-3.5433" layer="21"/>
+<rectangle x1="-3.0607" y1="-3.5687" x2="-2.7051" y2="-3.5433" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.5687" x2="-2.0447" y2="-3.5433" layer="21"/>
+<rectangle x1="-1.4097" y1="-3.5687" x2="-1.0033" y2="-3.5433" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.5687" x2="-0.0127" y2="-3.5433" layer="21"/>
+<rectangle x1="0.2667" y1="-3.5687" x2="0.5715" y2="-3.5433" layer="21"/>
+<rectangle x1="1.2827" y1="-3.5687" x2="1.6129" y2="-3.5433" layer="21"/>
+<rectangle x1="3.3401" y1="-3.5687" x2="3.6449" y2="-3.5433" layer="21"/>
+<rectangle x1="4.3307" y1="-3.5687" x2="4.7117" y2="-3.5433" layer="21"/>
+<rectangle x1="5.0673" y1="-3.5687" x2="5.4991" y2="-3.5433" layer="21"/>
+<rectangle x1="-5.5499" y1="-3.5433" x2="-5.2451" y2="-3.5179" layer="21"/>
+<rectangle x1="-3.0607" y1="-3.5433" x2="-2.7051" y2="-3.5179" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.5433" x2="-2.0447" y2="-3.5179" layer="21"/>
+<rectangle x1="-1.3589" y1="-3.5433" x2="-1.0033" y2="-3.5179" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.5433" x2="-0.0127" y2="-3.5179" layer="21"/>
+<rectangle x1="0.2667" y1="-3.5433" x2="0.5715" y2="-3.5179" layer="21"/>
+<rectangle x1="1.2827" y1="-3.5433" x2="1.6129" y2="-3.5179" layer="21"/>
+<rectangle x1="3.3401" y1="-3.5433" x2="3.6449" y2="-3.5179" layer="21"/>
+<rectangle x1="4.3053" y1="-3.5433" x2="4.6863" y2="-3.5179" layer="21"/>
+<rectangle x1="5.1181" y1="-3.5433" x2="5.5245" y2="-3.5179" layer="21"/>
+<rectangle x1="-5.5245" y1="-3.5179" x2="-5.2197" y2="-3.4925" layer="21"/>
+<rectangle x1="-3.0607" y1="-3.5179" x2="-2.7305" y2="-3.4925" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.5179" x2="-2.0447" y2="-3.4925" layer="21"/>
+<rectangle x1="-1.3335" y1="-3.5179" x2="-0.9779" y2="-3.4925" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.5179" x2="-0.0127" y2="-3.4925" layer="21"/>
+<rectangle x1="0.2667" y1="-3.5179" x2="0.5969" y2="-3.4925" layer="21"/>
+<rectangle x1="1.3081" y1="-3.5179" x2="1.6383" y2="-3.4925" layer="21"/>
+<rectangle x1="3.3401" y1="-3.5179" x2="3.6449" y2="-3.4925" layer="21"/>
+<rectangle x1="4.3053" y1="-3.5179" x2="4.6863" y2="-3.4925" layer="21"/>
+<rectangle x1="5.1435" y1="-3.5179" x2="5.5245" y2="-3.4925" layer="21"/>
+<rectangle x1="-5.5245" y1="-3.4925" x2="-5.2197" y2="-3.4671" layer="21"/>
+<rectangle x1="-3.0861" y1="-3.4925" x2="-2.7305" y2="-3.4671" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.4925" x2="-2.0447" y2="-3.4671" layer="21"/>
+<rectangle x1="-1.3335" y1="-3.4925" x2="-0.9779" y2="-3.4671" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.4925" x2="-0.0127" y2="-3.4671" layer="21"/>
+<rectangle x1="0.2667" y1="-3.4925" x2="0.5969" y2="-3.4671" layer="21"/>
+<rectangle x1="1.3081" y1="-3.4925" x2="1.6383" y2="-3.4671" layer="21"/>
+<rectangle x1="3.3401" y1="-3.4925" x2="3.6449" y2="-3.4671" layer="21"/>
+<rectangle x1="4.2799" y1="-3.4925" x2="4.6609" y2="-3.4671" layer="21"/>
+<rectangle x1="5.1689" y1="-3.4925" x2="5.5499" y2="-3.4671" layer="21"/>
+<rectangle x1="-5.4991" y1="-3.4671" x2="-5.1943" y2="-3.4417" layer="21"/>
+<rectangle x1="-3.0861" y1="-3.4671" x2="-2.7559" y2="-3.4417" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.4671" x2="-2.0447" y2="-3.4417" layer="21"/>
+<rectangle x1="-1.3081" y1="-3.4671" x2="-0.9779" y2="-3.4417" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.4671" x2="-0.0127" y2="-3.4417" layer="21"/>
+<rectangle x1="0.2921" y1="-3.4671" x2="0.5969" y2="-3.4417" layer="21"/>
+<rectangle x1="1.3335" y1="-3.4671" x2="1.6637" y2="-3.4417" layer="21"/>
+<rectangle x1="3.3401" y1="-3.4671" x2="3.6449" y2="-3.4417" layer="21"/>
+<rectangle x1="4.2799" y1="-3.4671" x2="4.6355" y2="-3.4417" layer="21"/>
+<rectangle x1="5.1943" y1="-3.4671" x2="5.5499" y2="-3.4417" layer="21"/>
+<rectangle x1="-5.4991" y1="-3.4417" x2="-5.1943" y2="-3.4163" layer="21"/>
+<rectangle x1="-3.1115" y1="-3.4417" x2="-2.7559" y2="-3.4163" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.4417" x2="-2.0447" y2="-3.4163" layer="21"/>
+<rectangle x1="-1.3081" y1="-3.4417" x2="-0.9525" y2="-3.4163" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.4417" x2="-0.0127" y2="-3.4163" layer="21"/>
+<rectangle x1="0.2921" y1="-3.4417" x2="0.5969" y2="-3.4163" layer="21"/>
+<rectangle x1="1.3335" y1="-3.4417" x2="1.6637" y2="-3.4163" layer="21"/>
+<rectangle x1="3.3401" y1="-3.4417" x2="3.6449" y2="-3.4163" layer="21"/>
+<rectangle x1="4.2799" y1="-3.4417" x2="4.6101" y2="-3.4163" layer="21"/>
+<rectangle x1="5.2197" y1="-3.4417" x2="5.5499" y2="-3.4163" layer="21"/>
+<rectangle x1="-5.4737" y1="-3.4163" x2="-5.1689" y2="-3.3909" layer="21"/>
+<rectangle x1="-3.1369" y1="-3.4163" x2="-2.7559" y2="-3.3909" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.4163" x2="-2.0447" y2="-3.3909" layer="21"/>
+<rectangle x1="-1.2827" y1="-3.4163" x2="-0.9525" y2="-3.3909" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.4163" x2="-0.0127" y2="-3.3909" layer="21"/>
+<rectangle x1="0.2921" y1="-3.4163" x2="0.6223" y2="-3.3909" layer="21"/>
+<rectangle x1="1.3335" y1="-3.4163" x2="1.6891" y2="-3.3909" layer="21"/>
+<rectangle x1="3.3401" y1="-3.4163" x2="3.6449" y2="-3.3909" layer="21"/>
+<rectangle x1="4.2545" y1="-3.4163" x2="4.6101" y2="-3.3909" layer="21"/>
+<rectangle x1="5.2451" y1="-3.4163" x2="5.5753" y2="-3.3909" layer="21"/>
+<rectangle x1="-5.4737" y1="-3.3909" x2="-5.1689" y2="-3.3655" layer="21"/>
+<rectangle x1="-3.1369" y1="-3.3909" x2="-2.7813" y2="-3.3655" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.3909" x2="-2.0447" y2="-3.3655" layer="21"/>
+<rectangle x1="-1.2827" y1="-3.3909" x2="-0.9525" y2="-3.3655" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.3909" x2="-0.0127" y2="-3.3655" layer="21"/>
+<rectangle x1="0.2921" y1="-3.3909" x2="0.6223" y2="-3.3655" layer="21"/>
+<rectangle x1="1.3589" y1="-3.3909" x2="1.6891" y2="-3.3655" layer="21"/>
+<rectangle x1="3.3401" y1="-3.3909" x2="3.6449" y2="-3.3655" layer="21"/>
+<rectangle x1="4.2545" y1="-3.3909" x2="4.5847" y2="-3.3655" layer="21"/>
+<rectangle x1="5.2451" y1="-3.3909" x2="5.5753" y2="-3.3655" layer="21"/>
+<rectangle x1="-5.4737" y1="-3.3655" x2="-5.1435" y2="-3.3401" layer="21"/>
+<rectangle x1="-3.1623" y1="-3.3655" x2="-2.7813" y2="-3.3401" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.3655" x2="-2.0447" y2="-3.3401" layer="21"/>
+<rectangle x1="-1.2827" y1="-3.3655" x2="-0.9525" y2="-3.3401" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.3655" x2="-0.0127" y2="-3.3401" layer="21"/>
+<rectangle x1="0.3175" y1="-3.3655" x2="0.6223" y2="-3.3401" layer="21"/>
+<rectangle x1="1.3589" y1="-3.3655" x2="1.7145" y2="-3.3401" layer="21"/>
+<rectangle x1="3.3401" y1="-3.3655" x2="3.6449" y2="-3.3401" layer="21"/>
+<rectangle x1="4.2545" y1="-3.3655" x2="4.5847" y2="-3.3401" layer="21"/>
+<rectangle x1="5.2705" y1="-3.3655" x2="5.5753" y2="-3.3401" layer="21"/>
+<rectangle x1="-5.4483" y1="-3.3401" x2="-5.1181" y2="-3.3147" layer="21"/>
+<rectangle x1="-3.1623" y1="-3.3401" x2="-2.8067" y2="-3.3147" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.3401" x2="-2.0447" y2="-3.3147" layer="21"/>
+<rectangle x1="-1.2573" y1="-3.3401" x2="-0.9525" y2="-3.3147" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.3401" x2="-0.0127" y2="-3.3147" layer="21"/>
+<rectangle x1="0.3175" y1="-3.3401" x2="0.6477" y2="-3.3147" layer="21"/>
+<rectangle x1="1.3843" y1="-3.3401" x2="1.7399" y2="-3.3147" layer="21"/>
+<rectangle x1="3.3401" y1="-3.3401" x2="3.6449" y2="-3.3147" layer="21"/>
+<rectangle x1="4.2545" y1="-3.3401" x2="4.5593" y2="-3.3147" layer="21"/>
+<rectangle x1="5.2705" y1="-3.3401" x2="5.5753" y2="-3.3147" layer="21"/>
+<rectangle x1="-5.4229" y1="-3.3147" x2="-5.0927" y2="-3.2893" layer="21"/>
+<rectangle x1="-3.1877" y1="-3.3147" x2="-2.8067" y2="-3.2893" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.3147" x2="-2.0447" y2="-3.2893" layer="21"/>
+<rectangle x1="-1.2573" y1="-3.3147" x2="-0.9525" y2="-3.2893" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.3147" x2="-0.0127" y2="-3.2893" layer="21"/>
+<rectangle x1="0.3175" y1="-3.3147" x2="0.6477" y2="-3.2893" layer="21"/>
+<rectangle x1="1.3843" y1="-3.3147" x2="1.7399" y2="-3.2893" layer="21"/>
+<rectangle x1="3.3401" y1="-3.3147" x2="3.6449" y2="-3.2893" layer="21"/>
+<rectangle x1="4.2545" y1="-3.3147" x2="4.5593" y2="-3.2893" layer="21"/>
+<rectangle x1="5.2705" y1="-3.3147" x2="5.5753" y2="-3.2893" layer="21"/>
+<rectangle x1="-5.4229" y1="-3.2893" x2="-5.0927" y2="-3.2639" layer="21"/>
+<rectangle x1="-3.2131" y1="-3.2893" x2="-2.8321" y2="-3.2639" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.2893" x2="-2.0447" y2="-3.2639" layer="21"/>
+<rectangle x1="-1.2573" y1="-3.2893" x2="-0.9525" y2="-3.2639" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.2893" x2="-0.0127" y2="-3.2639" layer="21"/>
+<rectangle x1="0.3175" y1="-3.2893" x2="0.6731" y2="-3.2639" layer="21"/>
+<rectangle x1="1.4097" y1="-3.2893" x2="1.7653" y2="-3.2639" layer="21"/>
+<rectangle x1="3.3401" y1="-3.2893" x2="3.6449" y2="-3.2639" layer="21"/>
+<rectangle x1="4.2545" y1="-3.2893" x2="4.5593" y2="-3.2639" layer="21"/>
+<rectangle x1="5.2705" y1="-3.2893" x2="5.5753" y2="-3.2639" layer="21"/>
+<rectangle x1="-5.3975" y1="-3.2639" x2="-5.0673" y2="-3.2385" layer="21"/>
+<rectangle x1="-3.2385" y1="-3.2639" x2="-2.8575" y2="-3.2385" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.2639" x2="-2.0447" y2="-3.2385" layer="21"/>
+<rectangle x1="-1.2573" y1="-3.2639" x2="-0.9525" y2="-3.2385" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.2639" x2="-0.0127" y2="-3.2385" layer="21"/>
+<rectangle x1="0.3429" y1="-3.2639" x2="0.6731" y2="-3.2385" layer="21"/>
+<rectangle x1="1.4351" y1="-3.2639" x2="1.7907" y2="-3.2385" layer="21"/>
+<rectangle x1="3.3401" y1="-3.2639" x2="3.6449" y2="-3.2385" layer="21"/>
+<rectangle x1="4.2545" y1="-3.2639" x2="4.5339" y2="-3.2385" layer="21"/>
+<rectangle x1="5.2959" y1="-3.2639" x2="5.5753" y2="-3.2385" layer="21"/>
+<rectangle x1="-5.3975" y1="-3.2385" x2="-5.0419" y2="-3.2131" layer="21"/>
+<rectangle x1="-3.2639" y1="-3.2385" x2="-2.8575" y2="-3.2131" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.2385" x2="-2.0447" y2="-3.2131" layer="21"/>
+<rectangle x1="-1.2573" y1="-3.2385" x2="-0.9525" y2="-3.2131" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.2385" x2="-0.0127" y2="-3.2131" layer="21"/>
+<rectangle x1="0.3429" y1="-3.2385" x2="0.6985" y2="-3.2131" layer="21"/>
+<rectangle x1="1.4351" y1="-3.2385" x2="1.8161" y2="-3.2131" layer="21"/>
+<rectangle x1="3.3401" y1="-3.2385" x2="3.6449" y2="-3.2131" layer="21"/>
+<rectangle x1="4.2545" y1="-3.2385" x2="4.5339" y2="-3.2131" layer="21"/>
+<rectangle x1="5.2959" y1="-3.2385" x2="5.5753" y2="-3.2131" layer="21"/>
+<rectangle x1="-5.3721" y1="-3.2131" x2="-5.0165" y2="-3.1877" layer="21"/>
+<rectangle x1="-3.2639" y1="-3.2131" x2="-2.8829" y2="-3.1877" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.2131" x2="-2.0447" y2="-3.1877" layer="21"/>
+<rectangle x1="-1.2573" y1="-3.2131" x2="-0.9525" y2="-3.1877" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.2131" x2="-0.0127" y2="-3.1877" layer="21"/>
+<rectangle x1="0.3683" y1="-3.2131" x2="0.6985" y2="-3.1877" layer="21"/>
+<rectangle x1="1.4605" y1="-3.2131" x2="1.8415" y2="-3.1877" layer="21"/>
+<rectangle x1="3.3401" y1="-3.2131" x2="3.6449" y2="-3.1877" layer="21"/>
+<rectangle x1="4.2545" y1="-3.2131" x2="4.5339" y2="-3.1877" layer="21"/>
+<rectangle x1="5.2959" y1="-3.2131" x2="5.5753" y2="-3.1877" layer="21"/>
+<rectangle x1="-5.3467" y1="-3.1877" x2="-4.9911" y2="-3.1623" layer="21"/>
+<rectangle x1="-3.2893" y1="-3.1877" x2="-2.8829" y2="-3.1623" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.1877" x2="-2.0193" y2="-3.1623" layer="21"/>
+<rectangle x1="-1.2573" y1="-3.1877" x2="-0.9525" y2="-3.1623" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.1877" x2="-0.0127" y2="-3.1623" layer="21"/>
+<rectangle x1="0.3683" y1="-3.1877" x2="0.7239" y2="-3.1623" layer="21"/>
+<rectangle x1="1.4859" y1="-3.1877" x2="1.8669" y2="-3.1623" layer="21"/>
+<rectangle x1="3.3401" y1="-3.1877" x2="3.6449" y2="-3.1623" layer="21"/>
+<rectangle x1="4.2545" y1="-3.1877" x2="4.5339" y2="-3.1623" layer="21"/>
+<rectangle x1="5.2959" y1="-3.1877" x2="5.5753" y2="-3.1623" layer="21"/>
+<rectangle x1="-5.3467" y1="-3.1623" x2="-4.9657" y2="-3.1369" layer="21"/>
+<rectangle x1="-3.3147" y1="-3.1623" x2="-2.9083" y2="-3.1369" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.1623" x2="-2.0193" y2="-3.1369" layer="21"/>
+<rectangle x1="-1.2827" y1="-3.1623" x2="-0.9525" y2="-3.1369" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.1623" x2="-0.0127" y2="-3.1369" layer="21"/>
+<rectangle x1="0.3937" y1="-3.1623" x2="0.7239" y2="-3.1369" layer="21"/>
+<rectangle x1="1.4859" y1="-3.1623" x2="1.8923" y2="-3.1369" layer="21"/>
+<rectangle x1="3.3401" y1="-3.1623" x2="3.6449" y2="-3.1369" layer="21"/>
+<rectangle x1="4.2545" y1="-3.1623" x2="4.5593" y2="-3.1369" layer="21"/>
+<rectangle x1="5.2705" y1="-3.1623" x2="5.5753" y2="-3.1369" layer="21"/>
+<rectangle x1="-5.3213" y1="-3.1369" x2="-4.9403" y2="-3.1115" layer="21"/>
+<rectangle x1="-3.3401" y1="-3.1369" x2="-2.9337" y2="-3.1115" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.1369" x2="-2.0193" y2="-3.1115" layer="21"/>
+<rectangle x1="-1.2827" y1="-3.1369" x2="-0.9525" y2="-3.1115" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.1369" x2="-0.0127" y2="-3.1115" layer="21"/>
+<rectangle x1="0.3937" y1="-3.1369" x2="0.7493" y2="-3.1115" layer="21"/>
+<rectangle x1="1.5113" y1="-3.1369" x2="1.9177" y2="-3.1115" layer="21"/>
+<rectangle x1="3.3401" y1="-3.1369" x2="3.6449" y2="-3.1115" layer="21"/>
+<rectangle x1="4.2545" y1="-3.1369" x2="4.5593" y2="-3.1115" layer="21"/>
+<rectangle x1="5.2705" y1="-3.1369" x2="5.5753" y2="-3.1115" layer="21"/>
+<rectangle x1="-5.2959" y1="-3.1115" x2="-4.9149" y2="-3.0861" layer="21"/>
+<rectangle x1="-3.3909" y1="-3.1115" x2="-2.9591" y2="-3.0861" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.1115" x2="-1.9939" y2="-3.0861" layer="21"/>
+<rectangle x1="-1.2827" y1="-3.1115" x2="-0.9525" y2="-3.0861" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.1115" x2="-0.0127" y2="-3.0861" layer="21"/>
+<rectangle x1="0.3937" y1="-3.1115" x2="0.7493" y2="-3.0861" layer="21"/>
+<rectangle x1="1.5367" y1="-3.1115" x2="1.9431" y2="-3.0861" layer="21"/>
+<rectangle x1="3.3401" y1="-3.1115" x2="3.6449" y2="-3.0861" layer="21"/>
+<rectangle x1="4.2545" y1="-3.1115" x2="4.5593" y2="-3.0861" layer="21"/>
+<rectangle x1="5.2705" y1="-3.1115" x2="5.5753" y2="-3.0861" layer="21"/>
+<rectangle x1="-5.2705" y1="-3.0861" x2="-4.8895" y2="-3.0607" layer="21"/>
+<rectangle x1="-3.4163" y1="-3.0861" x2="-2.9845" y2="-3.0607" layer="21"/>
+<rectangle x1="-2.3495" y1="-3.0861" x2="-1.9939" y2="-3.0607" layer="21"/>
+<rectangle x1="-1.3081" y1="-3.0861" x2="-0.9525" y2="-3.0607" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.0861" x2="-0.0127" y2="-3.0607" layer="21"/>
+<rectangle x1="0.4191" y1="-3.0861" x2="0.7747" y2="-3.0607" layer="21"/>
+<rectangle x1="1.5621" y1="-3.0861" x2="1.9939" y2="-3.0607" layer="21"/>
+<rectangle x1="3.3401" y1="-3.0861" x2="3.6449" y2="-3.0607" layer="21"/>
+<rectangle x1="4.2545" y1="-3.0861" x2="4.5847" y2="-3.0607" layer="21"/>
+<rectangle x1="5.2451" y1="-3.0861" x2="5.5753" y2="-3.0607" layer="21"/>
+<rectangle x1="-5.2705" y1="-3.0607" x2="-4.8387" y2="-3.0353" layer="21"/>
+<rectangle x1="-3.4417" y1="-3.0607" x2="-2.9845" y2="-3.0353" layer="21"/>
+<rectangle x1="-2.3241" y1="-3.0607" x2="-1.9939" y2="-3.0353" layer="21"/>
+<rectangle x1="-1.3081" y1="-3.0607" x2="-0.9779" y2="-3.0353" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.0607" x2="-0.0127" y2="-3.0353" layer="21"/>
+<rectangle x1="0.4445" y1="-3.0607" x2="0.8001" y2="-3.0353" layer="21"/>
+<rectangle x1="1.5875" y1="-3.0607" x2="2.0193" y2="-3.0353" layer="21"/>
+<rectangle x1="3.3401" y1="-3.0607" x2="3.6449" y2="-3.0353" layer="21"/>
+<rectangle x1="4.2545" y1="-3.0607" x2="4.5847" y2="-3.0353" layer="21"/>
+<rectangle x1="5.2451" y1="-3.0607" x2="5.5753" y2="-3.0353" layer="21"/>
+<rectangle x1="-5.2451" y1="-3.0353" x2="-4.8133" y2="-3.0099" layer="21"/>
+<rectangle x1="-3.4671" y1="-3.0353" x2="-3.0099" y2="-3.0099" layer="21"/>
+<rectangle x1="-2.3241" y1="-3.0353" x2="-1.9685" y2="-3.0099" layer="21"/>
+<rectangle x1="-1.3335" y1="-3.0353" x2="-0.9779" y2="-3.0099" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.0353" x2="-0.0127" y2="-3.0099" layer="21"/>
+<rectangle x1="0.4445" y1="-3.0353" x2="0.8255" y2="-3.0099" layer="21"/>
+<rectangle x1="1.5875" y1="-3.0353" x2="2.0701" y2="-3.0099" layer="21"/>
+<rectangle x1="3.3401" y1="-3.0353" x2="3.6449" y2="-3.0099" layer="21"/>
+<rectangle x1="4.2545" y1="-3.0353" x2="4.6101" y2="-3.0099" layer="21"/>
+<rectangle x1="5.2197" y1="-3.0353" x2="5.5753" y2="-3.0099" layer="21"/>
+<rectangle x1="-5.2197" y1="-3.0099" x2="-4.7625" y2="-2.9845" layer="21"/>
+<rectangle x1="-3.5179" y1="-3.0099" x2="-3.0353" y2="-2.9845" layer="21"/>
+<rectangle x1="-2.3241" y1="-3.0099" x2="-1.9431" y2="-2.9845" layer="21"/>
+<rectangle x1="-1.3589" y1="-3.0099" x2="-0.9779" y2="-2.9845" layer="21"/>
+<rectangle x1="-0.3175" y1="-3.0099" x2="-0.0127" y2="-2.9845" layer="21"/>
+<rectangle x1="0.4699" y1="-3.0099" x2="0.8255" y2="-2.9845" layer="21"/>
+<rectangle x1="1.6129" y1="-3.0099" x2="2.1463" y2="-2.9845" layer="21"/>
+<rectangle x1="3.3401" y1="-3.0099" x2="3.6449" y2="-2.9845" layer="21"/>
+<rectangle x1="4.2799" y1="-3.0099" x2="4.6101" y2="-2.9845" layer="21"/>
+<rectangle x1="5.2197" y1="-3.0099" x2="5.5499" y2="-2.9845" layer="21"/>
+<rectangle x1="-5.1943" y1="-2.9845" x2="-4.7371" y2="-2.9591" layer="21"/>
+<rectangle x1="-3.5687" y1="-2.9845" x2="-3.0607" y2="-2.9591" layer="21"/>
+<rectangle x1="-2.2987" y1="-2.9845" x2="-1.9177" y2="-2.9591" layer="21"/>
+<rectangle x1="-1.3843" y1="-2.9845" x2="-1.0033" y2="-2.9591" layer="21"/>
+<rectangle x1="-0.3175" y1="-2.9845" x2="-0.0127" y2="-2.9591" layer="21"/>
+<rectangle x1="0.4699" y1="-2.9845" x2="0.8509" y2="-2.9591" layer="21"/>
+<rectangle x1="1.6383" y1="-2.9845" x2="2.1971" y2="-2.9591" layer="21"/>
+<rectangle x1="3.3401" y1="-2.9845" x2="3.6449" y2="-2.9591" layer="21"/>
+<rectangle x1="4.2799" y1="-2.9845" x2="4.6355" y2="-2.9591" layer="21"/>
+<rectangle x1="5.1943" y1="-2.9845" x2="5.5499" y2="-2.9591" layer="21"/>
+<rectangle x1="-5.1689" y1="-2.9591" x2="-4.6863" y2="-2.9337" layer="21"/>
+<rectangle x1="-3.6195" y1="-2.9591" x2="-3.0861" y2="-2.9337" layer="21"/>
+<rectangle x1="-2.2987" y1="-2.9591" x2="-1.8923" y2="-2.9337" layer="21"/>
+<rectangle x1="-1.4097" y1="-2.9591" x2="-1.0033" y2="-2.9337" layer="21"/>
+<rectangle x1="-0.3175" y1="-2.9591" x2="-0.0127" y2="-2.9337" layer="21"/>
+<rectangle x1="0.4953" y1="-2.9591" x2="0.8763" y2="-2.9337" layer="21"/>
+<rectangle x1="1.6637" y1="-2.9591" x2="2.2987" y2="-2.9337" layer="21"/>
+<rectangle x1="3.3401" y1="-2.9591" x2="3.6449" y2="-2.9337" layer="21"/>
+<rectangle x1="4.2799" y1="-2.9591" x2="4.6609" y2="-2.9337" layer="21"/>
+<rectangle x1="5.1689" y1="-2.9591" x2="5.5499" y2="-2.9337" layer="21"/>
+<rectangle x1="-5.1435" y1="-2.9337" x2="-4.6355" y2="-2.9083" layer="21"/>
+<rectangle x1="-3.6703" y1="-2.9337" x2="-3.1115" y2="-2.9083" layer="21"/>
+<rectangle x1="-2.2733" y1="-2.9337" x2="-1.8415" y2="-2.9083" layer="21"/>
+<rectangle x1="-1.4351" y1="-2.9337" x2="-1.0287" y2="-2.9083" layer="21"/>
+<rectangle x1="-0.3175" y1="-2.9337" x2="-0.0127" y2="-2.9083" layer="21"/>
+<rectangle x1="0.4953" y1="-2.9337" x2="0.9017" y2="-2.9083" layer="21"/>
+<rectangle x1="1.6891" y1="-2.9337" x2="2.3749" y2="-2.9083" layer="21"/>
+<rectangle x1="3.3401" y1="-2.9337" x2="3.6449" y2="-2.9083" layer="21"/>
+<rectangle x1="4.3053" y1="-2.9337" x2="4.6863" y2="-2.9083" layer="21"/>
+<rectangle x1="5.1435" y1="-2.9337" x2="5.5245" y2="-2.9083" layer="21"/>
+<rectangle x1="-5.0927" y1="-2.9083" x2="-4.5593" y2="-2.8829" layer="21"/>
+<rectangle x1="-3.7211" y1="-2.9083" x2="-3.1369" y2="-2.8829" layer="21"/>
+<rectangle x1="-2.2479" y1="-2.9083" x2="-1.7907" y2="-2.8829" layer="21"/>
+<rectangle x1="-1.5113" y1="-2.9083" x2="-1.0287" y2="-2.8829" layer="21"/>
+<rectangle x1="-0.3175" y1="-2.9083" x2="-0.0127" y2="-2.8829" layer="21"/>
+<rectangle x1="0.5207" y1="-2.9083" x2="0.9017" y2="-2.8829" layer="21"/>
+<rectangle x1="1.7399" y1="-2.9083" x2="2.4511" y2="-2.8829" layer="21"/>
+<rectangle x1="3.3401" y1="-2.9083" x2="3.6449" y2="-2.8829" layer="21"/>
+<rectangle x1="4.3053" y1="-2.9083" x2="4.7371" y2="-2.8829" layer="21"/>
+<rectangle x1="5.0927" y1="-2.9083" x2="5.5245" y2="-2.8829" layer="21"/>
+<rectangle x1="-5.0673" y1="-2.8829" x2="-4.4831" y2="-2.8575" layer="21"/>
+<rectangle x1="-3.7973" y1="-2.8829" x2="-3.1623" y2="-2.8575" layer="21"/>
+<rectangle x1="-2.2479" y1="-2.8829" x2="-1.7145" y2="-2.8575" layer="21"/>
+<rectangle x1="-1.6129" y1="-2.8829" x2="-1.0541" y2="-2.8575" layer="21"/>
+<rectangle x1="-0.3175" y1="-2.8829" x2="-0.0127" y2="-2.8575" layer="21"/>
+<rectangle x1="0.5461" y1="-2.8829" x2="0.9017" y2="-2.8575" layer="21"/>
+<rectangle x1="1.7653" y1="-2.8829" x2="2.7051" y2="-2.8575" layer="21"/>
+<rectangle x1="3.3401" y1="-2.8829" x2="3.6449" y2="-2.8575" layer="21"/>
+<rectangle x1="4.3307" y1="-2.8829" x2="4.7879" y2="-2.8575" layer="21"/>
+<rectangle x1="5.0419" y1="-2.8829" x2="5.4991" y2="-2.8575" layer="21"/>
+<rectangle x1="-5.0419" y1="-2.8575" x2="-4.3815" y2="-2.8321" layer="21"/>
+<rectangle x1="-3.8989" y1="-2.8575" x2="-3.2131" y2="-2.8321" layer="21"/>
+<rectangle x1="-2.2225" y1="-2.8575" x2="-1.0795" y2="-2.8321" layer="21"/>
+<rectangle x1="-0.3175" y1="-2.8575" x2="-0.0127" y2="-2.8321" layer="21"/>
+<rectangle x1="0.5715" y1="-2.8575" x2="0.9017" y2="-2.8321" layer="21"/>
+<rectangle x1="1.7907" y1="-2.8575" x2="2.7051" y2="-2.8321" layer="21"/>
+<rectangle x1="3.0099" y1="-2.8575" x2="3.9751" y2="-2.8321" layer="21"/>
+<rectangle x1="4.3561" y1="-2.8575" x2="4.8641" y2="-2.8321" layer="21"/>
+<rectangle x1="4.9403" y1="-2.8575" x2="5.4737" y2="-2.8321" layer="21"/>
+<rectangle x1="-5.0165" y1="-2.8321" x2="-3.2385" y2="-2.8067" layer="21"/>
+<rectangle x1="-2.1971" y1="-2.8321" x2="-1.0795" y2="-2.8067" layer="21"/>
+<rectangle x1="-0.3175" y1="-2.8321" x2="-0.0127" y2="-2.8067" layer="21"/>
+<rectangle x1="0.5715" y1="-2.8321" x2="0.9017" y2="-2.8067" layer="21"/>
+<rectangle x1="1.8161" y1="-2.8321" x2="2.7051" y2="-2.8067" layer="21"/>
+<rectangle x1="2.9845" y1="-2.8321" x2="3.9751" y2="-2.8067" layer="21"/>
+<rectangle x1="4.3561" y1="-2.8321" x2="5.4737" y2="-2.8067" layer="21"/>
+<rectangle x1="-4.9657" y1="-2.8067" x2="-3.2639" y2="-2.7813" layer="21"/>
+<rectangle x1="-2.1717" y1="-2.8067" x2="-1.1049" y2="-2.7813" layer="21"/>
+<rectangle x1="-0.3175" y1="-2.8067" x2="-0.0127" y2="-2.7813" layer="21"/>
+<rectangle x1="0.5969" y1="-2.8067" x2="0.9017" y2="-2.7813" layer="21"/>
+<rectangle x1="1.8669" y1="-2.8067" x2="2.7051" y2="-2.7813" layer="21"/>
+<rectangle x1="2.9845" y1="-2.8067" x2="3.9751" y2="-2.7813" layer="21"/>
+<rectangle x1="4.3815" y1="-2.8067" x2="5.4483" y2="-2.7813" layer="21"/>
+<rectangle x1="-4.9403" y1="-2.7813" x2="-3.3147" y2="-2.7559" layer="21"/>
+<rectangle x1="-2.1717" y1="-2.7813" x2="-1.1303" y2="-2.7559" layer="21"/>
+<rectangle x1="-0.3175" y1="-2.7813" x2="-0.0127" y2="-2.7559" layer="21"/>
+<rectangle x1="0.6223" y1="-2.7813" x2="0.9017" y2="-2.7559" layer="21"/>
+<rectangle x1="1.8923" y1="-2.7813" x2="2.7051" y2="-2.7559" layer="21"/>
+<rectangle x1="2.9845" y1="-2.7813" x2="3.9751" y2="-2.7559" layer="21"/>
+<rectangle x1="4.4069" y1="-2.7813" x2="5.4229" y2="-2.7559" layer="21"/>
+<rectangle x1="-4.8895" y1="-2.7559" x2="-3.3401" y2="-2.7305" layer="21"/>
+<rectangle x1="-2.1463" y1="-2.7559" x2="-1.1557" y2="-2.7305" layer="21"/>
+<rectangle x1="-0.3175" y1="-2.7559" x2="-0.0127" y2="-2.7305" layer="21"/>
+<rectangle x1="0.6477" y1="-2.7559" x2="0.9017" y2="-2.7305" layer="21"/>
+<rectangle x1="1.9431" y1="-2.7559" x2="2.7051" y2="-2.7305" layer="21"/>
+<rectangle x1="2.9845" y1="-2.7559" x2="3.9751" y2="-2.7305" layer="21"/>
+<rectangle x1="4.4323" y1="-2.7559" x2="5.3975" y2="-2.7305" layer="21"/>
+<rectangle x1="-4.8387" y1="-2.7305" x2="-3.3909" y2="-2.7051" layer="21"/>
+<rectangle x1="-2.1209" y1="-2.7305" x2="-1.2065" y2="-2.7051" layer="21"/>
+<rectangle x1="-0.3175" y1="-2.7305" x2="-0.0127" y2="-2.7051" layer="21"/>
+<rectangle x1="0.6731" y1="-2.7305" x2="0.9017" y2="-2.7051" layer="21"/>
+<rectangle x1="1.9685" y1="-2.7305" x2="2.7051" y2="-2.7051" layer="21"/>
+<rectangle x1="2.9845" y1="-2.7305" x2="3.9751" y2="-2.7051" layer="21"/>
+<rectangle x1="4.4577" y1="-2.7305" x2="5.3721" y2="-2.7051" layer="21"/>
+<rectangle x1="-4.8133" y1="-2.7051" x2="-3.4417" y2="-2.6797" layer="21"/>
+<rectangle x1="-2.0701" y1="-2.7051" x2="-1.2319" y2="-2.6797" layer="21"/>
+<rectangle x1="-0.3175" y1="-2.7051" x2="-0.0127" y2="-2.6797" layer="21"/>
+<rectangle x1="0.6985" y1="-2.7051" x2="0.9017" y2="-2.6797" layer="21"/>
+<rectangle x1="2.0193" y1="-2.7051" x2="2.7051" y2="-2.6797" layer="21"/>
+<rectangle x1="2.9845" y1="-2.7051" x2="3.9751" y2="-2.6797" layer="21"/>
+<rectangle x1="4.4831" y1="-2.7051" x2="5.3467" y2="-2.6797" layer="21"/>
+<rectangle x1="-4.7371" y1="-2.6797" x2="-3.4925" y2="-2.6543" layer="21"/>
+<rectangle x1="-2.0447" y1="-2.6797" x2="-1.2573" y2="-2.6543" layer="21"/>
+<rectangle x1="-0.3175" y1="-2.6797" x2="-0.0127" y2="-2.6543" layer="21"/>
+<rectangle x1="0.7239" y1="-2.6797" x2="0.9017" y2="-2.6543" layer="21"/>
+<rectangle x1="2.0701" y1="-2.6797" x2="2.7051" y2="-2.6543" layer="21"/>
+<rectangle x1="2.9845" y1="-2.6797" x2="3.9751" y2="-2.6543" layer="21"/>
+<rectangle x1="4.5085" y1="-2.6797" x2="5.3213" y2="-2.6543" layer="21"/>
+<rectangle x1="-4.6863" y1="-2.6543" x2="-3.5433" y2="-2.6289" layer="21"/>
+<rectangle x1="-2.0193" y1="-2.6543" x2="-1.3081" y2="-2.6289" layer="21"/>
+<rectangle x1="-0.3175" y1="-2.6543" x2="-0.0127" y2="-2.6289" layer="21"/>
+<rectangle x1="0.7493" y1="-2.6543" x2="0.9017" y2="-2.6289" layer="21"/>
+<rectangle x1="2.1463" y1="-2.6543" x2="2.7051" y2="-2.6289" layer="21"/>
+<rectangle x1="2.9845" y1="-2.6543" x2="3.9751" y2="-2.6289" layer="21"/>
+<rectangle x1="4.5593" y1="-2.6543" x2="5.2705" y2="-2.6289" layer="21"/>
+<rectangle x1="-4.6355" y1="-2.6289" x2="-3.6195" y2="-2.6035" layer="21"/>
+<rectangle x1="-1.9685" y1="-2.6289" x2="-1.3335" y2="-2.6035" layer="21"/>
+<rectangle x1="-0.3175" y1="-2.6289" x2="-0.0127" y2="-2.6035" layer="21"/>
+<rectangle x1="0.7747" y1="-2.6289" x2="0.9017" y2="-2.6035" layer="21"/>
+<rectangle x1="2.1971" y1="-2.6289" x2="2.7051" y2="-2.6035" layer="21"/>
+<rectangle x1="2.9845" y1="-2.6289" x2="3.9751" y2="-2.6035" layer="21"/>
+<rectangle x1="4.5847" y1="-2.6289" x2="5.2451" y2="-2.6035" layer="21"/>
+<rectangle x1="-4.5593" y1="-2.6035" x2="-3.6957" y2="-2.5781" layer="21"/>
+<rectangle x1="-1.9177" y1="-2.6035" x2="-1.3843" y2="-2.5781" layer="21"/>
+<rectangle x1="-0.3175" y1="-2.6035" x2="-0.0127" y2="-2.5781" layer="21"/>
+<rectangle x1="0.8255" y1="-2.6035" x2="0.9017" y2="-2.5781" layer="21"/>
+<rectangle x1="2.2733" y1="-2.6035" x2="2.7051" y2="-2.5781" layer="21"/>
+<rectangle x1="2.9845" y1="-2.6035" x2="3.9751" y2="-2.5781" layer="21"/>
+<rectangle x1="4.6355" y1="-2.6035" x2="5.1943" y2="-2.5781" layer="21"/>
+<rectangle x1="-4.4577" y1="-2.5781" x2="-3.7719" y2="-2.5527" layer="21"/>
+<rectangle x1="-1.8161" y1="-2.5781" x2="-1.4605" y2="-2.5527" layer="21"/>
+<rectangle x1="-0.3175" y1="-2.5781" x2="-0.0127" y2="-2.5527" layer="21"/>
+<rectangle x1="0.8509" y1="-2.5781" x2="0.9017" y2="-2.5527" layer="21"/>
+<rectangle x1="2.3749" y1="-2.5781" x2="2.7051" y2="-2.5527" layer="21"/>
+<rectangle x1="3.0099" y1="-2.5781" x2="3.9751" y2="-2.5527" layer="21"/>
+<rectangle x1="4.7117" y1="-2.5781" x2="5.1181" y2="-2.5527" layer="21"/>
+<rectangle x1="-4.3053" y1="-2.5527" x2="-3.9497" y2="-2.5273" layer="21"/>
+<rectangle x1="2.5527" y1="-2.5527" x2="2.7051" y2="-2.5273" layer="21"/>
+<rectangle x1="-5.0673" y1="-2.1209" x2="-4.6609" y2="-2.0955" layer="21"/>
+<rectangle x1="-1.0795" y1="-2.1209" x2="-1.0287" y2="-2.0955" layer="21"/>
+<rectangle x1="2.0447" y1="-2.1209" x2="2.4003" y2="-2.0955" layer="21"/>
+<rectangle x1="5.3721" y1="-2.1209" x2="5.5753" y2="-2.0955" layer="21"/>
+<rectangle x1="-5.1435" y1="-2.0955" x2="-4.5847" y2="-2.0701" layer="21"/>
+<rectangle x1="-3.7465" y1="-2.0955" x2="-3.4163" y2="-2.0701" layer="21"/>
+<rectangle x1="-1.1049" y1="-2.0955" x2="-1.0287" y2="-2.0701" layer="21"/>
+<rectangle x1="0.8763" y1="-2.0955" x2="1.0033" y2="-2.0701" layer="21"/>
+<rectangle x1="1.3589" y1="-2.0955" x2="1.7145" y2="-2.0701" layer="21"/>
+<rectangle x1="2.0447" y1="-2.0955" x2="2.4003" y2="-2.0701" layer="21"/>
+<rectangle x1="3.1369" y1="-2.0955" x2="3.4925" y2="-2.0701" layer="21"/>
+<rectangle x1="5.2197" y1="-2.0955" x2="5.5753" y2="-2.0701" layer="21"/>
+<rectangle x1="-5.1943" y1="-2.0701" x2="-4.5085" y2="-2.0447" layer="21"/>
+<rectangle x1="-3.7719" y1="-2.0701" x2="-3.3909" y2="-2.0447" layer="21"/>
+<rectangle x1="-1.1303" y1="-2.0701" x2="-1.0287" y2="-2.0447" layer="21"/>
+<rectangle x1="0.6985" y1="-2.0701" x2="1.0287" y2="-2.0447" layer="21"/>
+<rectangle x1="1.3589" y1="-2.0701" x2="1.7145" y2="-2.0447" layer="21"/>
+<rectangle x1="2.0447" y1="-2.0701" x2="2.4003" y2="-2.0447" layer="21"/>
+<rectangle x1="3.1369" y1="-2.0701" x2="3.4925" y2="-2.0447" layer="21"/>
+<rectangle x1="5.0927" y1="-2.0701" x2="5.5753" y2="-2.0447" layer="21"/>
+<rectangle x1="-5.2451" y1="-2.0447" x2="-4.4577" y2="-2.0193" layer="21"/>
+<rectangle x1="-3.7719" y1="-2.0447" x2="-3.3909" y2="-2.0193" layer="21"/>
+<rectangle x1="-1.1811" y1="-2.0447" x2="-1.0287" y2="-2.0193" layer="21"/>
+<rectangle x1="0.5715" y1="-2.0447" x2="1.0287" y2="-2.0193" layer="21"/>
+<rectangle x1="1.3589" y1="-2.0447" x2="1.7145" y2="-2.0193" layer="21"/>
+<rectangle x1="2.0447" y1="-2.0447" x2="2.4003" y2="-2.0193" layer="21"/>
+<rectangle x1="3.1369" y1="-2.0447" x2="3.4925" y2="-2.0193" layer="21"/>
+<rectangle x1="5.0165" y1="-2.0447" x2="5.5753" y2="-2.0193" layer="21"/>
+<rectangle x1="-5.2959" y1="-2.0193" x2="-4.4323" y2="-1.9939" layer="21"/>
+<rectangle x1="-3.7719" y1="-2.0193" x2="-3.3909" y2="-1.9939" layer="21"/>
+<rectangle x1="-1.2065" y1="-2.0193" x2="-1.0287" y2="-1.9939" layer="21"/>
+<rectangle x1="0.4953" y1="-2.0193" x2="1.0287" y2="-1.9939" layer="21"/>
+<rectangle x1="1.3589" y1="-2.0193" x2="1.7145" y2="-1.9939" layer="21"/>
+<rectangle x1="2.0447" y1="-2.0193" x2="2.4003" y2="-1.9939" layer="21"/>
+<rectangle x1="3.1369" y1="-2.0193" x2="3.4925" y2="-1.9939" layer="21"/>
+<rectangle x1="4.9657" y1="-2.0193" x2="5.5753" y2="-1.9939" layer="21"/>
+<rectangle x1="-5.3213" y1="-1.9939" x2="-4.4069" y2="-1.9685" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.9939" x2="-3.3909" y2="-1.9685" layer="21"/>
+<rectangle x1="-1.2319" y1="-1.9939" x2="-1.0287" y2="-1.9685" layer="21"/>
+<rectangle x1="0.4191" y1="-1.9939" x2="1.0287" y2="-1.9685" layer="21"/>
+<rectangle x1="1.3589" y1="-1.9939" x2="1.7145" y2="-1.9685" layer="21"/>
+<rectangle x1="2.0447" y1="-1.9939" x2="2.4003" y2="-1.9685" layer="21"/>
+<rectangle x1="3.1369" y1="-1.9939" x2="3.4925" y2="-1.9685" layer="21"/>
+<rectangle x1="4.8895" y1="-1.9939" x2="5.5753" y2="-1.9685" layer="21"/>
+<rectangle x1="-5.3467" y1="-1.9685" x2="-4.3561" y2="-1.9431" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.9685" x2="-3.3909" y2="-1.9431" layer="21"/>
+<rectangle x1="-1.2573" y1="-1.9685" x2="-1.0287" y2="-1.9431" layer="21"/>
+<rectangle x1="0.3429" y1="-1.9685" x2="1.0287" y2="-1.9431" layer="21"/>
+<rectangle x1="1.3589" y1="-1.9685" x2="1.7145" y2="-1.9431" layer="21"/>
+<rectangle x1="2.0447" y1="-1.9685" x2="2.4003" y2="-1.9431" layer="21"/>
+<rectangle x1="3.1369" y1="-1.9685" x2="3.4925" y2="-1.9431" layer="21"/>
+<rectangle x1="4.8387" y1="-1.9685" x2="5.5753" y2="-1.9431" layer="21"/>
+<rectangle x1="-5.3721" y1="-1.9431" x2="-4.3307" y2="-1.9177" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.9431" x2="-3.3909" y2="-1.9177" layer="21"/>
+<rectangle x1="-1.2827" y1="-1.9431" x2="-1.0287" y2="-1.9177" layer="21"/>
+<rectangle x1="0.2921" y1="-1.9431" x2="1.0287" y2="-1.9177" layer="21"/>
+<rectangle x1="1.3589" y1="-1.9431" x2="1.7145" y2="-1.9177" layer="21"/>
+<rectangle x1="2.0447" y1="-1.9431" x2="2.4003" y2="-1.9177" layer="21"/>
+<rectangle x1="3.1369" y1="-1.9431" x2="3.4925" y2="-1.9177" layer="21"/>
+<rectangle x1="4.7879" y1="-1.9431" x2="5.5753" y2="-1.9177" layer="21"/>
+<rectangle x1="-5.3975" y1="-1.9177" x2="-4.3053" y2="-1.8923" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.9177" x2="-3.3909" y2="-1.8923" layer="21"/>
+<rectangle x1="-1.3081" y1="-1.9177" x2="-1.0287" y2="-1.8923" layer="21"/>
+<rectangle x1="0.2413" y1="-1.9177" x2="1.0287" y2="-1.8923" layer="21"/>
+<rectangle x1="1.3589" y1="-1.9177" x2="1.7145" y2="-1.8923" layer="21"/>
+<rectangle x1="2.0447" y1="-1.9177" x2="2.4003" y2="-1.8923" layer="21"/>
+<rectangle x1="3.1369" y1="-1.9177" x2="3.4925" y2="-1.8923" layer="21"/>
+<rectangle x1="4.7371" y1="-1.9177" x2="5.5753" y2="-1.8923" layer="21"/>
+<rectangle x1="-5.4229" y1="-1.8923" x2="-4.2799" y2="-1.8669" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.8923" x2="-3.3909" y2="-1.8669" layer="21"/>
+<rectangle x1="-1.3335" y1="-1.8923" x2="-1.0287" y2="-1.8669" layer="21"/>
+<rectangle x1="0.1905" y1="-1.8923" x2="1.0287" y2="-1.8669" layer="21"/>
+<rectangle x1="1.3589" y1="-1.8923" x2="1.7145" y2="-1.8669" layer="21"/>
+<rectangle x1="2.0447" y1="-1.8923" x2="2.4003" y2="-1.8669" layer="21"/>
+<rectangle x1="3.1369" y1="-1.8923" x2="3.4925" y2="-1.8669" layer="21"/>
+<rectangle x1="4.6863" y1="-1.8923" x2="5.5753" y2="-1.8669" layer="21"/>
+<rectangle x1="-5.4483" y1="-1.8669" x2="-4.2545" y2="-1.8415" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.8669" x2="-3.3909" y2="-1.8415" layer="21"/>
+<rectangle x1="-1.3589" y1="-1.8669" x2="-1.0287" y2="-1.8415" layer="21"/>
+<rectangle x1="0.1397" y1="-1.8669" x2="1.0287" y2="-1.8415" layer="21"/>
+<rectangle x1="1.3589" y1="-1.8669" x2="1.7145" y2="-1.8415" layer="21"/>
+<rectangle x1="2.0447" y1="-1.8669" x2="2.4003" y2="-1.8415" layer="21"/>
+<rectangle x1="3.1369" y1="-1.8669" x2="3.4925" y2="-1.8415" layer="21"/>
+<rectangle x1="4.6609" y1="-1.8669" x2="5.5753" y2="-1.8415" layer="21"/>
+<rectangle x1="-5.4737" y1="-1.8415" x2="-4.2291" y2="-1.8161" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.8415" x2="-3.3909" y2="-1.8161" layer="21"/>
+<rectangle x1="-1.3589" y1="-1.8415" x2="-1.0287" y2="-1.8161" layer="21"/>
+<rectangle x1="0.1143" y1="-1.8415" x2="1.0287" y2="-1.8161" layer="21"/>
+<rectangle x1="1.3589" y1="-1.8415" x2="1.7145" y2="-1.8161" layer="21"/>
+<rectangle x1="2.0447" y1="-1.8415" x2="2.4003" y2="-1.8161" layer="21"/>
+<rectangle x1="3.1369" y1="-1.8415" x2="3.4925" y2="-1.8161" layer="21"/>
+<rectangle x1="4.6101" y1="-1.8415" x2="5.5753" y2="-1.8161" layer="21"/>
+<rectangle x1="-5.4991" y1="-1.8161" x2="-4.2291" y2="-1.7907" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.8161" x2="-3.3909" y2="-1.7907" layer="21"/>
+<rectangle x1="-1.3843" y1="-1.8161" x2="-1.0287" y2="-1.7907" layer="21"/>
+<rectangle x1="0.0635" y1="-1.8161" x2="1.0287" y2="-1.7907" layer="21"/>
+<rectangle x1="1.3589" y1="-1.8161" x2="1.7145" y2="-1.7907" layer="21"/>
+<rectangle x1="2.0447" y1="-1.8161" x2="2.4003" y2="-1.7907" layer="21"/>
+<rectangle x1="3.1369" y1="-1.8161" x2="3.4925" y2="-1.7907" layer="21"/>
+<rectangle x1="4.5847" y1="-1.8161" x2="5.5753" y2="-1.7907" layer="21"/>
+<rectangle x1="-5.5245" y1="-1.7907" x2="-4.9149" y2="-1.7653" layer="21"/>
+<rectangle x1="-4.7879" y1="-1.7907" x2="-4.2037" y2="-1.7653" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.7907" x2="-3.3909" y2="-1.7653" layer="21"/>
+<rectangle x1="-1.4097" y1="-1.7907" x2="-1.0287" y2="-1.7653" layer="21"/>
+<rectangle x1="0.0381" y1="-1.7907" x2="1.0287" y2="-1.7653" layer="21"/>
+<rectangle x1="1.3589" y1="-1.7907" x2="1.7145" y2="-1.7653" layer="21"/>
+<rectangle x1="2.0447" y1="-1.7907" x2="2.4003" y2="-1.7653" layer="21"/>
+<rectangle x1="3.1369" y1="-1.7907" x2="3.4925" y2="-1.7653" layer="21"/>
+<rectangle x1="4.5339" y1="-1.7907" x2="5.5753" y2="-1.7653" layer="21"/>
+<rectangle x1="-5.5245" y1="-1.7653" x2="-5.0165" y2="-1.7399" layer="21"/>
+<rectangle x1="-4.7117" y1="-1.7653" x2="-4.1783" y2="-1.7399" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.7653" x2="-3.3909" y2="-1.7399" layer="21"/>
+<rectangle x1="-1.4351" y1="-1.7653" x2="-1.0287" y2="-1.7399" layer="21"/>
+<rectangle x1="-0.0127" y1="-1.7653" x2="1.0287" y2="-1.7399" layer="21"/>
+<rectangle x1="1.3589" y1="-1.7653" x2="1.7145" y2="-1.7399" layer="21"/>
+<rectangle x1="2.0447" y1="-1.7653" x2="2.4003" y2="-1.7399" layer="21"/>
+<rectangle x1="3.1369" y1="-1.7653" x2="3.4925" y2="-1.7399" layer="21"/>
+<rectangle x1="4.5085" y1="-1.7653" x2="5.5753" y2="-1.7399" layer="21"/>
+<rectangle x1="-5.5499" y1="-1.7399" x2="-5.0673" y2="-1.7145" layer="21"/>
+<rectangle x1="-4.6609" y1="-1.7399" x2="-4.1783" y2="-1.7145" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.7399" x2="-3.3909" y2="-1.7145" layer="21"/>
+<rectangle x1="-1.4605" y1="-1.7399" x2="-1.0287" y2="-1.7145" layer="21"/>
+<rectangle x1="-0.0381" y1="-1.7399" x2="1.0287" y2="-1.7145" layer="21"/>
+<rectangle x1="1.3589" y1="-1.7399" x2="1.7145" y2="-1.7145" layer="21"/>
+<rectangle x1="2.0447" y1="-1.7399" x2="2.4003" y2="-1.7145" layer="21"/>
+<rectangle x1="3.1369" y1="-1.7399" x2="3.4925" y2="-1.7145" layer="21"/>
+<rectangle x1="4.4831" y1="-1.7399" x2="5.3721" y2="-1.7145" layer="21"/>
+<rectangle x1="-5.5499" y1="-1.7145" x2="-5.1181" y2="-1.6891" layer="21"/>
+<rectangle x1="-4.6101" y1="-1.7145" x2="-4.1529" y2="-1.6891" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.7145" x2="-3.3909" y2="-1.6891" layer="21"/>
+<rectangle x1="-1.4605" y1="-1.7145" x2="-1.0287" y2="-1.6891" layer="21"/>
+<rectangle x1="-0.0635" y1="-1.7145" x2="1.0033" y2="-1.6891" layer="21"/>
+<rectangle x1="1.3589" y1="-1.7145" x2="1.7145" y2="-1.6891" layer="21"/>
+<rectangle x1="2.0447" y1="-1.7145" x2="2.4003" y2="-1.6891" layer="21"/>
+<rectangle x1="3.1369" y1="-1.7145" x2="3.4925" y2="-1.6891" layer="21"/>
+<rectangle x1="4.4577" y1="-1.7145" x2="5.2197" y2="-1.6891" layer="21"/>
+<rectangle x1="-5.5753" y1="-1.6891" x2="-5.1435" y2="-1.6637" layer="21"/>
+<rectangle x1="-4.5847" y1="-1.6891" x2="-4.1529" y2="-1.6637" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.6891" x2="-3.3909" y2="-1.6637" layer="21"/>
+<rectangle x1="-1.4859" y1="-1.6891" x2="-1.0287" y2="-1.6637" layer="21"/>
+<rectangle x1="-0.1143" y1="-1.6891" x2="0.7493" y2="-1.6637" layer="21"/>
+<rectangle x1="1.3589" y1="-1.6891" x2="1.7145" y2="-1.6637" layer="21"/>
+<rectangle x1="2.0447" y1="-1.6891" x2="2.4003" y2="-1.6637" layer="21"/>
+<rectangle x1="3.1369" y1="-1.6891" x2="3.4925" y2="-1.6637" layer="21"/>
+<rectangle x1="4.4069" y1="-1.6891" x2="5.1181" y2="-1.6637" layer="21"/>
+<rectangle x1="-5.5753" y1="-1.6637" x2="-5.1689" y2="-1.6383" layer="21"/>
+<rectangle x1="-4.5593" y1="-1.6637" x2="-4.1275" y2="-1.6383" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.6637" x2="-3.3909" y2="-1.6383" layer="21"/>
+<rectangle x1="-1.5113" y1="-1.6637" x2="-1.0541" y2="-1.6383" layer="21"/>
+<rectangle x1="-0.1397" y1="-1.6637" x2="0.6477" y2="-1.6383" layer="21"/>
+<rectangle x1="1.3589" y1="-1.6637" x2="1.7145" y2="-1.6383" layer="21"/>
+<rectangle x1="2.0447" y1="-1.6637" x2="2.4003" y2="-1.6383" layer="21"/>
+<rectangle x1="3.1369" y1="-1.6637" x2="3.4925" y2="-1.6383" layer="21"/>
+<rectangle x1="4.3815" y1="-1.6637" x2="5.0165" y2="-1.6383" layer="21"/>
+<rectangle x1="-5.6007" y1="-1.6383" x2="-5.1943" y2="-1.6129" layer="21"/>
+<rectangle x1="-4.5339" y1="-1.6383" x2="-4.1275" y2="-1.6129" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.6383" x2="-3.3909" y2="-1.6129" layer="21"/>
+<rectangle x1="-1.5113" y1="-1.6383" x2="-1.0795" y2="-1.6129" layer="21"/>
+<rectangle x1="-0.1651" y1="-1.6383" x2="0.5207" y2="-1.6129" layer="21"/>
+<rectangle x1="1.3589" y1="-1.6383" x2="1.7145" y2="-1.6129" layer="21"/>
+<rectangle x1="2.0447" y1="-1.6383" x2="2.4003" y2="-1.6129" layer="21"/>
+<rectangle x1="3.1369" y1="-1.6383" x2="3.4925" y2="-1.6129" layer="21"/>
+<rectangle x1="4.3561" y1="-1.6383" x2="4.9403" y2="-1.6129" layer="21"/>
+<rectangle x1="-5.6007" y1="-1.6129" x2="-5.2197" y2="-1.5875" layer="21"/>
+<rectangle x1="-4.5085" y1="-1.6129" x2="-4.1275" y2="-1.5875" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.6129" x2="-3.3909" y2="-1.5875" layer="21"/>
+<rectangle x1="-1.5367" y1="-1.6129" x2="-1.1049" y2="-1.5875" layer="21"/>
+<rectangle x1="-0.1905" y1="-1.6129" x2="0.4191" y2="-1.5875" layer="21"/>
+<rectangle x1="1.3589" y1="-1.6129" x2="1.7145" y2="-1.5875" layer="21"/>
+<rectangle x1="2.0447" y1="-1.6129" x2="2.4003" y2="-1.5875" layer="21"/>
+<rectangle x1="3.1369" y1="-1.6129" x2="3.4925" y2="-1.5875" layer="21"/>
+<rectangle x1="4.3307" y1="-1.6129" x2="4.8895" y2="-1.5875" layer="21"/>
+<rectangle x1="-5.6007" y1="-1.5875" x2="-5.2197" y2="-1.5621" layer="21"/>
+<rectangle x1="-4.4831" y1="-1.5875" x2="-4.1021" y2="-1.5621" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.5875" x2="-3.3909" y2="-1.5621" layer="21"/>
+<rectangle x1="-1.5621" y1="-1.5875" x2="-1.1049" y2="-1.5621" layer="21"/>
+<rectangle x1="-0.2159" y1="-1.5875" x2="0.3429" y2="-1.5621" layer="21"/>
+<rectangle x1="1.3589" y1="-1.5875" x2="1.7145" y2="-1.5621" layer="21"/>
+<rectangle x1="2.0447" y1="-1.5875" x2="2.4003" y2="-1.5621" layer="21"/>
+<rectangle x1="3.1369" y1="-1.5875" x2="3.4925" y2="-1.5621" layer="21"/>
+<rectangle x1="4.3053" y1="-1.5875" x2="4.8387" y2="-1.5621" layer="21"/>
+<rectangle x1="-5.6007" y1="-1.5621" x2="-5.2451" y2="-1.5367" layer="21"/>
+<rectangle x1="-4.4831" y1="-1.5621" x2="-4.1021" y2="-1.5367" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.5621" x2="-3.3909" y2="-1.5367" layer="21"/>
+<rectangle x1="-1.5621" y1="-1.5621" x2="-1.1303" y2="-1.5367" layer="21"/>
+<rectangle x1="-0.2413" y1="-1.5621" x2="0.2921" y2="-1.5367" layer="21"/>
+<rectangle x1="1.3589" y1="-1.5621" x2="1.7145" y2="-1.5367" layer="21"/>
+<rectangle x1="2.0447" y1="-1.5621" x2="2.4003" y2="-1.5367" layer="21"/>
+<rectangle x1="3.1369" y1="-1.5621" x2="3.4925" y2="-1.5367" layer="21"/>
+<rectangle x1="4.2799" y1="-1.5621" x2="4.7879" y2="-1.5367" layer="21"/>
+<rectangle x1="-5.6261" y1="-1.5367" x2="-5.2451" y2="-1.5113" layer="21"/>
+<rectangle x1="-4.4577" y1="-1.5367" x2="-4.1021" y2="-1.5113" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.5367" x2="-3.3909" y2="-1.5113" layer="21"/>
+<rectangle x1="-1.5875" y1="-1.5367" x2="-1.1557" y2="-1.5113" layer="21"/>
+<rectangle x1="-0.2667" y1="-1.5367" x2="0.2413" y2="-1.5113" layer="21"/>
+<rectangle x1="1.3589" y1="-1.5367" x2="1.7145" y2="-1.5113" layer="21"/>
+<rectangle x1="2.0447" y1="-1.5367" x2="2.4003" y2="-1.5113" layer="21"/>
+<rectangle x1="3.1369" y1="-1.5367" x2="3.4925" y2="-1.5113" layer="21"/>
+<rectangle x1="4.2799" y1="-1.5367" x2="4.7625" y2="-1.5113" layer="21"/>
+<rectangle x1="-5.6261" y1="-1.5113" x2="-5.2705" y2="-1.4859" layer="21"/>
+<rectangle x1="-4.4577" y1="-1.5113" x2="-4.1021" y2="-1.4859" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.5113" x2="-3.3909" y2="-1.4859" layer="21"/>
+<rectangle x1="-1.5875" y1="-1.5113" x2="-1.1811" y2="-1.4859" layer="21"/>
+<rectangle x1="-0.2921" y1="-1.5113" x2="0.1905" y2="-1.4859" layer="21"/>
+<rectangle x1="1.3589" y1="-1.5113" x2="1.7145" y2="-1.4859" layer="21"/>
+<rectangle x1="2.0447" y1="-1.5113" x2="2.4003" y2="-1.4859" layer="21"/>
+<rectangle x1="3.1369" y1="-1.5113" x2="3.4925" y2="-1.4859" layer="21"/>
+<rectangle x1="4.2545" y1="-1.5113" x2="4.7117" y2="-1.4859" layer="21"/>
+<rectangle x1="-5.6261" y1="-1.4859" x2="-5.2705" y2="-1.4605" layer="21"/>
+<rectangle x1="-4.4577" y1="-1.4859" x2="-4.0767" y2="-1.4605" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.4859" x2="-3.3909" y2="-1.4605" layer="21"/>
+<rectangle x1="-1.6129" y1="-1.4859" x2="-1.1811" y2="-1.4605" layer="21"/>
+<rectangle x1="-0.3175" y1="-1.4859" x2="0.1651" y2="-1.4605" layer="21"/>
+<rectangle x1="1.3589" y1="-1.4859" x2="1.7145" y2="-1.4605" layer="21"/>
+<rectangle x1="2.0447" y1="-1.4859" x2="2.4003" y2="-1.4605" layer="21"/>
+<rectangle x1="3.1369" y1="-1.4859" x2="3.4925" y2="-1.4605" layer="21"/>
+<rectangle x1="4.2291" y1="-1.4859" x2="4.6863" y2="-1.4605" layer="21"/>
+<rectangle x1="-5.6261" y1="-1.4605" x2="-5.2705" y2="-1.4351" layer="21"/>
+<rectangle x1="-4.4323" y1="-1.4605" x2="-4.0767" y2="-1.4351" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.4605" x2="-3.3909" y2="-1.4351" layer="21"/>
+<rectangle x1="-1.6129" y1="-1.4605" x2="-1.2065" y2="-1.4351" layer="21"/>
+<rectangle x1="-0.3175" y1="-1.4605" x2="0.1143" y2="-1.4351" layer="21"/>
+<rectangle x1="1.3589" y1="-1.4605" x2="1.7145" y2="-1.4351" layer="21"/>
+<rectangle x1="2.0447" y1="-1.4605" x2="2.4003" y2="-1.4351" layer="21"/>
+<rectangle x1="3.1369" y1="-1.4605" x2="3.4925" y2="-1.4351" layer="21"/>
+<rectangle x1="4.2037" y1="-1.4605" x2="4.6609" y2="-1.4351" layer="21"/>
+<rectangle x1="-5.6261" y1="-1.4351" x2="-5.2705" y2="-1.4097" layer="21"/>
+<rectangle x1="-4.4323" y1="-1.4351" x2="-4.0767" y2="-1.4097" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.4351" x2="-3.3909" y2="-1.4097" layer="21"/>
+<rectangle x1="-1.6383" y1="-1.4351" x2="-1.2319" y2="-1.4097" layer="21"/>
+<rectangle x1="-0.3429" y1="-1.4351" x2="0.0889" y2="-1.4097" layer="21"/>
+<rectangle x1="1.3589" y1="-1.4351" x2="1.7145" y2="-1.4097" layer="21"/>
+<rectangle x1="2.0447" y1="-1.4351" x2="2.4003" y2="-1.4097" layer="21"/>
+<rectangle x1="3.1369" y1="-1.4351" x2="3.4925" y2="-1.4097" layer="21"/>
+<rectangle x1="4.1783" y1="-1.4351" x2="4.6355" y2="-1.4097" layer="21"/>
+<rectangle x1="-5.6261" y1="-1.4097" x2="-5.2959" y2="-1.3843" layer="21"/>
+<rectangle x1="-4.4323" y1="-1.4097" x2="-4.0767" y2="-1.3843" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.4097" x2="-3.3909" y2="-1.3843" layer="21"/>
+<rectangle x1="-1.6383" y1="-1.4097" x2="-1.2319" y2="-1.3843" layer="21"/>
+<rectangle x1="-0.3683" y1="-1.4097" x2="0.0635" y2="-1.3843" layer="21"/>
+<rectangle x1="1.3589" y1="-1.4097" x2="1.7145" y2="-1.3843" layer="21"/>
+<rectangle x1="2.0447" y1="-1.4097" x2="2.4003" y2="-1.3843" layer="21"/>
+<rectangle x1="3.1369" y1="-1.4097" x2="3.4925" y2="-1.3843" layer="21"/>
+<rectangle x1="4.1783" y1="-1.4097" x2="4.6101" y2="-1.3843" layer="21"/>
+<rectangle x1="-5.6261" y1="-1.3843" x2="-5.2959" y2="-1.3589" layer="21"/>
+<rectangle x1="-4.4323" y1="-1.3843" x2="-4.0767" y2="-1.3589" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.3843" x2="-3.3909" y2="-1.3589" layer="21"/>
+<rectangle x1="-1.6637" y1="-1.3843" x2="-1.2573" y2="-1.3589" layer="21"/>
+<rectangle x1="-0.3937" y1="-1.3843" x2="0.0381" y2="-1.3589" layer="21"/>
+<rectangle x1="1.3589" y1="-1.3843" x2="1.7145" y2="-1.3589" layer="21"/>
+<rectangle x1="2.0447" y1="-1.3843" x2="2.4003" y2="-1.3589" layer="21"/>
+<rectangle x1="3.1369" y1="-1.3843" x2="3.4925" y2="-1.3589" layer="21"/>
+<rectangle x1="4.1529" y1="-1.3843" x2="4.5847" y2="-1.3589" layer="21"/>
+<rectangle x1="-5.6261" y1="-1.3589" x2="-5.2959" y2="-1.3335" layer="21"/>
+<rectangle x1="-4.4323" y1="-1.3589" x2="-4.0767" y2="-1.3335" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.3589" x2="-3.3909" y2="-1.3335" layer="21"/>
+<rectangle x1="-1.6637" y1="-1.3589" x2="-1.2573" y2="-1.3335" layer="21"/>
+<rectangle x1="-0.3937" y1="-1.3589" x2="0.0127" y2="-1.3335" layer="21"/>
+<rectangle x1="1.3589" y1="-1.3589" x2="1.7145" y2="-1.3335" layer="21"/>
+<rectangle x1="2.0447" y1="-1.3589" x2="2.4003" y2="-1.3335" layer="21"/>
+<rectangle x1="3.1369" y1="-1.3589" x2="3.4925" y2="-1.3335" layer="21"/>
+<rectangle x1="4.1275" y1="-1.3589" x2="4.5593" y2="-1.3335" layer="21"/>
+<rectangle x1="-5.6261" y1="-1.3335" x2="-5.2959" y2="-1.3081" layer="21"/>
+<rectangle x1="-4.4323" y1="-1.3335" x2="-4.0767" y2="-1.3081" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.3335" x2="-3.3909" y2="-1.3081" layer="21"/>
+<rectangle x1="-1.6637" y1="-1.3335" x2="-1.2827" y2="-1.3081" layer="21"/>
+<rectangle x1="-0.4191" y1="-1.3335" x2="-0.0127" y2="-1.3081" layer="21"/>
+<rectangle x1="1.3589" y1="-1.3335" x2="1.7145" y2="-1.3081" layer="21"/>
+<rectangle x1="2.0447" y1="-1.3335" x2="2.4003" y2="-1.3081" layer="21"/>
+<rectangle x1="3.1369" y1="-1.3335" x2="3.4925" y2="-1.3081" layer="21"/>
+<rectangle x1="4.1275" y1="-1.3335" x2="4.5339" y2="-1.3081" layer="21"/>
+<rectangle x1="-5.6261" y1="-1.3081" x2="-5.2705" y2="-1.2827" layer="21"/>
+<rectangle x1="-4.4323" y1="-1.3081" x2="-4.0767" y2="-1.2827" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.3081" x2="-3.3909" y2="-1.2827" layer="21"/>
+<rectangle x1="-1.6891" y1="-1.3081" x2="-1.2827" y2="-1.2827" layer="21"/>
+<rectangle x1="-0.4445" y1="-1.3081" x2="-0.0381" y2="-1.2827" layer="21"/>
+<rectangle x1="1.3589" y1="-1.3081" x2="1.7145" y2="-1.2827" layer="21"/>
+<rectangle x1="2.0447" y1="-1.3081" x2="2.4003" y2="-1.2827" layer="21"/>
+<rectangle x1="3.1369" y1="-1.3081" x2="3.4925" y2="-1.2827" layer="21"/>
+<rectangle x1="4.1021" y1="-1.3081" x2="4.5085" y2="-1.2827" layer="21"/>
+<rectangle x1="-5.6261" y1="-1.2827" x2="-5.2705" y2="-1.2573" layer="21"/>
+<rectangle x1="-4.4323" y1="-1.2827" x2="-4.0767" y2="-1.2573" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.2827" x2="-3.3909" y2="-1.2573" layer="21"/>
+<rectangle x1="-1.6891" y1="-1.2827" x2="-1.3081" y2="-1.2573" layer="21"/>
+<rectangle x1="-0.4445" y1="-1.2827" x2="-0.0635" y2="-1.2573" layer="21"/>
+<rectangle x1="1.3589" y1="-1.2827" x2="1.7145" y2="-1.2573" layer="21"/>
+<rectangle x1="2.0447" y1="-1.2827" x2="2.4003" y2="-1.2573" layer="21"/>
+<rectangle x1="3.1369" y1="-1.2827" x2="3.4925" y2="-1.2573" layer="21"/>
+<rectangle x1="4.0767" y1="-1.2827" x2="4.4831" y2="-1.2573" layer="21"/>
+<rectangle x1="-5.6261" y1="-1.2573" x2="-5.2705" y2="-1.2319" layer="21"/>
+<rectangle x1="-4.4323" y1="-1.2573" x2="-4.0767" y2="-1.2319" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.2573" x2="-3.3909" y2="-1.2319" layer="21"/>
+<rectangle x1="-1.6891" y1="-1.2573" x2="-1.3081" y2="-1.2319" layer="21"/>
+<rectangle x1="-0.4699" y1="-1.2573" x2="-0.0889" y2="-1.2319" layer="21"/>
+<rectangle x1="1.3589" y1="-1.2573" x2="1.7145" y2="-1.2319" layer="21"/>
+<rectangle x1="2.0447" y1="-1.2573" x2="2.4003" y2="-1.2319" layer="21"/>
+<rectangle x1="3.1369" y1="-1.2573" x2="3.4925" y2="-1.2319" layer="21"/>
+<rectangle x1="4.0767" y1="-1.2573" x2="4.4831" y2="-1.2319" layer="21"/>
+<rectangle x1="-5.6261" y1="-1.2319" x2="-5.2705" y2="-1.2065" layer="21"/>
+<rectangle x1="-4.4577" y1="-1.2319" x2="-4.0767" y2="-1.2065" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.2319" x2="-3.3909" y2="-1.2065" layer="21"/>
+<rectangle x1="-1.7145" y1="-1.2319" x2="-1.3335" y2="-1.2065" layer="21"/>
+<rectangle x1="-0.4699" y1="-1.2319" x2="-0.1143" y2="-1.2065" layer="21"/>
+<rectangle x1="1.3589" y1="-1.2319" x2="1.7145" y2="-1.2065" layer="21"/>
+<rectangle x1="2.0447" y1="-1.2319" x2="2.4003" y2="-1.2065" layer="21"/>
+<rectangle x1="3.1369" y1="-1.2319" x2="3.4925" y2="-1.2065" layer="21"/>
+<rectangle x1="4.0513" y1="-1.2319" x2="4.4577" y2="-1.2065" layer="21"/>
+<rectangle x1="-5.6261" y1="-1.2065" x2="-5.2451" y2="-1.1811" layer="21"/>
+<rectangle x1="-4.4577" y1="-1.2065" x2="-4.1021" y2="-1.1811" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.2065" x2="-3.3909" y2="-1.1811" layer="21"/>
+<rectangle x1="-1.7145" y1="-1.2065" x2="-1.3335" y2="-1.1811" layer="21"/>
+<rectangle x1="-0.4953" y1="-1.2065" x2="-0.1143" y2="-1.1811" layer="21"/>
+<rectangle x1="1.3589" y1="-1.2065" x2="1.7145" y2="-1.1811" layer="21"/>
+<rectangle x1="2.0447" y1="-1.2065" x2="2.4003" y2="-1.1811" layer="21"/>
+<rectangle x1="3.1369" y1="-1.2065" x2="3.4925" y2="-1.1811" layer="21"/>
+<rectangle x1="4.0513" y1="-1.2065" x2="4.4323" y2="-1.1811" layer="21"/>
+<rectangle x1="-5.6007" y1="-1.1811" x2="-5.2451" y2="-1.1557" layer="21"/>
+<rectangle x1="-4.4831" y1="-1.1811" x2="-4.1021" y2="-1.1557" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.1811" x2="-3.3909" y2="-1.1557" layer="21"/>
+<rectangle x1="-1.7145" y1="-1.1811" x2="-1.3335" y2="-1.1557" layer="21"/>
+<rectangle x1="-0.5207" y1="-1.1811" x2="-0.1397" y2="-1.1557" layer="21"/>
+<rectangle x1="1.3589" y1="-1.1811" x2="1.7145" y2="-1.1557" layer="21"/>
+<rectangle x1="2.0447" y1="-1.1811" x2="2.4003" y2="-1.1557" layer="21"/>
+<rectangle x1="3.1369" y1="-1.1811" x2="3.4925" y2="-1.1557" layer="21"/>
+<rectangle x1="4.0259" y1="-1.1811" x2="4.4323" y2="-1.1557" layer="21"/>
+<rectangle x1="-5.6007" y1="-1.1557" x2="-5.2197" y2="-1.1303" layer="21"/>
+<rectangle x1="-4.4831" y1="-1.1557" x2="-4.1021" y2="-1.1303" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.1557" x2="-3.3909" y2="-1.1303" layer="21"/>
+<rectangle x1="-1.7399" y1="-1.1557" x2="-1.3589" y2="-1.1303" layer="21"/>
+<rectangle x1="-0.5207" y1="-1.1557" x2="-0.1651" y2="-1.1303" layer="21"/>
+<rectangle x1="1.3589" y1="-1.1557" x2="1.7145" y2="-1.1303" layer="21"/>
+<rectangle x1="2.0447" y1="-1.1557" x2="2.4003" y2="-1.1303" layer="21"/>
+<rectangle x1="3.1369" y1="-1.1557" x2="3.4925" y2="-1.1303" layer="21"/>
+<rectangle x1="4.0259" y1="-1.1557" x2="4.4069" y2="-1.1303" layer="21"/>
+<rectangle x1="-5.6007" y1="-1.1303" x2="-5.2197" y2="-1.1049" layer="21"/>
+<rectangle x1="-4.5085" y1="-1.1303" x2="-4.1021" y2="-1.1049" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.1303" x2="-3.3909" y2="-1.1049" layer="21"/>
+<rectangle x1="-1.7399" y1="-1.1303" x2="-1.3589" y2="-1.1049" layer="21"/>
+<rectangle x1="-0.5461" y1="-1.1303" x2="-0.1651" y2="-1.1049" layer="21"/>
+<rectangle x1="1.3589" y1="-1.1303" x2="1.7145" y2="-1.1049" layer="21"/>
+<rectangle x1="2.0447" y1="-1.1303" x2="2.4003" y2="-1.1049" layer="21"/>
+<rectangle x1="3.1369" y1="-1.1303" x2="3.4925" y2="-1.1049" layer="21"/>
+<rectangle x1="4.0005" y1="-1.1303" x2="4.3815" y2="-1.1049" layer="21"/>
+<rectangle x1="-5.6007" y1="-1.1049" x2="-5.1943" y2="-1.0795" layer="21"/>
+<rectangle x1="-4.5085" y1="-1.1049" x2="-4.1275" y2="-1.0795" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.1049" x2="-3.3909" y2="-1.0795" layer="21"/>
+<rectangle x1="-1.7399" y1="-1.1049" x2="-1.3589" y2="-1.0795" layer="21"/>
+<rectangle x1="-0.5461" y1="-1.1049" x2="-0.1905" y2="-1.0795" layer="21"/>
+<rectangle x1="1.3589" y1="-1.1049" x2="1.7145" y2="-1.0795" layer="21"/>
+<rectangle x1="2.0447" y1="-1.1049" x2="2.4003" y2="-1.0795" layer="21"/>
+<rectangle x1="3.1369" y1="-1.1049" x2="3.4925" y2="-1.0795" layer="21"/>
+<rectangle x1="4.0005" y1="-1.1049" x2="4.3815" y2="-1.0795" layer="21"/>
+<rectangle x1="-5.5753" y1="-1.0795" x2="-5.1689" y2="-1.0541" layer="21"/>
+<rectangle x1="-4.5339" y1="-1.0795" x2="-4.1275" y2="-1.0541" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.0795" x2="-3.3909" y2="-1.0541" layer="21"/>
+<rectangle x1="-1.7399" y1="-1.0795" x2="-1.3843" y2="-1.0541" layer="21"/>
+<rectangle x1="-0.5461" y1="-1.0795" x2="-0.2159" y2="-1.0541" layer="21"/>
+<rectangle x1="1.3589" y1="-1.0795" x2="1.7145" y2="-1.0541" layer="21"/>
+<rectangle x1="2.0447" y1="-1.0795" x2="2.4003" y2="-1.0541" layer="21"/>
+<rectangle x1="3.1369" y1="-1.0795" x2="3.4925" y2="-1.0541" layer="21"/>
+<rectangle x1="3.9751" y1="-1.0795" x2="4.3561" y2="-1.0541" layer="21"/>
+<rectangle x1="-5.5753" y1="-1.0541" x2="-5.1435" y2="-1.0287" layer="21"/>
+<rectangle x1="-4.5593" y1="-1.0541" x2="-4.1275" y2="-1.0287" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.0541" x2="-3.3909" y2="-1.0287" layer="21"/>
+<rectangle x1="-1.7399" y1="-1.0541" x2="-1.3843" y2="-1.0287" layer="21"/>
+<rectangle x1="-0.5715" y1="-1.0541" x2="-0.2159" y2="-1.0287" layer="21"/>
+<rectangle x1="1.3589" y1="-1.0541" x2="1.7145" y2="-1.0287" layer="21"/>
+<rectangle x1="2.0447" y1="-1.0541" x2="2.4003" y2="-1.0287" layer="21"/>
+<rectangle x1="3.1369" y1="-1.0541" x2="3.4925" y2="-1.0287" layer="21"/>
+<rectangle x1="3.9751" y1="-1.0541" x2="4.3561" y2="-1.0287" layer="21"/>
+<rectangle x1="-5.5753" y1="-1.0287" x2="-5.1181" y2="-1.0033" layer="21"/>
+<rectangle x1="-4.5847" y1="-1.0287" x2="-4.1529" y2="-1.0033" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.0287" x2="-3.3909" y2="-1.0033" layer="21"/>
+<rectangle x1="-1.7653" y1="-1.0287" x2="-1.3843" y2="-1.0033" layer="21"/>
+<rectangle x1="-0.5715" y1="-1.0287" x2="-0.2413" y2="-1.0033" layer="21"/>
+<rectangle x1="1.3589" y1="-1.0287" x2="1.7145" y2="-1.0033" layer="21"/>
+<rectangle x1="2.0447" y1="-1.0287" x2="2.4003" y2="-1.0033" layer="21"/>
+<rectangle x1="3.1369" y1="-1.0287" x2="3.4925" y2="-1.0033" layer="21"/>
+<rectangle x1="3.9751" y1="-1.0287" x2="4.3307" y2="-1.0033" layer="21"/>
+<rectangle x1="-5.5499" y1="-1.0033" x2="-5.0927" y2="-0.9779" layer="21"/>
+<rectangle x1="-4.6101" y1="-1.0033" x2="-4.1529" y2="-0.9779" layer="21"/>
+<rectangle x1="-3.7719" y1="-1.0033" x2="-3.3909" y2="-0.9779" layer="21"/>
+<rectangle x1="-1.7653" y1="-1.0033" x2="-1.3843" y2="-0.9779" layer="21"/>
+<rectangle x1="-0.5969" y1="-1.0033" x2="-0.2413" y2="-0.9779" layer="21"/>
+<rectangle x1="1.3589" y1="-1.0033" x2="1.7145" y2="-0.9779" layer="21"/>
+<rectangle x1="2.0447" y1="-1.0033" x2="2.4003" y2="-0.9779" layer="21"/>
+<rectangle x1="3.1369" y1="-1.0033" x2="3.4925" y2="-0.9779" layer="21"/>
+<rectangle x1="3.9497" y1="-1.0033" x2="4.3307" y2="-0.9779" layer="21"/>
+<rectangle x1="-5.5245" y1="-0.9779" x2="-5.0419" y2="-0.9525" layer="21"/>
+<rectangle x1="-4.6101" y1="-0.9779" x2="-4.1783" y2="-0.9525" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.9779" x2="-3.3909" y2="-0.9525" layer="21"/>
+<rectangle x1="-1.7653" y1="-0.9779" x2="-1.4097" y2="-0.9525" layer="21"/>
+<rectangle x1="-0.5969" y1="-0.9779" x2="-0.2667" y2="-0.9525" layer="21"/>
+<rectangle x1="1.3589" y1="-0.9779" x2="1.7145" y2="-0.9525" layer="21"/>
+<rectangle x1="2.0447" y1="-0.9779" x2="2.4003" y2="-0.9525" layer="21"/>
+<rectangle x1="3.1369" y1="-0.9779" x2="3.4925" y2="-0.9525" layer="21"/>
+<rectangle x1="3.9497" y1="-0.9779" x2="4.3307" y2="-0.9525" layer="21"/>
+<rectangle x1="-5.5245" y1="-0.9525" x2="-4.9657" y2="-0.9271" layer="21"/>
+<rectangle x1="-4.6355" y1="-0.9525" x2="-4.2037" y2="-0.9271" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.9525" x2="-3.3909" y2="-0.9271" layer="21"/>
+<rectangle x1="-1.7653" y1="-0.9525" x2="-1.4097" y2="-0.9271" layer="21"/>
+<rectangle x1="-0.5969" y1="-0.9525" x2="-0.2667" y2="-0.9271" layer="21"/>
+<rectangle x1="1.3589" y1="-0.9525" x2="1.7145" y2="-0.9271" layer="21"/>
+<rectangle x1="2.0447" y1="-0.9525" x2="2.4003" y2="-0.9271" layer="21"/>
+<rectangle x1="3.1369" y1="-0.9525" x2="3.4925" y2="-0.9271" layer="21"/>
+<rectangle x1="3.9497" y1="-0.9525" x2="4.3053" y2="-0.9271" layer="21"/>
+<rectangle x1="-5.4991" y1="-0.9271" x2="-4.8641" y2="-0.9017" layer="21"/>
+<rectangle x1="-4.6609" y1="-0.9271" x2="-4.2037" y2="-0.9017" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.9271" x2="-3.3909" y2="-0.9017" layer="21"/>
+<rectangle x1="-1.7653" y1="-0.9271" x2="-1.4097" y2="-0.9017" layer="21"/>
+<rectangle x1="-0.6223" y1="-0.9271" x2="-0.2667" y2="-0.9017" layer="21"/>
+<rectangle x1="1.3589" y1="-0.9271" x2="1.7145" y2="-0.9017" layer="21"/>
+<rectangle x1="2.0447" y1="-0.9271" x2="2.4003" y2="-0.9017" layer="21"/>
+<rectangle x1="3.1369" y1="-0.9271" x2="3.4925" y2="-0.9017" layer="21"/>
+<rectangle x1="3.9243" y1="-0.9271" x2="4.3053" y2="-0.9017" layer="21"/>
+<rectangle x1="-5.4737" y1="-0.9017" x2="-4.8895" y2="-0.8763" layer="21"/>
+<rectangle x1="-4.6863" y1="-0.9017" x2="-4.2291" y2="-0.8763" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.9017" x2="-3.3909" y2="-0.8763" layer="21"/>
+<rectangle x1="-1.7653" y1="-0.9017" x2="-1.4097" y2="-0.8763" layer="21"/>
+<rectangle x1="-0.6223" y1="-0.9017" x2="-0.2921" y2="-0.8763" layer="21"/>
+<rectangle x1="1.3589" y1="-0.9017" x2="1.7145" y2="-0.8763" layer="21"/>
+<rectangle x1="2.0447" y1="-0.9017" x2="2.4003" y2="-0.8763" layer="21"/>
+<rectangle x1="3.1369" y1="-0.9017" x2="3.4925" y2="-0.8763" layer="21"/>
+<rectangle x1="3.9243" y1="-0.9017" x2="4.2799" y2="-0.8763" layer="21"/>
+<rectangle x1="-5.4737" y1="-0.8763" x2="-4.8895" y2="-0.8509" layer="21"/>
+<rectangle x1="-4.7117" y1="-0.8763" x2="-4.2545" y2="-0.8509" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.8763" x2="-3.3909" y2="-0.8509" layer="21"/>
+<rectangle x1="-1.7653" y1="-0.8763" x2="-1.4097" y2="-0.8509" layer="21"/>
+<rectangle x1="-0.6223" y1="-0.8763" x2="-0.2921" y2="-0.8509" layer="21"/>
+<rectangle x1="1.3589" y1="-0.8763" x2="1.7145" y2="-0.8509" layer="21"/>
+<rectangle x1="2.0447" y1="-0.8763" x2="2.4003" y2="-0.8509" layer="21"/>
+<rectangle x1="3.1369" y1="-0.8763" x2="3.4925" y2="-0.8509" layer="21"/>
+<rectangle x1="3.9243" y1="-0.8763" x2="4.2799" y2="-0.8509" layer="21"/>
+<rectangle x1="-5.4483" y1="-0.8509" x2="-4.9149" y2="-0.8255" layer="21"/>
+<rectangle x1="-4.7371" y1="-0.8509" x2="-4.2799" y2="-0.8255" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.8509" x2="-3.3909" y2="-0.8255" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.8509" x2="-1.4097" y2="-0.8255" layer="21"/>
+<rectangle x1="-0.6477" y1="-0.8509" x2="-0.2921" y2="-0.8255" layer="21"/>
+<rectangle x1="1.3589" y1="-0.8509" x2="1.7145" y2="-0.8255" layer="21"/>
+<rectangle x1="2.0447" y1="-0.8509" x2="2.4003" y2="-0.8255" layer="21"/>
+<rectangle x1="3.1369" y1="-0.8509" x2="3.4925" y2="-0.8255" layer="21"/>
+<rectangle x1="3.8989" y1="-0.8509" x2="4.2799" y2="-0.8255" layer="21"/>
+<rectangle x1="-5.4229" y1="-0.8255" x2="-4.9403" y2="-0.8001" layer="21"/>
+<rectangle x1="-4.7371" y1="-0.8255" x2="-4.2799" y2="-0.8001" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.8255" x2="-3.3909" y2="-0.8001" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.8255" x2="-1.4097" y2="-0.8001" layer="21"/>
+<rectangle x1="-0.6477" y1="-0.8255" x2="-0.3175" y2="-0.8001" layer="21"/>
+<rectangle x1="1.3589" y1="-0.8255" x2="1.7145" y2="-0.8001" layer="21"/>
+<rectangle x1="2.0447" y1="-0.8255" x2="2.4003" y2="-0.8001" layer="21"/>
+<rectangle x1="3.1369" y1="-0.8255" x2="3.4925" y2="-0.8001" layer="21"/>
+<rectangle x1="3.8989" y1="-0.8255" x2="4.2799" y2="-0.8001" layer="21"/>
+<rectangle x1="-5.3975" y1="-0.8001" x2="-4.9403" y2="-0.7747" layer="21"/>
+<rectangle x1="-4.7625" y1="-0.8001" x2="-4.3053" y2="-0.7747" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.8001" x2="-3.3909" y2="-0.7747" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.8001" x2="-1.4097" y2="-0.7747" layer="21"/>
+<rectangle x1="-0.6477" y1="-0.8001" x2="-0.3175" y2="-0.7747" layer="21"/>
+<rectangle x1="1.3589" y1="-0.8001" x2="1.7145" y2="-0.7747" layer="21"/>
+<rectangle x1="2.0447" y1="-0.8001" x2="2.4003" y2="-0.7747" layer="21"/>
+<rectangle x1="3.1369" y1="-0.8001" x2="3.4925" y2="-0.7747" layer="21"/>
+<rectangle x1="3.8989" y1="-0.8001" x2="4.2545" y2="-0.7747" layer="21"/>
+<rectangle x1="-5.3721" y1="-0.7747" x2="-4.9657" y2="-0.7493" layer="21"/>
+<rectangle x1="-4.7879" y1="-0.7747" x2="-4.3307" y2="-0.7493" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.7747" x2="-3.3909" y2="-0.7493" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.7747" x2="-1.4097" y2="-0.7493" layer="21"/>
+<rectangle x1="-0.6731" y1="-0.7747" x2="-0.3175" y2="-0.7493" layer="21"/>
+<rectangle x1="1.3589" y1="-0.7747" x2="1.7145" y2="-0.7493" layer="21"/>
+<rectangle x1="2.0447" y1="-0.7747" x2="2.4003" y2="-0.7493" layer="21"/>
+<rectangle x1="3.1369" y1="-0.7747" x2="3.4925" y2="-0.7493" layer="21"/>
+<rectangle x1="3.8989" y1="-0.7747" x2="4.2545" y2="-0.7493" layer="21"/>
+<rectangle x1="-5.3213" y1="-0.7493" x2="-4.9911" y2="-0.7239" layer="21"/>
+<rectangle x1="-4.8133" y1="-0.7493" x2="-4.3561" y2="-0.7239" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.7493" x2="-3.3909" y2="-0.7239" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.7493" x2="-1.4097" y2="-0.7239" layer="21"/>
+<rectangle x1="-0.6731" y1="-0.7493" x2="-0.3429" y2="-0.7239" layer="21"/>
+<rectangle x1="1.3589" y1="-0.7493" x2="1.7145" y2="-0.7239" layer="21"/>
+<rectangle x1="2.0447" y1="-0.7493" x2="2.4003" y2="-0.7239" layer="21"/>
+<rectangle x1="3.1369" y1="-0.7493" x2="3.4925" y2="-0.7239" layer="21"/>
+<rectangle x1="3.8735" y1="-0.7493" x2="4.2545" y2="-0.7239" layer="21"/>
+<rectangle x1="-5.2959" y1="-0.7239" x2="-4.9911" y2="-0.6985" layer="21"/>
+<rectangle x1="-4.8133" y1="-0.7239" x2="-4.3815" y2="-0.6985" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.7239" x2="-3.3909" y2="-0.6985" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.7239" x2="-1.4097" y2="-0.6985" layer="21"/>
+<rectangle x1="-0.6731" y1="-0.7239" x2="-0.3429" y2="-0.6985" layer="21"/>
+<rectangle x1="1.3589" y1="-0.7239" x2="1.7145" y2="-0.6985" layer="21"/>
+<rectangle x1="2.0447" y1="-0.7239" x2="2.4003" y2="-0.6985" layer="21"/>
+<rectangle x1="3.1369" y1="-0.7239" x2="3.4925" y2="-0.6985" layer="21"/>
+<rectangle x1="3.8735" y1="-0.7239" x2="4.2545" y2="-0.6985" layer="21"/>
+<rectangle x1="-5.2705" y1="-0.6985" x2="-5.0165" y2="-0.6731" layer="21"/>
+<rectangle x1="-4.8387" y1="-0.6985" x2="-4.3815" y2="-0.6731" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.6985" x2="-3.3909" y2="-0.6731" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.6985" x2="-1.4097" y2="-0.6731" layer="21"/>
+<rectangle x1="-0.6731" y1="-0.6985" x2="-0.3429" y2="-0.6731" layer="21"/>
+<rectangle x1="1.3589" y1="-0.6985" x2="1.7145" y2="-0.6731" layer="21"/>
+<rectangle x1="2.0447" y1="-0.6985" x2="2.4003" y2="-0.6731" layer="21"/>
+<rectangle x1="3.1369" y1="-0.6985" x2="3.4925" y2="-0.6731" layer="21"/>
+<rectangle x1="3.8735" y1="-0.6985" x2="4.2291" y2="-0.6731" layer="21"/>
+<rectangle x1="-5.2197" y1="-0.6731" x2="-5.0419" y2="-0.6477" layer="21"/>
+<rectangle x1="-4.8641" y1="-0.6731" x2="-4.4069" y2="-0.6477" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.6731" x2="-3.3909" y2="-0.6477" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.6731" x2="-1.4097" y2="-0.6477" layer="21"/>
+<rectangle x1="-0.6731" y1="-0.6731" x2="-0.3429" y2="-0.6477" layer="21"/>
+<rectangle x1="1.3589" y1="-0.6731" x2="1.7145" y2="-0.6477" layer="21"/>
+<rectangle x1="2.0447" y1="-0.6731" x2="2.4003" y2="-0.6477" layer="21"/>
+<rectangle x1="3.1369" y1="-0.6731" x2="3.4925" y2="-0.6477" layer="21"/>
+<rectangle x1="3.8735" y1="-0.6731" x2="4.2291" y2="-0.6477" layer="21"/>
+<rectangle x1="-5.1689" y1="-0.6477" x2="-5.0673" y2="-0.6223" layer="21"/>
+<rectangle x1="-4.8895" y1="-0.6477" x2="-4.4323" y2="-0.6223" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.6477" x2="-3.3909" y2="-0.6223" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.6477" x2="-1.4097" y2="-0.6223" layer="21"/>
+<rectangle x1="-0.6985" y1="-0.6477" x2="-0.3683" y2="-0.6223" layer="21"/>
+<rectangle x1="1.3589" y1="-0.6477" x2="1.7145" y2="-0.6223" layer="21"/>
+<rectangle x1="2.0447" y1="-0.6477" x2="2.4003" y2="-0.6223" layer="21"/>
+<rectangle x1="3.1369" y1="-0.6477" x2="3.4925" y2="-0.6223" layer="21"/>
+<rectangle x1="3.8735" y1="-0.6477" x2="4.2291" y2="-0.6223" layer="21"/>
+<rectangle x1="-4.8895" y1="-0.6223" x2="-4.4577" y2="-0.5969" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.6223" x2="-3.3909" y2="-0.5969" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.6223" x2="-1.4097" y2="-0.5969" layer="21"/>
+<rectangle x1="-0.6985" y1="-0.6223" x2="-0.3683" y2="-0.5969" layer="21"/>
+<rectangle x1="1.3589" y1="-0.6223" x2="1.7145" y2="-0.5969" layer="21"/>
+<rectangle x1="2.0447" y1="-0.6223" x2="2.4003" y2="-0.5969" layer="21"/>
+<rectangle x1="3.1369" y1="-0.6223" x2="3.4925" y2="-0.5969" layer="21"/>
+<rectangle x1="3.8735" y1="-0.6223" x2="4.2291" y2="-0.5969" layer="21"/>
+<rectangle x1="-4.9149" y1="-0.5969" x2="-4.4831" y2="-0.5715" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.5969" x2="-3.3909" y2="-0.5715" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.5969" x2="-1.1303" y2="-0.5715" layer="21"/>
+<rectangle x1="-0.6985" y1="-0.5969" x2="-0.3683" y2="-0.5715" layer="21"/>
+<rectangle x1="1.3589" y1="-0.5969" x2="1.7145" y2="-0.5715" layer="21"/>
+<rectangle x1="2.0447" y1="-0.5969" x2="2.7813" y2="-0.5715" layer="21"/>
+<rectangle x1="3.1369" y1="-0.5969" x2="3.4925" y2="-0.5715" layer="21"/>
+<rectangle x1="3.8735" y1="-0.5969" x2="4.2291" y2="-0.5715" layer="21"/>
+<rectangle x1="-4.9403" y1="-0.5715" x2="-4.4831" y2="-0.5461" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.5715" x2="-3.3909" y2="-0.5461" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.5715" x2="-1.0541" y2="-0.5461" layer="21"/>
+<rectangle x1="-0.6985" y1="-0.5715" x2="-0.3683" y2="-0.5461" layer="21"/>
+<rectangle x1="1.3589" y1="-0.5715" x2="1.7145" y2="-0.5461" layer="21"/>
+<rectangle x1="2.0447" y1="-0.5715" x2="2.7813" y2="-0.5461" layer="21"/>
+<rectangle x1="3.1369" y1="-0.5715" x2="3.4925" y2="-0.5461" layer="21"/>
+<rectangle x1="3.8481" y1="-0.5715" x2="4.2291" y2="-0.5461" layer="21"/>
+<rectangle x1="-4.9657" y1="-0.5461" x2="-4.5085" y2="-0.5207" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.5461" x2="-3.3909" y2="-0.5207" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.5461" x2="-1.0541" y2="-0.5207" layer="21"/>
+<rectangle x1="-0.6985" y1="-0.5461" x2="-0.3683" y2="-0.5207" layer="21"/>
+<rectangle x1="1.3589" y1="-0.5461" x2="1.7145" y2="-0.5207" layer="21"/>
+<rectangle x1="2.0447" y1="-0.5461" x2="2.7813" y2="-0.5207" layer="21"/>
+<rectangle x1="3.1369" y1="-0.5461" x2="3.4925" y2="-0.5207" layer="21"/>
+<rectangle x1="3.8481" y1="-0.5461" x2="4.2291" y2="-0.5207" layer="21"/>
+<rectangle x1="-4.9911" y1="-0.5207" x2="-4.5339" y2="-0.4953" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.5207" x2="-3.3909" y2="-0.4953" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.5207" x2="-1.0541" y2="-0.4953" layer="21"/>
+<rectangle x1="-0.6985" y1="-0.5207" x2="-0.3683" y2="-0.4953" layer="21"/>
+<rectangle x1="1.3589" y1="-0.5207" x2="1.7145" y2="-0.4953" layer="21"/>
+<rectangle x1="2.0447" y1="-0.5207" x2="2.7813" y2="-0.4953" layer="21"/>
+<rectangle x1="3.1369" y1="-0.5207" x2="3.4925" y2="-0.4953" layer="21"/>
+<rectangle x1="3.8481" y1="-0.5207" x2="4.2291" y2="-0.4953" layer="21"/>
+<rectangle x1="-4.9911" y1="-0.4953" x2="-4.5593" y2="-0.4699" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.4953" x2="-3.3909" y2="-0.4699" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.4953" x2="-1.0541" y2="-0.4699" layer="21"/>
+<rectangle x1="-0.6985" y1="-0.4953" x2="-0.3683" y2="-0.4699" layer="21"/>
+<rectangle x1="1.3589" y1="-0.4953" x2="1.7145" y2="-0.4699" layer="21"/>
+<rectangle x1="2.0447" y1="-0.4953" x2="2.7813" y2="-0.4699" layer="21"/>
+<rectangle x1="3.1369" y1="-0.4953" x2="3.4925" y2="-0.4699" layer="21"/>
+<rectangle x1="3.8481" y1="-0.4953" x2="4.2291" y2="-0.4699" layer="21"/>
+<rectangle x1="-5.0165" y1="-0.4699" x2="-4.5847" y2="-0.4445" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.4699" x2="-3.3909" y2="-0.4445" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.4699" x2="-1.0541" y2="-0.4445" layer="21"/>
+<rectangle x1="-0.6985" y1="-0.4699" x2="-0.3683" y2="-0.4445" layer="21"/>
+<rectangle x1="1.3589" y1="-0.4699" x2="1.7145" y2="-0.4445" layer="21"/>
+<rectangle x1="2.0447" y1="-0.4699" x2="2.7813" y2="-0.4445" layer="21"/>
+<rectangle x1="3.1369" y1="-0.4699" x2="3.4925" y2="-0.4445" layer="21"/>
+<rectangle x1="3.8481" y1="-0.4699" x2="4.2291" y2="-0.4445" layer="21"/>
+<rectangle x1="-5.0419" y1="-0.4445" x2="-4.5847" y2="-0.4191" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.4445" x2="-3.3909" y2="-0.4191" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.4445" x2="-1.0541" y2="-0.4191" layer="21"/>
+<rectangle x1="-0.6985" y1="-0.4445" x2="-0.3683" y2="-0.4191" layer="21"/>
+<rectangle x1="1.3589" y1="-0.4445" x2="1.7145" y2="-0.4191" layer="21"/>
+<rectangle x1="2.0447" y1="-0.4445" x2="2.7813" y2="-0.4191" layer="21"/>
+<rectangle x1="3.1369" y1="-0.4445" x2="3.4925" y2="-0.4191" layer="21"/>
+<rectangle x1="3.8481" y1="-0.4445" x2="4.2037" y2="-0.4191" layer="21"/>
+<rectangle x1="-5.0673" y1="-0.4191" x2="-4.6101" y2="-0.3937" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.4191" x2="-3.3909" y2="-0.3937" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.4191" x2="-1.0541" y2="-0.3937" layer="21"/>
+<rectangle x1="-0.6985" y1="-0.4191" x2="-0.3683" y2="-0.3937" layer="21"/>
+<rectangle x1="1.3589" y1="-0.4191" x2="1.7145" y2="-0.3937" layer="21"/>
+<rectangle x1="2.0447" y1="-0.4191" x2="2.7813" y2="-0.3937" layer="21"/>
+<rectangle x1="3.1369" y1="-0.4191" x2="3.4925" y2="-0.3937" layer="21"/>
+<rectangle x1="3.8481" y1="-0.4191" x2="4.2037" y2="-0.3937" layer="21"/>
+<rectangle x1="-5.0927" y1="-0.3937" x2="-4.6355" y2="-0.3683" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.3937" x2="-3.3909" y2="-0.3683" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.3937" x2="-1.0541" y2="-0.3683" layer="21"/>
+<rectangle x1="-0.6985" y1="-0.3937" x2="-0.3937" y2="-0.3683" layer="21"/>
+<rectangle x1="1.3589" y1="-0.3937" x2="1.7145" y2="-0.3683" layer="21"/>
+<rectangle x1="2.0447" y1="-0.3937" x2="2.7813" y2="-0.3683" layer="21"/>
+<rectangle x1="3.1369" y1="-0.3937" x2="3.4925" y2="-0.3683" layer="21"/>
+<rectangle x1="3.8481" y1="-0.3937" x2="4.2037" y2="-0.3683" layer="21"/>
+<rectangle x1="-5.0927" y1="-0.3683" x2="-4.6609" y2="-0.3429" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.3683" x2="-3.3909" y2="-0.3429" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.3683" x2="-1.0541" y2="-0.3429" layer="21"/>
+<rectangle x1="-0.6985" y1="-0.3683" x2="-0.3937" y2="-0.3429" layer="21"/>
+<rectangle x1="1.3589" y1="-0.3683" x2="1.7145" y2="-0.3429" layer="21"/>
+<rectangle x1="2.0447" y1="-0.3683" x2="2.7813" y2="-0.3429" layer="21"/>
+<rectangle x1="3.1369" y1="-0.3683" x2="3.4925" y2="-0.3429" layer="21"/>
+<rectangle x1="3.8481" y1="-0.3683" x2="4.2291" y2="-0.3429" layer="21"/>
+<rectangle x1="-5.1181" y1="-0.3429" x2="-4.6863" y2="-0.3175" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.3429" x2="-3.3909" y2="-0.3175" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.3429" x2="-1.0541" y2="-0.3175" layer="21"/>
+<rectangle x1="-0.6985" y1="-0.3429" x2="-0.3937" y2="-0.3175" layer="21"/>
+<rectangle x1="1.3589" y1="-0.3429" x2="1.7145" y2="-0.3175" layer="21"/>
+<rectangle x1="2.0447" y1="-0.3429" x2="2.7813" y2="-0.3175" layer="21"/>
+<rectangle x1="3.1369" y1="-0.3429" x2="3.4925" y2="-0.3175" layer="21"/>
+<rectangle x1="3.8481" y1="-0.3429" x2="4.2291" y2="-0.3175" layer="21"/>
+<rectangle x1="-5.1435" y1="-0.3175" x2="-4.6863" y2="-0.2921" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.3175" x2="-3.3909" y2="-0.2921" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.3175" x2="-1.0541" y2="-0.2921" layer="21"/>
+<rectangle x1="-0.6985" y1="-0.3175" x2="-0.3683" y2="-0.2921" layer="21"/>
+<rectangle x1="1.3589" y1="-0.3175" x2="1.7145" y2="-0.2921" layer="21"/>
+<rectangle x1="2.0447" y1="-0.3175" x2="2.7813" y2="-0.2921" layer="21"/>
+<rectangle x1="3.1369" y1="-0.3175" x2="3.4925" y2="-0.2921" layer="21"/>
+<rectangle x1="3.8481" y1="-0.3175" x2="4.2291" y2="-0.2921" layer="21"/>
+<rectangle x1="-5.1689" y1="-0.2921" x2="-4.7117" y2="-0.2667" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.2921" x2="-3.3909" y2="-0.2667" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.2921" x2="-1.0541" y2="-0.2667" layer="21"/>
+<rectangle x1="-0.6985" y1="-0.2921" x2="-0.3683" y2="-0.2667" layer="21"/>
+<rectangle x1="1.3589" y1="-0.2921" x2="1.7145" y2="-0.2667" layer="21"/>
+<rectangle x1="2.0447" y1="-0.2921" x2="2.7813" y2="-0.2667" layer="21"/>
+<rectangle x1="3.1369" y1="-0.2921" x2="3.4925" y2="-0.2667" layer="21"/>
+<rectangle x1="3.8481" y1="-0.2921" x2="4.2291" y2="-0.2667" layer="21"/>
+<rectangle x1="-5.1943" y1="-0.2667" x2="-4.7371" y2="-0.2413" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.2667" x2="-3.3909" y2="-0.2413" layer="21"/>
+<rectangle x1="-3.0607" y1="-0.2667" x2="-2.8575" y2="-0.2413" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.2667" x2="-1.0541" y2="-0.2413" layer="21"/>
+<rectangle x1="-0.6985" y1="-0.2667" x2="-0.3683" y2="-0.2413" layer="21"/>
+<rectangle x1="1.3589" y1="-0.2667" x2="1.7145" y2="-0.2413" layer="21"/>
+<rectangle x1="2.0447" y1="-0.2667" x2="2.7813" y2="-0.2413" layer="21"/>
+<rectangle x1="3.1369" y1="-0.2667" x2="3.4925" y2="-0.2413" layer="21"/>
+<rectangle x1="3.8481" y1="-0.2667" x2="4.2291" y2="-0.2413" layer="21"/>
+<rectangle x1="-5.1943" y1="-0.2413" x2="-4.7625" y2="-0.2159" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.2413" x2="-3.3909" y2="-0.2159" layer="21"/>
+<rectangle x1="-3.1623" y1="-0.2413" x2="-2.7051" y2="-0.2159" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.2413" x2="-1.0541" y2="-0.2159" layer="21"/>
+<rectangle x1="-0.6985" y1="-0.2413" x2="-0.3683" y2="-0.2159" layer="21"/>
+<rectangle x1="1.3589" y1="-0.2413" x2="1.7145" y2="-0.2159" layer="21"/>
+<rectangle x1="2.0447" y1="-0.2413" x2="2.7813" y2="-0.2159" layer="21"/>
+<rectangle x1="3.1369" y1="-0.2413" x2="3.4925" y2="-0.2159" layer="21"/>
+<rectangle x1="3.8481" y1="-0.2413" x2="4.2291" y2="-0.2159" layer="21"/>
+<rectangle x1="-5.2197" y1="-0.2159" x2="-4.7879" y2="-0.1905" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.2159" x2="-3.3909" y2="-0.1905" layer="21"/>
+<rectangle x1="-3.2385" y1="-0.2159" x2="-2.6289" y2="-0.1905" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.2159" x2="-1.4351" y2="-0.1905" layer="21"/>
+<rectangle x1="-0.6985" y1="-0.2159" x2="-0.3683" y2="-0.1905" layer="21"/>
+<rectangle x1="1.3589" y1="-0.2159" x2="1.7145" y2="-0.1905" layer="21"/>
+<rectangle x1="2.0447" y1="-0.2159" x2="2.4257" y2="-0.1905" layer="21"/>
+<rectangle x1="3.1369" y1="-0.2159" x2="3.4925" y2="-0.1905" layer="21"/>
+<rectangle x1="3.8735" y1="-0.2159" x2="4.2291" y2="-0.1905" layer="21"/>
+<rectangle x1="-5.2451" y1="-0.1905" x2="-4.8133" y2="-0.1651" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.1905" x2="-3.3909" y2="-0.1651" layer="21"/>
+<rectangle x1="-3.2385" y1="-0.1905" x2="-2.5781" y2="-0.1651" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.1905" x2="-1.4351" y2="-0.1651" layer="21"/>
+<rectangle x1="-0.6985" y1="-0.1905" x2="-0.3683" y2="-0.1651" layer="21"/>
+<rectangle x1="1.3589" y1="-0.1905" x2="1.7145" y2="-0.1651" layer="21"/>
+<rectangle x1="2.0447" y1="-0.1905" x2="2.4257" y2="-0.1651" layer="21"/>
+<rectangle x1="3.1369" y1="-0.1905" x2="3.4925" y2="-0.1651" layer="21"/>
+<rectangle x1="3.8735" y1="-0.1905" x2="4.2291" y2="-0.1651" layer="21"/>
+<rectangle x1="-5.2705" y1="-0.1651" x2="-4.8133" y2="-0.1397" layer="21"/>
+<rectangle x1="-4.6355" y1="-0.1651" x2="-4.5593" y2="-0.1397" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.1651" x2="-3.3909" y2="-0.1397" layer="21"/>
+<rectangle x1="-3.2385" y1="-0.1651" x2="-2.5273" y2="-0.1397" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.1651" x2="-1.4351" y2="-0.1397" layer="21"/>
+<rectangle x1="-0.6985" y1="-0.1651" x2="-0.3683" y2="-0.1397" layer="21"/>
+<rectangle x1="1.3589" y1="-0.1651" x2="1.7145" y2="-0.1397" layer="21"/>
+<rectangle x1="2.0447" y1="-0.1651" x2="2.4257" y2="-0.1397" layer="21"/>
+<rectangle x1="3.1369" y1="-0.1651" x2="3.4925" y2="-0.1397" layer="21"/>
+<rectangle x1="3.8735" y1="-0.1651" x2="4.2291" y2="-0.1397" layer="21"/>
+<rectangle x1="-5.2705" y1="-0.1397" x2="-4.8387" y2="-0.1143" layer="21"/>
+<rectangle x1="-4.6609" y1="-0.1397" x2="-4.5085" y2="-0.1143" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.1397" x2="-3.3909" y2="-0.1143" layer="21"/>
+<rectangle x1="-3.2385" y1="-0.1397" x2="-2.5019" y2="-0.1143" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.1397" x2="-1.4351" y2="-0.1143" layer="21"/>
+<rectangle x1="-0.6985" y1="-0.1397" x2="-0.3683" y2="-0.1143" layer="21"/>
+<rectangle x1="1.3589" y1="-0.1397" x2="1.7145" y2="-0.1143" layer="21"/>
+<rectangle x1="2.0447" y1="-0.1397" x2="2.4257" y2="-0.1143" layer="21"/>
+<rectangle x1="3.1369" y1="-0.1397" x2="3.4925" y2="-0.1143" layer="21"/>
+<rectangle x1="3.8735" y1="-0.1397" x2="4.2291" y2="-0.1143" layer="21"/>
+<rectangle x1="-5.2959" y1="-0.1143" x2="-4.8641" y2="-0.0889" layer="21"/>
+<rectangle x1="-4.6863" y1="-0.1143" x2="-4.4577" y2="-0.0889" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.1143" x2="-3.3909" y2="-0.0889" layer="21"/>
+<rectangle x1="-3.2385" y1="-0.1143" x2="-2.4511" y2="-0.0889" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.1143" x2="-1.4351" y2="-0.0889" layer="21"/>
+<rectangle x1="-0.6985" y1="-0.1143" x2="-0.3683" y2="-0.0889" layer="21"/>
+<rectangle x1="1.3589" y1="-0.1143" x2="1.7145" y2="-0.0889" layer="21"/>
+<rectangle x1="2.0447" y1="-0.1143" x2="2.4257" y2="-0.0889" layer="21"/>
+<rectangle x1="3.1369" y1="-0.1143" x2="3.4925" y2="-0.0889" layer="21"/>
+<rectangle x1="3.8735" y1="-0.1143" x2="4.2545" y2="-0.0889" layer="21"/>
+<rectangle x1="-5.3213" y1="-0.0889" x2="-4.8895" y2="-0.0635" layer="21"/>
+<rectangle x1="-4.7117" y1="-0.0889" x2="-4.4069" y2="-0.0635" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.0889" x2="-3.3909" y2="-0.0635" layer="21"/>
+<rectangle x1="-3.2385" y1="-0.0889" x2="-2.4257" y2="-0.0635" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.0889" x2="-1.4351" y2="-0.0635" layer="21"/>
+<rectangle x1="-0.6731" y1="-0.0889" x2="-0.3683" y2="-0.0635" layer="21"/>
+<rectangle x1="1.3589" y1="-0.0889" x2="1.7145" y2="-0.0635" layer="21"/>
+<rectangle x1="2.0447" y1="-0.0889" x2="2.4257" y2="-0.0635" layer="21"/>
+<rectangle x1="3.1369" y1="-0.0889" x2="3.4925" y2="-0.0635" layer="21"/>
+<rectangle x1="3.8735" y1="-0.0889" x2="4.2545" y2="-0.0635" layer="21"/>
+<rectangle x1="-5.3467" y1="-0.0635" x2="-4.8895" y2="-0.0381" layer="21"/>
+<rectangle x1="-4.7117" y1="-0.0635" x2="-4.3815" y2="-0.0381" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.0635" x2="-3.3909" y2="-0.0381" layer="21"/>
+<rectangle x1="-3.2385" y1="-0.0635" x2="-2.4003" y2="-0.0381" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.0635" x2="-1.4351" y2="-0.0381" layer="21"/>
+<rectangle x1="-0.6731" y1="-0.0635" x2="-0.3429" y2="-0.0381" layer="21"/>
+<rectangle x1="1.3589" y1="-0.0635" x2="1.7145" y2="-0.0381" layer="21"/>
+<rectangle x1="2.0447" y1="-0.0635" x2="2.4257" y2="-0.0381" layer="21"/>
+<rectangle x1="3.1369" y1="-0.0635" x2="3.4925" y2="-0.0381" layer="21"/>
+<rectangle x1="3.8735" y1="-0.0635" x2="4.2545" y2="-0.0381" layer="21"/>
+<rectangle x1="-5.3721" y1="-0.0381" x2="-4.9149" y2="-0.0127" layer="21"/>
+<rectangle x1="-4.7371" y1="-0.0381" x2="-4.3561" y2="-0.0127" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.0381" x2="-3.3909" y2="-0.0127" layer="21"/>
+<rectangle x1="-3.2385" y1="-0.0381" x2="-2.3749" y2="-0.0127" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.0381" x2="-1.4351" y2="-0.0127" layer="21"/>
+<rectangle x1="-0.6731" y1="-0.0381" x2="-0.3429" y2="-0.0127" layer="21"/>
+<rectangle x1="1.3589" y1="-0.0381" x2="1.7145" y2="-0.0127" layer="21"/>
+<rectangle x1="2.0447" y1="-0.0381" x2="2.4257" y2="-0.0127" layer="21"/>
+<rectangle x1="3.1369" y1="-0.0381" x2="3.4925" y2="-0.0127" layer="21"/>
+<rectangle x1="3.8989" y1="-0.0381" x2="4.2545" y2="-0.0127" layer="21"/>
+<rectangle x1="-5.3721" y1="-0.0127" x2="-4.9403" y2="0.0127" layer="21"/>
+<rectangle x1="-4.7625" y1="-0.0127" x2="-4.3307" y2="0.0127" layer="21"/>
+<rectangle x1="-3.7719" y1="-0.0127" x2="-3.3909" y2="0.0127" layer="21"/>
+<rectangle x1="-3.2385" y1="-0.0127" x2="-2.3495" y2="0.0127" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.0127" x2="-1.4351" y2="0.0127" layer="21"/>
+<rectangle x1="-0.6731" y1="-0.0127" x2="-0.3429" y2="0.0127" layer="21"/>
+<rectangle x1="1.3589" y1="-0.0127" x2="1.7145" y2="0.0127" layer="21"/>
+<rectangle x1="2.0447" y1="-0.0127" x2="2.4257" y2="0.0127" layer="21"/>
+<rectangle x1="3.1369" y1="-0.0127" x2="3.4925" y2="0.0127" layer="21"/>
+<rectangle x1="3.8989" y1="-0.0127" x2="4.2545" y2="0.0127" layer="21"/>
+<rectangle x1="-5.3975" y1="0.0127" x2="-4.9657" y2="0.0381" layer="21"/>
+<rectangle x1="-4.7879" y1="0.0127" x2="-4.3053" y2="0.0381" layer="21"/>
+<rectangle x1="-3.7719" y1="0.0127" x2="-3.3909" y2="0.0381" layer="21"/>
+<rectangle x1="-3.2385" y1="0.0127" x2="-2.3241" y2="0.0381" layer="21"/>
+<rectangle x1="-1.7907" y1="0.0127" x2="-1.4351" y2="0.0381" layer="21"/>
+<rectangle x1="-0.6731" y1="0.0127" x2="-0.3429" y2="0.0381" layer="21"/>
+<rectangle x1="1.3589" y1="0.0127" x2="1.7145" y2="0.0381" layer="21"/>
+<rectangle x1="2.0447" y1="0.0127" x2="2.4257" y2="0.0381" layer="21"/>
+<rectangle x1="3.1369" y1="0.0127" x2="3.4925" y2="0.0381" layer="21"/>
+<rectangle x1="3.8989" y1="0.0127" x2="4.2799" y2="0.0381" layer="21"/>
+<rectangle x1="-5.4229" y1="0.0381" x2="-4.9911" y2="0.0635" layer="21"/>
+<rectangle x1="-4.7879" y1="0.0381" x2="-4.2799" y2="0.0635" layer="21"/>
+<rectangle x1="-3.7719" y1="0.0381" x2="-3.3909" y2="0.0635" layer="21"/>
+<rectangle x1="-3.2385" y1="0.0381" x2="-2.3241" y2="0.0635" layer="21"/>
+<rectangle x1="-1.7907" y1="0.0381" x2="-1.4351" y2="0.0635" layer="21"/>
+<rectangle x1="-0.6477" y1="0.0381" x2="-0.3175" y2="0.0635" layer="21"/>
+<rectangle x1="1.3589" y1="0.0381" x2="1.7145" y2="0.0635" layer="21"/>
+<rectangle x1="2.0447" y1="0.0381" x2="2.4257" y2="0.0635" layer="21"/>
+<rectangle x1="3.1369" y1="0.0381" x2="3.4925" y2="0.0635" layer="21"/>
+<rectangle x1="3.8989" y1="0.0381" x2="4.2799" y2="0.0635" layer="21"/>
+<rectangle x1="-5.4483" y1="0.0635" x2="-4.9911" y2="0.0889" layer="21"/>
+<rectangle x1="-4.8133" y1="0.0635" x2="-4.2545" y2="0.0889" layer="21"/>
+<rectangle x1="-3.7719" y1="0.0635" x2="-3.3909" y2="0.0889" layer="21"/>
+<rectangle x1="-3.2385" y1="0.0635" x2="-2.2987" y2="0.0889" layer="21"/>
+<rectangle x1="-1.7907" y1="0.0635" x2="-1.4351" y2="0.0889" layer="21"/>
+<rectangle x1="-0.6477" y1="0.0635" x2="-0.3175" y2="0.0889" layer="21"/>
+<rectangle x1="1.3589" y1="0.0635" x2="1.7145" y2="0.0889" layer="21"/>
+<rectangle x1="2.0701" y1="0.0635" x2="2.4257" y2="0.0889" layer="21"/>
+<rectangle x1="3.1369" y1="0.0635" x2="3.4925" y2="0.0889" layer="21"/>
+<rectangle x1="3.9243" y1="0.0635" x2="4.2799" y2="0.0889" layer="21"/>
+<rectangle x1="-5.4737" y1="0.0889" x2="-5.0165" y2="0.1143" layer="21"/>
+<rectangle x1="-4.8387" y1="0.0889" x2="-4.2291" y2="0.1143" layer="21"/>
+<rectangle x1="-3.7719" y1="0.0889" x2="-3.3909" y2="0.1143" layer="21"/>
+<rectangle x1="-3.2385" y1="0.0889" x2="-2.2733" y2="0.1143" layer="21"/>
+<rectangle x1="-1.7907" y1="0.0889" x2="-1.4097" y2="0.1143" layer="21"/>
+<rectangle x1="-0.6477" y1="0.0889" x2="-0.3175" y2="0.1143" layer="21"/>
+<rectangle x1="1.3589" y1="0.0889" x2="1.7145" y2="0.1143" layer="21"/>
+<rectangle x1="2.0701" y1="0.0889" x2="2.4257" y2="0.1143" layer="21"/>
+<rectangle x1="3.1369" y1="0.0889" x2="3.4925" y2="0.1143" layer="21"/>
+<rectangle x1="3.9243" y1="0.0889" x2="4.3053" y2="0.1143" layer="21"/>
+<rectangle x1="-5.4991" y1="0.1143" x2="-5.0419" y2="0.1397" layer="21"/>
+<rectangle x1="-4.8641" y1="0.1143" x2="-4.2037" y2="0.1397" layer="21"/>
+<rectangle x1="-3.7719" y1="0.1143" x2="-3.3909" y2="0.1397" layer="21"/>
+<rectangle x1="-3.2385" y1="0.1143" x2="-3.0607" y2="0.1397" layer="21"/>
+<rectangle x1="-2.8067" y1="0.1143" x2="-2.2479" y2="0.1397" layer="21"/>
+<rectangle x1="-1.7653" y1="0.1143" x2="-1.4097" y2="0.1397" layer="21"/>
+<rectangle x1="-0.6477" y1="0.1143" x2="-0.3175" y2="0.1397" layer="21"/>
+<rectangle x1="1.3589" y1="0.1143" x2="1.7145" y2="0.1397" layer="21"/>
+<rectangle x1="2.0701" y1="0.1143" x2="2.4257" y2="0.1397" layer="21"/>
+<rectangle x1="3.1369" y1="0.1143" x2="3.4925" y2="0.1397" layer="21"/>
+<rectangle x1="3.9243" y1="0.1143" x2="4.3053" y2="0.1397" layer="21"/>
+<rectangle x1="-5.4991" y1="0.1397" x2="-5.0673" y2="0.1651" layer="21"/>
+<rectangle x1="-4.7879" y1="0.1397" x2="-4.2037" y2="0.1651" layer="21"/>
+<rectangle x1="-3.7719" y1="0.1397" x2="-3.3909" y2="0.1651" layer="21"/>
+<rectangle x1="-3.2385" y1="0.1397" x2="-3.1369" y2="0.1651" layer="21"/>
+<rectangle x1="-2.7559" y1="0.1397" x2="-2.2225" y2="0.1651" layer="21"/>
+<rectangle x1="-1.7653" y1="0.1397" x2="-1.4097" y2="0.1651" layer="21"/>
+<rectangle x1="-0.6223" y1="0.1397" x2="-0.2921" y2="0.1651" layer="21"/>
+<rectangle x1="1.3589" y1="0.1397" x2="1.7145" y2="0.1651" layer="21"/>
+<rectangle x1="2.0701" y1="0.1397" x2="2.4257" y2="0.1651" layer="21"/>
+<rectangle x1="3.1369" y1="0.1397" x2="3.4925" y2="0.1651" layer="21"/>
+<rectangle x1="3.9497" y1="0.1397" x2="4.3307" y2="0.1651" layer="21"/>
+<rectangle x1="-5.5245" y1="0.1651" x2="-5.0673" y2="0.1905" layer="21"/>
+<rectangle x1="-4.6863" y1="0.1651" x2="-4.1783" y2="0.1905" layer="21"/>
+<rectangle x1="-3.7719" y1="0.1651" x2="-3.3909" y2="0.1905" layer="21"/>
+<rectangle x1="-3.2385" y1="0.1651" x2="-3.1877" y2="0.1905" layer="21"/>
+<rectangle x1="-2.7051" y1="0.1651" x2="-2.2225" y2="0.1905" layer="21"/>
+<rectangle x1="-1.7653" y1="0.1651" x2="-1.4097" y2="0.1905" layer="21"/>
+<rectangle x1="-0.6223" y1="0.1651" x2="-0.2921" y2="0.1905" layer="21"/>
+<rectangle x1="1.3589" y1="0.1651" x2="1.7145" y2="0.1905" layer="21"/>
+<rectangle x1="2.0701" y1="0.1651" x2="2.4257" y2="0.1905" layer="21"/>
+<rectangle x1="3.1369" y1="0.1651" x2="3.4925" y2="0.1905" layer="21"/>
+<rectangle x1="3.9497" y1="0.1651" x2="4.3307" y2="0.1905" layer="21"/>
+<rectangle x1="-5.5499" y1="0.1905" x2="-5.0927" y2="0.2159" layer="21"/>
+<rectangle x1="-4.6355" y1="0.1905" x2="-4.1529" y2="0.2159" layer="21"/>
+<rectangle x1="-3.7719" y1="0.1905" x2="-3.3909" y2="0.2159" layer="21"/>
+<rectangle x1="-2.6543" y1="0.1905" x2="-2.1971" y2="0.2159" layer="21"/>
+<rectangle x1="-1.7653" y1="0.1905" x2="-1.4097" y2="0.2159" layer="21"/>
+<rectangle x1="-0.6223" y1="0.1905" x2="-0.2667" y2="0.2159" layer="21"/>
+<rectangle x1="1.3589" y1="0.1905" x2="1.7145" y2="0.2159" layer="21"/>
+<rectangle x1="2.0701" y1="0.1905" x2="2.4257" y2="0.2159" layer="21"/>
+<rectangle x1="3.1369" y1="0.1905" x2="3.4925" y2="0.2159" layer="21"/>
+<rectangle x1="3.9497" y1="0.1905" x2="4.3307" y2="0.2159" layer="21"/>
+<rectangle x1="-5.5499" y1="0.2159" x2="-5.1181" y2="0.2413" layer="21"/>
+<rectangle x1="-4.6101" y1="0.2159" x2="-4.1529" y2="0.2413" layer="21"/>
+<rectangle x1="-3.7719" y1="0.2159" x2="-3.3909" y2="0.2413" layer="21"/>
+<rectangle x1="-2.6289" y1="0.2159" x2="-2.1971" y2="0.2413" layer="21"/>
+<rectangle x1="-1.7653" y1="0.2159" x2="-1.4097" y2="0.2413" layer="21"/>
+<rectangle x1="-0.5969" y1="0.2159" x2="-0.2667" y2="0.2413" layer="21"/>
+<rectangle x1="1.3589" y1="0.2159" x2="1.7145" y2="0.2413" layer="21"/>
+<rectangle x1="2.0701" y1="0.2159" x2="2.4511" y2="0.2413" layer="21"/>
+<rectangle x1="3.1369" y1="0.2159" x2="3.4925" y2="0.2413" layer="21"/>
+<rectangle x1="3.9751" y1="0.2159" x2="4.3561" y2="0.2413" layer="21"/>
+<rectangle x1="-5.5753" y1="0.2413" x2="-5.1435" y2="0.2667" layer="21"/>
+<rectangle x1="-4.5593" y1="0.2413" x2="-4.1275" y2="0.2667" layer="21"/>
+<rectangle x1="-3.7719" y1="0.2413" x2="-3.3909" y2="0.2667" layer="21"/>
+<rectangle x1="-2.6035" y1="0.2413" x2="-2.1717" y2="0.2667" layer="21"/>
+<rectangle x1="-1.7653" y1="0.2413" x2="-1.3843" y2="0.2667" layer="21"/>
+<rectangle x1="-0.5969" y1="0.2413" x2="-0.2667" y2="0.2667" layer="21"/>
+<rectangle x1="1.3589" y1="0.2413" x2="1.7145" y2="0.2667" layer="21"/>
+<rectangle x1="2.0701" y1="0.2413" x2="2.4511" y2="0.2667" layer="21"/>
+<rectangle x1="3.1369" y1="0.2413" x2="3.4925" y2="0.2667" layer="21"/>
+<rectangle x1="3.9751" y1="0.2413" x2="4.3561" y2="0.2667" layer="21"/>
+<rectangle x1="-5.5753" y1="0.2667" x2="-5.1689" y2="0.2921" layer="21"/>
+<rectangle x1="-4.5339" y1="0.2667" x2="-4.1275" y2="0.2921" layer="21"/>
+<rectangle x1="-3.7719" y1="0.2667" x2="-3.3909" y2="0.2921" layer="21"/>
+<rectangle x1="-2.5781" y1="0.2667" x2="-2.1717" y2="0.2921" layer="21"/>
+<rectangle x1="-1.7399" y1="0.2667" x2="-1.3843" y2="0.2921" layer="21"/>
+<rectangle x1="-0.5715" y1="0.2667" x2="-0.2413" y2="0.2921" layer="21"/>
+<rectangle x1="1.3589" y1="0.2667" x2="1.7145" y2="0.2921" layer="21"/>
+<rectangle x1="2.0955" y1="0.2667" x2="2.4511" y2="0.2921" layer="21"/>
+<rectangle x1="3.1369" y1="0.2667" x2="3.4925" y2="0.2921" layer="21"/>
+<rectangle x1="3.9751" y1="0.2667" x2="4.3815" y2="0.2921" layer="21"/>
+<rectangle x1="-5.5753" y1="0.2921" x2="-5.1689" y2="0.3175" layer="21"/>
+<rectangle x1="-4.5085" y1="0.2921" x2="-4.1275" y2="0.3175" layer="21"/>
+<rectangle x1="-3.7719" y1="0.2921" x2="-3.3909" y2="0.3175" layer="21"/>
+<rectangle x1="-2.5527" y1="0.2921" x2="-2.1717" y2="0.3175" layer="21"/>
+<rectangle x1="-1.7399" y1="0.2921" x2="-1.3843" y2="0.3175" layer="21"/>
+<rectangle x1="-0.5715" y1="0.2921" x2="-0.2413" y2="0.3175" layer="21"/>
+<rectangle x1="1.3589" y1="0.2921" x2="1.7145" y2="0.3175" layer="21"/>
+<rectangle x1="2.0955" y1="0.2921" x2="2.4511" y2="0.3175" layer="21"/>
+<rectangle x1="3.1369" y1="0.2921" x2="3.4925" y2="0.3175" layer="21"/>
+<rectangle x1="4.0005" y1="0.2921" x2="4.3815" y2="0.3175" layer="21"/>
+<rectangle x1="-5.6007" y1="0.3175" x2="-5.1943" y2="0.3429" layer="21"/>
+<rectangle x1="-4.5085" y1="0.3175" x2="-4.1021" y2="0.3429" layer="21"/>
+<rectangle x1="-3.7719" y1="0.3175" x2="-3.3909" y2="0.3429" layer="21"/>
+<rectangle x1="-2.5527" y1="0.3175" x2="-2.1463" y2="0.3429" layer="21"/>
+<rectangle x1="-1.7399" y1="0.3175" x2="-1.3843" y2="0.3429" layer="21"/>
+<rectangle x1="-0.5715" y1="0.3175" x2="-0.2159" y2="0.3429" layer="21"/>
+<rectangle x1="1.3589" y1="0.3175" x2="1.7145" y2="0.3429" layer="21"/>
+<rectangle x1="2.0955" y1="0.3175" x2="2.4765" y2="0.3429" layer="21"/>
+<rectangle x1="3.1369" y1="0.3175" x2="3.4925" y2="0.3429" layer="21"/>
+<rectangle x1="4.0005" y1="0.3175" x2="4.4069" y2="0.3429" layer="21"/>
+<rectangle x1="-5.6007" y1="0.3429" x2="-5.2197" y2="0.3683" layer="21"/>
+<rectangle x1="-4.4831" y1="0.3429" x2="-4.1021" y2="0.3683" layer="21"/>
+<rectangle x1="-3.7719" y1="0.3429" x2="-3.3909" y2="0.3683" layer="21"/>
+<rectangle x1="-2.5273" y1="0.3429" x2="-2.1463" y2="0.3683" layer="21"/>
+<rectangle x1="-1.7399" y1="0.3429" x2="-1.3589" y2="0.3683" layer="21"/>
+<rectangle x1="-0.5461" y1="0.3429" x2="-0.2159" y2="0.3683" layer="21"/>
+<rectangle x1="1.3589" y1="0.3429" x2="1.7145" y2="0.3683" layer="21"/>
+<rectangle x1="2.0955" y1="0.3429" x2="2.4765" y2="0.3683" layer="21"/>
+<rectangle x1="3.1369" y1="0.3429" x2="3.4925" y2="0.3683" layer="21"/>
+<rectangle x1="4.0259" y1="0.3429" x2="4.4323" y2="0.3683" layer="21"/>
+<rectangle x1="-5.6007" y1="0.3683" x2="-5.2197" y2="0.3937" layer="21"/>
+<rectangle x1="-4.4831" y1="0.3683" x2="-4.1021" y2="0.3937" layer="21"/>
+<rectangle x1="-3.7719" y1="0.3683" x2="-3.3909" y2="0.3937" layer="21"/>
+<rectangle x1="-2.5273" y1="0.3683" x2="-2.1463" y2="0.3937" layer="21"/>
+<rectangle x1="-1.7399" y1="0.3683" x2="-1.3589" y2="0.3937" layer="21"/>
+<rectangle x1="-0.5461" y1="0.3683" x2="-0.1905" y2="0.3937" layer="21"/>
+<rectangle x1="1.3589" y1="0.3683" x2="1.7145" y2="0.3937" layer="21"/>
+<rectangle x1="2.1209" y1="0.3683" x2="2.4765" y2="0.3937" layer="21"/>
+<rectangle x1="3.1369" y1="0.3683" x2="3.4925" y2="0.3937" layer="21"/>
+<rectangle x1="4.0259" y1="0.3683" x2="4.4323" y2="0.3937" layer="21"/>
+<rectangle x1="-5.6007" y1="0.3937" x2="-5.2451" y2="0.4191" layer="21"/>
+<rectangle x1="-4.4577" y1="0.3937" x2="-4.0767" y2="0.4191" layer="21"/>
+<rectangle x1="-3.7719" y1="0.3937" x2="-3.3909" y2="0.4191" layer="21"/>
+<rectangle x1="-2.5273" y1="0.3937" x2="-2.1463" y2="0.4191" layer="21"/>
+<rectangle x1="-1.7145" y1="0.3937" x2="-1.3589" y2="0.4191" layer="21"/>
+<rectangle x1="-0.5207" y1="0.3937" x2="-0.1651" y2="0.4191" layer="21"/>
+<rectangle x1="1.3589" y1="0.3937" x2="1.7145" y2="0.4191" layer="21"/>
+<rectangle x1="2.1209" y1="0.3937" x2="2.5019" y2="0.4191" layer="21"/>
+<rectangle x1="3.1369" y1="0.3937" x2="3.4925" y2="0.4191" layer="21"/>
+<rectangle x1="4.0513" y1="0.3937" x2="4.4577" y2="0.4191" layer="21"/>
+<rectangle x1="-5.6261" y1="0.4191" x2="-5.2451" y2="0.4445" layer="21"/>
+<rectangle x1="-4.4577" y1="0.4191" x2="-4.0767" y2="0.4445" layer="21"/>
+<rectangle x1="-3.7719" y1="0.4191" x2="-3.3909" y2="0.4445" layer="21"/>
+<rectangle x1="-2.5019" y1="0.4191" x2="-2.1209" y2="0.4445" layer="21"/>
+<rectangle x1="-1.7145" y1="0.4191" x2="-1.3335" y2="0.4445" layer="21"/>
+<rectangle x1="-0.5207" y1="0.4191" x2="-0.1651" y2="0.4445" layer="21"/>
+<rectangle x1="1.3589" y1="0.4191" x2="1.7145" y2="0.4445" layer="21"/>
+<rectangle x1="2.1209" y1="0.4191" x2="2.5019" y2="0.4445" layer="21"/>
+<rectangle x1="3.1369" y1="0.4191" x2="3.4925" y2="0.4445" layer="21"/>
+<rectangle x1="4.0513" y1="0.4191" x2="4.4577" y2="0.4445" layer="21"/>
+<rectangle x1="-5.6261" y1="0.4445" x2="-5.2705" y2="0.4699" layer="21"/>
+<rectangle x1="-4.4323" y1="0.4445" x2="-4.0767" y2="0.4699" layer="21"/>
+<rectangle x1="-3.7719" y1="0.4445" x2="-3.3909" y2="0.4699" layer="21"/>
+<rectangle x1="-2.5019" y1="0.4445" x2="-2.1209" y2="0.4699" layer="21"/>
+<rectangle x1="-1.7145" y1="0.4445" x2="-1.3335" y2="0.4699" layer="21"/>
+<rectangle x1="-0.4953" y1="0.4445" x2="-0.1397" y2="0.4699" layer="21"/>
+<rectangle x1="1.3589" y1="0.4445" x2="1.7145" y2="0.4699" layer="21"/>
+<rectangle x1="2.1209" y1="0.4445" x2="2.5273" y2="0.4699" layer="21"/>
+<rectangle x1="3.1369" y1="0.4445" x2="3.4925" y2="0.4699" layer="21"/>
+<rectangle x1="4.0767" y1="0.4445" x2="4.4831" y2="0.4699" layer="21"/>
+<rectangle x1="-5.6261" y1="0.4699" x2="-5.2705" y2="0.4953" layer="21"/>
+<rectangle x1="-4.4323" y1="0.4699" x2="-4.0767" y2="0.4953" layer="21"/>
+<rectangle x1="-3.7719" y1="0.4699" x2="-3.3909" y2="0.4953" layer="21"/>
+<rectangle x1="-2.5019" y1="0.4699" x2="-2.1209" y2="0.4953" layer="21"/>
+<rectangle x1="-1.6891" y1="0.4699" x2="-1.3081" y2="0.4953" layer="21"/>
+<rectangle x1="-0.4953" y1="0.4699" x2="-0.1143" y2="0.4953" layer="21"/>
+<rectangle x1="1.3589" y1="0.4699" x2="1.7145" y2="0.4953" layer="21"/>
+<rectangle x1="2.1463" y1="0.4699" x2="2.5273" y2="0.4953" layer="21"/>
+<rectangle x1="3.1369" y1="0.4699" x2="3.4925" y2="0.4953" layer="21"/>
+<rectangle x1="4.1021" y1="0.4699" x2="4.5085" y2="0.4953" layer="21"/>
+<rectangle x1="-5.6261" y1="0.4953" x2="-5.2705" y2="0.5207" layer="21"/>
+<rectangle x1="-4.4323" y1="0.4953" x2="-4.0767" y2="0.5207" layer="21"/>
+<rectangle x1="-3.7719" y1="0.4953" x2="-3.3909" y2="0.5207" layer="21"/>
+<rectangle x1="-2.5019" y1="0.4953" x2="-2.1209" y2="0.5207" layer="21"/>
+<rectangle x1="-1.6891" y1="0.4953" x2="-1.3081" y2="0.5207" layer="21"/>
+<rectangle x1="-0.4699" y1="0.4953" x2="-0.1143" y2="0.5207" layer="21"/>
+<rectangle x1="1.3589" y1="0.4953" x2="1.7145" y2="0.5207" layer="21"/>
+<rectangle x1="2.1463" y1="0.4953" x2="2.5273" y2="0.5207" layer="21"/>
+<rectangle x1="3.1369" y1="0.4953" x2="3.4925" y2="0.5207" layer="21"/>
+<rectangle x1="4.1021" y1="0.4953" x2="4.5339" y2="0.5207" layer="21"/>
+<rectangle x1="-5.6261" y1="0.5207" x2="-5.2705" y2="0.5461" layer="21"/>
+<rectangle x1="-4.4069" y1="0.5207" x2="-4.0767" y2="0.5461" layer="21"/>
+<rectangle x1="-3.7719" y1="0.5207" x2="-3.3909" y2="0.5461" layer="21"/>
+<rectangle x1="-2.5019" y1="0.5207" x2="-2.1209" y2="0.5461" layer="21"/>
+<rectangle x1="-1.6891" y1="0.5207" x2="-1.3081" y2="0.5461" layer="21"/>
+<rectangle x1="-0.4699" y1="0.5207" x2="-0.0889" y2="0.5461" layer="21"/>
+<rectangle x1="1.3589" y1="0.5207" x2="1.7145" y2="0.5461" layer="21"/>
+<rectangle x1="2.1463" y1="0.5207" x2="2.5527" y2="0.5461" layer="21"/>
+<rectangle x1="3.1369" y1="0.5207" x2="3.4925" y2="0.5461" layer="21"/>
+<rectangle x1="4.1275" y1="0.5207" x2="4.5593" y2="0.5461" layer="21"/>
+<rectangle x1="-5.6261" y1="0.5461" x2="-5.2705" y2="0.5715" layer="21"/>
+<rectangle x1="-4.4069" y1="0.5461" x2="-4.0767" y2="0.5715" layer="21"/>
+<rectangle x1="-3.7719" y1="0.5461" x2="-3.3909" y2="0.5715" layer="21"/>
+<rectangle x1="-2.5019" y1="0.5461" x2="-2.1209" y2="0.5715" layer="21"/>
+<rectangle x1="-1.6637" y1="0.5461" x2="-1.2827" y2="0.5715" layer="21"/>
+<rectangle x1="-0.4445" y1="0.5461" x2="-0.0635" y2="0.5715" layer="21"/>
+<rectangle x1="1.3589" y1="0.5461" x2="1.7145" y2="0.5715" layer="21"/>
+<rectangle x1="2.1717" y1="0.5461" x2="2.5527" y2="0.5715" layer="21"/>
+<rectangle x1="3.1369" y1="0.5461" x2="3.4925" y2="0.5715" layer="21"/>
+<rectangle x1="4.1275" y1="0.5461" x2="4.5847" y2="0.5715" layer="21"/>
+<rectangle x1="-5.6261" y1="0.5715" x2="-5.2705" y2="0.5969" layer="21"/>
+<rectangle x1="-4.4069" y1="0.5715" x2="-4.0767" y2="0.5969" layer="21"/>
+<rectangle x1="-3.7719" y1="0.5715" x2="-3.3909" y2="0.5969" layer="21"/>
+<rectangle x1="-2.5019" y1="0.5715" x2="-2.1209" y2="0.5969" layer="21"/>
+<rectangle x1="-1.6637" y1="0.5715" x2="-1.2827" y2="0.5969" layer="21"/>
+<rectangle x1="-0.4191" y1="0.5715" x2="-0.0381" y2="0.5969" layer="21"/>
+<rectangle x1="1.3589" y1="0.5715" x2="1.7145" y2="0.5969" layer="21"/>
+<rectangle x1="2.1717" y1="0.5715" x2="2.5781" y2="0.5969" layer="21"/>
+<rectangle x1="3.1369" y1="0.5715" x2="3.4925" y2="0.5969" layer="21"/>
+<rectangle x1="4.1529" y1="0.5715" x2="4.6101" y2="0.5969" layer="21"/>
+<rectangle x1="-5.6261" y1="0.5969" x2="-5.2705" y2="0.6223" layer="21"/>
+<rectangle x1="-4.4069" y1="0.5969" x2="-4.0767" y2="0.6223" layer="21"/>
+<rectangle x1="-3.7719" y1="0.5969" x2="-3.3909" y2="0.6223" layer="21"/>
+<rectangle x1="-2.5019" y1="0.5969" x2="-2.1209" y2="0.6223" layer="21"/>
+<rectangle x1="-1.6637" y1="0.5969" x2="-1.2573" y2="0.6223" layer="21"/>
+<rectangle x1="-0.4191" y1="0.5969" x2="-0.0127" y2="0.6223" layer="21"/>
+<rectangle x1="1.3589" y1="0.5969" x2="1.7145" y2="0.6223" layer="21"/>
+<rectangle x1="2.1971" y1="0.5969" x2="2.5781" y2="0.6223" layer="21"/>
+<rectangle x1="3.1369" y1="0.5969" x2="3.4925" y2="0.6223" layer="21"/>
+<rectangle x1="4.1783" y1="0.5969" x2="4.6355" y2="0.6223" layer="21"/>
+<rectangle x1="-5.6261" y1="0.6223" x2="-5.2705" y2="0.6477" layer="21"/>
+<rectangle x1="-4.4323" y1="0.6223" x2="-4.0767" y2="0.6477" layer="21"/>
+<rectangle x1="-3.7465" y1="0.6223" x2="-3.3909" y2="0.6477" layer="21"/>
+<rectangle x1="-2.5019" y1="0.6223" x2="-2.1209" y2="0.6477" layer="21"/>
+<rectangle x1="-1.6383" y1="0.6223" x2="-1.2319" y2="0.6477" layer="21"/>
+<rectangle x1="-0.3937" y1="0.6223" x2="0.0127" y2="0.6477" layer="21"/>
+<rectangle x1="1.3589" y1="0.6223" x2="1.7145" y2="0.6477" layer="21"/>
+<rectangle x1="2.1971" y1="0.6223" x2="2.6035" y2="0.6477" layer="21"/>
+<rectangle x1="3.1369" y1="0.6223" x2="3.4925" y2="0.6477" layer="21"/>
+<rectangle x1="4.2037" y1="0.6223" x2="4.6609" y2="0.6477" layer="21"/>
+<rectangle x1="-5.6261" y1="0.6477" x2="-5.2705" y2="0.6731" layer="21"/>
+<rectangle x1="-4.4323" y1="0.6477" x2="-4.0767" y2="0.6731" layer="21"/>
+<rectangle x1="-3.7465" y1="0.6477" x2="-3.3655" y2="0.6731" layer="21"/>
+<rectangle x1="-2.5019" y1="0.6477" x2="-2.1209" y2="0.6731" layer="21"/>
+<rectangle x1="-1.6383" y1="0.6477" x2="-1.2319" y2="0.6731" layer="21"/>
+<rectangle x1="-0.3683" y1="0.6477" x2="0.0381" y2="0.6731" layer="21"/>
+<rectangle x1="1.3589" y1="0.6477" x2="1.7145" y2="0.6731" layer="21"/>
+<rectangle x1="2.1971" y1="0.6477" x2="2.6289" y2="0.6731" layer="21"/>
+<rectangle x1="3.1369" y1="0.6477" x2="3.4925" y2="0.6731" layer="21"/>
+<rectangle x1="4.2037" y1="0.6477" x2="4.6863" y2="0.6731" layer="21"/>
+<rectangle x1="-5.6261" y1="0.6731" x2="-5.2705" y2="0.6985" layer="21"/>
+<rectangle x1="-4.4323" y1="0.6731" x2="-4.0767" y2="0.6985" layer="21"/>
+<rectangle x1="-3.7465" y1="0.6731" x2="-3.3655" y2="0.6985" layer="21"/>
+<rectangle x1="-2.5019" y1="0.6731" x2="-2.1463" y2="0.6985" layer="21"/>
+<rectangle x1="-1.6129" y1="0.6731" x2="-1.2065" y2="0.6985" layer="21"/>
+<rectangle x1="-0.3429" y1="0.6731" x2="0.0635" y2="0.6985" layer="21"/>
+<rectangle x1="1.3589" y1="0.6731" x2="1.7145" y2="0.6985" layer="21"/>
+<rectangle x1="2.2225" y1="0.6731" x2="2.6289" y2="0.6985" layer="21"/>
+<rectangle x1="3.1369" y1="0.6731" x2="3.4925" y2="0.6985" layer="21"/>
+<rectangle x1="4.2291" y1="0.6731" x2="4.7117" y2="0.6985" layer="21"/>
+<rectangle x1="-5.6261" y1="0.6985" x2="-5.2451" y2="0.7239" layer="21"/>
+<rectangle x1="-4.4323" y1="0.6985" x2="-4.0767" y2="0.7239" layer="21"/>
+<rectangle x1="-3.7465" y1="0.6985" x2="-3.3655" y2="0.7239" layer="21"/>
+<rectangle x1="-2.5273" y1="0.6985" x2="-2.1463" y2="0.7239" layer="21"/>
+<rectangle x1="-1.6129" y1="0.6985" x2="-1.2065" y2="0.7239" layer="21"/>
+<rectangle x1="-0.3429" y1="0.6985" x2="0.0889" y2="0.7239" layer="21"/>
+<rectangle x1="1.3589" y1="0.6985" x2="1.7145" y2="0.7239" layer="21"/>
+<rectangle x1="2.2225" y1="0.6985" x2="2.6543" y2="0.7239" layer="21"/>
+<rectangle x1="3.1369" y1="0.6985" x2="3.4925" y2="0.7239" layer="21"/>
+<rectangle x1="4.2545" y1="0.6985" x2="4.7625" y2="0.7239" layer="21"/>
+<rectangle x1="-5.6007" y1="0.7239" x2="-5.2451" y2="0.7493" layer="21"/>
+<rectangle x1="-4.4577" y1="0.7239" x2="-4.0767" y2="0.7493" layer="21"/>
+<rectangle x1="-3.7465" y1="0.7239" x2="-3.3401" y2="0.7493" layer="21"/>
+<rectangle x1="-2.5273" y1="0.7239" x2="-2.1463" y2="0.7493" layer="21"/>
+<rectangle x1="-1.5875" y1="0.7239" x2="-1.1811" y2="0.7493" layer="21"/>
+<rectangle x1="-0.3175" y1="0.7239" x2="0.1143" y2="0.7493" layer="21"/>
+<rectangle x1="1.3589" y1="0.7239" x2="1.7145" y2="0.7493" layer="21"/>
+<rectangle x1="2.2479" y1="0.7239" x2="2.6543" y2="0.7493" layer="21"/>
+<rectangle x1="3.1369" y1="0.7239" x2="3.4925" y2="0.7493" layer="21"/>
+<rectangle x1="4.2799" y1="0.7239" x2="4.7879" y2="0.7493" layer="21"/>
+<rectangle x1="-5.6007" y1="0.7493" x2="-5.2451" y2="0.7747" layer="21"/>
+<rectangle x1="-4.4577" y1="0.7493" x2="-4.1021" y2="0.7747" layer="21"/>
+<rectangle x1="-3.7465" y1="0.7493" x2="-3.3401" y2="0.7747" layer="21"/>
+<rectangle x1="-2.5527" y1="0.7493" x2="-2.1463" y2="0.7747" layer="21"/>
+<rectangle x1="-1.5875" y1="0.7493" x2="-1.1557" y2="0.7747" layer="21"/>
+<rectangle x1="-0.2921" y1="0.7493" x2="0.1651" y2="0.7747" layer="21"/>
+<rectangle x1="1.3589" y1="0.7493" x2="1.7145" y2="0.7747" layer="21"/>
+<rectangle x1="2.2479" y1="0.7493" x2="2.6797" y2="0.7747" layer="21"/>
+<rectangle x1="3.1369" y1="0.7493" x2="3.4925" y2="0.7747" layer="21"/>
+<rectangle x1="4.3053" y1="0.7493" x2="4.8387" y2="0.7747" layer="21"/>
+<rectangle x1="-5.6007" y1="0.7747" x2="-5.2197" y2="0.8001" layer="21"/>
+<rectangle x1="-4.4831" y1="0.7747" x2="-4.1021" y2="0.8001" layer="21"/>
+<rectangle x1="-3.7211" y1="0.7747" x2="-3.3401" y2="0.8001" layer="21"/>
+<rectangle x1="-2.5527" y1="0.7747" x2="-2.1463" y2="0.8001" layer="21"/>
+<rectangle x1="-1.5621" y1="0.7747" x2="-1.1303" y2="0.8001" layer="21"/>
+<rectangle x1="-0.2667" y1="0.7747" x2="0.1905" y2="0.8001" layer="21"/>
+<rectangle x1="1.3589" y1="0.7747" x2="1.7145" y2="0.8001" layer="21"/>
+<rectangle x1="2.2733" y1="0.7747" x2="2.7051" y2="0.8001" layer="21"/>
+<rectangle x1="3.1369" y1="0.7747" x2="3.4925" y2="0.8001" layer="21"/>
+<rectangle x1="4.3053" y1="0.7747" x2="4.8895" y2="0.8001" layer="21"/>
+<rectangle x1="-5.6007" y1="0.8001" x2="-5.1943" y2="0.8255" layer="21"/>
+<rectangle x1="-4.4831" y1="0.8001" x2="-4.1021" y2="0.8255" layer="21"/>
+<rectangle x1="-3.7211" y1="0.8001" x2="-3.3147" y2="0.8255" layer="21"/>
+<rectangle x1="-2.5781" y1="0.8001" x2="-2.1717" y2="0.8255" layer="21"/>
+<rectangle x1="-1.5621" y1="0.8001" x2="-1.1303" y2="0.8255" layer="21"/>
+<rectangle x1="-0.2413" y1="0.8001" x2="0.2413" y2="0.8255" layer="21"/>
+<rectangle x1="1.3589" y1="0.8001" x2="1.7145" y2="0.8255" layer="21"/>
+<rectangle x1="2.2987" y1="0.8001" x2="2.7305" y2="0.8255" layer="21"/>
+<rectangle x1="3.1369" y1="0.8001" x2="3.4925" y2="0.8255" layer="21"/>
+<rectangle x1="4.3307" y1="0.8001" x2="4.9403" y2="0.8255" layer="21"/>
+<rectangle x1="-5.5753" y1="0.8255" x2="-5.1943" y2="0.8509" layer="21"/>
+<rectangle x1="-4.5085" y1="0.8255" x2="-4.1021" y2="0.8509" layer="21"/>
+<rectangle x1="-3.7211" y1="0.8255" x2="-3.2893" y2="0.8509" layer="21"/>
+<rectangle x1="-2.5781" y1="0.8255" x2="-2.1717" y2="0.8509" layer="21"/>
+<rectangle x1="-1.5367" y1="0.8255" x2="-1.1049" y2="0.8509" layer="21"/>
+<rectangle x1="-0.2159" y1="0.8255" x2="0.2921" y2="0.8509" layer="21"/>
+<rectangle x1="1.3589" y1="0.8255" x2="1.7145" y2="0.8509" layer="21"/>
+<rectangle x1="2.2987" y1="0.8255" x2="2.7559" y2="0.8509" layer="21"/>
+<rectangle x1="3.1369" y1="0.8255" x2="3.4925" y2="0.8509" layer="21"/>
+<rectangle x1="4.3561" y1="0.8255" x2="5.0165" y2="0.8509" layer="21"/>
+<rectangle x1="-5.5753" y1="0.8509" x2="-5.1689" y2="0.8763" layer="21"/>
+<rectangle x1="-4.5339" y1="0.8509" x2="-4.1275" y2="0.8763" layer="21"/>
+<rectangle x1="-3.6957" y1="0.8509" x2="-3.2639" y2="0.8763" layer="21"/>
+<rectangle x1="-2.6035" y1="0.8509" x2="-2.1717" y2="0.8763" layer="21"/>
+<rectangle x1="-1.5113" y1="0.8509" x2="-1.0795" y2="0.8763" layer="21"/>
+<rectangle x1="-0.1905" y1="0.8509" x2="0.3429" y2="0.8763" layer="21"/>
+<rectangle x1="1.3589" y1="0.8509" x2="1.7145" y2="0.8763" layer="21"/>
+<rectangle x1="2.3241" y1="0.8509" x2="2.7813" y2="0.8763" layer="21"/>
+<rectangle x1="3.1369" y1="0.8509" x2="3.4925" y2="0.8763" layer="21"/>
+<rectangle x1="4.3815" y1="0.8509" x2="5.1181" y2="0.8763" layer="21"/>
+<rectangle x1="-5.5753" y1="0.8763" x2="-5.1435" y2="0.9017" layer="21"/>
+<rectangle x1="-4.5593" y1="0.8763" x2="-4.1275" y2="0.9017" layer="21"/>
+<rectangle x1="-3.6957" y1="0.8763" x2="-3.2385" y2="0.9017" layer="21"/>
+<rectangle x1="-2.6289" y1="0.8763" x2="-2.1971" y2="0.9017" layer="21"/>
+<rectangle x1="-1.5113" y1="0.8763" x2="-1.0541" y2="0.9017" layer="21"/>
+<rectangle x1="-0.1651" y1="0.8763" x2="0.4445" y2="0.9017" layer="21"/>
+<rectangle x1="1.3589" y1="0.8763" x2="1.7145" y2="0.9017" layer="21"/>
+<rectangle x1="2.3241" y1="0.8763" x2="2.7813" y2="0.9017" layer="21"/>
+<rectangle x1="3.1369" y1="0.8763" x2="3.4925" y2="0.9017" layer="21"/>
+<rectangle x1="4.4323" y1="0.8763" x2="5.1943" y2="0.9017" layer="21"/>
+<rectangle x1="-5.5499" y1="0.9017" x2="-5.1181" y2="0.9271" layer="21"/>
+<rectangle x1="-4.5847" y1="0.9017" x2="-4.1529" y2="0.9271" layer="21"/>
+<rectangle x1="-3.6703" y1="0.9017" x2="-3.2131" y2="0.9271" layer="21"/>
+<rectangle x1="-2.6543" y1="0.9017" x2="-2.1971" y2="0.9271" layer="21"/>
+<rectangle x1="-1.4859" y1="0.9017" x2="-1.0287" y2="0.9271" layer="21"/>
+<rectangle x1="-0.1397" y1="0.9017" x2="0.5461" y2="0.9271" layer="21"/>
+<rectangle x1="1.3589" y1="0.9017" x2="1.7145" y2="0.9271" layer="21"/>
+<rectangle x1="2.3495" y1="0.9017" x2="2.8067" y2="0.9271" layer="21"/>
+<rectangle x1="3.1369" y1="0.9017" x2="3.4925" y2="0.9271" layer="21"/>
+<rectangle x1="4.4577" y1="0.9017" x2="5.3213" y2="0.9271" layer="21"/>
+<rectangle x1="-5.5499" y1="0.9271" x2="-5.0673" y2="0.9525" layer="21"/>
+<rectangle x1="-4.6355" y1="0.9271" x2="-4.1529" y2="0.9525" layer="21"/>
+<rectangle x1="-3.6703" y1="0.9271" x2="-3.1623" y2="0.9525" layer="21"/>
+<rectangle x1="-2.7051" y1="0.9271" x2="-2.2225" y2="0.9525" layer="21"/>
+<rectangle x1="-1.4605" y1="0.9271" x2="-1.0287" y2="0.9525" layer="21"/>
+<rectangle x1="-0.1143" y1="0.9271" x2="0.6223" y2="0.9525" layer="21"/>
+<rectangle x1="1.3589" y1="0.9271" x2="1.7145" y2="0.9525" layer="21"/>
+<rectangle x1="2.3749" y1="0.9271" x2="2.8067" y2="0.9525" layer="21"/>
+<rectangle x1="3.1369" y1="0.9271" x2="3.4925" y2="0.9525" layer="21"/>
+<rectangle x1="4.4831" y1="0.9271" x2="5.4737" y2="0.9525" layer="21"/>
+<rectangle x1="-5.5245" y1="0.9525" x2="-5.0165" y2="0.9779" layer="21"/>
+<rectangle x1="-4.6609" y1="0.9525" x2="-4.1783" y2="0.9779" layer="21"/>
+<rectangle x1="-3.6449" y1="0.9525" x2="-3.1369" y2="0.9779" layer="21"/>
+<rectangle x1="-2.7559" y1="0.9525" x2="-2.2225" y2="0.9779" layer="21"/>
+<rectangle x1="-1.4605" y1="0.9525" x2="-1.0287" y2="0.9779" layer="21"/>
+<rectangle x1="-0.0889" y1="0.9525" x2="0.7239" y2="0.9779" layer="21"/>
+<rectangle x1="1.3589" y1="0.9525" x2="1.7145" y2="0.9779" layer="21"/>
+<rectangle x1="2.3749" y1="0.9525" x2="2.8067" y2="0.9779" layer="21"/>
+<rectangle x1="3.1369" y1="0.9525" x2="3.4925" y2="0.9779" layer="21"/>
+<rectangle x1="4.5085" y1="0.9525" x2="5.5753" y2="0.9779" layer="21"/>
+<rectangle x1="-5.5245" y1="0.9779" x2="-4.9657" y2="1.0033" layer="21"/>
+<rectangle x1="-4.7371" y1="0.9779" x2="-4.1783" y2="1.0033" layer="21"/>
+<rectangle x1="-3.6195" y1="0.9779" x2="-3.0607" y2="1.0033" layer="21"/>
+<rectangle x1="-2.8321" y1="0.9779" x2="-2.2479" y2="1.0033" layer="21"/>
+<rectangle x1="-1.4351" y1="0.9779" x2="-1.0287" y2="1.0033" layer="21"/>
+<rectangle x1="-0.0635" y1="0.9779" x2="0.9017" y2="1.0033" layer="21"/>
+<rectangle x1="1.3589" y1="0.9779" x2="1.7145" y2="1.0033" layer="21"/>
+<rectangle x1="2.4003" y1="0.9779" x2="2.8067" y2="1.0033" layer="21"/>
+<rectangle x1="3.1369" y1="0.9779" x2="3.4925" y2="1.0033" layer="21"/>
+<rectangle x1="4.5339" y1="0.9779" x2="5.6007" y2="1.0033" layer="21"/>
+<rectangle x1="-5.4991" y1="1.0033" x2="-4.2037" y2="1.0287" layer="21"/>
+<rectangle x1="-3.6195" y1="1.0033" x2="-2.2733" y2="1.0287" layer="21"/>
+<rectangle x1="-1.4097" y1="1.0033" x2="-1.0287" y2="1.0287" layer="21"/>
+<rectangle x1="-0.0127" y1="1.0033" x2="1.0287" y2="1.0287" layer="21"/>
+<rectangle x1="1.3589" y1="1.0033" x2="1.7145" y2="1.0287" layer="21"/>
+<rectangle x1="2.4257" y1="1.0033" x2="2.8067" y2="1.0287" layer="21"/>
+<rectangle x1="3.1369" y1="1.0033" x2="3.4925" y2="1.0287" layer="21"/>
+<rectangle x1="4.5847" y1="1.0033" x2="5.6007" y2="1.0287" layer="21"/>
+<rectangle x1="-5.4737" y1="1.0287" x2="-4.2291" y2="1.0541" layer="21"/>
+<rectangle x1="-3.5941" y1="1.0287" x2="-2.2733" y2="1.0541" layer="21"/>
+<rectangle x1="-1.3843" y1="1.0287" x2="-1.0287" y2="1.0541" layer="21"/>
+<rectangle x1="0.0127" y1="1.0287" x2="1.0287" y2="1.0541" layer="21"/>
+<rectangle x1="1.3589" y1="1.0287" x2="1.7145" y2="1.0541" layer="21"/>
+<rectangle x1="2.4511" y1="1.0287" x2="2.8067" y2="1.0541" layer="21"/>
+<rectangle x1="3.1369" y1="1.0287" x2="3.4925" y2="1.0541" layer="21"/>
+<rectangle x1="4.6101" y1="1.0287" x2="5.6007" y2="1.0541" layer="21"/>
+<rectangle x1="-5.4483" y1="1.0541" x2="-4.2291" y2="1.0795" layer="21"/>
+<rectangle x1="-3.5687" y1="1.0541" x2="-2.2987" y2="1.0795" layer="21"/>
+<rectangle x1="-1.3589" y1="1.0541" x2="-1.0287" y2="1.0795" layer="21"/>
+<rectangle x1="0.0381" y1="1.0541" x2="1.0287" y2="1.0795" layer="21"/>
+<rectangle x1="1.3589" y1="1.0541" x2="1.7145" y2="1.0795" layer="21"/>
+<rectangle x1="2.4511" y1="1.0541" x2="2.8067" y2="1.0795" layer="21"/>
+<rectangle x1="3.1369" y1="1.0541" x2="3.4925" y2="1.0795" layer="21"/>
+<rectangle x1="4.6609" y1="1.0541" x2="5.6007" y2="1.0795" layer="21"/>
+<rectangle x1="-5.4229" y1="1.0795" x2="-4.2545" y2="1.1049" layer="21"/>
+<rectangle x1="-3.5433" y1="1.0795" x2="-2.3241" y2="1.1049" layer="21"/>
+<rectangle x1="-1.3589" y1="1.0795" x2="-1.0287" y2="1.1049" layer="21"/>
+<rectangle x1="0.0889" y1="1.0795" x2="1.0287" y2="1.1049" layer="21"/>
+<rectangle x1="1.3589" y1="1.0795" x2="1.7145" y2="1.1049" layer="21"/>
+<rectangle x1="2.4765" y1="1.0795" x2="2.8067" y2="1.1049" layer="21"/>
+<rectangle x1="3.1369" y1="1.0795" x2="3.4925" y2="1.1049" layer="21"/>
+<rectangle x1="4.6863" y1="1.0795" x2="5.6007" y2="1.1049" layer="21"/>
+<rectangle x1="-5.3975" y1="1.1049" x2="-4.2799" y2="1.1303" layer="21"/>
+<rectangle x1="-3.5179" y1="1.1049" x2="-2.3495" y2="1.1303" layer="21"/>
+<rectangle x1="-1.3335" y1="1.1049" x2="-1.0287" y2="1.1303" layer="21"/>
+<rectangle x1="0.1143" y1="1.1049" x2="1.0287" y2="1.1303" layer="21"/>
+<rectangle x1="1.3589" y1="1.1049" x2="1.7145" y2="1.1303" layer="21"/>
+<rectangle x1="2.5019" y1="1.1049" x2="2.8067" y2="1.1303" layer="21"/>
+<rectangle x1="3.1369" y1="1.1049" x2="3.4925" y2="1.1303" layer="21"/>
+<rectangle x1="4.7371" y1="1.1049" x2="5.6007" y2="1.1303" layer="21"/>
+<rectangle x1="-5.3721" y1="1.1303" x2="-4.3053" y2="1.1557" layer="21"/>
+<rectangle x1="-3.4925" y1="1.1303" x2="-2.3749" y2="1.1557" layer="21"/>
+<rectangle x1="-1.3081" y1="1.1303" x2="-1.0287" y2="1.1557" layer="21"/>
+<rectangle x1="0.1651" y1="1.1303" x2="1.0287" y2="1.1557" layer="21"/>
+<rectangle x1="1.3589" y1="1.1303" x2="1.7145" y2="1.1557" layer="21"/>
+<rectangle x1="2.5273" y1="1.1303" x2="2.8067" y2="1.1557" layer="21"/>
+<rectangle x1="3.1369" y1="1.1303" x2="3.4925" y2="1.1557" layer="21"/>
+<rectangle x1="4.7879" y1="1.1303" x2="5.6007" y2="1.1557" layer="21"/>
+<rectangle x1="-5.3467" y1="1.1557" x2="-4.3307" y2="1.1811" layer="21"/>
+<rectangle x1="-3.4671" y1="1.1557" x2="-2.4003" y2="1.1811" layer="21"/>
+<rectangle x1="-1.2827" y1="1.1557" x2="-1.0287" y2="1.1811" layer="21"/>
+<rectangle x1="0.2159" y1="1.1557" x2="1.0287" y2="1.1811" layer="21"/>
+<rectangle x1="1.3589" y1="1.1557" x2="1.7145" y2="1.1811" layer="21"/>
+<rectangle x1="2.5527" y1="1.1557" x2="2.8067" y2="1.1811" layer="21"/>
+<rectangle x1="3.1369" y1="1.1557" x2="3.4925" y2="1.1811" layer="21"/>
+<rectangle x1="4.8387" y1="1.1557" x2="5.6007" y2="1.1811" layer="21"/>
+<rectangle x1="-5.3213" y1="1.1811" x2="-4.3815" y2="1.2065" layer="21"/>
+<rectangle x1="-3.4417" y1="1.1811" x2="-2.4511" y2="1.2065" layer="21"/>
+<rectangle x1="-1.2573" y1="1.1811" x2="-1.0287" y2="1.2065" layer="21"/>
+<rectangle x1="0.2667" y1="1.1811" x2="1.0287" y2="1.2065" layer="21"/>
+<rectangle x1="1.3589" y1="1.1811" x2="1.7145" y2="1.2065" layer="21"/>
+<rectangle x1="2.5781" y1="1.1811" x2="2.8067" y2="1.2065" layer="21"/>
+<rectangle x1="3.1369" y1="1.1811" x2="3.4925" y2="1.2065" layer="21"/>
+<rectangle x1="4.8895" y1="1.1811" x2="5.6007" y2="1.2065" layer="21"/>
+<rectangle x1="-5.2959" y1="1.2065" x2="-4.4069" y2="1.2319" layer="21"/>
+<rectangle x1="-3.4163" y1="1.2065" x2="-2.4765" y2="1.2319" layer="21"/>
+<rectangle x1="-1.2319" y1="1.2065" x2="-1.0287" y2="1.2319" layer="21"/>
+<rectangle x1="0.3175" y1="1.2065" x2="1.0287" y2="1.2319" layer="21"/>
+<rectangle x1="1.3589" y1="1.2065" x2="1.7145" y2="1.2319" layer="21"/>
+<rectangle x1="2.6035" y1="1.2065" x2="2.8067" y2="1.2319" layer="21"/>
+<rectangle x1="3.1369" y1="1.2065" x2="3.4925" y2="1.2319" layer="21"/>
+<rectangle x1="4.9657" y1="1.2065" x2="5.6007" y2="1.2319" layer="21"/>
+<rectangle x1="-5.2705" y1="1.2319" x2="-4.4323" y2="1.2573" layer="21"/>
+<rectangle x1="-3.3909" y1="1.2319" x2="-2.5019" y2="1.2573" layer="21"/>
+<rectangle x1="-1.2065" y1="1.2319" x2="-1.0287" y2="1.2573" layer="21"/>
+<rectangle x1="0.3683" y1="1.2319" x2="1.0287" y2="1.2573" layer="21"/>
+<rectangle x1="1.3589" y1="1.2319" x2="1.7145" y2="1.2573" layer="21"/>
+<rectangle x1="2.6289" y1="1.2319" x2="2.8067" y2="1.2573" layer="21"/>
+<rectangle x1="3.1369" y1="1.2319" x2="3.4925" y2="1.2573" layer="21"/>
+<rectangle x1="5.0165" y1="1.2319" x2="5.6007" y2="1.2573" layer="21"/>
+<rectangle x1="-5.2197" y1="1.2573" x2="-4.4831" y2="1.2827" layer="21"/>
+<rectangle x1="-3.3401" y1="1.2573" x2="-2.5527" y2="1.2827" layer="21"/>
+<rectangle x1="-1.1557" y1="1.2573" x2="-1.0287" y2="1.2827" layer="21"/>
+<rectangle x1="0.4445" y1="1.2573" x2="1.0287" y2="1.2827" layer="21"/>
+<rectangle x1="1.3589" y1="1.2573" x2="1.7145" y2="1.2827" layer="21"/>
+<rectangle x1="2.6543" y1="1.2573" x2="2.8067" y2="1.2827" layer="21"/>
+<rectangle x1="3.1369" y1="1.2573" x2="3.4925" y2="1.2827" layer="21"/>
+<rectangle x1="5.1181" y1="1.2573" x2="5.6007" y2="1.2827" layer="21"/>
+<rectangle x1="-5.1689" y1="1.2827" x2="-4.5339" y2="1.3081" layer="21"/>
+<rectangle x1="-3.2893" y1="1.2827" x2="-2.5781" y2="1.3081" layer="21"/>
+<rectangle x1="-1.1303" y1="1.2827" x2="-1.0287" y2="1.3081" layer="21"/>
+<rectangle x1="0.5207" y1="1.2827" x2="1.0287" y2="1.3081" layer="21"/>
+<rectangle x1="1.3589" y1="1.2827" x2="1.7145" y2="1.3081" layer="21"/>
+<rectangle x1="2.7051" y1="1.2827" x2="2.8067" y2="1.3081" layer="21"/>
+<rectangle x1="3.1369" y1="1.2827" x2="3.4925" y2="1.3081" layer="21"/>
+<rectangle x1="5.2197" y1="1.2827" x2="5.6007" y2="1.3081" layer="21"/>
+<rectangle x1="-5.0927" y1="1.3081" x2="-4.6101" y2="1.3335" layer="21"/>
+<rectangle x1="-3.2385" y1="1.3081" x2="-2.6543" y2="1.3335" layer="21"/>
+<rectangle x1="-1.1049" y1="1.3081" x2="-1.0287" y2="1.3335" layer="21"/>
+<rectangle x1="0.6223" y1="1.3081" x2="1.0287" y2="1.3335" layer="21"/>
+<rectangle x1="1.3589" y1="1.3081" x2="1.7145" y2="1.3335" layer="21"/>
+<rectangle x1="2.7305" y1="1.3081" x2="2.8067" y2="1.3335" layer="21"/>
+<rectangle x1="3.1369" y1="1.3081" x2="3.4925" y2="1.3335" layer="21"/>
+<rectangle x1="5.3467" y1="1.3081" x2="5.5753" y2="1.3335" layer="21"/>
+<rectangle x1="-4.9657" y1="1.3335" x2="-4.7371" y2="1.3589" layer="21"/>
+<rectangle x1="-3.1623" y1="1.3335" x2="-2.7051" y2="1.3589" layer="21"/>
+<rectangle x1="-1.0795" y1="1.3335" x2="-1.0287" y2="1.3589" layer="21"/>
+<rectangle x1="0.7493" y1="1.3335" x2="1.0287" y2="1.3589" layer="21"/>
+<rectangle x1="1.3589" y1="1.3335" x2="1.7145" y2="1.3589" layer="21"/>
+<rectangle x1="2.7559" y1="1.3335" x2="2.8067" y2="1.3589" layer="21"/>
+<rectangle x1="3.1369" y1="1.3335" x2="3.4925" y2="1.3589" layer="21"/>
+<rectangle x1="-3.0099" y1="1.3589" x2="-2.8321" y2="1.3843" layer="21"/>
+<rectangle x1="4.7879" y1="1.6891" x2="5.1181" y2="1.7145" layer="21"/>
+<rectangle x1="4.0767" y1="1.7145" x2="4.1021" y2="1.7399" layer="21"/>
+<rectangle x1="4.7371" y1="1.7145" x2="5.1181" y2="1.7399" layer="21"/>
+<rectangle x1="-3.9751" y1="1.7399" x2="-3.4925" y2="1.7653" layer="21"/>
+<rectangle x1="-1.4351" y1="1.7399" x2="-1.1557" y2="1.7653" layer="21"/>
+<rectangle x1="0.8509" y1="1.7399" x2="1.1303" y2="1.7653" layer="21"/>
+<rectangle x1="4.0513" y1="1.7399" x2="4.1021" y2="1.7653" layer="21"/>
+<rectangle x1="4.7371" y1="1.7399" x2="5.1181" y2="1.7653" layer="21"/>
+<rectangle x1="-4.1275" y1="1.7653" x2="-3.3401" y2="1.7907" layer="21"/>
+<rectangle x1="-1.4351" y1="1.7653" x2="-1.0287" y2="1.7907" layer="21"/>
+<rectangle x1="0.8509" y1="1.7653" x2="1.2573" y2="1.7907" layer="21"/>
+<rectangle x1="4.0259" y1="1.7653" x2="4.1021" y2="1.7907" layer="21"/>
+<rectangle x1="4.7371" y1="1.7653" x2="5.1181" y2="1.7907" layer="21"/>
+<rectangle x1="-4.2291" y1="1.7907" x2="-3.2385" y2="1.8161" layer="21"/>
+<rectangle x1="-1.4351" y1="1.7907" x2="-0.9271" y2="1.8161" layer="21"/>
+<rectangle x1="0.8509" y1="1.7907" x2="1.3589" y2="1.8161" layer="21"/>
+<rectangle x1="3.9751" y1="1.7907" x2="4.1021" y2="1.8161" layer="21"/>
+<rectangle x1="4.7371" y1="1.7907" x2="5.1181" y2="1.8161" layer="21"/>
+<rectangle x1="-4.3053" y1="1.8161" x2="-3.1623" y2="1.8415" layer="21"/>
+<rectangle x1="-1.4351" y1="1.8161" x2="-0.8509" y2="1.8415" layer="21"/>
+<rectangle x1="0.8509" y1="1.8161" x2="1.4605" y2="1.8415" layer="21"/>
+<rectangle x1="3.9497" y1="1.8161" x2="4.1021" y2="1.8415" layer="21"/>
+<rectangle x1="4.7371" y1="1.8161" x2="5.1181" y2="1.8415" layer="21"/>
+<rectangle x1="-4.3815" y1="1.8415" x2="-3.0861" y2="1.8669" layer="21"/>
+<rectangle x1="-1.4351" y1="1.8415" x2="-0.7747" y2="1.8669" layer="21"/>
+<rectangle x1="0.8509" y1="1.8415" x2="1.5113" y2="1.8669" layer="21"/>
+<rectangle x1="3.9243" y1="1.8415" x2="4.1021" y2="1.8669" layer="21"/>
+<rectangle x1="4.7371" y1="1.8415" x2="5.1181" y2="1.8669" layer="21"/>
+<rectangle x1="-4.4577" y1="1.8669" x2="-3.0099" y2="1.8923" layer="21"/>
+<rectangle x1="-1.4351" y1="1.8669" x2="-0.6985" y2="1.8923" layer="21"/>
+<rectangle x1="0.8509" y1="1.8669" x2="1.5875" y2="1.8923" layer="21"/>
+<rectangle x1="3.8989" y1="1.8669" x2="4.1021" y2="1.8923" layer="21"/>
+<rectangle x1="4.7371" y1="1.8669" x2="5.1181" y2="1.8923" layer="21"/>
+<rectangle x1="-4.5085" y1="1.8923" x2="-2.9591" y2="1.9177" layer="21"/>
+<rectangle x1="-1.4351" y1="1.8923" x2="-0.6477" y2="1.9177" layer="21"/>
+<rectangle x1="0.8509" y1="1.8923" x2="1.6383" y2="1.9177" layer="21"/>
+<rectangle x1="3.8735" y1="1.8923" x2="4.1021" y2="1.9177" layer="21"/>
+<rectangle x1="4.7371" y1="1.8923" x2="5.1181" y2="1.9177" layer="21"/>
+<rectangle x1="-4.5593" y1="1.9177" x2="-2.8829" y2="1.9431" layer="21"/>
+<rectangle x1="-1.4351" y1="1.9177" x2="-0.5969" y2="1.9431" layer="21"/>
+<rectangle x1="0.8509" y1="1.9177" x2="1.6891" y2="1.9431" layer="21"/>
+<rectangle x1="3.8481" y1="1.9177" x2="4.1021" y2="1.9431" layer="21"/>
+<rectangle x1="4.7371" y1="1.9177" x2="5.1435" y2="1.9431" layer="21"/>
+<rectangle x1="-4.6101" y1="1.9431" x2="-2.8321" y2="1.9685" layer="21"/>
+<rectangle x1="-1.4351" y1="1.9431" x2="-0.5461" y2="1.9685" layer="21"/>
+<rectangle x1="0.8509" y1="1.9431" x2="1.7399" y2="1.9685" layer="21"/>
+<rectangle x1="3.8227" y1="1.9431" x2="4.1021" y2="1.9685" layer="21"/>
+<rectangle x1="4.7371" y1="1.9431" x2="5.1435" y2="1.9685" layer="21"/>
+<rectangle x1="-4.6609" y1="1.9685" x2="-2.8067" y2="1.9939" layer="21"/>
+<rectangle x1="-1.4351" y1="1.9685" x2="-0.4953" y2="1.9939" layer="21"/>
+<rectangle x1="0.8509" y1="1.9685" x2="1.7907" y2="1.9939" layer="21"/>
+<rectangle x1="3.7973" y1="1.9685" x2="4.1021" y2="1.9939" layer="21"/>
+<rectangle x1="4.7371" y1="1.9685" x2="5.1435" y2="1.9939" layer="21"/>
+<rectangle x1="-4.7117" y1="1.9939" x2="-2.7559" y2="2.0193" layer="21"/>
+<rectangle x1="-1.4351" y1="1.9939" x2="-0.4445" y2="2.0193" layer="21"/>
+<rectangle x1="0.8509" y1="1.9939" x2="1.8415" y2="2.0193" layer="21"/>
+<rectangle x1="3.7719" y1="1.9939" x2="4.1021" y2="2.0193" layer="21"/>
+<rectangle x1="4.7371" y1="1.9939" x2="5.1435" y2="2.0193" layer="21"/>
+<rectangle x1="-4.7371" y1="2.0193" x2="-2.7051" y2="2.0447" layer="21"/>
+<rectangle x1="-1.4351" y1="2.0193" x2="-0.4191" y2="2.0447" layer="21"/>
+<rectangle x1="0.8509" y1="2.0193" x2="1.8669" y2="2.0447" layer="21"/>
+<rectangle x1="3.7465" y1="2.0193" x2="4.1021" y2="2.0447" layer="21"/>
+<rectangle x1="4.7371" y1="2.0193" x2="5.1435" y2="2.0447" layer="21"/>
+<rectangle x1="-4.7879" y1="2.0447" x2="-2.6797" y2="2.0701" layer="21"/>
+<rectangle x1="-1.4351" y1="2.0447" x2="-0.3683" y2="2.0701" layer="21"/>
+<rectangle x1="0.8509" y1="2.0447" x2="1.9177" y2="2.0701" layer="21"/>
+<rectangle x1="3.7211" y1="2.0447" x2="4.1021" y2="2.0701" layer="21"/>
+<rectangle x1="4.7371" y1="2.0447" x2="5.1435" y2="2.0701" layer="21"/>
+<rectangle x1="-4.8133" y1="2.0701" x2="-2.6289" y2="2.0955" layer="21"/>
+<rectangle x1="-1.4351" y1="2.0701" x2="-0.3429" y2="2.0955" layer="21"/>
+<rectangle x1="0.8509" y1="2.0701" x2="1.9431" y2="2.0955" layer="21"/>
+<rectangle x1="3.7211" y1="2.0701" x2="4.1021" y2="2.0955" layer="21"/>
+<rectangle x1="4.7371" y1="2.0701" x2="5.1435" y2="2.0955" layer="21"/>
+<rectangle x1="-4.8641" y1="2.0955" x2="-2.6035" y2="2.1209" layer="21"/>
+<rectangle x1="-1.4351" y1="2.0955" x2="-0.2921" y2="2.1209" layer="21"/>
+<rectangle x1="0.8509" y1="2.0955" x2="1.9939" y2="2.1209" layer="21"/>
+<rectangle x1="3.6957" y1="2.0955" x2="4.1021" y2="2.1209" layer="21"/>
+<rectangle x1="4.7371" y1="2.0955" x2="5.1435" y2="2.1209" layer="21"/>
+<rectangle x1="-4.8895" y1="2.1209" x2="-3.9497" y2="2.1463" layer="21"/>
+<rectangle x1="-3.5687" y1="2.1209" x2="-2.5781" y2="2.1463" layer="21"/>
+<rectangle x1="-1.4351" y1="2.1209" x2="-0.2667" y2="2.1463" layer="21"/>
+<rectangle x1="0.8509" y1="2.1209" x2="2.0193" y2="2.1463" layer="21"/>
+<rectangle x1="3.6703" y1="2.1209" x2="4.1021" y2="2.1463" layer="21"/>
+<rectangle x1="4.7371" y1="2.1209" x2="5.1435" y2="2.1463" layer="21"/>
+<rectangle x1="-4.9149" y1="2.1463" x2="-4.1021" y2="2.1717" layer="21"/>
+<rectangle x1="-3.4163" y1="2.1463" x2="-2.5273" y2="2.1717" layer="21"/>
+<rectangle x1="-1.4351" y1="2.1463" x2="-0.2413" y2="2.1717" layer="21"/>
+<rectangle x1="0.8509" y1="2.1463" x2="2.0447" y2="2.1717" layer="21"/>
+<rectangle x1="3.6449" y1="2.1463" x2="4.1021" y2="2.1717" layer="21"/>
+<rectangle x1="4.7371" y1="2.1463" x2="5.1435" y2="2.1717" layer="21"/>
+<rectangle x1="-4.9403" y1="2.1717" x2="-4.2037" y2="2.1971" layer="21"/>
+<rectangle x1="-3.3147" y1="2.1717" x2="-2.5019" y2="2.1971" layer="21"/>
+<rectangle x1="-1.4351" y1="2.1717" x2="-0.1905" y2="2.1971" layer="21"/>
+<rectangle x1="0.8509" y1="2.1717" x2="2.0701" y2="2.1971" layer="21"/>
+<rectangle x1="3.6449" y1="2.1717" x2="4.1021" y2="2.1971" layer="21"/>
+<rectangle x1="4.7371" y1="2.1717" x2="5.1435" y2="2.1971" layer="21"/>
+<rectangle x1="-4.9911" y1="2.1971" x2="-4.2799" y2="2.2225" layer="21"/>
+<rectangle x1="-3.2385" y1="2.1971" x2="-2.4765" y2="2.2225" layer="21"/>
+<rectangle x1="-1.4351" y1="2.1971" x2="-0.1651" y2="2.2225" layer="21"/>
+<rectangle x1="0.8509" y1="2.1971" x2="2.1209" y2="2.2225" layer="21"/>
+<rectangle x1="3.6195" y1="2.1971" x2="4.1021" y2="2.2225" layer="21"/>
+<rectangle x1="4.7371" y1="2.1971" x2="5.1435" y2="2.2225" layer="21"/>
+<rectangle x1="-5.0165" y1="2.2225" x2="-4.3307" y2="2.2479" layer="21"/>
+<rectangle x1="-3.1623" y1="2.2225" x2="-2.4511" y2="2.2479" layer="21"/>
+<rectangle x1="-1.4351" y1="2.2225" x2="-0.1397" y2="2.2479" layer="21"/>
+<rectangle x1="0.8509" y1="2.2225" x2="2.1463" y2="2.2479" layer="21"/>
+<rectangle x1="3.5941" y1="2.2225" x2="4.1021" y2="2.2479" layer="21"/>
+<rectangle x1="4.7371" y1="2.2225" x2="5.1435" y2="2.2479" layer="21"/>
+<rectangle x1="-5.0419" y1="2.2479" x2="-4.4069" y2="2.2733" layer="21"/>
+<rectangle x1="-3.1115" y1="2.2479" x2="-2.4257" y2="2.2733" layer="21"/>
+<rectangle x1="-1.4351" y1="2.2479" x2="-1.0287" y2="2.2733" layer="21"/>
+<rectangle x1="-0.8763" y1="2.2479" x2="-0.1143" y2="2.2733" layer="21"/>
+<rectangle x1="0.8509" y1="2.2479" x2="1.2065" y2="2.2733" layer="21"/>
+<rectangle x1="1.3335" y1="2.2479" x2="2.1717" y2="2.2733" layer="21"/>
+<rectangle x1="3.5941" y1="2.2479" x2="4.0767" y2="2.2733" layer="21"/>
+<rectangle x1="4.7371" y1="2.2479" x2="5.1435" y2="2.2733" layer="21"/>
+<rectangle x1="-5.0673" y1="2.2733" x2="-4.4323" y2="2.2987" layer="21"/>
+<rectangle x1="-3.0607" y1="2.2733" x2="-2.4003" y2="2.2987" layer="21"/>
+<rectangle x1="-1.4351" y1="2.2733" x2="-1.0287" y2="2.2987" layer="21"/>
+<rectangle x1="-0.7747" y1="2.2733" x2="-0.0889" y2="2.2987" layer="21"/>
+<rectangle x1="0.8509" y1="2.2733" x2="1.2065" y2="2.2987" layer="21"/>
+<rectangle x1="1.4605" y1="2.2733" x2="2.1971" y2="2.2987" layer="21"/>
+<rectangle x1="3.5687" y1="2.2733" x2="4.0513" y2="2.2987" layer="21"/>
+<rectangle x1="4.7371" y1="2.2733" x2="5.1435" y2="2.2987" layer="21"/>
+<rectangle x1="-5.0927" y1="2.2987" x2="-4.4831" y2="2.3241" layer="21"/>
+<rectangle x1="-3.0099" y1="2.2987" x2="-2.3749" y2="2.3241" layer="21"/>
+<rectangle x1="-1.4351" y1="2.2987" x2="-1.0287" y2="2.3241" layer="21"/>
+<rectangle x1="-0.6985" y1="2.2987" x2="-0.0635" y2="2.3241" layer="21"/>
+<rectangle x1="0.8509" y1="2.2987" x2="1.2065" y2="2.3241" layer="21"/>
+<rectangle x1="1.5367" y1="2.2987" x2="2.2225" y2="2.3241" layer="21"/>
+<rectangle x1="3.5433" y1="2.2987" x2="4.0259" y2="2.3241" layer="21"/>
+<rectangle x1="4.7371" y1="2.2987" x2="5.1435" y2="2.3241" layer="21"/>
+<rectangle x1="-5.1181" y1="2.3241" x2="-4.5339" y2="2.3495" layer="21"/>
+<rectangle x1="-2.9591" y1="2.3241" x2="-2.3495" y2="2.3495" layer="21"/>
+<rectangle x1="-1.4351" y1="2.3241" x2="-1.0287" y2="2.3495" layer="21"/>
+<rectangle x1="-0.6223" y1="2.3241" x2="-0.0381" y2="2.3495" layer="21"/>
+<rectangle x1="0.8509" y1="2.3241" x2="1.2065" y2="2.3495" layer="21"/>
+<rectangle x1="1.5875" y1="2.3241" x2="2.2479" y2="2.3495" layer="21"/>
+<rectangle x1="3.5433" y1="2.3241" x2="4.0259" y2="2.3495" layer="21"/>
+<rectangle x1="4.7371" y1="2.3241" x2="5.1435" y2="2.3495" layer="21"/>
+<rectangle x1="-5.1435" y1="2.3495" x2="-4.5847" y2="2.3749" layer="21"/>
+<rectangle x1="-2.9337" y1="2.3495" x2="-2.3241" y2="2.3749" layer="21"/>
+<rectangle x1="-1.4351" y1="2.3495" x2="-1.0287" y2="2.3749" layer="21"/>
+<rectangle x1="-0.5969" y1="2.3495" x2="-0.0127" y2="2.3749" layer="21"/>
+<rectangle x1="0.8509" y1="2.3495" x2="1.2065" y2="2.3749" layer="21"/>
+<rectangle x1="1.6383" y1="2.3495" x2="2.2733" y2="2.3749" layer="21"/>
+<rectangle x1="3.5179" y1="2.3495" x2="4.0005" y2="2.3749" layer="21"/>
+<rectangle x1="4.7371" y1="2.3495" x2="5.1435" y2="2.3749" layer="21"/>
+<rectangle x1="-5.1689" y1="2.3749" x2="-4.6101" y2="2.4003" layer="21"/>
+<rectangle x1="-2.8829" y1="2.3749" x2="-2.2987" y2="2.4003" layer="21"/>
+<rectangle x1="-1.4351" y1="2.3749" x2="-1.0287" y2="2.4003" layer="21"/>
+<rectangle x1="-0.5461" y1="2.3749" x2="0.0127" y2="2.4003" layer="21"/>
+<rectangle x1="0.8509" y1="2.3749" x2="1.2065" y2="2.4003" layer="21"/>
+<rectangle x1="1.6891" y1="2.3749" x2="2.2733" y2="2.4003" layer="21"/>
+<rectangle x1="3.5179" y1="2.3749" x2="3.9751" y2="2.4003" layer="21"/>
+<rectangle x1="4.7371" y1="2.3749" x2="5.1435" y2="2.4003" layer="21"/>
+<rectangle x1="-5.1689" y1="2.4003" x2="-4.6609" y2="2.4257" layer="21"/>
+<rectangle x1="-2.8575" y1="2.4003" x2="-2.2733" y2="2.4257" layer="21"/>
+<rectangle x1="-1.4351" y1="2.4003" x2="-1.0287" y2="2.4257" layer="21"/>
+<rectangle x1="-0.4953" y1="2.4003" x2="0.0127" y2="2.4257" layer="21"/>
+<rectangle x1="0.8509" y1="2.4003" x2="1.2065" y2="2.4257" layer="21"/>
+<rectangle x1="1.7399" y1="2.4003" x2="2.2987" y2="2.4257" layer="21"/>
+<rectangle x1="3.4925" y1="2.4003" x2="3.9497" y2="2.4257" layer="21"/>
+<rectangle x1="4.7371" y1="2.4003" x2="5.1435" y2="2.4257" layer="21"/>
+<rectangle x1="-5.1943" y1="2.4257" x2="-4.6863" y2="2.4511" layer="21"/>
+<rectangle x1="-2.8067" y1="2.4257" x2="-2.2479" y2="2.4511" layer="21"/>
+<rectangle x1="-1.4351" y1="2.4257" x2="-1.0287" y2="2.4511" layer="21"/>
+<rectangle x1="-0.4699" y1="2.4257" x2="0.0381" y2="2.4511" layer="21"/>
+<rectangle x1="0.8509" y1="2.4257" x2="1.2065" y2="2.4511" layer="21"/>
+<rectangle x1="1.7653" y1="2.4257" x2="2.3241" y2="2.4511" layer="21"/>
+<rectangle x1="3.4925" y1="2.4257" x2="3.9497" y2="2.4511" layer="21"/>
+<rectangle x1="4.7371" y1="2.4257" x2="5.1435" y2="2.4511" layer="21"/>
+<rectangle x1="-5.2197" y1="2.4511" x2="-4.7117" y2="2.4765" layer="21"/>
+<rectangle x1="-2.7813" y1="2.4511" x2="-2.2225" y2="2.4765" layer="21"/>
+<rectangle x1="-1.4351" y1="2.4511" x2="-1.0287" y2="2.4765" layer="21"/>
+<rectangle x1="-0.4191" y1="2.4511" x2="0.0635" y2="2.4765" layer="21"/>
+<rectangle x1="0.8509" y1="2.4511" x2="1.2065" y2="2.4765" layer="21"/>
+<rectangle x1="1.8161" y1="2.4511" x2="2.3495" y2="2.4765" layer="21"/>
+<rectangle x1="3.4671" y1="2.4511" x2="3.9243" y2="2.4765" layer="21"/>
+<rectangle x1="4.7371" y1="2.4511" x2="5.1435" y2="2.4765" layer="21"/>
+<rectangle x1="-5.2451" y1="2.4765" x2="-4.7371" y2="2.5019" layer="21"/>
+<rectangle x1="-2.7559" y1="2.4765" x2="-2.2225" y2="2.5019" layer="21"/>
+<rectangle x1="-1.4351" y1="2.4765" x2="-1.0287" y2="2.5019" layer="21"/>
+<rectangle x1="-0.3937" y1="2.4765" x2="0.0889" y2="2.5019" layer="21"/>
+<rectangle x1="0.8509" y1="2.4765" x2="1.2065" y2="2.5019" layer="21"/>
+<rectangle x1="1.8415" y1="2.4765" x2="2.3749" y2="2.5019" layer="21"/>
+<rectangle x1="3.4671" y1="2.4765" x2="3.9243" y2="2.5019" layer="21"/>
+<rectangle x1="4.7371" y1="2.4765" x2="5.1435" y2="2.5019" layer="21"/>
+<rectangle x1="-5.2451" y1="2.5019" x2="-4.7879" y2="2.5273" layer="21"/>
+<rectangle x1="-2.7305" y1="2.5019" x2="-2.1971" y2="2.5273" layer="21"/>
+<rectangle x1="-1.4351" y1="2.5019" x2="-1.0287" y2="2.5273" layer="21"/>
+<rectangle x1="-0.3683" y1="2.5019" x2="0.1143" y2="2.5273" layer="21"/>
+<rectangle x1="0.8509" y1="2.5019" x2="1.2065" y2="2.5273" layer="21"/>
+<rectangle x1="1.8669" y1="2.5019" x2="2.4003" y2="2.5273" layer="21"/>
+<rectangle x1="3.4417" y1="2.5019" x2="3.8989" y2="2.5273" layer="21"/>
+<rectangle x1="4.7371" y1="2.5019" x2="5.1435" y2="2.5273" layer="21"/>
+<rectangle x1="-5.2705" y1="2.5273" x2="-4.8133" y2="2.5527" layer="21"/>
+<rectangle x1="-2.7051" y1="2.5273" x2="-2.1717" y2="2.5527" layer="21"/>
+<rectangle x1="-1.4351" y1="2.5273" x2="-1.0287" y2="2.5527" layer="21"/>
+<rectangle x1="-0.3429" y1="2.5273" x2="0.1143" y2="2.5527" layer="21"/>
+<rectangle x1="0.8509" y1="2.5273" x2="1.2065" y2="2.5527" layer="21"/>
+<rectangle x1="1.8923" y1="2.5273" x2="2.4003" y2="2.5527" layer="21"/>
+<rectangle x1="3.4417" y1="2.5273" x2="3.8735" y2="2.5527" layer="21"/>
+<rectangle x1="4.7371" y1="2.5273" x2="5.1435" y2="2.5527" layer="21"/>
+<rectangle x1="-5.2959" y1="2.5527" x2="-4.8387" y2="2.5781" layer="21"/>
+<rectangle x1="-2.6797" y1="2.5527" x2="-2.1463" y2="2.5781" layer="21"/>
+<rectangle x1="-1.4351" y1="2.5527" x2="-1.0287" y2="2.5781" layer="21"/>
+<rectangle x1="-0.3175" y1="2.5527" x2="0.1397" y2="2.5781" layer="21"/>
+<rectangle x1="0.8509" y1="2.5527" x2="1.2065" y2="2.5781" layer="21"/>
+<rectangle x1="1.9177" y1="2.5527" x2="2.4257" y2="2.5781" layer="21"/>
+<rectangle x1="3.4417" y1="2.5527" x2="3.8735" y2="2.5781" layer="21"/>
+<rectangle x1="4.7371" y1="2.5527" x2="5.1435" y2="2.5781" layer="21"/>
+<rectangle x1="-5.3213" y1="2.5781" x2="-4.8641" y2="2.6035" layer="21"/>
+<rectangle x1="-2.6543" y1="2.5781" x2="-2.1463" y2="2.6035" layer="21"/>
+<rectangle x1="-1.4351" y1="2.5781" x2="-1.0287" y2="2.6035" layer="21"/>
+<rectangle x1="-0.2921" y1="2.5781" x2="0.1651" y2="2.6035" layer="21"/>
+<rectangle x1="0.8509" y1="2.5781" x2="1.2065" y2="2.6035" layer="21"/>
+<rectangle x1="1.9431" y1="2.5781" x2="2.4511" y2="2.6035" layer="21"/>
+<rectangle x1="3.4163" y1="2.5781" x2="3.8481" y2="2.6035" layer="21"/>
+<rectangle x1="4.7371" y1="2.5781" x2="5.1435" y2="2.6035" layer="21"/>
+<rectangle x1="-5.3213" y1="2.6035" x2="-4.8895" y2="2.6289" layer="21"/>
+<rectangle x1="-2.6289" y1="2.6035" x2="-2.1209" y2="2.6289" layer="21"/>
+<rectangle x1="-1.4351" y1="2.6035" x2="-1.0287" y2="2.6289" layer="21"/>
+<rectangle x1="-0.2667" y1="2.6035" x2="0.1651" y2="2.6289" layer="21"/>
+<rectangle x1="0.8509" y1="2.6035" x2="1.2065" y2="2.6289" layer="21"/>
+<rectangle x1="1.9685" y1="2.6035" x2="2.4511" y2="2.6289" layer="21"/>
+<rectangle x1="3.4163" y1="2.6035" x2="3.8481" y2="2.6289" layer="21"/>
+<rectangle x1="4.7371" y1="2.6035" x2="5.1435" y2="2.6289" layer="21"/>
+<rectangle x1="-5.3467" y1="2.6289" x2="-4.8895" y2="2.6543" layer="21"/>
+<rectangle x1="-2.6035" y1="2.6289" x2="-2.1209" y2="2.6543" layer="21"/>
+<rectangle x1="-1.4351" y1="2.6289" x2="-1.0287" y2="2.6543" layer="21"/>
+<rectangle x1="-0.2413" y1="2.6289" x2="0.1905" y2="2.6543" layer="21"/>
+<rectangle x1="0.8509" y1="2.6289" x2="1.2065" y2="2.6543" layer="21"/>
+<rectangle x1="1.9939" y1="2.6289" x2="2.4765" y2="2.6543" layer="21"/>
+<rectangle x1="3.3909" y1="2.6289" x2="3.8227" y2="2.6543" layer="21"/>
+<rectangle x1="4.7371" y1="2.6289" x2="5.1435" y2="2.6543" layer="21"/>
+<rectangle x1="-5.3721" y1="2.6543" x2="-4.9149" y2="2.6797" layer="21"/>
+<rectangle x1="-2.5781" y1="2.6543" x2="-2.0955" y2="2.6797" layer="21"/>
+<rectangle x1="-1.4351" y1="2.6543" x2="-1.0287" y2="2.6797" layer="21"/>
+<rectangle x1="-0.2159" y1="2.6543" x2="0.2159" y2="2.6797" layer="21"/>
+<rectangle x1="0.8509" y1="2.6543" x2="1.2065" y2="2.6797" layer="21"/>
+<rectangle x1="2.0193" y1="2.6543" x2="2.5019" y2="2.6797" layer="21"/>
+<rectangle x1="3.3909" y1="2.6543" x2="3.8227" y2="2.6797" layer="21"/>
+<rectangle x1="4.7371" y1="2.6543" x2="5.1435" y2="2.6797" layer="21"/>
+<rectangle x1="-5.3721" y1="2.6797" x2="-4.9403" y2="2.7051" layer="21"/>
+<rectangle x1="-2.5527" y1="2.6797" x2="-2.0701" y2="2.7051" layer="21"/>
+<rectangle x1="-1.4351" y1="2.6797" x2="-1.0287" y2="2.7051" layer="21"/>
+<rectangle x1="-0.2159" y1="2.6797" x2="0.2159" y2="2.7051" layer="21"/>
+<rectangle x1="0.8509" y1="2.6797" x2="1.2065" y2="2.7051" layer="21"/>
+<rectangle x1="2.0447" y1="2.6797" x2="2.5019" y2="2.7051" layer="21"/>
+<rectangle x1="3.3909" y1="2.6797" x2="3.7973" y2="2.7051" layer="21"/>
+<rectangle x1="4.7371" y1="2.6797" x2="5.1435" y2="2.7051" layer="21"/>
+<rectangle x1="-5.3975" y1="2.7051" x2="-4.9657" y2="2.7305" layer="21"/>
+<rectangle x1="-2.5527" y1="2.7051" x2="-2.0701" y2="2.7305" layer="21"/>
+<rectangle x1="-1.4351" y1="2.7051" x2="-1.0287" y2="2.7305" layer="21"/>
+<rectangle x1="-0.1905" y1="2.7051" x2="0.2413" y2="2.7305" layer="21"/>
+<rectangle x1="0.8509" y1="2.7051" x2="1.2065" y2="2.7305" layer="21"/>
+<rectangle x1="2.0447" y1="2.7051" x2="2.5273" y2="2.7305" layer="21"/>
+<rectangle x1="3.3655" y1="2.7051" x2="3.7973" y2="2.7305" layer="21"/>
+<rectangle x1="4.7371" y1="2.7051" x2="5.1435" y2="2.7305" layer="21"/>
+<rectangle x1="-5.4229" y1="2.7305" x2="-4.9657" y2="2.7559" layer="21"/>
+<rectangle x1="-2.5273" y1="2.7305" x2="-2.0447" y2="2.7559" layer="21"/>
+<rectangle x1="-1.4351" y1="2.7305" x2="-1.0287" y2="2.7559" layer="21"/>
+<rectangle x1="-0.1651" y1="2.7305" x2="0.2413" y2="2.7559" layer="21"/>
+<rectangle x1="0.8509" y1="2.7305" x2="1.2065" y2="2.7559" layer="21"/>
+<rectangle x1="2.0701" y1="2.7305" x2="2.5273" y2="2.7559" layer="21"/>
+<rectangle x1="3.3655" y1="2.7305" x2="3.7973" y2="2.7559" layer="21"/>
+<rectangle x1="4.7371" y1="2.7305" x2="5.1435" y2="2.7559" layer="21"/>
+<rectangle x1="-5.4229" y1="2.7559" x2="-4.9911" y2="2.7813" layer="21"/>
+<rectangle x1="-2.5019" y1="2.7559" x2="-2.0447" y2="2.7813" layer="21"/>
+<rectangle x1="-1.4351" y1="2.7559" x2="-1.0287" y2="2.7813" layer="21"/>
+<rectangle x1="-0.1651" y1="2.7559" x2="0.2667" y2="2.7813" layer="21"/>
+<rectangle x1="0.8509" y1="2.7559" x2="1.2065" y2="2.7813" layer="21"/>
+<rectangle x1="2.0955" y1="2.7559" x2="2.5527" y2="2.7813" layer="21"/>
+<rectangle x1="3.3655" y1="2.7559" x2="3.7719" y2="2.7813" layer="21"/>
+<rectangle x1="4.7371" y1="2.7559" x2="5.1435" y2="2.7813" layer="21"/>
+<rectangle x1="-5.4483" y1="2.7813" x2="-5.0165" y2="2.8067" layer="21"/>
+<rectangle x1="-2.4765" y1="2.7813" x2="-2.0193" y2="2.8067" layer="21"/>
+<rectangle x1="-1.4351" y1="2.7813" x2="-1.0287" y2="2.8067" layer="21"/>
+<rectangle x1="-0.1397" y1="2.7813" x2="0.2667" y2="2.8067" layer="21"/>
+<rectangle x1="0.8509" y1="2.7813" x2="1.2065" y2="2.8067" layer="21"/>
+<rectangle x1="2.0955" y1="2.7813" x2="2.5527" y2="2.8067" layer="21"/>
+<rectangle x1="3.3401" y1="2.7813" x2="3.7719" y2="2.8067" layer="21"/>
+<rectangle x1="4.7371" y1="2.7813" x2="5.1435" y2="2.8067" layer="21"/>
+<rectangle x1="-5.4483" y1="2.8067" x2="-5.0165" y2="2.8321" layer="21"/>
+<rectangle x1="-2.4765" y1="2.8067" x2="-2.0193" y2="2.8321" layer="21"/>
+<rectangle x1="-1.4351" y1="2.8067" x2="-1.0287" y2="2.8321" layer="21"/>
+<rectangle x1="-0.1143" y1="2.8067" x2="0.2921" y2="2.8321" layer="21"/>
+<rectangle x1="0.8509" y1="2.8067" x2="1.2065" y2="2.8321" layer="21"/>
+<rectangle x1="2.1209" y1="2.8067" x2="2.5781" y2="2.8321" layer="21"/>
+<rectangle x1="3.3401" y1="2.8067" x2="3.7719" y2="2.8321" layer="21"/>
+<rectangle x1="4.7371" y1="2.8067" x2="5.1435" y2="2.8321" layer="21"/>
+<rectangle x1="-5.4737" y1="2.8321" x2="-5.0419" y2="2.8575" layer="21"/>
+<rectangle x1="-2.4511" y1="2.8321" x2="-1.9939" y2="2.8575" layer="21"/>
+<rectangle x1="-1.4351" y1="2.8321" x2="-1.0287" y2="2.8575" layer="21"/>
+<rectangle x1="-0.1143" y1="2.8321" x2="0.2921" y2="2.8575" layer="21"/>
+<rectangle x1="0.8509" y1="2.8321" x2="1.2065" y2="2.8575" layer="21"/>
+<rectangle x1="2.1463" y1="2.8321" x2="2.5781" y2="2.8575" layer="21"/>
+<rectangle x1="3.3401" y1="2.8321" x2="3.7465" y2="2.8575" layer="21"/>
+<rectangle x1="4.7117" y1="2.8321" x2="5.1435" y2="2.8575" layer="21"/>
+<rectangle x1="-5.4737" y1="2.8575" x2="-5.0673" y2="2.8829" layer="21"/>
+<rectangle x1="-2.4257" y1="2.8575" x2="-1.9939" y2="2.8829" layer="21"/>
+<rectangle x1="-1.4351" y1="2.8575" x2="-1.0287" y2="2.8829" layer="21"/>
+<rectangle x1="-0.0889" y1="2.8575" x2="0.3175" y2="2.8829" layer="21"/>
+<rectangle x1="0.8509" y1="2.8575" x2="1.2065" y2="2.8829" layer="21"/>
+<rectangle x1="2.1463" y1="2.8575" x2="2.6035" y2="2.8829" layer="21"/>
+<rectangle x1="3.3401" y1="2.8575" x2="3.7465" y2="2.8829" layer="21"/>
+<rectangle x1="4.7117" y1="2.8575" x2="5.1435" y2="2.8829" layer="21"/>
+<rectangle x1="-5.4737" y1="2.8829" x2="-5.0927" y2="2.9083" layer="21"/>
+<rectangle x1="-2.4257" y1="2.8829" x2="-1.9685" y2="2.9083" layer="21"/>
+<rectangle x1="-1.4351" y1="2.8829" x2="-1.0287" y2="2.9083" layer="21"/>
+<rectangle x1="-0.0889" y1="2.8829" x2="0.3175" y2="2.9083" layer="21"/>
+<rectangle x1="0.8509" y1="2.8829" x2="1.2065" y2="2.9083" layer="21"/>
+<rectangle x1="2.1717" y1="2.8829" x2="2.6035" y2="2.9083" layer="21"/>
+<rectangle x1="3.3401" y1="2.8829" x2="3.7465" y2="2.9083" layer="21"/>
+<rectangle x1="4.7117" y1="2.8829" x2="5.1435" y2="2.9083" layer="21"/>
+<rectangle x1="-5.4991" y1="2.9083" x2="-5.0927" y2="2.9337" layer="21"/>
+<rectangle x1="-2.4003" y1="2.9083" x2="-1.9685" y2="2.9337" layer="21"/>
+<rectangle x1="-1.4351" y1="2.9083" x2="-1.0287" y2="2.9337" layer="21"/>
+<rectangle x1="-0.0635" y1="2.9083" x2="0.3429" y2="2.9337" layer="21"/>
+<rectangle x1="0.8509" y1="2.9083" x2="1.2065" y2="2.9337" layer="21"/>
+<rectangle x1="2.1717" y1="2.9083" x2="2.6035" y2="2.9337" layer="21"/>
+<rectangle x1="3.3147" y1="2.9083" x2="3.7211" y2="2.9337" layer="21"/>
+<rectangle x1="4.7117" y1="2.9083" x2="5.1435" y2="2.9337" layer="21"/>
+<rectangle x1="-5.4991" y1="2.9337" x2="-5.1181" y2="2.9591" layer="21"/>
+<rectangle x1="-2.4003" y1="2.9337" x2="-1.9431" y2="2.9591" layer="21"/>
+<rectangle x1="-1.4351" y1="2.9337" x2="-1.0287" y2="2.9591" layer="21"/>
+<rectangle x1="-0.0635" y1="2.9337" x2="0.3429" y2="2.9591" layer="21"/>
+<rectangle x1="0.8509" y1="2.9337" x2="1.2065" y2="2.9591" layer="21"/>
+<rectangle x1="2.1971" y1="2.9337" x2="2.6289" y2="2.9591" layer="21"/>
+<rectangle x1="3.3147" y1="2.9337" x2="3.7211" y2="2.9591" layer="21"/>
+<rectangle x1="4.7117" y1="2.9337" x2="5.1435" y2="2.9591" layer="21"/>
+<rectangle x1="-5.5245" y1="2.9591" x2="-5.1181" y2="2.9845" layer="21"/>
+<rectangle x1="-2.3749" y1="2.9591" x2="-1.9431" y2="2.9845" layer="21"/>
+<rectangle x1="-1.4351" y1="2.9591" x2="-1.0287" y2="2.9845" layer="21"/>
+<rectangle x1="-0.0381" y1="2.9591" x2="0.3429" y2="2.9845" layer="21"/>
+<rectangle x1="0.8509" y1="2.9591" x2="1.2065" y2="2.9845" layer="21"/>
+<rectangle x1="2.1971" y1="2.9591" x2="2.6289" y2="2.9845" layer="21"/>
+<rectangle x1="3.3147" y1="2.9591" x2="3.7211" y2="2.9845" layer="21"/>
+<rectangle x1="4.7117" y1="2.9591" x2="5.1435" y2="2.9845" layer="21"/>
+<rectangle x1="-5.5245" y1="2.9845" x2="-5.1435" y2="3.0099" layer="21"/>
+<rectangle x1="-2.3749" y1="2.9845" x2="-1.9431" y2="3.0099" layer="21"/>
+<rectangle x1="-1.4351" y1="2.9845" x2="-1.0287" y2="3.0099" layer="21"/>
+<rectangle x1="-0.0381" y1="2.9845" x2="0.3683" y2="3.0099" layer="21"/>
+<rectangle x1="0.8509" y1="2.9845" x2="1.2065" y2="3.0099" layer="21"/>
+<rectangle x1="2.2225" y1="2.9845" x2="2.6543" y2="3.0099" layer="21"/>
+<rectangle x1="3.3147" y1="2.9845" x2="3.7211" y2="3.0099" layer="21"/>
+<rectangle x1="4.7117" y1="2.9845" x2="5.1435" y2="3.0099" layer="21"/>
+<rectangle x1="-5.5245" y1="3.0099" x2="-5.1435" y2="3.0353" layer="21"/>
+<rectangle x1="-2.3495" y1="3.0099" x2="-1.9177" y2="3.0353" layer="21"/>
+<rectangle x1="-1.4351" y1="3.0099" x2="-1.0287" y2="3.0353" layer="21"/>
+<rectangle x1="-0.0127" y1="3.0099" x2="0.3683" y2="3.0353" layer="21"/>
+<rectangle x1="0.8509" y1="3.0099" x2="1.2065" y2="3.0353" layer="21"/>
+<rectangle x1="2.2225" y1="3.0099" x2="2.6543" y2="3.0353" layer="21"/>
+<rectangle x1="3.3147" y1="3.0099" x2="3.7211" y2="3.0353" layer="21"/>
+<rectangle x1="4.7117" y1="3.0099" x2="5.1435" y2="3.0353" layer="21"/>
+<rectangle x1="-5.5499" y1="3.0353" x2="-5.1689" y2="3.0607" layer="21"/>
+<rectangle x1="-2.3495" y1="3.0353" x2="-1.9177" y2="3.0607" layer="21"/>
+<rectangle x1="-1.4351" y1="3.0353" x2="-1.0287" y2="3.0607" layer="21"/>
+<rectangle x1="-0.0127" y1="3.0353" x2="0.3683" y2="3.0607" layer="21"/>
+<rectangle x1="0.8509" y1="3.0353" x2="1.2065" y2="3.0607" layer="21"/>
+<rectangle x1="2.2225" y1="3.0353" x2="2.6543" y2="3.0607" layer="21"/>
+<rectangle x1="3.3147" y1="3.0353" x2="3.6957" y2="3.0607" layer="21"/>
+<rectangle x1="4.7117" y1="3.0353" x2="5.1435" y2="3.0607" layer="21"/>
+<rectangle x1="-5.5499" y1="3.0607" x2="-5.1689" y2="3.0861" layer="21"/>
+<rectangle x1="-2.3241" y1="3.0607" x2="-1.9177" y2="3.0861" layer="21"/>
+<rectangle x1="-1.4351" y1="3.0607" x2="-1.0287" y2="3.0861" layer="21"/>
+<rectangle x1="-0.0127" y1="3.0607" x2="0.3937" y2="3.0861" layer="21"/>
+<rectangle x1="0.8509" y1="3.0607" x2="1.2065" y2="3.0861" layer="21"/>
+<rectangle x1="2.2479" y1="3.0607" x2="2.6797" y2="3.0861" layer="21"/>
+<rectangle x1="3.2893" y1="3.0607" x2="3.6957" y2="3.0861" layer="21"/>
+<rectangle x1="4.7117" y1="3.0607" x2="5.1435" y2="3.0861" layer="21"/>
+<rectangle x1="-5.5499" y1="3.0861" x2="-5.1689" y2="3.1115" layer="21"/>
+<rectangle x1="-2.3241" y1="3.0861" x2="-1.8923" y2="3.1115" layer="21"/>
+<rectangle x1="-1.4351" y1="3.0861" x2="-1.0287" y2="3.1115" layer="21"/>
+<rectangle x1="0.0127" y1="3.0861" x2="0.3937" y2="3.1115" layer="21"/>
+<rectangle x1="0.8509" y1="3.0861" x2="1.2065" y2="3.1115" layer="21"/>
+<rectangle x1="2.2479" y1="3.0861" x2="2.6797" y2="3.1115" layer="21"/>
+<rectangle x1="3.2893" y1="3.0861" x2="3.6957" y2="3.1115" layer="21"/>
+<rectangle x1="4.7117" y1="3.0861" x2="5.1435" y2="3.1115" layer="21"/>
+<rectangle x1="-5.5753" y1="3.1115" x2="-5.1943" y2="3.1369" layer="21"/>
+<rectangle x1="-2.3241" y1="3.1115" x2="-1.8923" y2="3.1369" layer="21"/>
+<rectangle x1="-1.4351" y1="3.1115" x2="-1.0287" y2="3.1369" layer="21"/>
+<rectangle x1="0.0127" y1="3.1115" x2="0.3937" y2="3.1369" layer="21"/>
+<rectangle x1="0.8509" y1="3.1115" x2="1.2065" y2="3.1369" layer="21"/>
+<rectangle x1="2.2479" y1="3.1115" x2="2.6797" y2="3.1369" layer="21"/>
+<rectangle x1="3.2893" y1="3.1115" x2="3.6957" y2="3.1369" layer="21"/>
+<rectangle x1="4.7117" y1="3.1115" x2="5.1435" y2="3.1369" layer="21"/>
+<rectangle x1="-5.5753" y1="3.1369" x2="-5.1943" y2="3.1623" layer="21"/>
+<rectangle x1="-2.2987" y1="3.1369" x2="-1.8923" y2="3.1623" layer="21"/>
+<rectangle x1="-1.4351" y1="3.1369" x2="-1.0287" y2="3.1623" layer="21"/>
+<rectangle x1="0.0127" y1="3.1369" x2="0.4191" y2="3.1623" layer="21"/>
+<rectangle x1="0.8509" y1="3.1369" x2="1.2065" y2="3.1623" layer="21"/>
+<rectangle x1="2.2733" y1="3.1369" x2="2.6797" y2="3.1623" layer="21"/>
+<rectangle x1="3.2893" y1="3.1369" x2="3.6957" y2="3.1623" layer="21"/>
+<rectangle x1="4.7117" y1="3.1369" x2="5.1435" y2="3.1623" layer="21"/>
+<rectangle x1="-5.5753" y1="3.1623" x2="-5.2197" y2="3.1877" layer="21"/>
+<rectangle x1="-2.2987" y1="3.1623" x2="-1.8669" y2="3.1877" layer="21"/>
+<rectangle x1="-1.4351" y1="3.1623" x2="-1.0287" y2="3.1877" layer="21"/>
+<rectangle x1="0.0381" y1="3.1623" x2="0.4191" y2="3.1877" layer="21"/>
+<rectangle x1="0.8509" y1="3.1623" x2="1.2065" y2="3.1877" layer="21"/>
+<rectangle x1="2.2733" y1="3.1623" x2="2.7051" y2="3.1877" layer="21"/>
+<rectangle x1="3.2893" y1="3.1623" x2="3.6957" y2="3.1877" layer="21"/>
+<rectangle x1="4.7117" y1="3.1623" x2="5.1435" y2="3.1877" layer="21"/>
+<rectangle x1="-5.5753" y1="3.1877" x2="-5.2197" y2="3.2131" layer="21"/>
+<rectangle x1="-2.2987" y1="3.1877" x2="-1.8669" y2="3.2131" layer="21"/>
+<rectangle x1="-1.4351" y1="3.1877" x2="-1.0287" y2="3.2131" layer="21"/>
+<rectangle x1="0.0381" y1="3.1877" x2="0.4191" y2="3.2131" layer="21"/>
+<rectangle x1="0.8509" y1="3.1877" x2="1.2065" y2="3.2131" layer="21"/>
+<rectangle x1="2.2733" y1="3.1877" x2="2.7051" y2="3.2131" layer="21"/>
+<rectangle x1="3.2893" y1="3.1877" x2="3.6957" y2="3.2131" layer="21"/>
+<rectangle x1="4.7117" y1="3.1877" x2="5.1435" y2="3.2131" layer="21"/>
+<rectangle x1="-5.6007" y1="3.2131" x2="-5.2197" y2="3.2385" layer="21"/>
+<rectangle x1="-2.2733" y1="3.2131" x2="-1.8669" y2="3.2385" layer="21"/>
+<rectangle x1="-1.4351" y1="3.2131" x2="-1.0287" y2="3.2385" layer="21"/>
+<rectangle x1="0.0381" y1="3.2131" x2="0.4191" y2="3.2385" layer="21"/>
+<rectangle x1="0.8509" y1="3.2131" x2="1.2065" y2="3.2385" layer="21"/>
+<rectangle x1="2.2733" y1="3.2131" x2="2.7051" y2="3.2385" layer="21"/>
+<rectangle x1="3.2893" y1="3.2131" x2="3.6957" y2="3.2385" layer="21"/>
+<rectangle x1="4.7117" y1="3.2131" x2="5.1435" y2="3.2385" layer="21"/>
+<rectangle x1="-5.6007" y1="3.2385" x2="-5.2197" y2="3.2639" layer="21"/>
+<rectangle x1="-2.2733" y1="3.2385" x2="-1.8669" y2="3.2639" layer="21"/>
+<rectangle x1="-1.4351" y1="3.2385" x2="-1.0287" y2="3.2639" layer="21"/>
+<rectangle x1="0.0381" y1="3.2385" x2="0.4445" y2="3.2639" layer="21"/>
+<rectangle x1="0.8509" y1="3.2385" x2="1.2065" y2="3.2639" layer="21"/>
+<rectangle x1="2.2987" y1="3.2385" x2="2.7051" y2="3.2639" layer="21"/>
+<rectangle x1="3.2893" y1="3.2385" x2="3.6957" y2="3.2639" layer="21"/>
+<rectangle x1="4.7117" y1="3.2385" x2="5.1435" y2="3.2639" layer="21"/>
+<rectangle x1="-5.6007" y1="3.2639" x2="-5.2451" y2="3.2893" layer="21"/>
+<rectangle x1="-2.2733" y1="3.2639" x2="-1.8669" y2="3.2893" layer="21"/>
+<rectangle x1="-1.4351" y1="3.2639" x2="-1.0287" y2="3.2893" layer="21"/>
+<rectangle x1="0.0635" y1="3.2639" x2="0.4445" y2="3.2893" layer="21"/>
+<rectangle x1="0.8509" y1="3.2639" x2="1.2065" y2="3.2893" layer="21"/>
+<rectangle x1="2.2987" y1="3.2639" x2="2.7305" y2="3.2893" layer="21"/>
+<rectangle x1="3.2893" y1="3.2639" x2="3.6957" y2="3.2893" layer="21"/>
+<rectangle x1="4.7117" y1="3.2639" x2="5.1435" y2="3.2893" layer="21"/>
+<rectangle x1="-5.6007" y1="3.2893" x2="-5.2451" y2="3.3147" layer="21"/>
+<rectangle x1="-2.2733" y1="3.2893" x2="-1.8415" y2="3.3147" layer="21"/>
+<rectangle x1="-1.4351" y1="3.2893" x2="-1.0287" y2="3.3147" layer="21"/>
+<rectangle x1="0.0635" y1="3.2893" x2="0.4445" y2="3.3147" layer="21"/>
+<rectangle x1="0.8509" y1="3.2893" x2="1.2065" y2="3.3147" layer="21"/>
+<rectangle x1="2.2987" y1="3.2893" x2="2.7305" y2="3.3147" layer="21"/>
+<rectangle x1="3.2893" y1="3.2893" x2="3.6957" y2="3.3147" layer="21"/>
+<rectangle x1="4.7117" y1="3.2893" x2="5.1435" y2="3.3147" layer="21"/>
+<rectangle x1="-5.6007" y1="3.3147" x2="-5.2451" y2="3.3401" layer="21"/>
+<rectangle x1="-2.2479" y1="3.3147" x2="-1.8415" y2="3.3401" layer="21"/>
+<rectangle x1="-1.4351" y1="3.3147" x2="-1.0287" y2="3.3401" layer="21"/>
+<rectangle x1="0.0635" y1="3.3147" x2="0.4445" y2="3.3401" layer="21"/>
+<rectangle x1="0.8509" y1="3.3147" x2="1.2065" y2="3.3401" layer="21"/>
+<rectangle x1="2.2987" y1="3.3147" x2="2.7305" y2="3.3401" layer="21"/>
+<rectangle x1="3.2893" y1="3.3147" x2="3.6957" y2="3.3401" layer="21"/>
+<rectangle x1="4.7117" y1="3.3147" x2="5.1435" y2="3.3401" layer="21"/>
+<rectangle x1="-5.6261" y1="3.3401" x2="-5.2451" y2="3.3655" layer="21"/>
+<rectangle x1="-2.2479" y1="3.3401" x2="-1.8415" y2="3.3655" layer="21"/>
+<rectangle x1="-1.4351" y1="3.3401" x2="-1.0287" y2="3.3655" layer="21"/>
+<rectangle x1="0.0635" y1="3.3401" x2="0.4445" y2="3.3655" layer="21"/>
+<rectangle x1="0.8509" y1="3.3401" x2="1.2065" y2="3.3655" layer="21"/>
+<rectangle x1="2.2987" y1="3.3401" x2="2.7305" y2="3.3655" layer="21"/>
+<rectangle x1="3.2893" y1="3.3401" x2="3.6957" y2="3.3655" layer="21"/>
+<rectangle x1="4.7117" y1="3.3401" x2="5.1435" y2="3.3655" layer="21"/>
+<rectangle x1="-5.6261" y1="3.3655" x2="-5.2705" y2="3.3909" layer="21"/>
+<rectangle x1="-2.2479" y1="3.3655" x2="-1.8415" y2="3.3909" layer="21"/>
+<rectangle x1="-1.4351" y1="3.3655" x2="-1.0287" y2="3.3909" layer="21"/>
+<rectangle x1="0.0635" y1="3.3655" x2="0.4445" y2="3.3909" layer="21"/>
+<rectangle x1="0.8509" y1="3.3655" x2="1.2065" y2="3.3909" layer="21"/>
+<rectangle x1="2.3241" y1="3.3655" x2="2.7305" y2="3.3909" layer="21"/>
+<rectangle x1="3.2893" y1="3.3655" x2="3.6957" y2="3.3909" layer="21"/>
+<rectangle x1="4.7117" y1="3.3655" x2="5.1435" y2="3.3909" layer="21"/>
+<rectangle x1="-5.6261" y1="3.3909" x2="-5.2705" y2="3.4163" layer="21"/>
+<rectangle x1="-2.2479" y1="3.3909" x2="-1.8415" y2="3.4163" layer="21"/>
+<rectangle x1="-1.4351" y1="3.3909" x2="-1.0287" y2="3.4163" layer="21"/>
+<rectangle x1="0.0635" y1="3.3909" x2="0.4699" y2="3.4163" layer="21"/>
+<rectangle x1="0.8509" y1="3.3909" x2="1.2065" y2="3.4163" layer="21"/>
+<rectangle x1="2.3241" y1="3.3909" x2="2.7305" y2="3.4163" layer="21"/>
+<rectangle x1="3.2893" y1="3.3909" x2="3.6957" y2="3.4163" layer="21"/>
+<rectangle x1="4.7117" y1="3.3909" x2="5.1435" y2="3.4163" layer="21"/>
+<rectangle x1="-5.6261" y1="3.4163" x2="-5.2705" y2="3.4417" layer="21"/>
+<rectangle x1="-2.2479" y1="3.4163" x2="-1.8415" y2="3.4417" layer="21"/>
+<rectangle x1="-1.4351" y1="3.4163" x2="-1.0287" y2="3.4417" layer="21"/>
+<rectangle x1="0.0635" y1="3.4163" x2="0.4699" y2="3.4417" layer="21"/>
+<rectangle x1="0.8509" y1="3.4163" x2="1.2065" y2="3.4417" layer="21"/>
+<rectangle x1="2.3241" y1="3.4163" x2="2.7559" y2="3.4417" layer="21"/>
+<rectangle x1="3.2893" y1="3.4163" x2="3.6957" y2="3.4417" layer="21"/>
+<rectangle x1="4.7117" y1="3.4163" x2="5.1435" y2="3.4417" layer="21"/>
+<rectangle x1="-5.6261" y1="3.4417" x2="-5.2705" y2="3.4671" layer="21"/>
+<rectangle x1="-2.2479" y1="3.4417" x2="-1.8415" y2="3.4671" layer="21"/>
+<rectangle x1="-1.4351" y1="3.4417" x2="-1.0287" y2="3.4671" layer="21"/>
+<rectangle x1="0.0889" y1="3.4417" x2="0.4699" y2="3.4671" layer="21"/>
+<rectangle x1="0.8509" y1="3.4417" x2="1.2065" y2="3.4671" layer="21"/>
+<rectangle x1="2.3241" y1="3.4417" x2="2.7559" y2="3.4671" layer="21"/>
+<rectangle x1="3.2893" y1="3.4417" x2="3.6957" y2="3.4671" layer="21"/>
+<rectangle x1="4.7117" y1="3.4417" x2="5.1435" y2="3.4671" layer="21"/>
+<rectangle x1="-5.6261" y1="3.4671" x2="-5.2705" y2="3.4925" layer="21"/>
+<rectangle x1="-2.2479" y1="3.4671" x2="-1.8161" y2="3.4925" layer="21"/>
+<rectangle x1="-1.4351" y1="3.4671" x2="-1.0287" y2="3.4925" layer="21"/>
+<rectangle x1="0.0889" y1="3.4671" x2="0.4699" y2="3.4925" layer="21"/>
+<rectangle x1="0.8509" y1="3.4671" x2="1.2065" y2="3.4925" layer="21"/>
+<rectangle x1="2.3241" y1="3.4671" x2="2.7559" y2="3.4925" layer="21"/>
+<rectangle x1="3.2893" y1="3.4671" x2="3.6957" y2="3.4925" layer="21"/>
+<rectangle x1="4.7117" y1="3.4671" x2="5.1435" y2="3.4925" layer="21"/>
+<rectangle x1="-5.6261" y1="3.4925" x2="-5.2705" y2="3.5179" layer="21"/>
+<rectangle x1="-2.2225" y1="3.4925" x2="-1.8161" y2="3.5179" layer="21"/>
+<rectangle x1="-1.4351" y1="3.4925" x2="-1.0287" y2="3.5179" layer="21"/>
+<rectangle x1="0.0889" y1="3.4925" x2="0.4699" y2="3.5179" layer="21"/>
+<rectangle x1="0.8509" y1="3.4925" x2="1.2065" y2="3.5179" layer="21"/>
+<rectangle x1="2.3241" y1="3.4925" x2="2.7559" y2="3.5179" layer="21"/>
+<rectangle x1="3.2893" y1="3.4925" x2="3.6957" y2="3.5179" layer="21"/>
+<rectangle x1="4.7117" y1="3.4925" x2="5.1435" y2="3.5179" layer="21"/>
+<rectangle x1="-5.6261" y1="3.5179" x2="-5.2705" y2="3.5433" layer="21"/>
+<rectangle x1="-2.2225" y1="3.5179" x2="-1.8161" y2="3.5433" layer="21"/>
+<rectangle x1="-1.4351" y1="3.5179" x2="-1.0287" y2="3.5433" layer="21"/>
+<rectangle x1="0.0889" y1="3.5179" x2="0.4699" y2="3.5433" layer="21"/>
+<rectangle x1="0.8509" y1="3.5179" x2="1.2065" y2="3.5433" layer="21"/>
+<rectangle x1="2.3241" y1="3.5179" x2="2.7559" y2="3.5433" layer="21"/>
+<rectangle x1="3.2893" y1="3.5179" x2="3.6957" y2="3.5433" layer="21"/>
+<rectangle x1="4.7117" y1="3.5179" x2="5.1435" y2="3.5433" layer="21"/>
+<rectangle x1="-5.6261" y1="3.5433" x2="-5.2705" y2="3.5687" layer="21"/>
+<rectangle x1="-2.2225" y1="3.5433" x2="-1.8161" y2="3.5687" layer="21"/>
+<rectangle x1="-1.4351" y1="3.5433" x2="-1.0287" y2="3.5687" layer="21"/>
+<rectangle x1="0.0889" y1="3.5433" x2="0.4699" y2="3.5687" layer="21"/>
+<rectangle x1="0.8509" y1="3.5433" x2="1.2065" y2="3.5687" layer="21"/>
+<rectangle x1="2.3241" y1="3.5433" x2="2.7559" y2="3.5687" layer="21"/>
+<rectangle x1="3.2893" y1="3.5433" x2="3.6957" y2="3.5687" layer="21"/>
+<rectangle x1="4.7117" y1="3.5433" x2="5.1435" y2="3.5687" layer="21"/>
+<rectangle x1="-5.6261" y1="3.5687" x2="-5.2705" y2="3.5941" layer="21"/>
+<rectangle x1="-2.2225" y1="3.5687" x2="-1.8161" y2="3.5941" layer="21"/>
+<rectangle x1="-1.4351" y1="3.5687" x2="-1.0287" y2="3.5941" layer="21"/>
+<rectangle x1="0.0889" y1="3.5687" x2="0.4699" y2="3.5941" layer="21"/>
+<rectangle x1="0.8509" y1="3.5687" x2="1.2065" y2="3.5941" layer="21"/>
+<rectangle x1="2.3241" y1="3.5687" x2="2.7559" y2="3.5941" layer="21"/>
+<rectangle x1="3.2893" y1="3.5687" x2="3.6957" y2="3.5941" layer="21"/>
+<rectangle x1="4.7117" y1="3.5687" x2="5.1435" y2="3.5941" layer="21"/>
+<rectangle x1="-5.6261" y1="3.5941" x2="-5.2705" y2="3.6195" layer="21"/>
+<rectangle x1="-2.2225" y1="3.5941" x2="-1.8161" y2="3.6195" layer="21"/>
+<rectangle x1="-1.4351" y1="3.5941" x2="-1.0287" y2="3.6195" layer="21"/>
+<rectangle x1="0.0889" y1="3.5941" x2="0.4699" y2="3.6195" layer="21"/>
+<rectangle x1="0.8509" y1="3.5941" x2="1.2065" y2="3.6195" layer="21"/>
+<rectangle x1="2.3241" y1="3.5941" x2="2.7559" y2="3.6195" layer="21"/>
+<rectangle x1="3.2893" y1="3.5941" x2="3.6957" y2="3.6195" layer="21"/>
+<rectangle x1="4.7117" y1="3.5941" x2="5.1435" y2="3.6195" layer="21"/>
+<rectangle x1="-5.6261" y1="3.6195" x2="-5.2705" y2="3.6449" layer="21"/>
+<rectangle x1="-2.2225" y1="3.6195" x2="-1.8161" y2="3.6449" layer="21"/>
+<rectangle x1="-1.4351" y1="3.6195" x2="-1.0287" y2="3.6449" layer="21"/>
+<rectangle x1="0.0889" y1="3.6195" x2="0.4699" y2="3.6449" layer="21"/>
+<rectangle x1="0.8509" y1="3.6195" x2="1.2065" y2="3.6449" layer="21"/>
+<rectangle x1="2.3241" y1="3.6195" x2="2.7559" y2="3.6449" layer="21"/>
+<rectangle x1="3.2893" y1="3.6195" x2="3.6957" y2="3.6449" layer="21"/>
+<rectangle x1="4.7117" y1="3.6195" x2="5.1435" y2="3.6449" layer="21"/>
+<rectangle x1="-5.6261" y1="3.6449" x2="-5.2705" y2="3.6703" layer="21"/>
+<rectangle x1="-2.2225" y1="3.6449" x2="-1.8161" y2="3.6703" layer="21"/>
+<rectangle x1="-1.4351" y1="3.6449" x2="-1.0287" y2="3.6703" layer="21"/>
+<rectangle x1="0.0889" y1="3.6449" x2="0.4699" y2="3.6703" layer="21"/>
+<rectangle x1="0.8509" y1="3.6449" x2="1.2065" y2="3.6703" layer="21"/>
+<rectangle x1="2.3241" y1="3.6449" x2="2.7559" y2="3.6703" layer="21"/>
+<rectangle x1="3.2893" y1="3.6449" x2="3.6957" y2="3.6703" layer="21"/>
+<rectangle x1="4.7117" y1="3.6449" x2="5.1435" y2="3.6703" layer="21"/>
+<rectangle x1="-5.6261" y1="3.6703" x2="-5.2705" y2="3.6957" layer="21"/>
+<rectangle x1="-2.2225" y1="3.6703" x2="-1.8161" y2="3.6957" layer="21"/>
+<rectangle x1="-1.4351" y1="3.6703" x2="-1.0287" y2="3.6957" layer="21"/>
+<rectangle x1="0.0889" y1="3.6703" x2="0.4699" y2="3.6957" layer="21"/>
+<rectangle x1="0.8509" y1="3.6703" x2="1.2065" y2="3.6957" layer="21"/>
+<rectangle x1="2.3241" y1="3.6703" x2="2.7559" y2="3.6957" layer="21"/>
+<rectangle x1="3.2893" y1="3.6703" x2="3.6957" y2="3.6957" layer="21"/>
+<rectangle x1="4.7117" y1="3.6703" x2="5.1435" y2="3.6957" layer="21"/>
+<rectangle x1="-5.6261" y1="3.6957" x2="-5.2705" y2="3.7211" layer="21"/>
+<rectangle x1="-2.2225" y1="3.6957" x2="-1.8161" y2="3.7211" layer="21"/>
+<rectangle x1="-1.4351" y1="3.6957" x2="-1.0287" y2="3.7211" layer="21"/>
+<rectangle x1="0.0889" y1="3.6957" x2="0.4699" y2="3.7211" layer="21"/>
+<rectangle x1="0.8509" y1="3.6957" x2="1.2065" y2="3.7211" layer="21"/>
+<rectangle x1="2.3241" y1="3.6957" x2="2.7559" y2="3.7211" layer="21"/>
+<rectangle x1="3.2893" y1="3.6957" x2="3.6957" y2="3.7211" layer="21"/>
+<rectangle x1="4.7117" y1="3.6957" x2="5.1435" y2="3.7211" layer="21"/>
+<rectangle x1="-5.6261" y1="3.7211" x2="-5.2705" y2="3.7465" layer="21"/>
+<rectangle x1="-2.2225" y1="3.7211" x2="-1.8161" y2="3.7465" layer="21"/>
+<rectangle x1="-1.4351" y1="3.7211" x2="-1.0287" y2="3.7465" layer="21"/>
+<rectangle x1="0.0889" y1="3.7211" x2="0.4699" y2="3.7465" layer="21"/>
+<rectangle x1="0.8509" y1="3.7211" x2="1.2065" y2="3.7465" layer="21"/>
+<rectangle x1="2.3241" y1="3.7211" x2="2.7559" y2="3.7465" layer="21"/>
+<rectangle x1="3.2893" y1="3.7211" x2="3.6957" y2="3.7465" layer="21"/>
+<rectangle x1="4.7117" y1="3.7211" x2="5.1435" y2="3.7465" layer="21"/>
+<rectangle x1="-5.6261" y1="3.7465" x2="-5.2705" y2="3.7719" layer="21"/>
+<rectangle x1="-2.2225" y1="3.7465" x2="-1.8161" y2="3.7719" layer="21"/>
+<rectangle x1="-1.4351" y1="3.7465" x2="-1.0287" y2="3.7719" layer="21"/>
+<rectangle x1="0.0889" y1="3.7465" x2="0.4699" y2="3.7719" layer="21"/>
+<rectangle x1="0.8509" y1="3.7465" x2="1.2065" y2="3.7719" layer="21"/>
+<rectangle x1="2.3241" y1="3.7465" x2="2.7559" y2="3.7719" layer="21"/>
+<rectangle x1="3.2893" y1="3.7465" x2="3.6957" y2="3.7719" layer="21"/>
+<rectangle x1="4.7117" y1="3.7465" x2="5.1435" y2="3.7719" layer="21"/>
+<rectangle x1="-5.6261" y1="3.7719" x2="-5.2705" y2="3.7973" layer="21"/>
+<rectangle x1="-2.2225" y1="3.7719" x2="-1.8161" y2="3.7973" layer="21"/>
+<rectangle x1="-1.4351" y1="3.7719" x2="-1.0287" y2="3.7973" layer="21"/>
+<rectangle x1="0.0889" y1="3.7719" x2="0.4699" y2="3.7973" layer="21"/>
+<rectangle x1="0.8509" y1="3.7719" x2="1.2065" y2="3.7973" layer="21"/>
+<rectangle x1="2.3241" y1="3.7719" x2="2.7559" y2="3.7973" layer="21"/>
+<rectangle x1="3.2893" y1="3.7719" x2="3.6957" y2="3.7973" layer="21"/>
+<rectangle x1="4.7117" y1="3.7719" x2="5.1435" y2="3.7973" layer="21"/>
+<rectangle x1="-5.6261" y1="3.7973" x2="-5.2705" y2="3.8227" layer="21"/>
+<rectangle x1="-2.2225" y1="3.7973" x2="-1.8161" y2="3.8227" layer="21"/>
+<rectangle x1="-1.4351" y1="3.7973" x2="-1.0287" y2="3.8227" layer="21"/>
+<rectangle x1="0.0635" y1="3.7973" x2="0.4699" y2="3.8227" layer="21"/>
+<rectangle x1="0.8509" y1="3.7973" x2="1.2065" y2="3.8227" layer="21"/>
+<rectangle x1="2.3241" y1="3.7973" x2="2.7559" y2="3.8227" layer="21"/>
+<rectangle x1="3.2893" y1="3.7973" x2="3.6957" y2="3.8227" layer="21"/>
+<rectangle x1="4.7117" y1="3.7973" x2="5.1435" y2="3.8227" layer="21"/>
+<rectangle x1="-5.6261" y1="3.8227" x2="-5.2705" y2="3.8481" layer="21"/>
+<rectangle x1="-2.2479" y1="3.8227" x2="-1.8415" y2="3.8481" layer="21"/>
+<rectangle x1="-1.4351" y1="3.8227" x2="-1.0287" y2="3.8481" layer="21"/>
+<rectangle x1="0.0635" y1="3.8227" x2="0.4699" y2="3.8481" layer="21"/>
+<rectangle x1="0.8509" y1="3.8227" x2="1.2065" y2="3.8481" layer="21"/>
+<rectangle x1="2.3241" y1="3.8227" x2="2.7559" y2="3.8481" layer="21"/>
+<rectangle x1="3.2893" y1="3.8227" x2="3.6957" y2="3.8481" layer="21"/>
+<rectangle x1="4.7117" y1="3.8227" x2="5.1435" y2="3.8481" layer="21"/>
+<rectangle x1="-5.6261" y1="3.8481" x2="-5.2451" y2="3.8735" layer="21"/>
+<rectangle x1="-2.2479" y1="3.8481" x2="-1.8415" y2="3.8735" layer="21"/>
+<rectangle x1="-1.4351" y1="3.8481" x2="-1.0287" y2="3.8735" layer="21"/>
+<rectangle x1="0.0635" y1="3.8481" x2="0.4699" y2="3.8735" layer="21"/>
+<rectangle x1="0.8509" y1="3.8481" x2="1.2065" y2="3.8735" layer="21"/>
+<rectangle x1="2.3241" y1="3.8481" x2="2.7559" y2="3.8735" layer="21"/>
+<rectangle x1="3.2893" y1="3.8481" x2="3.6957" y2="3.8735" layer="21"/>
+<rectangle x1="4.7117" y1="3.8481" x2="5.1435" y2="3.8735" layer="21"/>
+<rectangle x1="-5.6007" y1="3.8735" x2="-5.2451" y2="3.8989" layer="21"/>
+<rectangle x1="-2.2479" y1="3.8735" x2="-1.8415" y2="3.8989" layer="21"/>
+<rectangle x1="-1.4351" y1="3.8735" x2="-1.0287" y2="3.8989" layer="21"/>
+<rectangle x1="0.0635" y1="3.8735" x2="0.4699" y2="3.8989" layer="21"/>
+<rectangle x1="0.8509" y1="3.8735" x2="1.2065" y2="3.8989" layer="21"/>
+<rectangle x1="2.3241" y1="3.8735" x2="2.7305" y2="3.8989" layer="21"/>
+<rectangle x1="3.2893" y1="3.8735" x2="3.6957" y2="3.8989" layer="21"/>
+<rectangle x1="4.7117" y1="3.8735" x2="5.1435" y2="3.8989" layer="21"/>
+<rectangle x1="-5.6007" y1="3.8989" x2="-5.2451" y2="3.9243" layer="21"/>
+<rectangle x1="-2.2479" y1="3.8989" x2="-1.8415" y2="3.9243" layer="21"/>
+<rectangle x1="-1.4351" y1="3.8989" x2="-1.0287" y2="3.9243" layer="21"/>
+<rectangle x1="0.0635" y1="3.8989" x2="0.4445" y2="3.9243" layer="21"/>
+<rectangle x1="0.8509" y1="3.8989" x2="1.2065" y2="3.9243" layer="21"/>
+<rectangle x1="2.2987" y1="3.8989" x2="2.7305" y2="3.9243" layer="21"/>
+<rectangle x1="3.2893" y1="3.8989" x2="3.6957" y2="3.9243" layer="21"/>
+<rectangle x1="4.7117" y1="3.8989" x2="5.1435" y2="3.9243" layer="21"/>
+<rectangle x1="-5.6007" y1="3.9243" x2="-5.2451" y2="3.9497" layer="21"/>
+<rectangle x1="-2.2479" y1="3.9243" x2="-1.8415" y2="3.9497" layer="21"/>
+<rectangle x1="-1.4351" y1="3.9243" x2="-1.0287" y2="3.9497" layer="21"/>
+<rectangle x1="0.0635" y1="3.9243" x2="0.4445" y2="3.9497" layer="21"/>
+<rectangle x1="0.8509" y1="3.9243" x2="1.2065" y2="3.9497" layer="21"/>
+<rectangle x1="2.2987" y1="3.9243" x2="2.7305" y2="3.9497" layer="21"/>
+<rectangle x1="3.2893" y1="3.9243" x2="3.6957" y2="3.9497" layer="21"/>
+<rectangle x1="4.7117" y1="3.9243" x2="5.1435" y2="3.9497" layer="21"/>
+<rectangle x1="-5.6007" y1="3.9497" x2="-5.2451" y2="3.9751" layer="21"/>
+<rectangle x1="-2.2479" y1="3.9497" x2="-1.8415" y2="3.9751" layer="21"/>
+<rectangle x1="-1.4351" y1="3.9497" x2="-1.0287" y2="3.9751" layer="21"/>
+<rectangle x1="0.0635" y1="3.9497" x2="0.4445" y2="3.9751" layer="21"/>
+<rectangle x1="0.8509" y1="3.9497" x2="1.2065" y2="3.9751" layer="21"/>
+<rectangle x1="2.2987" y1="3.9497" x2="2.7305" y2="3.9751" layer="21"/>
+<rectangle x1="3.2893" y1="3.9497" x2="3.6957" y2="3.9751" layer="21"/>
+<rectangle x1="4.7117" y1="3.9497" x2="5.1435" y2="3.9751" layer="21"/>
+<rectangle x1="-5.6007" y1="3.9751" x2="-5.2197" y2="4.0005" layer="21"/>
+<rectangle x1="-2.2733" y1="3.9751" x2="-1.8415" y2="4.0005" layer="21"/>
+<rectangle x1="-1.4351" y1="3.9751" x2="-1.0287" y2="4.0005" layer="21"/>
+<rectangle x1="0.0381" y1="3.9751" x2="0.4445" y2="4.0005" layer="21"/>
+<rectangle x1="0.8509" y1="3.9751" x2="1.2065" y2="4.0005" layer="21"/>
+<rectangle x1="2.2987" y1="3.9751" x2="2.7305" y2="4.0005" layer="21"/>
+<rectangle x1="3.2893" y1="3.9751" x2="3.6957" y2="4.0005" layer="21"/>
+<rectangle x1="4.7117" y1="3.9751" x2="5.1435" y2="4.0005" layer="21"/>
+<rectangle x1="-5.5753" y1="4.0005" x2="-5.2197" y2="4.0259" layer="21"/>
+<rectangle x1="-2.2733" y1="4.0005" x2="-1.8669" y2="4.0259" layer="21"/>
+<rectangle x1="-1.4351" y1="4.0005" x2="-1.0287" y2="4.0259" layer="21"/>
+<rectangle x1="0.0381" y1="4.0005" x2="0.4445" y2="4.0259" layer="21"/>
+<rectangle x1="0.8509" y1="4.0005" x2="1.2065" y2="4.0259" layer="21"/>
+<rectangle x1="2.2987" y1="4.0005" x2="2.7305" y2="4.0259" layer="21"/>
+<rectangle x1="3.2893" y1="4.0005" x2="3.6957" y2="4.0259" layer="21"/>
+<rectangle x1="4.7117" y1="4.0005" x2="5.1435" y2="4.0259" layer="21"/>
+<rectangle x1="-5.5753" y1="4.0259" x2="-5.2197" y2="4.0513" layer="21"/>
+<rectangle x1="-2.2733" y1="4.0259" x2="-1.8669" y2="4.0513" layer="21"/>
+<rectangle x1="-1.4351" y1="4.0259" x2="-1.0287" y2="4.0513" layer="21"/>
+<rectangle x1="0.0381" y1="4.0259" x2="0.4445" y2="4.0513" layer="21"/>
+<rectangle x1="0.8509" y1="4.0259" x2="1.2065" y2="4.0513" layer="21"/>
+<rectangle x1="2.2733" y1="4.0259" x2="2.7051" y2="4.0513" layer="21"/>
+<rectangle x1="3.2893" y1="4.0259" x2="3.6957" y2="4.0513" layer="21"/>
+<rectangle x1="4.7117" y1="4.0259" x2="5.1435" y2="4.0513" layer="21"/>
+<rectangle x1="-5.5753" y1="4.0513" x2="-5.2197" y2="4.0767" layer="21"/>
+<rectangle x1="-2.2733" y1="4.0513" x2="-1.8669" y2="4.0767" layer="21"/>
+<rectangle x1="-1.4351" y1="4.0513" x2="-1.0287" y2="4.0767" layer="21"/>
+<rectangle x1="0.0381" y1="4.0513" x2="0.4191" y2="4.0767" layer="21"/>
+<rectangle x1="0.8509" y1="4.0513" x2="1.2065" y2="4.0767" layer="21"/>
+<rectangle x1="2.2733" y1="4.0513" x2="2.7051" y2="4.0767" layer="21"/>
+<rectangle x1="3.2893" y1="4.0513" x2="3.6957" y2="4.0767" layer="21"/>
+<rectangle x1="4.7117" y1="4.0513" x2="5.1435" y2="4.0767" layer="21"/>
+<rectangle x1="-5.5753" y1="4.0767" x2="-5.1943" y2="4.1021" layer="21"/>
+<rectangle x1="-2.2987" y1="4.0767" x2="-1.8669" y2="4.1021" layer="21"/>
+<rectangle x1="-1.4351" y1="4.0767" x2="-1.0287" y2="4.1021" layer="21"/>
+<rectangle x1="0.0127" y1="4.0767" x2="0.4191" y2="4.1021" layer="21"/>
+<rectangle x1="0.8509" y1="4.0767" x2="1.2065" y2="4.1021" layer="21"/>
+<rectangle x1="2.2733" y1="4.0767" x2="2.7051" y2="4.1021" layer="21"/>
+<rectangle x1="3.2893" y1="4.0767" x2="3.6957" y2="4.1021" layer="21"/>
+<rectangle x1="4.7117" y1="4.0767" x2="5.1435" y2="4.1021" layer="21"/>
+<rectangle x1="-5.5753" y1="4.1021" x2="-5.1943" y2="4.1275" layer="21"/>
+<rectangle x1="-2.2987" y1="4.1021" x2="-1.8669" y2="4.1275" layer="21"/>
+<rectangle x1="-1.4351" y1="4.1021" x2="-1.0287" y2="4.1275" layer="21"/>
+<rectangle x1="0.0127" y1="4.1021" x2="0.4191" y2="4.1275" layer="21"/>
+<rectangle x1="0.8509" y1="4.1021" x2="1.2065" y2="4.1275" layer="21"/>
+<rectangle x1="2.2479" y1="4.1021" x2="2.7051" y2="4.1275" layer="21"/>
+<rectangle x1="3.2893" y1="4.1021" x2="3.6957" y2="4.1275" layer="21"/>
+<rectangle x1="4.7117" y1="4.1021" x2="5.1689" y2="4.1275" layer="21"/>
+<rectangle x1="-5.5499" y1="4.1275" x2="-5.1943" y2="4.1529" layer="21"/>
+<rectangle x1="-2.2987" y1="4.1275" x2="-1.8923" y2="4.1529" layer="21"/>
+<rectangle x1="-1.4351" y1="4.1275" x2="-1.0287" y2="4.1529" layer="21"/>
+<rectangle x1="0.0127" y1="4.1275" x2="0.4191" y2="4.1529" layer="21"/>
+<rectangle x1="0.8509" y1="4.1275" x2="1.2065" y2="4.1529" layer="21"/>
+<rectangle x1="2.2479" y1="4.1275" x2="2.6797" y2="4.1529" layer="21"/>
+<rectangle x1="3.2893" y1="4.1275" x2="3.6957" y2="4.1529" layer="21"/>
+<rectangle x1="4.7117" y1="4.1275" x2="5.1689" y2="4.1529" layer="21"/>
+<rectangle x1="-5.5499" y1="4.1529" x2="-5.1689" y2="4.1783" layer="21"/>
+<rectangle x1="-2.3241" y1="4.1529" x2="-1.8923" y2="4.1783" layer="21"/>
+<rectangle x1="-1.4351" y1="4.1529" x2="-1.0287" y2="4.1783" layer="21"/>
+<rectangle x1="-0.0127" y1="4.1529" x2="0.3937" y2="4.1783" layer="21"/>
+<rectangle x1="0.8509" y1="4.1529" x2="1.2065" y2="4.1783" layer="21"/>
+<rectangle x1="2.2479" y1="4.1529" x2="2.6797" y2="4.1783" layer="21"/>
+<rectangle x1="3.2893" y1="4.1529" x2="3.6957" y2="4.1783" layer="21"/>
+<rectangle x1="4.7117" y1="4.1529" x2="5.1689" y2="4.1783" layer="21"/>
+<rectangle x1="-5.5499" y1="4.1783" x2="-5.1689" y2="4.2037" layer="21"/>
+<rectangle x1="-2.3241" y1="4.1783" x2="-1.8923" y2="4.2037" layer="21"/>
+<rectangle x1="-1.4351" y1="4.1783" x2="-1.0287" y2="4.2037" layer="21"/>
+<rectangle x1="-0.0127" y1="4.1783" x2="0.3937" y2="4.2037" layer="21"/>
+<rectangle x1="0.8509" y1="4.1783" x2="1.2065" y2="4.2037" layer="21"/>
+<rectangle x1="2.2225" y1="4.1783" x2="2.6797" y2="4.2037" layer="21"/>
+<rectangle x1="3.2893" y1="4.1783" x2="3.6957" y2="4.2037" layer="21"/>
+<rectangle x1="4.7117" y1="4.1783" x2="5.1689" y2="4.2037" layer="21"/>
+<rectangle x1="-5.5245" y1="4.2037" x2="-5.1689" y2="4.2291" layer="21"/>
+<rectangle x1="-2.3241" y1="4.2037" x2="-1.9177" y2="4.2291" layer="21"/>
+<rectangle x1="-1.4351" y1="4.2037" x2="-1.0287" y2="4.2291" layer="21"/>
+<rectangle x1="-0.0381" y1="4.2037" x2="0.3937" y2="4.2291" layer="21"/>
+<rectangle x1="0.8509" y1="4.2037" x2="1.2065" y2="4.2291" layer="21"/>
+<rectangle x1="2.2225" y1="4.2037" x2="2.6797" y2="4.2291" layer="21"/>
+<rectangle x1="3.2893" y1="4.2037" x2="3.6957" y2="4.2291" layer="21"/>
+<rectangle x1="4.6863" y1="4.2037" x2="5.1689" y2="4.2291" layer="21"/>
+<rectangle x1="-5.5245" y1="4.2291" x2="-5.1435" y2="4.2545" layer="21"/>
+<rectangle x1="-2.3495" y1="4.2291" x2="-1.9177" y2="4.2545" layer="21"/>
+<rectangle x1="-1.4351" y1="4.2291" x2="-1.0287" y2="4.2545" layer="21"/>
+<rectangle x1="-0.0381" y1="4.2291" x2="0.3683" y2="4.2545" layer="21"/>
+<rectangle x1="0.8509" y1="4.2291" x2="1.2065" y2="4.2545" layer="21"/>
+<rectangle x1="2.2225" y1="4.2291" x2="2.6543" y2="4.2545" layer="21"/>
+<rectangle x1="3.2893" y1="4.2291" x2="3.6957" y2="4.2545" layer="21"/>
+<rectangle x1="4.6863" y1="4.2291" x2="5.1689" y2="4.2545" layer="21"/>
+<rectangle x1="-5.5245" y1="4.2545" x2="-5.1435" y2="4.2799" layer="21"/>
+<rectangle x1="-2.3495" y1="4.2545" x2="-1.9177" y2="4.2799" layer="21"/>
+<rectangle x1="-1.4351" y1="4.2545" x2="-1.0287" y2="4.2799" layer="21"/>
+<rectangle x1="-0.0381" y1="4.2545" x2="0.3683" y2="4.2799" layer="21"/>
+<rectangle x1="0.8509" y1="4.2545" x2="1.2065" y2="4.2799" layer="21"/>
+<rectangle x1="2.1971" y1="4.2545" x2="2.6543" y2="4.2799" layer="21"/>
+<rectangle x1="3.2893" y1="4.2545" x2="3.6703" y2="4.2799" layer="21"/>
+<rectangle x1="4.6863" y1="4.2545" x2="5.1943" y2="4.2799" layer="21"/>
+<rectangle x1="-5.4991" y1="4.2799" x2="-5.1181" y2="4.3053" layer="21"/>
+<rectangle x1="-2.3495" y1="4.2799" x2="-1.9431" y2="4.3053" layer="21"/>
+<rectangle x1="-1.4351" y1="4.2799" x2="-1.0287" y2="4.3053" layer="21"/>
+<rectangle x1="-0.0635" y1="4.2799" x2="0.3683" y2="4.3053" layer="21"/>
+<rectangle x1="0.8509" y1="4.2799" x2="1.2065" y2="4.3053" layer="21"/>
+<rectangle x1="2.1971" y1="4.2799" x2="2.6543" y2="4.3053" layer="21"/>
+<rectangle x1="3.2893" y1="4.2799" x2="3.6703" y2="4.3053" layer="21"/>
+<rectangle x1="4.6863" y1="4.2799" x2="5.1943" y2="4.3053" layer="21"/>
+<rectangle x1="-5.4991" y1="4.3053" x2="-5.1181" y2="4.3307" layer="21"/>
+<rectangle x1="-2.3749" y1="4.3053" x2="-1.9431" y2="4.3307" layer="21"/>
+<rectangle x1="-1.4351" y1="4.3053" x2="-1.0287" y2="4.3307" layer="21"/>
+<rectangle x1="-0.0635" y1="4.3053" x2="0.3429" y2="4.3307" layer="21"/>
+<rectangle x1="0.8509" y1="4.3053" x2="1.2065" y2="4.3307" layer="21"/>
+<rectangle x1="2.1717" y1="4.3053" x2="2.6289" y2="4.3307" layer="21"/>
+<rectangle x1="3.2893" y1="4.3053" x2="3.6703" y2="4.3307" layer="21"/>
+<rectangle x1="4.6863" y1="4.3053" x2="5.1943" y2="4.3307" layer="21"/>
+<rectangle x1="-5.4991" y1="4.3307" x2="-5.0927" y2="4.3561" layer="21"/>
+<rectangle x1="-2.4003" y1="4.3307" x2="-1.9431" y2="4.3561" layer="21"/>
+<rectangle x1="-1.4351" y1="4.3307" x2="-1.0287" y2="4.3561" layer="21"/>
+<rectangle x1="-0.0889" y1="4.3307" x2="0.3429" y2="4.3561" layer="21"/>
+<rectangle x1="0.8509" y1="4.3307" x2="1.2065" y2="4.3561" layer="21"/>
+<rectangle x1="2.1717" y1="4.3307" x2="2.6289" y2="4.3561" layer="21"/>
+<rectangle x1="3.2893" y1="4.3307" x2="3.6703" y2="4.3561" layer="21"/>
+<rectangle x1="4.6609" y1="4.3307" x2="5.1943" y2="4.3561" layer="21"/>
+<rectangle x1="-5.4737" y1="4.3561" x2="-5.0927" y2="4.3815" layer="21"/>
+<rectangle x1="-2.4003" y1="4.3561" x2="-1.9685" y2="4.3815" layer="21"/>
+<rectangle x1="-1.4351" y1="4.3561" x2="-1.0287" y2="4.3815" layer="21"/>
+<rectangle x1="-0.0889" y1="4.3561" x2="0.3429" y2="4.3815" layer="21"/>
+<rectangle x1="0.8509" y1="4.3561" x2="1.2065" y2="4.3815" layer="21"/>
+<rectangle x1="2.1463" y1="4.3561" x2="2.6035" y2="4.3815" layer="21"/>
+<rectangle x1="3.2893" y1="4.3561" x2="3.6703" y2="4.3815" layer="21"/>
+<rectangle x1="4.6609" y1="4.3561" x2="5.2197" y2="4.3815" layer="21"/>
+<rectangle x1="-5.4737" y1="4.3815" x2="-5.0673" y2="4.4069" layer="21"/>
+<rectangle x1="-2.4257" y1="4.3815" x2="-1.9685" y2="4.4069" layer="21"/>
+<rectangle x1="-1.4351" y1="4.3815" x2="-1.0287" y2="4.4069" layer="21"/>
+<rectangle x1="-0.1143" y1="4.3815" x2="0.3175" y2="4.4069" layer="21"/>
+<rectangle x1="0.8509" y1="4.3815" x2="1.2065" y2="4.4069" layer="21"/>
+<rectangle x1="2.1463" y1="4.3815" x2="2.6035" y2="4.4069" layer="21"/>
+<rectangle x1="3.2893" y1="4.3815" x2="3.6703" y2="4.4069" layer="21"/>
+<rectangle x1="4.6609" y1="4.3815" x2="5.2197" y2="4.4069" layer="21"/>
+<rectangle x1="-5.4483" y1="4.4069" x2="-5.0673" y2="4.4323" layer="21"/>
+<rectangle x1="-2.4257" y1="4.4069" x2="-1.9939" y2="4.4323" layer="21"/>
+<rectangle x1="-1.4351" y1="4.4069" x2="-1.0287" y2="4.4323" layer="21"/>
+<rectangle x1="-0.1397" y1="4.4069" x2="0.3175" y2="4.4323" layer="21"/>
+<rectangle x1="0.8509" y1="4.4069" x2="1.2065" y2="4.4323" layer="21"/>
+<rectangle x1="2.1209" y1="4.4069" x2="2.5781" y2="4.4323" layer="21"/>
+<rectangle x1="3.2893" y1="4.4069" x2="3.6703" y2="4.4323" layer="21"/>
+<rectangle x1="4.6355" y1="4.4069" x2="5.2197" y2="4.4323" layer="21"/>
+<rectangle x1="-5.4483" y1="4.4323" x2="-5.0419" y2="4.4577" layer="21"/>
+<rectangle x1="-2.4511" y1="4.4323" x2="-1.9939" y2="4.4577" layer="21"/>
+<rectangle x1="-1.4351" y1="4.4323" x2="-1.0287" y2="4.4577" layer="21"/>
+<rectangle x1="-0.1397" y1="4.4323" x2="0.2921" y2="4.4577" layer="21"/>
+<rectangle x1="0.8509" y1="4.4323" x2="1.2065" y2="4.4577" layer="21"/>
+<rectangle x1="2.0955" y1="4.4323" x2="2.5781" y2="4.4577" layer="21"/>
+<rectangle x1="3.2893" y1="4.4323" x2="3.6703" y2="4.4577" layer="21"/>
+<rectangle x1="4.6355" y1="4.4323" x2="5.2451" y2="4.4577" layer="21"/>
+<rectangle x1="-5.4229" y1="4.4577" x2="-5.0419" y2="4.4831" layer="21"/>
+<rectangle x1="-2.4511" y1="4.4577" x2="-2.0193" y2="4.4831" layer="21"/>
+<rectangle x1="-1.4351" y1="4.4577" x2="-1.0287" y2="4.4831" layer="21"/>
+<rectangle x1="-0.1651" y1="4.4577" x2="0.2921" y2="4.4831" layer="21"/>
+<rectangle x1="0.8509" y1="4.4577" x2="1.2065" y2="4.4831" layer="21"/>
+<rectangle x1="2.0955" y1="4.4577" x2="2.5781" y2="4.4831" layer="21"/>
+<rectangle x1="3.2893" y1="4.4577" x2="3.6703" y2="4.4831" layer="21"/>
+<rectangle x1="4.6355" y1="4.4577" x2="5.2451" y2="4.4831" layer="21"/>
+<rectangle x1="-5.4229" y1="4.4831" x2="-5.0165" y2="4.5085" layer="21"/>
+<rectangle x1="-2.4765" y1="4.4831" x2="-2.0193" y2="4.5085" layer="21"/>
+<rectangle x1="-1.4351" y1="4.4831" x2="-1.0287" y2="4.5085" layer="21"/>
+<rectangle x1="-0.1651" y1="4.4831" x2="0.2667" y2="4.5085" layer="21"/>
+<rectangle x1="0.8509" y1="4.4831" x2="1.2065" y2="4.5085" layer="21"/>
+<rectangle x1="2.0701" y1="4.4831" x2="2.5527" y2="4.5085" layer="21"/>
+<rectangle x1="3.2893" y1="4.4831" x2="3.6703" y2="4.5085" layer="21"/>
+<rectangle x1="4.6101" y1="4.4831" x2="5.2451" y2="4.5085" layer="21"/>
+<rectangle x1="-5.3975" y1="4.5085" x2="-4.9911" y2="4.5339" layer="21"/>
+<rectangle x1="-2.5019" y1="4.5085" x2="-2.0447" y2="4.5339" layer="21"/>
+<rectangle x1="-1.4351" y1="4.5085" x2="-1.0287" y2="4.5339" layer="21"/>
+<rectangle x1="-0.1905" y1="4.5085" x2="0.2667" y2="4.5339" layer="21"/>
+<rectangle x1="0.8509" y1="4.5085" x2="1.2065" y2="4.5339" layer="21"/>
+<rectangle x1="2.0701" y1="4.5085" x2="2.5527" y2="4.5339" layer="21"/>
+<rectangle x1="3.2893" y1="4.5085" x2="3.6703" y2="4.5339" layer="21"/>
+<rectangle x1="4.6101" y1="4.5085" x2="5.2705" y2="4.5339" layer="21"/>
+<rectangle x1="-5.3975" y1="4.5339" x2="-4.9657" y2="4.5593" layer="21"/>
+<rectangle x1="-2.5019" y1="4.5339" x2="-2.0447" y2="4.5593" layer="21"/>
+<rectangle x1="-1.4351" y1="4.5339" x2="-1.0287" y2="4.5593" layer="21"/>
+<rectangle x1="-0.2159" y1="4.5339" x2="0.2413" y2="4.5593" layer="21"/>
+<rectangle x1="0.8509" y1="4.5339" x2="1.2065" y2="4.5593" layer="21"/>
+<rectangle x1="2.0447" y1="4.5339" x2="2.5273" y2="4.5593" layer="21"/>
+<rectangle x1="3.2893" y1="4.5339" x2="3.6703" y2="4.5593" layer="21"/>
+<rectangle x1="4.6101" y1="4.5339" x2="5.2705" y2="4.5593" layer="21"/>
+<rectangle x1="-5.3721" y1="4.5593" x2="-4.9657" y2="4.5847" layer="21"/>
+<rectangle x1="-2.5273" y1="4.5593" x2="-2.0701" y2="4.5847" layer="21"/>
+<rectangle x1="-1.4351" y1="4.5593" x2="-1.0287" y2="4.5847" layer="21"/>
+<rectangle x1="-0.2413" y1="4.5593" x2="0.2413" y2="4.5847" layer="21"/>
+<rectangle x1="0.8509" y1="4.5593" x2="1.2065" y2="4.5847" layer="21"/>
+<rectangle x1="2.0193" y1="4.5593" x2="2.5273" y2="4.5847" layer="21"/>
+<rectangle x1="3.2893" y1="4.5593" x2="3.6703" y2="4.5847" layer="21"/>
+<rectangle x1="4.5847" y1="4.5593" x2="5.2959" y2="4.5847" layer="21"/>
+<rectangle x1="-5.3721" y1="4.5847" x2="-4.9403" y2="4.6101" layer="21"/>
+<rectangle x1="-2.5527" y1="4.5847" x2="-2.0701" y2="4.6101" layer="21"/>
+<rectangle x1="-1.4351" y1="4.5847" x2="-1.0287" y2="4.6101" layer="21"/>
+<rectangle x1="-0.2667" y1="4.5847" x2="0.2159" y2="4.6101" layer="21"/>
+<rectangle x1="0.8509" y1="4.5847" x2="1.2065" y2="4.6101" layer="21"/>
+<rectangle x1="1.9939" y1="4.5847" x2="2.5019" y2="4.6101" layer="21"/>
+<rectangle x1="3.2893" y1="4.5847" x2="3.6703" y2="4.6101" layer="21"/>
+<rectangle x1="4.5847" y1="4.5847" x2="5.2959" y2="4.6101" layer="21"/>
+<rectangle x1="-5.3467" y1="4.6101" x2="-4.9149" y2="4.6355" layer="21"/>
+<rectangle x1="-2.5781" y1="4.6101" x2="-2.0955" y2="4.6355" layer="21"/>
+<rectangle x1="-1.4351" y1="4.6101" x2="-1.0287" y2="4.6355" layer="21"/>
+<rectangle x1="-0.2667" y1="4.6101" x2="0.2159" y2="4.6355" layer="21"/>
+<rectangle x1="0.8509" y1="4.6101" x2="1.2065" y2="4.6355" layer="21"/>
+<rectangle x1="1.9685" y1="4.6101" x2="2.4765" y2="4.6355" layer="21"/>
+<rectangle x1="3.2893" y1="4.6101" x2="3.6703" y2="4.6355" layer="21"/>
+<rectangle x1="4.5593" y1="4.6101" x2="5.2959" y2="4.6355" layer="21"/>
+<rectangle x1="-5.3467" y1="4.6355" x2="-4.8895" y2="4.6609" layer="21"/>
+<rectangle x1="-2.5781" y1="4.6355" x2="-2.0955" y2="4.6609" layer="21"/>
+<rectangle x1="-1.4351" y1="4.6355" x2="-1.0287" y2="4.6609" layer="21"/>
+<rectangle x1="-0.2921" y1="4.6355" x2="0.1905" y2="4.6609" layer="21"/>
+<rectangle x1="0.8509" y1="4.6355" x2="1.2065" y2="4.6609" layer="21"/>
+<rectangle x1="1.9431" y1="4.6355" x2="2.4765" y2="4.6609" layer="21"/>
+<rectangle x1="3.2893" y1="4.6355" x2="3.6703" y2="4.6609" layer="21"/>
+<rectangle x1="4.5593" y1="4.6355" x2="5.3213" y2="4.6609" layer="21"/>
+<rectangle x1="-5.3213" y1="4.6609" x2="-4.8641" y2="4.6863" layer="21"/>
+<rectangle x1="-2.6035" y1="4.6609" x2="-2.1209" y2="4.6863" layer="21"/>
+<rectangle x1="-1.4351" y1="4.6609" x2="-1.0287" y2="4.6863" layer="21"/>
+<rectangle x1="-0.3175" y1="4.6609" x2="0.1651" y2="4.6863" layer="21"/>
+<rectangle x1="0.8509" y1="4.6609" x2="1.2065" y2="4.6863" layer="21"/>
+<rectangle x1="1.9177" y1="4.6609" x2="2.4511" y2="4.6863" layer="21"/>
+<rectangle x1="3.2893" y1="4.6609" x2="3.6703" y2="4.6863" layer="21"/>
+<rectangle x1="4.5339" y1="4.6609" x2="5.3467" y2="4.6863" layer="21"/>
+<rectangle x1="-5.2959" y1="4.6863" x2="-4.8387" y2="4.7117" layer="21"/>
+<rectangle x1="-2.6289" y1="4.6863" x2="-2.1463" y2="4.7117" layer="21"/>
+<rectangle x1="-1.4351" y1="4.6863" x2="-1.0287" y2="4.7117" layer="21"/>
+<rectangle x1="-0.3429" y1="4.6863" x2="0.1651" y2="4.7117" layer="21"/>
+<rectangle x1="0.8509" y1="4.6863" x2="1.2065" y2="4.7117" layer="21"/>
+<rectangle x1="1.8923" y1="4.6863" x2="2.4257" y2="4.7117" layer="21"/>
+<rectangle x1="3.2893" y1="4.6863" x2="3.6703" y2="4.7117" layer="21"/>
+<rectangle x1="4.5339" y1="4.6863" x2="5.3467" y2="4.7117" layer="21"/>
+<rectangle x1="-5.2959" y1="4.7117" x2="-4.8133" y2="4.7371" layer="21"/>
+<rectangle x1="-2.6543" y1="4.7117" x2="-2.1463" y2="4.7371" layer="21"/>
+<rectangle x1="-1.4351" y1="4.7117" x2="-1.0287" y2="4.7371" layer="21"/>
+<rectangle x1="-0.3937" y1="4.7117" x2="0.1397" y2="4.7371" layer="21"/>
+<rectangle x1="0.8509" y1="4.7117" x2="1.2065" y2="4.7371" layer="21"/>
+<rectangle x1="1.8669" y1="4.7117" x2="2.4257" y2="4.7371" layer="21"/>
+<rectangle x1="3.2893" y1="4.7117" x2="3.6703" y2="4.7371" layer="21"/>
+<rectangle x1="4.5085" y1="4.7117" x2="5.3721" y2="4.7371" layer="21"/>
+<rectangle x1="-5.2705" y1="4.7371" x2="-4.7879" y2="4.7625" layer="21"/>
+<rectangle x1="-2.6797" y1="4.7371" x2="-2.1717" y2="4.7625" layer="21"/>
+<rectangle x1="-1.4351" y1="4.7371" x2="-1.0287" y2="4.7625" layer="21"/>
+<rectangle x1="-0.4191" y1="4.7371" x2="0.1143" y2="4.7625" layer="21"/>
+<rectangle x1="0.8509" y1="4.7371" x2="1.2065" y2="4.7625" layer="21"/>
+<rectangle x1="1.8415" y1="4.7371" x2="2.4003" y2="4.7625" layer="21"/>
+<rectangle x1="3.2893" y1="4.7371" x2="3.6703" y2="4.7625" layer="21"/>
+<rectangle x1="4.5085" y1="4.7371" x2="5.3721" y2="4.7625" layer="21"/>
+<rectangle x1="-5.2451" y1="4.7625" x2="-4.7625" y2="4.7879" layer="21"/>
+<rectangle x1="-2.7051" y1="4.7625" x2="-2.1971" y2="4.7879" layer="21"/>
+<rectangle x1="-1.4351" y1="4.7625" x2="-1.0287" y2="4.7879" layer="21"/>
+<rectangle x1="-0.4445" y1="4.7625" x2="0.1143" y2="4.7879" layer="21"/>
+<rectangle x1="0.8509" y1="4.7625" x2="1.2065" y2="4.7879" layer="21"/>
+<rectangle x1="1.8161" y1="4.7625" x2="2.3749" y2="4.7879" layer="21"/>
+<rectangle x1="3.2893" y1="4.7625" x2="3.6703" y2="4.7879" layer="21"/>
+<rectangle x1="4.4831" y1="4.7625" x2="4.9149" y2="4.7879" layer="21"/>
+<rectangle x1="4.9403" y1="4.7625" x2="5.3975" y2="4.7879" layer="21"/>
+<rectangle x1="-5.2197" y1="4.7879" x2="-4.7371" y2="4.8133" layer="21"/>
+<rectangle x1="-2.7305" y1="4.7879" x2="-2.1971" y2="4.8133" layer="21"/>
+<rectangle x1="-1.4351" y1="4.7879" x2="-1.0287" y2="4.8133" layer="21"/>
+<rectangle x1="-0.4699" y1="4.7879" x2="0.0889" y2="4.8133" layer="21"/>
+<rectangle x1="0.8509" y1="4.7879" x2="1.2065" y2="4.8133" layer="21"/>
+<rectangle x1="1.7653" y1="4.7879" x2="2.3749" y2="4.8133" layer="21"/>
+<rectangle x1="3.2893" y1="4.7879" x2="3.6703" y2="4.8133" layer="21"/>
+<rectangle x1="4.4831" y1="4.7879" x2="4.9149" y2="4.8133" layer="21"/>
+<rectangle x1="4.9657" y1="4.7879" x2="5.4229" y2="4.8133" layer="21"/>
+<rectangle x1="-5.2197" y1="4.8133" x2="-4.7117" y2="4.8387" layer="21"/>
+<rectangle x1="-2.7813" y1="4.8133" x2="-2.2225" y2="4.8387" layer="21"/>
+<rectangle x1="-1.4351" y1="4.8133" x2="-1.0287" y2="4.8387" layer="21"/>
+<rectangle x1="-0.5207" y1="4.8133" x2="0.0635" y2="4.8387" layer="21"/>
+<rectangle x1="0.8509" y1="4.8133" x2="1.2065" y2="4.8387" layer="21"/>
+<rectangle x1="1.7399" y1="4.8133" x2="2.3495" y2="4.8387" layer="21"/>
+<rectangle x1="3.2893" y1="4.8133" x2="3.6703" y2="4.8387" layer="21"/>
+<rectangle x1="4.4577" y1="4.8133" x2="4.9149" y2="4.8387" layer="21"/>
+<rectangle x1="4.9657" y1="4.8133" x2="5.4229" y2="4.8387" layer="21"/>
+<rectangle x1="-5.1943" y1="4.8387" x2="-4.6863" y2="4.8641" layer="21"/>
+<rectangle x1="-2.8067" y1="4.8387" x2="-2.2479" y2="4.8641" layer="21"/>
+<rectangle x1="-1.4351" y1="4.8387" x2="-1.0287" y2="4.8641" layer="21"/>
+<rectangle x1="-0.5715" y1="4.8387" x2="0.0381" y2="4.8641" layer="21"/>
+<rectangle x1="0.8509" y1="4.8387" x2="1.2065" y2="4.8641" layer="21"/>
+<rectangle x1="1.6891" y1="4.8387" x2="2.3241" y2="4.8641" layer="21"/>
+<rectangle x1="3.2893" y1="4.8387" x2="3.6703" y2="4.8641" layer="21"/>
+<rectangle x1="4.4323" y1="4.8387" x2="4.8895" y2="4.8641" layer="21"/>
+<rectangle x1="4.9657" y1="4.8387" x2="5.4483" y2="4.8641" layer="21"/>
+<rectangle x1="-5.1689" y1="4.8641" x2="-4.6609" y2="4.8895" layer="21"/>
+<rectangle x1="-2.8321" y1="4.8641" x2="-2.2733" y2="4.8895" layer="21"/>
+<rectangle x1="-1.4351" y1="4.8641" x2="-1.0287" y2="4.8895" layer="21"/>
+<rectangle x1="-0.5969" y1="4.8641" x2="0.0127" y2="4.8895" layer="21"/>
+<rectangle x1="0.8509" y1="4.8641" x2="1.2065" y2="4.8895" layer="21"/>
+<rectangle x1="1.6637" y1="4.8641" x2="2.2987" y2="4.8895" layer="21"/>
+<rectangle x1="3.2893" y1="4.8641" x2="3.6703" y2="4.8895" layer="21"/>
+<rectangle x1="4.4323" y1="4.8641" x2="4.8895" y2="4.8895" layer="21"/>
+<rectangle x1="4.9911" y1="4.8641" x2="5.4737" y2="4.8895" layer="21"/>
+<rectangle x1="-5.1435" y1="4.8895" x2="-4.6101" y2="4.9149" layer="21"/>
+<rectangle x1="-2.8575" y1="4.8895" x2="-2.2987" y2="4.9149" layer="21"/>
+<rectangle x1="-1.4351" y1="4.8895" x2="-1.0287" y2="4.9149" layer="21"/>
+<rectangle x1="-0.6731" y1="4.8895" x2="0.0127" y2="4.9149" layer="21"/>
+<rectangle x1="0.8509" y1="4.8895" x2="1.2065" y2="4.9149" layer="21"/>
+<rectangle x1="1.5875" y1="4.8895" x2="2.2733" y2="4.9149" layer="21"/>
+<rectangle x1="3.2893" y1="4.8895" x2="3.6703" y2="4.9149" layer="21"/>
+<rectangle x1="4.4069" y1="4.8895" x2="4.8641" y2="4.9149" layer="21"/>
+<rectangle x1="5.0165" y1="4.8895" x2="5.4991" y2="4.9149" layer="21"/>
+<rectangle x1="-5.1181" y1="4.9149" x2="-4.5847" y2="4.9403" layer="21"/>
+<rectangle x1="-2.9083" y1="4.9149" x2="-2.3241" y2="4.9403" layer="21"/>
+<rectangle x1="-1.4351" y1="4.9149" x2="-1.0287" y2="4.9403" layer="21"/>
+<rectangle x1="-0.7239" y1="4.9149" x2="-0.0127" y2="4.9403" layer="21"/>
+<rectangle x1="0.8509" y1="4.9149" x2="1.2065" y2="4.9403" layer="21"/>
+<rectangle x1="1.5367" y1="4.9149" x2="2.2479" y2="4.9403" layer="21"/>
+<rectangle x1="3.2893" y1="4.9149" x2="3.6703" y2="4.9403" layer="21"/>
+<rectangle x1="4.3815" y1="4.9149" x2="4.8641" y2="4.9403" layer="21"/>
+<rectangle x1="5.0165" y1="4.9149" x2="5.4991" y2="4.9403" layer="21"/>
+<rectangle x1="-5.0927" y1="4.9403" x2="-4.5339" y2="4.9657" layer="21"/>
+<rectangle x1="-2.9337" y1="4.9403" x2="-2.3241" y2="4.9657" layer="21"/>
+<rectangle x1="-1.4351" y1="4.9403" x2="-1.0287" y2="4.9657" layer="21"/>
+<rectangle x1="-0.8255" y1="4.9403" x2="-0.0381" y2="4.9657" layer="21"/>
+<rectangle x1="0.8509" y1="4.9403" x2="1.2065" y2="4.9657" layer="21"/>
+<rectangle x1="1.4605" y1="4.9403" x2="2.2479" y2="4.9657" layer="21"/>
+<rectangle x1="3.2893" y1="4.9403" x2="3.6703" y2="4.9657" layer="21"/>
+<rectangle x1="4.3561" y1="4.9403" x2="4.8387" y2="4.9657" layer="21"/>
+<rectangle x1="5.0419" y1="4.9403" x2="5.5245" y2="4.9657" layer="21"/>
+<rectangle x1="-5.0673" y1="4.9657" x2="-4.5085" y2="4.9911" layer="21"/>
+<rectangle x1="-2.9845" y1="4.9657" x2="-2.3495" y2="4.9911" layer="21"/>
+<rectangle x1="-1.4351" y1="4.9657" x2="-0.0635" y2="4.9911" layer="21"/>
+<rectangle x1="0.8509" y1="4.9657" x2="1.2065" y2="4.9911" layer="21"/>
+<rectangle x1="1.2827" y1="4.9657" x2="2.2225" y2="4.9911" layer="21"/>
+<rectangle x1="3.2893" y1="4.9657" x2="3.6703" y2="4.9911" layer="21"/>
+<rectangle x1="4.3307" y1="4.9657" x2="4.8387" y2="4.9911" layer="21"/>
+<rectangle x1="5.0419" y1="4.9657" x2="5.5499" y2="4.9911" layer="21"/>
+<rectangle x1="-5.0419" y1="4.9911" x2="-4.4577" y2="5.0165" layer="21"/>
+<rectangle x1="-3.0353" y1="4.9911" x2="-2.3749" y2="5.0165" layer="21"/>
+<rectangle x1="-1.4351" y1="4.9911" x2="-0.0889" y2="5.0165" layer="21"/>
+<rectangle x1="0.8509" y1="4.9911" x2="2.1971" y2="5.0165" layer="21"/>
+<rectangle x1="3.2893" y1="4.9911" x2="3.6703" y2="5.0165" layer="21"/>
+<rectangle x1="4.3053" y1="4.9911" x2="4.8133" y2="5.0165" layer="21"/>
+<rectangle x1="5.0673" y1="4.9911" x2="5.5753" y2="5.0165" layer="21"/>
+<rectangle x1="-5.0165" y1="5.0165" x2="-4.4069" y2="5.0419" layer="21"/>
+<rectangle x1="-3.0861" y1="5.0165" x2="-2.4003" y2="5.0419" layer="21"/>
+<rectangle x1="-1.4351" y1="5.0165" x2="-0.1143" y2="5.0419" layer="21"/>
+<rectangle x1="0.8509" y1="5.0165" x2="2.1717" y2="5.0419" layer="21"/>
+<rectangle x1="3.2893" y1="5.0165" x2="3.6703" y2="5.0419" layer="21"/>
+<rectangle x1="4.2799" y1="5.0165" x2="4.7879" y2="5.0419" layer="21"/>
+<rectangle x1="5.0927" y1="5.0165" x2="5.5753" y2="5.0419" layer="21"/>
+<rectangle x1="-4.9911" y1="5.0419" x2="-4.3307" y2="5.0673" layer="21"/>
+<rectangle x1="-3.1369" y1="5.0419" x2="-2.4257" y2="5.0673" layer="21"/>
+<rectangle x1="-1.4351" y1="5.0419" x2="-0.1397" y2="5.0673" layer="21"/>
+<rectangle x1="0.8509" y1="5.0419" x2="2.1209" y2="5.0673" layer="21"/>
+<rectangle x1="3.2893" y1="5.0419" x2="3.6703" y2="5.0673" layer="21"/>
+<rectangle x1="4.2799" y1="5.0419" x2="4.7879" y2="5.0673" layer="21"/>
+<rectangle x1="5.0927" y1="5.0419" x2="5.5753" y2="5.0673" layer="21"/>
+<rectangle x1="-4.9657" y1="5.0673" x2="-4.2799" y2="5.0927" layer="21"/>
+<rectangle x1="-3.2131" y1="5.0673" x2="-2.4765" y2="5.0927" layer="21"/>
+<rectangle x1="-1.4351" y1="5.0673" x2="-0.1651" y2="5.0927" layer="21"/>
+<rectangle x1="0.8509" y1="5.0673" x2="2.0955" y2="5.0927" layer="21"/>
+<rectangle x1="3.2893" y1="5.0673" x2="3.6703" y2="5.0927" layer="21"/>
+<rectangle x1="4.2799" y1="5.0673" x2="4.7625" y2="5.0927" layer="21"/>
+<rectangle x1="5.1181" y1="5.0673" x2="5.5753" y2="5.0927" layer="21"/>
+<rectangle x1="-4.9403" y1="5.0927" x2="-4.2037" y2="5.1181" layer="21"/>
+<rectangle x1="-3.2639" y1="5.0927" x2="-2.5019" y2="5.1181" layer="21"/>
+<rectangle x1="-1.4351" y1="5.0927" x2="-0.2159" y2="5.1181" layer="21"/>
+<rectangle x1="0.8509" y1="5.0927" x2="2.0701" y2="5.1181" layer="21"/>
+<rectangle x1="3.2893" y1="5.0927" x2="3.6703" y2="5.1181" layer="21"/>
+<rectangle x1="4.2799" y1="5.0927" x2="4.7371" y2="5.1181" layer="21"/>
+<rectangle x1="5.1435" y1="5.0927" x2="5.5753" y2="5.1181" layer="21"/>
+<rectangle x1="-4.9149" y1="5.1181" x2="-4.1275" y2="5.1435" layer="21"/>
+<rectangle x1="-3.3655" y1="5.1181" x2="-2.5273" y2="5.1435" layer="21"/>
+<rectangle x1="-1.4351" y1="5.1181" x2="-0.2413" y2="5.1435" layer="21"/>
+<rectangle x1="0.8509" y1="5.1181" x2="2.0447" y2="5.1435" layer="21"/>
+<rectangle x1="3.2893" y1="5.1181" x2="3.6703" y2="5.1435" layer="21"/>
+<rectangle x1="4.2799" y1="5.1181" x2="4.7371" y2="5.1435" layer="21"/>
+<rectangle x1="5.1689" y1="5.1181" x2="5.5753" y2="5.1435" layer="21"/>
+<rectangle x1="-4.8641" y1="5.1435" x2="-4.0005" y2="5.1689" layer="21"/>
+<rectangle x1="-3.4671" y1="5.1435" x2="-2.5527" y2="5.1689" layer="21"/>
+<rectangle x1="-1.4351" y1="5.1435" x2="-0.2667" y2="5.1689" layer="21"/>
+<rectangle x1="0.8509" y1="5.1435" x2="2.0193" y2="5.1689" layer="21"/>
+<rectangle x1="3.2893" y1="5.1435" x2="3.6703" y2="5.1689" layer="21"/>
+<rectangle x1="4.2799" y1="5.1435" x2="4.7117" y2="5.1689" layer="21"/>
+<rectangle x1="5.1943" y1="5.1435" x2="5.5753" y2="5.1689" layer="21"/>
+<rectangle x1="-4.8387" y1="5.1689" x2="-2.6035" y2="5.1943" layer="21"/>
+<rectangle x1="-1.4351" y1="5.1689" x2="-0.2921" y2="5.1943" layer="21"/>
+<rectangle x1="0.8509" y1="5.1689" x2="1.9685" y2="5.1943" layer="21"/>
+<rectangle x1="3.2893" y1="5.1689" x2="3.6703" y2="5.1943" layer="21"/>
+<rectangle x1="4.2799" y1="5.1689" x2="4.6863" y2="5.1943" layer="21"/>
+<rectangle x1="5.1943" y1="5.1689" x2="5.5753" y2="5.1943" layer="21"/>
+<rectangle x1="-4.8133" y1="5.1943" x2="-2.6289" y2="5.2197" layer="21"/>
+<rectangle x1="-1.4351" y1="5.1943" x2="-0.3429" y2="5.2197" layer="21"/>
+<rectangle x1="0.8509" y1="5.1943" x2="1.9431" y2="5.2197" layer="21"/>
+<rectangle x1="3.2893" y1="5.1943" x2="3.6703" y2="5.2197" layer="21"/>
+<rectangle x1="4.2799" y1="5.1943" x2="4.6609" y2="5.2197" layer="21"/>
+<rectangle x1="5.2197" y1="5.1943" x2="5.5753" y2="5.2197" layer="21"/>
+<rectangle x1="-4.7625" y1="5.2197" x2="-2.6543" y2="5.2451" layer="21"/>
+<rectangle x1="-1.4351" y1="5.2197" x2="-0.3683" y2="5.2451" layer="21"/>
+<rectangle x1="0.8509" y1="5.2197" x2="1.8923" y2="5.2451" layer="21"/>
+<rectangle x1="3.2893" y1="5.2197" x2="3.6703" y2="5.2451" layer="21"/>
+<rectangle x1="4.2799" y1="5.2197" x2="4.6355" y2="5.2451" layer="21"/>
+<rectangle x1="5.2451" y1="5.2197" x2="5.5753" y2="5.2451" layer="21"/>
+<rectangle x1="-4.7371" y1="5.2451" x2="-2.7051" y2="5.2705" layer="21"/>
+<rectangle x1="-1.4351" y1="5.2451" x2="-0.4191" y2="5.2705" layer="21"/>
+<rectangle x1="0.8509" y1="5.2451" x2="1.8669" y2="5.2705" layer="21"/>
+<rectangle x1="3.2893" y1="5.2451" x2="3.6703" y2="5.2705" layer="21"/>
+<rectangle x1="4.2799" y1="5.2451" x2="4.6101" y2="5.2705" layer="21"/>
+<rectangle x1="5.2705" y1="5.2451" x2="5.5753" y2="5.2705" layer="21"/>
+<rectangle x1="-4.6863" y1="5.2705" x2="-2.7559" y2="5.2959" layer="21"/>
+<rectangle x1="-1.4351" y1="5.2705" x2="-0.4445" y2="5.2959" layer="21"/>
+<rectangle x1="0.8509" y1="5.2705" x2="1.8161" y2="5.2959" layer="21"/>
+<rectangle x1="3.2893" y1="5.2705" x2="3.6703" y2="5.2959" layer="21"/>
+<rectangle x1="4.2799" y1="5.2705" x2="4.5847" y2="5.2959" layer="21"/>
+<rectangle x1="5.2959" y1="5.2705" x2="5.5753" y2="5.2959" layer="21"/>
+<rectangle x1="-4.6355" y1="5.2959" x2="-2.7813" y2="5.3213" layer="21"/>
+<rectangle x1="-1.4351" y1="5.2959" x2="-0.4953" y2="5.3213" layer="21"/>
+<rectangle x1="0.8509" y1="5.2959" x2="1.7653" y2="5.3213" layer="21"/>
+<rectangle x1="3.2893" y1="5.2959" x2="3.6703" y2="5.3213" layer="21"/>
+<rectangle x1="4.2799" y1="5.2959" x2="4.5593" y2="5.3213" layer="21"/>
+<rectangle x1="5.3213" y1="5.2959" x2="5.5753" y2="5.3213" layer="21"/>
+<rectangle x1="-4.6101" y1="5.3213" x2="-2.8321" y2="5.3467" layer="21"/>
+<rectangle x1="-1.4351" y1="5.3213" x2="-0.5461" y2="5.3467" layer="21"/>
+<rectangle x1="0.8509" y1="5.3213" x2="1.7399" y2="5.3467" layer="21"/>
+<rectangle x1="3.2893" y1="5.3213" x2="3.6703" y2="5.3467" layer="21"/>
+<rectangle x1="4.2799" y1="5.3213" x2="4.5339" y2="5.3467" layer="21"/>
+<rectangle x1="5.3467" y1="5.3213" x2="5.5753" y2="5.3467" layer="21"/>
+<rectangle x1="-4.5339" y1="5.3467" x2="-2.8829" y2="5.3721" layer="21"/>
+<rectangle x1="-1.4351" y1="5.3467" x2="-0.5969" y2="5.3721" layer="21"/>
+<rectangle x1="0.8509" y1="5.3467" x2="1.6637" y2="5.3721" layer="21"/>
+<rectangle x1="3.2893" y1="5.3467" x2="3.6703" y2="5.3721" layer="21"/>
+<rectangle x1="4.2799" y1="5.3467" x2="4.5085" y2="5.3721" layer="21"/>
+<rectangle x1="5.3721" y1="5.3467" x2="5.5753" y2="5.3721" layer="21"/>
+<rectangle x1="-4.4831" y1="5.3721" x2="-2.9337" y2="5.3975" layer="21"/>
+<rectangle x1="-1.4351" y1="5.3721" x2="-0.6477" y2="5.3975" layer="21"/>
+<rectangle x1="0.8509" y1="5.3721" x2="1.6129" y2="5.3975" layer="21"/>
+<rectangle x1="3.2893" y1="5.3721" x2="3.6703" y2="5.3975" layer="21"/>
+<rectangle x1="4.2799" y1="5.3721" x2="4.4831" y2="5.3975" layer="21"/>
+<rectangle x1="5.3975" y1="5.3721" x2="5.5753" y2="5.3975" layer="21"/>
+<rectangle x1="-4.4323" y1="5.3975" x2="-3.0099" y2="5.4229" layer="21"/>
+<rectangle x1="-1.4351" y1="5.3975" x2="-0.6985" y2="5.4229" layer="21"/>
+<rectangle x1="0.8509" y1="5.3975" x2="1.5621" y2="5.4229" layer="21"/>
+<rectangle x1="3.2893" y1="5.3975" x2="3.6703" y2="5.4229" layer="21"/>
+<rectangle x1="4.2799" y1="5.3975" x2="4.4577" y2="5.4229" layer="21"/>
+<rectangle x1="5.4229" y1="5.3975" x2="5.5753" y2="5.4229" layer="21"/>
+<rectangle x1="-4.3561" y1="5.4229" x2="-3.0607" y2="5.4483" layer="21"/>
+<rectangle x1="-1.4351" y1="5.4229" x2="-0.7747" y2="5.4483" layer="21"/>
+<rectangle x1="0.8509" y1="5.4229" x2="1.4859" y2="5.4483" layer="21"/>
+<rectangle x1="3.2893" y1="5.4229" x2="3.6703" y2="5.4483" layer="21"/>
+<rectangle x1="4.2799" y1="5.4229" x2="4.4323" y2="5.4483" layer="21"/>
+<rectangle x1="5.4483" y1="5.4229" x2="5.5753" y2="5.4483" layer="21"/>
+<rectangle x1="-4.2799" y1="5.4483" x2="-3.1369" y2="5.4737" layer="21"/>
+<rectangle x1="-1.4351" y1="5.4483" x2="-0.8509" y2="5.4737" layer="21"/>
+<rectangle x1="0.8509" y1="5.4483" x2="1.4097" y2="5.4737" layer="21"/>
+<rectangle x1="3.2893" y1="5.4483" x2="3.6703" y2="5.4737" layer="21"/>
+<rectangle x1="4.2799" y1="5.4483" x2="4.4069" y2="5.4737" layer="21"/>
+<rectangle x1="5.4991" y1="5.4483" x2="5.5753" y2="5.4737" layer="21"/>
+<rectangle x1="-4.2037" y1="5.4737" x2="-3.2131" y2="5.4991" layer="21"/>
+<rectangle x1="-1.4351" y1="5.4737" x2="-0.9525" y2="5.4991" layer="21"/>
+<rectangle x1="0.8509" y1="5.4737" x2="1.3335" y2="5.4991" layer="21"/>
+<rectangle x1="3.2893" y1="5.4737" x2="3.6703" y2="5.4991" layer="21"/>
+<rectangle x1="4.2799" y1="5.4737" x2="4.3815" y2="5.4991" layer="21"/>
+<rectangle x1="5.5245" y1="5.4737" x2="5.5753" y2="5.4991" layer="21"/>
+<rectangle x1="-4.1021" y1="5.4991" x2="-3.3401" y2="5.5245" layer="21"/>
+<rectangle x1="-1.4351" y1="5.4991" x2="-1.0541" y2="5.5245" layer="21"/>
+<rectangle x1="0.8509" y1="5.4991" x2="1.2065" y2="5.5245" layer="21"/>
+<rectangle x1="3.2893" y1="5.4991" x2="3.6703" y2="5.5245" layer="21"/>
+<rectangle x1="4.2799" y1="5.4991" x2="4.3561" y2="5.5245" layer="21"/>
+<rectangle x1="5.5499" y1="5.4991" x2="5.5753" y2="5.5245" layer="21"/>
+<rectangle x1="-3.9243" y1="5.5245" x2="-3.4925" y2="5.5499" layer="21"/>
+<rectangle x1="-1.4351" y1="5.5245" x2="-1.2573" y2="5.5499" layer="21"/>
+<rectangle x1="0.8509" y1="5.5245" x2="1.0033" y2="5.5499" layer="21"/>
+<rectangle x1="3.2893" y1="5.5245" x2="3.6449" y2="5.5499" layer="21"/>
+</package>
+<package name="OSO_BEAR_250X360MIL_1000DPI">
+<rectangle x1="-1.3335" y1="-4.5847" x2="-1.3081" y2="-4.5593" layer="21"/>
+<rectangle x1="-1.1303" y1="-4.5847" x2="-1.0795" y2="-4.5593" layer="21"/>
+<rectangle x1="-1.5875" y1="-4.5593" x2="-1.5621" y2="-4.5339" layer="21"/>
+<rectangle x1="-1.3335" y1="-4.5593" x2="-1.2827" y2="-4.5339" layer="21"/>
+<rectangle x1="-1.1303" y1="-4.5593" x2="-1.0795" y2="-4.5339" layer="21"/>
+<rectangle x1="-1.5875" y1="-4.5339" x2="-1.5367" y2="-4.5085" layer="21"/>
+<rectangle x1="-1.3335" y1="-4.5339" x2="-1.2827" y2="-4.5085" layer="21"/>
+<rectangle x1="-1.1303" y1="-4.5339" x2="-1.0541" y2="-4.5085" layer="21"/>
+<rectangle x1="1.7907" y1="-4.5339" x2="2.0447" y2="-4.5085" layer="21"/>
+<rectangle x1="-1.6129" y1="-4.5085" x2="-1.5367" y2="-4.4831" layer="21"/>
+<rectangle x1="-1.3335" y1="-4.5085" x2="-1.2573" y2="-4.4831" layer="21"/>
+<rectangle x1="-1.1303" y1="-4.5085" x2="-1.0541" y2="-4.4831" layer="21"/>
+<rectangle x1="1.5875" y1="-4.5085" x2="2.2225" y2="-4.4831" layer="21"/>
+<rectangle x1="-1.6129" y1="-4.4831" x2="-1.5367" y2="-4.4577" layer="21"/>
+<rectangle x1="-1.3335" y1="-4.4831" x2="-1.2573" y2="-4.4577" layer="21"/>
+<rectangle x1="-1.1303" y1="-4.4831" x2="-1.0541" y2="-4.4577" layer="21"/>
+<rectangle x1="1.4859" y1="-4.4831" x2="2.3241" y2="-4.4577" layer="21"/>
+<rectangle x1="-1.8161" y1="-4.4577" x2="-1.7907" y2="-4.4323" layer="21"/>
+<rectangle x1="-1.6129" y1="-4.4577" x2="-1.5113" y2="-4.4323" layer="21"/>
+<rectangle x1="-1.3335" y1="-4.4577" x2="-1.2319" y2="-4.4323" layer="21"/>
+<rectangle x1="-1.1049" y1="-4.4577" x2="-1.0287" y2="-4.4323" layer="21"/>
+<rectangle x1="1.4097" y1="-4.4577" x2="2.3749" y2="-4.4323" layer="21"/>
+<rectangle x1="-1.8161" y1="-4.4323" x2="-1.7653" y2="-4.4069" layer="21"/>
+<rectangle x1="-1.6129" y1="-4.4323" x2="-1.4859" y2="-4.4069" layer="21"/>
+<rectangle x1="-1.3081" y1="-4.4323" x2="-1.2065" y2="-4.4069" layer="21"/>
+<rectangle x1="-1.1303" y1="-4.4323" x2="-1.0033" y2="-4.4069" layer="21"/>
+<rectangle x1="1.2827" y1="-4.4323" x2="2.3495" y2="-4.4069" layer="21"/>
+<rectangle x1="-1.8161" y1="-4.4069" x2="-1.7653" y2="-4.3815" layer="21"/>
+<rectangle x1="-1.6129" y1="-4.4069" x2="-1.4605" y2="-4.3815" layer="21"/>
+<rectangle x1="-1.4351" y1="-4.4069" x2="-0.9779" y2="-4.3815" layer="21"/>
+<rectangle x1="1.2065" y1="-4.4069" x2="2.2479" y2="-4.3815" layer="21"/>
+<rectangle x1="-1.8161" y1="-4.3815" x2="-1.7653" y2="-4.3561" layer="21"/>
+<rectangle x1="-1.5875" y1="-4.3815" x2="-0.9017" y2="-4.3561" layer="21"/>
+<rectangle x1="1.1303" y1="-4.3815" x2="2.1717" y2="-4.3561" layer="21"/>
+<rectangle x1="-1.8161" y1="-4.3561" x2="-1.7399" y2="-4.3307" layer="21"/>
+<rectangle x1="-1.5875" y1="-4.3561" x2="-0.8001" y2="-4.3307" layer="21"/>
+<rectangle x1="1.0795" y1="-4.3561" x2="1.9939" y2="-4.3307" layer="21"/>
+<rectangle x1="-1.9939" y1="-4.3307" x2="-1.9685" y2="-4.3053" layer="21"/>
+<rectangle x1="-1.8161" y1="-4.3307" x2="-1.7145" y2="-4.3053" layer="21"/>
+<rectangle x1="-1.5875" y1="-4.3307" x2="-0.7493" y2="-4.3053" layer="21"/>
+<rectangle x1="1.0287" y1="-4.3307" x2="1.8923" y2="-4.3053" layer="21"/>
+<rectangle x1="-1.9939" y1="-4.3053" x2="-1.9431" y2="-4.2799" layer="21"/>
+<rectangle x1="-1.8161" y1="-4.3053" x2="-1.6891" y2="-4.2799" layer="21"/>
+<rectangle x1="-1.6383" y1="-4.3053" x2="-0.7239" y2="-4.2799" layer="21"/>
+<rectangle x1="0.9779" y1="-4.3053" x2="1.7907" y2="-4.2799" layer="21"/>
+<rectangle x1="-1.9939" y1="-4.2799" x2="-1.9431" y2="-4.2545" layer="21"/>
+<rectangle x1="-1.8161" y1="-4.2799" x2="-0.6985" y2="-4.2545" layer="21"/>
+<rectangle x1="0.9271" y1="-4.2799" x2="1.7145" y2="-4.2545" layer="21"/>
+<rectangle x1="-1.9939" y1="-4.2545" x2="-1.9177" y2="-4.2291" layer="21"/>
+<rectangle x1="-1.7907" y1="-4.2545" x2="-0.6731" y2="-4.2291" layer="21"/>
+<rectangle x1="0.9017" y1="-4.2545" x2="1.5875" y2="-4.2291" layer="21"/>
+<rectangle x1="-1.9939" y1="-4.2291" x2="-1.9177" y2="-4.2037" layer="21"/>
+<rectangle x1="-1.7907" y1="-4.2291" x2="-0.6477" y2="-4.2037" layer="21"/>
+<rectangle x1="0.8509" y1="-4.2291" x2="1.5367" y2="-4.2037" layer="21"/>
+<rectangle x1="-1.9685" y1="-4.2037" x2="-1.8923" y2="-4.1783" layer="21"/>
+<rectangle x1="-1.7653" y1="-4.2037" x2="-0.6477" y2="-4.1783" layer="21"/>
+<rectangle x1="0.8001" y1="-4.2037" x2="1.4605" y2="-4.1783" layer="21"/>
+<rectangle x1="-1.9685" y1="-4.1783" x2="-1.8415" y2="-4.1529" layer="21"/>
+<rectangle x1="-1.7653" y1="-4.1783" x2="-0.6223" y2="-4.1529" layer="21"/>
+<rectangle x1="0.7747" y1="-4.1783" x2="1.4097" y2="-4.1529" layer="21"/>
+<rectangle x1="-1.9685" y1="-4.1529" x2="-0.5969" y2="-4.1275" layer="21"/>
+<rectangle x1="0.7493" y1="-4.1529" x2="1.3589" y2="-4.1275" layer="21"/>
+<rectangle x1="-1.9431" y1="-4.1275" x2="-0.5715" y2="-4.1021" layer="21"/>
+<rectangle x1="0.7239" y1="-4.1275" x2="1.2827" y2="-4.1021" layer="21"/>
+<rectangle x1="-1.9177" y1="-4.1021" x2="-0.5461" y2="-4.0767" layer="21"/>
+<rectangle x1="0.6985" y1="-4.1021" x2="1.2319" y2="-4.0767" layer="21"/>
+<rectangle x1="-1.8923" y1="-4.0767" x2="-0.5207" y2="-4.0513" layer="21"/>
+<rectangle x1="0.6985" y1="-4.0767" x2="1.2065" y2="-4.0513" layer="21"/>
+<rectangle x1="-1.8415" y1="-4.0513" x2="-0.5207" y2="-4.0259" layer="21"/>
+<rectangle x1="0.6731" y1="-4.0513" x2="1.1557" y2="-4.0259" layer="21"/>
+<rectangle x1="-1.8161" y1="-4.0259" x2="-0.4953" y2="-4.0005" layer="21"/>
+<rectangle x1="0.6477" y1="-4.0259" x2="1.1303" y2="-4.0005" layer="21"/>
+<rectangle x1="-1.7653" y1="-4.0005" x2="-0.4699" y2="-3.9751" layer="21"/>
+<rectangle x1="0.6477" y1="-4.0005" x2="1.1049" y2="-3.9751" layer="21"/>
+<rectangle x1="-1.7653" y1="-3.9751" x2="-0.4699" y2="-3.9497" layer="21"/>
+<rectangle x1="0.6223" y1="-3.9751" x2="1.0795" y2="-3.9497" layer="21"/>
+<rectangle x1="-1.7653" y1="-3.9497" x2="-0.4445" y2="-3.9243" layer="21"/>
+<rectangle x1="0.6223" y1="-3.9497" x2="1.0795" y2="-3.9243" layer="21"/>
+<rectangle x1="-1.7399" y1="-3.9243" x2="-0.4191" y2="-3.8989" layer="21"/>
+<rectangle x1="0.6223" y1="-3.9243" x2="1.0541" y2="-3.8989" layer="21"/>
+<rectangle x1="-1.7399" y1="-3.8989" x2="-0.4191" y2="-3.8735" layer="21"/>
+<rectangle x1="0.5969" y1="-3.8989" x2="1.0287" y2="-3.8735" layer="21"/>
+<rectangle x1="-1.7399" y1="-3.8735" x2="-0.3937" y2="-3.8481" layer="21"/>
+<rectangle x1="0.5969" y1="-3.8735" x2="1.0287" y2="-3.8481" layer="21"/>
+<rectangle x1="-1.7145" y1="-3.8481" x2="-0.3937" y2="-3.8227" layer="21"/>
+<rectangle x1="0.5969" y1="-3.8481" x2="1.0033" y2="-3.8227" layer="21"/>
+<rectangle x1="-1.6891" y1="-3.8227" x2="-0.3683" y2="-3.7973" layer="21"/>
+<rectangle x1="0.5969" y1="-3.8227" x2="1.0033" y2="-3.7973" layer="21"/>
+<rectangle x1="-1.6637" y1="-3.7973" x2="-0.3683" y2="-3.7719" layer="21"/>
+<rectangle x1="0.5715" y1="-3.7973" x2="1.0033" y2="-3.7719" layer="21"/>
+<rectangle x1="-1.6383" y1="-3.7719" x2="-0.3429" y2="-3.7465" layer="21"/>
+<rectangle x1="0.5715" y1="-3.7719" x2="0.9779" y2="-3.7465" layer="21"/>
+<rectangle x1="-1.6129" y1="-3.7465" x2="-0.3175" y2="-3.7211" layer="21"/>
+<rectangle x1="0.5715" y1="-3.7465" x2="0.9779" y2="-3.7211" layer="21"/>
+<rectangle x1="-1.5621" y1="-3.7211" x2="-0.2921" y2="-3.6957" layer="21"/>
+<rectangle x1="0.5715" y1="-3.7211" x2="0.9779" y2="-3.6957" layer="21"/>
+<rectangle x1="-1.5367" y1="-3.6957" x2="-0.2921" y2="-3.6703" layer="21"/>
+<rectangle x1="0.5461" y1="-3.6957" x2="0.9779" y2="-3.6703" layer="21"/>
+<rectangle x1="-1.4859" y1="-3.6703" x2="-0.2667" y2="-3.6449" layer="21"/>
+<rectangle x1="0.5461" y1="-3.6703" x2="0.9779" y2="-3.6449" layer="21"/>
+<rectangle x1="-1.4605" y1="-3.6449" x2="-0.2667" y2="-3.6195" layer="21"/>
+<rectangle x1="0.5461" y1="-3.6449" x2="0.9779" y2="-3.6195" layer="21"/>
+<rectangle x1="-1.4351" y1="-3.6195" x2="-0.2413" y2="-3.5941" layer="21"/>
+<rectangle x1="0.5461" y1="-3.6195" x2="0.9779" y2="-3.5941" layer="21"/>
+<rectangle x1="-1.4097" y1="-3.5941" x2="-0.2413" y2="-3.5687" layer="21"/>
+<rectangle x1="0.5715" y1="-3.5941" x2="0.9779" y2="-3.5687" layer="21"/>
+<rectangle x1="-1.3843" y1="-3.5687" x2="-0.2159" y2="-3.5433" layer="21"/>
+<rectangle x1="0.5715" y1="-3.5687" x2="0.9779" y2="-3.5433" layer="21"/>
+<rectangle x1="-1.3843" y1="-3.5433" x2="-0.1905" y2="-3.5179" layer="21"/>
+<rectangle x1="0.5715" y1="-3.5433" x2="0.9779" y2="-3.5179" layer="21"/>
+<rectangle x1="-1.3843" y1="-3.5179" x2="-0.1905" y2="-3.4925" layer="21"/>
+<rectangle x1="0.5715" y1="-3.5179" x2="0.9779" y2="-3.4925" layer="21"/>
+<rectangle x1="-1.3589" y1="-3.4925" x2="-0.1905" y2="-3.4671" layer="21"/>
+<rectangle x1="0.5969" y1="-3.4925" x2="1.0033" y2="-3.4671" layer="21"/>
+<rectangle x1="-1.3589" y1="-3.4671" x2="-0.1651" y2="-3.4417" layer="21"/>
+<rectangle x1="0.5969" y1="-3.4671" x2="1.0287" y2="-3.4417" layer="21"/>
+<rectangle x1="-1.3589" y1="-3.4417" x2="-0.1651" y2="-3.4163" layer="21"/>
+<rectangle x1="0.5969" y1="-3.4417" x2="1.0541" y2="-3.4163" layer="21"/>
+<rectangle x1="1.4859" y1="-3.4417" x2="1.5621" y2="-3.4163" layer="21"/>
+<rectangle x1="-1.3589" y1="-3.4163" x2="-0.1397" y2="-3.3909" layer="21"/>
+<rectangle x1="0.6223" y1="-3.4163" x2="1.1049" y2="-3.3909" layer="21"/>
+<rectangle x1="1.3843" y1="-3.4163" x2="1.5621" y2="-3.3909" layer="21"/>
+<rectangle x1="-1.3589" y1="-3.3909" x2="-0.1397" y2="-3.3655" layer="21"/>
+<rectangle x1="0.6223" y1="-3.3909" x2="1.5875" y2="-3.3655" layer="21"/>
+<rectangle x1="-1.3589" y1="-3.3655" x2="-0.1143" y2="-3.3401" layer="21"/>
+<rectangle x1="0.6477" y1="-3.3655" x2="1.6129" y2="-3.3401" layer="21"/>
+<rectangle x1="-1.3589" y1="-3.3401" x2="-0.1143" y2="-3.3147" layer="21"/>
+<rectangle x1="0.6477" y1="-3.3401" x2="1.6129" y2="-3.3147" layer="21"/>
+<rectangle x1="-1.3589" y1="-3.3147" x2="-0.0889" y2="-3.2893" layer="21"/>
+<rectangle x1="0.6731" y1="-3.3147" x2="1.6383" y2="-3.2893" layer="21"/>
+<rectangle x1="-1.3589" y1="-3.2893" x2="-0.0889" y2="-3.2639" layer="21"/>
+<rectangle x1="0.6985" y1="-3.2893" x2="1.6637" y2="-3.2639" layer="21"/>
+<rectangle x1="-1.3843" y1="-3.2639" x2="-0.0889" y2="-3.2385" layer="21"/>
+<rectangle x1="0.7239" y1="-3.2639" x2="1.2827" y2="-3.2385" layer="21"/>
+<rectangle x1="1.3589" y1="-3.2639" x2="1.6891" y2="-3.2385" layer="21"/>
+<rectangle x1="-1.3843" y1="-3.2385" x2="-0.0635" y2="-3.2131" layer="21"/>
+<rectangle x1="0.7493" y1="-3.2385" x2="1.3589" y2="-3.2131" layer="21"/>
+<rectangle x1="1.3843" y1="-3.2385" x2="1.6891" y2="-3.2131" layer="21"/>
+<rectangle x1="-1.3843" y1="-3.2131" x2="-0.0635" y2="-3.1877" layer="21"/>
+<rectangle x1="0.7747" y1="-3.2131" x2="1.6637" y2="-3.1877" layer="21"/>
+<rectangle x1="-1.3843" y1="-3.1877" x2="-0.0381" y2="-3.1623" layer="21"/>
+<rectangle x1="0.8255" y1="-3.1877" x2="1.4097" y2="-3.1623" layer="21"/>
+<rectangle x1="1.4351" y1="-3.1877" x2="1.5875" y2="-3.1623" layer="21"/>
+<rectangle x1="-1.4097" y1="-3.1623" x2="-0.0381" y2="-3.1369" layer="21"/>
+<rectangle x1="0.8763" y1="-3.1623" x2="1.5367" y2="-3.1369" layer="21"/>
+<rectangle x1="-1.4097" y1="-3.1369" x2="-0.0381" y2="-3.1115" layer="21"/>
+<rectangle x1="0.9525" y1="-3.1369" x2="1.4605" y2="-3.1115" layer="21"/>
+<rectangle x1="-1.4351" y1="-3.1115" x2="-0.0127" y2="-3.0861" layer="21"/>
+<rectangle x1="1.2065" y1="-3.1115" x2="1.4097" y2="-3.0861" layer="21"/>
+<rectangle x1="-1.4351" y1="-3.0861" x2="-0.0127" y2="-3.0607" layer="21"/>
+<rectangle x1="1.2065" y1="-3.0861" x2="1.4097" y2="-3.0607" layer="21"/>
+<rectangle x1="-1.4351" y1="-3.0607" x2="-0.0127" y2="-3.0353" layer="21"/>
+<rectangle x1="1.0795" y1="-3.0607" x2="1.2573" y2="-3.0353" layer="21"/>
+<rectangle x1="1.3335" y1="-3.0607" x2="1.4097" y2="-3.0353" layer="21"/>
+<rectangle x1="-1.4605" y1="-3.0353" x2="0.0127" y2="-3.0099" layer="21"/>
+<rectangle x1="1.0287" y1="-3.0353" x2="1.4097" y2="-3.0099" layer="21"/>
+<rectangle x1="-1.4605" y1="-3.0099" x2="0.0127" y2="-2.9845" layer="21"/>
+<rectangle x1="1.0033" y1="-3.0099" x2="1.4097" y2="-2.9845" layer="21"/>
+<rectangle x1="-1.4605" y1="-2.9845" x2="0.0127" y2="-2.9591" layer="21"/>
+<rectangle x1="0.9779" y1="-2.9845" x2="1.4351" y2="-2.9591" layer="21"/>
+<rectangle x1="-1.4605" y1="-2.9591" x2="0.0127" y2="-2.9337" layer="21"/>
+<rectangle x1="0.9779" y1="-2.9591" x2="1.4351" y2="-2.9337" layer="21"/>
+<rectangle x1="-1.4859" y1="-2.9337" x2="0.0381" y2="-2.9083" layer="21"/>
+<rectangle x1="0.9525" y1="-2.9337" x2="1.4605" y2="-2.9083" layer="21"/>
+<rectangle x1="-1.4859" y1="-2.9083" x2="0.0381" y2="-2.8829" layer="21"/>
+<rectangle x1="0.9525" y1="-2.9083" x2="1.4605" y2="-2.8829" layer="21"/>
+<rectangle x1="-1.4859" y1="-2.8829" x2="0.0635" y2="-2.8575" layer="21"/>
+<rectangle x1="0.9271" y1="-2.8829" x2="1.4605" y2="-2.8575" layer="21"/>
+<rectangle x1="-1.4859" y1="-2.8575" x2="0.0635" y2="-2.8321" layer="21"/>
+<rectangle x1="0.9271" y1="-2.8575" x2="1.4605" y2="-2.8321" layer="21"/>
+<rectangle x1="-1.4859" y1="-2.8321" x2="0.0635" y2="-2.8067" layer="21"/>
+<rectangle x1="0.9017" y1="-2.8321" x2="1.4605" y2="-2.8067" layer="21"/>
+<rectangle x1="-1.5113" y1="-2.8067" x2="0.0635" y2="-2.7813" layer="21"/>
+<rectangle x1="0.8763" y1="-2.8067" x2="1.4605" y2="-2.7813" layer="21"/>
+<rectangle x1="-1.5113" y1="-2.7813" x2="0.0889" y2="-2.7559" layer="21"/>
+<rectangle x1="0.8763" y1="-2.7813" x2="1.4605" y2="-2.7559" layer="21"/>
+<rectangle x1="-1.5113" y1="-2.7559" x2="0.0889" y2="-2.7305" layer="21"/>
+<rectangle x1="0.8509" y1="-2.7559" x2="1.4605" y2="-2.7305" layer="21"/>
+<rectangle x1="-1.5113" y1="-2.7305" x2="0.1143" y2="-2.7051" layer="21"/>
+<rectangle x1="0.8255" y1="-2.7305" x2="1.4605" y2="-2.7051" layer="21"/>
+<rectangle x1="-1.5113" y1="-2.7051" x2="0.1143" y2="-2.6797" layer="21"/>
+<rectangle x1="0.8001" y1="-2.7051" x2="1.4605" y2="-2.6797" layer="21"/>
+<rectangle x1="-1.5367" y1="-2.6797" x2="0.1143" y2="-2.6543" layer="21"/>
+<rectangle x1="0.7493" y1="-2.6797" x2="1.4605" y2="-2.6543" layer="21"/>
+<rectangle x1="-1.5367" y1="-2.6543" x2="0.1143" y2="-2.6289" layer="21"/>
+<rectangle x1="0.7239" y1="-2.6543" x2="1.4605" y2="-2.6289" layer="21"/>
+<rectangle x1="-1.5367" y1="-2.6289" x2="0.1397" y2="-2.6035" layer="21"/>
+<rectangle x1="0.6985" y1="-2.6289" x2="1.4605" y2="-2.6035" layer="21"/>
+<rectangle x1="-1.5367" y1="-2.6035" x2="0.1397" y2="-2.5781" layer="21"/>
+<rectangle x1="0.6731" y1="-2.6035" x2="1.4605" y2="-2.5781" layer="21"/>
+<rectangle x1="-1.5367" y1="-2.5781" x2="0.1397" y2="-2.5527" layer="21"/>
+<rectangle x1="0.6731" y1="-2.5781" x2="1.4605" y2="-2.5527" layer="21"/>
+<rectangle x1="-1.5367" y1="-2.5527" x2="0.1397" y2="-2.5273" layer="21"/>
+<rectangle x1="0.6477" y1="-2.5527" x2="1.4605" y2="-2.5273" layer="21"/>
+<rectangle x1="-1.5367" y1="-2.5273" x2="0.1651" y2="-2.5019" layer="21"/>
+<rectangle x1="0.6477" y1="-2.5273" x2="1.2065" y2="-2.5019" layer="21"/>
+<rectangle x1="1.2319" y1="-2.5273" x2="1.4605" y2="-2.5019" layer="21"/>
+<rectangle x1="-1.5367" y1="-2.5019" x2="0.1651" y2="-2.4765" layer="21"/>
+<rectangle x1="0.6477" y1="-2.5019" x2="1.4859" y2="-2.4765" layer="21"/>
+<rectangle x1="-1.5367" y1="-2.4765" x2="0.1651" y2="-2.4511" layer="21"/>
+<rectangle x1="0.6223" y1="-2.4765" x2="1.3081" y2="-2.4511" layer="21"/>
+<rectangle x1="1.3335" y1="-2.4765" x2="1.4859" y2="-2.4511" layer="21"/>
+<rectangle x1="-1.5367" y1="-2.4511" x2="0.1651" y2="-2.4257" layer="21"/>
+<rectangle x1="0.6223" y1="-2.4511" x2="1.3335" y2="-2.4257" layer="21"/>
+<rectangle x1="1.3589" y1="-2.4511" x2="1.4859" y2="-2.4257" layer="21"/>
+<rectangle x1="-1.5367" y1="-2.4257" x2="0.1905" y2="-2.4003" layer="21"/>
+<rectangle x1="0.6223" y1="-2.4257" x2="0.9017" y2="-2.4003" layer="21"/>
+<rectangle x1="0.9525" y1="-2.4257" x2="1.4859" y2="-2.4003" layer="21"/>
+<rectangle x1="-1.5367" y1="-2.4003" x2="0.1905" y2="-2.3749" layer="21"/>
+<rectangle x1="0.6477" y1="-2.4003" x2="0.8509" y2="-2.3749" layer="21"/>
+<rectangle x1="0.9779" y1="-2.4003" x2="1.3589" y2="-2.3749" layer="21"/>
+<rectangle x1="1.3843" y1="-2.4003" x2="1.5113" y2="-2.3749" layer="21"/>
+<rectangle x1="-1.5367" y1="-2.3749" x2="0.1905" y2="-2.3495" layer="21"/>
+<rectangle x1="0.6477" y1="-2.3749" x2="0.8509" y2="-2.3495" layer="21"/>
+<rectangle x1="0.9779" y1="-2.3749" x2="1.3843" y2="-2.3495" layer="21"/>
+<rectangle x1="1.4097" y1="-2.3749" x2="1.5113" y2="-2.3495" layer="21"/>
+<rectangle x1="-1.5367" y1="-2.3495" x2="0.1905" y2="-2.3241" layer="21"/>
+<rectangle x1="0.6477" y1="-2.3495" x2="0.8509" y2="-2.3241" layer="21"/>
+<rectangle x1="1.0033" y1="-2.3495" x2="1.3843" y2="-2.3241" layer="21"/>
+<rectangle x1="1.4097" y1="-2.3495" x2="1.5113" y2="-2.3241" layer="21"/>
+<rectangle x1="-1.5367" y1="-2.3241" x2="0.1905" y2="-2.2987" layer="21"/>
+<rectangle x1="0.6477" y1="-2.3241" x2="0.8509" y2="-2.2987" layer="21"/>
+<rectangle x1="0.9779" y1="-2.3241" x2="1.4097" y2="-2.2987" layer="21"/>
+<rectangle x1="1.4351" y1="-2.3241" x2="1.5113" y2="-2.2987" layer="21"/>
+<rectangle x1="-1.5621" y1="-2.2987" x2="0.1905" y2="-2.2733" layer="21"/>
+<rectangle x1="0.6477" y1="-2.2987" x2="0.8763" y2="-2.2733" layer="21"/>
+<rectangle x1="0.9525" y1="-2.2987" x2="1.4097" y2="-2.2733" layer="21"/>
+<rectangle x1="1.4351" y1="-2.2987" x2="1.5113" y2="-2.2733" layer="21"/>
+<rectangle x1="-1.5621" y1="-2.2733" x2="0.1905" y2="-2.2479" layer="21"/>
+<rectangle x1="0.6731" y1="-2.2733" x2="1.5113" y2="-2.2479" layer="21"/>
+<rectangle x1="-1.5367" y1="-2.2479" x2="0.1905" y2="-2.2225" layer="21"/>
+<rectangle x1="0.6731" y1="-2.2479" x2="1.4351" y2="-2.2225" layer="21"/>
+<rectangle x1="1.4605" y1="-2.2479" x2="1.5113" y2="-2.2225" layer="21"/>
+<rectangle x1="-1.5367" y1="-2.2225" x2="0.2159" y2="-2.1971" layer="21"/>
+<rectangle x1="0.6985" y1="-2.2225" x2="1.4351" y2="-2.1971" layer="21"/>
+<rectangle x1="1.4605" y1="-2.2225" x2="1.5113" y2="-2.1971" layer="21"/>
+<rectangle x1="-1.5367" y1="-2.1971" x2="0.2159" y2="-2.1717" layer="21"/>
+<rectangle x1="0.6985" y1="-2.1971" x2="1.4351" y2="-2.1717" layer="21"/>
+<rectangle x1="1.4605" y1="-2.1971" x2="1.5113" y2="-2.1717" layer="21"/>
+<rectangle x1="-1.5367" y1="-2.1717" x2="0.2159" y2="-2.1463" layer="21"/>
+<rectangle x1="0.7239" y1="-2.1717" x2="1.0795" y2="-2.1463" layer="21"/>
+<rectangle x1="1.1049" y1="-2.1717" x2="1.4351" y2="-2.1463" layer="21"/>
+<rectangle x1="1.4605" y1="-2.1717" x2="1.5113" y2="-2.1463" layer="21"/>
+<rectangle x1="-1.5367" y1="-2.1463" x2="0.2159" y2="-2.1209" layer="21"/>
+<rectangle x1="0.7493" y1="-2.1463" x2="1.0541" y2="-2.1209" layer="21"/>
+<rectangle x1="1.0795" y1="-2.1463" x2="1.4351" y2="-2.1209" layer="21"/>
+<rectangle x1="1.4605" y1="-2.1463" x2="1.5113" y2="-2.1209" layer="21"/>
+<rectangle x1="-1.5367" y1="-2.1209" x2="0.2159" y2="-2.0955" layer="21"/>
+<rectangle x1="0.7747" y1="-2.1209" x2="0.9779" y2="-2.0955" layer="21"/>
+<rectangle x1="1.0287" y1="-2.1209" x2="1.4351" y2="-2.0955" layer="21"/>
+<rectangle x1="1.4605" y1="-2.1209" x2="1.5113" y2="-2.0955" layer="21"/>
+<rectangle x1="-1.5367" y1="-2.0955" x2="0.2413" y2="-2.0701" layer="21"/>
+<rectangle x1="0.6223" y1="-2.0955" x2="1.4351" y2="-2.0701" layer="21"/>
+<rectangle x1="1.4605" y1="-2.0955" x2="1.4859" y2="-2.0701" layer="21"/>
+<rectangle x1="-1.5367" y1="-2.0701" x2="0.2413" y2="-2.0447" layer="21"/>
+<rectangle x1="0.5207" y1="-2.0701" x2="1.4097" y2="-2.0447" layer="21"/>
+<rectangle x1="1.4351" y1="-2.0701" x2="1.4859" y2="-2.0447" layer="21"/>
+<rectangle x1="-1.5367" y1="-2.0447" x2="0.2413" y2="-2.0193" layer="21"/>
+<rectangle x1="0.4699" y1="-2.0447" x2="1.4097" y2="-2.0193" layer="21"/>
+<rectangle x1="1.4351" y1="-2.0447" x2="1.4859" y2="-2.0193" layer="21"/>
+<rectangle x1="-1.5367" y1="-2.0193" x2="0.2413" y2="-1.9939" layer="21"/>
+<rectangle x1="0.3937" y1="-2.0193" x2="1.3843" y2="-1.9939" layer="21"/>
+<rectangle x1="1.4097" y1="-2.0193" x2="1.4859" y2="-1.9939" layer="21"/>
+<rectangle x1="-1.5367" y1="-1.9939" x2="0.2413" y2="-1.9685" layer="21"/>
+<rectangle x1="0.3429" y1="-1.9939" x2="1.3589" y2="-1.9685" layer="21"/>
+<rectangle x1="1.3843" y1="-1.9939" x2="1.4605" y2="-1.9685" layer="21"/>
+<rectangle x1="-1.5367" y1="-1.9685" x2="0.2667" y2="-1.9431" layer="21"/>
+<rectangle x1="0.2921" y1="-1.9685" x2="1.3335" y2="-1.9431" layer="21"/>
+<rectangle x1="1.3589" y1="-1.9685" x2="1.4605" y2="-1.9431" layer="21"/>
+<rectangle x1="-1.5367" y1="-1.9431" x2="1.4097" y2="-1.9177" layer="21"/>
+<rectangle x1="-1.5113" y1="-1.9177" x2="1.3843" y2="-1.8923" layer="21"/>
+<rectangle x1="-1.5113" y1="-1.8923" x2="1.3589" y2="-1.8669" layer="21"/>
+<rectangle x1="-1.5113" y1="-1.8669" x2="1.3843" y2="-1.8415" layer="21"/>
+<rectangle x1="-1.5113" y1="-1.8415" x2="1.4097" y2="-1.8161" layer="21"/>
+<rectangle x1="-1.5113" y1="-1.8161" x2="1.4351" y2="-1.7907" layer="21"/>
+<rectangle x1="-1.5113" y1="-1.7907" x2="1.4605" y2="-1.7653" layer="21"/>
+<rectangle x1="-1.4859" y1="-1.7653" x2="1.4859" y2="-1.7399" layer="21"/>
+<rectangle x1="-1.4859" y1="-1.7399" x2="1.4859" y2="-1.7145" layer="21"/>
+<rectangle x1="-1.4859" y1="-1.7145" x2="1.5113" y2="-1.6891" layer="21"/>
+<rectangle x1="-1.4859" y1="-1.6891" x2="1.5367" y2="-1.6637" layer="21"/>
+<rectangle x1="-1.4859" y1="-1.6637" x2="1.5367" y2="-1.6383" layer="21"/>
+<rectangle x1="-1.4605" y1="-1.6383" x2="1.5621" y2="-1.6129" layer="21"/>
+<rectangle x1="-1.4605" y1="-1.6129" x2="1.5621" y2="-1.5875" layer="21"/>
+<rectangle x1="-1.4605" y1="-1.5875" x2="1.5621" y2="-1.5621" layer="21"/>
+<rectangle x1="-1.4605" y1="-1.5621" x2="1.5875" y2="-1.5367" layer="21"/>
+<rectangle x1="-1.4605" y1="-1.5367" x2="1.5875" y2="-1.5113" layer="21"/>
+<rectangle x1="-1.4351" y1="-1.5113" x2="1.5875" y2="-1.4859" layer="21"/>
+<rectangle x1="-1.4351" y1="-1.4859" x2="1.5875" y2="-1.4605" layer="21"/>
+<rectangle x1="-1.4351" y1="-1.4605" x2="1.6129" y2="-1.4351" layer="21"/>
+<rectangle x1="-1.4351" y1="-1.4351" x2="1.6129" y2="-1.4097" layer="21"/>
+<rectangle x1="-1.4097" y1="-1.4097" x2="1.6129" y2="-1.3843" layer="21"/>
+<rectangle x1="-1.4097" y1="-1.3843" x2="1.6129" y2="-1.3589" layer="21"/>
+<rectangle x1="-1.4097" y1="-1.3589" x2="1.6129" y2="-1.3335" layer="21"/>
+<rectangle x1="-1.4097" y1="-1.3335" x2="1.6129" y2="-1.3081" layer="21"/>
+<rectangle x1="-1.4097" y1="-1.3081" x2="1.6129" y2="-1.2827" layer="21"/>
+<rectangle x1="-1.4097" y1="-1.2827" x2="1.5875" y2="-1.2573" layer="21"/>
+<rectangle x1="-1.4097" y1="-1.2573" x2="1.5875" y2="-1.2319" layer="21"/>
+<rectangle x1="-1.4097" y1="-1.2319" x2="1.5875" y2="-1.2065" layer="21"/>
+<rectangle x1="-1.3843" y1="-1.2065" x2="1.5875" y2="-1.1811" layer="21"/>
+<rectangle x1="-1.3843" y1="-1.1811" x2="1.5875" y2="-1.1557" layer="21"/>
+<rectangle x1="-1.3843" y1="-1.1557" x2="1.5875" y2="-1.1303" layer="21"/>
+<rectangle x1="-1.3843" y1="-1.1303" x2="1.5875" y2="-1.1049" layer="21"/>
+<rectangle x1="-1.3843" y1="-1.1049" x2="1.5621" y2="-1.0795" layer="21"/>
+<rectangle x1="-1.3843" y1="-1.0795" x2="1.5621" y2="-1.0541" layer="21"/>
+<rectangle x1="-1.3843" y1="-1.0541" x2="1.5621" y2="-1.0287" layer="21"/>
+<rectangle x1="-1.3843" y1="-1.0287" x2="1.5621" y2="-1.0033" layer="21"/>
+<rectangle x1="-1.3843" y1="-1.0033" x2="1.5621" y2="-0.9779" layer="21"/>
+<rectangle x1="-1.3843" y1="-0.9779" x2="1.5621" y2="-0.9525" layer="21"/>
+<rectangle x1="-1.3843" y1="-0.9525" x2="1.5621" y2="-0.9271" layer="21"/>
+<rectangle x1="-1.3843" y1="-0.9271" x2="1.5621" y2="-0.9017" layer="21"/>
+<rectangle x1="-1.3843" y1="-0.9017" x2="1.5621" y2="-0.8763" layer="21"/>
+<rectangle x1="-1.3843" y1="-0.8763" x2="1.5621" y2="-0.8509" layer="21"/>
+<rectangle x1="-1.4097" y1="-0.8509" x2="1.5621" y2="-0.8255" layer="21"/>
+<rectangle x1="-1.4097" y1="-0.8255" x2="1.5621" y2="-0.8001" layer="21"/>
+<rectangle x1="-1.4351" y1="-0.8001" x2="1.5621" y2="-0.7747" layer="21"/>
+<rectangle x1="-1.4351" y1="-0.7747" x2="1.5621" y2="-0.7493" layer="21"/>
+<rectangle x1="-1.4605" y1="-0.7493" x2="1.5621" y2="-0.7239" layer="21"/>
+<rectangle x1="-1.4859" y1="-0.7239" x2="1.5875" y2="-0.6985" layer="21"/>
+<rectangle x1="-1.5113" y1="-0.6985" x2="1.5875" y2="-0.6731" layer="21"/>
+<rectangle x1="-1.5113" y1="-0.6731" x2="1.5875" y2="-0.6477" layer="21"/>
+<rectangle x1="-1.5367" y1="-0.6477" x2="1.5875" y2="-0.6223" layer="21"/>
+<rectangle x1="-1.5621" y1="-0.6223" x2="1.6129" y2="-0.5969" layer="21"/>
+<rectangle x1="-1.5621" y1="-0.5969" x2="1.5875" y2="-0.5715" layer="21"/>
+<rectangle x1="-1.5875" y1="-0.5715" x2="1.5113" y2="-0.5461" layer="21"/>
+<rectangle x1="1.6129" y1="-0.5715" x2="1.8415" y2="-0.5461" layer="21"/>
+<rectangle x1="-1.6129" y1="-0.5461" x2="1.4859" y2="-0.5207" layer="21"/>
+<rectangle x1="1.5621" y1="-0.5461" x2="1.9431" y2="-0.5207" layer="21"/>
+<rectangle x1="-1.6383" y1="-0.5207" x2="1.4351" y2="-0.4953" layer="21"/>
+<rectangle x1="1.5113" y1="-0.5207" x2="1.9939" y2="-0.4953" layer="21"/>
+<rectangle x1="-1.6383" y1="-0.4953" x2="1.4097" y2="-0.4699" layer="21"/>
+<rectangle x1="1.4859" y1="-0.4953" x2="2.0193" y2="-0.4699" layer="21"/>
+<rectangle x1="-1.6637" y1="-0.4699" x2="1.3843" y2="-0.4445" layer="21"/>
+<rectangle x1="1.4605" y1="-0.4699" x2="2.0701" y2="-0.4445" layer="21"/>
+<rectangle x1="-1.6891" y1="-0.4445" x2="1.3843" y2="-0.4191" layer="21"/>
+<rectangle x1="1.4351" y1="-0.4445" x2="2.0955" y2="-0.4191" layer="21"/>
+<rectangle x1="-1.7145" y1="-0.4191" x2="1.3589" y2="-0.3937" layer="21"/>
+<rectangle x1="1.4097" y1="-0.4191" x2="2.1463" y2="-0.3937" layer="21"/>
+<rectangle x1="-1.7145" y1="-0.3937" x2="1.3335" y2="-0.3683" layer="21"/>
+<rectangle x1="1.4097" y1="-0.3937" x2="2.1717" y2="-0.3683" layer="21"/>
+<rectangle x1="-1.7399" y1="-0.3683" x2="1.3081" y2="-0.3429" layer="21"/>
+<rectangle x1="1.3843" y1="-0.3683" x2="2.2225" y2="-0.3429" layer="21"/>
+<rectangle x1="-2.1209" y1="-0.3429" x2="-2.0955" y2="-0.3175" layer="21"/>
+<rectangle x1="-1.7653" y1="-0.3429" x2="1.3081" y2="-0.3175" layer="21"/>
+<rectangle x1="1.3589" y1="-0.3429" x2="2.2479" y2="-0.3175" layer="21"/>
+<rectangle x1="-2.1209" y1="-0.3175" x2="-2.0701" y2="-0.2921" layer="21"/>
+<rectangle x1="-1.7653" y1="-0.3175" x2="1.2827" y2="-0.2921" layer="21"/>
+<rectangle x1="1.3589" y1="-0.3175" x2="2.2733" y2="-0.2921" layer="21"/>
+<rectangle x1="-2.1209" y1="-0.2921" x2="-2.0447" y2="-0.2667" layer="21"/>
+<rectangle x1="-1.7907" y1="-0.2921" x2="1.2827" y2="-0.2667" layer="21"/>
+<rectangle x1="1.3335" y1="-0.2921" x2="2.2987" y2="-0.2667" layer="21"/>
+<rectangle x1="-2.1209" y1="-0.2667" x2="-2.0193" y2="-0.2413" layer="21"/>
+<rectangle x1="-1.8161" y1="-0.2667" x2="1.2573" y2="-0.2413" layer="21"/>
+<rectangle x1="1.3335" y1="-0.2667" x2="2.3241" y2="-0.2413" layer="21"/>
+<rectangle x1="-2.1209" y1="-0.2413" x2="-1.9939" y2="-0.2159" layer="21"/>
+<rectangle x1="-1.8161" y1="-0.2413" x2="1.2573" y2="-0.2159" layer="21"/>
+<rectangle x1="1.3081" y1="-0.2413" x2="2.3495" y2="-0.2159" layer="21"/>
+<rectangle x1="-2.1209" y1="-0.2159" x2="-1.9939" y2="-0.1905" layer="21"/>
+<rectangle x1="-1.8415" y1="-0.2159" x2="1.2573" y2="-0.1905" layer="21"/>
+<rectangle x1="1.3081" y1="-0.2159" x2="2.3749" y2="-0.1905" layer="21"/>
+<rectangle x1="-2.1209" y1="-0.1905" x2="-1.9685" y2="-0.1651" layer="21"/>
+<rectangle x1="-1.8415" y1="-0.1905" x2="1.2319" y2="-0.1651" layer="21"/>
+<rectangle x1="1.3081" y1="-0.1905" x2="2.3749" y2="-0.1651" layer="21"/>
+<rectangle x1="-2.1209" y1="-0.1651" x2="-1.9431" y2="-0.1397" layer="21"/>
+<rectangle x1="-1.8669" y1="-0.1651" x2="1.2319" y2="-0.1397" layer="21"/>
+<rectangle x1="1.2827" y1="-0.1651" x2="2.4003" y2="-0.1397" layer="21"/>
+<rectangle x1="-2.1209" y1="-0.1397" x2="-1.9431" y2="-0.1143" layer="21"/>
+<rectangle x1="-1.8669" y1="-0.1397" x2="1.2319" y2="-0.1143" layer="21"/>
+<rectangle x1="1.2827" y1="-0.1397" x2="2.4257" y2="-0.1143" layer="21"/>
+<rectangle x1="-2.1463" y1="-0.1143" x2="-1.9431" y2="-0.0889" layer="21"/>
+<rectangle x1="-1.8923" y1="-0.1143" x2="1.2319" y2="-0.0889" layer="21"/>
+<rectangle x1="1.2827" y1="-0.1143" x2="2.4511" y2="-0.0889" layer="21"/>
+<rectangle x1="-2.1463" y1="-0.0889" x2="-1.9177" y2="-0.0635" layer="21"/>
+<rectangle x1="-1.8923" y1="-0.0889" x2="1.2319" y2="-0.0635" layer="21"/>
+<rectangle x1="1.2827" y1="-0.0889" x2="2.4765" y2="-0.0635" layer="21"/>
+<rectangle x1="-2.6289" y1="-0.0635" x2="-2.6035" y2="-0.0381" layer="21"/>
+<rectangle x1="-2.1463" y1="-0.0635" x2="-1.9177" y2="-0.0381" layer="21"/>
+<rectangle x1="-1.8669" y1="-0.0635" x2="1.2319" y2="-0.0381" layer="21"/>
+<rectangle x1="1.2827" y1="-0.0635" x2="2.4765" y2="-0.0381" layer="21"/>
+<rectangle x1="-2.6543" y1="-0.0381" x2="-2.6035" y2="-0.0127" layer="21"/>
+<rectangle x1="-2.1463" y1="-0.0381" x2="-1.9177" y2="-0.0127" layer="21"/>
+<rectangle x1="-1.8669" y1="-0.0381" x2="1.2319" y2="-0.0127" layer="21"/>
+<rectangle x1="1.2827" y1="-0.0381" x2="2.5019" y2="-0.0127" layer="21"/>
+<rectangle x1="-2.6797" y1="-0.0127" x2="-2.5781" y2="0.0127" layer="21"/>
+<rectangle x1="-2.1463" y1="-0.0127" x2="-1.8923" y2="0.0127" layer="21"/>
+<rectangle x1="-1.8669" y1="-0.0127" x2="1.2319" y2="0.0127" layer="21"/>
+<rectangle x1="1.2827" y1="-0.0127" x2="2.5019" y2="0.0127" layer="21"/>
+<rectangle x1="-2.6797" y1="0.0127" x2="-2.5781" y2="0.0381" layer="21"/>
+<rectangle x1="-2.1463" y1="0.0127" x2="-1.8923" y2="0.0381" layer="21"/>
+<rectangle x1="-1.8415" y1="0.0127" x2="1.2319" y2="0.0381" layer="21"/>
+<rectangle x1="1.2827" y1="0.0127" x2="2.5273" y2="0.0381" layer="21"/>
+<rectangle x1="-2.7051" y1="0.0381" x2="-2.5781" y2="0.0635" layer="21"/>
+<rectangle x1="-2.1463" y1="0.0381" x2="-1.8923" y2="0.0635" layer="21"/>
+<rectangle x1="-1.8415" y1="0.0381" x2="1.2319" y2="0.0635" layer="21"/>
+<rectangle x1="1.2827" y1="0.0381" x2="2.5527" y2="0.0635" layer="21"/>
+<rectangle x1="-2.7051" y1="0.0635" x2="-2.5781" y2="0.0889" layer="21"/>
+<rectangle x1="-2.1463" y1="0.0635" x2="-1.8669" y2="0.0889" layer="21"/>
+<rectangle x1="-1.8161" y1="0.0635" x2="1.2319" y2="0.0889" layer="21"/>
+<rectangle x1="1.2827" y1="0.0635" x2="2.5527" y2="0.0889" layer="21"/>
+<rectangle x1="-2.7305" y1="0.0889" x2="-2.5781" y2="0.1143" layer="21"/>
+<rectangle x1="-2.1463" y1="0.0889" x2="-1.8669" y2="0.1143" layer="21"/>
+<rectangle x1="-1.8161" y1="0.0889" x2="1.2319" y2="0.1143" layer="21"/>
+<rectangle x1="1.2827" y1="0.0889" x2="2.5781" y2="0.1143" layer="21"/>
+<rectangle x1="-2.7305" y1="0.1143" x2="-2.5527" y2="0.1397" layer="21"/>
+<rectangle x1="-2.1463" y1="0.1143" x2="-1.8669" y2="0.1397" layer="21"/>
+<rectangle x1="-1.8161" y1="0.1143" x2="1.2573" y2="0.1397" layer="21"/>
+<rectangle x1="1.2827" y1="0.1143" x2="2.5781" y2="0.1397" layer="21"/>
+<rectangle x1="-2.7559" y1="0.1397" x2="-2.5527" y2="0.1651" layer="21"/>
+<rectangle x1="-2.2225" y1="0.1397" x2="-2.1717" y2="0.1651" layer="21"/>
+<rectangle x1="-2.1463" y1="0.1397" x2="-1.8415" y2="0.1651" layer="21"/>
+<rectangle x1="-1.8161" y1="0.1397" x2="1.2573" y2="0.1651" layer="21"/>
+<rectangle x1="1.2827" y1="0.1397" x2="2.6035" y2="0.1651" layer="21"/>
+<rectangle x1="-2.7559" y1="0.1651" x2="-2.5527" y2="0.1905" layer="21"/>
+<rectangle x1="-2.2479" y1="0.1651" x2="-2.1717" y2="0.1905" layer="21"/>
+<rectangle x1="-2.1463" y1="0.1651" x2="-1.8415" y2="0.1905" layer="21"/>
+<rectangle x1="-1.7907" y1="0.1651" x2="2.6035" y2="0.1905" layer="21"/>
+<rectangle x1="-2.7559" y1="0.1905" x2="-2.5273" y2="0.2159" layer="21"/>
+<rectangle x1="-2.2733" y1="0.1905" x2="-2.1717" y2="0.2159" layer="21"/>
+<rectangle x1="-2.1463" y1="0.1905" x2="-1.8161" y2="0.2159" layer="21"/>
+<rectangle x1="-1.7907" y1="0.1905" x2="2.6289" y2="0.2159" layer="21"/>
+<rectangle x1="-2.7559" y1="0.2159" x2="-2.5273" y2="0.2413" layer="21"/>
+<rectangle x1="-2.2987" y1="0.2159" x2="-2.1717" y2="0.2413" layer="21"/>
+<rectangle x1="-2.1463" y1="0.2159" x2="-1.8161" y2="0.2413" layer="21"/>
+<rectangle x1="-1.7907" y1="0.2159" x2="2.6289" y2="0.2413" layer="21"/>
+<rectangle x1="-2.7559" y1="0.2413" x2="-2.5019" y2="0.2667" layer="21"/>
+<rectangle x1="-2.3241" y1="0.2413" x2="-2.1971" y2="0.2667" layer="21"/>
+<rectangle x1="-2.1463" y1="0.2413" x2="-1.8161" y2="0.2667" layer="21"/>
+<rectangle x1="-1.7653" y1="0.2413" x2="2.6543" y2="0.2667" layer="21"/>
+<rectangle x1="-2.7813" y1="0.2667" x2="-2.5019" y2="0.2921" layer="21"/>
+<rectangle x1="-2.3495" y1="0.2667" x2="-2.1971" y2="0.2921" layer="21"/>
+<rectangle x1="-2.1463" y1="0.2667" x2="-1.7907" y2="0.2921" layer="21"/>
+<rectangle x1="-1.7653" y1="0.2667" x2="2.6543" y2="0.2921" layer="21"/>
+<rectangle x1="-2.7813" y1="0.2921" x2="-2.5019" y2="0.3175" layer="21"/>
+<rectangle x1="-2.4003" y1="0.2921" x2="-2.1971" y2="0.3175" layer="21"/>
+<rectangle x1="-2.1463" y1="0.2921" x2="-1.7907" y2="0.3175" layer="21"/>
+<rectangle x1="-1.7653" y1="0.2921" x2="2.6543" y2="0.3175" layer="21"/>
+<rectangle x1="-2.7813" y1="0.3175" x2="-2.4765" y2="0.3429" layer="21"/>
+<rectangle x1="-2.4257" y1="0.3175" x2="-2.1971" y2="0.3429" layer="21"/>
+<rectangle x1="-2.1463" y1="0.3175" x2="-1.7907" y2="0.3429" layer="21"/>
+<rectangle x1="-1.7653" y1="0.3175" x2="2.6797" y2="0.3429" layer="21"/>
+<rectangle x1="-2.7813" y1="0.3429" x2="-2.4511" y2="0.3683" layer="21"/>
+<rectangle x1="-2.4257" y1="0.3429" x2="-2.1971" y2="0.3683" layer="21"/>
+<rectangle x1="-2.1717" y1="0.3429" x2="-1.7907" y2="0.3683" layer="21"/>
+<rectangle x1="-1.7653" y1="0.3429" x2="2.6797" y2="0.3683" layer="21"/>
+<rectangle x1="-2.7813" y1="0.3683" x2="-2.1971" y2="0.3937" layer="21"/>
+<rectangle x1="-2.1717" y1="0.3683" x2="-1.7907" y2="0.3937" layer="21"/>
+<rectangle x1="-1.7399" y1="0.3683" x2="2.6797" y2="0.3937" layer="21"/>
+<rectangle x1="-2.7813" y1="0.3937" x2="-2.1971" y2="0.4191" layer="21"/>
+<rectangle x1="-2.1717" y1="0.3937" x2="-1.7653" y2="0.4191" layer="21"/>
+<rectangle x1="-1.7399" y1="0.3937" x2="2.7051" y2="0.4191" layer="21"/>
+<rectangle x1="-2.7813" y1="0.4191" x2="-2.5273" y2="0.4445" layer="21"/>
+<rectangle x1="-2.4765" y1="0.4191" x2="-2.1971" y2="0.4445" layer="21"/>
+<rectangle x1="-2.1717" y1="0.4191" x2="-1.7653" y2="0.4445" layer="21"/>
+<rectangle x1="-1.7399" y1="0.4191" x2="2.7051" y2="0.4445" layer="21"/>
+<rectangle x1="-2.7813" y1="0.4445" x2="-2.5527" y2="0.4699" layer="21"/>
+<rectangle x1="-2.5019" y1="0.4445" x2="-2.1971" y2="0.4699" layer="21"/>
+<rectangle x1="-2.1717" y1="0.4445" x2="-1.7653" y2="0.4699" layer="21"/>
+<rectangle x1="-1.7399" y1="0.4445" x2="2.7051" y2="0.4699" layer="21"/>
+<rectangle x1="-2.7813" y1="0.4699" x2="-2.5527" y2="0.4953" layer="21"/>
+<rectangle x1="-2.5273" y1="0.4699" x2="-2.1971" y2="0.4953" layer="21"/>
+<rectangle x1="-2.1717" y1="0.4699" x2="-1.7653" y2="0.4953" layer="21"/>
+<rectangle x1="-1.7399" y1="0.4699" x2="2.7051" y2="0.4953" layer="21"/>
+<rectangle x1="-2.7813" y1="0.4953" x2="-2.5781" y2="0.5207" layer="21"/>
+<rectangle x1="-2.5527" y1="0.4953" x2="-2.2225" y2="0.5207" layer="21"/>
+<rectangle x1="-2.1971" y1="0.4953" x2="-1.7653" y2="0.5207" layer="21"/>
+<rectangle x1="-1.7399" y1="0.4953" x2="2.7051" y2="0.5207" layer="21"/>
+<rectangle x1="-2.7813" y1="0.5207" x2="-2.6035" y2="0.5461" layer="21"/>
+<rectangle x1="-2.5781" y1="0.5207" x2="-2.2225" y2="0.5461" layer="21"/>
+<rectangle x1="-2.1971" y1="0.5207" x2="2.7305" y2="0.5461" layer="21"/>
+<rectangle x1="-2.7813" y1="0.5461" x2="-2.6289" y2="0.5715" layer="21"/>
+<rectangle x1="-2.6035" y1="0.5461" x2="-2.2225" y2="0.5715" layer="21"/>
+<rectangle x1="-2.1971" y1="0.5461" x2="2.7305" y2="0.5715" layer="21"/>
+<rectangle x1="-2.7813" y1="0.5715" x2="-2.6289" y2="0.5969" layer="21"/>
+<rectangle x1="-2.6035" y1="0.5715" x2="-2.2225" y2="0.5969" layer="21"/>
+<rectangle x1="-2.1971" y1="0.5715" x2="2.7305" y2="0.5969" layer="21"/>
+<rectangle x1="-2.7559" y1="0.5969" x2="2.7305" y2="0.6223" layer="21"/>
+<rectangle x1="-2.7559" y1="0.6223" x2="2.7559" y2="0.6477" layer="21"/>
+<rectangle x1="-2.7559" y1="0.6477" x2="2.7559" y2="0.6731" layer="21"/>
+<rectangle x1="-2.7559" y1="0.6731" x2="2.7559" y2="0.6985" layer="21"/>
+<rectangle x1="-2.7559" y1="0.6985" x2="2.7559" y2="0.7239" layer="21"/>
+<rectangle x1="-2.7559" y1="0.7239" x2="2.7559" y2="0.7493" layer="21"/>
+<rectangle x1="-2.7813" y1="0.7493" x2="2.7813" y2="0.7747" layer="21"/>
+<rectangle x1="-2.8067" y1="0.7747" x2="2.7813" y2="0.8001" layer="21"/>
+<rectangle x1="-2.8067" y1="0.8001" x2="2.7813" y2="0.8255" layer="21"/>
+<rectangle x1="-2.8321" y1="0.8255" x2="2.7813" y2="0.8509" layer="21"/>
+<rectangle x1="-2.8321" y1="0.8509" x2="2.8067" y2="0.8763" layer="21"/>
+<rectangle x1="-2.8575" y1="0.8763" x2="2.8067" y2="0.9017" layer="21"/>
+<rectangle x1="-2.8575" y1="0.9017" x2="2.8321" y2="0.9271" layer="21"/>
+<rectangle x1="-2.8829" y1="0.9271" x2="2.8321" y2="0.9525" layer="21"/>
+<rectangle x1="-2.8829" y1="0.9525" x2="2.8321" y2="0.9779" layer="21"/>
+<rectangle x1="-2.9083" y1="0.9779" x2="2.8575" y2="1.0033" layer="21"/>
+<rectangle x1="-2.9083" y1="1.0033" x2="2.8575" y2="1.0287" layer="21"/>
+<rectangle x1="-2.9083" y1="1.0287" x2="-2.3241" y2="1.0541" layer="21"/>
+<rectangle x1="-2.2987" y1="1.0287" x2="-1.2573" y2="1.0541" layer="21"/>
+<rectangle x1="-1.2319" y1="1.0287" x2="2.8829" y2="1.0541" layer="21"/>
+<rectangle x1="-2.9337" y1="1.0541" x2="-2.2987" y2="1.0795" layer="21"/>
+<rectangle x1="-2.2479" y1="1.0541" x2="-1.2065" y2="1.0795" layer="21"/>
+<rectangle x1="-1.1811" y1="1.0541" x2="2.8829" y2="1.0795" layer="21"/>
+<rectangle x1="-2.9337" y1="1.0795" x2="-2.2733" y2="1.1049" layer="21"/>
+<rectangle x1="-2.2225" y1="1.0795" x2="-1.1811" y2="1.1049" layer="21"/>
+<rectangle x1="-1.1049" y1="1.0795" x2="1.6129" y2="1.1049" layer="21"/>
+<rectangle x1="1.6891" y1="1.0795" x2="2.9083" y2="1.1049" layer="21"/>
+<rectangle x1="-2.9337" y1="1.1049" x2="-2.4257" y2="1.1303" layer="21"/>
+<rectangle x1="-2.4003" y1="1.1049" x2="-2.2479" y2="1.1303" layer="21"/>
+<rectangle x1="-2.1971" y1="1.1049" x2="-1.1303" y2="1.1303" layer="21"/>
+<rectangle x1="-1.0287" y1="1.1049" x2="1.5621" y2="1.1303" layer="21"/>
+<rectangle x1="1.7653" y1="1.1049" x2="2.9083" y2="1.1303" layer="21"/>
+<rectangle x1="-2.9591" y1="1.1303" x2="-2.4003" y2="1.1557" layer="21"/>
+<rectangle x1="-2.3749" y1="1.1303" x2="-2.2225" y2="1.1557" layer="21"/>
+<rectangle x1="-2.1717" y1="1.1303" x2="-1.0795" y2="1.1557" layer="21"/>
+<rectangle x1="-0.9271" y1="1.1303" x2="1.5113" y2="1.1557" layer="21"/>
+<rectangle x1="1.7907" y1="1.1303" x2="2.9337" y2="1.1557" layer="21"/>
+<rectangle x1="-2.9591" y1="1.1557" x2="-2.3749" y2="1.1811" layer="21"/>
+<rectangle x1="-2.3495" y1="1.1557" x2="-2.1971" y2="1.1811" layer="21"/>
+<rectangle x1="-2.1463" y1="1.1557" x2="-0.9779" y2="1.1811" layer="21"/>
+<rectangle x1="-0.8763" y1="1.1557" x2="1.4859" y2="1.1811" layer="21"/>
+<rectangle x1="1.8161" y1="1.1557" x2="2.9337" y2="1.1811" layer="21"/>
+<rectangle x1="-2.9845" y1="1.1811" x2="-2.5019" y2="1.2065" layer="21"/>
+<rectangle x1="-2.4765" y1="1.1811" x2="-2.3495" y2="1.2065" layer="21"/>
+<rectangle x1="-2.3241" y1="1.1811" x2="-2.1717" y2="1.2065" layer="21"/>
+<rectangle x1="-2.1463" y1="1.1811" x2="-0.9271" y2="1.2065" layer="21"/>
+<rectangle x1="-0.8763" y1="1.1811" x2="1.4605" y2="1.2065" layer="21"/>
+<rectangle x1="1.8415" y1="1.1811" x2="2.9337" y2="1.2065" layer="21"/>
+<rectangle x1="-2.9845" y1="1.2065" x2="-2.4765" y2="1.2319" layer="21"/>
+<rectangle x1="-2.4511" y1="1.2065" x2="-2.3241" y2="1.2319" layer="21"/>
+<rectangle x1="-2.2987" y1="1.2065" x2="-0.9525" y2="1.2319" layer="21"/>
+<rectangle x1="-0.9017" y1="1.2065" x2="1.4605" y2="1.2319" layer="21"/>
+<rectangle x1="1.8669" y1="1.2065" x2="2.9591" y2="1.2319" layer="21"/>
+<rectangle x1="-3.0099" y1="1.2319" x2="-2.4511" y2="1.2573" layer="21"/>
+<rectangle x1="-2.4257" y1="1.2319" x2="-2.2987" y2="1.2573" layer="21"/>
+<rectangle x1="-2.2733" y1="1.2319" x2="-0.9779" y2="1.2573" layer="21"/>
+<rectangle x1="-0.9271" y1="1.2319" x2="0.1651" y2="1.2573" layer="21"/>
+<rectangle x1="0.1905" y1="1.2319" x2="1.4351" y2="1.2573" layer="21"/>
+<rectangle x1="1.8923" y1="1.2319" x2="2.9591" y2="1.2573" layer="21"/>
+<rectangle x1="-3.0099" y1="1.2573" x2="-2.4257" y2="1.2827" layer="21"/>
+<rectangle x1="-2.3749" y1="1.2573" x2="-2.2733" y2="1.2827" layer="21"/>
+<rectangle x1="-2.2479" y1="1.2573" x2="-1.0033" y2="1.2827" layer="21"/>
+<rectangle x1="-0.9525" y1="1.2573" x2="0.1651" y2="1.2827" layer="21"/>
+<rectangle x1="0.1905" y1="1.2573" x2="1.4351" y2="1.2827" layer="21"/>
+<rectangle x1="1.8923" y1="1.2573" x2="2.9591" y2="1.2827" layer="21"/>
+<rectangle x1="-3.0353" y1="1.2827" x2="-2.4003" y2="1.3081" layer="21"/>
+<rectangle x1="-2.3495" y1="1.2827" x2="-1.0033" y2="1.3081" layer="21"/>
+<rectangle x1="-0.9779" y1="1.2827" x2="0.1397" y2="1.3081" layer="21"/>
+<rectangle x1="0.1905" y1="1.2827" x2="0.3175" y2="1.3081" layer="21"/>
+<rectangle x1="0.3429" y1="1.2827" x2="1.4097" y2="1.3081" layer="21"/>
+<rectangle x1="1.9177" y1="1.2827" x2="2.9845" y2="1.3081" layer="21"/>
+<rectangle x1="-3.0607" y1="1.3081" x2="-2.3749" y2="1.3335" layer="21"/>
+<rectangle x1="-2.3241" y1="1.3081" x2="-1.0287" y2="1.3335" layer="21"/>
+<rectangle x1="-1.0033" y1="1.3081" x2="0.1397" y2="1.3335" layer="21"/>
+<rectangle x1="0.1905" y1="1.3081" x2="0.2921" y2="1.3335" layer="21"/>
+<rectangle x1="0.3429" y1="1.3081" x2="0.4191" y2="1.3335" layer="21"/>
+<rectangle x1="0.4445" y1="1.3081" x2="0.5969" y2="1.3335" layer="21"/>
+<rectangle x1="0.6477" y1="1.3081" x2="1.4097" y2="1.3335" layer="21"/>
+<rectangle x1="1.9177" y1="1.3081" x2="2.9845" y2="1.3335" layer="21"/>
+<rectangle x1="-3.0861" y1="1.3335" x2="-2.3495" y2="1.3589" layer="21"/>
+<rectangle x1="-2.3241" y1="1.3335" x2="0.1397" y2="1.3589" layer="21"/>
+<rectangle x1="0.1905" y1="1.3335" x2="0.2921" y2="1.3589" layer="21"/>
+<rectangle x1="0.3683" y1="1.3335" x2="0.4191" y2="1.3589" layer="21"/>
+<rectangle x1="0.4445" y1="1.3335" x2="0.5207" y2="1.3589" layer="21"/>
+<rectangle x1="0.5461" y1="1.3335" x2="0.5969" y2="1.3589" layer="21"/>
+<rectangle x1="0.6477" y1="1.3335" x2="0.6985" y2="1.3589" layer="21"/>
+<rectangle x1="0.7239" y1="1.3335" x2="1.4097" y2="1.3589" layer="21"/>
+<rectangle x1="1.9177" y1="1.3335" x2="2.9845" y2="1.3589" layer="21"/>
+<rectangle x1="-3.1115" y1="1.3589" x2="-2.3241" y2="1.3843" layer="21"/>
+<rectangle x1="-2.2987" y1="1.3589" x2="0.1143" y2="1.3843" layer="21"/>
+<rectangle x1="0.2159" y1="1.3589" x2="0.2921" y2="1.3843" layer="21"/>
+<rectangle x1="0.3683" y1="1.3589" x2="0.3937" y2="1.3843" layer="21"/>
+<rectangle x1="0.4699" y1="1.3589" x2="0.4953" y2="1.3843" layer="21"/>
+<rectangle x1="0.5461" y1="1.3589" x2="0.5969" y2="1.3843" layer="21"/>
+<rectangle x1="0.6477" y1="1.3589" x2="0.6985" y2="1.3843" layer="21"/>
+<rectangle x1="0.7493" y1="1.3589" x2="0.8255" y2="1.3843" layer="21"/>
+<rectangle x1="0.8509" y1="1.3589" x2="1.3843" y2="1.3843" layer="21"/>
+<rectangle x1="1.9177" y1="1.3589" x2="3.0099" y2="1.3843" layer="21"/>
+<rectangle x1="-3.1369" y1="1.3843" x2="-1.1049" y2="1.4097" layer="21"/>
+<rectangle x1="-1.0541" y1="1.3843" x2="0.1143" y2="1.4097" layer="21"/>
+<rectangle x1="0.2159" y1="1.3843" x2="0.2921" y2="1.4097" layer="21"/>
+<rectangle x1="0.7493" y1="1.3843" x2="0.8255" y2="1.4097" layer="21"/>
+<rectangle x1="0.8509" y1="1.3843" x2="1.3843" y2="1.4097" layer="21"/>
+<rectangle x1="1.9177" y1="1.3843" x2="3.0099" y2="1.4097" layer="21"/>
+<rectangle x1="-3.1623" y1="1.4097" x2="-1.1557" y2="1.4351" layer="21"/>
+<rectangle x1="-1.0287" y1="1.4097" x2="0.1143" y2="1.4351" layer="21"/>
+<rectangle x1="0.2159" y1="1.4097" x2="0.2921" y2="1.4351" layer="21"/>
+<rectangle x1="0.7493" y1="1.4097" x2="0.8255" y2="1.4351" layer="21"/>
+<rectangle x1="0.8763" y1="1.4097" x2="1.3843" y2="1.4351" layer="21"/>
+<rectangle x1="1.9177" y1="1.4097" x2="3.0353" y2="1.4351" layer="21"/>
+<rectangle x1="-3.1877" y1="1.4351" x2="-3.1369" y2="1.4605" layer="21"/>
+<rectangle x1="-3.1115" y1="1.4351" x2="-1.2065" y2="1.4605" layer="21"/>
+<rectangle x1="-1.0287" y1="1.4351" x2="0.1143" y2="1.4605" layer="21"/>
+<rectangle x1="0.2413" y1="1.4351" x2="0.2921" y2="1.4605" layer="21"/>
+<rectangle x1="0.7493" y1="1.4351" x2="0.8255" y2="1.4605" layer="21"/>
+<rectangle x1="0.8763" y1="1.4351" x2="1.3843" y2="1.4605" layer="21"/>
+<rectangle x1="1.9177" y1="1.4351" x2="3.0353" y2="1.4605" layer="21"/>
+<rectangle x1="-3.1877" y1="1.4605" x2="-3.1623" y2="1.4859" layer="21"/>
+<rectangle x1="-3.1115" y1="1.4605" x2="-3.0607" y2="1.4859" layer="21"/>
+<rectangle x1="-3.0353" y1="1.4605" x2="-2.9845" y2="1.4859" layer="21"/>
+<rectangle x1="-2.9591" y1="1.4605" x2="-1.2573" y2="1.4859" layer="21"/>
+<rectangle x1="-1.0033" y1="1.4605" x2="0.1143" y2="1.4859" layer="21"/>
+<rectangle x1="0.2413" y1="1.4605" x2="0.2921" y2="1.4859" layer="21"/>
+<rectangle x1="0.7493" y1="1.4605" x2="0.8001" y2="1.4859" layer="21"/>
+<rectangle x1="0.8763" y1="1.4605" x2="1.3843" y2="1.4859" layer="21"/>
+<rectangle x1="1.9177" y1="1.4605" x2="3.0353" y2="1.4859" layer="21"/>
+<rectangle x1="-3.1877" y1="1.4859" x2="-3.1369" y2="1.5113" layer="21"/>
+<rectangle x1="-3.1115" y1="1.4859" x2="-3.0861" y2="1.5113" layer="21"/>
+<rectangle x1="-3.0353" y1="1.4859" x2="-3.0099" y2="1.5113" layer="21"/>
+<rectangle x1="-2.9591" y1="1.4859" x2="-2.9083" y2="1.5113" layer="21"/>
+<rectangle x1="-2.8575" y1="1.4859" x2="-2.8067" y2="1.5113" layer="21"/>
+<rectangle x1="-2.7813" y1="1.4859" x2="-2.6289" y2="1.5113" layer="21"/>
+<rectangle x1="-2.5781" y1="1.4859" x2="-1.3589" y2="1.5113" layer="21"/>
+<rectangle x1="-1.0033" y1="1.4859" x2="0.1143" y2="1.5113" layer="21"/>
+<rectangle x1="0.2667" y1="1.4859" x2="0.2921" y2="1.5113" layer="21"/>
+<rectangle x1="0.7493" y1="1.4859" x2="0.8001" y2="1.5113" layer="21"/>
+<rectangle x1="0.8763" y1="1.4859" x2="1.4097" y2="1.5113" layer="21"/>
+<rectangle x1="1.9177" y1="1.4859" x2="3.0353" y2="1.5113" layer="21"/>
+<rectangle x1="-3.1877" y1="1.5113" x2="-3.1623" y2="1.5367" layer="21"/>
+<rectangle x1="-2.8575" y1="1.5113" x2="-2.8321" y2="1.5367" layer="21"/>
+<rectangle x1="-2.7813" y1="1.5113" x2="-2.7559" y2="1.5367" layer="21"/>
+<rectangle x1="-2.7051" y1="1.5113" x2="-2.6797" y2="1.5367" layer="21"/>
+<rectangle x1="-2.5781" y1="1.5113" x2="-1.5875" y2="1.5367" layer="21"/>
+<rectangle x1="-1.0033" y1="1.5113" x2="0.1143" y2="1.5367" layer="21"/>
+<rectangle x1="0.8763" y1="1.5113" x2="1.4097" y2="1.5367" layer="21"/>
+<rectangle x1="1.9177" y1="1.5113" x2="3.0607" y2="1.5367" layer="21"/>
+<rectangle x1="-3.1369" y1="1.5367" x2="-3.0861" y2="1.5621" layer="21"/>
+<rectangle x1="-2.6289" y1="1.5367" x2="-1.7399" y2="1.5621" layer="21"/>
+<rectangle x1="-1.0033" y1="1.5367" x2="0.1143" y2="1.5621" layer="21"/>
+<rectangle x1="0.8509" y1="1.5367" x2="1.4351" y2="1.5621" layer="21"/>
+<rectangle x1="1.9177" y1="1.5367" x2="3.0607" y2="1.5621" layer="21"/>
+<rectangle x1="-3.0607" y1="1.5621" x2="-3.0353" y2="1.5875" layer="21"/>
+<rectangle x1="-2.6289" y1="1.5621" x2="-1.7907" y2="1.5875" layer="21"/>
+<rectangle x1="-0.9779" y1="1.5621" x2="0.1143" y2="1.5875" layer="21"/>
+<rectangle x1="0.8509" y1="1.5621" x2="1.4351" y2="1.5875" layer="21"/>
+<rectangle x1="1.9177" y1="1.5621" x2="3.0607" y2="1.5875" layer="21"/>
+<rectangle x1="-3.0607" y1="1.5875" x2="-2.9845" y2="1.6129" layer="21"/>
+<rectangle x1="-2.6289" y1="1.5875" x2="-1.8415" y2="1.6129" layer="21"/>
+<rectangle x1="-0.9779" y1="1.5875" x2="0.1143" y2="1.6129" layer="21"/>
+<rectangle x1="0.8255" y1="1.5875" x2="1.4351" y2="1.6129" layer="21"/>
+<rectangle x1="1.9177" y1="1.5875" x2="3.0607" y2="1.6129" layer="21"/>
+<rectangle x1="-3.0607" y1="1.6129" x2="-2.9845" y2="1.6383" layer="21"/>
+<rectangle x1="-2.6543" y1="1.6129" x2="-1.8669" y2="1.6383" layer="21"/>
+<rectangle x1="-0.9779" y1="1.6129" x2="0.1143" y2="1.6383" layer="21"/>
+<rectangle x1="0.8255" y1="1.6129" x2="1.4351" y2="1.6383" layer="21"/>
+<rectangle x1="1.9177" y1="1.6129" x2="3.0607" y2="1.6383" layer="21"/>
+<rectangle x1="-3.0607" y1="1.6383" x2="-2.9845" y2="1.6637" layer="21"/>
+<rectangle x1="-2.6543" y1="1.6383" x2="-1.8923" y2="1.6637" layer="21"/>
+<rectangle x1="-0.9779" y1="1.6383" x2="0.1397" y2="1.6637" layer="21"/>
+<rectangle x1="0.8255" y1="1.6383" x2="1.4605" y2="1.6637" layer="21"/>
+<rectangle x1="1.9177" y1="1.6383" x2="3.0861" y2="1.6637" layer="21"/>
+<rectangle x1="-3.0607" y1="1.6637" x2="-3.0099" y2="1.6891" layer="21"/>
+<rectangle x1="-2.6543" y1="1.6637" x2="-1.9177" y2="1.6891" layer="21"/>
+<rectangle x1="-0.9779" y1="1.6637" x2="0.1397" y2="1.6891" layer="21"/>
+<rectangle x1="0.8001" y1="1.6637" x2="1.4605" y2="1.6891" layer="21"/>
+<rectangle x1="1.9431" y1="1.6637" x2="3.0861" y2="1.6891" layer="21"/>
+<rectangle x1="-3.0607" y1="1.6891" x2="-3.0099" y2="1.7145" layer="21"/>
+<rectangle x1="-2.9845" y1="1.6891" x2="-2.9591" y2="1.7145" layer="21"/>
+<rectangle x1="-2.7051" y1="1.6891" x2="-1.9431" y2="1.7145" layer="21"/>
+<rectangle x1="-0.9779" y1="1.6891" x2="0.1397" y2="1.7145" layer="21"/>
+<rectangle x1="0.7747" y1="1.6891" x2="1.4605" y2="1.7145" layer="21"/>
+<rectangle x1="1.9431" y1="1.6891" x2="3.0861" y2="1.7145" layer="21"/>
+<rectangle x1="-3.0607" y1="1.7145" x2="-2.9591" y2="1.7399" layer="21"/>
+<rectangle x1="-2.7051" y1="1.7145" x2="-1.9939" y2="1.7399" layer="21"/>
+<rectangle x1="-0.9779" y1="1.7145" x2="0.1397" y2="1.7399" layer="21"/>
+<rectangle x1="0.7747" y1="1.7145" x2="1.4605" y2="1.7399" layer="21"/>
+<rectangle x1="1.9431" y1="1.7145" x2="3.0861" y2="1.7399" layer="21"/>
+<rectangle x1="-3.0607" y1="1.7399" x2="-2.9845" y2="1.7653" layer="21"/>
+<rectangle x1="-2.7051" y1="1.7399" x2="-2.0447" y2="1.7653" layer="21"/>
+<rectangle x1="-0.9779" y1="1.7399" x2="0.1651" y2="1.7653" layer="21"/>
+<rectangle x1="0.7747" y1="1.7399" x2="1.4605" y2="1.7653" layer="21"/>
+<rectangle x1="1.9431" y1="1.7399" x2="3.0861" y2="1.7653" layer="21"/>
+<rectangle x1="-3.0607" y1="1.7653" x2="-2.9845" y2="1.7907" layer="21"/>
+<rectangle x1="-2.7051" y1="1.7653" x2="-2.0701" y2="1.7907" layer="21"/>
+<rectangle x1="-0.9779" y1="1.7653" x2="0.1651" y2="1.7907" layer="21"/>
+<rectangle x1="0.7493" y1="1.7653" x2="1.4605" y2="1.7907" layer="21"/>
+<rectangle x1="1.9431" y1="1.7653" x2="3.0861" y2="1.7907" layer="21"/>
+<rectangle x1="-3.0353" y1="1.7907" x2="-2.9845" y2="1.8161" layer="21"/>
+<rectangle x1="-2.9591" y1="1.7907" x2="-2.9337" y2="1.8161" layer="21"/>
+<rectangle x1="-2.7559" y1="1.7907" x2="-2.0955" y2="1.8161" layer="21"/>
+<rectangle x1="-0.9779" y1="1.7907" x2="0.1651" y2="1.8161" layer="21"/>
+<rectangle x1="0.7493" y1="1.7907" x2="1.4605" y2="1.8161" layer="21"/>
+<rectangle x1="1.9685" y1="1.7907" x2="3.0861" y2="1.8161" layer="21"/>
+<rectangle x1="-3.0353" y1="1.8161" x2="-2.9337" y2="1.8415" layer="21"/>
+<rectangle x1="-2.7559" y1="1.8161" x2="-2.1209" y2="1.8415" layer="21"/>
+<rectangle x1="-0.9779" y1="1.8161" x2="0.1651" y2="1.8415" layer="21"/>
+<rectangle x1="0.7493" y1="1.8161" x2="1.4605" y2="1.8415" layer="21"/>
+<rectangle x1="1.9685" y1="1.8161" x2="3.0861" y2="1.8415" layer="21"/>
+<rectangle x1="-3.0353" y1="1.8415" x2="-2.9337" y2="1.8669" layer="21"/>
+<rectangle x1="-2.7559" y1="1.8415" x2="-2.1463" y2="1.8669" layer="21"/>
+<rectangle x1="-0.9779" y1="1.8415" x2="0.1651" y2="1.8669" layer="21"/>
+<rectangle x1="0.7239" y1="1.8415" x2="1.4605" y2="1.8669" layer="21"/>
+<rectangle x1="1.9685" y1="1.8415" x2="3.0861" y2="1.8669" layer="21"/>
+<rectangle x1="-3.0353" y1="1.8669" x2="-2.9591" y2="1.8923" layer="21"/>
+<rectangle x1="-2.8067" y1="1.8669" x2="-2.1717" y2="1.8923" layer="21"/>
+<rectangle x1="-0.9779" y1="1.8669" x2="0.1905" y2="1.8923" layer="21"/>
+<rectangle x1="0.7239" y1="1.8669" x2="1.4859" y2="1.8923" layer="21"/>
+<rectangle x1="1.9685" y1="1.8669" x2="2.1463" y2="1.8923" layer="21"/>
+<rectangle x1="2.1717" y1="1.8669" x2="3.0861" y2="1.8923" layer="21"/>
+<rectangle x1="-3.0353" y1="1.8923" x2="-2.9591" y2="1.9177" layer="21"/>
+<rectangle x1="-2.9337" y1="1.8923" x2="-2.8829" y2="1.9177" layer="21"/>
+<rectangle x1="-2.8067" y1="1.8923" x2="-2.1971" y2="1.9177" layer="21"/>
+<rectangle x1="-1.0033" y1="1.8923" x2="0.1905" y2="1.9177" layer="21"/>
+<rectangle x1="0.7239" y1="1.8923" x2="1.4859" y2="1.9177" layer="21"/>
+<rectangle x1="1.9939" y1="1.8923" x2="2.1463" y2="1.9177" layer="21"/>
+<rectangle x1="2.1971" y1="1.8923" x2="3.0861" y2="1.9177" layer="21"/>
+<rectangle x1="-3.0353" y1="1.9177" x2="-2.8829" y2="1.9431" layer="21"/>
+<rectangle x1="-2.8575" y1="1.9177" x2="-2.8321" y2="1.9431" layer="21"/>
+<rectangle x1="-2.8067" y1="1.9177" x2="-2.2479" y2="1.9431" layer="21"/>
+<rectangle x1="-1.0033" y1="1.9177" x2="0.1905" y2="1.9431" layer="21"/>
+<rectangle x1="0.7239" y1="1.9177" x2="1.4859" y2="1.9431" layer="21"/>
+<rectangle x1="1.9939" y1="1.9177" x2="2.1463" y2="1.9431" layer="21"/>
+<rectangle x1="2.2225" y1="1.9177" x2="3.0861" y2="1.9431" layer="21"/>
+<rectangle x1="-3.0353" y1="1.9431" x2="-2.8321" y2="1.9685" layer="21"/>
+<rectangle x1="-2.8067" y1="1.9431" x2="-2.2733" y2="1.9685" layer="21"/>
+<rectangle x1="-1.0033" y1="1.9431" x2="0.1905" y2="1.9685" layer="21"/>
+<rectangle x1="0.7239" y1="1.9431" x2="1.4859" y2="1.9685" layer="21"/>
+<rectangle x1="1.9939" y1="1.9431" x2="2.1463" y2="1.9685" layer="21"/>
+<rectangle x1="2.2225" y1="1.9431" x2="3.0861" y2="1.9685" layer="21"/>
+<rectangle x1="-3.0099" y1="1.9685" x2="-2.5781" y2="1.9939" layer="21"/>
+<rectangle x1="-2.5273" y1="1.9685" x2="-2.2987" y2="1.9939" layer="21"/>
+<rectangle x1="-1.0033" y1="1.9685" x2="0.1905" y2="1.9939" layer="21"/>
+<rectangle x1="0.7239" y1="1.9685" x2="1.4859" y2="1.9939" layer="21"/>
+<rectangle x1="2.0193" y1="1.9685" x2="2.1463" y2="1.9939" layer="21"/>
+<rectangle x1="2.2225" y1="1.9685" x2="3.0861" y2="1.9939" layer="21"/>
+<rectangle x1="-3.0099" y1="1.9939" x2="-2.6035" y2="2.0193" layer="21"/>
+<rectangle x1="-2.5019" y1="1.9939" x2="-2.3495" y2="2.0193" layer="21"/>
+<rectangle x1="-1.0033" y1="1.9939" x2="0.1905" y2="2.0193" layer="21"/>
+<rectangle x1="0.7239" y1="1.9939" x2="1.4859" y2="2.0193" layer="21"/>
+<rectangle x1="2.0193" y1="1.9939" x2="2.1463" y2="2.0193" layer="21"/>
+<rectangle x1="2.2479" y1="1.9939" x2="3.0861" y2="2.0193" layer="21"/>
+<rectangle x1="-3.0099" y1="2.0193" x2="-2.6035" y2="2.0447" layer="21"/>
+<rectangle x1="-2.5019" y1="2.0193" x2="-2.3749" y2="2.0447" layer="21"/>
+<rectangle x1="-1.0033" y1="2.0193" x2="0.1905" y2="2.0447" layer="21"/>
+<rectangle x1="0.7239" y1="2.0193" x2="1.4859" y2="2.0447" layer="21"/>
+<rectangle x1="2.0447" y1="2.0193" x2="2.1463" y2="2.0447" layer="21"/>
+<rectangle x1="2.2479" y1="2.0193" x2="2.9337" y2="2.0447" layer="21"/>
+<rectangle x1="2.9591" y1="2.0193" x2="3.0607" y2="2.0447" layer="21"/>
+<rectangle x1="-3.0099" y1="2.0447" x2="-2.5527" y2="2.0701" layer="21"/>
+<rectangle x1="-2.5273" y1="2.0447" x2="-2.4003" y2="2.0701" layer="21"/>
+<rectangle x1="-1.0033" y1="2.0447" x2="0.1905" y2="2.0701" layer="21"/>
+<rectangle x1="0.7239" y1="2.0447" x2="1.4859" y2="2.0701" layer="21"/>
+<rectangle x1="2.0701" y1="2.0447" x2="2.1463" y2="2.0701" layer="21"/>
+<rectangle x1="2.2479" y1="2.0447" x2="2.9337" y2="2.0701" layer="21"/>
+<rectangle x1="2.9591" y1="2.0447" x2="3.0607" y2="2.0701" layer="21"/>
+<rectangle x1="-3.0099" y1="2.0701" x2="-2.4511" y2="2.0955" layer="21"/>
+<rectangle x1="-1.0033" y1="2.0701" x2="0.1905" y2="2.0955" layer="21"/>
+<rectangle x1="0.7493" y1="2.0701" x2="1.4605" y2="2.0955" layer="21"/>
+<rectangle x1="2.0955" y1="2.0701" x2="2.1463" y2="2.0955" layer="21"/>
+<rectangle x1="2.2479" y1="2.0701" x2="2.9337" y2="2.0955" layer="21"/>
+<rectangle x1="2.9845" y1="2.0701" x2="3.0607" y2="2.0955" layer="21"/>
+<rectangle x1="-2.9845" y1="2.0955" x2="-2.4765" y2="2.1209" layer="21"/>
+<rectangle x1="-1.0033" y1="2.0955" x2="0.1651" y2="2.1209" layer="21"/>
+<rectangle x1="0.7493" y1="2.0955" x2="1.4605" y2="2.1209" layer="21"/>
+<rectangle x1="2.2479" y1="2.0955" x2="2.9337" y2="2.1209" layer="21"/>
+<rectangle x1="2.9845" y1="2.0955" x2="3.0607" y2="2.1209" layer="21"/>
+<rectangle x1="-2.9845" y1="2.1209" x2="-2.5273" y2="2.1463" layer="21"/>
+<rectangle x1="-1.0033" y1="2.1209" x2="0.1651" y2="2.1463" layer="21"/>
+<rectangle x1="0.7493" y1="2.1209" x2="1.4605" y2="2.1463" layer="21"/>
+<rectangle x1="2.2479" y1="2.1209" x2="2.4257" y2="2.1463" layer="21"/>
+<rectangle x1="2.4511" y1="2.1209" x2="2.7051" y2="2.1463" layer="21"/>
+<rectangle x1="2.7305" y1="2.1209" x2="2.9337" y2="2.1463" layer="21"/>
+<rectangle x1="2.9845" y1="2.1209" x2="3.0353" y2="2.1463" layer="21"/>
+<rectangle x1="-2.9845" y1="2.1463" x2="-2.5527" y2="2.1717" layer="21"/>
+<rectangle x1="-1.0033" y1="2.1463" x2="0.1651" y2="2.1717" layer="21"/>
+<rectangle x1="0.7493" y1="2.1463" x2="1.4605" y2="2.1717" layer="21"/>
+<rectangle x1="2.2479" y1="2.1463" x2="2.4257" y2="2.1717" layer="21"/>
+<rectangle x1="2.4765" y1="2.1463" x2="2.7051" y2="2.1717" layer="21"/>
+<rectangle x1="2.7559" y1="2.1463" x2="2.9083" y2="2.1717" layer="21"/>
+<rectangle x1="2.9845" y1="2.1463" x2="3.0353" y2="2.1717" layer="21"/>
+<rectangle x1="-2.9591" y1="2.1717" x2="-2.6035" y2="2.1971" layer="21"/>
+<rectangle x1="-1.0033" y1="2.1717" x2="0.1651" y2="2.1971" layer="21"/>
+<rectangle x1="0.7747" y1="2.1717" x2="1.4605" y2="2.1971" layer="21"/>
+<rectangle x1="2.2479" y1="2.1717" x2="2.4003" y2="2.1971" layer="21"/>
+<rectangle x1="2.4765" y1="2.1717" x2="2.7051" y2="2.1971" layer="21"/>
+<rectangle x1="2.7559" y1="2.1717" x2="2.9083" y2="2.1971" layer="21"/>
+<rectangle x1="2.9845" y1="2.1717" x2="3.0353" y2="2.1971" layer="21"/>
+<rectangle x1="-2.9591" y1="2.1971" x2="-2.6543" y2="2.2225" layer="21"/>
+<rectangle x1="-1.0033" y1="2.1971" x2="0.1397" y2="2.2225" layer="21"/>
+<rectangle x1="0.7747" y1="2.1971" x2="1.4351" y2="2.2225" layer="21"/>
+<rectangle x1="2.2479" y1="2.1971" x2="2.4003" y2="2.2225" layer="21"/>
+<rectangle x1="2.5019" y1="2.1971" x2="2.7051" y2="2.2225" layer="21"/>
+<rectangle x1="2.7559" y1="2.1971" x2="2.9083" y2="2.2225" layer="21"/>
+<rectangle x1="2.9845" y1="2.1971" x2="3.0099" y2="2.2225" layer="21"/>
+<rectangle x1="-2.9591" y1="2.2225" x2="-2.7051" y2="2.2479" layer="21"/>
+<rectangle x1="-1.0033" y1="2.2225" x2="0.1397" y2="2.2479" layer="21"/>
+<rectangle x1="0.7747" y1="2.2225" x2="1.4351" y2="2.2479" layer="21"/>
+<rectangle x1="2.2479" y1="2.2225" x2="2.3749" y2="2.2479" layer="21"/>
+<rectangle x1="2.5019" y1="2.2225" x2="2.7051" y2="2.2479" layer="21"/>
+<rectangle x1="2.7559" y1="2.2225" x2="2.8829" y2="2.2479" layer="21"/>
+<rectangle x1="-2.9337" y1="2.2479" x2="-2.7559" y2="2.2733" layer="21"/>
+<rectangle x1="-1.0033" y1="2.2479" x2="0.1397" y2="2.2733" layer="21"/>
+<rectangle x1="0.8001" y1="2.2479" x2="1.4351" y2="2.2733" layer="21"/>
+<rectangle x1="2.2479" y1="2.2479" x2="2.3495" y2="2.2733" layer="21"/>
+<rectangle x1="2.5019" y1="2.2479" x2="2.7051" y2="2.2733" layer="21"/>
+<rectangle x1="2.7813" y1="2.2479" x2="2.8829" y2="2.2733" layer="21"/>
+<rectangle x1="-2.9337" y1="2.2733" x2="-2.8067" y2="2.2987" layer="21"/>
+<rectangle x1="-0.9779" y1="2.2733" x2="0.1143" y2="2.2987" layer="21"/>
+<rectangle x1="0.8001" y1="2.2733" x2="1.4097" y2="2.2987" layer="21"/>
+<rectangle x1="2.2225" y1="2.2733" x2="2.3241" y2="2.2987" layer="21"/>
+<rectangle x1="2.5019" y1="2.2733" x2="2.6797" y2="2.2987" layer="21"/>
+<rectangle x1="2.7813" y1="2.2733" x2="2.8575" y2="2.2987" layer="21"/>
+<rectangle x1="-2.9083" y1="2.2987" x2="-2.8829" y2="2.3241" layer="21"/>
+<rectangle x1="-0.9779" y1="2.2987" x2="0.1143" y2="2.3241" layer="21"/>
+<rectangle x1="0.8255" y1="2.2987" x2="1.4097" y2="2.3241" layer="21"/>
+<rectangle x1="2.2225" y1="2.2987" x2="2.2987" y2="2.3241" layer="21"/>
+<rectangle x1="2.5019" y1="2.2987" x2="2.6797" y2="2.3241" layer="21"/>
+<rectangle x1="2.7813" y1="2.2987" x2="2.8575" y2="2.3241" layer="21"/>
+<rectangle x1="-0.9779" y1="2.3241" x2="0.1143" y2="2.3495" layer="21"/>
+<rectangle x1="0.8255" y1="2.3241" x2="1.4097" y2="2.3495" layer="21"/>
+<rectangle x1="2.2225" y1="2.3241" x2="2.2479" y2="2.3495" layer="21"/>
+<rectangle x1="2.5019" y1="2.3241" x2="2.6543" y2="2.3495" layer="21"/>
+<rectangle x1="2.7813" y1="2.3241" x2="2.8321" y2="2.3495" layer="21"/>
+<rectangle x1="-0.9779" y1="2.3495" x2="0.1143" y2="2.3749" layer="21"/>
+<rectangle x1="0.8255" y1="2.3495" x2="1.3843" y2="2.3749" layer="21"/>
+<rectangle x1="2.5019" y1="2.3495" x2="2.6543" y2="2.3749" layer="21"/>
+<rectangle x1="2.7813" y1="2.3495" x2="2.8067" y2="2.3749" layer="21"/>
+<rectangle x1="-0.9779" y1="2.3749" x2="0.0889" y2="2.4003" layer="21"/>
+<rectangle x1="0.8509" y1="2.3749" x2="1.3843" y2="2.4003" layer="21"/>
+<rectangle x1="2.5019" y1="2.3749" x2="2.6289" y2="2.4003" layer="21"/>
+<rectangle x1="-0.9525" y1="2.4003" x2="0.0889" y2="2.4257" layer="21"/>
+<rectangle x1="0.8509" y1="2.4003" x2="1.3589" y2="2.4257" layer="21"/>
+<rectangle x1="2.5019" y1="2.4003" x2="2.6035" y2="2.4257" layer="21"/>
+<rectangle x1="-0.9525" y1="2.4257" x2="0.0889" y2="2.4511" layer="21"/>
+<rectangle x1="0.8509" y1="2.4257" x2="1.3335" y2="2.4511" layer="21"/>
+<rectangle x1="2.5019" y1="2.4257" x2="2.5781" y2="2.4511" layer="21"/>
+<rectangle x1="-0.9271" y1="2.4511" x2="0.0889" y2="2.4765" layer="21"/>
+<rectangle x1="0.8509" y1="2.4511" x2="1.3335" y2="2.4765" layer="21"/>
+<rectangle x1="2.4765" y1="2.4511" x2="2.5527" y2="2.4765" layer="21"/>
+<rectangle x1="-0.9271" y1="2.4765" x2="0.0889" y2="2.5019" layer="21"/>
+<rectangle x1="0.2413" y1="2.4765" x2="0.3175" y2="2.5019" layer="21"/>
+<rectangle x1="0.8509" y1="2.4765" x2="1.3335" y2="2.5019" layer="21"/>
+<rectangle x1="2.4765" y1="2.4765" x2="2.5019" y2="2.5019" layer="21"/>
+<rectangle x1="-0.9271" y1="2.5019" x2="0.0889" y2="2.5273" layer="21"/>
+<rectangle x1="0.2159" y1="2.5019" x2="0.2921" y2="2.5273" layer="21"/>
+<rectangle x1="0.6731" y1="2.5019" x2="0.6985" y2="2.5273" layer="21"/>
+<rectangle x1="0.8763" y1="2.5019" x2="1.3081" y2="2.5273" layer="21"/>
+<rectangle x1="-0.9017" y1="2.5273" x2="0.0889" y2="2.5527" layer="21"/>
+<rectangle x1="0.1905" y1="2.5273" x2="0.2921" y2="2.5527" layer="21"/>
+<rectangle x1="0.6731" y1="2.5273" x2="0.7493" y2="2.5527" layer="21"/>
+<rectangle x1="0.8763" y1="2.5273" x2="1.3081" y2="2.5527" layer="21"/>
+<rectangle x1="-0.9017" y1="2.5527" x2="0.0889" y2="2.5781" layer="21"/>
+<rectangle x1="0.1651" y1="2.5527" x2="0.2921" y2="2.5781" layer="21"/>
+<rectangle x1="0.6731" y1="2.5527" x2="0.7747" y2="2.5781" layer="21"/>
+<rectangle x1="0.8763" y1="2.5527" x2="1.2827" y2="2.5781" layer="21"/>
+<rectangle x1="-0.9017" y1="2.5781" x2="0.0889" y2="2.6035" layer="21"/>
+<rectangle x1="0.1651" y1="2.5781" x2="0.2667" y2="2.6035" layer="21"/>
+<rectangle x1="0.6731" y1="2.5781" x2="0.7747" y2="2.6035" layer="21"/>
+<rectangle x1="0.8763" y1="2.5781" x2="1.2827" y2="2.6035" layer="21"/>
+<rectangle x1="-0.8763" y1="2.6035" x2="0.0889" y2="2.6289" layer="21"/>
+<rectangle x1="0.1397" y1="2.6035" x2="0.2667" y2="2.6289" layer="21"/>
+<rectangle x1="0.6985" y1="2.6035" x2="0.8001" y2="2.6289" layer="21"/>
+<rectangle x1="0.8763" y1="2.6035" x2="1.2827" y2="2.6289" layer="21"/>
+<rectangle x1="-0.8763" y1="2.6289" x2="0.1143" y2="2.6543" layer="21"/>
+<rectangle x1="0.1397" y1="2.6289" x2="0.2667" y2="2.6543" layer="21"/>
+<rectangle x1="0.3429" y1="2.6289" x2="0.3683" y2="2.6543" layer="21"/>
+<rectangle x1="0.4191" y1="2.6289" x2="0.4699" y2="2.6543" layer="21"/>
+<rectangle x1="0.6223" y1="2.6289" x2="0.6477" y2="2.6543" layer="21"/>
+<rectangle x1="0.6985" y1="2.6289" x2="0.8001" y2="2.6543" layer="21"/>
+<rectangle x1="0.8763" y1="2.6289" x2="1.2827" y2="2.6543" layer="21"/>
+<rectangle x1="-0.8509" y1="2.6543" x2="0.1143" y2="2.6797" layer="21"/>
+<rectangle x1="0.1397" y1="2.6543" x2="0.2667" y2="2.6797" layer="21"/>
+<rectangle x1="0.3175" y1="2.6543" x2="0.3937" y2="2.6797" layer="21"/>
+<rectangle x1="0.4191" y1="2.6543" x2="0.4699" y2="2.6797" layer="21"/>
+<rectangle x1="0.5207" y1="2.6543" x2="0.5715" y2="2.6797" layer="21"/>
+<rectangle x1="0.6223" y1="2.6543" x2="0.6477" y2="2.6797" layer="21"/>
+<rectangle x1="0.6985" y1="2.6543" x2="0.8255" y2="2.6797" layer="21"/>
+<rectangle x1="0.8509" y1="2.6543" x2="1.2827" y2="2.6797" layer="21"/>
+<rectangle x1="-0.8509" y1="2.6797" x2="0.2667" y2="2.7051" layer="21"/>
+<rectangle x1="0.3175" y1="2.6797" x2="0.4953" y2="2.7051" layer="21"/>
+<rectangle x1="0.5207" y1="2.6797" x2="0.5715" y2="2.7051" layer="21"/>
+<rectangle x1="0.5969" y1="2.6797" x2="0.6731" y2="2.7051" layer="21"/>
+<rectangle x1="0.6985" y1="2.6797" x2="0.8255" y2="2.7051" layer="21"/>
+<rectangle x1="0.8509" y1="2.6797" x2="1.2827" y2="2.7051" layer="21"/>
+<rectangle x1="-0.8255" y1="2.7051" x2="1.2573" y2="2.7305" layer="21"/>
+<rectangle x1="-0.8255" y1="2.7305" x2="1.2573" y2="2.7559" layer="21"/>
+<rectangle x1="-0.8255" y1="2.7559" x2="1.2827" y2="2.7813" layer="21"/>
+<rectangle x1="-0.8001" y1="2.7813" x2="1.2827" y2="2.8067" layer="21"/>
+<rectangle x1="-0.8001" y1="2.8067" x2="1.2827" y2="2.8321" layer="21"/>
+<rectangle x1="-0.8001" y1="2.8321" x2="1.2827" y2="2.8575" layer="21"/>
+<rectangle x1="-0.8001" y1="2.8575" x2="1.2827" y2="2.8829" layer="21"/>
+<rectangle x1="-0.8001" y1="2.8829" x2="0.5207" y2="2.9083" layer="21"/>
+<rectangle x1="0.5461" y1="2.8829" x2="1.2827" y2="2.9083" layer="21"/>
+<rectangle x1="-0.7747" y1="2.9083" x2="0.4953" y2="2.9337" layer="21"/>
+<rectangle x1="0.5969" y1="2.9083" x2="1.2827" y2="2.9337" layer="21"/>
+<rectangle x1="-0.7747" y1="2.9337" x2="0.3937" y2="2.9591" layer="21"/>
+<rectangle x1="0.4191" y1="2.9337" x2="0.4953" y2="2.9591" layer="21"/>
+<rectangle x1="0.5969" y1="2.9337" x2="1.3081" y2="2.9591" layer="21"/>
+<rectangle x1="-0.7747" y1="2.9591" x2="0.3429" y2="2.9845" layer="21"/>
+<rectangle x1="0.4191" y1="2.9591" x2="0.4953" y2="2.9845" layer="21"/>
+<rectangle x1="0.5715" y1="2.9591" x2="0.9271" y2="2.9845" layer="21"/>
+<rectangle x1="0.9525" y1="2.9591" x2="1.3081" y2="2.9845" layer="21"/>
+<rectangle x1="-0.7747" y1="2.9845" x2="0.3429" y2="3.0099" layer="21"/>
+<rectangle x1="0.4191" y1="2.9845" x2="0.4953" y2="3.0099" layer="21"/>
+<rectangle x1="0.5715" y1="2.9845" x2="0.6477" y2="3.0099" layer="21"/>
+<rectangle x1="0.6731" y1="2.9845" x2="0.9271" y2="3.0099" layer="21"/>
+<rectangle x1="0.9779" y1="2.9845" x2="1.3081" y2="3.0099" layer="21"/>
+<rectangle x1="-0.7493" y1="3.0099" x2="0.3175" y2="3.0353" layer="21"/>
+<rectangle x1="0.4191" y1="3.0099" x2="0.4699" y2="3.0353" layer="21"/>
+<rectangle x1="0.5715" y1="3.0099" x2="0.6477" y2="3.0353" layer="21"/>
+<rectangle x1="0.6985" y1="3.0099" x2="0.9271" y2="3.0353" layer="21"/>
+<rectangle x1="1.0033" y1="3.0099" x2="1.3081" y2="3.0353" layer="21"/>
+<rectangle x1="-0.7493" y1="3.0353" x2="0.3175" y2="3.0607" layer="21"/>
+<rectangle x1="0.5715" y1="3.0353" x2="0.6223" y2="3.0607" layer="21"/>
+<rectangle x1="0.6985" y1="3.0353" x2="0.9271" y2="3.0607" layer="21"/>
+<rectangle x1="1.0287" y1="3.0353" x2="1.3081" y2="3.0607" layer="21"/>
+<rectangle x1="-0.7493" y1="3.0607" x2="0.2921" y2="3.0861" layer="21"/>
+<rectangle x1="0.6985" y1="3.0607" x2="0.9017" y2="3.0861" layer="21"/>
+<rectangle x1="1.0287" y1="3.0607" x2="1.3335" y2="3.0861" layer="21"/>
+<rectangle x1="-0.7493" y1="3.0861" x2="0.2921" y2="3.1115" layer="21"/>
+<rectangle x1="0.6985" y1="3.0861" x2="0.9017" y2="3.1115" layer="21"/>
+<rectangle x1="1.0541" y1="3.0861" x2="1.3335" y2="3.1115" layer="21"/>
+<rectangle x1="-0.7493" y1="3.1115" x2="0.2921" y2="3.1369" layer="21"/>
+<rectangle x1="0.7239" y1="3.1115" x2="0.9017" y2="3.1369" layer="21"/>
+<rectangle x1="1.0541" y1="3.1115" x2="1.3335" y2="3.1369" layer="21"/>
+<rectangle x1="-0.7493" y1="3.1369" x2="0.2921" y2="3.1623" layer="21"/>
+<rectangle x1="0.6985" y1="3.1369" x2="0.8763" y2="3.1623" layer="21"/>
+<rectangle x1="1.0795" y1="3.1369" x2="1.3335" y2="3.1623" layer="21"/>
+<rectangle x1="-0.7493" y1="3.1623" x2="0.3175" y2="3.1877" layer="21"/>
+<rectangle x1="0.6985" y1="3.1623" x2="0.8509" y2="3.1877" layer="21"/>
+<rectangle x1="1.0795" y1="3.1623" x2="1.3335" y2="3.1877" layer="21"/>
+<rectangle x1="-0.7493" y1="3.1877" x2="-0.1651" y2="3.2131" layer="21"/>
+<rectangle x1="-0.0635" y1="3.1877" x2="0.3429" y2="3.2131" layer="21"/>
+<rectangle x1="0.6985" y1="3.1877" x2="0.8509" y2="3.2131" layer="21"/>
+<rectangle x1="1.0795" y1="3.1877" x2="1.3335" y2="3.2131" layer="21"/>
+<rectangle x1="-0.7493" y1="3.2131" x2="-0.2159" y2="3.2385" layer="21"/>
+<rectangle x1="-0.1397" y1="3.2131" x2="-0.1143" y2="3.2385" layer="21"/>
+<rectangle x1="0.0127" y1="3.2131" x2="0.3683" y2="3.2385" layer="21"/>
+<rectangle x1="0.6477" y1="3.2131" x2="0.8255" y2="3.2385" layer="21"/>
+<rectangle x1="1.0795" y1="3.2131" x2="1.3335" y2="3.2385" layer="21"/>
+<rectangle x1="-0.7239" y1="3.2385" x2="-0.2413" y2="3.2639" layer="21"/>
+<rectangle x1="-0.1651" y1="3.2385" x2="-0.0889" y2="3.2639" layer="21"/>
+<rectangle x1="0.0635" y1="3.2385" x2="0.9525" y2="3.2639" layer="21"/>
+<rectangle x1="1.0795" y1="3.2385" x2="1.3335" y2="3.2639" layer="21"/>
+<rectangle x1="-0.7239" y1="3.2639" x2="-0.2667" y2="3.2893" layer="21"/>
+<rectangle x1="-0.1651" y1="3.2639" x2="-0.0889" y2="3.2893" layer="21"/>
+<rectangle x1="0.0889" y1="3.2639" x2="0.9779" y2="3.2893" layer="21"/>
+<rectangle x1="1.0795" y1="3.2639" x2="1.3335" y2="3.2893" layer="21"/>
+<rectangle x1="-0.7239" y1="3.2893" x2="-0.2921" y2="3.3147" layer="21"/>
+<rectangle x1="-0.1905" y1="3.2893" x2="-0.0889" y2="3.3147" layer="21"/>
+<rectangle x1="0.0889" y1="3.2893" x2="0.9779" y2="3.3147" layer="21"/>
+<rectangle x1="1.0795" y1="3.2893" x2="1.3335" y2="3.3147" layer="21"/>
+<rectangle x1="-0.7239" y1="3.3147" x2="-0.2921" y2="3.3401" layer="21"/>
+<rectangle x1="-0.1905" y1="3.3147" x2="-0.1143" y2="3.3401" layer="21"/>
+<rectangle x1="0.0127" y1="3.3147" x2="1.0033" y2="3.3401" layer="21"/>
+<rectangle x1="1.0795" y1="3.3147" x2="1.3335" y2="3.3401" layer="21"/>
+<rectangle x1="-0.7493" y1="3.3401" x2="-0.3175" y2="3.3655" layer="21"/>
+<rectangle x1="-0.1905" y1="3.3401" x2="-0.1143" y2="3.3655" layer="21"/>
+<rectangle x1="-0.0127" y1="3.3401" x2="0.3175" y2="3.3655" layer="21"/>
+<rectangle x1="0.3683" y1="3.3401" x2="0.6477" y2="3.3655" layer="21"/>
+<rectangle x1="0.6985" y1="3.3401" x2="1.0033" y2="3.3655" layer="21"/>
+<rectangle x1="1.0541" y1="3.3401" x2="1.3335" y2="3.3655" layer="21"/>
+<rectangle x1="-0.8001" y1="3.3655" x2="-0.3175" y2="3.3909" layer="21"/>
+<rectangle x1="-0.1905" y1="3.3655" x2="-0.1397" y2="3.3909" layer="21"/>
+<rectangle x1="-0.0889" y1="3.3655" x2="0.3429" y2="3.3909" layer="21"/>
+<rectangle x1="0.4699" y1="3.3655" x2="0.4953" y2="3.3909" layer="21"/>
+<rectangle x1="0.6985" y1="3.3655" x2="1.0033" y2="3.3909" layer="21"/>
+<rectangle x1="1.0541" y1="3.3655" x2="1.3335" y2="3.3909" layer="21"/>
+<rectangle x1="-0.8255" y1="3.3909" x2="-0.3175" y2="3.4163" layer="21"/>
+<rectangle x1="-0.1905" y1="3.3909" x2="0.3429" y2="3.4163" layer="21"/>
+<rectangle x1="0.6985" y1="3.3909" x2="0.8509" y2="3.4163" layer="21"/>
+<rectangle x1="0.9017" y1="3.3909" x2="1.0033" y2="3.4163" layer="21"/>
+<rectangle x1="1.0287" y1="3.3909" x2="1.3335" y2="3.4163" layer="21"/>
+<rectangle x1="-0.8509" y1="3.4163" x2="0.3683" y2="3.4417" layer="21"/>
+<rectangle x1="0.7239" y1="3.4163" x2="0.8763" y2="3.4417" layer="21"/>
+<rectangle x1="1.0287" y1="3.4163" x2="1.3335" y2="3.4417" layer="21"/>
+<rectangle x1="-0.8509" y1="3.4417" x2="0.3683" y2="3.4671" layer="21"/>
+<rectangle x1="0.7239" y1="3.4417" x2="0.9525" y2="3.4671" layer="21"/>
+<rectangle x1="1.1049" y1="3.4417" x2="1.3081" y2="3.4671" layer="21"/>
+<rectangle x1="-0.8763" y1="3.4671" x2="0.4191" y2="3.4925" layer="21"/>
+<rectangle x1="0.7493" y1="3.4671" x2="0.9271" y2="3.4925" layer="21"/>
+<rectangle x1="0.9779" y1="3.4671" x2="1.0287" y2="3.4925" layer="21"/>
+<rectangle x1="1.1303" y1="3.4671" x2="1.3335" y2="3.4925" layer="21"/>
+<rectangle x1="-0.8763" y1="3.4925" x2="0.4445" y2="3.5179" layer="21"/>
+<rectangle x1="0.9271" y1="3.4925" x2="1.0795" y2="3.5179" layer="21"/>
+<rectangle x1="1.2319" y1="3.4925" x2="1.2827" y2="3.5179" layer="21"/>
+<rectangle x1="1.3843" y1="3.4925" x2="1.4351" y2="3.5179" layer="21"/>
+<rectangle x1="-0.8763" y1="3.5179" x2="0.4699" y2="3.5433" layer="21"/>
+<rectangle x1="0.8763" y1="3.5179" x2="1.1303" y2="3.5433" layer="21"/>
+<rectangle x1="1.2573" y1="3.5179" x2="1.3843" y2="3.5433" layer="21"/>
+<rectangle x1="1.4605" y1="3.5179" x2="1.5367" y2="3.5433" layer="21"/>
+<rectangle x1="-0.8763" y1="3.5433" x2="0.5461" y2="3.5687" layer="21"/>
+<rectangle x1="0.8001" y1="3.5433" x2="1.0795" y2="3.5687" layer="21"/>
+<rectangle x1="1.1049" y1="3.5433" x2="1.1811" y2="3.5687" layer="21"/>
+<rectangle x1="1.2573" y1="3.5433" x2="1.4605" y2="3.5687" layer="21"/>
+<rectangle x1="1.5621" y1="3.5433" x2="1.6637" y2="3.5687" layer="21"/>
+<rectangle x1="-0.8763" y1="3.5687" x2="1.2319" y2="3.5941" layer="21"/>
+<rectangle x1="1.2573" y1="3.5687" x2="1.5367" y2="3.5941" layer="21"/>
+<rectangle x1="1.6891" y1="3.5687" x2="1.7653" y2="3.5941" layer="21"/>
+<rectangle x1="-0.8509" y1="3.5941" x2="1.1557" y2="3.6195" layer="21"/>
+<rectangle x1="1.1811" y1="3.5941" x2="1.6129" y2="3.6195" layer="21"/>
+<rectangle x1="1.8415" y1="3.5941" x2="1.8669" y2="3.6195" layer="21"/>
+<rectangle x1="-0.8255" y1="3.6195" x2="1.2065" y2="3.6449" layer="21"/>
+<rectangle x1="1.2319" y1="3.6195" x2="1.7145" y2="3.6449" layer="21"/>
+<rectangle x1="-0.7747" y1="3.6449" x2="1.3335" y2="3.6703" layer="21"/>
+<rectangle x1="1.3589" y1="3.6449" x2="1.7907" y2="3.6703" layer="21"/>
+<rectangle x1="-0.6731" y1="3.6703" x2="1.2827" y2="3.6957" layer="21"/>
+<rectangle x1="1.3081" y1="3.6703" x2="1.3335" y2="3.6957" layer="21"/>
+<rectangle x1="1.4097" y1="3.6703" x2="1.8669" y2="3.6957" layer="21"/>
+<rectangle x1="-0.5715" y1="3.6957" x2="1.3335" y2="3.7211" layer="21"/>
+<rectangle x1="1.3589" y1="3.6957" x2="1.3843" y2="3.7211" layer="21"/>
+<rectangle x1="1.4605" y1="3.6957" x2="1.9685" y2="3.7211" layer="21"/>
+<rectangle x1="-0.5461" y1="3.7211" x2="1.3589" y2="3.7465" layer="21"/>
+<rectangle x1="1.3843" y1="3.7211" x2="1.4097" y2="3.7465" layer="21"/>
+<rectangle x1="1.4859" y1="3.7211" x2="2.0447" y2="3.7465" layer="21"/>
+<rectangle x1="-0.5207" y1="3.7465" x2="1.3589" y2="3.7719" layer="21"/>
+<rectangle x1="1.4097" y1="3.7465" x2="1.4605" y2="3.7719" layer="21"/>
+<rectangle x1="1.5367" y1="3.7465" x2="2.1463" y2="3.7719" layer="21"/>
+<rectangle x1="-0.4953" y1="3.7719" x2="1.3589" y2="3.7973" layer="21"/>
+<rectangle x1="1.4605" y1="3.7719" x2="1.4859" y2="3.7973" layer="21"/>
+<rectangle x1="1.5875" y1="3.7719" x2="2.2225" y2="3.7973" layer="21"/>
+<rectangle x1="-0.4699" y1="3.7973" x2="1.3589" y2="3.8227" layer="21"/>
+<rectangle x1="1.4859" y1="3.7973" x2="1.5367" y2="3.8227" layer="21"/>
+<rectangle x1="1.6383" y1="3.7973" x2="2.3241" y2="3.8227" layer="21"/>
+<rectangle x1="-0.4191" y1="3.8227" x2="1.0033" y2="3.8481" layer="21"/>
+<rectangle x1="1.1557" y1="3.8227" x2="1.3335" y2="3.8481" layer="21"/>
+<rectangle x1="1.5367" y1="3.8227" x2="1.5875" y2="3.8481" layer="21"/>
+<rectangle x1="1.6891" y1="3.8227" x2="2.0447" y2="3.8481" layer="21"/>
+<rectangle x1="2.0955" y1="3.8227" x2="2.4003" y2="3.8481" layer="21"/>
+<rectangle x1="-0.3937" y1="3.8481" x2="0.9525" y2="3.8735" layer="21"/>
+<rectangle x1="1.2065" y1="3.8481" x2="1.3081" y2="3.8735" layer="21"/>
+<rectangle x1="1.5875" y1="3.8481" x2="1.6129" y2="3.8735" layer="21"/>
+<rectangle x1="1.7399" y1="3.8481" x2="2.0955" y2="3.8735" layer="21"/>
+<rectangle x1="2.3241" y1="3.8481" x2="2.4511" y2="3.8735" layer="21"/>
+<rectangle x1="-0.3429" y1="3.8735" x2="0.9271" y2="3.8989" layer="21"/>
+<rectangle x1="1.6129" y1="3.8735" x2="1.6637" y2="3.8989" layer="21"/>
+<rectangle x1="1.7653" y1="3.8735" x2="2.1463" y2="3.8989" layer="21"/>
+<rectangle x1="-0.2667" y1="3.8989" x2="0.1905" y2="3.9243" layer="21"/>
+<rectangle x1="0.3937" y1="3.8989" x2="0.8763" y2="3.9243" layer="21"/>
+<rectangle x1="1.6637" y1="3.8989" x2="1.6891" y2="3.9243" layer="21"/>
+<rectangle x1="1.8161" y1="3.8989" x2="2.1971" y2="3.9243" layer="21"/>
+<rectangle x1="-0.1905" y1="3.9243" x2="0.0889" y2="3.9497" layer="21"/>
+<rectangle x1="0.4953" y1="3.9243" x2="0.8255" y2="3.9497" layer="21"/>
+<rectangle x1="1.6891" y1="3.9243" x2="1.7399" y2="3.9497" layer="21"/>
+<rectangle x1="1.8669" y1="3.9243" x2="2.2479" y2="3.9497" layer="21"/>
+<rectangle x1="0.5715" y1="3.9497" x2="0.7493" y2="3.9751" layer="21"/>
+<rectangle x1="1.7399" y1="3.9497" x2="1.7653" y2="3.9751" layer="21"/>
+<rectangle x1="1.9177" y1="3.9497" x2="2.0193" y2="3.9751" layer="21"/>
+<rectangle x1="2.0447" y1="3.9497" x2="2.2987" y2="3.9751" layer="21"/>
+<rectangle x1="1.7653" y1="3.9751" x2="1.8161" y2="4.0005" layer="21"/>
+<rectangle x1="1.9685" y1="3.9751" x2="2.0701" y2="4.0005" layer="21"/>
+<rectangle x1="2.0955" y1="3.9751" x2="2.3495" y2="4.0005" layer="21"/>
+<rectangle x1="1.8161" y1="4.0005" x2="1.8415" y2="4.0259" layer="21"/>
+<rectangle x1="2.0193" y1="4.0005" x2="2.0955" y2="4.0259" layer="21"/>
+<rectangle x1="2.1717" y1="4.0005" x2="2.4003" y2="4.0259" layer="21"/>
+<rectangle x1="1.8415" y1="4.0259" x2="1.8923" y2="4.0513" layer="21"/>
+<rectangle x1="2.0447" y1="4.0259" x2="2.1463" y2="4.0513" layer="21"/>
+<rectangle x1="2.2225" y1="4.0259" x2="2.4511" y2="4.0513" layer="21"/>
+<rectangle x1="1.8923" y1="4.0513" x2="1.9177" y2="4.0767" layer="21"/>
+<rectangle x1="2.0955" y1="4.0513" x2="2.1971" y2="4.0767" layer="21"/>
+<rectangle x1="2.2987" y1="4.0513" x2="2.5019" y2="4.0767" layer="21"/>
+<rectangle x1="1.9177" y1="4.0767" x2="1.9685" y2="4.1021" layer="21"/>
+<rectangle x1="2.1463" y1="4.0767" x2="2.2225" y2="4.1021" layer="21"/>
+<rectangle x1="2.3495" y1="4.0767" x2="2.5527" y2="4.1021" layer="21"/>
+<rectangle x1="1.9685" y1="4.1021" x2="1.9939" y2="4.1275" layer="21"/>
+<rectangle x1="2.1971" y1="4.1021" x2="2.2733" y2="4.1275" layer="21"/>
+<rectangle x1="2.4257" y1="4.1021" x2="2.6035" y2="4.1275" layer="21"/>
+<rectangle x1="1.9939" y1="4.1275" x2="2.0447" y2="4.1529" layer="21"/>
+<rectangle x1="2.2479" y1="4.1275" x2="2.2987" y2="4.1529" layer="21"/>
+<rectangle x1="2.4765" y1="4.1275" x2="2.6543" y2="4.1529" layer="21"/>
+<rectangle x1="2.0447" y1="4.1529" x2="2.0955" y2="4.1783" layer="21"/>
+<rectangle x1="2.2733" y1="4.1529" x2="2.3495" y2="4.1783" layer="21"/>
+<rectangle x1="2.5273" y1="4.1529" x2="2.7051" y2="4.1783" layer="21"/>
+<rectangle x1="2.0701" y1="4.1783" x2="2.1209" y2="4.2037" layer="21"/>
+<rectangle x1="2.3241" y1="4.1783" x2="2.3495" y2="4.2037" layer="21"/>
+<rectangle x1="2.6035" y1="4.1783" x2="2.7559" y2="4.2037" layer="21"/>
+<rectangle x1="2.1209" y1="4.2037" x2="2.1717" y2="4.2291" layer="21"/>
+<rectangle x1="2.6797" y1="4.2037" x2="2.8067" y2="4.2291" layer="21"/>
+<rectangle x1="2.1463" y1="4.2291" x2="2.1971" y2="4.2545" layer="21"/>
+<rectangle x1="2.7305" y1="4.2291" x2="2.8575" y2="4.2545" layer="21"/>
+<rectangle x1="2.1971" y1="4.2545" x2="2.2479" y2="4.2799" layer="21"/>
+<rectangle x1="2.7813" y1="4.2545" x2="2.9083" y2="4.2799" layer="21"/>
+<rectangle x1="2.2225" y1="4.2799" x2="2.2733" y2="4.3053" layer="21"/>
+<rectangle x1="2.8575" y1="4.2799" x2="2.9591" y2="4.3053" layer="21"/>
+<rectangle x1="2.2733" y1="4.3053" x2="2.3241" y2="4.3307" layer="21"/>
+<rectangle x1="2.9083" y1="4.3053" x2="3.0099" y2="4.3307" layer="21"/>
+<rectangle x1="2.2987" y1="4.3307" x2="2.3495" y2="4.3561" layer="21"/>
+<rectangle x1="2.9845" y1="4.3307" x2="3.0607" y2="4.3561" layer="21"/>
+<rectangle x1="2.3495" y1="4.3561" x2="2.4003" y2="4.3815" layer="21"/>
+<rectangle x1="3.0353" y1="4.3561" x2="3.1115" y2="4.3815" layer="21"/>
+<rectangle x1="2.3749" y1="4.3815" x2="2.4257" y2="4.4069" layer="21"/>
+<rectangle x1="3.0861" y1="4.3815" x2="3.1623" y2="4.4069" layer="21"/>
+<rectangle x1="2.4257" y1="4.4069" x2="2.4765" y2="4.4323" layer="21"/>
+<rectangle x1="2.4765" y1="4.4323" x2="2.5019" y2="4.4577" layer="21"/>
+<rectangle x1="2.5019" y1="4.4577" x2="2.5273" y2="4.4831" layer="21"/>
+<rectangle x1="2.5527" y1="4.4831" x2="2.5781" y2="4.5085" layer="21"/>
+</package>
+</packages>
+</library>
+<library name="Adafruit 3.5in 480x320 FeatherWing">
+<description>Generated from &lt;b&gt;Adafruit 3.5in 480x320 FeatherWing.sch&lt;/b&gt;&lt;p&gt;
+by exp-lbrs.ulp</description>
+<packages>
+<package name="MICROBUILDER__0805MP">
+<description>&lt;b&gt;0805 MicroPitch&lt;/b&gt;</description>
+<wire x1="-0.51" y1="0.535" x2="0.51" y2="0.535" width="0.1016" layer="51"/>
+<wire x1="-0.51" y1="-0.535" x2="0.51" y2="-0.535" width="0.1016" layer="51"/>
+<wire x1="0" y1="0.508" x2="0" y2="-0.508" width="0.2032" layer="21"/>
+<rectangle x1="0.4064" y1="-0.65" x2="1" y2="0.65" layer="51"/>
+<rectangle x1="-1" y1="-0.65" x2="-0.4168" y2="0.65" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.5001" x2="0.1999" y2="0.5001" layer="35"/>
+<smd name="1" x="-1.016" y="0" dx="1.2" dy="1.3" layer="1"/>
+<smd name="2" x="1.016" y="0" dx="1.2" dy="1.3" layer="1"/>
+<text x="-1.5875" y="0.9525" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.5875" y="-1.27" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+</packages>
+</library>
+<library name="ATSAML22">
+<packages>
+<package name="TQFP64_10X10MC_MCH-L">
+<smd name="1" x="-5.5626" y="3.75" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="2" x="-5.5626" y="3.25" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="3" x="-5.5626" y="2.75" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="4" x="-5.5626" y="2.25" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="5" x="-5.5626" y="1.75" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="6" x="-5.5626" y="1.25" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="7" x="-5.5626" y="0.75" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="8" x="-5.5626" y="0.25" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="9" x="-5.5626" y="-0.25" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="10" x="-5.5626" y="-0.75" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="11" x="-5.5626" y="-1.25" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="12" x="-5.5626" y="-1.75" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="13" x="-5.5626" y="-2.25" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="14" x="-5.5626" y="-2.75" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="15" x="-5.5626" y="-3.25" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="16" x="-5.5626" y="-3.75" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="17" x="-3.75" y="-5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="18" x="-3.25" y="-5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="19" x="-2.75" y="-5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="20" x="-2.25" y="-5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="21" x="-1.75" y="-5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="22" x="-1.25" y="-5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="23" x="-0.75" y="-5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="24" x="-0.25" y="-5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="25" x="0.25" y="-5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="26" x="0.75" y="-5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="27" x="1.25" y="-5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="28" x="1.75" y="-5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="29" x="2.25" y="-5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="30" x="2.75" y="-5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="31" x="3.25" y="-5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="32" x="3.75" y="-5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="33" x="5.5626" y="-3.75" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="34" x="5.5626" y="-3.25" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="35" x="5.5626" y="-2.75" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="36" x="5.5626" y="-2.25" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="37" x="5.5626" y="-1.75" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="38" x="5.5626" y="-1.25" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="39" x="5.5626" y="-0.75" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="40" x="5.5626" y="-0.25" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="41" x="5.5626" y="0.25" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="42" x="5.5626" y="0.75" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="43" x="5.5626" y="1.25" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="44" x="5.5626" y="1.75" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="45" x="5.5626" y="2.25" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="46" x="5.5626" y="2.75" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="47" x="5.5626" y="3.25" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="48" x="5.5626" y="3.75" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="49" x="3.75" y="5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="50" x="3.25" y="5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="51" x="2.75" y="5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="52" x="2.25" y="5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="53" x="1.75" y="5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="54" x="1.25" y="5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="55" x="0.75" y="5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="56" x="0.25" y="5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="57" x="-0.25" y="5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="58" x="-0.75" y="5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="59" x="-1.25" y="5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="60" x="-1.75" y="5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="61" x="-2.25" y="5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="62" x="-2.75" y="5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="63" x="-3.25" y="5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="64" x="-3.75" y="5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<wire x1="-5.1308" y1="-5.1308" x2="-4.191" y2="-5.1308" width="0.1524" layer="21"/>
+<wire x1="5.1308" y1="-5.1308" x2="5.1308" y2="-4.191" width="0.1524" layer="21"/>
+<wire x1="5.1308" y1="5.1308" x2="4.191" y2="5.1308" width="0.1524" layer="21"/>
+<wire x1="-5.1308" y1="5.1308" x2="-5.1308" y2="4.191" width="0.1524" layer="21"/>
+<wire x1="-5.1308" y1="-4.191" x2="-5.1308" y2="-5.1308" width="0.1524" layer="21"/>
+<wire x1="4.191" y1="-5.1308" x2="5.1308" y2="-5.1308" width="0.1524" layer="21"/>
+<wire x1="5.1308" y1="4.191" x2="5.1308" y2="5.1308" width="0.1524" layer="21"/>
+<wire x1="-4.191" y1="5.1308" x2="-5.1308" y2="5.1308" width="0.1524" layer="21"/>
+<wire x1="3.6068" y1="5.0038" x2="3.8862" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="3.8862" y1="5.0038" x2="3.8862" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="3.8862" y1="5.9944" x2="3.6068" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="3.6068" y1="5.9944" x2="3.6068" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="3.0988" y1="5.0038" x2="3.3782" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="3.3782" y1="5.0038" x2="3.3782" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="3.3782" y1="5.9944" x2="3.0988" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="3.0988" y1="5.9944" x2="3.0988" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="2.6162" y1="5.0038" x2="2.8956" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="2.8956" y1="5.0038" x2="2.8956" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="2.8956" y1="5.9944" x2="2.6162" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="2.6162" y1="5.9944" x2="2.6162" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="2.1082" y1="5.0038" x2="2.3876" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="2.3876" y1="5.0038" x2="2.3876" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="2.3876" y1="5.9944" x2="2.1082" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="2.1082" y1="5.9944" x2="2.1082" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="1.6002" y1="5.0038" x2="1.8796" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="1.8796" y1="5.0038" x2="1.8796" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="1.8796" y1="5.9944" x2="1.6002" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="1.6002" y1="5.9944" x2="1.6002" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="1.1176" y1="5.0038" x2="1.397" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="1.397" y1="5.0038" x2="1.397" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="1.397" y1="5.9944" x2="1.1176" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="1.1176" y1="5.9944" x2="1.1176" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="0.6096" y1="5.0038" x2="0.889" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="0.889" y1="5.0038" x2="0.889" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="0.889" y1="5.9944" x2="0.6096" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="0.6096" y1="5.9944" x2="0.6096" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="0.1016" y1="5.0038" x2="0.381" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="0.381" y1="5.0038" x2="0.381" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="0.381" y1="5.9944" x2="0.1016" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="0.1016" y1="5.9944" x2="0.1016" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-0.381" y1="5.0038" x2="-0.1016" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-0.1016" y1="5.0038" x2="-0.1016" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="-0.1016" y1="5.9944" x2="-0.381" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="-0.381" y1="5.9944" x2="-0.381" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-0.889" y1="5.0038" x2="-0.6096" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-0.6096" y1="5.0038" x2="-0.6096" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="-0.6096" y1="5.9944" x2="-0.889" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="-0.889" y1="5.9944" x2="-0.889" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-1.397" y1="5.0038" x2="-1.1176" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-1.1176" y1="5.0038" x2="-1.1176" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="-1.1176" y1="5.9944" x2="-1.397" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="-1.397" y1="5.9944" x2="-1.397" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-1.8796" y1="5.0038" x2="-1.6002" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-1.6002" y1="5.0038" x2="-1.6002" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="-1.6002" y1="5.9944" x2="-1.8796" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="-1.8796" y1="5.9944" x2="-1.8796" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-2.3876" y1="5.0038" x2="-2.1082" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-2.1082" y1="5.0038" x2="-2.1082" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="-2.1082" y1="5.9944" x2="-2.3876" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="-2.3876" y1="5.9944" x2="-2.3876" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-2.8956" y1="5.0038" x2="-2.6162" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-2.6162" y1="5.0038" x2="-2.6162" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="-2.6162" y1="5.9944" x2="-2.8956" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="-2.8956" y1="5.9944" x2="-2.8956" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-3.3782" y1="5.0038" x2="-3.0988" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-3.0988" y1="5.0038" x2="-3.0988" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="-3.0988" y1="5.9944" x2="-3.3782" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="-3.3782" y1="5.9944" x2="-3.3782" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-3.8862" y1="5.0038" x2="-3.7338" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-3.7338" y1="5.0038" x2="-3.6068" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-3.6068" y1="5.0038" x2="-3.6068" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="-3.6068" y1="5.9944" x2="-3.8862" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="-3.8862" y1="5.9944" x2="-3.8862" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="3.6068" x2="-5.0038" y2="3.7338" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="3.7338" x2="-5.0038" y2="3.8862" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="3.8862" x2="-5.9944" y2="3.8862" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="3.8862" x2="-5.9944" y2="3.6068" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="3.6068" x2="-5.0038" y2="3.6068" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="3.0988" x2="-5.0038" y2="3.3782" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="3.3782" x2="-5.9944" y2="3.3782" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="3.3782" x2="-5.9944" y2="3.0988" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="3.0988" x2="-5.0038" y2="3.0988" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="2.6162" x2="-5.0038" y2="2.8956" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="2.8956" x2="-5.9944" y2="2.8956" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="2.8956" x2="-5.9944" y2="2.6162" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="2.6162" x2="-5.0038" y2="2.6162" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="2.1082" x2="-5.0038" y2="2.3876" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="2.3876" x2="-5.9944" y2="2.3876" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="2.3876" x2="-5.9944" y2="2.1082" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="2.1082" x2="-5.0038" y2="2.1082" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="1.6002" x2="-5.0038" y2="1.8796" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="1.8796" x2="-5.9944" y2="1.8796" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="1.8796" x2="-5.9944" y2="1.6002" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="1.6002" x2="-5.0038" y2="1.6002" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="1.1176" x2="-5.0038" y2="1.397" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="1.397" x2="-5.9944" y2="1.397" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="1.397" x2="-5.9944" y2="1.1176" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="1.1176" x2="-5.0038" y2="1.1176" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="0.6096" x2="-5.0038" y2="0.889" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="0.889" x2="-5.9944" y2="0.889" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="0.889" x2="-5.9944" y2="0.6096" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="0.6096" x2="-5.0038" y2="0.6096" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="0.1016" x2="-5.0038" y2="0.381" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="0.381" x2="-5.9944" y2="0.381" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="0.381" x2="-5.9944" y2="0.1016" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="0.1016" x2="-5.0038" y2="0.1016" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-0.381" x2="-5.0038" y2="-0.1016" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-0.1016" x2="-5.9944" y2="-0.1016" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="-0.1016" x2="-5.9944" y2="-0.381" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="-0.381" x2="-5.0038" y2="-0.381" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-0.889" x2="-5.0038" y2="-0.6096" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-0.6096" x2="-5.9944" y2="-0.6096" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="-0.6096" x2="-5.9944" y2="-0.889" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="-0.889" x2="-5.0038" y2="-0.889" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-1.397" x2="-5.0038" y2="-1.1176" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-1.1176" x2="-5.9944" y2="-1.1176" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="-1.1176" x2="-5.9944" y2="-1.397" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="-1.397" x2="-5.0038" y2="-1.397" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-1.8796" x2="-5.0038" y2="-1.6002" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-1.6002" x2="-5.9944" y2="-1.6002" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="-1.6002" x2="-5.9944" y2="-1.8796" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="-1.8796" x2="-5.0038" y2="-1.8796" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-2.3876" x2="-5.0038" y2="-2.1082" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-2.1082" x2="-5.9944" y2="-2.1082" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="-2.1082" x2="-5.9944" y2="-2.3876" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="-2.3876" x2="-5.0038" y2="-2.3876" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-2.8956" x2="-5.0038" y2="-2.6162" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-2.6162" x2="-5.9944" y2="-2.6162" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="-2.6162" x2="-5.9944" y2="-2.8956" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="-2.8956" x2="-5.0038" y2="-2.8956" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-3.3782" x2="-5.0038" y2="-3.0988" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-3.0988" x2="-5.9944" y2="-3.0988" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="-3.0988" x2="-5.9944" y2="-3.3782" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="-3.3782" x2="-5.0038" y2="-3.3782" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-3.8862" x2="-5.0038" y2="-3.6068" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-3.6068" x2="-5.9944" y2="-3.6068" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="-3.6068" x2="-5.9944" y2="-3.8862" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="-3.8862" x2="-5.0038" y2="-3.8862" width="0.1524" layer="51"/>
+<wire x1="-3.6068" y1="-5.0038" x2="-3.8862" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="-3.8862" y1="-5.0038" x2="-3.8862" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="-3.8862" y1="-5.9944" x2="-3.6068" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="-3.6068" y1="-5.9944" x2="-3.6068" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="-3.0988" y1="-5.0038" x2="-3.3782" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="-3.3782" y1="-5.0038" x2="-3.3782" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="-3.3782" y1="-5.9944" x2="-3.0988" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="-3.0988" y1="-5.9944" x2="-3.0988" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="-2.6162" y1="-5.0038" x2="-2.8956" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="-2.8956" y1="-5.0038" x2="-2.8956" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="-2.8956" y1="-5.9944" x2="-2.6162" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="-2.6162" y1="-5.9944" x2="-2.6162" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="-2.1082" y1="-5.0038" x2="-2.3876" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="-2.3876" y1="-5.0038" x2="-2.3876" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="-2.3876" y1="-5.9944" x2="-2.1082" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="-2.1082" y1="-5.9944" x2="-2.1082" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="-1.6002" y1="-5.0038" x2="-1.8796" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="-1.8796" y1="-5.0038" x2="-1.8796" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="-1.8796" y1="-5.9944" x2="-1.6002" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="-1.6002" y1="-5.9944" x2="-1.6002" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="-1.1176" y1="-5.0038" x2="-1.397" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="-1.397" y1="-5.0038" x2="-1.397" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="-1.397" y1="-5.9944" x2="-1.1176" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="-1.1176" y1="-5.9944" x2="-1.1176" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="-0.6096" y1="-5.0038" x2="-0.889" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="-0.889" y1="-5.0038" x2="-0.889" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="-0.889" y1="-5.9944" x2="-0.6096" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="-0.6096" y1="-5.9944" x2="-0.6096" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="-0.1016" y1="-5.0038" x2="-0.381" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="-0.381" y1="-5.0038" x2="-0.381" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="-0.381" y1="-5.9944" x2="-0.1016" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="-0.1016" y1="-5.9944" x2="-0.1016" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="0.381" y1="-5.0038" x2="0.1016" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="0.1016" y1="-5.0038" x2="0.1016" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="0.1016" y1="-5.9944" x2="0.381" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="0.381" y1="-5.9944" x2="0.381" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="0.889" y1="-5.0038" x2="0.6096" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="0.6096" y1="-5.0038" x2="0.6096" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="0.6096" y1="-5.9944" x2="0.889" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="0.889" y1="-5.9944" x2="0.889" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="1.397" y1="-5.0038" x2="1.1176" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="1.1176" y1="-5.0038" x2="1.1176" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="1.1176" y1="-5.9944" x2="1.397" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="1.397" y1="-5.9944" x2="1.397" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="1.8796" y1="-5.0038" x2="1.6002" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="1.6002" y1="-5.0038" x2="1.6002" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="1.6002" y1="-5.9944" x2="1.8796" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="1.8796" y1="-5.9944" x2="1.8796" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="2.3876" y1="-5.0038" x2="2.1082" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="2.1082" y1="-5.0038" x2="2.1082" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="2.1082" y1="-5.9944" x2="2.3876" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="2.3876" y1="-5.9944" x2="2.3876" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="2.8956" y1="-5.0038" x2="2.6162" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="2.6162" y1="-5.0038" x2="2.6162" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="2.6162" y1="-5.9944" x2="2.8956" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="2.8956" y1="-5.9944" x2="2.8956" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="3.3782" y1="-5.0038" x2="3.0988" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="3.0988" y1="-5.0038" x2="3.0988" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="3.0988" y1="-5.9944" x2="3.3782" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="3.3782" y1="-5.9944" x2="3.3782" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="3.8862" y1="-5.0038" x2="3.6068" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="3.6068" y1="-5.0038" x2="3.6068" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="3.6068" y1="-5.9944" x2="3.8862" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="3.8862" y1="-5.9944" x2="3.8862" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-3.6068" x2="5.0038" y2="-3.8862" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-3.8862" x2="5.9944" y2="-3.8862" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="-3.8862" x2="5.9944" y2="-3.6068" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="-3.6068" x2="5.0038" y2="-3.6068" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-3.0988" x2="5.0038" y2="-3.3782" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-3.3782" x2="5.9944" y2="-3.3782" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="-3.3782" x2="5.9944" y2="-3.0988" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="-3.0988" x2="5.0038" y2="-3.0988" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-2.6162" x2="5.0038" y2="-2.8956" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-2.8956" x2="5.9944" y2="-2.8956" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="-2.8956" x2="5.9944" y2="-2.6162" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="-2.6162" x2="5.0038" y2="-2.6162" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-2.1082" x2="5.0038" y2="-2.3876" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-2.3876" x2="5.9944" y2="-2.3876" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="-2.3876" x2="5.9944" y2="-2.1082" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="-2.1082" x2="5.0038" y2="-2.1082" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-1.6002" x2="5.0038" y2="-1.8796" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-1.8796" x2="5.9944" y2="-1.8796" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="-1.8796" x2="5.9944" y2="-1.6002" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="-1.6002" x2="5.0038" y2="-1.6002" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-1.1176" x2="5.0038" y2="-1.397" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-1.397" x2="5.9944" y2="-1.397" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="-1.397" x2="5.9944" y2="-1.1176" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="-1.1176" x2="5.0038" y2="-1.1176" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-0.6096" x2="5.0038" y2="-0.889" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-0.889" x2="5.9944" y2="-0.889" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="-0.889" x2="5.9944" y2="-0.6096" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="-0.6096" x2="5.0038" y2="-0.6096" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-0.1016" x2="5.0038" y2="-0.381" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-0.381" x2="5.9944" y2="-0.381" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="-0.381" x2="5.9944" y2="-0.1016" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="-0.1016" x2="5.0038" y2="-0.1016" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="0.381" x2="5.0038" y2="0.1016" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="0.1016" x2="5.9944" y2="0.1016" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="0.1016" x2="5.9944" y2="0.381" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="0.381" x2="5.0038" y2="0.381" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="0.889" x2="5.0038" y2="0.6096" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="0.6096" x2="5.9944" y2="0.6096" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="0.6096" x2="5.9944" y2="0.889" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="0.889" x2="5.0038" y2="0.889" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="1.397" x2="5.0038" y2="1.1176" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="1.1176" x2="5.9944" y2="1.1176" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="1.1176" x2="5.9944" y2="1.397" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="1.397" x2="5.0038" y2="1.397" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="1.8796" x2="5.0038" y2="1.6002" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="1.6002" x2="5.9944" y2="1.6002" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="1.6002" x2="5.9944" y2="1.8796" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="1.8796" x2="5.0038" y2="1.8796" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="2.3876" x2="5.0038" y2="2.1082" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="2.1082" x2="5.9944" y2="2.1082" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="2.1082" x2="5.9944" y2="2.3876" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="2.3876" x2="5.0038" y2="2.3876" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="2.8956" x2="5.0038" y2="2.6162" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="2.6162" x2="5.9944" y2="2.6162" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="2.6162" x2="5.9944" y2="2.8956" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="2.8956" x2="5.0038" y2="2.8956" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="3.3782" x2="5.0038" y2="3.0988" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="3.0988" x2="5.9944" y2="3.0988" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="3.0988" x2="5.9944" y2="3.3782" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="3.3782" x2="5.0038" y2="3.3782" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="3.8862" x2="5.0038" y2="3.6068" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="3.6068" x2="5.9944" y2="3.6068" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="3.6068" x2="5.9944" y2="3.8862" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="3.8862" x2="5.0038" y2="3.8862" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="3.7338" x2="-3.7338" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-5.0038" x2="5.0038" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-5.0038" x2="5.0038" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="5.0038" x2="-5.0038" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="5.0038" x2="-5.0038" y2="-5.0038" width="0.1524" layer="51"/>
+<text x="0" y="7.366" size="1.27" layer="25" font="vector" ratio="18" rot="SR0" align="center">&gt;Name</text>
+<text x="0" y="-7.112" size="1.27" layer="27" font="vector" ratio="18" rot="SR0" align="center">&gt;Value</text>
+<circle x="-6" y="6" radius="0.149575" width="0.5" layer="21"/>
+</package>
+</packages>
+</library>
+<library name="USB4085-GF-A_REVA">
+<packages>
+<package name="GCT_USB4085-GF-A_REVA">
+<text x="-4.2729" y="5.88031875" size="1.270190625" layer="25" ratio="13" rot="SR0">&gt;NAME</text>
+<text x="-4.171540625" y="-6.4739" size="1.271959375" layer="27" ratio="13" rot="SR0">&gt;VALUE</text>
+<wire x1="4.025" y1="3.795" x2="4.325" y2="4.095" width="0.001" layer="46" curve="-90"/>
+<wire x1="4.325" y1="4.095" x2="4.625" y2="3.795" width="0.001" layer="46" curve="-90"/>
+<wire x1="4.625" y1="3.795" x2="4.625" y2="2.295" width="0.001" layer="46"/>
+<wire x1="4.625" y1="2.295" x2="4.325" y2="1.995" width="0.001" layer="46" curve="-90"/>
+<wire x1="4.325" y1="1.995" x2="4.025" y2="2.295" width="0.001" layer="46" curve="-90"/>
+<wire x1="4.025" y1="2.295" x2="4.025" y2="3.795" width="0.001" layer="46"/>
+<wire x1="-4.625" y1="3.795" x2="-4.325" y2="4.095" width="0.001" layer="46" curve="-90"/>
+<wire x1="-4.325" y1="4.095" x2="-4.025" y2="3.795" width="0.001" layer="46" curve="-90"/>
+<wire x1="-4.025" y1="3.795" x2="-4.025" y2="2.295" width="0.001" layer="46"/>
+<wire x1="-4.025" y1="2.295" x2="-4.325" y2="1.995" width="0.001" layer="46" curve="-90"/>
+<wire x1="-4.325" y1="1.995" x2="-4.625" y2="2.295" width="0.001" layer="46" curve="-90"/>
+<wire x1="-4.625" y1="2.295" x2="-4.625" y2="3.795" width="0.001" layer="46"/>
+<wire x1="4.025" y1="0.065" x2="4.325" y2="0.365" width="0.001" layer="46" curve="-90"/>
+<wire x1="4.325" y1="0.365" x2="4.625" y2="0.065" width="0.001" layer="46" curve="-90"/>
+<wire x1="4.625" y1="0.065" x2="4.625" y2="-0.735" width="0.001" layer="46"/>
+<wire x1="4.625" y1="-0.735" x2="4.325" y2="-1.035" width="0.001" layer="46" curve="-90"/>
+<wire x1="4.325" y1="-1.035" x2="4.025" y2="-0.735" width="0.001" layer="46" curve="-90"/>
+<wire x1="4.025" y1="-0.735" x2="4.025" y2="0.065" width="0.001" layer="46"/>
+<wire x1="-4.625" y1="0.065" x2="-4.325" y2="0.365" width="0.001" layer="46" curve="-90"/>
+<wire x1="-4.325" y1="0.365" x2="-4.025" y2="0.065" width="0.001" layer="46" curve="-90"/>
+<wire x1="-4.025" y1="0.065" x2="-4.025" y2="-0.735" width="0.001" layer="46"/>
+<wire x1="-4.025" y1="-0.735" x2="-4.325" y2="-1.035" width="0.001" layer="46" curve="-90"/>
+<wire x1="-4.325" y1="-1.035" x2="-4.625" y2="-0.735" width="0.001" layer="46" curve="-90"/>
+<wire x1="-4.625" y1="-0.735" x2="-4.625" y2="0.065" width="0.001" layer="46"/>
+<wire x1="-5.3" y1="-2.075" x2="5.9" y2="-2.075" width="0.127" layer="51"/>
+<text x="5.70338125" y="-2.07623125" size="1.0166" layer="51">&gt;PCB Edge</text>
+<wire x1="-4.475" y1="4.585" x2="4.475" y2="4.585" width="0.1" layer="51"/>
+<wire x1="4.475" y1="4.585" x2="4.475" y2="-4.585" width="0.1" layer="51"/>
+<wire x1="4.475" y1="-4.585" x2="-4.475" y2="-4.585" width="0.1" layer="51"/>
+<wire x1="-4.475" y1="-4.585" x2="-4.475" y2="4.585" width="0.1" layer="51"/>
+<wire x1="-4.475" y1="4.585" x2="4.475" y2="4.585" width="0.2" layer="21"/>
+<wire x1="-4.475" y1="-1.725" x2="-4.475" y2="-2.075" width="0.2" layer="21"/>
+<wire x1="-4.475" y1="-2.075" x2="4.475" y2="-2.075" width="0.2" layer="21"/>
+<wire x1="4.475" y1="-2.075" x2="4.475" y2="-1.725" width="0.2" layer="21"/>
+<wire x1="-5.1" y1="4.825" x2="5.15" y2="4.825" width="0.05" layer="39"/>
+<wire x1="5.15" y1="4.825" x2="5.15" y2="-4.825" width="0.05" layer="39"/>
+<wire x1="5.15" y1="-4.825" x2="-5.1" y2="-4.825" width="0.05" layer="39"/>
+<wire x1="-5.1" y1="-4.825" x2="-5.1" y2="4.825" width="0.05" layer="39"/>
+<pad name="A1" x="-2.975" y="4.025" drill="0.4" diameter="0.65"/>
+<pad name="A4" x="-2.125" y="4.025" drill="0.4" diameter="0.65"/>
+<pad name="A5" x="-1.275" y="4.025" drill="0.4" diameter="0.65"/>
+<pad name="A6" x="-0.425" y="4.025" drill="0.4" diameter="0.65"/>
+<pad name="A7" x="0.425" y="4.025" drill="0.4" diameter="0.65"/>
+<pad name="A8" x="1.275" y="4.025" drill="0.4" diameter="0.65"/>
+<pad name="A9" x="2.125" y="4.025" drill="0.4" diameter="0.65"/>
+<pad name="A12" x="2.975" y="4.025" drill="0.4" diameter="0.65"/>
+<pad name="B1" x="2.975" y="2.675" drill="0.4" diameter="0.65" rot="R180"/>
+<pad name="B4" x="2.125" y="2.675" drill="0.4" diameter="0.65" rot="R180"/>
+<pad name="B5" x="1.275" y="2.675" drill="0.4" diameter="0.65" rot="R180"/>
+<pad name="B6" x="0.425" y="2.675" drill="0.4" diameter="0.65" rot="R180"/>
+<pad name="B7" x="-0.425" y="2.675" drill="0.4" diameter="0.65" rot="R180"/>
+<pad name="B8" x="-1.275" y="2.675" drill="0.4" diameter="0.65" rot="R180"/>
+<pad name="B9" x="-2.125" y="2.675" drill="0.4" diameter="0.65" rot="R180"/>
+<pad name="B12" x="-2.975" y="2.675" drill="0.4" diameter="0.65" rot="R180"/>
+<pad name="P1" x="-4.325" y="3.045" drill="0.6" diameter="1.108" shape="long" rot="R90"/>
+<pad name="P2" x="4.325" y="3.045" drill="0.6" diameter="1.108" shape="long" rot="R90"/>
+<pad name="P3" x="4.325" y="-0.335" drill="0.6" diameter="1.108" shape="long" rot="R90"/>
+<pad name="P4" x="-4.325" y="-0.335" drill="0.6" diameter="1.108" shape="long" rot="R90"/>
+</package>
+</packages>
+</library>
+</libraries>
+<attributes>
+<attribute name="REV" value="C"/>
+</attributes>
+<variantdefs>
+</variantdefs>
+<classes>
+<class number="0" name="default" width="0.2032" drill="0.254">
+</class>
+<class number="1" name="power" width="0.3048" drill="0.254">
+</class>
+<class number="2" name="gnd" width="0.3048" drill="0.254">
+</class>
+<class number="3" name="lcd" width="0.1524" drill="0.254">
+</class>
+</classes>
+<designrules name="oshpark-4layer *">
+<description language="en">&lt;b&gt;OSH Park Design Rules&lt;/b&gt;
+&lt;p&gt;
+Please make sure your boards conform to these design rules.
+&lt;/p&gt;
+&lt;p&gt;
+Note, that not all DRC settings must be set by the manufacturer. Several can be adjusted for the design, including those listed on our docs page here.
+&lt;a href=&quot;http://docs.oshpark.com/design-tools/eagle/design-rules-files/&quot;&gt;Adjustable Settings&lt;/a&gt;
+&lt;/p&gt;</description>
+<param name="layerSetup" value="(1+2*15+16)"/>
+<param name="mtCopper" value="0.035559375mm 0.01778125mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.01778125mm 0.035559375mm"/>
+<param name="mtIsolate" value="0.17018125mm 47mil 0.2007mm 0.1499mm 0.2007mm 0.1499mm 0.2007mm 0.1499mm 0.2007mm 0.1499mm 0.2007mm 0.1499mm 0.2007mm 0.1499mm 0.17018125mm"/>
+<param name="mdWireWire" value="5mil"/>
+<param name="mdWirePad" value="5mil"/>
+<param name="mdWireVia" value="5mil"/>
+<param name="mdPadPad" value="5mil"/>
+<param name="mdPadVia" value="5mil"/>
+<param name="mdViaVia" value="5mil"/>
+<param name="mdSmdPad" value="5mil"/>
+<param name="mdSmdVia" value="5mil"/>
+<param name="mdSmdSmd" value="5mil"/>
+<param name="mdViaViaSameLayer" value="8mil"/>
+<param name="mnLayersViaInSmd" value="2"/>
+<param name="mdCopperDimension" value="15mil"/>
+<param name="mdDrill" value="6mil"/>
+<param name="mdSmdStop" value="0mil"/>
+<param name="msWidth" value="5mil"/>
+<param name="msDrill" value="10mil"/>
+<param name="msMicroVia" value="10mil"/>
+<param name="msBlindViaRatio" value="0.5"/>
+<param name="rvPadTop" value="0.25"/>
+<param name="rvPadInner" value="0.25"/>
+<param name="rvPadBottom" value="0.25"/>
+<param name="rvViaOuter" value="0.25"/>
+<param name="rvViaInner" value="0.25"/>
+<param name="rvMicroViaOuter" value="0.25"/>
+<param name="rvMicroViaInner" value="0.25"/>
+<param name="rlMinPadTop" value="4mil"/>
+<param name="rlMaxPadTop" value="20mil"/>
+<param name="rlMinPadInner" value="4mil"/>
+<param name="rlMaxPadInner" value="20mil"/>
+<param name="rlMinPadBottom" value="4mil"/>
+<param name="rlMaxPadBottom" value="20mil"/>
+<param name="rlMinViaOuter" value="4mil"/>
+<param name="rlMaxViaOuter" value="20mil"/>
+<param name="rlMinViaInner" value="4mil"/>
+<param name="rlMaxViaInner" value="20mil"/>
+<param name="rlMinMicroViaOuter" value="4mil"/>
+<param name="rlMaxMicroViaOuter" value="20mil"/>
+<param name="rlMinMicroViaInner" value="4mil"/>
+<param name="rlMaxMicroViaInner" value="20mil"/>
+<param name="psTop" value="-1"/>
+<param name="psBottom" value="-1"/>
+<param name="psFirst" value="-1"/>
+<param name="psElongationLong" value="100"/>
+<param name="psElongationOffset" value="100"/>
+<param name="mvStopFrame" value="1"/>
+<param name="mvCreamFrame" value="0"/>
+<param name="mlMinStopFrame" value="1.5mil"/>
+<param name="mlMaxStopFrame" value="1.5mil"/>
+<param name="mlMinCreamFrame" value="0mil"/>
+<param name="mlMaxCreamFrame" value="0mil"/>
+<param name="mlViaStopLimit" value="12mil"/>
+<param name="srRoundness" value="0"/>
+<param name="srMinRoundness" value="0mil"/>
+<param name="srMaxRoundness" value="0mil"/>
+<param name="slThermalIsolate" value="10mil"/>
+<param name="slThermalsForVias" value="0"/>
+<param name="dpMaxLengthDifference" value="10mm"/>
+<param name="dpGapFactor" value="2.5"/>
+<param name="checkAngle" value="0"/>
+<param name="checkFont" value="1"/>
+<param name="checkRestrict" value="1"/>
+<param name="checkStop" value="0"/>
+<param name="checkValues" value="0"/>
+<param name="checkNames" value="1"/>
+<param name="checkWireStubs" value="1"/>
+<param name="checkPolygonWidth" value="0"/>
+<param name="useDiameter" value="13"/>
+<param name="maxErrors" value="50"/>
+</designrules>
+<autorouter>
+<pass name="Default">
+<param name="RoutingGrid" value="6.25mil"/>
+<param name="AutoGrid" value="1"/>
+<param name="Efforts" value="2"/>
+<param name="TopRouterVariant" value="1"/>
+<param name="tpViaShape" value="round"/>
+<param name="PrefDir.1" value="|"/>
+<param name="PrefDir.2" value="-"/>
+<param name="PrefDir.3" value="0"/>
+<param name="PrefDir.4" value="0"/>
+<param name="PrefDir.5" value="0"/>
+<param name="PrefDir.6" value="0"/>
+<param name="PrefDir.7" value="0"/>
+<param name="PrefDir.8" value="0"/>
+<param name="PrefDir.9" value="0"/>
+<param name="PrefDir.10" value="0"/>
+<param name="PrefDir.11" value="0"/>
+<param name="PrefDir.12" value="0"/>
+<param name="PrefDir.13" value="0"/>
+<param name="PrefDir.14" value="0"/>
+<param name="PrefDir.15" value="|"/>
+<param name="PrefDir.16" value="-"/>
+<param name="cfVia" value="8"/>
+<param name="cfNonPref" value="5"/>
+<param name="cfChangeDir" value="2"/>
+<param name="cfOrthStep" value="2"/>
+<param name="cfDiagStep" value="3"/>
+<param name="cfExtdStep" value="0"/>
+<param name="cfBonusStep" value="1"/>
+<param name="cfMalusStep" value="1"/>
+<param name="cfPadImpact" value="4"/>
+<param name="cfSmdImpact" value="4"/>
+<param name="cfBusImpact" value="0"/>
+<param name="cfHugging" value="3"/>
+<param name="cfAvoid" value="4"/>
+<param name="cfPolygon" value="10"/>
+<param name="cfBase.1" value="0"/>
+<param name="cfBase.2" value="1"/>
+<param name="cfBase.3" value="1"/>
+<param name="cfBase.4" value="1"/>
+<param name="cfBase.5" value="1"/>
+<param name="cfBase.6" value="1"/>
+<param name="cfBase.7" value="1"/>
+<param name="cfBase.8" value="1"/>
+<param name="cfBase.9" value="1"/>
+<param name="cfBase.10" value="1"/>
+<param name="cfBase.11" value="1"/>
+<param name="cfBase.12" value="1"/>
+<param name="cfBase.13" value="1"/>
+<param name="cfBase.14" value="1"/>
+<param name="cfBase.15" value="1"/>
+<param name="cfBase.16" value="0"/>
+<param name="mnVias" value="20"/>
+<param name="mnSegments" value="9999"/>
+<param name="mnExtdSteps" value="9999"/>
+<param name="mnRipupLevel" value="10"/>
+<param name="mnRipupSteps" value="100"/>
+<param name="mnRipupTotal" value="100"/>
+</pass>
+<pass name="Follow-me" refer="Default" active="yes">
+</pass>
+<pass name="Busses" refer="Default" active="yes">
+<param name="cfNonPref" value="4"/>
+<param name="cfBusImpact" value="4"/>
+<param name="cfHugging" value="0"/>
+<param name="mnVias" value="0"/>
+</pass>
+<pass name="Route" refer="Default" active="yes">
+</pass>
+<pass name="Optimize1" refer="Default" active="yes">
+<param name="cfVia" value="99"/>
+<param name="cfExtdStep" value="10"/>
+<param name="cfHugging" value="1"/>
+<param name="mnExtdSteps" value="1"/>
+<param name="mnRipupLevel" value="0"/>
+</pass>
+<pass name="Optimize2" refer="Optimize1" active="yes">
+<param name="cfNonPref" value="0"/>
+<param name="cfChangeDir" value="6"/>
+<param name="cfExtdStep" value="0"/>
+<param name="cfBonusStep" value="2"/>
+<param name="cfMalusStep" value="2"/>
+<param name="cfPadImpact" value="2"/>
+<param name="cfSmdImpact" value="2"/>
+<param name="cfHugging" value="0"/>
+</pass>
+<pass name="Optimize3" refer="Optimize2" active="yes">
+<param name="cfChangeDir" value="8"/>
+<param name="cfPadImpact" value="0"/>
+<param name="cfSmdImpact" value="0"/>
+</pass>
+<pass name="Optimize4" refer="Optimize3" active="yes">
+<param name="cfChangeDir" value="25"/>
+</pass>
+</autorouter>
+<elements>
+<element name="U$31" library="microbuilder" package="MOUNTINGHOLE_2.5_PLATED" value="MOUNTINGHOLE2.5" x="2.54" y="20.32" smashed="yes" rot="R270">
+<attribute name="BOM" value="EXCLUDE" x="2.54" y="20.32" size="1.778" layer="27" rot="R270" display="off"/>
+</element>
+<element name="U$32" library="microbuilder" package="MOUNTINGHOLE_2.5_PLATED" value="MOUNTINGHOLE2.5" x="2.54" y="2.54" smashed="yes" rot="R270">
+<attribute name="BOM" value="EXCLUDE" x="2.54" y="2.54" size="1.778" layer="27" rot="R270" display="off"/>
+</element>
+<element name="J2" library="microbuilder" package="JSTPH2" value="JSTPH" x="10.795" y="19.304" smashed="yes">
+<attribute name="NAME" x="10.795" y="19.6088" size="0.508" layer="25" font="vector" ratio="18" align="center"/>
+<attribute name="VALUE" x="8.5725" y="20.574" size="0.508" layer="27" font="vector" ratio="18" align="center"/>
+</element>
+<element name="LED" library="microbuilder" package="CHIPLED_0805_NOOUTLINE" value="RED" x="2.54" y="17.272" smashed="yes" rot="MR270">
+<attribute name="NAME" x="5.08" y="17.78" size="0.508" layer="26" font="vector" ratio="18" rot="MR0" align="center"/>
+<attribute name="VALUE" x="4.318" y="15.875" size="0.508" layer="28" font="vector" ratio="18" rot="MR0" align="center"/>
+</element>
+<element name="R7" library="microbuilder" package="0603-NO" value="1K" x="24.13" y="18.288" smashed="yes" rot="MR270">
+<attribute name="NAME" x="23.1902" y="17.3228" size="0.508" layer="26" font="vector" ratio="18" rot="MR90" align="center"/>
+<attribute name="VALUE" x="24.892" y="16.51" size="0.508" layer="28" font="vector" ratio="18" rot="MR270" align="center"/>
+</element>
+<element name="J3" library="microbuilder" package="2X05_1.27MM_BOX_NOPOSTS" value="2x5 0.05&quot; SWD" x="47.2694" y="11.684" smashed="yes" rot="R270">
+<attribute name="NAME" x="47.2214" y="11.68" size="0.508" layer="25" font="vector" ratio="18" rot="R270" align="center"/>
+<attribute name="VALUE" x="44.8694" y="17.784" size="0.508" layer="27" font="vector" ratio="18" rot="R270" align="center"/>
+</element>
+<element name="C1" library="microbuilder" package="_1206" value="10µF" x="13.716" y="5.842" smashed="yes" rot="MR270">
+<attribute name="NAME" x="15.367" y="5.842" size="0.508" layer="26" font="vector" ratio="18" rot="MR270" align="center"/>
+<attribute name="VALUE" x="14.478" y="3.81" size="0.508" layer="28" font="vector" ratio="18" rot="MR270" align="center"/>
+</element>
+<element name="C3" library="microbuilder" package="_1206" value="1uF" x="18.288" y="4.826" smashed="yes" rot="MR0">
+<attribute name="NAME" x="19.812" y="6.477" size="0.508" layer="26" font="vector" ratio="18" rot="MR180" align="center"/>
+<attribute name="VALUE" x="16.51" y="4.064" size="0.508" layer="28" font="vector" ratio="18" rot="MR0" align="center"/>
+</element>
+<element name="C2" library="microbuilder" package="_1206" value="10µF" x="21.971" y="8.636" smashed="yes" rot="MR90">
+<attribute name="NAME" x="23.622" y="8.636" size="0.508" layer="26" font="vector" ratio="18" rot="MR90" align="center"/>
+<attribute name="VALUE" x="21.209" y="10.668" size="0.508" layer="28" font="vector" ratio="18" rot="MR90" align="center"/>
+</element>
+<element name="U1" library="microbuilder" package="SOT23-5" value="AP2112-3.3" x="17.272" y="8.128" smashed="yes" rot="MR90">
+<attribute name="NAME" x="17.272" y="8.074" size="0.508" layer="26" font="vector" ratio="18" rot="MR90" align="center"/>
+<attribute name="VALUE" x="16.637" y="10.106" size="0.508" layer="28" font="vector" ratio="18" rot="MR90" align="center"/>
+</element>
+<element name="D1" library="microbuilder" package="SOD-123" value="MBR120" x="9.779" y="13.2715" smashed="yes" rot="MR0">
+<attribute name="NAME" x="9.779" y="12.0015" size="0.508" layer="26" font="vector" ratio="18" rot="MR0" align="center"/>
+<attribute name="VALUE" x="11.049" y="11.4935" size="0.508" layer="28" font="vector" ratio="18" rot="MR0" align="center"/>
+</element>
+<element name="Q1" library="microbuilder" package="SOT23-R" value="DMG341" x="10.922" y="16.256" smashed="yes" rot="MR0">
+<attribute name="NAME" x="10.922" y="16.129" size="0.508" layer="26" font="vector" ratio="18" rot="MR0" align="center"/>
+<attribute name="VALUE" x="9.144" y="15.621" size="0.508" layer="28" font="vector" ratio="18" rot="MR0" align="center"/>
+</element>
+<element name="R2" library="microbuilder" package="0603-NO" value="10K" x="17.018" y="10.922" smashed="yes" rot="MR180">
+<attribute name="NAME" x="17.018" y="11.811" size="0.508" layer="26" font="vector" ratio="18" rot="MR180" align="center"/>
+<attribute name="VALUE" x="18.796" y="11.684" size="0.508" layer="28" font="vector" ratio="18" rot="MR180" align="center"/>
+</element>
+<element name="R1" library="microbuilder" package="0603-NO" value="100K" x="14.478" y="11.3665" smashed="yes" rot="MR270">
+<attribute name="NAME" x="13.462" y="11.3665" size="0.508" layer="26" font="vector" ratio="18" rot="MR270" align="center"/>
+<attribute name="VALUE" x="15.24" y="9.5885" size="0.508" layer="28" font="vector" ratio="18" rot="MR270" align="center"/>
+</element>
+<element name="U2" library="microbuilder" package="SOT23-5" value="MCP73831T-2ACI/OT" x="19.05" y="14.732" smashed="yes" rot="MR180">
+<attribute name="NAME" x="18.996" y="14.732" size="0.508" layer="26" font="vector" ratio="18" rot="MR180" align="center"/>
+<attribute name="VALUE" x="21.028" y="15.367" size="0.508" layer="28" font="vector" ratio="18" rot="MR180" align="center"/>
+</element>
+<element name="CHG" library="microbuilder" package="CHIPLED_0805_NOOUTLINE" value="ORANGE" x="2.54" y="5.588" smashed="yes" rot="MR90">
+<attribute name="NAME" x="5.08" y="5.08" size="0.508" layer="26" font="vector" ratio="18" rot="MR180" align="center"/>
+<attribute name="VALUE" x="0.762" y="6.985" size="0.508" layer="28" font="vector" ratio="18" rot="MR180" align="center"/>
+</element>
+<element name="R3" library="microbuilder" package="0603-NO" value="1K" x="13.97" y="14.732" smashed="yes" rot="MR90">
+<attribute name="NAME" x="13.97" y="16.637" size="0.508" layer="26" font="vector" ratio="18" rot="MR0" align="center"/>
+<attribute name="VALUE" x="13.208" y="16.51" size="0.508" layer="28" font="vector" ratio="18" rot="MR90" align="center"/>
+</element>
+<element name="C4" library="microbuilder" package="_1206" value="10µF" x="19.1516" y="18.796" smashed="yes" rot="MR0">
+<attribute name="NAME" x="19.1516" y="17.145" size="0.508" layer="26" font="vector" ratio="18" rot="MR0" align="center"/>
+<attribute name="VALUE" x="17.1196" y="18.034" size="0.508" layer="28" font="vector" ratio="18" rot="MR0" align="center"/>
+</element>
+<element name="R4" library="microbuilder" package="0603-NO" value="10K" x="16.002" y="14.732" smashed="yes" rot="MR90">
+<attribute name="NAME" x="16.002" y="16.637" size="0.508" layer="26" font="vector" ratio="18" rot="MR0" align="center"/>
+<attribute name="VALUE" x="15.24" y="16.51" size="0.508" layer="28" font="vector" ratio="18" rot="MR90" align="center"/>
+</element>
+<element name="R6" library="microbuilder" package="0603-NO" value="10K" x="43.942" y="12.7" smashed="yes" rot="MR90">
+<attribute name="NAME" x="43.053" y="12.7" size="0.508" layer="26" font="vector" ratio="18" rot="MR90" align="center"/>
+<attribute name="VALUE" x="43.18" y="14.478" size="0.508" layer="28" font="vector" ratio="18" rot="MR90" align="center"/>
+</element>
+<element name="JP2" library="microbuilder" package="1X16_ROUND_MIN" value="" x="25.4" y="1.27" smashed="yes" rot="R180">
+<attribute name="VALUE" x="45.72" y="4.445" size="0.4064" layer="27" ratio="10" rot="R180"/>
+</element>
+<element name="JP4" library="microbuilder" package="1X12_ROUND_MIN" value="" x="30.48" y="21.59" smashed="yes">
+<attribute name="VALUE" x="15.24" y="18.415" size="0.4064" layer="27" ratio="10"/>
+</element>
+<element name="TP6" library="microbuilder" package="TESTPOINT_ROUND_2MM_NO" value="" x="49.276" y="13.97" smashed="yes" rot="MR0"/>
+<element name="TP7" library="microbuilder" package="TESTPOINT_ROUND_2MM_NO" value="" x="49.276" y="8.89" smashed="yes" rot="MR0"/>
+<element name="TP8" library="microbuilder" package="TESTPOINT_ROUND_2MM_NO" value="" x="49.276" y="16.51" smashed="yes" rot="MR0"/>
+<element name="TP1" library="microbuilder" package="TESTPOINT_ROUND_2MM_NO" value="" x="49.276" y="11.43" smashed="yes" rot="MR0"/>
+<element name="TP2" library="microbuilder" package="TESTPOINT_ROUND_2MM_NO" value="" x="49.276" y="6.35" smashed="yes" rot="MR0"/>
+<element name="C11" library="microbuilder" package="_1206" value="1uF" x="24.0792" y="15.1638" smashed="yes" rot="MR180">
+<attribute name="NAME" x="26.8732" y="15.1892" size="0.508" layer="26" font="vector" ratio="18" rot="MR90" align="center"/>
+<attribute name="VALUE" x="25.8572" y="15.9258" size="0.508" layer="28" font="vector" ratio="18" rot="MR180" align="center"/>
+</element>
+<element name="C5" library="microbuilder" package="0603-NO" value="0.1uF" x="24.0792" y="12.9794" smashed="yes" rot="MR180">
+<attribute name="NAME" x="24.0792" y="12.0904" size="0.508" layer="26" font="vector" ratio="18" rot="MR180" align="center"/>
+<attribute name="VALUE" x="25.8572" y="13.7414" size="0.508" layer="28" font="vector" ratio="18" rot="MR180" align="center"/>
+</element>
+<element name="C6" library="microbuilder" package="0603-NO" value="0.1uF" x="39.4462" y="15.8496" smashed="yes" rot="MR0">
+<attribute name="NAME" x="39.4462" y="14.9606" size="0.508" layer="26" font="vector" ratio="18" rot="MR0" align="center"/>
+<attribute name="VALUE" x="37.6682" y="15.0876" size="0.508" layer="28" font="vector" ratio="18" rot="MR0" align="center"/>
+</element>
+<element name="C7" library="microbuilder" package="0603-NO" value="0.1uF" x="41.656" y="10.3632" smashed="yes" rot="MR90">
+<attribute name="NAME" x="42.545" y="10.3632" size="0.508" layer="26" font="vector" ratio="18" rot="MR90" align="center"/>
+<attribute name="VALUE" x="40.894" y="12.1412" size="0.508" layer="28" font="vector" ratio="18" rot="MR90" align="center"/>
+</element>
+<element name="C8" library="microbuilder" package="0603-NO" value="0.1uF" x="38.608" y="3.048" smashed="yes" rot="MR180">
+<attribute name="NAME" x="37.592" y="3.937" size="0.508" layer="26" font="vector" ratio="18" rot="MR180" align="center"/>
+<attribute name="VALUE" x="40.386" y="3.81" size="0.508" layer="28" font="vector" ratio="18" rot="MR180" align="center"/>
+</element>
+<element name="C9" library="microbuilder" package="0603-NO" value="0.1uF" x="26.2636" y="5.1308" smashed="yes" rot="MR180">
+<attribute name="NAME" x="26.2636" y="6.0198" size="0.508" layer="26" font="vector" ratio="18" rot="MR180" align="center"/>
+<attribute name="VALUE" x="28.0416" y="5.8928" size="0.508" layer="28" font="vector" ratio="18" rot="MR180" align="center"/>
+</element>
+<element name="C10" library="microbuilder" package="_1206" value="1uF" x="42.418" y="4.572" smashed="yes" rot="MR270">
+<attribute name="NAME" x="40.767" y="4.7625" size="0.508" layer="26" font="vector" ratio="18" rot="MR270" align="center"/>
+<attribute name="VALUE" x="43.3705" y="5.5245" size="0.508" layer="28" font="vector" ratio="18" rot="MR270" align="center"/>
+</element>
+<element name="L1" library="Adafruit 3.5in 480x320 FeatherWing" package="MICROBUILDER__0805MP" value="10uH" x="39.3446" y="5.9944" smashed="yes" rot="MR315">
+<attribute name="NAME" x="39.285615625" y="4.48845" size="0.508" layer="26" font="vector" ratio="18" rot="MR315" align="center"/>
+<attribute name="VALUE" x="41.365159375" y="6.21890625" size="0.508" layer="28" font="vector" ratio="18" rot="MR315" align="center"/>
+</element>
+<element name="U$12" library="My Stuff" package="OSO_WORDMARK_ONELINE_350MIL_1000DPI" value="" x="9.906" y="22.098" smashed="yes" rot="MR0"/>
+<element name="R8" library="microbuilder" package="0603-NO" value="10K" x="43.942" y="16.51" smashed="yes" rot="MR180">
+<attribute name="NAME" x="43.942" y="17.399" size="0.508" layer="26" font="vector" ratio="18" rot="MR180" align="center"/>
+<attribute name="VALUE" x="45.72" y="17.272" size="0.508" layer="28" font="vector" ratio="18" rot="MR180" align="center"/>
+</element>
+<element name="U3" library="ATSAML22" package="TQFP64_10X10MC_MCH-L" value="ATSAML22J18A-AUT" x="33.02" y="10.414" smashed="yes" rot="MR135">
+<attribute name="NAME" x="32.89455" y="4.69745" size="0.508" layer="26" font="vector" ratio="18" rot="SMR0" align="center"/>
+<attribute name="VALUE" x="27.991059375" y="15.442940625" size="0.508" layer="28" font="vector" ratio="18" rot="SMR135" align="center"/>
+</element>
+<element name="C12" library="microbuilder" package="0603-NO" value="0.1uF" x="9.144" y="3.556" smashed="yes" rot="MR0">
+<attribute name="NAME" x="9.144" y="4.445" size="0.508" layer="26" font="vector" ratio="18" rot="MR0" align="center"/>
+<attribute name="VALUE" x="7.366" y="2.794" size="0.508" layer="28" font="vector" ratio="18" rot="MR0" align="center"/>
+</element>
+<element name="J1" library="USB4085-GF-A_REVA" package="GCT_USB4085-GF-A_REVA" value="USB4085-GF-A_REVA" x="1.778" y="11.43" smashed="yes" rot="R270">
+<attribute name="DESCRIPTION" value=" USB-C (USB TYPE-C) USB 2.0 Receptacle Connector 24 (16+8 Dummy) Position Through Hole, Right Angle, low cost, 3.46mm profile, 16 pin, horizontal, Top mount " x="1.778" y="11.43" size="1.778" layer="27" rot="R270" display="off"/>
+<attribute name="DIGI-KEY_PART_NUMBER" value="2073-USB4085-GF-ACT-ND" x="1.778" y="11.43" size="1.778" layer="27" rot="R270" display="off"/>
+<attribute name="MF" value="Global Connector Technology" x="1.778" y="11.43" size="1.778" layer="27" rot="R270" display="off"/>
+<attribute name="MP" value="USB4085-GF-A" x="1.778" y="11.43" size="1.778" layer="27" rot="R270" display="off"/>
+<attribute name="NAME" x="2.032" y="11.43" size="0.508" layer="25" font="vector" ratio="18" rot="SR90" align="center"/>
+<attribute name="PACKAGE" value="Package " x="1.778" y="11.43" size="1.778" layer="27" rot="R270" display="off"/>
+<attribute name="PURCHASE-URL" value="https://pricing.snapeda.com/search/part/USB4085-GF-A/?ref=eda" x="1.778" y="11.43" size="1.778" layer="27" rot="R270" display="off"/>
+<attribute name="VALUE" x="-4.6959" y="15.601540625" size="0.508" layer="27" font="vector" ratio="18" rot="SR270" align="center"/>
+</element>
+<element name="R5" library="microbuilder" package="0603-NO" value="5.1K" x="7.62" y="16.51" smashed="yes" rot="MR270">
+<attribute name="NAME" x="8.509" y="16.51" size="0.508" layer="26" font="vector" ratio="18" rot="MR270" align="center"/>
+<attribute name="VALUE" x="8.382" y="14.732" size="0.508" layer="28" font="vector" ratio="18" rot="MR270" align="center"/>
+</element>
+<element name="R9" library="microbuilder" package="0603-NO" value="5.1K" x="7.62" y="6.35" smashed="yes" rot="MR270">
+<attribute name="NAME" x="8.509" y="6.35" size="0.508" layer="26" font="vector" ratio="18" rot="MR270" align="center"/>
+<attribute name="VALUE" x="8.382" y="4.572" size="0.508" layer="28" font="vector" ratio="18" rot="MR270" align="center"/>
+</element>
+<element name="U$4" library="My Stuff" package="LCD_FEATHER_DISPLAY" value="LCD_FEATHER_DISPLAY" x="29.718" y="11.43" smashed="yes"/>
+<element name="U$6" library="My Stuff" package="OSO_WORDMARK_THREELINE_450MIL_1000DPI" value="" x="23.368" y="9.144" smashed="yes"/>
+<element name="U$9" library="My Stuff" package="OSO_BEAR_250X360MIL_1000DPI" value="" x="33.528" y="10.414" smashed="yes"/>
+<element name="RESET" library="microbuilder" package="TACTILE_3X6MM" value="" x="10.922" y="4.572" smashed="yes">
+<attribute name="NAME" x="10.927" y="7.25" size="1.016" layer="25" font="vector" ratio="18" align="center"/>
+<attribute name="VALUE" x="7.906" y="2.121" size="0.4064" layer="27" ratio="10"/>
+</element>
+</elements>
+<signals>
+<signal name="GND" class="2">
+<polygon width="0.254" layer="1">
+<vertex x="-0.254" y="22.86"/>
+<vertex x="-0.254" y="0"/>
+<vertex x="50.927" y="0"/>
+<vertex x="50.927" y="22.86"/>
+</polygon>
+<contactref element="J2" pad="1"/>
+<contactref element="LED" pad="C"/>
+<contactref element="J3" pad="3"/>
+<contactref element="J3" pad="5"/>
+<contactref element="U1" pad="2"/>
+<contactref element="C3" pad="2"/>
+<contactref element="C1" pad="2"/>
+<contactref element="C2" pad="2"/>
+<contactref element="R1" pad="1"/>
+<contactref element="C4" pad="2"/>
+<contactref element="R4" pad="2"/>
+<contactref element="U2" pad="2"/>
+<contactref element="JP2" pad="13"/>
+<contactref element="TP2" pad="P$1"/>
+<contactref element="C5" pad="1"/>
+<contactref element="C6" pad="1"/>
+<contactref element="C7" pad="1"/>
+<contactref element="C8" pad="1"/>
+<contactref element="C11" pad="1"/>
+<contactref element="C9" pad="1"/>
+<contactref element="C10" pad="2"/>
+<contactref element="U3" pad="22"/>
+<contactref element="U3" pad="7"/>
+<contactref element="U3" pad="33"/>
+<contactref element="U3" pad="47"/>
+<contactref element="U3" pad="54"/>
+<contactref element="C12" pad="2"/>
+<contactref element="J1" pad="P1"/>
+<contactref element="J1" pad="P3"/>
+<contactref element="J1" pad="P4"/>
+<contactref element="J1" pad="P2"/>
+<contactref element="J1" pad="A12"/>
+<contactref element="J1" pad="B1"/>
+<contactref element="J1" pad="A1"/>
+<contactref element="J1" pad="B12"/>
+<polygon width="0.254" layer="16">
+<vertex x="0" y="0"/>
+<vertex x="51.181" y="0"/>
+<vertex x="51.181" y="22.86"/>
+<vertex x="0" y="22.86"/>
+</polygon>
+<via x="15.6972" y="5.842" extent="1-16" drill="0.254"/>
+<via x="14.986" y="13.208" extent="1-16" drill="0.254"/>
+<via x="22.4536" y="13.8176" extent="1-16" drill="0.254"/>
+<wire x1="28.202765625" y1="13.463465625" x2="27.69623125" y2="13.97" width="0.3048" layer="16"/>
+<wire x1="27.69623125" y1="13.97" x2="22.606" y2="13.97" width="0.3048" layer="16"/>
+<wire x1="22.606" y1="13.97" x2="22.4536" y2="13.8176" width="0.3048" layer="16"/>
+<via x="14.351" y="9.3472" extent="1-16" drill="0.254"/>
+<via x="37.338" y="4.318" extent="1-16" drill="0.254"/>
+<via x="49.276" y="4.826" extent="1-16" drill="0.254"/>
+<via x="40.894" y="17.526" extent="1-16" drill="0.254"/>
+<via x="24.384" y="5.0546" extent="1-16" drill="0.254"/>
+<via x="16.002" y="17.78" extent="1-16" drill="0.254"/>
+<via x="14.986" y="15.748" extent="1-16" drill="0.254"/>
+<via x="18.542" y="14.732" extent="1-16" drill="0.254"/>
+<via x="11.684" y="5.08" extent="1-16" drill="0.254"/>
+<via x="7.112" y="3.302" extent="1-16" drill="0.254"/>
+<via x="43.688" y="3.048" extent="1-16" drill="0.254"/>
+<via x="27.1526" y="17.272" extent="1-16" drill="0.254"/>
+<via x="19.304" y="2.54" extent="1-16" drill="0.254"/>
+<via x="24.13" y="2.54" extent="1-16" drill="0.254"/>
+<via x="26.924" y="2.54" extent="1-16" drill="0.254"/>
+<via x="30.226" y="2.9972" extent="1-16" drill="0.254"/>
+<via x="34.29" y="2.54" extent="1-16" drill="0.254"/>
+<via x="36.068" y="2.286" extent="1-16" drill="0.254"/>
+<contactref element="R9" pad="2"/>
+<contactref element="R5" pad="1"/>
+<via x="40.0812" y="12.7254" extent="1-16" drill="0.254"/>
+<via x="37.1602" y="8.0264" extent="1-16" drill="0.254"/>
+<via x="30.3022" y="6.6294" extent="1-16" drill="0.254"/>
+<polygon width="0.254" layer="2">
+<vertex x="0" y="0"/>
+<vertex x="51.181" y="0"/>
+<vertex x="51.181" y="22.86"/>
+<vertex x="0" y="22.86"/>
+</polygon>
+<via x="27.1526" y="16.256" extent="1-16" drill="0.254"/>
+<contactref element="RESET" pad="P$2"/>
+</signal>
+<signal name="VBUS" class="1">
+<contactref element="D1" pad="A"/>
+<contactref element="Q1" pad="1"/>
+<contactref element="R1" pad="2"/>
+<contactref element="U2" pad="4"/>
+<contactref element="CHG" pad="A"/>
+<contactref element="JP4" pad="3"/>
+<contactref element="J1" pad="A9"/>
+<contactref element="J1" pad="B4"/>
+<contactref element="J1" pad="B9"/>
+<contactref element="J1" pad="A4"/>
+<wire x1="3.0844" y1="6.75979375" x2="1.91260625" y2="5.588" width="0.3048" layer="16"/>
+<wire x1="1.49" y1="5.588" x2="1.91260625" y2="5.588" width="0.3048" layer="16"/>
+<wire x1="3.0844" y1="7.97364375" x2="3.0844" y2="6.75979375" width="0.3048" layer="16"/>
+<wire x1="5.803" y1="9.305" x2="4.453" y2="9.305" width="0.3048" layer="16"/>
+<wire x1="5.803" y1="13.555" x2="4.453" y2="13.555" width="0.3048" layer="16"/>
+<wire x1="12.634" y1="14.494" x2="11.872" y2="15.256" width="0.3048" layer="16"/>
+<wire x1="12.634" y1="14.494" x2="12.634" y2="12.954" width="0.3048" layer="16"/>
+<wire x1="11.872" y1="15.256" x2="11.033" y2="16.095" width="0.3048" layer="16"/>
+<wire x1="20" y1="13.4319" x2="18.7601" y2="12.192" width="0.3048" layer="16"/>
+<wire x1="15.8995" y1="12.192" x2="14.478" y2="10.7705" width="0.3048" layer="16"/>
+<wire x1="14.478" y1="10.7705" x2="14.478" y2="10.5165" width="0.3048" layer="16"/>
+<wire x1="18.7601" y1="12.192" x2="15.8995" y2="12.192" width="0.3048" layer="16"/>
+<via x="20.066" y="14.732" extent="1-16" drill="0.254"/>
+<wire x1="20.066" y1="14.732" x2="20.066" y2="13.4979" width="0.3048" layer="16"/>
+<wire x1="20.066" y1="13.4979" x2="20" y2="13.4319" width="0.3048" layer="16"/>
+<wire x1="4.453" y1="9.305" x2="4.41575625" y2="9.305" width="0.3048" layer="16"/>
+<wire x1="4.41575625" y1="9.305" x2="3.0844" y2="7.97364375" width="0.3048" layer="16"/>
+<wire x1="4.20264375" y1="13.3094" x2="3.8486" y2="12.95535625" width="0.3048" layer="16"/>
+<wire x1="4.2074" y1="13.3094" x2="4.20264375" y2="13.3094" width="0.3048" layer="16"/>
+<wire x1="4.41575625" y1="9.3374875" x2="4.41575625" y2="9.305" width="0.3048" layer="16"/>
+<wire x1="4.453" y1="13.555" x2="4.2074" y2="13.3094" width="0.3048" layer="16"/>
+<wire x1="3.8486" y1="12.95535625" x2="3.8486" y2="9.90464375" width="0.3048" layer="16"/>
+<wire x1="3.8486" y1="9.90464375" x2="4.41575625" y2="9.3374875" width="0.3048" layer="16"/>
+<wire x1="21.59" y1="21.59" x2="20.7834" y2="20.7834" width="0.3048" layer="15"/>
+<wire x1="20.066" y1="19.138175" x2="20.066" y2="14.732" width="0.3048" layer="15"/>
+<wire x1="20.7834" y1="20.7834" x2="20.7834" y2="19.855575" width="0.3048" layer="15"/>
+<wire x1="20.7834" y1="19.855575" x2="20.066" y2="19.138175" width="0.3048" layer="15"/>
+<wire x1="9.3751" y1="15.87973125" x2="9.3751" y2="15.514675" width="0.3048" layer="16"/>
+<wire x1="9.3751" y1="15.514675" x2="7.5304625" y2="13.6700375" width="0.3048" layer="16"/>
+<wire x1="7.415425" y1="13.555" x2="5.803" y2="13.555" width="0.3048" layer="16"/>
+<wire x1="7.929" y1="13.2715" x2="7.5304625" y2="13.6700375" width="0.3048" layer="16"/>
+<wire x1="9.59036875" y1="16.095" x2="9.3751" y2="15.87973125" width="0.3048" layer="16"/>
+<wire x1="11.033" y1="16.095" x2="9.59036875" y2="16.095" width="0.3048" layer="16"/>
+<wire x1="12.634" y1="12.954" x2="12.7" y2="12.888" width="0.3048" layer="16"/>
+<wire x1="12.7" y1="12.888" x2="12.7" y2="12.870575" width="0.3048" layer="16"/>
+<wire x1="12.7" y1="12.870575" x2="13.6986" y2="11.871975" width="0.3048" layer="16"/>
+<wire x1="13.6986" y1="11.2959" x2="14.478" y2="10.5165" width="0.3048" layer="16"/>
+<wire x1="13.6986" y1="11.871975" x2="13.6986" y2="11.2959" width="0.3048" layer="16"/>
+<wire x1="7.929" y1="13.2715" x2="7.698925" y2="13.2715" width="0.3048" layer="16"/>
+<wire x1="7.698925" y1="13.2715" x2="7.415425" y2="13.555" width="0.3048" layer="16"/>
+</signal>
+<signal name="VBAT" class="1">
+<contactref element="J2" pad="2"/>
+<contactref element="Q1" pad="3"/>
+<contactref element="U2" pad="3"/>
+<contactref element="C4" pad="1"/>
+<contactref element="JP4" pad="1"/>
+<wire x1="16.51" y1="21.59" x2="16.51" y2="20.1422" width="0.3048" layer="1"/>
+<wire x1="11.9718" y1="15.604" x2="11.795" y2="15.604" width="0.3048" layer="1"/>
+<wire x1="16.51" y1="20.1422" x2="11.9718" y2="15.604" width="0.3048" layer="1"/>
+<wire x1="16.51" y1="21.59" x2="12.176" y2="17.256" width="0.3048" layer="16"/>
+<wire x1="12.176" y1="17.256" x2="10.922" y2="17.256" width="0.3048" layer="16"/>
+<wire x1="16.51" y1="21.59" x2="18.034" y2="20.066" width="0.3048" layer="16"/>
+<wire x1="19.1516" y1="20.066" x2="18.034" y2="20.066" width="0.3048" layer="16"/>
+<wire x1="19.1516" y1="20.066" x2="20.4216" y2="18.796" width="0.3048" layer="16"/>
+<wire x1="20" y1="18.3744" x2="20.4216" y2="18.796" width="0.3048" layer="16"/>
+<wire x1="20" y1="18.3744" x2="20" y2="16.0321" width="0.3048" layer="16"/>
+</signal>
+<signal name="EN">
+<contactref element="U1" pad="3"/>
+<contactref element="R2" pad="1"/>
+<contactref element="JP4" pad="2"/>
+<wire x1="15.9719" y1="9.078" x2="15.9719" y2="9.906" width="0.2032" layer="16"/>
+<wire x1="15.9719" y1="9.906" x2="15.9719" y2="10.7259" width="0.2032" layer="16"/>
+<wire x1="15.9719" y1="10.7259" x2="16.168" y2="10.922" width="0.2032" layer="16"/>
+<wire x1="19.05" y1="21.59" x2="19.05" y2="12.9841" width="0.2032" layer="15"/>
+<wire x1="19.05" y1="12.9841" x2="15.9719" y2="9.906" width="0.2032" layer="15"/>
+<via x="15.9719" y="9.906" extent="1-16" drill="0.254"/>
+</signal>
+<signal name="N$1">
+<contactref element="LED" pad="A"/>
+<contactref element="R7" pad="2"/>
+<wire x1="20.5834" y1="20.358" x2="20.0754" y2="20.866" width="0.2032" layer="16"/>
+<via x="20.0754" y="20.866" extent="1-16" drill="0.254"/>
+<wire x1="20.0754" y1="20.866" x2="16.4814" y2="17.272" width="0.2032" layer="2"/>
+<wire x1="16.4814" y1="17.272" x2="4.826" y2="17.272" width="0.2032" layer="2"/>
+<via x="4.826" y="17.272" extent="1-16" drill="0.254"/>
+<wire x1="4.826" y1="17.272" x2="3.59" y2="17.272" width="0.2032" layer="16"/>
+<wire x1="24.13" y1="17.438" x2="24.13" y2="17.4752" width="0.2032" layer="16"/>
+<wire x1="24.13" y1="17.4752" x2="21.2472" y2="20.358" width="0.2032" layer="16"/>
+<wire x1="21.2472" y1="20.358" x2="20.5834" y2="20.358" width="0.2032" layer="16"/>
+</signal>
+<signal name="+3V3" class="1">
+<contactref element="J3" pad="1"/>
+<contactref element="C3" pad="1"/>
+<contactref element="C2" pad="1"/>
+<contactref element="U1" pad="5"/>
+<contactref element="R6" pad="2"/>
+<contactref element="JP2" pad="15"/>
+<contactref element="TP1" pad="P$1"/>
+<contactref element="C5" pad="2"/>
+<contactref element="C6" pad="2"/>
+<contactref element="C7" pad="2"/>
+<contactref element="C8" pad="2"/>
+<contactref element="C9" pad="2"/>
+<contactref element="U3" pad="8"/>
+<contactref element="U3" pad="21"/>
+<contactref element="U3" pad="34"/>
+<contactref element="U3" pad="48"/>
+<contactref element="U3" pad="56"/>
+<contactref element="R8" pad="1"/>
+<wire x1="35.647409375" y1="17.6376" x2="34.65525625" y2="16.645446875" width="0.3048" layer="16"/>
+<wire x1="38.5962" y1="15.8496" x2="38.5962" y2="16.0274" width="0.3048" layer="16"/>
+<wire x1="38.5962" y1="16.0274" x2="36.986" y2="17.6376" width="0.3048" layer="16"/>
+<wire x1="36.986" y1="17.6376" x2="35.647409375" y2="17.6376" width="0.3048" layer="16"/>
+<wire x1="29.263425" y1="6.30386875" x2="28.599378125" y2="5.639821875" width="0.3048" layer="16"/>
+<wire x1="28.09035625" y1="5.1308" x2="27.1136" y2="5.1308" width="0.3048" layer="16"/>
+<wire x1="37.13013125" y1="6.657421875" x2="37.549890625" y2="6.2376625" width="0.3048" layer="16"/>
+<wire x1="37.549890625" y1="6.2376625" x2="37.549890625" y2="5.514053125" width="0.3048" layer="16"/>
+<wire x1="37.549890625" y1="5.514053125" x2="37.4629" y2="5.4270625" width="0.3048" layer="16"/>
+<wire x1="37.4629" y1="5.4270625" x2="37.4629" y2="5.1956" width="0.3048" layer="16"/>
+<wire x1="37.4629" y1="5.1956" x2="38.72825" y2="3.93025" width="0.3048" layer="16"/>
+<wire x1="27.42945625" y1="13.52966875" x2="27.8492125" y2="13.1099125" width="0.3048" layer="16"/>
+<wire x1="40.64" y1="11.2132" x2="40.087503125" y2="11.2132" width="0.3048" layer="16"/>
+<wire x1="40.087503125" y1="11.2132" x2="39.605003125" y2="11.6957" width="0.3048" layer="16"/>
+<polygon width="0.254" layer="15">
+<vertex x="7.62" y="22.86"/>
+<vertex x="7.62" y="0"/>
+<vertex x="50.927" y="0"/>
+<vertex x="50.927" y="22.86"/>
+</polygon>
+<wire x1="43.092" y1="16.51" x2="43.092" y2="14.82" width="0.3048" layer="16"/>
+<wire x1="43.092" y1="14.82" x2="43.434" y2="14.478" width="0.3048" layer="16"/>
+<via x="43.434" y="14.478" extent="1-16" drill="0.254"/>
+<wire x1="43.942" y1="13.55" x2="43.942" y2="13.97" width="0.3048" layer="16"/>
+<wire x1="43.942" y1="13.97" x2="43.434" y2="14.478" width="0.3048" layer="16"/>
+<wire x1="38.5962" y1="15.8496" x2="38.5962" y2="14.9742" width="0.3048" layer="16"/>
+<wire x1="38.608" y1="14.986" x2="38.5962" y2="14.9742" width="0.3048" layer="16"/>
+<via x="38.608" y="14.986" extent="1-16" drill="0.254"/>
+<wire x1="39.458" y1="3.048" x2="39.458" y2="3.2005" width="0.3048" layer="16"/>
+<wire x1="39.458" y1="3.2005" x2="38.72825" y2="3.93025" width="0.3048" layer="16"/>
+<via x="38.72825" y="3.93025" extent="1-16" drill="0.254"/>
+<via x="28.599378125" y="5.639821875" extent="1-16" drill="0.254"/>
+<wire x1="28.09035625" y1="5.1308" x2="28.599378125" y2="5.639821875" width="0.3048" layer="16"/>
+<wire x1="24.9292" y1="12.9794" x2="25.4" y2="12.5086" width="0.3048" layer="16"/>
+<wire x1="25.4" y1="12.5086" x2="25.4" y2="12.10890625" width="0.3048" layer="16"/>
+<via x="25.4" y="12.10890625" extent="1-16" drill="0.254"/>
+<wire x1="43.092" y1="16.51" x2="41.314" y2="14.732" width="0.3048" layer="16"/>
+<wire x1="41.314" y1="14.732" x2="38.862" y2="14.732" width="0.3048" layer="16"/>
+<wire x1="38.862" y1="14.732" x2="38.608" y2="14.986" width="0.3048" layer="16"/>
+<via x="40.64" y="11.2132" extent="1-16" drill="0.254"/>
+<wire x1="41.656" y1="11.2132" x2="40.64" y2="11.2132" width="0.3048" layer="16"/>
+<via x="20.828" y="6.096" extent="1-16" drill="0.254"/>
+<wire x1="24.9292" y1="12.9794" x2="25.47946875" y2="13.52966875" width="0.3048" layer="16"/>
+<wire x1="25.47946875" y1="13.52966875" x2="27.42945625" y2="13.52966875" width="0.3048" layer="16"/>
+<wire x1="45.3194" y1="14.224" x2="46.8884" y2="14.224" width="0.3048" layer="1"/>
+<via x="46.8884" y="14.224" extent="1-16" drill="0.254"/>
+<wire x1="49.276" y1="11.43" x2="48.26" y2="11.43" width="0.3048" layer="16"/>
+<wire x1="48.26" y1="11.43" x2="47.498" y2="10.668" width="0.3048" layer="16"/>
+<via x="47.498" y="10.668" extent="1-16" drill="0.254"/>
+<wire x1="19.558" y1="4.826" x2="20.828" y2="6.096" width="0.3048" layer="16"/>
+<wire x1="21.971" y1="7.366" x2="21.783" y2="7.178" width="0.3048" layer="16"/>
+<wire x1="21.783" y1="7.178" x2="18.5721" y2="7.178" width="0.3048" layer="16"/>
+<wire x1="21.971" y1="7.366" x2="20.828" y2="6.223" width="0.3048" layer="16"/>
+<wire x1="20.828" y1="6.223" x2="20.828" y2="6.096" width="0.3048" layer="16"/>
+</signal>
+<signal name="!RESET">
+<contactref element="J3" pad="10"/>
+<contactref element="JP2" pad="16"/>
+<contactref element="TP8" pad="P$1"/>
+<contactref element="R8" pad="2"/>
+<contactref element="U3" pad="52"/>
+<wire x1="38.54434375" y1="8.0716375" x2="38.5556625" y2="8.0716375" width="0.2032" layer="16"/>
+<wire x1="38.5556625" y1="8.0716375" x2="39.277684375" y2="7.349615625" width="0.2032" layer="16"/>
+<via x="39.277684375" y="7.349615625" extent="1-16" drill="0.254"/>
+<via x="47.3456" y="16.51" extent="1-16" drill="0.254"/>
+<wire x1="47.3456" y1="16.51" x2="44.792" y2="16.51" width="0.2032" layer="16"/>
+<wire x1="47.3456" y1="16.51" x2="49.276" y2="16.51" width="0.2032" layer="16"/>
+<wire x1="39.277684375" y1="7.349615625" x2="23.638384375" y2="7.349615625" width="0.2032" layer="2"/>
+<wire x1="23.638384375" y1="7.349615625" x2="23.622" y2="7.366" width="0.2032" layer="2"/>
+<via x="23.622" y="7.366" extent="1-16" drill="0.254"/>
+<contactref element="RESET" pad="P$1"/>
+<wire x1="6.35" y1="1.27" x2="6.35" y2="4" width="0.2032" layer="1"/>
+<wire x1="6.35" y1="4" x2="6.922" y2="4.572" width="0.2032" layer="1"/>
+<wire x1="6.922" y1="4.572" x2="9.716" y2="7.366" width="0.2032" layer="1"/>
+<wire x1="9.716" y1="7.366" x2="23.622" y2="7.366" width="0.2032" layer="1"/>
+<wire x1="49.2194" y1="9.144" x2="47.425015625" y2="7.349615625" width="0.2032" layer="1"/>
+<wire x1="47.425015625" y1="7.349615625" x2="39.277684375" y2="7.349615625" width="0.2032" layer="1"/>
+<wire x1="47.3456" y1="13.95618125" x2="47.0408" y2="13.65138125" width="0.2032" layer="1"/>
+<wire x1="47.0408" y1="13.65138125" x2="47.0408" y2="9.8552" width="0.2032" layer="1"/>
+<wire x1="47.752" y1="9.144" x2="49.2194" y2="9.144" width="0.2032" layer="1"/>
+<wire x1="47.3456" y1="16.51" x2="47.3456" y2="13.95618125" width="0.2032" layer="1"/>
+<wire x1="47.0408" y1="9.8552" x2="47.752" y2="9.144" width="0.2032" layer="1"/>
+</signal>
+<signal name="VHI" class="1">
+<contactref element="D1" pad="C"/>
+<contactref element="Q1" pad="2"/>
+<contactref element="C1" pad="1"/>
+<contactref element="U1" pad="1"/>
+<contactref element="R2" pad="2"/>
+<wire x1="17.868" y1="10.922" x2="17.868" y2="9.994" width="0.3048" layer="16"/>
+<wire x1="17.868" y1="9.994" x2="17.272" y2="9.398" width="0.3048" layer="16"/>
+<wire x1="17.272" y1="9.398" x2="17.272" y2="7.874" width="0.3048" layer="16"/>
+<wire x1="17.272" y1="7.874" x2="16.576" y2="7.178" width="0.3048" layer="16"/>
+<wire x1="16.576" y1="7.178" x2="15.9719" y2="7.178" width="0.3048" layer="16"/>
+<wire x1="11.629" y1="13.2715" x2="11.629" y2="13.599" width="0.3048" layer="16"/>
+<wire x1="11.629" y1="13.599" x2="9.972" y2="15.256" width="0.3048" layer="16"/>
+<wire x1="15.9719" y1="7.178" x2="13.782" y2="7.178" width="0.3048" layer="16"/>
+<wire x1="13.782" y1="7.178" x2="13.716" y2="7.112" width="0.3048" layer="16"/>
+<wire x1="13.2668" y1="11.6337" x2="13.2668" y2="7.5612" width="0.3048" layer="16"/>
+<wire x1="13.2668" y1="7.5612" x2="13.716" y2="7.112" width="0.3048" layer="16"/>
+<wire x1="11.629" y1="13.2715" x2="13.2668" y2="11.6337" width="0.3048" layer="16"/>
+</signal>
+<signal name="CHG">
+<contactref element="CHG" pad="C"/>
+<contactref element="R3" pad="1"/>
+<wire x1="13.97" y1="13.882" x2="13.208" y2="13.12" width="0.2032" layer="16"/>
+<wire x1="13.208" y1="13.12" x2="13.208" y2="13.081" width="0.2032" layer="16"/>
+<via x="13.208" y="13.081" extent="1-16" drill="0.254"/>
+<wire x1="13.208" y1="13.081" x2="13.208" y2="8.763" width="0.2032" layer="15"/>
+<wire x1="13.208" y1="8.763" x2="10.033" y2="5.588" width="0.2032" layer="15"/>
+<wire x1="10.033" y1="5.588" x2="4.826" y2="5.588" width="0.2032" layer="15"/>
+<via x="4.826" y="5.588" extent="1-16" drill="0.254"/>
+<wire x1="4.826" y1="5.588" x2="3.59" y2="5.588" width="0.2032" layer="16"/>
+</signal>
+<signal name="STAT">
+<contactref element="R3" pad="2"/>
+<contactref element="U2" pad="1"/>
+<wire x1="18.1" y1="16.0321" x2="17.3681" y2="16.764" width="0.2032" layer="16"/>
+<wire x1="15.152" y1="16.764" x2="13.97" y2="15.582" width="0.2032" layer="16"/>
+<wire x1="17.3681" y1="16.764" x2="15.152" y2="16.764" width="0.2032" layer="16"/>
+</signal>
+<signal name="PROG">
+<contactref element="U2" pad="5"/>
+<contactref element="R4" pad="1"/>
+<wire x1="18.1" y1="13.4319" x2="16.4521" y2="13.4319" width="0.2032" layer="16"/>
+<wire x1="16.4521" y1="13.4319" x2="16.002" y2="13.882" width="0.2032" layer="16"/>
+</signal>
+<signal name="USB_P">
+<contactref element="U3" pad="46"/>
+<contactref element="J1" pad="B6"/>
+<contactref element="J1" pad="A6"/>
+<wire x1="38.897896875" y1="12.40280625" x2="38.109728125" y2="11.6146375" width="0.2032" layer="16"/>
+<wire x1="38.109728125" y1="11.6146375" x2="38.0492" y2="11.6146375" width="0.2032" layer="16"/>
+<via x="38.0492" y="11.6146375" extent="1-16" drill="0.254"/>
+<wire x1="38.0492" y1="11.6146375" x2="38.0306375" y2="11.6332" width="0.2032" layer="2"/>
+<wire x1="38.0306375" y1="11.6332" x2="37.17394375" y2="11.6332" width="0.2032" layer="2"/>
+<wire x1="37.17394375" y1="11.6332" x2="37.010775" y2="11.47003125" width="0.2032" layer="2"/>
+<wire x1="37.010775" y1="11.47003125" x2="28.8491125" y2="11.47003125" width="0.2032" layer="2"/>
+<wire x1="27.7530375" y1="12.56610625" x2="28.8491125" y2="11.47003125" width="0.2032" layer="2"/>
+<wire x1="5.803" y1="11.855" x2="8.851" y2="11.855" width="0.2032" layer="2"/>
+<wire x1="9.56210625" y1="12.56610625" x2="8.851" y2="11.855" width="0.2032" layer="2"/>
+<wire x1="9.56210625" y1="12.56610625" x2="24.13" y2="12.56610625" width="0.2032" layer="2"/>
+<wire x1="26.416" y1="12.56610625" x2="27.7530375" y2="12.56610625" width="0.2032" layer="2"/>
+<wire x1="5.803" y1="11.855" x2="5.5558" y2="11.855" width="0.2032" layer="15"/>
+<wire x1="4.7058" y1="11.005" x2="4.453" y2="11.005" width="0.2032" layer="15"/>
+<wire x1="5.5558" y1="11.855" x2="4.7058" y2="11.005" width="0.2032" layer="15"/>
+<wire x1="26.145853125" y1="12.836253125" x2="26.416" y2="12.56610625" width="0.2032" layer="2"/>
+<wire x1="24.400146875" y1="12.836253125" x2="26.145853125" y2="12.836253125" width="0.2032" layer="2"/>
+<wire x1="24.13" y1="12.56610625" x2="24.400146875" y2="12.836253125" width="0.2032" layer="2"/>
+</signal>
+<signal name="USB_N">
+<contactref element="U3" pad="45"/>
+<contactref element="J1" pad="A7"/>
+<contactref element="J1" pad="B7"/>
+<wire x1="38.54434375" y1="12.756359375" x2="37.592" y2="11.804015625" width="0.2032" layer="16"/>
+<wire x1="37.592" y1="11.804015625" x2="37.592" y2="11.176" width="0.2032" layer="16"/>
+<via x="37.592" y="11.176" extent="1-16" drill="0.254"/>
+<wire x1="37.592" y1="11.176" x2="37.55583125" y2="11.13983125" width="0.2032" layer="2"/>
+<wire x1="37.55583125" y1="11.13983125" x2="28.6869375" y2="11.13983125" width="0.2032" layer="2"/>
+<wire x1="28.2004625" y1="11.62630625" x2="28.6869375" y2="11.13983125" width="0.2032" layer="2"/>
+<wire x1="5.803" y1="11.005" x2="8.9018" y2="11.005" width="0.2032" layer="2"/>
+<wire x1="8.9018" y1="11.005" x2="9.8094" y2="11.9126" width="0.2032" layer="2"/>
+<wire x1="5.803" y1="11.005" x2="5.5558" y2="11.005" width="0.2032" layer="2"/>
+<wire x1="4.7058" y1="11.855" x2="4.453" y2="11.855" width="0.2032" layer="2"/>
+<wire x1="5.5558" y1="11.005" x2="4.7058" y2="11.855" width="0.2032" layer="2"/>
+<wire x1="24.09395625" y1="11.9126" x2="24.38025" y2="11.62630625" width="0.2032" layer="2"/>
+<wire x1="9.8094" y1="11.9126" x2="24.09395625" y2="11.9126" width="0.2032" layer="2"/>
+<wire x1="24.38025" y1="11.62630625" x2="28.2004625" y2="11.62630625" width="0.2032" layer="2"/>
+</signal>
+<signal name="A6">
+<contactref element="JP2" pad="11"/>
+<contactref element="U3" pad="13"/>
+<wire x1="27.495659375" y1="8.0716375" x2="25.463659375" y2="6.0396375" width="0.2032" layer="16"/>
+<wire x1="25.463659375" y1="6.0396375" x2="24.701659375" y2="6.0396375" width="0.2032" layer="16"/>
+<wire x1="24.701659375" y1="6.0396375" x2="21.456021875" y2="2.794" width="0.2032" layer="16"/>
+<wire x1="21.456021875" y1="2.794" x2="20.574" y2="2.794" width="0.2032" layer="16"/>
+<wire x1="20.574" y1="2.794" x2="19.05" y2="1.27" width="0.2032" layer="16"/>
+</signal>
+<signal name="A5">
+<contactref element="JP2" pad="12"/>
+<contactref element="U3" pad="16"/>
+<wire x1="26.435" y1="9.132296875" x2="20.858703125" y2="3.556" width="0.2032" layer="16"/>
+<wire x1="18.796" y1="3.556" x2="16.51" y2="1.27" width="0.2032" layer="16"/>
+<wire x1="20.858703125" y1="3.556" x2="18.796" y2="3.556" width="0.2032" layer="16"/>
+</signal>
+<signal name="PA00">
+<contactref element="JP4" pad="7"/>
+<contactref element="U3" pad="1"/>
+<wire x1="32.80879375" y1="4.899490625" x2="31.7383" y2="3.828996875" width="0.2032" layer="16"/>
+<wire x1="31.75" y1="19.5326" x2="31.75" y2="21.59" width="0.2032" layer="16"/>
+<wire x1="31.75" y1="19.5326" x2="32.1714" y2="19.1112" width="0.2032" layer="16"/>
+<wire x1="32.1714" y1="18.2798125" x2="32.80879375" y2="17.64241875" width="0.2032" layer="16"/>
+<wire x1="32.1714" y1="19.1112" x2="32.1714" y2="18.2798125" width="0.2032" layer="16"/>
+<wire x1="32.80879375" y1="17.64241875" x2="32.80879375" y2="4.899490625" width="0.2032" layer="16"/>
+</signal>
+<signal name="PA01">
+<contactref element="JP4" pad="6"/>
+<contactref element="U3" pad="2"/>
+<wire x1="31.384746875" y1="4.18255" x2="32.4612" y2="5.259003125" width="0.2032" layer="16"/>
+<wire x1="31.8412" y1="18.9588" x2="29.21" y2="21.59" width="0.2032" layer="16"/>
+<wire x1="31.8412" y1="18.9588" x2="31.8412" y2="18.1430375" width="0.2032" layer="16"/>
+<wire x1="32.4612" y1="5.259003125" x2="32.4612" y2="15.748" width="0.2032" layer="16"/>
+<wire x1="32.4612" y1="15.748" x2="32.4608125" y2="15.7483875" width="0.2032" layer="16"/>
+<wire x1="32.4608125" y1="15.7483875" x2="32.4608125" y2="17.523425" width="0.2032" layer="16"/>
+<wire x1="32.4608125" y1="17.523425" x2="31.8412" y2="18.1430375" width="0.2032" layer="16"/>
+</signal>
+<signal name="SDA">
+<contactref element="JP4" pad="12"/>
+<contactref element="U3" pad="59"/>
+<wire x1="36.06946875" y1="5.5967625" x2="35.36900625" y2="6.297225" width="0.2032" layer="16"/>
+<wire x1="35.36900625" y1="6.297225" x2="35.36900625" y2="6.35676875" width="0.2032" layer="16"/>
+<wire x1="35.36900625" y1="6.35676875" x2="35.340884375" y2="6.384890625" width="0.2032" layer="16"/>
+<via x="35.340884375" y="6.384890625" extent="1-16" drill="0.254"/>
+<wire x1="35.340884375" y1="6.384890625" x2="35.340884375" y2="6.867490625" width="0.2032" layer="1"/>
+<wire x1="42.2402" y1="13.76680625" x2="35.340884375" y2="6.867490625" width="0.2032" layer="1"/>
+<wire x1="42.2402" y1="19.3802" x2="42.2402" y2="13.76680625" width="0.2032" layer="1"/>
+<wire x1="42.2402" y1="19.3802" x2="44.45" y2="21.59" width="0.2032" layer="1"/>
+</signal>
+<signal name="SCL">
+<contactref element="JP4" pad="11"/>
+<contactref element="U3" pad="60"/>
+<wire x1="35.715915625" y1="5.243209375" x2="35.015453125" y2="5.943671875" width="0.2032" layer="16"/>
+<wire x1="35.015453125" y1="5.943671875" x2="34.955915625" y2="5.943671875" width="0.2032" layer="16"/>
+<wire x1="34.955915625" y1="5.943671875" x2="34.927790625" y2="5.971796875" width="0.2032" layer="16"/>
+<via x="34.927790625" y="5.971796875" extent="1-16" drill="0.254"/>
+<wire x1="41.91" y1="21.59" x2="41.91" y2="13.9053875" width="0.2032" layer="1"/>
+<wire x1="34.8836875" y1="6.879075" x2="34.8836875" y2="6.1955125" width="0.2032" layer="1"/>
+<wire x1="34.8836875" y1="6.1955125" x2="34.927790625" y2="6.151409375" width="0.2032" layer="1"/>
+<wire x1="34.927790625" y1="6.151409375" x2="34.927790625" y2="5.971796875" width="0.2032" layer="1"/>
+<wire x1="41.91" y1="13.9053875" x2="34.8836875" y2="6.879075" width="0.2032" layer="1"/>
+</signal>
+<signal name="PA27">
+<contactref element="JP4" pad="8"/>
+<contactref element="U3" pad="51"/>
+<wire x1="38.897896875" y1="8.425190625" x2="38.22153125" y2="9.10155625" width="0.2032" layer="16"/>
+<wire x1="38.22153125" y1="9.10155625" x2="38.2241375" y2="9.1041625" width="0.2032" layer="16"/>
+<via x="38.2241375" y="9.1041625" extent="1-16" drill="0.254"/>
+<wire x1="38.2241375" y1="9.1041625" x2="38.2241375" y2="11.14299375" width="0.2032" layer="15"/>
+<wire x1="38.2241375" y1="11.14299375" x2="39.6072" y2="12.52605625" width="0.2032" layer="15"/>
+<wire x1="39.6072" y1="12.52605625" x2="39.6072" y2="17.99478125" width="0.2032" layer="15"/>
+<wire x1="38.11018125" y1="19.4918" x2="39.6072" y2="17.99478125" width="0.2032" layer="15"/>
+<wire x1="34.29" y1="21.59" x2="36.3882" y2="19.4918" width="0.2032" layer="15"/>
+<wire x1="36.3882" y1="19.4918" x2="38.11018125" y2="19.4918" width="0.2032" layer="15"/>
+</signal>
+<signal name="A0">
+<contactref element="JP2" pad="9"/>
+<contactref element="U3" pad="5"/>
+<wire x1="30.3240875" y1="5.243209375" x2="28.255878125" y2="3.175" width="0.2032" layer="16"/>
+<wire x1="26.035" y1="3.175" x2="24.13" y2="1.27" width="0.2032" layer="16"/>
+<wire x1="28.255878125" y1="3.175" x2="26.035" y2="3.175" width="0.2032" layer="16"/>
+</signal>
+<signal name="A7">
+<contactref element="JP2" pad="10"/>
+<contactref element="U3" pad="6"/>
+<wire x1="29.970534375" y1="5.5967625" x2="28.259971875" y2="3.8862" width="0.2032" layer="16"/>
+<wire x1="28.259971875" y1="3.8862" x2="24.2062" y2="3.8862" width="0.2032" layer="16"/>
+<wire x1="24.2062" y1="3.8862" x2="21.59" y2="1.27" width="0.2032" layer="16"/>
+</signal>
+<signal name="A8">
+<contactref element="JP2" pad="8"/>
+<contactref element="U3" pad="3"/>
+<wire x1="31.03119375" y1="4.536103125" x2="28.781090625" y2="2.286" width="0.2032" layer="16"/>
+<wire x1="28.781090625" y1="2.286" x2="27.686" y2="2.286" width="0.2032" layer="16"/>
+<wire x1="27.686" y1="2.286" x2="26.67" y2="1.27" width="0.2032" layer="16"/>
+</signal>
+<signal name="TX">
+<contactref element="JP2" pad="2"/>
+<contactref element="U3" pad="49"/>
+<via x="40.335234375" y="8.461603125" extent="1-16" drill="0.254"/>
+<wire x1="39.605003125" y1="9.132296875" x2="40.275696875" y2="8.461603125" width="0.2032" layer="16"/>
+<wire x1="40.275696875" y1="8.461603125" x2="40.335234375" y2="8.461603125" width="0.2032" layer="16"/>
+<wire x1="40.8178" y1="7.9790375" x2="40.8178" y2="2.3622" width="0.2032" layer="15"/>
+<wire x1="40.8178" y1="2.3622" x2="41.91" y2="1.27" width="0.2032" layer="15"/>
+<wire x1="40.335234375" y1="8.461603125" x2="40.8178" y2="7.9790375" width="0.2032" layer="15"/>
+</signal>
+<signal name="RX">
+<contactref element="JP2" pad="3"/>
+<contactref element="U3" pad="50"/>
+<via x="39.922140625" y="8.048509375" extent="1-16" drill="0.254"/>
+<wire x1="39.25145" y1="8.77874375" x2="39.922140625" y2="8.108053125" width="0.2032" layer="16"/>
+<wire x1="39.922140625" y1="8.108053125" x2="39.922140625" y2="8.048509375" width="0.2032" layer="16"/>
+<wire x1="40.4622" y1="7.50845" x2="40.4622" y2="2.3622" width="0.2032" layer="15"/>
+<wire x1="40.4622" y1="2.3622" x2="39.37" y2="1.27" width="0.2032" layer="15"/>
+<wire x1="39.922140625" y1="8.048509375" x2="40.4622" y2="7.50845" width="0.2032" layer="15"/>
+</signal>
+<signal name="A4/MISO">
+<contactref element="JP2" pad="4"/>
+<contactref element="U3" pad="61"/>
+<wire x1="36.83" y1="1.27" x2="36.83" y2="3.42201875" width="0.2032" layer="16"/>
+<wire x1="36.83" y1="3.42201875" x2="35.3623625" y2="4.88965625" width="0.2032" layer="16"/>
+</signal>
+<signal name="A2/MOSI">
+<contactref element="JP2" pad="5"/>
+<contactref element="U3" pad="63"/>
+<wire x1="34.29" y1="1.27" x2="35.306" y2="2.286" width="0.2032" layer="16"/>
+<wire x1="35.306" y1="3.53180625" x2="34.65525625" y2="4.18255" width="0.2032" layer="16"/>
+<wire x1="35.306" y1="2.286" x2="35.306" y2="3.53180625" width="0.2032" layer="16"/>
+</signal>
+<signal name="A1/SCK">
+<contactref element="JP2" pad="6"/>
+<contactref element="U3" pad="62"/>
+<wire x1="35.008809375" y1="4.536103125" x2="36.068" y2="3.4769125" width="0.2032" layer="16"/>
+<wire x1="36.068" y1="3.4769125" x2="36.068" y2="3.048" width="0.2032" layer="16"/>
+<via x="36.068" y="3.048" extent="1-16" drill="0.254"/>
+<wire x1="36.068" y1="3.048" x2="33.528" y2="3.048" width="0.2032" layer="1"/>
+<wire x1="33.528" y1="3.048" x2="31.75" y2="1.27" width="0.2032" layer="1"/>
+</signal>
+<signal name="A3">
+<contactref element="JP2" pad="7"/>
+<contactref element="U3" pad="64"/>
+<wire x1="34.301703125" y1="3.828996875" x2="33.16510625" y2="2.6924" width="0.2032" layer="16"/>
+<wire x1="30.6324" y1="2.6924" x2="29.21" y2="1.27" width="0.2032" layer="16"/>
+<wire x1="33.16510625" y1="2.6924" x2="30.6324" y2="2.6924" width="0.2032" layer="16"/>
+</signal>
+<signal name="SWCLK">
+<contactref element="J3" pad="4"/>
+<contactref element="R6" pad="1"/>
+<contactref element="TP6" pad="P$1"/>
+<contactref element="U3" pad="57"/>
+<contactref element="JP4" pad="10"/>
+<via x="36.437415625" y="9.079384375" extent="1-16" drill="0.254"/>
+<wire x1="36.407621875" y1="7.084378125" x2="36.437415625" y2="7.114171875" width="0.2032" layer="16"/>
+<wire x1="36.437415625" y1="7.114171875" x2="36.437415625" y2="9.079384375" width="0.2032" layer="16"/>
+<wire x1="36.776578125" y1="6.30386875" x2="36.407621875" y2="6.672825" width="0.2032" layer="16"/>
+<wire x1="36.407621875" y1="6.672825" x2="36.407621875" y2="7.084378125" width="0.2032" layer="16"/>
+<wire x1="36.437415625" y1="9.079384375" x2="37.77203125" y2="10.414" width="0.2032" layer="2"/>
+<wire x1="37.77203125" y1="10.414" x2="43.7388" y2="10.414" width="0.2032" layer="2"/>
+<via x="43.7388" y="10.414" extent="1-16" drill="0.254"/>
+<wire x1="43.7388" y1="10.414" x2="43.561" y2="10.414" width="0.2032" layer="15"/>
+<wire x1="43.561" y1="10.414" x2="40.3098" y2="13.6652" width="0.2032" layer="15"/>
+<wire x1="40.3098" y1="20.6502" x2="40.3098" y2="13.6652" width="0.2032" layer="15"/>
+<wire x1="40.3098" y1="20.6502" x2="39.37" y2="21.59" width="0.2032" layer="15"/>
+<wire x1="43.942" y1="11.85" x2="43.942" y2="10.6172" width="0.2032" layer="16"/>
+<wire x1="43.942" y1="10.6172" x2="43.7388" y2="10.414" width="0.2032" layer="16"/>
+<wire x1="49.276" y1="13.97" x2="47.625" y2="12.319" width="0.2032" layer="16"/>
+<wire x1="47.625" y1="12.319" x2="47.156" y2="11.85" width="0.2032" layer="16"/>
+<wire x1="47.156" y1="11.85" x2="43.942" y2="11.85" width="0.2032" layer="16"/>
+<wire x1="49.2194" y1="12.954" x2="48.26" y2="12.954" width="0.2032" layer="1"/>
+<wire x1="48.26" y1="12.954" x2="47.625" y2="12.319" width="0.2032" layer="1"/>
+<via x="47.625" y="12.319" extent="1-16" drill="0.254"/>
+</signal>
+<signal name="SWDIO">
+<contactref element="J3" pad="2"/>
+<contactref element="TP7" pad="P$1"/>
+<contactref element="U3" pad="58"/>
+<contactref element="JP4" pad="9"/>
+<wire x1="36.423025" y1="5.950315625" x2="35.98021875" y2="6.393121875" width="0.2032" layer="16"/>
+<wire x1="35.98021875" y1="6.393121875" x2="35.98021875" y2="8.636" width="0.2032" layer="16"/>
+<via x="35.98021875" y="8.636" extent="1-16" drill="0.254"/>
+<via x="43.688" y="9.144" extent="1-16" drill="0.254"/>
+<wire x1="42.7482" y1="10.0838" x2="43.688" y2="9.144" width="0.2032" layer="2"/>
+<wire x1="42.7482" y1="10.0838" x2="38.0884125" y2="10.0838" width="0.2032" layer="2"/>
+<wire x1="43.688" y1="9.144" x2="43.688" y2="9.8044" width="0.2032" layer="15"/>
+<wire x1="43.688" y1="9.8044" x2="39.9542" y2="13.5382" width="0.2032" layer="15"/>
+<wire x1="39.9542" y1="18.4658" x2="36.83" y2="21.59" width="0.2032" layer="15"/>
+<wire x1="39.9542" y1="13.5382" x2="39.9542" y2="18.4658" width="0.2032" layer="15"/>
+<wire x1="38.0884125" y1="10.0838" x2="36.6268" y2="8.6221875" width="0.2032" layer="2"/>
+<wire x1="36.6268" y1="8.6221875" x2="35.98021875" y2="8.6221875" width="0.2032" layer="2"/>
+<wire x1="35.98021875" y1="8.6221875" x2="35.98021875" y2="8.636" width="0.2032" layer="2"/>
+<wire x1="49.276" y1="8.89" x2="49.022" y2="9.144" width="0.2032" layer="16"/>
+<wire x1="49.022" y1="9.144" x2="46.99" y2="9.144" width="0.2032" layer="16"/>
+<wire x1="46.99" y1="9.144" x2="43.688" y2="9.144" width="0.2032" layer="16"/>
+<wire x1="49.2194" y1="14.224" x2="48.514" y2="14.224" width="0.2032" layer="1"/>
+<wire x1="48.514" y1="14.224" x2="47.498" y2="13.208" width="0.2032" layer="1"/>
+<via x="47.498" y="13.208" extent="1-16" drill="0.254"/>
+<wire x1="47.498" y1="13.208" x2="46.99" y2="12.7" width="0.2032" layer="2"/>
+<wire x1="46.99" y1="12.7" x2="46.99" y2="9.144" width="0.2032" layer="2"/>
+<via x="46.99" y="9.144" extent="1-16" drill="0.254"/>
+</signal>
+<signal name="AREF">
+<contactref element="JP2" pad="14"/>
+<contactref element="U3" pad="4"/>
+<contactref element="C12" pad="1"/>
+<wire x1="30.677640625" y1="4.88965625" x2="31.3944" y2="5.606415625" width="0.2032" layer="16"/>
+<wire x1="31.3944" y1="5.606415625" x2="31.3944" y2="5.6134" width="0.2032" layer="16"/>
+<via x="31.3944" y="5.6134" extent="1-16" drill="0.254"/>
+<wire x1="31.3944" y1="5.6134" x2="29.083" y2="3.302" width="0.2032" layer="2"/>
+<wire x1="13.462" y1="3.302" x2="11.43" y2="1.27" width="0.2032" layer="2"/>
+<wire x1="29.083" y1="3.302" x2="13.462" y2="3.302" width="0.2032" layer="2"/>
+<wire x1="9.994" y1="3.556" x2="9.994" y2="2.706" width="0.2032" layer="16"/>
+<wire x1="9.994" y1="2.706" x2="11.43" y2="1.27" width="0.2032" layer="16"/>
+</signal>
+<signal name="VLCD">
+<contactref element="C11" pad="2"/>
+<contactref element="U3" pad="23"/>
+<wire x1="25.3492" y1="15.1638" x2="27.209540625" y2="15.1638" width="0.2032" layer="16"/>
+<wire x1="27.209540625" y1="15.1638" x2="28.55631875" y2="13.817021875" width="0.2032" layer="16"/>
+</signal>
+<signal name="VDDCORE" class="1">
+<contactref element="C10" pad="1"/>
+<contactref element="L1" pad="1"/>
+<contactref element="U3" pad="53"/>
+<wire x1="38.190790625" y1="7.718084375" x2="39.19605625" y2="6.71281875" width="0.3048" layer="16"/>
+<wire x1="39.19605625" y1="6.71281875" x2="40.063021875" y2="6.71281875" width="0.3048" layer="16"/>
+<wire x1="40.063021875" y1="6.71281875" x2="40.933840625" y2="5.842" width="0.3048" layer="16"/>
+<wire x1="40.933840625" y1="5.842" x2="42.418" y2="5.842" width="0.3048" layer="16"/>
+</signal>
+<signal name="SEG0" class="3">
+<contactref element="U3" pad="12"/>
+<via x="39.116" y="16.7132" extent="1-16" drill="0.254"/>
+<via x="28.490334375" y="8.593675" extent="1-16" drill="0.254"/>
+<wire x1="27.8492125" y1="7.718084375" x2="28.490334375" y2="8.35920625" width="0.1524" layer="16"/>
+<wire x1="28.490334375" y1="8.35920625" x2="28.490334375" y2="8.593675" width="0.1524" layer="16"/>
+<wire x1="29.328675" y1="8.593675" x2="28.490334375" y2="8.593675" width="0.1524" layer="15"/>
+<wire x1="35.38070625" y1="14.64570625" x2="36.84530625" y2="14.64570625" width="0.1524" layer="15"/>
+<wire x1="35.38070625" y1="14.64570625" x2="29.328675" y2="8.593675" width="0.1524" layer="15"/>
+<contactref element="U$4" pad="P$27"/>
+<wire x1="41.418" y1="19.53" x2="41.418" y2="18.7612" width="0.1524" layer="1"/>
+<wire x1="41.418" y1="18.7612" x2="39.37" y2="16.7132" width="0.1524" layer="1"/>
+<wire x1="39.116" y1="16.7132" x2="39.37" y2="16.7132" width="0.1524" layer="1"/>
+<wire x1="38.9128" y1="16.7132" x2="39.116" y2="16.7132" width="0.1524" layer="15"/>
+<wire x1="36.84530625" y1="14.64570625" x2="38.9128" y2="16.7132" width="0.1524" layer="15"/>
+</signal>
+<signal name="SEG1" class="3">
+<contactref element="U3" pad="14"/>
+<via x="38.4302" y="16.9672" extent="1-16" drill="0.254"/>
+<via x="28.077240625" y="9.00676875" extent="1-16" drill="0.254"/>
+<wire x1="27.14210625" y1="8.425190625" x2="27.679578125" y2="8.9626625" width="0.1524" layer="16"/>
+<wire x1="27.679578125" y1="8.9626625" x2="27.85353125" y2="8.9626625" width="0.1524" layer="16"/>
+<wire x1="29.39136875" y1="9.05756875" x2="28.128040625" y2="9.05756875" width="0.1524" layer="15"/>
+<wire x1="28.128040625" y1="9.05756875" x2="28.077240625" y2="9.00676875" width="0.1524" layer="15"/>
+<wire x1="27.85353125" y1="8.9626625" x2="27.8976375" y2="9.00676875" width="0.1524" layer="16"/>
+<wire x1="27.8976375" y1="9.00676875" x2="28.077240625" y2="9.00676875" width="0.1524" layer="16"/>
+<wire x1="35.25890625" y1="14.92510625" x2="36.72956875" y2="14.92510625" width="0.1524" layer="15"/>
+<wire x1="35.25890625" y1="14.92510625" x2="29.39136875" y2="9.05756875" width="0.1524" layer="15"/>
+<contactref element="U$4" pad="P$26"/>
+<wire x1="38.608" y1="17.145" x2="38.4302" y2="16.9672" width="0.1524" layer="1"/>
+<wire x1="39.2948625" y1="17.145" x2="38.608" y2="17.145" width="0.1524" layer="1"/>
+<wire x1="40.518" y1="19.53" x2="40.518" y2="18.3681375" width="0.1524" layer="1"/>
+<wire x1="40.518" y1="18.3681375" x2="39.2948625" y2="17.145" width="0.1524" layer="1"/>
+<wire x1="38.4302" y1="16.6257375" x2="38.4302" y2="16.9672" width="0.1524" layer="15"/>
+<wire x1="36.72956875" y1="14.92510625" x2="38.4302" y2="16.6257375" width="0.1524" layer="15"/>
+</signal>
+<signal name="SEG4" class="3">
+<contactref element="U3" pad="18"/>
+<via x="37.5412" y="18.0848" extent="1-16" drill="0.254"/>
+<wire x1="29.31105" y1="10.2108" x2="27.3437875" y2="10.2108" width="0.1524" layer="15"/>
+<wire x1="27.3437875" y1="10.2108" x2="26.9373875" y2="10.6172" width="0.1524" layer="15"/>
+<wire x1="26.9373875" y1="10.6172" x2="26.9373875" y2="10.8712" width="0.1524" layer="15"/>
+<via x="26.9373875" y="10.8712" extent="1-16" drill="0.254"/>
+<wire x1="26.9373875" y1="10.8712" x2="27.2167875" y2="11.1506" width="0.1524" layer="16"/>
+<wire x1="27.2167875" y1="11.62101875" x2="27.2167875" y2="11.1506" width="0.1524" layer="16"/>
+<wire x1="27.2167875" y1="11.62101875" x2="26.788553125" y2="12.049253125" width="0.1524" layer="16"/>
+<wire x1="34.7258" y1="16.6216" x2="34.7258" y2="15.62555" width="0.1524" layer="15"/>
+<wire x1="34.7258" y1="15.62555" x2="29.31105" y2="10.2108" width="0.1524" layer="15"/>
+<contactref element="U$4" pad="P$23"/>
+<wire x1="37.818" y1="19.53" x2="37.818" y2="18.3616" width="0.1524" layer="1"/>
+<wire x1="37.818" y1="18.3616" x2="37.5412" y2="18.0848" width="0.1524" layer="1"/>
+<wire x1="37.5412" y1="18.0848" x2="37.0332" y2="17.5768" width="0.1524" layer="15"/>
+<wire x1="37.0332" y1="17.5768" x2="35.681" y2="17.5768" width="0.1524" layer="15"/>
+<wire x1="35.681" y1="17.5768" x2="34.7258" y2="16.6216" width="0.1524" layer="15"/>
+</signal>
+<signal name="SEG5" class="3">
+<contactref element="U3" pad="19"/>
+<via x="36.8554" y="18.161" extent="1-16" drill="0.254"/>
+<wire x1="29.3878" y1="10.6934" x2="27.5082" y2="10.6934" width="0.1524" layer="15"/>
+<via x="27.5082" y="10.6934" extent="1-16" drill="0.254"/>
+<wire x1="27.559" y1="11.9859125" x2="27.559" y2="10.7442" width="0.1524" layer="16"/>
+<wire x1="27.5082" y1="10.6934" x2="27.559" y2="10.7442" width="0.1524" layer="16"/>
+<wire x1="27.559" y1="11.9859125" x2="27.14210625" y2="12.40280625" width="0.1524" layer="16"/>
+<wire x1="34.4262" y1="16.7232" x2="34.4262" y2="15.7318" width="0.1524" layer="15"/>
+<wire x1="34.4262" y1="15.7318" x2="29.3878" y2="10.6934" width="0.1524" layer="15"/>
+<contactref element="U$4" pad="P$22"/>
+<wire x1="36.8554" y1="18.161" x2="36.918" y2="18.2236" width="0.1524" layer="1"/>
+<wire x1="36.918" y1="19.53" x2="36.918" y2="18.2236" width="0.1524" layer="1"/>
+<wire x1="36.8554" y1="18.161" x2="35.864" y2="18.161" width="0.1524" layer="15"/>
+<wire x1="35.864" y1="18.161" x2="34.4262" y2="16.7232" width="0.1524" layer="15"/>
+</signal>
+<signal name="SEG6" class="3">
+<contactref element="U3" pad="20"/>
+<via x="35.1282" y="18.0594" extent="1-16" drill="0.254"/>
+<wire x1="29.4355125" y1="11.1572875" x2="28.0229" y2="11.1572875" width="0.1524" layer="15"/>
+<via x="28.0229" y="11.1572875" extent="1-16" drill="0.254"/>
+<wire x1="28.0229" y1="11.1572875" x2="28.0229" y2="12.22911875" width="0.1524" layer="16"/>
+<wire x1="28.0229" y1="12.22911875" x2="27.495659375" y2="12.756359375" width="0.1524" layer="16"/>
+<wire x1="34.1266" y1="16.8248" x2="34.1266" y2="15.848375" width="0.1524" layer="15"/>
+<wire x1="34.1266" y1="15.848375" x2="29.4355125" y2="11.1572875" width="0.1524" layer="15"/>
+<contactref element="U$4" pad="P$21"/>
+<wire x1="35.1282" y1="18.0594" x2="35.1282" y2="17.8264" width="0.1524" layer="15"/>
+<wire x1="35.1282" y1="17.8264" x2="34.1266" y2="16.8248" width="0.1524" layer="15"/>
+<wire x1="35.1282" y1="18.0594" x2="36.018" y2="18.9492" width="0.1524" layer="1"/>
+<wire x1="36.018" y1="18.9492" x2="36.018" y2="19.53" width="0.1524" layer="1"/>
+</signal>
+<signal name="SEG7" class="3">
+<contactref element="U3" pad="24"/>
+<via x="34.4932" y="18.0594" extent="1-16" drill="0.254"/>
+<wire x1="31.40025" y1="13.5382" x2="30.3276" y2="13.5382" width="0.1524" layer="15"/>
+<wire x1="30.3276" y1="13.5382" x2="30.2006" y2="13.6652" width="0.1524" layer="15"/>
+<via x="30.2006" y="13.6652" extent="1-16" drill="0.254"/>
+<wire x1="30.2006" y1="13.6652" x2="29.415246875" y2="13.6652" width="0.1524" layer="16"/>
+<wire x1="29.415246875" y1="13.6652" x2="28.909871875" y2="14.170575" width="0.1524" layer="16"/>
+<wire x1="33.827" y1="15.96495" x2="31.40025" y2="13.5382" width="0.1524" layer="15"/>
+<contactref element="U$4" pad="P$20"/>
+<wire x1="34.4932" y1="18.0594" x2="34.4932" y2="17.5865375" width="0.1524" layer="15"/>
+<wire x1="34.4932" y1="17.5865375" x2="33.827" y2="16.9203375" width="0.1524" layer="15"/>
+<wire x1="33.827" y1="16.9203375" x2="33.827" y2="15.96495" width="0.1524" layer="15"/>
+<wire x1="34.4932" y1="18.0594" x2="35.118" y2="18.6842" width="0.1524" layer="1"/>
+<wire x1="35.118" y1="18.6842" x2="35.118" y2="19.53" width="0.1524" layer="1"/>
+</signal>
+<signal name="SEG2" class="3">
+<contactref element="U3" pad="15"/>
+<via x="39.116" y="17.5768" extent="1-16" drill="0.254"/>
+<via x="27.664146875" y="9.4198625" extent="1-16" drill="0.254"/>
+<wire x1="26.788553125" y1="8.77874375" x2="27.429671875" y2="9.4198625" width="0.1524" layer="16"/>
+<wire x1="27.429671875" y1="9.4198625" x2="27.664146875" y2="9.4198625" width="0.1524" layer="16"/>
+<wire x1="29.4032625" y1="9.4706625" x2="27.714946875" y2="9.4706625" width="0.1524" layer="15"/>
+<wire x1="27.714946875" y1="9.4706625" x2="27.664146875" y2="9.4198625" width="0.1524" layer="15"/>
+<wire x1="35.13710625" y1="15.20450625" x2="36.61383125" y2="15.20450625" width="0.1524" layer="15"/>
+<wire x1="35.13710625" y1="15.20450625" x2="29.4032625" y2="9.4706625" width="0.1524" layer="15"/>
+<contactref element="U$4" pad="P$25"/>
+<wire x1="38.4291375" y1="17.5768" x2="39.116" y2="17.5768" width="0.1524" layer="15"/>
+<wire x1="36.61383125" y1="15.20450625" x2="37.6286625" y2="16.2193375" width="0.1524" layer="15"/>
+<wire x1="39.618" y1="19.53" x2="39.618" y2="18.0788" width="0.1524" layer="1"/>
+<wire x1="39.618" y1="18.0788" x2="39.116" y2="17.5768" width="0.1524" layer="1"/>
+<wire x1="37.6286625" y1="16.776325" x2="38.4291375" y2="17.5768" width="0.1524" layer="15"/>
+<wire x1="37.6286625" y1="16.2193375" x2="37.6286625" y2="16.776325" width="0.1524" layer="15"/>
+</signal>
+<signal name="SEG3" class="3">
+<contactref element="U3" pad="17"/>
+<via x="38.1" y="17.8816" extent="1-16" drill="0.254"/>
+<wire x1="29.397025" y1="9.8806" x2="27.0256" y2="9.8806" width="0.1524" layer="15"/>
+<via x="27.0256" y="9.8806" extent="1-16" drill="0.254"/>
+<wire x1="27.0256" y1="9.8806" x2="26.435" y2="10.4712" width="0.1524" layer="16"/>
+<wire x1="26.435" y1="10.4712" x2="26.435" y2="11.6957" width="0.1524" layer="16"/>
+<wire x1="37.2606" y1="16.2464125" x2="36.49809375" y2="15.48390625" width="0.1524" layer="15"/>
+<wire x1="36.49809375" y1="15.48390625" x2="35.00033125" y2="15.48390625" width="0.1524" layer="15"/>
+<wire x1="38.1" y1="17.8816" x2="37.2606" y2="17.0026" width="0.1524" layer="15"/>
+<wire x1="37.2606" y1="17.0026" x2="37.2606" y2="16.2464125" width="0.1524" layer="15"/>
+<wire x1="35.00033125" y1="15.48390625" x2="29.397025" y2="9.8806" width="0.1524" layer="15"/>
+<contactref element="U$4" pad="P$24"/>
+<wire x1="38.718" y1="19.53" x2="38.718" y2="18.4996" width="0.1524" layer="1"/>
+<wire x1="38.718" y1="18.4996" x2="38.1" y2="17.8816" width="0.1524" layer="1"/>
+</signal>
+<signal name="COM0" class="3">
+<contactref element="U3" pad="9"/>
+<via x="25.146" y="17.399" extent="1-16" drill="0.254"/>
+<via x="26.5550125" y="6.0318125" extent="1-16" drill="0.254"/>
+<wire x1="28.26555625" y1="6.01310625" x2="26.57371875" y2="6.01310625" width="0.1524" layer="16"/>
+<wire x1="26.57371875" y1="6.01310625" x2="26.5550125" y2="6.0318125" width="0.1524" layer="16"/>
+<wire x1="25.8428" y1="6.744025" x2="26.5550125" y2="6.0318125" width="0.1524" layer="15"/>
+<wire x1="28.909871875" y1="6.657421875" x2="28.26555625" y2="6.01310625" width="0.1524" layer="16"/>
+<contactref element="U$4" pad="P$7"/>
+<wire x1="23.418" y1="19.53" x2="23.418" y2="18.56083125" width="0.1524" layer="1"/>
+<wire x1="24.257" y1="18.288" x2="25.146" y2="17.399" width="0.1524" layer="1"/>
+<wire x1="24.257" y1="18.288" x2="23.69083125" y2="18.288" width="0.1524" layer="1"/>
+<wire x1="23.418" y1="18.56083125" x2="23.69083125" y2="18.288" width="0.1524" layer="1"/>
+<wire x1="25.8428" y1="15.8517875" x2="25.146" y2="16.5485875" width="0.1524" layer="15"/>
+<wire x1="25.146" y1="17.399" x2="25.146" y2="16.5485875" width="0.1524" layer="15"/>
+<wire x1="25.8428" y1="15.8517875" x2="25.8428" y2="6.744025" width="0.1524" layer="15"/>
+</signal>
+<signal name="COM1" class="3">
+<contactref element="U3" pad="10"/>
+<via x="25.908" y="17.1704" extent="1-16" drill="0.254"/>
+<via x="26.96810625" y="6.44490625" extent="1-16" drill="0.254"/>
+<wire x1="28.55631875" y1="7.010975" x2="27.92074375" y2="6.3754" width="0.1524" layer="16"/>
+<wire x1="27.92074375" y1="6.3754" x2="27.0376125" y2="6.3754" width="0.1524" layer="16"/>
+<wire x1="27.0376125" y1="6.3754" x2="26.96810625" y2="6.44490625" width="0.1524" layer="16"/>
+<contactref element="U$4" pad="P$8"/>
+<wire x1="25.908" y1="17.25023125" x2="25.908" y2="17.1704" width="0.1524" layer="1"/>
+<wire x1="24.318" y1="19.53" x2="24.318" y2="18.64016875" width="0.1524" layer="1"/>
+<wire x1="25.12736875" y1="17.8308" x2="25.32743125" y2="17.8308" width="0.1524" layer="1"/>
+<wire x1="24.318" y1="18.64016875" x2="25.12736875" y2="17.8308" width="0.1524" layer="1"/>
+<wire x1="25.32743125" y1="17.8308" x2="25.908" y2="17.25023125" width="0.1524" layer="1"/>
+<wire x1="26.137903125" y1="15.97721875" x2="26.139359375" y2="15.49393125" width="0.1524" layer="15"/>
+<wire x1="25.908" y1="17.1704" x2="25.908" y2="16.207121875" width="0.1524" layer="15"/>
+<wire x1="25.908" y1="16.207121875" x2="26.137903125" y2="15.97721875" width="0.1524" layer="15"/>
+<wire x1="26.139359375" y1="15.49393125" x2="26.139359375" y2="7.273653125" width="0.1524" layer="15"/>
+<wire x1="26.139359375" y1="7.273653125" x2="26.96810625" y2="6.44490625" width="0.1524" layer="15"/>
+</signal>
+<signal name="COM2" class="3">
+<contactref element="U3" pad="11"/>
+<via x="26.416" y="16.4084" extent="1-16" drill="0.254"/>
+<via x="27.432" y="6.8072" extent="1-16" drill="0.254"/>
+<wire x1="28.202765625" y1="7.36453125" x2="27.645434375" y2="6.8072" width="0.1524" layer="16"/>
+<wire x1="27.645434375" y1="6.8072" x2="27.432" y2="6.8072" width="0.1524" layer="16"/>
+<wire x1="26.442" y1="7.7972" x2="26.416" y2="16.4084" width="0.1524" layer="15"/>
+<wire x1="27.432" y1="6.8072" x2="26.442" y2="7.7972" width="0.1524" layer="15"/>
+<contactref element="U$4" pad="P$9"/>
+<wire x1="26.416" y1="17.2963375" x2="26.416" y2="16.4084" width="0.1524" layer="1"/>
+<wire x1="25.218" y1="19.53" x2="25.218" y2="18.4943375" width="0.1524" layer="1"/>
+<wire x1="25.218" y1="18.4943375" x2="26.416" y2="17.2963375" width="0.1524" layer="1"/>
+</signal>
+<signal name="PA13">
+<contactref element="JP4" pad="5"/>
+<contactref element="U3" pad="30"/>
+<wire x1="31.03119375" y1="16.29189375" x2="30.091775" y2="17.2313125" width="0.2032" layer="16"/>
+<wire x1="30.091775" y1="17.2313125" x2="30.091775" y2="17.7099625" width="0.2032" layer="16"/>
+<via x="30.091775" y="17.7099625" extent="1-16" drill="0.254"/>
+<wire x1="30.4292" y1="18.25101875" x2="30.4292" y2="18.62978125" width="0.2032" layer="15"/>
+<wire x1="30.091775" y1="17.7099625" x2="30.091775" y2="17.91359375" width="0.2032" layer="15"/>
+<wire x1="30.091775" y1="17.91359375" x2="30.4292" y2="18.25101875" width="0.2032" layer="15"/>
+<wire x1="27.46898125" y1="21.59" x2="26.67" y2="21.59" width="0.2032" layer="15"/>
+<wire x1="30.4292" y1="18.62978125" x2="29.736490625" y2="19.322490625" width="0.2032" layer="15"/>
+<wire x1="29.736490625" y1="19.322490625" x2="27.46898125" y2="21.59" width="0.2032" layer="15"/>
+</signal>
+<signal name="PA12">
+<contactref element="JP4" pad="4"/>
+<contactref element="U3" pad="29"/>
+<contactref element="R7" pad="1"/>
+<wire x1="30.677640625" y1="15.938340625" x2="29.85198125" y2="16.764" width="0.2032" layer="16"/>
+<wire x1="29.85198125" y1="16.764" x2="27.012" y2="16.764" width="0.2032" layer="16"/>
+<wire x1="27.012" y1="16.764" x2="24.638" y2="19.138" width="0.2032" layer="16"/>
+<wire x1="24.638" y1="19.138" x2="24.13" y2="19.138" width="0.2032" layer="16"/>
+<wire x1="24.13" y1="19.138" x2="24.13" y2="21.59" width="0.2032" layer="16"/>
+</signal>
+<signal name="VDDOUT" class="1">
+<contactref element="L1" pad="2"/>
+<contactref element="U3" pad="55"/>
+<wire x1="37.483684375" y1="7.010975" x2="38.62618125" y2="5.868478125" width="0.3048" layer="16"/>
+<wire x1="38.62618125" y1="5.868478125" x2="38.62618125" y2="5.275978125" width="0.3048" layer="16"/>
+</signal>
+<signal name="SEG8" class="3">
+<contactref element="U3" pad="25"/>
+<via x="33.7566" y="17.4752" extent="1-16" drill="0.254"/>
+<wire x1="30.6832" y1="13.9954" x2="31.441275" y2="13.9954" width="0.1524" layer="15"/>
+<via x="30.6832" y="13.9954" extent="1-16" drill="0.254"/>
+<wire x1="30.6832" y1="13.9954" x2="30.5816" y2="14.097" width="0.1524" layer="16"/>
+<wire x1="30.5816" y1="14.097" x2="29.690553125" y2="14.097" width="0.1524" layer="16"/>
+<wire x1="29.690553125" y1="14.097" x2="29.263425" y2="14.524128125" width="0.1524" layer="16"/>
+<wire x1="31.441275" y1="13.9954" x2="33.528" y2="16.082125" width="0.1524" layer="15"/>
+<contactref element="U$4" pad="P$19"/>
+<wire x1="33.7566" y1="17.4752" x2="33.528" y2="17.2466" width="0.1524" layer="15"/>
+<wire x1="33.528" y1="17.2466" x2="33.528" y2="16.082125" width="0.1524" layer="15"/>
+<wire x1="34.218" y1="19.53" x2="34.218" y2="18.3948625" width="0.1524" layer="1"/>
+<wire x1="34.218" y1="18.3948625" x2="34.0614" y2="18.2382625" width="0.1524" layer="1"/>
+<wire x1="34.0614" y1="18.2382625" x2="34.0614" y2="17.78" width="0.1524" layer="1"/>
+<wire x1="34.0614" y1="17.78" x2="33.7566" y2="17.4752" width="0.1524" layer="1"/>
+</signal>
+<signal name="SEG9" class="3">
+<contactref element="U3" pad="26"/>
+<via x="32.004" y="15.24" extent="1-16" drill="0.254"/>
+<wire x1="32.004" y1="15.24" x2="31.27729375" y2="14.4526" width="0.1524" layer="16"/>
+<wire x1="31.27729375" y1="14.4526" x2="30.042059375" y2="14.4526" width="0.1524" layer="16"/>
+<wire x1="30.042059375" y1="14.4526" x2="29.616978125" y2="14.87768125" width="0.1524" layer="16"/>
+<contactref element="U$4" pad="P$18"/>
+<wire x1="33.318" y1="19.53" x2="33.318" y2="16.554" width="0.1524" layer="1"/>
+<wire x1="33.318" y1="16.554" x2="32.004" y2="15.24" width="0.1524" layer="1"/>
+</signal>
+<signal name="SEG10" class="3">
+<contactref element="U3" pad="27"/>
+<wire x1="29.970534375" y1="15.231234375" x2="29.980765625" y2="15.231234375" width="0.1524" layer="16"/>
+<wire x1="29.980765625" y1="15.231234375" x2="30.48" y2="14.732" width="0.1524" layer="16"/>
+<wire x1="30.94603125" y1="14.732" x2="30.988" y2="14.8844" width="0.1524" layer="16"/>
+<via x="30.988" y="14.8844" extent="1-16" drill="0.254"/>
+<wire x1="30.48" y1="14.732" x2="30.94603125" y2="14.732" width="0.1524" layer="16"/>
+<contactref element="U$4" pad="P$17"/>
+<wire x1="32.418" y1="19.53" x2="32.418" y2="16.3144" width="0.1524" layer="1"/>
+<wire x1="32.418" y1="16.3144" x2="30.988" y2="14.8844" width="0.1524" layer="1"/>
+</signal>
+<signal name="SEG11" class="3">
+<contactref element="U3" pad="28"/>
+<via x="31.2674" y="18.1356" extent="1-16" drill="0.254"/>
+<via x="29.37726875" y="15.99146875" extent="1-16" drill="0.254"/>
+<contactref element="U$4" pad="P$16"/>
+<wire x1="31.518" y1="19.53" x2="31.518" y2="18.3862" width="0.1524" layer="1"/>
+<wire x1="31.2674" y1="18.1356" x2="31.518" y2="18.3862" width="0.1524" layer="1"/>
+<wire x1="30.3240875" y1="15.5847875" x2="29.91740625" y2="15.99146875" width="0.1524" layer="16"/>
+<wire x1="29.91740625" y1="15.99146875" x2="29.37726875" y2="15.99146875" width="0.1524" layer="16"/>
+<wire x1="31.2674" y1="17.4487375" x2="31.2674" y2="18.1356" width="0.1524" layer="15"/>
+<wire x1="29.37726875" y1="15.99146875" x2="29.81013125" y2="15.99146875" width="0.1524" layer="15"/>
+<wire x1="29.81013125" y1="15.99146875" x2="31.2674" y2="17.4487375" width="0.1524" layer="15"/>
+</signal>
+<signal name="SEG13" class="3">
+<contactref element="U3" pad="32"/>
+<via x="29.718" y="18.2372" extent="1-16" drill="0.254"/>
+<contactref element="U$4" pad="P$14"/>
+<wire x1="29.718" y1="19.53" x2="29.718" y2="18.2372" width="0.1524" layer="1"/>
+<wire x1="29.718" y1="18.2372" x2="30.5001" y2="18.2372" width="0.1524" layer="16"/>
+<wire x1="30.5001" y1="18.2372" x2="31.7383" y2="16.999" width="0.1524" layer="16"/>
+</signal>
+<signal name="SEG12" class="3">
+<contactref element="U3" pad="31"/>
+<via x="30.6324" y="17.4752" extent="1-16" drill="0.254"/>
+<contactref element="U$4" pad="P$15"/>
+<wire x1="30.618" y1="19.53" x2="30.523575" y2="19.435575" width="0.1524" layer="1"/>
+<wire x1="30.523575" y1="19.435575" x2="30.523575" y2="17.584025" width="0.1524" layer="1"/>
+<wire x1="30.523575" y1="17.584025" x2="30.6324" y2="17.4752" width="0.1524" layer="1"/>
+<wire x1="31.384746875" y1="16.645446875" x2="30.6324" y2="17.39779375" width="0.1524" layer="16"/>
+<wire x1="30.6324" y1="17.39779375" x2="30.6324" y2="17.4752" width="0.1524" layer="16"/>
+</signal>
+<signal name="SEG14" class="3">
+<contactref element="U3" pad="35"/>
+<wire x1="35.008809375" y1="16.29189375" x2="35.672859375" y2="16.95594375" width="0.1524" layer="16"/>
+<wire x1="35.672859375" y1="16.95594375" x2="35.678515625" y2="16.950284375" width="0.1524" layer="16"/>
+<via x="35.678515625" y="16.950284375" extent="1-16" drill="0.254"/>
+<via x="28.575" y="18.0086" extent="1-16" drill="0.254"/>
+<contactref element="U$4" pad="P$13"/>
+<wire x1="28.575" y1="18.0086" x2="28.818" y2="18.2516" width="0.1524" layer="1"/>
+<wire x1="28.818" y1="19.53" x2="28.818" y2="18.2516" width="0.1524" layer="1"/>
+<wire x1="28.575" y1="18.0086" x2="28.7428" y2="17.8408" width="0.1524" layer="2"/>
+<wire x1="28.7428" y1="17.8408" x2="29.3422" y2="17.8408" width="0.1524" layer="2"/>
+<wire x1="29.3422" y1="17.8408" x2="30.2412" y2="16.9418" width="0.1524" layer="2"/>
+<wire x1="35.67003125" y1="16.9418" x2="35.678515625" y2="16.950284375" width="0.1524" layer="2"/>
+<wire x1="30.2412" y1="16.9418" x2="35.67003125" y2="16.9418" width="0.1524" layer="2"/>
+</signal>
+<signal name="SEG15" class="3">
+<contactref element="U3" pad="36"/>
+<via x="36.2440125" y="17.10938125" extent="1-16" drill="0.254"/>
+<wire x1="36.2440125" y1="17.10938125" x2="36.2440125" y2="16.90511875" width="0.1524" layer="16"/>
+<wire x1="35.3623625" y1="15.938340625" x2="35.3623625" y2="16.02346875" width="0.1524" layer="16"/>
+<wire x1="35.3623625" y1="16.02346875" x2="36.2440125" y2="16.90511875" width="0.1524" layer="16"/>
+<via x="27.8384" y="18.2626" extent="1-16" drill="0.254"/>
+<wire x1="29.2204" y1="17.5614" x2="30.1194" y2="16.6624" width="0.1524" layer="2"/>
+<wire x1="35.3314" y1="16.6624" x2="30.1194" y2="16.6624" width="0.1524" layer="2"/>
+<wire x1="35.3314" y1="16.6624" x2="35.4838" y2="16.51" width="0.1524" layer="2"/>
+<wire x1="35.84889375" y1="16.51" x2="35.4838" y2="16.51" width="0.1524" layer="2"/>
+<contactref element="U$4" pad="P$12"/>
+<wire x1="27.8384" y1="18.2626" x2="27.918" y2="18.3422" width="0.1524" layer="1"/>
+<wire x1="27.918" y1="19.53" x2="27.918" y2="18.3422" width="0.1524" layer="1"/>
+<wire x1="27.8384" y1="18.2626" x2="27.8384" y2="18.034" width="0.1524" layer="2"/>
+<wire x1="28.311" y1="17.5614" x2="27.8384" y2="18.034" width="0.1524" layer="2"/>
+<wire x1="28.311" y1="17.5614" x2="29.2204" y2="17.5614" width="0.1524" layer="2"/>
+<wire x1="36.2440125" y1="17.10938125" x2="36.2440125" y2="16.90511875" width="0.1524" layer="2"/>
+<wire x1="36.2440125" y1="16.90511875" x2="35.84889375" y2="16.51" width="0.1524" layer="2"/>
+</signal>
+<signal name="SEG16" class="3">
+<contactref element="U3" pad="37"/>
+<via x="27.178" y="18.2626" extent="1-16" drill="0.254"/>
+<wire x1="36.397" y1="16.265871875" x2="35.715915625" y2="15.5847875" width="0.1524" layer="16"/>
+<via x="36.8288" y="17.04578125" extent="1-16" drill="0.254"/>
+<wire x1="29.9976" y1="16.383" x2="29.0986" y2="17.282" width="0.1524" layer="2"/>
+<wire x1="28.1586" y1="17.282" x2="29.0986" y2="17.282" width="0.1524" layer="2"/>
+<wire x1="35.3680625" y1="16.2306" x2="35.2156625" y2="16.383" width="0.1524" layer="2"/>
+<wire x1="29.9976" y1="16.383" x2="35.2156625" y2="16.383" width="0.1524" layer="2"/>
+<contactref element="U$4" pad="P$11"/>
+<wire x1="27.018" y1="19.53" x2="27.018" y2="18.4226" width="0.1524" layer="1"/>
+<wire x1="27.018" y1="18.4226" x2="27.178" y2="18.2626" width="0.1524" layer="1"/>
+<wire x1="28.1586" y1="17.282" x2="27.178" y2="18.2626" width="0.1524" layer="2"/>
+<wire x1="36.8288" y1="17.04578125" x2="36.6630125" y2="16.87999375" width="0.1524" layer="2"/>
+<wire x1="36.6630125" y1="16.87999375" x2="36.6499375" y2="16.87999375" width="0.1524" layer="2"/>
+<wire x1="36.6499375" y1="16.87999375" x2="36.00054375" y2="16.2306" width="0.1524" layer="2"/>
+<wire x1="36.00054375" y1="16.2306" x2="35.3680625" y2="16.2306" width="0.1524" layer="2"/>
+<wire x1="36.8288" y1="17.04578125" x2="36.6630125" y2="16.87999375" width="0.1524" layer="16"/>
+<wire x1="36.6630125" y1="16.87999375" x2="36.6499375" y2="16.87999375" width="0.1524" layer="16"/>
+<wire x1="36.397" y1="16.62705625" x2="36.6499375" y2="16.87999375" width="0.1524" layer="16"/>
+<wire x1="36.397" y1="16.265871875" x2="36.397" y2="16.62705625" width="0.1524" layer="16"/>
+</signal>
+<signal name="SEG17" class="3">
+<contactref element="U3" pad="38"/>
+<via x="26.67" y="17.78" extent="1-16" drill="0.254"/>
+<wire x1="36.06946875" y1="15.231234375" x2="36.8288" y2="15.990565625" width="0.1524" layer="16"/>
+<wire x1="36.8288" y1="15.990565625" x2="36.8288" y2="16.44819375" width="0.1524" layer="16"/>
+<via x="36.8288" y="16.44819375" extent="1-16" drill="0.254"/>
+<wire x1="35.252325" y1="15.9512" x2="35.099925" y2="16.1036" width="0.1524" layer="2"/>
+<wire x1="35.252325" y1="15.9512" x2="36.11628125" y2="15.9512" width="0.1524" layer="2"/>
+<wire x1="35.099925" y1="16.1036" x2="29.8758" y2="16.1036" width="0.1524" layer="2"/>
+<wire x1="29.8758" y1="16.1036" x2="28.9768" y2="17.0026" width="0.1524" layer="2"/>
+<wire x1="28.037" y1="17.0026" x2="28.9768" y2="17.0026" width="0.1524" layer="2"/>
+<contactref element="U$4" pad="P$10"/>
+<wire x1="26.118" y1="19.53" x2="26.118" y2="18.332" width="0.1524" layer="1"/>
+<wire x1="26.118" y1="18.332" x2="26.67" y2="17.78" width="0.1524" layer="1"/>
+<wire x1="28.037" y1="17.0026" x2="27.2596" y2="17.78" width="0.1524" layer="2"/>
+<wire x1="26.67" y1="17.78" x2="27.2596" y2="17.78" width="0.1524" layer="2"/>
+<wire x1="36.11628125" y1="15.9512" x2="36.613275" y2="16.44819375" width="0.1524" layer="2"/>
+<wire x1="36.613275" y1="16.44819375" x2="36.8288" y2="16.44819375" width="0.1524" layer="2"/>
+</signal>
+<signal name="SEG18" class="3">
+<contactref element="U3" pad="39"/>
+<via x="23.241" y="17.7038" extent="1-16" drill="0.254"/>
+<via x="35.5700875" y="14.21390625" extent="1-16" drill="0.254"/>
+<wire x1="36.423025" y1="14.87768125" x2="35.75925" y2="14.21390625" width="0.1524" layer="16"/>
+<wire x1="35.75925" y1="14.21390625" x2="35.5700875" y2="14.21390625" width="0.1524" layer="16"/>
+<wire x1="35.5700875" y1="14.21390625" x2="34.58958125" y2="13.2334" width="0.1524" layer="2"/>
+<wire x1="27.559" y1="14.351" x2="28.89360625" y2="14.351" width="0.1524" layer="2"/>
+<wire x1="30.01120625" y1="13.2334" x2="28.89360625" y2="14.351" width="0.1524" layer="2"/>
+<wire x1="34.58958125" y1="13.2334" x2="30.01120625" y2="13.2334" width="0.1524" layer="2"/>
+<contactref element="U$4" pad="P$6"/>
+<wire x1="22.518" y1="19.53" x2="22.518" y2="18.4268" width="0.1524" layer="1"/>
+<wire x1="22.518" y1="18.4268" x2="23.241" y2="17.7038" width="0.1524" layer="1"/>
+<wire x1="23.241" y1="17.7038" x2="23.3934" y2="17.5514" width="0.1524" layer="2"/>
+<wire x1="24.3586" y1="17.5514" x2="23.3934" y2="17.5514" width="0.1524" layer="2"/>
+<wire x1="24.3586" y1="17.5514" x2="27.559" y2="14.351" width="0.1524" layer="2"/>
+</signal>
+<signal name="SEG19" class="3">
+<contactref element="U3" pad="40"/>
+<via x="22.7076" y="17.4244" extent="1-16" drill="0.254"/>
+<wire x1="36.0761125" y1="13.82366875" x2="36.01821875" y2="13.765775" width="0.1524" layer="16"/>
+<via x="36.01821875" y="13.765775" extent="1-16" drill="0.254"/>
+<wire x1="36.776578125" y1="14.524128125" x2="36.07611875" y2="13.82366875" width="0.1524" layer="16"/>
+<wire x1="36.07611875" y1="13.82366875" x2="36.0761125" y2="13.82366875" width="0.1524" layer="16"/>
+<wire x1="27.44078125" y1="14.05498125" x2="28.67590625" y2="14.05498125" width="0.1524" layer="2"/>
+<wire x1="28.67590625" y1="14.05498125" x2="29.7768875" y2="12.954" width="0.1524" layer="2"/>
+<wire x1="36.01821875" y1="13.765775" x2="35.20644375" y2="12.954" width="0.1524" layer="2"/>
+<wire x1="35.20644375" y1="12.954" x2="29.7768875" y2="12.954" width="0.1524" layer="2"/>
+<contactref element="U$4" pad="P$5"/>
+<wire x1="21.618" y1="19.53" x2="21.618" y2="18.387" width="0.1524" layer="1"/>
+<wire x1="22.7076" y1="17.4244" x2="22.5806" y2="17.4244" width="0.1524" layer="1"/>
+<wire x1="21.618" y1="18.387" x2="22.5806" y2="17.4244" width="0.1524" layer="1"/>
+<wire x1="22.7076" y1="17.4244" x2="22.86" y2="17.272" width="0.1524" layer="2"/>
+<wire x1="24.2237625" y1="17.272" x2="22.86" y2="17.272" width="0.1524" layer="2"/>
+<wire x1="24.2237625" y1="17.272" x2="27.44078125" y2="14.05498125" width="0.1524" layer="2"/>
+</signal>
+<signal name="SEG23" class="3">
+<contactref element="U3" pad="44"/>
+<via x="20.6502" y="16.129" extent="1-16" drill="0.254"/>
+<via x="37.45428125" y="12.3805125" extent="1-16" drill="0.254"/>
+<wire x1="38.190790625" y1="13.1099125" x2="37.461390625" y2="12.3805125" width="0.1524" layer="16"/>
+<wire x1="37.461390625" y1="12.3805125" x2="37.45428125" y2="12.3805125" width="0.1524" layer="16"/>
+<wire x1="37.45428125" y1="12.3805125" x2="36.8486" y2="11.77483125" width="0.1524" layer="2"/>
+<wire x1="26.96790625" y1="12.87090625" x2="27.96618125" y2="12.87090625" width="0.1524" layer="2"/>
+<wire x1="27.96618125" y1="12.87090625" x2="29.06225625" y2="11.77483125" width="0.1524" layer="2"/>
+<wire x1="36.8486" y1="11.77483125" x2="29.06225625" y2="11.77483125" width="0.1524" layer="2"/>
+<contactref element="U$4" pad="P$1"/>
+<wire x1="18.018" y1="19.53" x2="18.018" y2="18.5326" width="0.1524" layer="1"/>
+<wire x1="20.4216" y1="16.129" x2="20.6502" y2="16.129" width="0.1524" layer="1"/>
+<wire x1="18.018" y1="18.5326" x2="20.4216" y2="16.129" width="0.1524" layer="1"/>
+<wire x1="20.6502" y1="16.129" x2="20.65256875" y2="16.12663125" width="0.1524" layer="2"/>
+<wire x1="23.71218125" y1="16.12663125" x2="20.65256875" y2="16.12663125" width="0.1524" layer="2"/>
+<wire x1="23.71218125" y1="16.12663125" x2="26.96790625" y2="12.87090625" width="0.1524" layer="2"/>
+</signal>
+<signal name="SEG21" class="3">
+<contactref element="U3" pad="42"/>
+<via x="21.59" y="16.8402" extent="1-16" drill="0.254"/>
+<wire x1="23.9676875" y1="16.6996" x2="27.20434375" y2="13.46294375" width="0.1524" layer="2"/>
+<wire x1="37.483684375" y1="13.817021875" x2="36.783221875" y2="13.116559375" width="0.1524" layer="16"/>
+<wire x1="36.783221875" y1="13.116559375" x2="36.783221875" y2="13.116553125" width="0.1524" layer="16"/>
+<wire x1="36.783221875" y1="13.116553125" x2="36.72533125" y2="13.0586625" width="0.1524" layer="16"/>
+<via x="36.72533125" y="13.0586625" extent="1-16" drill="0.254"/>
+<wire x1="36.72533125" y1="13.0586625" x2="36.0350875" y2="12.36841875" width="0.1524" layer="2"/>
+<wire x1="28.322675" y1="13.46294375" x2="27.20434375" y2="13.46294375" width="0.1524" layer="2"/>
+<wire x1="28.322675" y1="13.46294375" x2="29.4172" y2="12.36841875" width="0.1524" layer="2"/>
+<wire x1="36.0350875" y1="12.36841875" x2="29.4172" y2="12.36841875" width="0.1524" layer="2"/>
+<contactref element="U$4" pad="P$3"/>
+<wire x1="19.818" y1="19.53" x2="19.818" y2="18.5674" width="0.1524" layer="1"/>
+<wire x1="21.5452" y1="16.8402" x2="19.818" y2="18.5674" width="0.1524" layer="1"/>
+<wire x1="21.5452" y1="16.8402" x2="21.59" y2="16.8402" width="0.1524" layer="1"/>
+<wire x1="21.59" y1="16.8402" x2="21.7306" y2="16.6996" width="0.1524" layer="2"/>
+<wire x1="21.7306" y1="16.6996" x2="23.9676875" y2="16.6996" width="0.1524" layer="2"/>
+</signal>
+<signal name="SEG20" class="3">
+<contactref element="U3" pad="41"/>
+<via x="22.1742" y="17.145" extent="1-16" drill="0.254"/>
+<wire x1="37.13013125" y1="14.170575" x2="36.42966875" y2="13.4701125" width="0.1524" layer="16"/>
+<wire x1="36.42966875" y1="13.4701125" x2="36.4296625" y2="13.4701125" width="0.1524" layer="16"/>
+<wire x1="36.4296625" y1="13.4701125" x2="36.117771875" y2="13.158221875" width="0.1524" layer="16"/>
+<via x="36.117771875" y="13.158221875" extent="1-16" drill="0.254"/>
+<wire x1="36.117771875" y1="13.158221875" x2="35.6247625" y2="12.6652125" width="0.1524" layer="2"/>
+<wire x1="27.3225625" y1="13.7589625" x2="28.500128125" y2="13.7589625" width="0.1524" layer="2"/>
+<wire x1="28.500128125" y1="13.7589625" x2="29.593878125" y2="12.6652125" width="0.1524" layer="2"/>
+<wire x1="35.6247625" y1="12.6652125" x2="29.593878125" y2="12.6652125" width="0.1524" layer="2"/>
+<contactref element="U$4" pad="P$4"/>
+<wire x1="20.718" y1="19.53" x2="20.718" y2="18.6082" width="0.1524" layer="1"/>
+<wire x1="22.1742" y1="17.152" x2="22.1742" y2="17.145" width="0.1524" layer="1"/>
+<wire x1="20.718" y1="18.6082" x2="22.1742" y2="17.152" width="0.1524" layer="1"/>
+<wire x1="24.088925" y1="16.9926" x2="22.3266" y2="16.9926" width="0.1524" layer="2"/>
+<wire x1="22.1742" y1="17.145" x2="22.3266" y2="16.9926" width="0.1524" layer="2"/>
+<wire x1="24.088925" y1="16.9926" x2="27.3225625" y2="13.7589625" width="0.1524" layer="2"/>
+</signal>
+<signal name="SEG22" class="3">
+<contactref element="U3" pad="43"/>
+<via x="21.0566" y="16.5608" extent="1-16" drill="0.254"/>
+<wire x1="27.086125" y1="13.166925" x2="23.847021875" y2="16.406028125" width="0.1524" layer="2"/>
+<wire x1="37.13678125" y1="12.763" x2="36.8248875" y2="12.45110625" width="0.1524" layer="16"/>
+<via x="36.8248875" y="12.45110625" extent="1-16" drill="0.254"/>
+<wire x1="37.8372375" y1="13.463465625" x2="37.13678125" y2="12.763009375" width="0.1524" layer="16"/>
+<wire x1="37.13678125" y1="12.763009375" x2="37.13678125" y2="12.763" width="0.1524" layer="16"/>
+<wire x1="36.8248875" y1="12.45110625" x2="36.44540625" y2="12.071625" width="0.1524" layer="2"/>
+<wire x1="28.149075" y1="13.166925" x2="27.086125" y2="13.166925" width="0.1524" layer="2"/>
+<wire x1="28.149075" y1="13.166925" x2="29.244375" y2="12.071625" width="0.1524" layer="2"/>
+<wire x1="36.44540625" y1="12.071625" x2="29.244375" y2="12.071625" width="0.1524" layer="2"/>
+<contactref element="U$4" pad="P$2"/>
+<wire x1="18.918" y1="19.53" x2="18.918" y2="18.5216" width="0.1524" layer="1"/>
+<wire x1="20.8788" y1="16.5608" x2="21.0566" y2="16.5608" width="0.1524" layer="1"/>
+<wire x1="20.8788" y1="16.5608" x2="18.918" y2="18.5216" width="0.1524" layer="1"/>
+<wire x1="21.211371875" y1="16.406028125" x2="21.0566" y2="16.5608" width="0.1524" layer="2"/>
+<wire x1="23.847021875" y1="16.406028125" x2="21.211371875" y2="16.406028125" width="0.1524" layer="2"/>
+</signal>
+<signal name="N$2">
+<contactref element="R5" pad="2"/>
+<contactref element="J1" pad="A5"/>
+<wire x1="7.62" y1="14.478" x2="7.576" y2="14.478" width="0.2032" layer="2"/>
+<wire x1="7.576" y1="14.478" x2="5.803" y2="12.705" width="0.2032" layer="2"/>
+<via x="7.62" y="14.478" extent="1-16" drill="0.254"/>
+<wire x1="7.62" y1="15.66" x2="7.62" y2="14.478" width="0.2032" layer="16"/>
+</signal>
+<signal name="N$3">
+<contactref element="J1" pad="B5"/>
+<contactref element="R9" pad="1"/>
+<via x="6.5824" y="7.62" extent="1-16" drill="0.254"/>
+<wire x1="5.222" y1="8.2143375" x2="5.5623375" y2="7.874" width="0.2032" layer="2"/>
+<wire x1="4.453" y1="10.155" x2="5.222" y2="9.386" width="0.2032" layer="2"/>
+<wire x1="5.222" y1="9.386" x2="5.222" y2="8.2143375" width="0.2032" layer="2"/>
+<wire x1="6.3284" y1="7.874" x2="5.5623375" y2="7.874" width="0.2032" layer="2"/>
+<wire x1="6.3284" y1="7.874" x2="6.5824" y2="7.62" width="0.2032" layer="2"/>
+<wire x1="7.62" y1="7.2" x2="7.0024" y2="7.2" width="0.2032" layer="16"/>
+<wire x1="7.0024" y1="7.2" x2="6.5824" y2="7.62" width="0.2032" layer="16"/>
+</signal>
+</signals>
+<mfgpreviewcolors>
+<mfgpreviewcolor name="soldermaskcolor" color="0xC84B00B4"/>
+<mfgpreviewcolor name="silkscreencolor" color="0xFFFEFEFE"/>
+<mfgpreviewcolor name="backgroundcolor" color="0xFF282828"/>
+<mfgpreviewcolor name="coppercolor" color="0xFFFFBF00"/>
+<mfgpreviewcolor name="substratecolor" color="0xFF786E46"/>
+</mfgpreviewcolors>
+<errors>
+<approved hash="4,1,e36dcc4c03f60b90"/>
+<approved hash="4,1,0352647203f68b90"/>
+<approved hash="4,1,f21dd70fbfe8849f"/>
+<approved hash="4,1,18d9504ebacfeb5b"/>
+<approved hash="4,16,f21dd70fbfe8849f"/>
+<approved hash="4,16,18d9504ebacfeb5b"/>
+</errors>
+</board>
+</drawing>
+<compatibility>
+<note version="6.3" minversion="6.2.2" severity="warning">
+Since Version 6.2.2 text objects can contain more than one line,
+which will not be processed correctly with this version.
+</note>
+</compatibility>
+</eagle>
diff --git a/PCB/Main Boards/Watch Dev Board/OSO-FEAL-A1-00.sch b/PCB/Main Boards/Watch Dev Board/OSO-FEAL-A1-00.sch
new file mode 100644
index 00000000..e68cee70
--- /dev/null
+++ b/PCB/Main Boards/Watch Dev Board/OSO-FEAL-A1-00.sch
@@ -0,0 +1,6772 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE eagle SYSTEM "eagle.dtd">
+<eagle version="9.6.2">
+<drawing>
+<settings>
+<setting alwaysvectorfont="no"/>
+<setting keepoldvectorfont="yes"/>
+<setting verticaltext="up"/>
+</settings>
+<grid distance="0.1" unitdist="inch" unit="inch" style="lines" multiple="1" display="no" altdistance="0.01" altunitdist="inch" altunit="inch"/>
+<layers>
+<layer number="1" name="Top" color="4" fill="1" visible="yes" active="no"/>
+<layer number="2" name="Route2" color="37" fill="1" visible="yes" active="no"/>
+<layer number="3" name="Route3" color="4" fill="3" visible="yes" active="no"/>
+<layer number="4" name="Route4" color="1" fill="4" visible="yes" active="no"/>
+<layer number="5" name="Route5" color="4" fill="4" visible="yes" active="no"/>
+<layer number="6" name="Route6" color="1" fill="8" visible="yes" active="no"/>
+<layer number="7" name="Route7" color="4" fill="8" visible="yes" active="no"/>
+<layer number="8" name="Route8" color="1" fill="2" visible="yes" active="no"/>
+<layer number="9" name="Route9" color="4" fill="2" visible="yes" active="no"/>
+<layer number="10" name="Route10" color="1" fill="7" visible="yes" active="no"/>
+<layer number="11" name="Route11" color="4" fill="7" visible="yes" active="no"/>
+<layer number="12" name="Route12" color="1" fill="5" visible="yes" active="no"/>
+<layer number="13" name="Route13" color="4" fill="5" visible="yes" active="no"/>
+<layer number="14" name="Route14" color="1" fill="6" visible="yes" active="no"/>
+<layer number="15" name="Route15" color="38" fill="1" visible="yes" active="no"/>
+<layer number="16" name="Bottom" color="1" fill="1" visible="yes" active="no"/>
+<layer number="17" name="Pads" color="2" fill="1" visible="yes" active="no"/>
+<layer number="18" name="Vias" color="2" fill="1" visible="yes" active="no"/>
+<layer number="19" name="Unrouted" color="6" fill="1" visible="yes" active="no"/>
+<layer number="20" name="Dimension" color="15" fill="1" visible="yes" active="no"/>
+<layer number="21" name="tPlace" color="14" fill="1" visible="yes" active="no"/>
+<layer number="22" name="bPlace" color="13" fill="1" visible="yes" active="no"/>
+<layer number="23" name="tOrigins" color="14" fill="1" visible="yes" active="no"/>
+<layer number="24" name="bOrigins" color="13" fill="1" visible="yes" active="no"/>
+<layer number="25" name="tNames" color="7" fill="1" visible="yes" active="no"/>
+<layer number="26" name="bNames" color="7" fill="1" visible="yes" active="no"/>
+<layer number="27" name="tValues" color="11" fill="1" visible="yes" active="no"/>
+<layer number="28" name="bValues" color="7" fill="1" visible="yes" active="no"/>
+<layer number="29" name="tStop" color="7" fill="3" visible="no" active="no"/>
+<layer number="30" name="bStop" color="7" fill="6" visible="no" active="no"/>
+<layer number="31" name="tCream" color="7" fill="4" visible="no" active="no"/>
+<layer number="32" name="bCream" color="7" fill="5" visible="no" active="no"/>
+<layer number="33" name="tFinish" color="6" fill="3" visible="no" active="no"/>
+<layer number="34" name="bFinish" color="6" fill="6" visible="no" active="no"/>
+<layer number="35" name="tGlue" color="7" fill="4" visible="no" active="no"/>
+<layer number="36" name="bGlue" color="7" fill="5" visible="no" active="no"/>
+<layer number="37" name="tTest" color="7" fill="1" visible="yes" active="no"/>
+<layer number="38" name="bTest" color="7" fill="1" visible="yes" active="no"/>
+<layer number="39" name="tKeepout" color="4" fill="11" visible="no" active="no"/>
+<layer number="40" name="bKeepout" color="1" fill="11" visible="no" active="no"/>
+<layer number="41" name="tRestrict" color="4" fill="10" visible="no" active="no"/>
+<layer number="42" name="bRestrict" color="1" fill="10" visible="no" active="no"/>
+<layer number="43" name="vRestrict" color="2" fill="10" visible="no" active="no"/>
+<layer number="44" name="Drills" color="7" fill="1" visible="no" active="no"/>
+<layer number="45" name="Holes" color="7" fill="1" visible="no" active="no"/>
+<layer number="46" name="Milling" color="3" fill="1" visible="yes" active="no"/>
+<layer number="47" name="Measures" color="7" fill="1" visible="yes" active="no"/>
+<layer number="48" name="Document" color="7" fill="1" visible="yes" active="no"/>
+<layer number="49" name="Reference" color="7" fill="1" visible="yes" active="no"/>
+<layer number="50" name="dxf" color="7" fill="1" visible="yes" active="no"/>
+<layer number="51" name="tDocu" color="7" fill="1" visible="yes" active="no"/>
+<layer number="52" name="bDocu" color="7" fill="1" visible="yes" active="no"/>
+<layer number="53" name="tGND_GNDA" color="7" fill="9" visible="yes" active="no"/>
+<layer number="54" name="bGND_GNDA" color="1" fill="9" visible="yes" active="no"/>
+<layer number="56" name="wert" color="7" fill="1" visible="yes" active="no"/>
+<layer number="57" name="tCAD" color="7" fill="1" visible="yes" active="no"/>
+<layer number="58" name="b3D" color="7" fill="1" visible="yes" active="no"/>
+<layer number="59" name="tCarbon" color="7" fill="1" visible="yes" active="no"/>
+<layer number="60" name="bCarbon" color="7" fill="1" visible="yes" active="no"/>
+<layer number="61" name="stand" color="7" fill="1" visible="yes" active="no"/>
+<layer number="88" name="SimResults" color="9" fill="1" visible="yes" active="yes"/>
+<layer number="89" name="SimProbes" color="9" fill="1" visible="yes" active="yes"/>
+<layer number="90" name="Modules" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="91" name="Nets" color="2" fill="1" visible="yes" active="yes"/>
+<layer number="92" name="Busses" color="1" fill="1" visible="yes" active="yes"/>
+<layer number="93" name="Pins" color="2" fill="1" visible="no" active="yes"/>
+<layer number="94" name="Symbols" color="4" fill="1" visible="yes" active="yes"/>
+<layer number="95" name="Names" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="96" name="Values" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="97" name="Info" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="98" name="Guide" color="6" fill="1" visible="yes" active="yes"/>
+<layer number="99" name="SpiceOrder" color="7" fill="1" visible="no" active="no"/>
+<layer number="100" name="Muster" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="101" name="Patch_Top" color="12" fill="4" visible="yes" active="yes"/>
+<layer number="102" name="Mittellin" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="103" name="Stiffner" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="104" name="Name" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="105" name="Beschreib" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="106" name="BGA-Top" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="107" name="BD-Top" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="108" name="tBridges" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="109" name="tBPL" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="110" name="bBPL" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="111" name="MPL" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="112" name="tSilk" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="113" name="ReferenceLS" color="7" fill="1" visible="no" active="no"/>
+<layer number="114" name="tPlaceRed" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="115" name="FRNTMAAT2" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="116" name="Patch_BOT" color="9" fill="4" visible="yes" active="yes"/>
+<layer number="117" name="BACKMAAT1" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="118" name="Rect_Pads" color="7" fill="1" visible="no" active="no"/>
+<layer number="119" name="KAP_TEKEN" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="120" name="KAP_MAAT1" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="121" name="sName" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="122" name="_bPlace" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="123" name="tTestmark" color="7" fill="1" visible="no" active="yes"/>
+<layer number="124" name="bTestmark" color="7" fill="1" visible="no" active="yes"/>
+<layer number="125" name="_tNames" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="126" name="_bNames" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="127" name="_tValues" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="128" name="_bValues" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="129" name="Mask" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="130" name="SMDSTROOK" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="131" name="tAdjust" color="7" fill="1" visible="no" active="yes"/>
+<layer number="132" name="bAdjust" color="7" fill="1" visible="no" active="yes"/>
+<layer number="133" name="bottom_silk" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="134" name="silk_top" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="135" name="silk_bottom" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="136" name="silktop" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="137" name="silkbottom" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="138" name="EEE" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="139" name="_tKeepout" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="140" name="mbKeepout" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="141" name="ASSEMBLY_TOP" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="142" name="mbRestrict" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="143" name="PLACE_BOUND_TOP" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="144" name="Drill_legend" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="145" name="DrillLegend_01-16" color="2" fill="9" visible="no" active="yes"/>
+<layer number="146" name="DrillLegend_01-20" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="147" name="PIN_NUMBER" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="148" name="mDocument" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="149" name="DrillLegend_02-15" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="150" name="Notes" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="151" name="HeatSink" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="152" name="_bDocu" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="153" name="FabDoc1" color="6" fill="1" visible="no" active="no"/>
+<layer number="154" name="FabDoc2" color="2" fill="1" visible="no" active="no"/>
+<layer number="155" name="FabDoc3" color="7" fill="15" visible="no" active="no"/>
+<layer number="166" name="AntennaArea" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="168" name="4mmHeightArea" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="191" name="mNets" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="192" name="mBusses" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="193" name="mPins" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="194" name="mSymbols" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="195" name="mNames" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="196" name="mValues" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="199" name="Contour" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="200" name="200bmp" color="1" fill="10" visible="yes" active="yes"/>
+<layer number="201" name="201bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="202" name="202bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="203" name="203bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="204" name="204bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="205" name="205bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="206" name="206bmp" color="7" fill="10" visible="yes" active="yes"/>
+<layer number="207" name="207bmp" color="8" fill="10" visible="yes" active="yes"/>
+<layer number="208" name="208bmp" color="9" fill="10" visible="yes" active="yes"/>
+<layer number="209" name="209bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="210" name="210bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="211" name="211bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="212" name="212bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="213" name="213bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="214" name="214bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="215" name="215bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="216" name="216bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="217" name="217bmp" color="18" fill="1" visible="no" active="no"/>
+<layer number="218" name="218bmp" color="19" fill="1" visible="no" active="no"/>
+<layer number="219" name="219bmp" color="20" fill="1" visible="no" active="no"/>
+<layer number="220" name="220bmp" color="21" fill="1" visible="no" active="no"/>
+<layer number="221" name="221bmp" color="22" fill="1" visible="no" active="no"/>
+<layer number="222" name="222bmp" color="23" fill="1" visible="no" active="no"/>
+<layer number="223" name="223bmp" color="24" fill="1" visible="no" active="no"/>
+<layer number="224" name="224bmp" color="25" fill="1" visible="no" active="no"/>
+<layer number="225" name="225bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="226" name="226bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="227" name="227bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="228" name="228bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="229" name="229bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="230" name="230bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="231" name="Eagle3D_PG1" color="7" fill="1" visible="no" active="no"/>
+<layer number="232" name="Eagle3D_PG2" color="7" fill="1" visible="no" active="no"/>
+<layer number="233" name="Eagle3D_PG3" color="7" fill="1" visible="no" active="no"/>
+<layer number="248" name="Housing" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="249" name="Edge" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="250" name="Descript" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="251" name="SMDround" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="254" name="cooling" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="255" name="routoute" color="7" fill="1" visible="yes" active="yes"/>
+</layers>
+<schematic xreflabel="%F%N/%S.%C%R" xrefpart="/%S.%C%R">
+<libraries>
+<library name="microbuilder">
+<description>&lt;h2&gt;&lt;b&gt;microBuilder.eu&lt;/b&gt; Eagle Footprint Library&lt;/h2&gt;
+
+&lt;p&gt;Footprints for common components used in our projects and products. This is the same library that we use internally, and it is regularly updated. The newest version can always be found at &lt;b&gt;www.microBuilder.eu&lt;/b&gt;. If you find this library useful, please feel free to purchase something from our online store. Please also note that all holes are optimised for metric drill bits!&lt;/p&gt;
+
+&lt;h3&gt;Obligatory Warning&lt;/h3&gt;
+&lt;p&gt;While it probably goes without saying, there are no guarantees that the footprints or schematic symbols in this library are flawless, and we make no promises of fitness for production, prototyping or any other purpose. These libraries are provided for information puposes only, and are used at your own discretion. While we make every effort to produce accurate footprints, and many of the items found in this library have be proven in production, we can't make any promises of suitability for a specific purpose. If you do find any errors, though, please feel free to contact us at www.microbuilder.eu to let us know about it so that we can update the library accordingly!&lt;/p&gt;
+
+&lt;h3&gt;License&lt;/h3&gt;
+&lt;p&gt;This work is placed in the public domain, and may be freely used for commercial and non-commercial work with the following conditions:&lt;/p&gt;
+&lt;p&gt;THIS SOFTWARE IS PROVIDED ''AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+&lt;/p&gt;</description>
+<packages>
+<package name="_0402">
+<description>&lt;b&gt; 0402&lt;/b&gt;</description>
+<wire x1="-0.245" y1="0.174" x2="0.245" y2="0.174" width="0.1016" layer="51"/>
+<wire x1="0.245" y1="-0.174" x2="-0.245" y2="-0.174" width="0.1016" layer="51"/>
+<wire x1="-1.0573" y1="0.5557" x2="1.0573" y2="0.5557" width="0.2032" layer="21"/>
+<wire x1="1.0573" y1="0.5557" x2="1.0573" y2="-0.5556" width="0.2032" layer="21"/>
+<wire x1="1.0573" y1="-0.5556" x2="-1.0573" y2="-0.5557" width="0.2032" layer="21"/>
+<wire x1="-1.0573" y1="-0.5557" x2="-1.0573" y2="0.5557" width="0.2032" layer="21"/>
+<smd name="1" x="-0.508" y="0" dx="0.6" dy="0.6" layer="1"/>
+<smd name="2" x="0.508" y="0" dx="0.6" dy="0.6" layer="1"/>
+<text x="-0.9525" y="0.7939" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-0.9525" y="-1.3336" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-0.0794" y1="-0.2381" x2="0.0794" y2="0.2381" layer="35"/>
+<rectangle x1="0.25" y1="-0.25" x2="0.5" y2="0.25" layer="51"/>
+<rectangle x1="-0.5" y1="-0.25" x2="-0.25" y2="0.25" layer="51"/>
+</package>
+<package name="_0402MP">
+<description>&lt;b&gt;0402 MicroPitch&lt;p&gt;</description>
+<wire x1="-0.245" y1="0.174" x2="0.245" y2="0.174" width="0.1016" layer="51"/>
+<wire x1="0.245" y1="-0.174" x2="-0.245" y2="-0.174" width="0.1016" layer="51"/>
+<wire x1="0" y1="0.127" x2="0" y2="-0.127" width="0.2032" layer="21"/>
+<smd name="1" x="-0.508" y="0" dx="0.5" dy="0.5" layer="1"/>
+<smd name="2" x="0.508" y="0" dx="0.5" dy="0.5" layer="1"/>
+<text x="-0.635" y="0.4763" size="0.6096" layer="25" ratio="18">&gt;NAME</text>
+<text x="-0.635" y="-0.7938" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-0.1" y1="-0.2" x2="0.1" y2="0.2" layer="35"/>
+<rectangle x1="-0.5" y1="-0.25" x2="-0.254" y2="0.25" layer="51"/>
+<rectangle x1="0.2588" y1="-0.25" x2="0.5" y2="0.25" layer="51"/>
+</package>
+<package name="_0603">
+<description>&lt;b&gt;0603&lt;/b&gt;</description>
+<wire x1="-0.432" y1="-0.306" x2="0.432" y2="-0.306" width="0.1016" layer="51"/>
+<wire x1="0.432" y1="0.306" x2="-0.432" y2="0.306" width="0.1016" layer="51"/>
+<wire x1="-1.4605" y1="0.635" x2="1.4605" y2="0.635" width="0.2032" layer="21"/>
+<wire x1="1.4605" y1="0.635" x2="1.4605" y2="-0.635" width="0.2032" layer="21"/>
+<wire x1="1.4605" y1="-0.635" x2="-1.4605" y2="-0.635" width="0.2032" layer="21"/>
+<wire x1="-1.4605" y1="-0.635" x2="-1.4605" y2="0.635" width="0.2032" layer="21"/>
+<smd name="1" x="-0.762" y="0" dx="0.9" dy="0.8" layer="1"/>
+<smd name="2" x="0.762" y="0" dx="0.9" dy="0.8" layer="1"/>
+<text x="-1.27" y="0.9525" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.27" y="-1.4923" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="0.4318" y1="-0.4" x2="0.8382" y2="0.4" layer="51"/>
+<rectangle x1="-0.8382" y1="-0.4" x2="-0.4318" y2="0.4" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.4001" x2="0.1999" y2="0.4001" layer="35"/>
+</package>
+<package name="_0603MP">
+<description>&lt;b&gt;0603 MicroPitch&lt;/b&gt;</description>
+<wire x1="-0.432" y1="-0.306" x2="0.432" y2="-0.306" width="0.1016" layer="51"/>
+<wire x1="0.432" y1="0.306" x2="-0.432" y2="0.306" width="0.1016" layer="51"/>
+<wire x1="0" y1="0.254" x2="0" y2="-0.254" width="0.2032" layer="21"/>
+<smd name="1" x="-0.762" y="0" dx="0.8" dy="0.8" layer="1"/>
+<smd name="2" x="0.762" y="0" dx="0.8" dy="0.8" layer="1"/>
+<text x="-0.9525" y="0.635" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-0.9525" y="-0.9525" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="0.4318" y1="-0.4" x2="0.8" y2="0.4" layer="51"/>
+<rectangle x1="-0.8" y1="-0.4" x2="-0.4318" y2="0.4" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.25" x2="0.1999" y2="0.25" layer="35"/>
+</package>
+<package name="_0805">
+<description>&lt;b&gt;0805&lt;/b&gt;</description>
+<wire x1="-0.41" y1="0.585" x2="0.41" y2="0.585" width="0.1016" layer="51"/>
+<wire x1="-0.41" y1="-0.585" x2="0.41" y2="-0.585" width="0.1016" layer="51"/>
+<wire x1="-1.905" y1="0.889" x2="1.905" y2="0.889" width="0.2032" layer="21"/>
+<wire x1="1.905" y1="0.889" x2="1.905" y2="-0.889" width="0.2032" layer="21"/>
+<wire x1="1.905" y1="-0.889" x2="-1.905" y2="-0.889" width="0.2032" layer="21"/>
+<wire x1="-1.905" y1="-0.889" x2="-1.905" y2="0.889" width="0.2032" layer="21"/>
+<smd name="1" x="-1.016" y="0" dx="1.2" dy="1.3" layer="1"/>
+<smd name="2" x="1.016" y="0" dx="1.2" dy="1.3" layer="1"/>
+<text x="-1.5875" y="1.27" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.5874" y="-1.651" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="0.4064" y1="-0.65" x2="1.0564" y2="0.65" layer="51"/>
+<rectangle x1="-1.0668" y1="-0.65" x2="-0.4168" y2="0.65" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.5001" x2="0.1999" y2="0.5001" layer="35"/>
+</package>
+<package name="_0805MP">
+<description>&lt;b&gt;0805 MicroPitch&lt;/b&gt;</description>
+<wire x1="-0.51" y1="0.535" x2="0.51" y2="0.535" width="0.1016" layer="51"/>
+<wire x1="-0.51" y1="-0.535" x2="0.51" y2="-0.535" width="0.1016" layer="51"/>
+<wire x1="0" y1="0.508" x2="0" y2="-0.508" width="0.2032" layer="21"/>
+<smd name="1" x="-1.016" y="0" dx="1.2" dy="1.3" layer="1"/>
+<smd name="2" x="1.016" y="0" dx="1.2" dy="1.3" layer="1"/>
+<text x="-1.5875" y="0.9525" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.5875" y="-1.27" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="0.4064" y1="-0.65" x2="1" y2="0.65" layer="51"/>
+<rectangle x1="-1" y1="-0.65" x2="-0.4168" y2="0.65" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.5001" x2="0.1999" y2="0.5001" layer="35"/>
+</package>
+<package name="2012">
+<wire x1="-1.662" y1="1.245" x2="1.662" y2="1.245" width="0.2032" layer="51"/>
+<wire x1="-1.637" y1="-1.245" x2="1.687" y2="-1.245" width="0.2032" layer="51"/>
+<wire x1="-3.473" y1="1.483" x2="3.473" y2="1.483" width="0.0508" layer="39"/>
+<wire x1="3.473" y1="1.483" x2="3.473" y2="-1.483" width="0.0508" layer="39"/>
+<wire x1="3.473" y1="-1.483" x2="-3.473" y2="-1.483" width="0.0508" layer="39"/>
+<wire x1="-3.473" y1="-1.483" x2="-3.473" y2="1.483" width="0.0508" layer="39"/>
+<wire x1="-3.302" y1="1.524" x2="3.302" y2="1.524" width="0.2032" layer="21"/>
+<wire x1="3.302" y1="1.524" x2="3.302" y2="-1.524" width="0.2032" layer="21"/>
+<wire x1="3.302" y1="-1.524" x2="-3.302" y2="-1.524" width="0.2032" layer="21"/>
+<wire x1="-3.302" y1="-1.524" x2="-3.302" y2="1.524" width="0.2032" layer="21"/>
+<smd name="1" x="-2.2" y="0" dx="1.8" dy="2.7" layer="1"/>
+<smd name="2" x="2.2" y="0" dx="1.8" dy="2.7" layer="1"/>
+<text x="-2.54" y="1.8415" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-2.667" y="-2.159" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-2.4892" y1="-1.3208" x2="-1.6393" y2="1.3292" layer="51"/>
+<rectangle x1="1.651" y1="-1.3208" x2="2.5009" y2="1.3292" layer="51"/>
+</package>
+<package name="2512">
+<description>&lt;b&gt;RESISTOR 2512 (Metric 6432)&lt;/b&gt;</description>
+<wire x1="-2.362" y1="1.473" x2="2.387" y2="1.473" width="0.2032" layer="51"/>
+<wire x1="-2.362" y1="-1.473" x2="2.387" y2="-1.473" width="0.2032" layer="51"/>
+<wire x1="-3.973" y1="1.983" x2="3.973" y2="1.983" width="0.0508" layer="39"/>
+<wire x1="3.973" y1="1.983" x2="3.973" y2="-1.983" width="0.0508" layer="39"/>
+<wire x1="3.973" y1="-1.983" x2="-3.973" y2="-1.983" width="0.0508" layer="39"/>
+<wire x1="-3.973" y1="-1.983" x2="-3.973" y2="1.983" width="0.0508" layer="39"/>
+<smd name="1" x="-2.8" y="0" dx="1.8" dy="3.2" layer="1"/>
+<smd name="2" x="2.8" y="0" dx="1.8" dy="3.2" layer="1"/>
+<text x="-3.683" y="1.905" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-3.556" y="-2.286" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-3.2004" y1="-1.5494" x2="-2.3505" y2="1.5507" layer="51"/>
+<rectangle x1="2.3622" y1="-1.5494" x2="3.2121" y2="1.5507" layer="51"/>
+<rectangle x1="-0.5001" y1="-1" x2="0.5001" y2="1" layer="35"/>
+</package>
+<package name="0603-MINI">
+<description>0603-Mini
+&lt;p&gt;Mini footprint for dense boards&lt;/p&gt;</description>
+<wire x1="-1.346" y1="0.583" x2="1.346" y2="0.583" width="0.0508" layer="39"/>
+<wire x1="1.346" y1="0.583" x2="1.346" y2="-0.583" width="0.0508" layer="39"/>
+<wire x1="1.346" y1="-0.583" x2="-1.346" y2="-0.583" width="0.0508" layer="39"/>
+<wire x1="-1.346" y1="-0.583" x2="-1.346" y2="0.583" width="0.0508" layer="39"/>
+<wire x1="-1.45" y1="-0.7" x2="-1.45" y2="0.7" width="0.2032" layer="21"/>
+<wire x1="-1.45" y1="0.7" x2="1.45" y2="0.7" width="0.2032" layer="21"/>
+<wire x1="1.45" y1="0.7" x2="1.45" y2="-0.7" width="0.2032" layer="21"/>
+<wire x1="1.45" y1="-0.7" x2="-1.45" y2="-0.7" width="0.2032" layer="21"/>
+<wire x1="-0.356" y1="0.432" x2="0.356" y2="0.432" width="0.1016" layer="51"/>
+<wire x1="-0.356" y1="-0.419" x2="0.356" y2="-0.419" width="0.1016" layer="51"/>
+<smd name="1" x="-0.75" y="0" dx="0.9" dy="0.9" layer="1"/>
+<smd name="2" x="0.75" y="0" dx="0.9" dy="0.9" layer="1"/>
+<text x="1.524" y="-0.0635" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="1.524" y="-0.635" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-0.8382" y1="-0.4699" x2="-0.3381" y2="0.4801" layer="51"/>
+<rectangle x1="0.3302" y1="-0.4699" x2="0.8303" y2="0.4801" layer="51"/>
+</package>
+<package name="0805_NOTHERMALS">
+<wire x1="-1.873" y1="0.883" x2="1.873" y2="0.883" width="0.0508" layer="39"/>
+<wire x1="1.873" y1="-0.883" x2="-1.873" y2="-0.883" width="0.0508" layer="39"/>
+<wire x1="-1.873" y1="-0.883" x2="-1.873" y2="0.883" width="0.0508" layer="39"/>
+<wire x1="-0.381" y1="0.66" x2="0.381" y2="0.66" width="0.1016" layer="51"/>
+<wire x1="-0.356" y1="-0.66" x2="0.381" y2="-0.66" width="0.1016" layer="51"/>
+<wire x1="1.873" y1="0.883" x2="1.873" y2="-0.883" width="0.0508" layer="39"/>
+<wire x1="1.85" y1="1" x2="1.85" y2="-1" width="0.2032" layer="21"/>
+<wire x1="1.85" y1="-1" x2="-1.85" y2="-1" width="0.2032" layer="21"/>
+<wire x1="-1.85" y1="-1" x2="-1.85" y2="1" width="0.2032" layer="21"/>
+<wire x1="-1.85" y1="1" x2="1.85" y2="1" width="0.2032" layer="21"/>
+<smd name="1" x="-0.95" y="0" dx="1.3" dy="1.5" layer="1" thermals="no"/>
+<smd name="2" x="0.95" y="0" dx="1.3" dy="1.5" layer="1" thermals="no"/>
+<text x="2.032" y="-0.127" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="2.032" y="-0.762" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-1.0922" y1="-0.7239" x2="-0.3421" y2="0.7262" layer="51"/>
+<rectangle x1="0.3556" y1="-0.7239" x2="1.1057" y2="0.7262" layer="51"/>
+</package>
+<package name="0805-NO">
+<wire x1="-0.381" y1="0.66" x2="0.381" y2="0.66" width="0.1016" layer="51"/>
+<wire x1="-0.356" y1="-0.66" x2="0.381" y2="-0.66" width="0.1016" layer="51"/>
+<smd name="1" x="-0.95" y="0" dx="1.24" dy="1.5" layer="1"/>
+<smd name="2" x="0.95" y="0" dx="1.24" dy="1.5" layer="1"/>
+<text x="2.032" y="-0.127" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="2.032" y="-0.762" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-1.0922" y1="-0.7239" x2="-0.3421" y2="0.7262" layer="51"/>
+<rectangle x1="0.3556" y1="-0.7239" x2="1.1057" y2="0.7262" layer="51"/>
+<wire x1="0" y1="0.508" x2="0" y2="-0.508" width="0.3048" layer="21"/>
+</package>
+<package name="0805_10MGAP">
+<wire x1="-0.381" y1="0.66" x2="0.381" y2="0.66" width="0.1016" layer="51"/>
+<wire x1="-0.356" y1="-0.66" x2="0.381" y2="-0.66" width="0.1016" layer="51"/>
+<smd name="1" x="-1.05" y="0" dx="1.2" dy="1.5" layer="1"/>
+<smd name="2" x="1.05" y="0" dx="1.2" dy="1.5" layer="1"/>
+<text x="2.032" y="-0.127" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="2.032" y="-0.762" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-1.0922" y1="-0.7239" x2="-0.3421" y2="0.7262" layer="51"/>
+<rectangle x1="0.3556" y1="-0.7239" x2="1.1057" y2="0.7262" layer="51"/>
+<wire x1="0" y1="0.508" x2="0" y2="-0.508" width="0.3048" layer="21"/>
+</package>
+<package name="MOUNTINGHOLE_3.0_PLATED">
+<wire x1="-2.159" y1="0" x2="0" y2="-2.159" width="2.4892" layer="51" curve="90" cap="flat"/>
+<wire x1="0" y1="2.159" x2="2.159" y2="0" width="2.4892" layer="51" curve="-90" cap="flat"/>
+<circle x="0" y="0" radius="3.429" width="0.2032" layer="21"/>
+<circle x="0" y="0" radius="0.762" width="0.4572" layer="51"/>
+<circle x="0" y="0" radius="3.048" width="2.032" layer="39"/>
+<circle x="0" y="0" radius="3.048" width="2.032" layer="43"/>
+<circle x="0" y="0" radius="3.048" width="2.032" layer="40"/>
+<circle x="0" y="0" radius="3.048" width="2.032" layer="41"/>
+<circle x="0" y="0" radius="3.048" width="2.032" layer="42"/>
+<pad name="P$1" x="0" y="0" drill="3" diameter="6.4516"/>
+<text x="-1.27" y="-3.81" size="1.27" layer="48">3,0</text>
+</package>
+<package name="MOUNTINGHOLE_1.0_PLATED">
+<circle x="0" y="0" radius="1.75" width="0.2032" layer="21"/>
+<circle x="0" y="0" radius="1" width="2.032" layer="39"/>
+<circle x="0" y="0" radius="1" width="2.032" layer="43"/>
+<circle x="0" y="0" radius="1" width="2.032" layer="40"/>
+<circle x="0" y="0" radius="1" width="2.032" layer="41"/>
+<circle x="0" y="0" radius="1" width="2.032" layer="42"/>
+<pad name="P$1" x="0" y="0" drill="1" diameter="3"/>
+<text x="-0.87" y="-2.74" size="0.8128" layer="48">1,0</text>
+</package>
+<package name="MOUNTINGHOLE_2.0_PLATED">
+<circle x="0" y="0" radius="1.8" width="0.2032" layer="21"/>
+<circle x="0" y="0" radius="1" width="2.032" layer="39"/>
+<circle x="0" y="0" radius="1" width="2.032" layer="43"/>
+<circle x="0" y="0" radius="1" width="2.032" layer="40"/>
+<circle x="0" y="0" radius="1" width="2.032" layer="41"/>
+<circle x="0" y="0" radius="1" width="2.032" layer="42"/>
+<pad name="P$1" x="0" y="0" drill="2.2" diameter="3"/>
+<text x="-0.87" y="-2.74" size="0.8128" layer="48">2,0</text>
+</package>
+<package name="MOUNTINGHOLE_3.0_PLATEDTHIN">
+<circle x="0" y="0" radius="2.2" width="0.2" layer="21"/>
+<circle x="0" y="0" radius="1" width="2.032" layer="39"/>
+<circle x="0" y="0" radius="1" width="2.032" layer="43"/>
+<circle x="0" y="0" radius="1" width="2.032" layer="40"/>
+<circle x="0" y="0" radius="1" width="2.032" layer="41"/>
+<circle x="0" y="0" radius="1" width="2.032" layer="42"/>
+<pad name="P$1" x="0" y="0" drill="3" diameter="3.6"/>
+</package>
+<package name="MOUNTINGHOLE_2.5_PLATED">
+<circle x="0" y="0" radius="2" width="0.2032" layer="21"/>
+<circle x="0" y="0" radius="1" width="2.032" layer="39"/>
+<circle x="0" y="0" radius="1" width="2.032" layer="40"/>
+<circle x="0" y="0" radius="1" width="2.032" layer="41"/>
+<circle x="0" y="0" radius="1" width="2.032" layer="42"/>
+<pad name="P$1" x="0" y="0" drill="2.5" diameter="3.2"/>
+</package>
+<package name="MOUNTINGHOLE_2.5_PLATED_THICK">
+<circle x="0" y="0" radius="2.25" width="0.2032" layer="21"/>
+<circle x="0" y="0" radius="1.25" width="2.032" layer="39"/>
+<circle x="0" y="0" radius="1.25" width="2.032" layer="40"/>
+<circle x="0" y="0" radius="1.25" width="2.032" layer="41"/>
+<circle x="0" y="0" radius="1.25" width="2.032" layer="42"/>
+<pad name="P$1" x="0" y="0" drill="2.5" diameter="4"/>
+</package>
+<package name="MOUNTINGHOLE_3.0_PLATED_VIAS">
+<wire x1="-2.159" y1="0" x2="0" y2="-2.159" width="2.4892" layer="51" curve="90" cap="flat"/>
+<wire x1="0" y1="2.159" x2="2.159" y2="0" width="2.4892" layer="51" curve="-90" cap="flat"/>
+<circle x="0" y="0" radius="3.429" width="0.2032" layer="21"/>
+<circle x="0" y="0" radius="0.762" width="0.4572" layer="51"/>
+<circle x="0" y="0" radius="3.048" width="2.032" layer="39"/>
+<circle x="0" y="0" radius="3.048" width="2.032" layer="41"/>
+<pad name="P$1" x="0" y="0" drill="3" diameter="6.4516"/>
+<pad name="P$2" x="0" y="2.5" drill="0.4"/>
+<pad name="P$3" x="2.5" y="0" drill="0.4"/>
+<pad name="P$4" x="0" y="-2.5" drill="0.4"/>
+<pad name="P$5" x="-2.5" y="0" drill="0.4"/>
+<pad name="P$6" x="-1.8" y="1.7" drill="0.4"/>
+<pad name="P$7" x="-1.8" y="-1.7" drill="0.4"/>
+<pad name="P$8" x="1.8" y="-1.7" drill="0.4"/>
+<pad name="P$9" x="1.8" y="1.7" drill="0.4"/>
+</package>
+<package name="MOUNTINGHOLE_3.0_PLATED_SQUAREVIAS">
+<circle x="0" y="0" radius="0.762" width="0.4572" layer="51"/>
+<pad name="P$1" x="0" y="0" drill="3" diameter="6.4" shape="square"/>
+<rectangle x1="-3.75" y1="-3.75" x2="3.75" y2="3.75" layer="39"/>
+<rectangle x1="-3.75" y1="-3.75" x2="3.75" y2="3.75" layer="41"/>
+<wire x1="-3.4" y1="3.4" x2="-3.4" y2="-3.4" width="0.127" layer="21"/>
+<wire x1="-3.4" y1="-3.4" x2="3.4" y2="-3.4" width="0.127" layer="21"/>
+<wire x1="3.4" y1="-3.4" x2="3.4" y2="3.4" width="0.127" layer="21"/>
+<wire x1="3.4" y1="3.4" x2="-3.4" y2="3.4" width="0.127" layer="21"/>
+<pad name="P$2" x="-2.25" y="0" drill="0.4"/>
+<pad name="P$3" x="0" y="2.25" drill="0.4"/>
+<pad name="P$4" x="2.25" y="0" drill="0.4"/>
+<pad name="P$5" x="0" y="-2.25" drill="0.4"/>
+<pad name="P$6" x="-2.25" y="2.25" drill="0.4"/>
+<pad name="P$7" x="2.25" y="2.25" drill="0.4"/>
+<pad name="P$8" x="2.25" y="-2.25" drill="0.4"/>
+<pad name="P$9" x="-2.25" y="-2.25" drill="0.4"/>
+</package>
+<package name="CHIPLED_0805_NOOUTLINE">
+<wire x1="-0.35" y1="0.925" x2="0.35" y2="0.925" width="0.1016" layer="51" curve="162.394521"/>
+<wire x1="-0.35" y1="-0.925" x2="0.35" y2="-0.925" width="0.1016" layer="51" curve="-162.394521"/>
+<wire x1="0.575" y1="0.525" x2="0.575" y2="-0.525" width="0.1016" layer="51"/>
+<wire x1="-0.575" y1="-0.5" x2="-0.575" y2="0.925" width="0.1016" layer="51"/>
+<circle x="-0.45" y="0.85" radius="0.103" width="0.0762" layer="51"/>
+<smd name="C" x="0" y="1.05" dx="1.2" dy="1.2" layer="1"/>
+<smd name="A" x="0" y="-1.05" dx="1.2" dy="1.2" layer="1"/>
+<text x="-1.016" y="-1.778" size="0.8128" layer="25" ratio="18" rot="R90">&gt;NAME</text>
+<text x="1.397" y="-1.778" size="0.4064" layer="27" ratio="10" rot="R90">&gt;VALUE</text>
+<text x="-0.1" y="-1.4" size="0.254" layer="51">A</text>
+<text x="-0.1" y="1.2" size="0.254" layer="51">C</text>
+<rectangle x1="0.3" y1="0.5" x2="0.625" y2="1" layer="51"/>
+<rectangle x1="-0.325" y1="0.5" x2="-0.175" y2="0.75" layer="51"/>
+<rectangle x1="0.175" y1="0.5" x2="0.325" y2="0.75" layer="51"/>
+<rectangle x1="-0.2" y1="0.5" x2="0.2" y2="0.675" layer="51"/>
+<rectangle x1="0.3" y1="-1" x2="0.625" y2="-0.5" layer="51"/>
+<rectangle x1="-0.625" y1="-1" x2="-0.3" y2="-0.5" layer="51"/>
+<rectangle x1="0.175" y1="-0.75" x2="0.325" y2="-0.5" layer="51"/>
+<rectangle x1="-0.325" y1="-0.75" x2="-0.175" y2="-0.5" layer="51"/>
+<rectangle x1="-0.2" y1="-0.675" x2="0.2" y2="-0.5" layer="51"/>
+<rectangle x1="-0.6" y1="0.5" x2="-0.3" y2="0.762" layer="51"/>
+<rectangle x1="-0.625" y1="0.925" x2="-0.3" y2="1" layer="51"/>
+<rectangle x1="-0.4445" y1="0.1405" x2="0.4445" y2="0.331" layer="21"/>
+<polygon width="0.1524" layer="21">
+<vertex x="0" y="0.254"/>
+<vertex x="-0.381" y="-0.254"/>
+<vertex x="0.381" y="-0.254"/>
+</polygon>
+</package>
+<package name="CHIPLED_1206">
+<description>&lt;b&gt;CHIPLED 1206&lt;/b&gt;</description>
+<wire x1="-0.4" y1="1.6" x2="0.4" y2="1.6" width="0.1016" layer="51" curve="172.619069"/>
+<wire x1="-0.8" y1="-0.95" x2="-0.8" y2="0.95" width="0.1016" layer="51"/>
+<wire x1="0.8" y1="0.95" x2="0.8" y2="-0.95" width="0.1016" layer="51"/>
+<wire x1="-0.6" y1="0.446" x2="0" y2="0.446" width="0.2032" layer="21"/>
+<wire x1="0" y1="0.446" x2="0.6" y2="0.446" width="0.2032" layer="21"/>
+<wire x1="0" y1="0.446" x2="-0.6" y2="-0.154" width="0.2032" layer="21"/>
+<wire x1="-0.6" y1="-0.154" x2="0.6" y2="-0.154" width="0.2032" layer="21"/>
+<wire x1="0.6" y1="-0.154" x2="0" y2="0.446" width="0.2032" layer="21"/>
+<wire x1="1" y1="2.4985" x2="-1" y2="2.4985" width="0.2032" layer="21"/>
+<wire x1="-1" y1="2.4985" x2="-1" y2="-2.4985" width="0.2032" layer="21"/>
+<wire x1="-1" y1="-2.4985" x2="1" y2="-2.4985" width="0.2032" layer="21"/>
+<wire x1="1" y1="-2.4985" x2="1" y2="2.4985" width="0.2032" layer="21"/>
+<circle x="-0.55" y="1.425" radius="0.1" width="0.0762" layer="51"/>
+<smd name="C" x="0" y="1.496" dx="1.5" dy="1.5" layer="1"/>
+<smd name="A" x="0" y="-1.496" dx="1.5" dy="1.5" layer="1"/>
+<text x="-1.27" y="-2.286" size="0.8128" layer="25" ratio="18" rot="R90">&gt;NAME</text>
+<text x="1.651" y="-2.286" size="0.4064" layer="27" ratio="10" rot="R90">&gt;VALUE</text>
+<text x="-0.1" y="-2.23" size="0.4064" layer="51">A</text>
+<text x="-0.1" y="1.86" size="0.4064" layer="51">C</text>
+<rectangle x1="-0.85" y1="1.525" x2="-0.35" y2="1.65" layer="51"/>
+<rectangle x1="-0.85" y1="1.225" x2="-0.625" y2="1.55" layer="51"/>
+<rectangle x1="-0.45" y1="1.225" x2="-0.325" y2="1.45" layer="51"/>
+<rectangle x1="-0.65" y1="1.225" x2="-0.225" y2="1.35" layer="51"/>
+<rectangle x1="0.35" y1="1.3" x2="0.85" y2="1.65" layer="51"/>
+<rectangle x1="0.25" y1="1.225" x2="0.85" y2="1.35" layer="51"/>
+<rectangle x1="-0.85" y1="0.95" x2="0.85" y2="1.25" layer="51"/>
+<rectangle x1="-0.85" y1="-1.65" x2="0.85" y2="-0.95" layer="51"/>
+</package>
+<package name="CHIPLED_0805">
+<description>&lt;b&gt;CHIPLED 0805&lt;/b&gt;</description>
+<wire x1="-0.35" y1="0.925" x2="0.35" y2="0.925" width="0.1016" layer="51" curve="162.394521"/>
+<wire x1="-0.35" y1="-0.925" x2="0.35" y2="-0.925" width="0.1016" layer="51" curve="-162.394521"/>
+<wire x1="0.575" y1="0.525" x2="0.575" y2="-0.525" width="0.1016" layer="51"/>
+<wire x1="-0.575" y1="-0.5" x2="-0.575" y2="0.925" width="0.1016" layer="51"/>
+<wire x1="-0.4" y1="0.2" x2="0" y2="0.2" width="0.2032" layer="21"/>
+<wire x1="0" y1="0.2" x2="0.4" y2="0.2" width="0.2032" layer="21"/>
+<wire x1="0" y1="0.2" x2="-0.4" y2="-0.2" width="0.2032" layer="21"/>
+<wire x1="-0.4" y1="-0.2" x2="0.4" y2="-0.2" width="0.2032" layer="21"/>
+<wire x1="0.4" y1="-0.2" x2="0" y2="0.2" width="0.2032" layer="21"/>
+<wire x1="0.85" y1="-1.9" x2="-0.85" y2="-1.9" width="0.2032" layer="21"/>
+<wire x1="-0.85" y1="-1.9" x2="-0.85" y2="1.9" width="0.2032" layer="21"/>
+<wire x1="-0.85" y1="1.9" x2="0.85" y2="1.9" width="0.2032" layer="21"/>
+<wire x1="0.85" y1="1.9" x2="0.85" y2="-1.9" width="0.2032" layer="21"/>
+<circle x="-0.45" y="0.85" radius="0.103" width="0.0762" layer="51"/>
+<smd name="C" x="0" y="1.05" dx="1.2" dy="1.2" layer="1"/>
+<smd name="A" x="0" y="-1.05" dx="1.2" dy="1.2" layer="1"/>
+<text x="-1.016" y="-1.778" size="0.8128" layer="25" ratio="18" rot="R90">&gt;NAME</text>
+<text x="1.397" y="-1.778" size="0.4064" layer="27" ratio="10" rot="R90">&gt;VALUE</text>
+<text x="-0.1" y="-1.4" size="0.254" layer="51">A</text>
+<text x="-0.1" y="1.2" size="0.254" layer="51">C</text>
+<rectangle x1="0.3" y1="0.5" x2="0.625" y2="1" layer="51"/>
+<rectangle x1="-0.325" y1="0.5" x2="-0.175" y2="0.75" layer="51"/>
+<rectangle x1="0.175" y1="0.5" x2="0.325" y2="0.75" layer="51"/>
+<rectangle x1="-0.2" y1="0.5" x2="0.2" y2="0.675" layer="51"/>
+<rectangle x1="0.3" y1="-1" x2="0.625" y2="-0.5" layer="51"/>
+<rectangle x1="-0.625" y1="-1" x2="-0.3" y2="-0.5" layer="51"/>
+<rectangle x1="0.175" y1="-0.75" x2="0.325" y2="-0.5" layer="51"/>
+<rectangle x1="-0.325" y1="-0.75" x2="-0.175" y2="-0.5" layer="51"/>
+<rectangle x1="-0.2" y1="-0.675" x2="0.2" y2="-0.5" layer="51"/>
+<rectangle x1="-0.6" y1="0.5" x2="-0.3" y2="0.762" layer="51"/>
+<rectangle x1="-0.625" y1="0.925" x2="-0.3" y2="1" layer="51"/>
+</package>
+<package name="CHIPLED_0603">
+<description>&lt;b&gt;CHIPLED 0603&lt;/b&gt;</description>
+<wire x1="-0.3" y1="0.8" x2="0.3" y2="0.8" width="0.1016" layer="51" curve="170.055574"/>
+<wire x1="-0.275" y1="-0.825" x2="0.275" y2="-0.825" width="0.0508" layer="51" curve="-180"/>
+<wire x1="-0.4" y1="0.375" x2="-0.4" y2="-0.35" width="0.1016" layer="51"/>
+<wire x1="0.4" y1="0.35" x2="0.4" y2="-0.35" width="0.1016" layer="51"/>
+<wire x1="-0.65" y1="-1.4" x2="-0.65" y2="1.4" width="0.2032" layer="21"/>
+<wire x1="0.65" y1="1.4" x2="0.65" y2="-1.4" width="0.2032" layer="21"/>
+<wire x1="-0.65" y1="1.4" x2="0.65" y2="1.4" width="0.2032" layer="21"/>
+<wire x1="-0.65" y1="-1.4" x2="0.65" y2="-1.4" width="0.2032" layer="21"/>
+<wire x1="-0.4" y1="0.2" x2="0" y2="0.2" width="0.2032" layer="21"/>
+<wire x1="0" y1="0.2" x2="0.4" y2="0.2" width="0.2032" layer="21"/>
+<wire x1="0" y1="0.2" x2="-0.4" y2="-0.2" width="0.2032" layer="21"/>
+<wire x1="-0.4" y1="-0.2" x2="0.4" y2="-0.2" width="0.2032" layer="21"/>
+<wire x1="0.4" y1="-0.2" x2="0" y2="0.2" width="0.2032" layer="21"/>
+<circle x="-0.35" y="0.625" radius="0.075" width="0.0508" layer="51"/>
+<smd name="C" x="0" y="0.75" dx="0.8" dy="0.8" layer="1"/>
+<smd name="A" x="0" y="-0.75" dx="0.8" dy="0.8" layer="1"/>
+<text x="-0.762" y="-1.27" size="0.8128" layer="25" ratio="18" rot="R90">&gt;NAME</text>
+<text x="1.27" y="-1.27" size="0.4064" layer="27" ratio="10" rot="R90">&gt;VALUE</text>
+<rectangle x1="-0.45" y1="0.7" x2="-0.25" y2="0.85" layer="51"/>
+<rectangle x1="-0.275" y1="0.55" x2="-0.225" y2="0.6" layer="51"/>
+<rectangle x1="-0.45" y1="0.35" x2="-0.4" y2="0.725" layer="51"/>
+<rectangle x1="0.25" y1="0.55" x2="0.45" y2="0.85" layer="51"/>
+<rectangle x1="-0.45" y1="0.35" x2="0.45" y2="0.575" layer="51"/>
+<rectangle x1="-0.45" y1="-0.85" x2="-0.25" y2="-0.35" layer="51"/>
+<rectangle x1="0.25" y1="-0.85" x2="0.45" y2="-0.35" layer="51"/>
+<rectangle x1="-0.275" y1="-0.575" x2="0.275" y2="-0.35" layer="51"/>
+<rectangle x1="-0.275" y1="-0.65" x2="-0.175" y2="-0.55" layer="51"/>
+<rectangle x1="0.175" y1="-0.65" x2="0.275" y2="-0.55" layer="51"/>
+</package>
+<package name="CHIPLED_0603_NOOUTLINE">
+<wire x1="-0.3" y1="0.8" x2="0.3" y2="0.8" width="0.1016" layer="51" curve="170.055574"/>
+<wire x1="-0.275" y1="-0.825" x2="0.275" y2="-0.825" width="0.0508" layer="51" curve="-180"/>
+<wire x1="-0.4" y1="0.375" x2="-0.4" y2="-0.35" width="0.1016" layer="51"/>
+<wire x1="0.4" y1="0.35" x2="0.4" y2="-0.35" width="0.1016" layer="51"/>
+<circle x="-0.35" y="0.625" radius="0.075" width="0.0508" layer="51"/>
+<smd name="C" x="0" y="0.75" dx="0.8" dy="0.8" layer="1"/>
+<smd name="A" x="0" y="-0.75" dx="0.8" dy="0.8" layer="1"/>
+<text x="-0.762" y="-1.27" size="0.8128" layer="25" ratio="18" rot="R90">&gt;NAME</text>
+<text x="1.27" y="-1.27" size="0.4064" layer="27" ratio="10" rot="R90">&gt;VALUE</text>
+<rectangle x1="-0.45" y1="0.7" x2="-0.25" y2="0.85" layer="51"/>
+<rectangle x1="-0.275" y1="0.55" x2="-0.225" y2="0.6" layer="51"/>
+<rectangle x1="-0.45" y1="0.35" x2="-0.4" y2="0.725" layer="51"/>
+<rectangle x1="0.25" y1="0.55" x2="0.45" y2="0.85" layer="51"/>
+<rectangle x1="-0.45" y1="0.35" x2="0.45" y2="0.575" layer="51"/>
+<rectangle x1="-0.45" y1="-0.85" x2="-0.25" y2="-0.35" layer="51"/>
+<rectangle x1="0.25" y1="-0.85" x2="0.45" y2="-0.35" layer="51"/>
+<rectangle x1="-0.275" y1="-0.575" x2="0.275" y2="-0.35" layer="51"/>
+<rectangle x1="-0.275" y1="-0.65" x2="-0.175" y2="-0.55" layer="51"/>
+<rectangle x1="0.175" y1="-0.65" x2="0.275" y2="-0.55" layer="51"/>
+<rectangle x1="-0.381" y1="0.1397" x2="0.381" y2="0.2667" layer="21"/>
+<polygon width="0.1524" layer="21">
+<vertex x="0" y="0.1397"/>
+<vertex x="-0.254" y="-0.1778"/>
+<vertex x="0.254" y="-0.1778"/>
+</polygon>
+</package>
+<package name="CREE_XLAMP_XPE2">
+<description>&lt;p&gt;Source: http://www.cree.com/~/media/Files/Cree/LED%20Components%20and%20Modules/XLamp/Data%20and%20Binning/XLampXPE2.pdf&lt;/p&gt;</description>
+<smd name="CATHODE" x="-1.4" y="0" dx="0.5" dy="3.3" layer="1" cream="no"/>
+<smd name="ANODE" x="1.4" y="0" dx="0.5" dy="3.3" layer="1" cream="no"/>
+<smd name="THERMAL" x="0" y="0" dx="1.3" dy="3.3" layer="1" cream="no"/>
+<rectangle x1="-2.05" y1="-0.25" x2="-1.15" y2="0.25" layer="1"/>
+<rectangle x1="-2.1" y1="-0.3" x2="-1.15" y2="0.3" layer="29"/>
+<rectangle x1="1.15" y1="-0.25" x2="2.05" y2="0.25" layer="1" rot="R180"/>
+<rectangle x1="1.15" y1="-0.3" x2="2.1" y2="0.3" layer="29" rot="R180"/>
+<rectangle x1="-0.6" y1="-1.6" x2="0.6" y2="1.6" layer="31"/>
+<rectangle x1="-2" y1="-0.2" x2="-1.2" y2="0.2" layer="31"/>
+<rectangle x1="-1.6" y1="0.2" x2="-1.2" y2="1.6" layer="31"/>
+<rectangle x1="-1.6" y1="-1.6" x2="-1.2" y2="-0.2" layer="31"/>
+<rectangle x1="1.2" y1="-0.2" x2="2" y2="0.2" layer="31"/>
+<rectangle x1="1.2" y1="0.2" x2="1.6" y2="1.6" layer="31"/>
+<rectangle x1="1.2" y1="-1.6" x2="1.6" y2="-0.2" layer="31"/>
+<wire x1="-1.725" y1="1.725" x2="1.725" y2="1.725" width="0.127" layer="51"/>
+<wire x1="1.725" y1="1.725" x2="1.725" y2="-1.725" width="0.127" layer="51"/>
+<wire x1="1.725" y1="-1.725" x2="-1.725" y2="-1.725" width="0.127" layer="51"/>
+<wire x1="-1.725" y1="-1.725" x2="-1.725" y2="1.725" width="0.127" layer="51"/>
+<circle x="0" y="0" radius="1.48660625" width="0.127" layer="51"/>
+<rectangle x1="-1.5" y1="-1.5" x2="-1.3" y2="-1.3" layer="51"/>
+<wire x1="-0.6" y1="-1.7" x2="-0.6" y2="-0.7" width="0.127" layer="51"/>
+<wire x1="-0.6" y1="-0.7" x2="0.7" y2="-0.7" width="0.127" layer="51"/>
+<wire x1="0.7" y1="-0.7" x2="0.7" y2="0.7" width="0.127" layer="51"/>
+<wire x1="0.7" y1="0.7" x2="0" y2="0.7" width="0.127" layer="51"/>
+<wire x1="0" y1="0.7" x2="0" y2="1.7" width="0.127" layer="51"/>
+<polygon width="0.1524" layer="21">
+<vertex x="2.346" y="1.2"/>
+<vertex x="2.954" y="0.719"/>
+<vertex x="2.954" y="1.681"/>
+</polygon>
+<rectangle x1="2.1" y1="0.6" x2="2.4" y2="1.8" layer="21"/>
+<wire x1="-1.8" y1="1.8" x2="1.8" y2="1.8" width="0.127" layer="21"/>
+<wire x1="1.8" y1="1.8" x2="1.8" y2="0.4" width="0.127" layer="21"/>
+<wire x1="-1.8" y1="1.8" x2="-1.8" y2="0.4" width="0.127" layer="21"/>
+<wire x1="-1.8" y1="-0.4" x2="-1.8" y2="-1.8" width="0.127" layer="21"/>
+<wire x1="-1.8" y1="-1.8" x2="1.8" y2="-1.8" width="0.127" layer="21"/>
+<wire x1="1.8" y1="-1.8" x2="1.8" y2="-0.4" width="0.127" layer="21"/>
+<text x="-1.862" y="2.027" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.762" y="-2.435" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-0.5" y1="-0.5" x2="0.5" y2="0.5" layer="51"/>
+</package>
+<package name="CREE_XLAMP_XTE">
+<smd name="CATHODE" x="-1.4" y="0" dx="0.5" dy="3.3" layer="1" cream="no"/>
+<smd name="ANODE" x="1.4" y="0" dx="0.5" dy="3.3" layer="1" cream="no"/>
+<smd name="THERMAL" x="0" y="0" dx="1.3" dy="3.3" layer="1" cream="no"/>
+<rectangle x1="-2.05" y1="-0.25" x2="-1.15" y2="0.25" layer="1"/>
+<rectangle x1="-2.1" y1="-0.3" x2="-1.15" y2="0.3" layer="29"/>
+<rectangle x1="1.15" y1="-0.25" x2="2.05" y2="0.25" layer="1" rot="R180"/>
+<rectangle x1="1.15" y1="-0.3" x2="2.1" y2="0.3" layer="29" rot="R180"/>
+<rectangle x1="-0.6" y1="-1.6" x2="0.6" y2="1.6" layer="31"/>
+<rectangle x1="-2" y1="-0.2" x2="-1.2" y2="0.2" layer="31"/>
+<rectangle x1="-1.6" y1="0.2" x2="-1.2" y2="1.6" layer="31"/>
+<rectangle x1="-1.6" y1="-1.6" x2="-1.2" y2="-0.2" layer="31"/>
+<rectangle x1="1.2" y1="-0.2" x2="2" y2="0.2" layer="31"/>
+<rectangle x1="1.2" y1="0.2" x2="1.6" y2="1.6" layer="31"/>
+<rectangle x1="1.2" y1="-1.6" x2="1.6" y2="-0.2" layer="31"/>
+<wire x1="-1.725" y1="1.725" x2="1.725" y2="1.725" width="0.127" layer="51"/>
+<wire x1="1.725" y1="1.725" x2="1.725" y2="-1.725" width="0.127" layer="51"/>
+<wire x1="1.725" y1="-1.725" x2="-1.725" y2="-1.725" width="0.127" layer="51"/>
+<wire x1="-1.725" y1="-1.725" x2="-1.725" y2="1.725" width="0.127" layer="51"/>
+<rectangle x1="-1.5" y1="-1.5" x2="-1.3" y2="-1.3" layer="51"/>
+<polygon width="0.1524" layer="21">
+<vertex x="2.346" y="1.2"/>
+<vertex x="2.954" y="0.719"/>
+<vertex x="2.954" y="1.681"/>
+</polygon>
+<rectangle x1="2.1" y1="0.6" x2="2.4" y2="1.8" layer="21"/>
+<wire x1="-1.8" y1="1.8" x2="1.8" y2="1.8" width="0.127" layer="21"/>
+<wire x1="1.8" y1="1.8" x2="1.8" y2="0.4" width="0.127" layer="21"/>
+<wire x1="-1.8" y1="1.8" x2="-1.8" y2="0.4" width="0.127" layer="21"/>
+<wire x1="-1.8" y1="-0.4" x2="-1.8" y2="-1.8" width="0.127" layer="21"/>
+<wire x1="-1.8" y1="-1.8" x2="1.8" y2="-1.8" width="0.127" layer="21"/>
+<wire x1="1.8" y1="-1.8" x2="1.8" y2="-0.4" width="0.127" layer="21"/>
+<text x="-1.862" y="2.027" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.762" y="-2.435" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-0.5" y1="-0.5" x2="0.5" y2="0.5" layer="51"/>
+<circle x="0" y="0" radius="1.5811375" width="0.127" layer="51"/>
+<circle x="0" y="0" radius="1.3928375" width="0.127" layer="51"/>
+<wire x1="1.2" y1="0.125" x2="1.45" y2="0.125" width="0.1" layer="51"/>
+<wire x1="1.45" y1="0.125" x2="1.45" y2="0.375" width="0.1" layer="51"/>
+<wire x1="1.45" y1="0.375" x2="1.7" y2="0.375" width="0.1" layer="51"/>
+<wire x1="1.7" y1="0.375" x2="1.7" y2="0.125" width="0.1" layer="51"/>
+<wire x1="1.7" y1="0.125" x2="1.95" y2="0.125" width="0.1" layer="51"/>
+<wire x1="1.95" y1="0.125" x2="1.95" y2="-0.125" width="0.1" layer="51"/>
+<wire x1="1.95" y1="-0.125" x2="1.7" y2="-0.125" width="0.1" layer="51"/>
+<wire x1="1.7" y1="-0.125" x2="1.7" y2="-0.375" width="0.1" layer="51"/>
+<wire x1="1.7" y1="-0.375" x2="1.45" y2="-0.375" width="0.1" layer="51"/>
+<wire x1="1.45" y1="-0.375" x2="1.45" y2="-0.125" width="0.1" layer="51"/>
+<wire x1="1.45" y1="-0.125" x2="1.2" y2="-0.125" width="0.1" layer="51"/>
+<wire x1="1.2" y1="-0.125" x2="1.2" y2="0.125" width="0.1" layer="51"/>
+</package>
+<package name="EVERLIGHT_45-21">
+<wire x1="-1.35" y1="1" x2="1.35" y2="1" width="0.127" layer="51"/>
+<wire x1="1.35" y1="1" x2="1.35" y2="0.7" width="0.127" layer="51"/>
+<wire x1="1.35" y1="0.7" x2="1.35" y2="-0.55" width="0.127" layer="51"/>
+<wire x1="1.35" y1="-0.55" x2="1.35" y2="-0.7" width="0.127" layer="51"/>
+<wire x1="1.35" y1="-0.7" x2="1.35" y2="-1" width="0.127" layer="51"/>
+<wire x1="1.35" y1="-1" x2="0.9" y2="-1" width="0.127" layer="51"/>
+<wire x1="0.9" y1="-1" x2="-1.35" y2="-1" width="0.127" layer="51"/>
+<wire x1="-1.35" y1="-1" x2="-1.35" y2="-0.7" width="0.127" layer="51"/>
+<wire x1="-1.35" y1="-0.7" x2="-1.35" y2="0.7" width="0.127" layer="51"/>
+<wire x1="-1.35" y1="0.7" x2="-1.35" y2="1" width="0.127" layer="51"/>
+<wire x1="1.35" y1="0.7" x2="1.5" y2="0.7" width="0.127" layer="51"/>
+<wire x1="1.5" y1="0.7" x2="1.5" y2="-0.7" width="0.127" layer="51"/>
+<wire x1="1.5" y1="-0.7" x2="1.35" y2="-0.7" width="0.127" layer="51"/>
+<wire x1="1.35" y1="-0.7" x2="1.35" y2="-0.55" width="0.127" layer="51"/>
+<wire x1="1.35" y1="-0.55" x2="1.35" y2="0.7" width="0.127" layer="51"/>
+<wire x1="-1.35" y1="0.7" x2="-1.5" y2="0.7" width="0.127" layer="51"/>
+<wire x1="-1.5" y1="0.7" x2="-1.5" y2="-0.7" width="0.127" layer="51"/>
+<wire x1="-1.5" y1="-0.7" x2="-1.35" y2="-0.7" width="0.127" layer="51"/>
+<wire x1="-1.15" y1="0.45" x2="-1.15" y2="0.5" width="0.127" layer="51"/>
+<wire x1="-1.15" y1="0.5" x2="-0.85" y2="0.8" width="0.127" layer="51" curve="-90"/>
+<wire x1="-0.85" y1="0.8" x2="0.8" y2="0.8" width="0.127" layer="51"/>
+<wire x1="0.8" y1="0.8" x2="1.15" y2="0.45" width="0.127" layer="51" curve="-90"/>
+<wire x1="1.15" y1="0.45" x2="1.15" y2="-0.5" width="0.127" layer="51"/>
+<wire x1="1.15" y1="-0.5" x2="0.85" y2="-0.8" width="0.127" layer="51" curve="-90"/>
+<wire x1="0.85" y1="-0.8" x2="-0.85" y2="-0.8" width="0.127" layer="51"/>
+<wire x1="-0.85" y1="-0.8" x2="-1.15" y2="-0.5" width="0.127" layer="51" curve="-90"/>
+<wire x1="-1.15" y1="-0.5" x2="-1.15" y2="0.45" width="0.127" layer="51"/>
+<smd name="A" x="-1.45" y="0" dx="1.4" dy="1.4" layer="1"/>
+<smd name="K" x="1.45" y="0" dx="1.4" dy="1.4" layer="1"/>
+<wire x1="0.9" y1="-1" x2="1.35" y2="-0.55" width="0.127" layer="51"/>
+<wire x1="1.35" y1="-0.55" x2="1.35" y2="-0.7" width="0.127" layer="51"/>
+<wire x1="1.35" y1="-0.7" x2="1.1" y2="-0.95" width="0.127" layer="51"/>
+<wire x1="1.1" y1="-0.95" x2="1.2" y2="-0.95" width="0.127" layer="51"/>
+<wire x1="1.2" y1="-0.95" x2="1.3" y2="-0.85" width="0.127" layer="51"/>
+<text x="-1.375" y="1.25" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.375" y="-1.633" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<wire x1="-1.45" y1="0.85" x2="-1.45" y2="1.1" width="0.127" layer="21"/>
+<wire x1="-1.45" y1="1.1" x2="1.45" y2="1.1" width="0.127" layer="21"/>
+<wire x1="1.45" y1="1.1" x2="1.45" y2="0.9" width="0.127" layer="21"/>
+<wire x1="1.45" y1="0.9" x2="1.45" y2="0.85" width="0.127" layer="21"/>
+<wire x1="-1.45" y1="-0.85" x2="-1.45" y2="-1.1" width="0.127" layer="21"/>
+<wire x1="-1.45" y1="-1.1" x2="1.45" y2="-1.1" width="0.127" layer="21"/>
+<wire x1="1.45" y1="-1.1" x2="1.45" y2="-0.85" width="0.127" layer="21"/>
+<polygon width="0.1524" layer="21">
+<vertex x="0.254" y="0"/>
+<vertex x="-0.354" y="0.481"/>
+<vertex x="-0.354" y="-0.481"/>
+</polygon>
+<rectangle x1="0.2" y1="-0.6" x2="0.5" y2="0.6" layer="21" rot="R180"/>
+</package>
+<package name="PLCC2_REVMOUNT">
+<description>&lt;p&gt;PLCC2 - Reverse Mount&lt;/p&gt;
+&lt;p&gt;Source: http://catalog.osram-os.com/media/_en/Graphics/00042122_0.pdf&lt;/p&gt;</description>
+<smd name="K" x="-2.4" y="0" dx="1.2" dy="2.6" layer="1"/>
+<smd name="A" x="2.4" y="0" dx="1.2" dy="2.6" layer="1"/>
+<hole x="0" y="0" drill="2.5"/>
+<wire x1="-1.7" y1="1.15" x2="-1.7" y2="1.3" width="0.127" layer="51"/>
+<wire x1="-1.7" y1="1.3" x2="-1.5" y2="1.5" width="0.127" layer="51" curve="-90"/>
+<wire x1="-1.5" y1="1.5" x2="-0.95" y2="1.5" width="0.127" layer="51"/>
+<wire x1="-0.95" y1="1.5" x2="1.5" y2="1.5" width="0.127" layer="51"/>
+<wire x1="1.5" y1="1.5" x2="1.7" y2="1.3" width="0.127" layer="51" curve="-90"/>
+<wire x1="1.7" y1="1.3" x2="1.7" y2="1.2" width="0.127" layer="51"/>
+<wire x1="1.7" y1="1.2" x2="1.7" y2="1.15" width="0.127" layer="51"/>
+<wire x1="1.7" y1="1.15" x2="2.7" y2="1.15" width="0.127" layer="51"/>
+<wire x1="2.7" y1="1.15" x2="2.7" y2="-1.15" width="0.127" layer="51"/>
+<wire x1="2.7" y1="-1.15" x2="1.7" y2="-1.15" width="0.127" layer="51"/>
+<wire x1="1.7" y1="-1.15" x2="1.7" y2="-1.2" width="0.127" layer="51"/>
+<wire x1="1.7" y1="-1.2" x2="1.7" y2="-1.25" width="0.127" layer="51"/>
+<wire x1="1.7" y1="-1.25" x2="1.45" y2="-1.5" width="0.127" layer="51" curve="-90"/>
+<wire x1="1.45" y1="-1.5" x2="-1.45" y2="-1.5" width="0.127" layer="51"/>
+<wire x1="-1.45" y1="-1.5" x2="-1.7" y2="-1.25" width="0.127" layer="51" curve="-90"/>
+<wire x1="-1.7" y1="-1.25" x2="-1.7" y2="-1.15" width="0.127" layer="51"/>
+<wire x1="-1.7" y1="-1.15" x2="-2.65" y2="-1.15" width="0.127" layer="51"/>
+<wire x1="-2.65" y1="-1.15" x2="-2.65" y2="1.15" width="0.127" layer="51"/>
+<wire x1="-2.65" y1="1.15" x2="-1.7" y2="1.15" width="0.127" layer="51"/>
+<wire x1="-1.7" y1="1.15" x2="-1.7" y2="0.75" width="0.127" layer="51"/>
+<wire x1="-1.7" y1="0.75" x2="-1.7" y2="0.65" width="0.127" layer="51"/>
+<wire x1="-1.7" y1="0.65" x2="-1.7" y2="-0.65" width="0.127" layer="51"/>
+<wire x1="-1.7" y1="-0.65" x2="-1.7" y2="-1.15" width="0.127" layer="51"/>
+<wire x1="-1.7" y1="-0.65" x2="-1.75" y2="-0.65" width="0.127" layer="51"/>
+<wire x1="-1.75" y1="-0.65" x2="-1.85" y2="-0.55" width="0.127" layer="51" curve="-90"/>
+<wire x1="-1.85" y1="-0.55" x2="-1.85" y2="0.5" width="0.127" layer="51"/>
+<wire x1="-1.85" y1="0.5" x2="-1.7" y2="0.65" width="0.127" layer="51" curve="-90"/>
+<wire x1="1.7" y1="-1.2" x2="1.7" y2="-0.65" width="0.127" layer="51"/>
+<wire x1="1.7" y1="-0.65" x2="1.7" y2="0.65" width="0.127" layer="51"/>
+<wire x1="1.7" y1="0.65" x2="1.7" y2="1.2" width="0.127" layer="51"/>
+<wire x1="1.7" y1="0.65" x2="1.75" y2="0.65" width="0.127" layer="51"/>
+<wire x1="1.75" y1="0.65" x2="1.85" y2="0.55" width="0.127" layer="51" curve="-90"/>
+<wire x1="1.85" y1="0.55" x2="1.85" y2="-0.5" width="0.127" layer="51"/>
+<wire x1="1.85" y1="-0.5" x2="1.7" y2="-0.65" width="0.127" layer="51" curve="-90"/>
+<wire x1="-1.7" y1="0.75" x2="-0.95" y2="1.5" width="0.127" layer="51"/>
+<circle x="0" y="0" radius="1.220653125" width="0.127" layer="51"/>
+<wire x1="0" y1="0.8" x2="0.8" y2="0" width="0.127" layer="51" style="shortdash" curve="-90"/>
+<wire x1="0.8" y1="0" x2="0" y2="-0.8" width="0.127" layer="51" style="shortdash" curve="-90"/>
+<wire x1="0" y1="-0.8" x2="-0.8" y2="0" width="0.127" layer="51" style="shortdash" curve="-90"/>
+<wire x1="-0.8" y1="0" x2="0" y2="0.8" width="0.127" layer="51" style="shortdash" curve="-90"/>
+<wire x1="-1.75" y1="1.45" x2="-1.6" y2="1.6" width="0.127" layer="21" curve="-90"/>
+<wire x1="-1.6" y1="1.6" x2="1.6" y2="1.6" width="0.127" layer="21"/>
+<wire x1="1.6" y1="1.6" x2="1.75" y2="1.45" width="0.127" layer="21" curve="-90"/>
+<wire x1="-1.75" y1="-1.45" x2="-1.55" y2="-1.6" width="0.127" layer="21" curve="90"/>
+<wire x1="-1.55" y1="-1.6" x2="1.55" y2="-1.6" width="0.127" layer="21"/>
+<wire x1="1.55" y1="-1.6" x2="1.75" y2="-1.45" width="0.127" layer="21" curve="90"/>
+<text x="-1.79" y="1.84" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.74" y="-2.16" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="0603-NO">
+<wire x1="-1.473" y1="0.729" x2="1.473" y2="0.729" width="0.0508" layer="39"/>
+<wire x1="1.473" y1="0.729" x2="1.473" y2="-0.729" width="0.0508" layer="39"/>
+<wire x1="1.473" y1="-0.729" x2="-1.473" y2="-0.729" width="0.0508" layer="39"/>
+<wire x1="-1.473" y1="-0.729" x2="-1.473" y2="0.729" width="0.0508" layer="39"/>
+<wire x1="-0.356" y1="0.432" x2="0.356" y2="0.432" width="0.1016" layer="51"/>
+<wire x1="-0.356" y1="-0.419" x2="0.356" y2="-0.419" width="0.1016" layer="51"/>
+<smd name="1" x="-0.85" y="0" dx="1.075" dy="1" layer="1"/>
+<smd name="2" x="0.85" y="0" dx="1.075" dy="1" layer="1"/>
+<text x="1.778" y="-0.127" size="0.8128" layer="25" font="vector" ratio="18">&gt;NAME</text>
+<text x="1.778" y="-0.762" size="0.4064" layer="27" font="vector" ratio="10">&gt;VALUE</text>
+<rectangle x1="-0.8382" y1="-0.4699" x2="-0.3381" y2="0.4801" layer="51"/>
+<rectangle x1="0.3302" y1="-0.4699" x2="0.8303" y2="0.4801" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.3" x2="0.1999" y2="0.3" layer="35"/>
+<wire x1="0" y1="0.4" x2="0" y2="-0.4" width="0.3048" layer="21"/>
+</package>
+<package name="_1206">
+<wire x1="0.9525" y1="-0.8128" x2="-0.9652" y2="-0.8128" width="0.1016" layer="51"/>
+<wire x1="0.9525" y1="0.8128" x2="-0.9652" y2="0.8128" width="0.1016" layer="51"/>
+<wire x1="-2.286" y1="1.143" x2="2.286" y2="1.143" width="0.2032" layer="21"/>
+<wire x1="2.286" y1="1.143" x2="2.286" y2="-1.143" width="0.2032" layer="21"/>
+<wire x1="2.286" y1="-1.143" x2="-2.286" y2="-1.143" width="0.2032" layer="21"/>
+<wire x1="-2.286" y1="-1.143" x2="-2.286" y2="1.143" width="0.2032" layer="21"/>
+<smd name="2" x="1.27" y="0" dx="1.4" dy="1.8" layer="1"/>
+<smd name="1" x="-1.27" y="0" dx="1.4" dy="1.8" layer="1"/>
+<rectangle x1="-1.6891" y1="-0.8763" x2="-0.9525" y2="0.8763" layer="51"/>
+<rectangle x1="0.9525" y1="-0.8763" x2="1.6891" y2="0.8763" layer="51"/>
+<rectangle x1="-0.3" y1="-0.7" x2="0.3" y2="0.7" layer="35"/>
+<text x="-2.2225" y="1.5113" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-2.2225" y="-1.8288" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="_1206MP">
+<wire x1="1.0525" y1="-0.7128" x2="-1.0652" y2="-0.7128" width="0.1016" layer="51"/>
+<wire x1="1.0525" y1="0.7128" x2="-1.0652" y2="0.7128" width="0.1016" layer="51"/>
+<wire x1="-0.635" y1="0.635" x2="0.635" y2="0.635" width="0.2032" layer="21"/>
+<wire x1="-0.635" y1="-0.635" x2="0.635" y2="-0.635" width="0.2032" layer="21"/>
+<smd name="2" x="1.524" y="0" dx="1.3" dy="1.6" layer="1"/>
+<smd name="1" x="-1.524" y="0" dx="1.3" dy="1.6" layer="1"/>
+<text x="-2.2225" y="1.1113" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-2.2225" y="-1.4288" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-1.6" y1="-0.8" x2="-0.9" y2="0.8" layer="51"/>
+<rectangle x1="-0.3" y1="-0.7" x2="0.3" y2="0.7" layer="35"/>
+<rectangle x1="0.9001" y1="-0.8" x2="1.6" y2="0.8" layer="51" rot="R180"/>
+</package>
+<package name="SOT23-5">
+<description>&lt;b&gt;Small Outline Transistor&lt;/b&gt; - 5 Pin</description>
+<wire x1="1.4224" y1="0.8104" x2="1.4224" y2="-0.8104" width="0.2032" layer="51"/>
+<wire x1="1.4224" y1="-0.8104" x2="-1.4224" y2="-0.8104" width="0.2032" layer="51"/>
+<wire x1="-1.4224" y1="-0.8104" x2="-1.4224" y2="0.8104" width="0.2032" layer="51"/>
+<wire x1="-1.4224" y1="0.8104" x2="1.4224" y2="0.8104" width="0.2032" layer="51"/>
+<wire x1="-1.65" y1="0.8" x2="-1.65" y2="-0.8" width="0.2032" layer="21"/>
+<wire x1="1.65" y1="0.8" x2="1.65" y2="-0.8" width="0.2032" layer="21"/>
+<smd name="1" x="-0.95" y="-1.3001" dx="0.55" dy="1.2" layer="1"/>
+<smd name="2" x="0" y="-1.3001" dx="0.55" dy="1.2" layer="1"/>
+<smd name="3" x="0.95" y="-1.3001" dx="0.55" dy="1.2" layer="1"/>
+<smd name="4" x="0.95" y="1.3001" dx="0.55" dy="1.2" layer="1"/>
+<smd name="5" x="-0.95" y="1.3001" dx="0.55" dy="1.2" layer="1"/>
+<text x="1.978" y="0" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="1.978" y="-0.635" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-1.2" y1="-1.5" x2="-0.7" y2="-0.85" layer="51"/>
+<rectangle x1="-0.25" y1="-1.5" x2="0.25" y2="-0.85" layer="51"/>
+<rectangle x1="0.7" y1="-1.5" x2="1.2" y2="-0.85" layer="51"/>
+<rectangle x1="0.7" y1="0.85" x2="1.2" y2="1.5" layer="51"/>
+<rectangle x1="-1.2" y1="0.85" x2="-0.7" y2="1.5" layer="51"/>
+<wire x1="-0.4" y1="1.05" x2="0.4" y2="1.05" width="0.2032" layer="21"/>
+</package>
+<package name="1X16_OVAL">
+<description>&lt;b&gt;PIN HEADER&lt;/b&gt;</description>
+<wire x1="-20.32" y1="0.635" x2="-20.32" y2="-0.635" width="0.2032" layer="51"/>
+<pad name="1" x="-19.05" y="0" drill="1" shape="long" rot="R90"/>
+<pad name="2" x="-16.51" y="0" drill="1" shape="long" rot="R90"/>
+<pad name="3" x="-13.97" y="0" drill="1" shape="long" rot="R90"/>
+<pad name="4" x="-11.43" y="0" drill="1" shape="long" rot="R90"/>
+<pad name="5" x="-8.89" y="0" drill="1" shape="long" rot="R90"/>
+<pad name="6" x="-6.35" y="0" drill="1" shape="long" rot="R90"/>
+<pad name="7" x="-3.81" y="0" drill="1" shape="long" rot="R90"/>
+<pad name="8" x="-1.27" y="0" drill="1" shape="long" rot="R90"/>
+<pad name="9" x="1.27" y="0" drill="1" shape="long" rot="R90"/>
+<pad name="10" x="3.81" y="0" drill="1" shape="long" rot="R90"/>
+<pad name="11" x="6.35" y="0" drill="1" shape="long" rot="R90"/>
+<pad name="12" x="8.89" y="0" drill="1" shape="long" rot="R90"/>
+<pad name="13" x="11.43" y="0" drill="1" shape="long" rot="R90"/>
+<pad name="14" x="13.97" y="0" drill="1" shape="long" rot="R90"/>
+<pad name="15" x="16.51" y="0" drill="1" shape="long" rot="R90"/>
+<pad name="16" x="19.05" y="0" drill="1" shape="long" rot="R90"/>
+<text x="-20.3962" y="1.8288" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-20.32" y="-3.175" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="16.256" y1="-0.254" x2="16.764" y2="0.254" layer="51"/>
+<rectangle x1="13.716" y1="-0.254" x2="14.224" y2="0.254" layer="51"/>
+<rectangle x1="11.176" y1="-0.254" x2="11.684" y2="0.254" layer="51"/>
+<rectangle x1="8.636" y1="-0.254" x2="9.144" y2="0.254" layer="51"/>
+<rectangle x1="6.096" y1="-0.254" x2="6.604" y2="0.254" layer="51"/>
+<rectangle x1="3.556" y1="-0.254" x2="4.064" y2="0.254" layer="51"/>
+<rectangle x1="1.016" y1="-0.254" x2="1.524" y2="0.254" layer="51"/>
+<rectangle x1="-1.524" y1="-0.254" x2="-1.016" y2="0.254" layer="51"/>
+<rectangle x1="-4.064" y1="-0.254" x2="-3.556" y2="0.254" layer="51"/>
+<rectangle x1="-6.604" y1="-0.254" x2="-6.096" y2="0.254" layer="51"/>
+<rectangle x1="-9.144" y1="-0.254" x2="-8.636" y2="0.254" layer="51"/>
+<rectangle x1="-11.684" y1="-0.254" x2="-11.176" y2="0.254" layer="51"/>
+<rectangle x1="-14.224" y1="-0.254" x2="-13.716" y2="0.254" layer="51"/>
+<rectangle x1="-16.764" y1="-0.254" x2="-16.256" y2="0.254" layer="51"/>
+<rectangle x1="-19.304" y1="-0.254" x2="-18.796" y2="0.254" layer="51"/>
+<rectangle x1="18.796" y1="-0.254" x2="19.304" y2="0.254" layer="51"/>
+</package>
+<package name="1X16_ROUND">
+<description>&lt;b&gt;PIN HEADER&lt;/b&gt;</description>
+<wire x1="-20.32" y1="0.635" x2="-20.32" y2="-0.635" width="0.2032" layer="51"/>
+<pad name="1" x="-19.05" y="0" drill="1" diameter="1.6764" rot="R90"/>
+<pad name="2" x="-16.51" y="0" drill="1" diameter="1.6764" rot="R90"/>
+<pad name="3" x="-13.97" y="0" drill="1" diameter="1.6764" rot="R90"/>
+<pad name="4" x="-11.43" y="0" drill="1" diameter="1.6764" rot="R90"/>
+<pad name="5" x="-8.89" y="0" drill="1" diameter="1.6764" rot="R90"/>
+<pad name="6" x="-6.35" y="0" drill="1" diameter="1.6764" rot="R90"/>
+<pad name="7" x="-3.81" y="0" drill="1" diameter="1.6764" rot="R90"/>
+<pad name="8" x="-1.27" y="0" drill="1" diameter="1.6764" rot="R90"/>
+<pad name="9" x="1.27" y="0" drill="1" diameter="1.6764" rot="R90"/>
+<pad name="10" x="3.81" y="0" drill="1" diameter="1.6764" rot="R90"/>
+<pad name="11" x="6.35" y="0" drill="1" diameter="1.6764" rot="R90"/>
+<pad name="12" x="8.89" y="0" drill="1" diameter="1.6764" rot="R90"/>
+<pad name="13" x="11.43" y="0" drill="1" diameter="1.6764" rot="R90"/>
+<pad name="14" x="13.97" y="0" drill="1" diameter="1.6764" rot="R90"/>
+<pad name="15" x="16.51" y="0" drill="1" diameter="1.6764" rot="R90"/>
+<pad name="16" x="19.05" y="0" drill="1" diameter="1.6764" rot="R90"/>
+<text x="-20.3962" y="1.8288" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-20.32" y="-3.175" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="16.256" y1="-0.254" x2="16.764" y2="0.254" layer="51"/>
+<rectangle x1="13.716" y1="-0.254" x2="14.224" y2="0.254" layer="51"/>
+<rectangle x1="11.176" y1="-0.254" x2="11.684" y2="0.254" layer="51"/>
+<rectangle x1="8.636" y1="-0.254" x2="9.144" y2="0.254" layer="51"/>
+<rectangle x1="6.096" y1="-0.254" x2="6.604" y2="0.254" layer="51"/>
+<rectangle x1="3.556" y1="-0.254" x2="4.064" y2="0.254" layer="51"/>
+<rectangle x1="1.016" y1="-0.254" x2="1.524" y2="0.254" layer="51"/>
+<rectangle x1="-1.524" y1="-0.254" x2="-1.016" y2="0.254" layer="51"/>
+<rectangle x1="-4.064" y1="-0.254" x2="-3.556" y2="0.254" layer="51"/>
+<rectangle x1="-6.604" y1="-0.254" x2="-6.096" y2="0.254" layer="51"/>
+<rectangle x1="-9.144" y1="-0.254" x2="-8.636" y2="0.254" layer="51"/>
+<rectangle x1="-11.684" y1="-0.254" x2="-11.176" y2="0.254" layer="51"/>
+<rectangle x1="-14.224" y1="-0.254" x2="-13.716" y2="0.254" layer="51"/>
+<rectangle x1="-16.764" y1="-0.254" x2="-16.256" y2="0.254" layer="51"/>
+<rectangle x1="-19.304" y1="-0.254" x2="-18.796" y2="0.254" layer="51"/>
+<rectangle x1="18.796" y1="-0.254" x2="19.304" y2="0.254" layer="51"/>
+</package>
+<package name="1X16_2MM_OVAL">
+<wire x1="-16.32" y1="0.635" x2="-16.32" y2="-0.635" width="0.2032" layer="51"/>
+<pad name="P$1" x="-15" y="0" drill="0.8" diameter="1.27" shape="long" rot="R90"/>
+<pad name="P$2" x="-13" y="0" drill="0.8" diameter="1.27" shape="long" rot="R90"/>
+<pad name="P$3" x="-11" y="0" drill="0.8" diameter="1.27" shape="long" rot="R90"/>
+<pad name="P$4" x="-9" y="0" drill="0.8" diameter="1.27" shape="long" rot="R90"/>
+<pad name="P$5" x="-7" y="0" drill="0.8" diameter="1.27" shape="long" rot="R90"/>
+<pad name="P$6" x="-5" y="0" drill="0.8" diameter="1.27" shape="long" rot="R90"/>
+<pad name="P$7" x="-3" y="0" drill="0.8" diameter="1.27" shape="long" rot="R90"/>
+<pad name="P$8" x="-1" y="0" drill="0.8" diameter="1.27" shape="long" rot="R90"/>
+<pad name="P$9" x="1" y="0" drill="0.8" diameter="1.27" shape="long" rot="R90"/>
+<pad name="P$10" x="3" y="0" drill="0.8" diameter="1.27" shape="long" rot="R90"/>
+<pad name="P$11" x="5" y="0" drill="0.8" diameter="1.27" shape="long" rot="R90"/>
+<pad name="P$12" x="7" y="0" drill="0.8" diameter="1.27" shape="long" rot="R90"/>
+<pad name="P$13" x="9" y="0" drill="0.8" diameter="1.27" shape="long" rot="R90"/>
+<pad name="P$14" x="11" y="0" drill="0.8" diameter="1.27" shape="long" rot="R90"/>
+<pad name="P$15" x="13" y="0" drill="0.8" diameter="1.27" shape="long" rot="R90"/>
+<pad name="P$16" x="15" y="0" drill="0.8" diameter="1.27" shape="long" rot="R90"/>
+<text x="-15.3962" y="1.8288" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-15.32" y="-3.175" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-15.254" y1="-0.254" x2="-14.746" y2="0.254" layer="51"/>
+<rectangle x1="-13.254" y1="-0.254" x2="-12.746" y2="0.254" layer="51"/>
+<rectangle x1="-11.254" y1="-0.254" x2="-10.746" y2="0.254" layer="51"/>
+<rectangle x1="-9.254" y1="-0.254" x2="-8.746" y2="0.254" layer="51"/>
+<rectangle x1="-7.254" y1="-0.254" x2="-6.746" y2="0.254" layer="51"/>
+<rectangle x1="-5.254" y1="-0.254" x2="-4.746" y2="0.254" layer="51"/>
+<rectangle x1="-3.254" y1="-0.254" x2="-2.746" y2="0.254" layer="51"/>
+<rectangle x1="-1.254" y1="-0.254" x2="-0.746" y2="0.254" layer="51"/>
+<rectangle x1="0.746" y1="-0.254" x2="1.254" y2="0.254" layer="51"/>
+<rectangle x1="2.746" y1="-0.254" x2="3.254" y2="0.254" layer="51"/>
+<rectangle x1="4.746" y1="-0.254" x2="5.254" y2="0.254" layer="51"/>
+<rectangle x1="6.746" y1="-0.254" x2="7.254" y2="0.254" layer="51"/>
+<rectangle x1="8.746" y1="-0.254" x2="9.254" y2="0.254" layer="51"/>
+<rectangle x1="10.746" y1="-0.254" x2="11.254" y2="0.254" layer="51"/>
+<rectangle x1="12.746" y1="-0.254" x2="13.254" y2="0.254" layer="51"/>
+<rectangle x1="14.746" y1="-0.254" x2="15.254" y2="0.254" layer="51"/>
+</package>
+<package name="JSTPH2">
+<description>2-Pin JST PH Series Right-Angle Connector (+/- for batteries)</description>
+<wire x1="-4" y1="3" x2="4" y2="3" width="0.2032" layer="51"/>
+<wire x1="4" y1="3" x2="4" y2="-4.5" width="0.2032" layer="51"/>
+<wire x1="-4" y1="-4.5" x2="-4" y2="3" width="0.2032" layer="51"/>
+<wire x1="3.2" y1="-2" x2="-3.2" y2="-2" width="0.2032" layer="51"/>
+<wire x1="-3.2" y1="-2" x2="-3.2" y2="-4.5" width="0.2032" layer="51"/>
+<wire x1="-3.2" y1="-4.5" x2="-4" y2="-4.5" width="0.2032" layer="51"/>
+<wire x1="4" y1="-4.5" x2="3.2" y2="-4.5" width="0.2032" layer="51"/>
+<wire x1="3.2" y1="-4.5" x2="3.2" y2="-2" width="0.2032" layer="51"/>
+<wire x1="-2.25" y1="3" x2="2.25" y2="3" width="0.2032" layer="21"/>
+<wire x1="4" y1="-0.5" x2="4" y2="-4.5" width="0.2032" layer="21"/>
+<wire x1="4" y1="-4.5" x2="3.15" y2="-4.5" width="0.2032" layer="21"/>
+<wire x1="3.15" y1="-4.5" x2="3.15" y2="-2" width="0.2032" layer="21"/>
+<wire x1="3.15" y1="-2" x2="1.75" y2="-2" width="0.2032" layer="21"/>
+<wire x1="-1.75" y1="-2" x2="-3.15" y2="-2" width="0.2032" layer="21"/>
+<wire x1="-3.15" y1="-2" x2="-3.15" y2="-4.5" width="0.2032" layer="21"/>
+<wire x1="-3.15" y1="-4.5" x2="-4" y2="-4.5" width="0.2032" layer="21"/>
+<wire x1="-4" y1="-4.5" x2="-4" y2="-0.5" width="0.2032" layer="21"/>
+<smd name="1" x="-1" y="-3.7" dx="1" dy="4.6" layer="1"/>
+<smd name="2" x="1" y="-3.7" dx="1" dy="4.6" layer="1"/>
+<smd name="NC1" x="-3.4" y="1.5" dx="3.4" dy="1.6" layer="1" rot="R90"/>
+<smd name="NC2" x="3.4" y="1.5" dx="3.4" dy="1.6" layer="1" rot="R90"/>
+<text x="-2.2225" y="1.9685" size="0.8128" layer="25" ratio="18">&gt;Name</text>
+<text x="-2.2225" y="1.27" size="0.4064" layer="27" ratio="10">&gt;Value</text>
+</package>
+<package name="JSTSH2">
+<wire x1="2" y1="2.125" x2="-2" y2="2.125" width="0.127" layer="20"/>
+<wire x1="-2" y1="2.125" x2="-2" y2="-2.125" width="0.127" layer="20"/>
+<wire x1="-2" y1="-2.125" x2="2" y2="-2.125" width="0.127" layer="20"/>
+<wire x1="2" y1="-2.125" x2="2" y2="2.125" width="0.127" layer="20"/>
+<wire x1="-0.889" y1="2.159" x2="0.889" y2="2.159" width="0.2032" layer="21"/>
+<wire x1="-2.032" y1="-0.127" x2="-2.032" y2="-2.159" width="0.2032" layer="21"/>
+<wire x1="-2.032" y1="-2.159" x2="-1.143" y2="-2.159" width="0.2032" layer="21"/>
+<wire x1="2.032" y1="-0.127" x2="2.032" y2="-2.159" width="0.2032" layer="21"/>
+<wire x1="2.032" y1="-2.159" x2="1.143" y2="-2.159" width="0.2032" layer="21"/>
+<smd name="NC2" x="1.8" y="1.125" dx="1.2" dy="2" layer="1" rot="R180"/>
+<smd name="NC1" x="-1.8" y="1.125" dx="1.2" dy="2" layer="1" rot="R180"/>
+<smd name="2" x="0.5" y="-2.55" dx="1.35" dy="0.5" layer="1" rot="R270"/>
+<smd name="1" x="-0.5" y="-2.55" dx="1.35" dy="0.5" layer="1" rot="R270"/>
+<text x="-1.063" y="-2.404" size="1.4224" layer="21" ratio="12" rot="R180">-</text>
+<text x="2.683" y="-2.404" size="1.4224" layer="21" ratio="12" rot="R180">+</text>
+<text x="2.794" y="1.397" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="2.794" y="0.635" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="JSTPH2_NOTHERMALS">
+<wire x1="-4" y1="3" x2="4" y2="3" width="0.2032" layer="51"/>
+<wire x1="4" y1="3" x2="4" y2="-4.5" width="0.2032" layer="51"/>
+<wire x1="-4" y1="-4.5" x2="-4" y2="3" width="0.2032" layer="51"/>
+<wire x1="3.2" y1="-2" x2="-3.2" y2="-2" width="0.2032" layer="51"/>
+<wire x1="-3.2" y1="-2" x2="-3.2" y2="-4.5" width="0.2032" layer="51"/>
+<wire x1="-3.2" y1="-4.5" x2="-4" y2="-4.5" width="0.2032" layer="51"/>
+<wire x1="4" y1="-4.5" x2="3.2" y2="-4.5" width="0.2032" layer="51"/>
+<wire x1="3.2" y1="-4.5" x2="3.2" y2="-2" width="0.2032" layer="51"/>
+<wire x1="-2.25" y1="3" x2="2.25" y2="3" width="0.2032" layer="21"/>
+<wire x1="4" y1="-0.5" x2="4" y2="-4.5" width="0.2032" layer="21"/>
+<wire x1="4" y1="-4.5" x2="3.15" y2="-4.5" width="0.2032" layer="21"/>
+<wire x1="3.15" y1="-4.5" x2="3.15" y2="-2" width="0.2032" layer="21"/>
+<wire x1="3.15" y1="-2" x2="1.75" y2="-2" width="0.2032" layer="21"/>
+<wire x1="-1.75" y1="-2" x2="-3.15" y2="-2" width="0.2032" layer="21"/>
+<wire x1="-3.15" y1="-2" x2="-3.15" y2="-4.5" width="0.2032" layer="21"/>
+<wire x1="-3.15" y1="-4.5" x2="-4" y2="-4.5" width="0.2032" layer="21"/>
+<wire x1="-4" y1="-4.5" x2="-4" y2="-0.5" width="0.2032" layer="21"/>
+<smd name="1" x="-1" y="-3.7" dx="1" dy="4.6" layer="1" thermals="no"/>
+<smd name="2" x="1" y="-3.7" dx="1" dy="4.6" layer="1" thermals="no"/>
+<smd name="NC1" x="-3.4" y="1.5" dx="3.4" dy="1.6" layer="1" rot="R90"/>
+<smd name="NC2" x="3.4" y="1.5" dx="3.4" dy="1.6" layer="1" rot="R90"/>
+<text x="-2.2225" y="1.9685" size="0.8128" layer="25" ratio="18">&gt;Name</text>
+<text x="-2.2225" y="1.27" size="0.4064" layer="27" ratio="10">&gt;Value</text>
+</package>
+<package name="1X16_2MM">
+<wire x1="-16.32" y1="0.635" x2="-16.32" y2="-0.635" width="0.2032" layer="51"/>
+<pad name="1" x="-15" y="0" drill="0.8" diameter="1.27"/>
+<pad name="2" x="-13" y="0" drill="0.8" diameter="1.27"/>
+<pad name="3" x="-11" y="0" drill="0.8" diameter="1.27"/>
+<pad name="4" x="-9" y="0" drill="0.8" diameter="1.27"/>
+<pad name="5" x="-7" y="0" drill="0.8" diameter="1.27"/>
+<pad name="6" x="-5" y="0" drill="0.8" diameter="1.27"/>
+<pad name="7" x="-3" y="0" drill="0.8" diameter="1.27"/>
+<pad name="8" x="-1" y="0" drill="0.8" diameter="1.27"/>
+<pad name="9" x="1" y="0" drill="0.8" diameter="1.27"/>
+<pad name="10" x="3" y="0" drill="0.8" diameter="1.27"/>
+<pad name="11" x="5" y="0" drill="0.8" diameter="1.27"/>
+<pad name="12" x="7" y="0" drill="0.8" diameter="1.27"/>
+<pad name="13" x="9" y="0" drill="0.8" diameter="1.27"/>
+<pad name="14" x="11" y="0" drill="0.8" diameter="1.27"/>
+<pad name="15" x="13" y="0" drill="0.8" diameter="1.27"/>
+<pad name="16" x="15" y="0" drill="0.8" diameter="1.27"/>
+<text x="-15.3962" y="1.8288" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-15.32" y="-3.175" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-15.254" y1="-0.254" x2="-14.746" y2="0.254" layer="51"/>
+<rectangle x1="-13.254" y1="-0.254" x2="-12.746" y2="0.254" layer="51"/>
+<rectangle x1="-11.254" y1="-0.254" x2="-10.746" y2="0.254" layer="51"/>
+<rectangle x1="-9.254" y1="-0.254" x2="-8.746" y2="0.254" layer="51"/>
+<rectangle x1="-7.254" y1="-0.254" x2="-6.746" y2="0.254" layer="51"/>
+<rectangle x1="-5.254" y1="-0.254" x2="-4.746" y2="0.254" layer="51"/>
+<rectangle x1="-3.254" y1="-0.254" x2="-2.746" y2="0.254" layer="51"/>
+<rectangle x1="-1.254" y1="-0.254" x2="-0.746" y2="0.254" layer="51"/>
+<rectangle x1="0.746" y1="-0.254" x2="1.254" y2="0.254" layer="51"/>
+<rectangle x1="2.746" y1="-0.254" x2="3.254" y2="0.254" layer="51"/>
+<rectangle x1="4.746" y1="-0.254" x2="5.254" y2="0.254" layer="51"/>
+<rectangle x1="6.746" y1="-0.254" x2="7.254" y2="0.254" layer="51"/>
+<rectangle x1="8.746" y1="-0.254" x2="9.254" y2="0.254" layer="51"/>
+<rectangle x1="10.746" y1="-0.254" x2="11.254" y2="0.254" layer="51"/>
+<rectangle x1="12.746" y1="-0.254" x2="13.254" y2="0.254" layer="51"/>
+<rectangle x1="14.746" y1="-0.254" x2="15.254" y2="0.254" layer="51"/>
+</package>
+<package name="1X12_ROUND">
+<wire x1="-15.24" y1="0.635" x2="-15.24" y2="-0.635" width="0.2032" layer="51"/>
+<pad name="1" x="-13.97" y="0" drill="1" diameter="1.6764" rot="R90"/>
+<pad name="2" x="-11.43" y="0" drill="1" diameter="1.6764" rot="R90"/>
+<pad name="3" x="-8.89" y="0" drill="1" diameter="1.6764" rot="R90"/>
+<pad name="4" x="-6.35" y="0" drill="1" diameter="1.6764" rot="R90"/>
+<pad name="5" x="-3.81" y="0" drill="1" diameter="1.6764" rot="R90"/>
+<pad name="6" x="-1.27" y="0" drill="1" diameter="1.6764" rot="R90"/>
+<pad name="7" x="1.27" y="0" drill="1" diameter="1.6764" rot="R90"/>
+<pad name="8" x="3.81" y="0" drill="1" diameter="1.6764" rot="R90"/>
+<pad name="9" x="6.35" y="0" drill="1" diameter="1.6764" rot="R90"/>
+<pad name="10" x="8.89" y="0" drill="1" diameter="1.6764" rot="R90"/>
+<pad name="11" x="11.43" y="0" drill="1" diameter="1.6764" rot="R90"/>
+<pad name="12" x="13.97" y="0" drill="1" diameter="1.6764" rot="R90"/>
+<text x="-15.3162" y="1.8288" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-15.24" y="-3.175" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="6.096" y1="-0.254" x2="6.604" y2="0.254" layer="51"/>
+<rectangle x1="3.556" y1="-0.254" x2="4.064" y2="0.254" layer="51"/>
+<rectangle x1="1.016" y1="-0.254" x2="1.524" y2="0.254" layer="51"/>
+<rectangle x1="-1.524" y1="-0.254" x2="-1.016" y2="0.254" layer="51"/>
+<rectangle x1="-4.064" y1="-0.254" x2="-3.556" y2="0.254" layer="51"/>
+<rectangle x1="-6.604" y1="-0.254" x2="-6.096" y2="0.254" layer="51"/>
+<rectangle x1="-9.144" y1="-0.254" x2="-8.636" y2="0.254" layer="51"/>
+<rectangle x1="-11.684" y1="-0.254" x2="-11.176" y2="0.254" layer="51"/>
+<rectangle x1="-14.224" y1="-0.254" x2="-13.716" y2="0.254" layer="51"/>
+<rectangle x1="8.636" y1="-0.254" x2="9.144" y2="0.254" layer="51"/>
+<rectangle x1="11.176" y1="-0.254" x2="11.684" y2="0.254" layer="51"/>
+<rectangle x1="13.716" y1="-0.254" x2="14.224" y2="0.254" layer="51"/>
+</package>
+<package name="1X12_OVAL">
+<wire x1="-15.24" y1="0.635" x2="-15.24" y2="-0.635" width="0.2032" layer="51"/>
+<pad name="1" x="-13.97" y="0" drill="1" diameter="1.6764" shape="long" rot="R90"/>
+<pad name="2" x="-11.43" y="0" drill="1" diameter="1.6764" shape="long" rot="R90"/>
+<pad name="3" x="-8.89" y="0" drill="1" diameter="1.6764" shape="long" rot="R90"/>
+<pad name="4" x="-6.35" y="0" drill="1" diameter="1.6764" shape="long" rot="R90"/>
+<pad name="5" x="-3.81" y="0" drill="1" diameter="1.6764" shape="long" rot="R90"/>
+<pad name="6" x="-1.27" y="0" drill="1" diameter="1.6764" shape="long" rot="R90"/>
+<pad name="7" x="1.27" y="0" drill="1" diameter="1.6764" shape="long" rot="R90"/>
+<pad name="8" x="3.81" y="0" drill="1" diameter="1.6764" shape="long" rot="R90"/>
+<pad name="9" x="6.35" y="0" drill="1" diameter="1.6764" shape="long" rot="R90"/>
+<pad name="10" x="8.89" y="0" drill="1" diameter="1.6764" shape="long" rot="R90"/>
+<pad name="11" x="11.43" y="0" drill="1" diameter="1.6764" shape="long" rot="R90"/>
+<pad name="12" x="13.97" y="0" drill="1" diameter="1.6764" shape="long" rot="R90"/>
+<text x="-15.3162" y="1.8288" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-15.24" y="-3.175" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="6.096" y1="-0.254" x2="6.604" y2="0.254" layer="51"/>
+<rectangle x1="3.556" y1="-0.254" x2="4.064" y2="0.254" layer="51"/>
+<rectangle x1="1.016" y1="-0.254" x2="1.524" y2="0.254" layer="51"/>
+<rectangle x1="-1.524" y1="-0.254" x2="-1.016" y2="0.254" layer="51"/>
+<rectangle x1="-4.064" y1="-0.254" x2="-3.556" y2="0.254" layer="51"/>
+<rectangle x1="-6.604" y1="-0.254" x2="-6.096" y2="0.254" layer="51"/>
+<rectangle x1="-9.144" y1="-0.254" x2="-8.636" y2="0.254" layer="51"/>
+<rectangle x1="-11.684" y1="-0.254" x2="-11.176" y2="0.254" layer="51"/>
+<rectangle x1="-14.224" y1="-0.254" x2="-13.716" y2="0.254" layer="51"/>
+<rectangle x1="8.636" y1="-0.254" x2="9.144" y2="0.254" layer="51"/>
+<rectangle x1="11.176" y1="-0.254" x2="11.684" y2="0.254" layer="51"/>
+<rectangle x1="13.716" y1="-0.254" x2="14.224" y2="0.254" layer="51"/>
+</package>
+<package name="1X12_ROUND_80MIL">
+<wire x1="-15.24" y1="0.635" x2="-15.24" y2="-0.635" width="0.2032" layer="51"/>
+<pad name="1" x="-13.97" y="0" drill="1" diameter="2.032" rot="R90"/>
+<pad name="2" x="-11.43" y="0" drill="1" diameter="2.032" rot="R90"/>
+<pad name="3" x="-8.89" y="0" drill="1" diameter="2.032" rot="R90"/>
+<pad name="4" x="-6.35" y="0" drill="1" diameter="2.032" rot="R90"/>
+<pad name="5" x="-3.81" y="0" drill="1" diameter="2.032" rot="R90"/>
+<pad name="6" x="-1.27" y="0" drill="1" diameter="2.032" rot="R90"/>
+<pad name="7" x="1.27" y="0" drill="1" diameter="2.032" rot="R90"/>
+<pad name="8" x="3.81" y="0" drill="1" diameter="2.032" rot="R90"/>
+<pad name="9" x="6.35" y="0" drill="1" diameter="2.032" rot="R90"/>
+<pad name="10" x="8.89" y="0" drill="1" diameter="2.032" rot="R90"/>
+<pad name="11" x="11.43" y="0" drill="1" diameter="2.032" rot="R90"/>
+<pad name="12" x="13.97" y="0" drill="1" diameter="2.032" rot="R90"/>
+<text x="-15.3162" y="1.8288" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-15.24" y="-3.175" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="6.096" y1="-0.254" x2="6.604" y2="0.254" layer="51"/>
+<rectangle x1="3.556" y1="-0.254" x2="4.064" y2="0.254" layer="51"/>
+<rectangle x1="1.016" y1="-0.254" x2="1.524" y2="0.254" layer="51"/>
+<rectangle x1="-1.524" y1="-0.254" x2="-1.016" y2="0.254" layer="51"/>
+<rectangle x1="-4.064" y1="-0.254" x2="-3.556" y2="0.254" layer="51"/>
+<rectangle x1="-6.604" y1="-0.254" x2="-6.096" y2="0.254" layer="51"/>
+<rectangle x1="-9.144" y1="-0.254" x2="-8.636" y2="0.254" layer="51"/>
+<rectangle x1="-11.684" y1="-0.254" x2="-11.176" y2="0.254" layer="51"/>
+<rectangle x1="-14.224" y1="-0.254" x2="-13.716" y2="0.254" layer="51"/>
+<rectangle x1="8.636" y1="-0.254" x2="9.144" y2="0.254" layer="51"/>
+<rectangle x1="11.176" y1="-0.254" x2="11.684" y2="0.254" layer="51"/>
+<rectangle x1="13.716" y1="-0.254" x2="14.224" y2="0.254" layer="51"/>
+</package>
+<package name="1X12_ROUND_76MIL">
+<wire x1="-15.24" y1="0.635" x2="-15.24" y2="-0.635" width="0.2032" layer="51"/>
+<pad name="1" x="-13.97" y="0" drill="1" diameter="1.9304" rot="R90"/>
+<pad name="2" x="-11.43" y="0" drill="1" diameter="1.9304" rot="R90"/>
+<pad name="3" x="-8.89" y="0" drill="1" diameter="1.9304" rot="R90"/>
+<pad name="4" x="-6.35" y="0" drill="1" diameter="1.9304" rot="R90"/>
+<pad name="5" x="-3.81" y="0" drill="1" diameter="1.9304" rot="R90"/>
+<pad name="6" x="-1.27" y="0" drill="1" diameter="1.9304" rot="R90"/>
+<pad name="7" x="1.27" y="0" drill="1" diameter="1.9304" rot="R90"/>
+<pad name="8" x="3.81" y="0" drill="1" diameter="1.9304" rot="R90"/>
+<pad name="9" x="6.35" y="0" drill="1" diameter="1.9304" rot="R90"/>
+<pad name="10" x="8.89" y="0" drill="1" diameter="1.9304" rot="R90"/>
+<pad name="11" x="11.43" y="0" drill="1" diameter="1.9304" rot="R90"/>
+<pad name="12" x="13.97" y="0" drill="1" diameter="1.9304" rot="R90"/>
+<text x="-15.3162" y="1.8288" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-15.24" y="-3.175" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="6.096" y1="-0.254" x2="6.604" y2="0.254" layer="51"/>
+<rectangle x1="3.556" y1="-0.254" x2="4.064" y2="0.254" layer="51"/>
+<rectangle x1="1.016" y1="-0.254" x2="1.524" y2="0.254" layer="51"/>
+<rectangle x1="-1.524" y1="-0.254" x2="-1.016" y2="0.254" layer="51"/>
+<rectangle x1="-4.064" y1="-0.254" x2="-3.556" y2="0.254" layer="51"/>
+<rectangle x1="-6.604" y1="-0.254" x2="-6.096" y2="0.254" layer="51"/>
+<rectangle x1="-9.144" y1="-0.254" x2="-8.636" y2="0.254" layer="51"/>
+<rectangle x1="-11.684" y1="-0.254" x2="-11.176" y2="0.254" layer="51"/>
+<rectangle x1="-14.224" y1="-0.254" x2="-13.716" y2="0.254" layer="51"/>
+<rectangle x1="8.636" y1="-0.254" x2="9.144" y2="0.254" layer="51"/>
+<rectangle x1="11.176" y1="-0.254" x2="11.684" y2="0.254" layer="51"/>
+<rectangle x1="13.716" y1="-0.254" x2="14.224" y2="0.254" layer="51"/>
+</package>
+<package name="1X16_ROUND_76MIL">
+<pad name="1" x="-19.05" y="0" drill="1" diameter="1.9304" rot="R90"/>
+<pad name="2" x="-16.51" y="0" drill="1" diameter="1.9304" rot="R90"/>
+<pad name="3" x="-13.97" y="0" drill="1" diameter="1.9304" rot="R90"/>
+<pad name="4" x="-11.43" y="0" drill="1" diameter="1.9304" rot="R90"/>
+<pad name="5" x="-8.89" y="0" drill="1" diameter="1.9304" rot="R90"/>
+<pad name="6" x="-6.35" y="0" drill="1" diameter="1.9304" rot="R90"/>
+<pad name="7" x="-3.81" y="0" drill="1" diameter="1.9304" rot="R90"/>
+<pad name="8" x="-1.27" y="0" drill="1" diameter="1.9304" rot="R90"/>
+<pad name="9" x="1.27" y="0" drill="1" diameter="1.9304" rot="R90"/>
+<pad name="10" x="3.81" y="0" drill="1" diameter="1.9304" rot="R90"/>
+<pad name="11" x="6.35" y="0" drill="1" diameter="1.9304" rot="R90"/>
+<pad name="12" x="8.89" y="0" drill="1" diameter="1.9304" rot="R90"/>
+<pad name="13" x="11.43" y="0" drill="1" diameter="1.9304" rot="R90"/>
+<pad name="14" x="13.97" y="0" drill="1" diameter="1.9304" rot="R90"/>
+<pad name="15" x="16.51" y="0" drill="1" diameter="1.9304" rot="R90"/>
+<pad name="16" x="19.05" y="0" drill="1" diameter="1.9304" rot="R90"/>
+<text x="-20.3962" y="1.8288" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-20.32" y="-3.175" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="16.256" y1="-0.254" x2="16.764" y2="0.254" layer="51"/>
+<rectangle x1="13.716" y1="-0.254" x2="14.224" y2="0.254" layer="51"/>
+<rectangle x1="11.176" y1="-0.254" x2="11.684" y2="0.254" layer="51"/>
+<rectangle x1="8.636" y1="-0.254" x2="9.144" y2="0.254" layer="51"/>
+<rectangle x1="6.096" y1="-0.254" x2="6.604" y2="0.254" layer="51"/>
+<rectangle x1="3.556" y1="-0.254" x2="4.064" y2="0.254" layer="51"/>
+<rectangle x1="1.016" y1="-0.254" x2="1.524" y2="0.254" layer="51"/>
+<rectangle x1="-1.524" y1="-0.254" x2="-1.016" y2="0.254" layer="51"/>
+<rectangle x1="-4.064" y1="-0.254" x2="-3.556" y2="0.254" layer="51"/>
+<rectangle x1="-6.604" y1="-0.254" x2="-6.096" y2="0.254" layer="51"/>
+<rectangle x1="-9.144" y1="-0.254" x2="-8.636" y2="0.254" layer="51"/>
+<rectangle x1="-11.684" y1="-0.254" x2="-11.176" y2="0.254" layer="51"/>
+<rectangle x1="-14.224" y1="-0.254" x2="-13.716" y2="0.254" layer="51"/>
+<rectangle x1="-16.764" y1="-0.254" x2="-16.256" y2="0.254" layer="51"/>
+<rectangle x1="-19.304" y1="-0.254" x2="-18.796" y2="0.254" layer="51"/>
+<rectangle x1="18.796" y1="-0.254" x2="19.304" y2="0.254" layer="51"/>
+</package>
+<package name="1X12_ROUND_MIN">
+<wire x1="-15.24" y1="0.635" x2="-15.24" y2="-0.635" width="0.2032" layer="51"/>
+<pad name="1" x="-13.97" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="2" x="-11.43" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="3" x="-8.89" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="4" x="-6.35" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="5" x="-3.81" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="6" x="-1.27" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="7" x="1.27" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="8" x="3.81" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="9" x="6.35" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="10" x="8.89" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="11" x="11.43" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="12" x="13.97" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<text x="-15.3162" y="1.8288" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-15.24" y="-3.175" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="6.096" y1="-0.254" x2="6.604" y2="0.254" layer="51"/>
+<rectangle x1="3.556" y1="-0.254" x2="4.064" y2="0.254" layer="51"/>
+<rectangle x1="1.016" y1="-0.254" x2="1.524" y2="0.254" layer="51"/>
+<rectangle x1="-1.524" y1="-0.254" x2="-1.016" y2="0.254" layer="51"/>
+<rectangle x1="-4.064" y1="-0.254" x2="-3.556" y2="0.254" layer="51"/>
+<rectangle x1="-6.604" y1="-0.254" x2="-6.096" y2="0.254" layer="51"/>
+<rectangle x1="-9.144" y1="-0.254" x2="-8.636" y2="0.254" layer="51"/>
+<rectangle x1="-11.684" y1="-0.254" x2="-11.176" y2="0.254" layer="51"/>
+<rectangle x1="-14.224" y1="-0.254" x2="-13.716" y2="0.254" layer="51"/>
+<rectangle x1="8.636" y1="-0.254" x2="9.144" y2="0.254" layer="51"/>
+<rectangle x1="11.176" y1="-0.254" x2="11.684" y2="0.254" layer="51"/>
+<rectangle x1="13.716" y1="-0.254" x2="14.224" y2="0.254" layer="51"/>
+</package>
+<package name="1X16_ROUND_MIN">
+<wire x1="-20.32" y1="0.635" x2="-20.32" y2="-0.635" width="0.2032" layer="51"/>
+<pad name="1" x="-19.05" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="2" x="-16.51" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="3" x="-13.97" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="4" x="-11.43" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="5" x="-8.89" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="6" x="-6.35" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="7" x="-3.81" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="8" x="-1.27" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="9" x="1.27" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="10" x="3.81" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="11" x="6.35" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="12" x="8.89" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="13" x="11.43" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="14" x="13.97" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="15" x="16.51" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<pad name="16" x="19.05" y="0" drill="0.9" diameter="1.5748" rot="R90"/>
+<text x="-20.3962" y="1.8288" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-20.32" y="-3.175" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="16.256" y1="-0.254" x2="16.764" y2="0.254" layer="51"/>
+<rectangle x1="13.716" y1="-0.254" x2="14.224" y2="0.254" layer="51"/>
+<rectangle x1="11.176" y1="-0.254" x2="11.684" y2="0.254" layer="51"/>
+<rectangle x1="8.636" y1="-0.254" x2="9.144" y2="0.254" layer="51"/>
+<rectangle x1="6.096" y1="-0.254" x2="6.604" y2="0.254" layer="51"/>
+<rectangle x1="3.556" y1="-0.254" x2="4.064" y2="0.254" layer="51"/>
+<rectangle x1="1.016" y1="-0.254" x2="1.524" y2="0.254" layer="51"/>
+<rectangle x1="-1.524" y1="-0.254" x2="-1.016" y2="0.254" layer="51"/>
+<rectangle x1="-4.064" y1="-0.254" x2="-3.556" y2="0.254" layer="51"/>
+<rectangle x1="-6.604" y1="-0.254" x2="-6.096" y2="0.254" layer="51"/>
+<rectangle x1="-9.144" y1="-0.254" x2="-8.636" y2="0.254" layer="51"/>
+<rectangle x1="-11.684" y1="-0.254" x2="-11.176" y2="0.254" layer="51"/>
+<rectangle x1="-14.224" y1="-0.254" x2="-13.716" y2="0.254" layer="51"/>
+<rectangle x1="-16.764" y1="-0.254" x2="-16.256" y2="0.254" layer="51"/>
+<rectangle x1="-19.304" y1="-0.254" x2="-18.796" y2="0.254" layer="51"/>
+<rectangle x1="18.796" y1="-0.254" x2="19.304" y2="0.254" layer="51"/>
+</package>
+<package name="CHIPLED_1206_NOOUTLINE">
+<wire x1="-0.6" y1="0.446" x2="0" y2="0.446" width="0.2032" layer="21"/>
+<wire x1="0" y1="0.446" x2="0.6" y2="0.446" width="0.2032" layer="21"/>
+<wire x1="0" y1="0.446" x2="-0.6" y2="-0.154" width="0.2032" layer="21"/>
+<wire x1="-0.6" y1="-0.154" x2="0.6" y2="-0.154" width="0.2032" layer="21"/>
+<wire x1="0.6" y1="-0.154" x2="0" y2="0.446" width="0.2032" layer="21"/>
+<smd name="C" x="0" y="1.496" dx="1.5" dy="1.5" layer="1"/>
+<smd name="A" x="0" y="-1.496" dx="1.5" dy="1.5" layer="1"/>
+<text x="-1.27" y="-2.286" size="0.8128" layer="25" ratio="18" rot="R90">&gt;NAME</text>
+<text x="1.651" y="-2.286" size="0.4064" layer="27" ratio="10" rot="R90">&gt;VALUE</text>
+</package>
+<package name="2X05_1.27MM_SMT">
+<description>&lt;p&gt;2x05 1.27mm Headers SMT (2.0mm Height)&lt;/p&gt;
+4UConnector: 16846</description>
+<wire x1="-5.27" y1="3.5" x2="5.27" y2="3.5" width="0.2032" layer="21"/>
+<wire x1="5.27" y1="3.5" x2="5.27" y2="-3.5" width="0.2032" layer="21"/>
+<wire x1="5.27" y1="-3.5" x2="1" y2="-3.5" width="0.2032" layer="21"/>
+<wire x1="1" y1="-3.5" x2="-1" y2="-3.5" width="0.2032" layer="21"/>
+<wire x1="-1" y1="-3.5" x2="-5.27" y2="-3.5" width="0.2032" layer="21"/>
+<wire x1="-5.27" y1="-3.5" x2="-5.27" y2="3.5" width="0.2032" layer="21"/>
+<wire x1="-1" y1="-3.5" x2="-1" y2="-4" width="0.2032" layer="21"/>
+<wire x1="-1" y1="-4" x2="1" y2="-4" width="0.2032" layer="21"/>
+<wire x1="1" y1="-4" x2="1" y2="-3.5" width="0.2032" layer="21"/>
+<smd name="2" x="-2.54" y="1.85" dx="0.65" dy="2.6" layer="1"/>
+<smd name="4" x="-1.27" y="1.85" dx="0.65" dy="2.6" layer="1"/>
+<smd name="6" x="0" y="1.85" dx="0.65" dy="2.6" layer="1"/>
+<smd name="8" x="1.27" y="1.85" dx="0.65" dy="2.6" layer="1"/>
+<smd name="10" x="2.54" y="1.85" dx="0.65" dy="2.6" layer="1"/>
+<smd name="1" x="-2.54" y="-1.85" dx="0.65" dy="2.6" layer="1"/>
+<smd name="3" x="-1.27" y="-1.85" dx="0.65" dy="2.6" layer="1"/>
+<smd name="5" x="0" y="-1.85" dx="0.65" dy="2.6" layer="1"/>
+<smd name="7" x="1.27" y="-1.85" dx="0.65" dy="2.6" layer="1"/>
+<smd name="9" x="2.54" y="-1.85" dx="0.65" dy="2.6" layer="1"/>
+<text x="-5.199" y="3.806" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-5.199" y="-4.2465" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<polygon width="0.127" layer="21">
+<vertex x="1.016" y="-3.556"/>
+<vertex x="1.016" y="-3.937"/>
+<vertex x="-1.016" y="-3.937"/>
+<vertex x="-1.016" y="-3.556"/>
+</polygon>
+</package>
+<package name="2X05_1.27MM_BOX_NOPOSTS">
+<description>&lt;p&gt;4UCon: 19735 (with cap), 15117 (without caps)&lt;/p&gt;</description>
+<smd name="2" x="-2.54" y="1.95" dx="0.76" dy="2.4" layer="1"/>
+<smd name="4" x="-1.27" y="1.95" dx="0.76" dy="2.4" layer="1"/>
+<smd name="6" x="0" y="1.95" dx="0.76" dy="2.4" layer="1"/>
+<smd name="8" x="1.27" y="1.95" dx="0.76" dy="2.4" layer="1"/>
+<smd name="10" x="2.54" y="1.95" dx="0.76" dy="2.4" layer="1"/>
+<smd name="1" x="-2.54" y="-1.95" dx="0.76" dy="2.4" layer="1"/>
+<smd name="3" x="-1.27" y="-1.95" dx="0.76" dy="2.4" layer="1"/>
+<smd name="5" x="0" y="-1.95" dx="0.76" dy="2.4" layer="1"/>
+<smd name="7" x="1.27" y="-1.95" dx="0.76" dy="2.4" layer="1"/>
+<smd name="9" x="2.54" y="-1.95" dx="0.76" dy="2.4" layer="1"/>
+<text x="-6.6" y="3" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-6.1" y="-2.4" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<wire x1="-6.45" y1="2.6" x2="6.45" y2="2.6" width="0.127" layer="51"/>
+<wire x1="6.45" y1="2.6" x2="6.45" y2="-2.6" width="0.127" layer="51"/>
+<wire x1="-6.45" y1="-2.6" x2="-6.45" y2="2.6" width="0.127" layer="51"/>
+<wire x1="-1.2" y1="-2.6" x2="-6.45" y2="-2.6" width="0.127" layer="51"/>
+<wire x1="6.45" y1="-2.6" x2="1.2" y2="-2.6" width="0.127" layer="51"/>
+<wire x1="-5.575" y1="1.8" x2="5.575" y2="1.8" width="0.127" layer="51"/>
+<wire x1="5.575" y1="1.8" x2="5.575" y2="-1.8" width="0.127" layer="51"/>
+<wire x1="-5.575" y1="-1.8" x2="-5.575" y2="1.8" width="0.127" layer="51"/>
+<wire x1="-1.2" y1="-1.8" x2="-5.575" y2="-1.8" width="0.127" layer="51"/>
+<wire x1="5.575" y1="-1.8" x2="1.2" y2="-1.8" width="0.127" layer="51"/>
+<wire x1="-1.2" y1="-1.8" x2="-1.2" y2="-2.6" width="0.127" layer="51"/>
+<wire x1="1.2" y1="-1.8" x2="1.2" y2="-2.6" width="0.127" layer="51"/>
+<polygon width="0.127" layer="21">
+<vertex x="-6.5" y="-4"/>
+<vertex x="-5.5" y="-4"/>
+<vertex x="-6" y="-3"/>
+</polygon>
+<wire x1="-3.2" y1="2.7" x2="-6.5" y2="2.7" width="0.127" layer="21"/>
+<wire x1="-6.5" y1="2.7" x2="-6.6" y2="2.7" width="0.127" layer="21"/>
+<wire x1="-6.6" y1="2.7" x2="-6.6" y2="2.6" width="0.127" layer="21"/>
+<wire x1="-6.6" y1="2.6" x2="-6.6" y2="-2.7" width="0.127" layer="21"/>
+<wire x1="-6.6" y1="-2.7" x2="-3.2" y2="-2.7" width="0.127" layer="21"/>
+<wire x1="3.2" y1="2.7" x2="6.6" y2="2.7" width="0.127" layer="21"/>
+<wire x1="6.6" y1="2.7" x2="6.6" y2="-2.7" width="0.127" layer="21"/>
+<wire x1="6.6" y1="-2.7" x2="3.2" y2="-2.7" width="0.127" layer="21"/>
+</package>
+<package name="2X05_1.27MM_BOX_POSTS">
+<description>&lt;p&gt;4UCon: 20317&lt;/p&gt;</description>
+<smd name="2" x="-2.54" y="2.15" dx="0.76" dy="2.6" layer="1"/>
+<smd name="4" x="-1.27" y="2.15" dx="0.76" dy="2.6" layer="1"/>
+<smd name="6" x="0" y="2.15" dx="0.76" dy="2.6" layer="1"/>
+<smd name="8" x="1.27" y="2.15" dx="0.76" dy="2.6" layer="1"/>
+<smd name="10" x="2.54" y="2.15" dx="0.76" dy="2.6" layer="1"/>
+<smd name="1" x="-2.54" y="-2.15" dx="0.76" dy="2.6" layer="1"/>
+<smd name="3" x="-1.27" y="-2.15" dx="0.76" dy="2.6" layer="1"/>
+<smd name="5" x="0" y="-2.15" dx="0.76" dy="2.6" layer="1"/>
+<smd name="7" x="1.27" y="-2.15" dx="0.76" dy="2.6" layer="1"/>
+<smd name="9" x="2.54" y="-2.15" dx="0.76" dy="2.6" layer="1"/>
+<text x="-6.6" y="3" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-6.1" y="-2.4" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<wire x1="-6.275" y1="2.5" x2="6.275" y2="2.5" width="0.127" layer="51"/>
+<wire x1="6.275" y1="2.5" x2="6.275" y2="-2.5" width="0.127" layer="51"/>
+<wire x1="-6.275" y1="-2.5" x2="-6.275" y2="2.5" width="0.127" layer="51"/>
+<wire x1="-1.25" y1="-2.5" x2="-6.275" y2="-2.5" width="0.127" layer="51"/>
+<wire x1="6.275" y1="-2.5" x2="1.25" y2="-2.5" width="0.127" layer="51"/>
+<wire x1="-5.425" y1="1.65" x2="5.425" y2="1.65" width="0.127" layer="51"/>
+<wire x1="5.425" y1="1.65" x2="5.425" y2="-1.65" width="0.127" layer="51"/>
+<wire x1="-5.425" y1="-1.65" x2="-5.425" y2="1.65" width="0.127" layer="51"/>
+<wire x1="-1.25" y1="-1.65" x2="-5.425" y2="-1.65" width="0.127" layer="51"/>
+<wire x1="5.425" y1="-1.65" x2="1.25" y2="-1.65" width="0.127" layer="51"/>
+<wire x1="-1.25" y1="-1.65" x2="-1.25" y2="-2.5" width="0.127" layer="51"/>
+<wire x1="1.25" y1="-1.65" x2="1.25" y2="-2.5" width="0.127" layer="51"/>
+<polygon width="0.127" layer="21">
+<vertex x="-6.5" y="-4"/>
+<vertex x="-5.5" y="-4"/>
+<vertex x="-6" y="-3"/>
+</polygon>
+<wire x1="-3.2" y1="2.7" x2="-6.5" y2="2.7" width="0.127" layer="21"/>
+<wire x1="-6.5" y1="2.7" x2="-6.5" y2="-2.7" width="0.127" layer="21"/>
+<wire x1="-6.5" y1="-2.7" x2="-3.2" y2="-2.7" width="0.127" layer="21"/>
+<wire x1="3.2" y1="2.7" x2="6.5" y2="2.7" width="0.127" layer="21"/>
+<wire x1="6.5" y1="2.7" x2="6.5" y2="-2.7" width="0.127" layer="21"/>
+<wire x1="6.5" y1="-2.7" x2="3.2" y2="-2.7" width="0.127" layer="21"/>
+<hole x="-1.905" y="0" drill="1"/>
+<hole x="1.905" y="0" drill="1"/>
+</package>
+<package name="SMADIODE">
+<description>&lt;b&gt;SMA Surface Mount Diode&lt;/b&gt;</description>
+<wire x1="-2.15" y1="1.3" x2="2.15" y2="1.3" width="0.2032" layer="51"/>
+<wire x1="2.15" y1="1.3" x2="2.15" y2="-1.3" width="0.2032" layer="51"/>
+<wire x1="2.15" y1="-1.3" x2="-2.15" y2="-1.3" width="0.2032" layer="51"/>
+<wire x1="-2.15" y1="-1.3" x2="-2.15" y2="1.3" width="0.2032" layer="51"/>
+<wire x1="-3.889" y1="-1.146" x2="-3.889" y2="1.6" width="0.2032" layer="21"/>
+<wire x1="-3.889" y1="1.6" x2="3.916" y2="1.6" width="0.2032" layer="21"/>
+<wire x1="3.916" y1="1.6" x2="3.916" y2="1.394" width="0.2032" layer="21"/>
+<wire x1="3.916" y1="1.394" x2="3.916" y2="-1.6" width="0.2032" layer="21"/>
+<wire x1="3.916" y1="-1.6" x2="-3.889" y2="-1.6" width="0.2032" layer="21"/>
+<wire x1="-3.889" y1="-1.6" x2="-3.889" y2="-1.146" width="0.2032" layer="21"/>
+<wire x1="0.254" y1="0.762" x2="0.254" y2="-0.762" width="0.2032" layer="21"/>
+<wire x1="0.254" y1="-0.762" x2="-0.508" y2="0" width="0.2032" layer="21"/>
+<wire x1="-0.508" y1="0" x2="0.254" y2="0.762" width="0.2032" layer="21"/>
+<wire x1="-0.508" y1="0.762" x2="-0.508" y2="0" width="0.2032" layer="21"/>
+<wire x1="-0.508" y1="0" x2="-0.508" y2="-0.762" width="0.2032" layer="21"/>
+<smd name="C" x="-2.3495" y="0" dx="2.54" dy="2.54" layer="1"/>
+<smd name="A" x="2.3495" y="0" dx="2.54" dy="2.54" layer="1" rot="R180"/>
+<text x="-2.54" y="1.905" size="0.8128" layer="25" font="vector" ratio="18">&gt;NAME</text>
+<text x="-2.54" y="-2.286" size="0.4064" layer="27" font="vector" ratio="10">&gt;VALUE</text>
+<rectangle x1="-2.825" y1="-1.1" x2="-2.175" y2="1.1" layer="51"/>
+<rectangle x1="2.175" y1="-1.1" x2="2.825" y2="1.1" layer="51" rot="R180"/>
+<rectangle x1="-1.75" y1="-1.225" x2="-1.075" y2="1.225" layer="51"/>
+</package>
+<package name="DO-1N4148">
+<wire x1="-2.54" y1="0.762" x2="2.54" y2="0.762" width="0.2032" layer="21"/>
+<wire x1="2.54" y1="0.762" x2="2.54" y2="0" width="0.2032" layer="21"/>
+<wire x1="2.54" y1="0" x2="2.54" y2="-0.762" width="0.2032" layer="21"/>
+<wire x1="2.54" y1="-0.762" x2="-2.54" y2="-0.762" width="0.2032" layer="21"/>
+<wire x1="-2.54" y1="-0.762" x2="-2.54" y2="0" width="0.2032" layer="21"/>
+<wire x1="-2.54" y1="0" x2="-2.54" y2="0.762" width="0.2032" layer="21"/>
+<wire x1="2.54" y1="0" x2="2.794" y2="0" width="0.2032" layer="21"/>
+<wire x1="-2.54" y1="0" x2="-2.794" y2="0" width="0.2032" layer="21"/>
+<wire x1="1.905" y1="0.635" x2="1.905" y2="-0.635" width="0.2032" layer="21"/>
+<pad name="A" x="-3.81" y="0" drill="0.9"/>
+<pad name="C" x="3.81" y="0" drill="0.9"/>
+<text x="-2.286" y="1.143" size="0.8128" layer="25" ratio="18">&gt;Name</text>
+<text x="-2.286" y="-0.381" size="0.8128" layer="21">&gt;Value</text>
+</package>
+<package name="SOT23-R">
+<description>&lt;b&gt;SOT23&lt;/b&gt; - Reflow soldering</description>
+<wire x1="1.5724" y1="0.6604" x2="1.5724" y2="-0.6604" width="0.1524" layer="51"/>
+<wire x1="1.5724" y1="-0.6604" x2="-1.5724" y2="-0.6604" width="0.1524" layer="51"/>
+<wire x1="-1.5724" y1="-0.6604" x2="-1.5724" y2="0.6604" width="0.1524" layer="51"/>
+<wire x1="-1.5724" y1="0.6604" x2="1.5724" y2="0.6604" width="0.2032" layer="51"/>
+<wire x1="-1.5724" y1="-0.6524" x2="-1.5724" y2="0.6604" width="0.2032" layer="21"/>
+<wire x1="-1.5724" y1="0.6604" x2="-0.5636" y2="0.6604" width="0.2032" layer="21"/>
+<wire x1="1.5724" y1="0.6604" x2="1.5724" y2="-0.6524" width="0.2032" layer="21"/>
+<wire x1="0.5636" y1="0.6604" x2="1.5724" y2="0.6604" width="0.2032" layer="21"/>
+<wire x1="0.3724" y1="-0.6604" x2="-0.3864" y2="-0.6604" width="0.2032" layer="21"/>
+<smd name="3" x="0" y="1" dx="0.635" dy="1.016" layer="1"/>
+<smd name="2" x="0.95" y="-1" dx="0.635" dy="1.016" layer="1"/>
+<smd name="1" x="-0.95" y="-1" dx="0.635" dy="1.016" layer="1"/>
+<text x="1.778" y="-0.127" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="1.778" y="-0.635" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-0.2286" y1="0.7112" x2="0.2286" y2="1.2954" layer="51"/>
+<rectangle x1="0.7112" y1="-1.2954" x2="1.1684" y2="-0.7112" layer="51"/>
+<rectangle x1="-1.1684" y1="-1.2954" x2="-0.7112" y2="-0.7112" layer="51"/>
+</package>
+<package name="SOD-523">
+<description>SOD-523 (0.8x1.2mm)
+
+&lt;p&gt;Source: http://www.rohm.com/products/databook/di/pdf/rb751s-40.pdf&lt;/p&gt;</description>
+<smd name="K" x="0" y="0.75" dx="0.8" dy="0.6" layer="1"/>
+<smd name="A" x="0" y="-0.75" dx="0.8" dy="0.6" layer="1"/>
+<text x="0.716" y="0.016" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="0.716" y="-0.724" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<wire x1="0.4254" y1="0.6" x2="0.4254" y2="-0.6" width="0.127" layer="21"/>
+<wire x1="0.4" y1="-0.6" x2="-0.4" y2="-0.6" width="0.127" layer="51"/>
+<wire x1="-0.4254" y1="-0.6" x2="-0.4254" y2="0.6" width="0.127" layer="21"/>
+<wire x1="-0.4" y1="0.6" x2="0.4" y2="0.6" width="0.127" layer="51"/>
+<wire x1="0" y1="0.05" x2="0.25" y2="-0.2" width="0.127" layer="21"/>
+<wire x1="0.25" y1="-0.2" x2="-0.25" y2="-0.2" width="0.127" layer="21"/>
+<wire x1="-0.25" y1="-0.2" x2="0" y2="0.05" width="0.127" layer="21"/>
+<rectangle x1="-0.1" y1="0.45" x2="0.1" y2="0.85" layer="51" rot="R270"/>
+<rectangle x1="-0.1" y1="-0.85" x2="0.1" y2="-0.45" layer="51" rot="R270"/>
+<rectangle x1="-0.1" y1="-0.2254" x2="0.1" y2="0.5746" layer="21" rot="R270"/>
+<polygon width="0.0508" layer="21">
+<vertex x="0" y="0.05"/>
+<vertex x="0.25" y="-0.2"/>
+<vertex x="-0.25" y="-0.2"/>
+</polygon>
+</package>
+<package name="SOD-323">
+<description>&lt;b&gt;SOD323&lt;/b&gt; (2.5x1.2mm)</description>
+<smd name="C" x="-1.27" y="0" dx="1.35" dy="0.8" layer="1"/>
+<smd name="A" x="1.27" y="0" dx="1.35" dy="0.8" layer="1"/>
+<text x="-1.1" y="1" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.1" y="-1.792" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<wire x1="-1" y1="0.7" x2="1" y2="0.7" width="0.2032" layer="21"/>
+<wire x1="1" y1="0.7" x2="1" y2="-0.7" width="0.2032" layer="51"/>
+<wire x1="1" y1="-0.7" x2="-1" y2="-0.7" width="0.2032" layer="21"/>
+<wire x1="-1" y1="-0.7" x2="-1" y2="0.7" width="0.2032" layer="51"/>
+<wire x1="-0.25" y1="0" x2="0.35" y2="0.4" width="0.2032" layer="21"/>
+<wire x1="0.35" y1="0.4" x2="0.35" y2="-0.4" width="0.2032" layer="21"/>
+<wire x1="0.35" y1="-0.4" x2="-0.25" y2="0" width="0.2032" layer="21"/>
+<rectangle x1="-0.45" y1="-0.5" x2="-0.25" y2="0.5" layer="21"/>
+<polygon width="0.2032" layer="21">
+<vertex x="-0.1" y="0"/>
+<vertex x="0.2" y="0.2"/>
+<vertex x="0.2" y="-0.2"/>
+</polygon>
+</package>
+<package name="SOD-123">
+<description>&lt;b&gt;SOD-123&lt;/b&gt;
+&lt;p&gt;Source: http://www.diodes.com/datasheets/ds30139.pdf&lt;/p&gt;</description>
+<smd name="C" x="-1.85" y="0" dx="1.4" dy="1.4" layer="1" rot="R90"/>
+<smd name="A" x="1.85" y="0" dx="1.4" dy="1.4" layer="1" rot="R90"/>
+<text x="-1.27" y="1.016" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.27" y="-1.778" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<wire x1="-0.873" y1="0.7" x2="0.873" y2="0.7" width="0.2032" layer="21"/>
+<wire x1="0.873" y1="0.7" x2="0.873" y2="-0.7" width="0.2032" layer="51"/>
+<wire x1="0.873" y1="-0.7" x2="-0.873" y2="-0.7" width="0.2032" layer="21"/>
+<wire x1="-0.873" y1="-0.7" x2="-0.873" y2="0.7" width="0.2032" layer="51"/>
+<wire x1="-0.3" y1="0" x2="0.3" y2="0.4" width="0.2032" layer="21"/>
+<wire x1="0.3" y1="0.4" x2="0.3" y2="-0.4" width="0.2032" layer="21"/>
+<wire x1="0.3" y1="-0.4" x2="-0.3" y2="0" width="0.2032" layer="21"/>
+<rectangle x1="-1.723" y1="-0.45" x2="-0.973" y2="0.4" layer="51"/>
+<rectangle x1="0.973" y1="-0.45" x2="1.723" y2="0.4" layer="51"/>
+<rectangle x1="-0.5" y1="-0.5" x2="-0.3" y2="0.5" layer="21"/>
+<polygon width="0.2032" layer="21">
+<vertex x="-0.1" y="0"/>
+<vertex x="0.2" y="0.2"/>
+<vertex x="0.2" y="-0.2"/>
+</polygon>
+</package>
+<package name="SOT23-WIDE">
+<wire x1="1.5724" y1="0.6604" x2="1.5724" y2="-0.6604" width="0.2032" layer="51"/>
+<wire x1="1.5724" y1="-0.6604" x2="-1.5724" y2="-0.6604" width="0.1524" layer="51"/>
+<wire x1="-1.5724" y1="-0.6604" x2="-1.5724" y2="0.6604" width="0.2032" layer="51"/>
+<wire x1="-1.5724" y1="0.6604" x2="1.5724" y2="0.6604" width="0.2032" layer="51"/>
+<wire x1="-1.6724" y1="-0.6524" x2="-1.6724" y2="0.6604" width="0.2032" layer="21"/>
+<wire x1="-1.6724" y1="0.6604" x2="-0.7136" y2="0.6604" width="0.2032" layer="21"/>
+<wire x1="1.6724" y1="0.6604" x2="1.6724" y2="-0.6524" width="0.2032" layer="21"/>
+<wire x1="0.7136" y1="0.6604" x2="1.6724" y2="0.6604" width="0.2032" layer="21"/>
+<wire x1="0.2224" y1="-0.6604" x2="-0.2364" y2="-0.6604" width="0.2032" layer="21"/>
+<smd name="3" x="0" y="1" dx="1" dy="1.2" layer="1"/>
+<smd name="2" x="0.95" y="-1" dx="1" dy="1.2" layer="1"/>
+<smd name="1" x="-0.95" y="-1" dx="1" dy="1.2" layer="1"/>
+<text x="1.905" y="0" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="1.905" y="-0.635" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-0.2286" y1="0.7112" x2="0.2286" y2="1.2954" layer="51"/>
+<rectangle x1="0.7112" y1="-1.2954" x2="1.1684" y2="-0.7112" layer="51"/>
+<rectangle x1="-1.1684" y1="-1.2954" x2="-0.7112" y2="-0.7112" layer="51"/>
+</package>
+<package name="POWERDI-5">
+<smd name="A1" x="-0.92" y="-2.84" dx="1.39" dy="1.4" layer="1"/>
+<smd name="A2" x="0.92" y="-2.84" dx="1.39" dy="1.4" layer="1"/>
+<smd name="C" x="0" y="1.142" dx="3.36" dy="4.86" layer="1"/>
+<wire x1="-2" y1="3.25" x2="2" y2="3.25" width="0.127" layer="51"/>
+<wire x1="2" y1="3.25" x2="2" y2="-3.25" width="0.127" layer="51"/>
+<wire x1="2" y1="-3.25" x2="-2" y2="-3.25" width="0.127" layer="51"/>
+<wire x1="-2" y1="-3.25" x2="-2" y2="3.25" width="0.127" layer="51"/>
+<wire x1="-1.8" y1="-3" x2="-2.1" y2="-3" width="0.127" layer="21"/>
+<wire x1="-2.1" y1="-3" x2="-2.1" y2="3" width="0.127" layer="21"/>
+<wire x1="-2.1" y1="3" x2="-1.9" y2="3" width="0.127" layer="21"/>
+<wire x1="1.9" y1="3.1" x2="2.1" y2="3.1" width="0.127" layer="21"/>
+<wire x1="2.1" y1="3.1" x2="2.1" y2="-3" width="0.127" layer="21"/>
+<wire x1="2.1" y1="-3" x2="1.8" y2="-3" width="0.127" layer="21"/>
+<text x="-2.34" y="-2.99" size="0.8128" layer="25" ratio="18" rot="R90">&gt;NAME</text>
+<text x="2.66" y="-3.04" size="0.4064" layer="27" ratio="10" rot="R90">&gt;VALUE</text>
+<polygon width="0.3048" layer="51">
+<vertex x="-1.5" y="-0.6"/>
+<vertex x="0" y="1.9"/>
+<vertex x="1.5" y="-0.6"/>
+</polygon>
+<rectangle x1="-1.6" y1="2" x2="1.6" y2="2.4" layer="51"/>
+</package>
+<package name="TO252">
+<description>&lt;b&gt;SMALL OUTLINE TRANSISTOR&lt;/b&gt;&lt;p&gt;
+TS-003</description>
+<wire x1="3.2766" y1="3.8354" x2="3.277" y2="-2.159" width="0.2032" layer="21"/>
+<wire x1="3.277" y1="-2.159" x2="-3.277" y2="-2.159" width="0.2032" layer="21"/>
+<wire x1="-3.277" y1="-2.159" x2="-3.2766" y2="3.8354" width="0.2032" layer="21"/>
+<wire x1="-3.277" y1="3.835" x2="3.2774" y2="3.8346" width="0.2032" layer="51"/>
+<wire x1="-2.5654" y1="3.937" x2="-2.5654" y2="4.6482" width="0.2032" layer="51"/>
+<wire x1="-2.5654" y1="4.6482" x2="-2.1082" y2="5.1054" width="0.2032" layer="51"/>
+<wire x1="-2.1082" y1="5.1054" x2="2.1082" y2="5.1054" width="0.2032" layer="51"/>
+<wire x1="2.1082" y1="5.1054" x2="2.5654" y2="4.6482" width="0.2032" layer="51"/>
+<wire x1="2.5654" y1="4.6482" x2="2.5654" y2="3.937" width="0.2032" layer="51"/>
+<wire x1="2.5654" y1="3.937" x2="-2.5654" y2="3.937" width="0.2032" layer="51"/>
+<smd name="3" x="0" y="2.5" dx="5.4" dy="6.2" layer="1"/>
+<smd name="1" x="-2.28" y="-4.8" dx="1" dy="1.6" layer="1"/>
+<smd name="2" x="2.28" y="-4.8" dx="1" dy="1.6" layer="1"/>
+<text x="-3.81" y="-2.54" size="0.8128" layer="25" ratio="18" rot="R90">&gt;NAME</text>
+<text x="5.08" y="-2.54" size="0.4064" layer="27" ratio="10" rot="R90">&gt;VALUE</text>
+<rectangle x1="-2.7178" y1="-5.1562" x2="-1.8542" y2="-2.2606" layer="51"/>
+<rectangle x1="1.8542" y1="-5.1562" x2="2.7178" y2="-2.2606" layer="51"/>
+<rectangle x1="-0.4318" y1="-3.0226" x2="0.4318" y2="-2.2606" layer="21"/>
+<polygon width="0.2032" layer="51">
+<vertex x="-2.5654" y="3.937"/>
+<vertex x="-2.5654" y="4.6482"/>
+<vertex x="-2.1082" y="5.1054"/>
+<vertex x="2.1082" y="5.1054"/>
+<vertex x="2.5654" y="4.6482"/>
+<vertex x="2.5654" y="3.937"/>
+</polygon>
+</package>
+<package name="POWERDI3333">
+<wire x1="1.675" y1="1.675" x2="1.675" y2="-1.675" width="0.127" layer="21"/>
+<wire x1="1.675" y1="-1.675" x2="-1.675" y2="-1.675" width="0.127" layer="21"/>
+<wire x1="-1.675" y1="-1.675" x2="-1.675" y2="1.675" width="0.127" layer="21"/>
+<wire x1="-1.675" y1="1.675" x2="1.675" y2="1.675" width="0.127" layer="21"/>
+<smd name="2" x="-1.7" y="0.325" dx="0.7" dy="0.42" layer="1"/>
+<smd name="1" x="-1.7" y="0.975" dx="0.7" dy="0.42" layer="1"/>
+<smd name="3" x="-1.7" y="-0.325" dx="0.7" dy="0.42" layer="1"/>
+<smd name="4" x="-1.7" y="-0.975" dx="0.7" dy="0.42" layer="1"/>
+<rectangle x1="1.1" y1="-1.45" x2="1.55" y2="-0.4" layer="31" rot="R270"/>
+<rectangle x1="1.1" y1="-0.2" x2="1.55" y2="0.85" layer="31" rot="R270"/>
+<rectangle x1="1.1" y1="-0.85" x2="1.55" y2="0.2" layer="31" rot="R270"/>
+<rectangle x1="1.1" y1="0.4" x2="1.55" y2="1.45" layer="31" rot="R270"/>
+<smd name="5678" x="0.75" y="0" dx="2.35" dy="2.25" layer="1" rot="R270"/>
+<text x="-1.3" y="1.85" size="0.6096" layer="25" font="vector" ratio="12">&gt;NAME</text>
+<text x="-1.6" y="-2.45" size="0.6096" layer="27" font="vector" ratio="12">&gt;VALUE</text>
+</package>
+<package name="TESTPOINT_SMT">
+<description>Surface Mount Test Point - Compact SMT</description>
+<wire x1="-2.75" y1="2" x2="2.75" y2="2" width="0.2032" layer="21"/>
+<wire x1="2.75" y1="2" x2="2.75" y2="-2" width="0.2032" layer="21"/>
+<wire x1="2.75" y1="-2" x2="-2.75" y2="-2" width="0.2032" layer="21"/>
+<wire x1="-2.75" y1="-2" x2="-2.75" y2="2" width="0.2032" layer="21"/>
+<smd name="P$1" x="0" y="0" dx="4.7" dy="3.4" layer="1" cream="no"/>
+<text x="3.048" y="-1.143" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="3.048" y="-1.778" size="0.4064" layer="25" ratio="10">&gt;VALUE</text>
+</package>
+<package name="TESTPOINT_PAD_2MM">
+<description>Testpoint - Pad</description>
+<wire x1="-1.27" y1="1.27" x2="1.27" y2="1.27" width="0.2032" layer="21"/>
+<wire x1="1.27" y1="1.27" x2="1.27" y2="-1.27" width="0.2032" layer="21"/>
+<wire x1="1.27" y1="-1.27" x2="-1.27" y2="-1.27" width="0.2032" layer="21"/>
+<wire x1="-1.27" y1="-1.27" x2="-1.27" y2="1.27" width="0.2032" layer="21"/>
+<smd name="P$1" x="0" y="0" dx="2" dy="2" layer="1" cream="no"/>
+<text x="-1.016" y="0" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.016" y="-0.508" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="TESTPOINT_ROUND_2MM">
+<description>Testpoint - Round 2mm</description>
+<circle x="0" y="0" radius="1.3029" width="0.2032" layer="21"/>
+<smd name="P$1" x="0" y="0" dx="2" dy="2" layer="1" roundness="100" cream="no"/>
+<text x="1.651" y="0.127" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="1.651" y="-0.635" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="1X01_ROUND">
+<pad name="1" x="0" y="0" drill="1" diameter="1.6764" rot="R90"/>
+<text x="-1.3462" y="1.8288" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.27" y="-3.175" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-0.254" y1="-0.254" x2="0.254" y2="0.254" layer="51"/>
+</package>
+<package name="PAD-1.5X2.0">
+<description>1.5 x 2.0mm SMT pad (no solder paste)</description>
+<smd name="P$1" x="0" y="0" dx="1.5" dy="2" layer="1" cream="no"/>
+<text x="1.1" y="0" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="1.1" y="-0.7" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<wire x1="-0.95" y1="1.2" x2="0.95" y2="1.2" width="0.127" layer="21"/>
+<wire x1="0.95" y1="1.2" x2="0.95" y2="-1.2" width="0.127" layer="21"/>
+<wire x1="0.95" y1="-1.2" x2="-0.95" y2="-1.2" width="0.127" layer="21"/>
+<wire x1="-0.95" y1="-1.2" x2="-0.95" y2="1.2" width="0.127" layer="21"/>
+</package>
+<package name="TESTPOINT_ROUND_1MM">
+<circle x="0" y="0" radius="0.7" width="0.2032" layer="21"/>
+<smd name="P$1" x="0" y="0" dx="1" dy="1" layer="1" roundness="100" cream="no"/>
+<text x="1.143" y="-0.127" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="1.143" y="-0.635" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="TESTPOINT_ROUND_0.5MM">
+<circle x="0" y="0" radius="0.45" width="0.2032" layer="21"/>
+<smd name="P$1" x="0" y="0" dx="0.5" dy="0.5" layer="1" roundness="100" cream="no"/>
+<text x="0.889" y="-0.127" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="0.889" y="-0.635" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="TESTPOINT_PAD_1MM">
+<smd name="P$1" x="0" y="0" dx="1" dy="1" layer="1" cream="no"/>
+<text x="1.27" y="0" size="0.8128" layer="25" ratio="18" align="center-left">&gt;NAME</text>
+<text x="0" y="0" size="0.4064" layer="27" ratio="10" align="center">&gt;VALUE</text>
+<wire x1="-0.7" y1="0.7" x2="0.7" y2="0.7" width="0.127" layer="21"/>
+<wire x1="0.7" y1="0.7" x2="0.7" y2="-0.7" width="0.127" layer="21"/>
+<wire x1="0.7" y1="-0.7" x2="-0.7" y2="-0.7" width="0.127" layer="21"/>
+<wire x1="-0.7" y1="-0.7" x2="-0.7" y2="0.7" width="0.127" layer="21"/>
+</package>
+<package name="TESTPOINT_RECT_0.25X1MM">
+<text x="0.889" y="-0.127" size="0.8128" layer="25" ratio="18" align="center-left">&gt;NAME</text>
+<text x="0.889" y="-0.889" size="0.4064" layer="27" ratio="10" align="center-left">&gt;VALUE</text>
+<smd name="P$1" x="0" y="0" dx="1" dy="0.25" layer="1" roundness="25"/>
+</package>
+<package name="TESTPOINT_ROUND_1.5MM">
+<circle x="0" y="0" radius="1" width="0.2032" layer="21"/>
+<smd name="P$1" x="0" y="0" dx="1.5" dy="1.5" layer="1" roundness="100" cream="no"/>
+<text x="1.143" y="-0.127" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="1.143" y="-0.635" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="TESTPOINT_ROUND_2MM_NO">
+<smd name="P$1" x="0" y="0" dx="2" dy="2" layer="1" roundness="100" cream="no"/>
+</package>
+<package name="TESTPOINT_ROUND_1.5MM_NO">
+<smd name="P$1" x="0" y="0" dx="1.5" dy="1.5" layer="1" roundness="100" cream="no"/>
+</package>
+<package name="PUSHBUTTON_SMD_SJ">
+<wire x1="-2.9997" y1="3" x2="3" y2="3" width="0.127" layer="51"/>
+<wire x1="3" y1="3" x2="3" y2="-3" width="0.2032" layer="51"/>
+<wire x1="3" y1="-3" x2="-3" y2="-3" width="0.127" layer="51"/>
+<wire x1="-3" y1="-3" x2="-2.9997" y2="3" width="0.2032" layer="51"/>
+<wire x1="-3" y1="1.7" x2="-3" y2="3" width="0.2032" layer="21"/>
+<wire x1="-3" y1="3" x2="3" y2="3" width="0.2032" layer="21"/>
+<wire x1="3" y1="3" x2="3" y2="1.7" width="0.2032" layer="21"/>
+<wire x1="3" y1="-1.7" x2="3" y2="-3" width="0.2032" layer="21"/>
+<wire x1="3" y1="-3" x2="-3" y2="-3" width="0.2032" layer="21"/>
+<wire x1="-3" y1="-3" x2="-3" y2="-1.7" width="0.2032" layer="21"/>
+<circle x="0" y="0" radius="2.8398" width="0.2032" layer="51"/>
+<smd name="P$1" x="3" y="0" dx="2" dy="2" layer="1"/>
+<smd name="P$2" x="-3" y="0" dx="2" dy="2" layer="1"/>
+<text x="-1.778" y="0.127" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.778" y="-0.762" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="TACT_PANA-EVQ">
+<pad name="P$1" x="-3.25" y="0" drill="1.3" diameter="2.54"/>
+<pad name="P$2" x="3.25" y="0" drill="1.3" diameter="2.54"/>
+<wire x1="-3" y1="1.75" x2="3" y2="1.75" width="0.127" layer="51"/>
+<wire x1="3" y1="1.75" x2="3" y2="0.5" width="0.127" layer="51"/>
+<wire x1="3" y1="0.5" x2="3" y2="-0.5" width="0.127" layer="51"/>
+<wire x1="3" y1="-0.5" x2="3" y2="-1.75" width="0.127" layer="51"/>
+<wire x1="3" y1="-1.75" x2="-3" y2="-1.75" width="0.127" layer="51"/>
+<wire x1="-3" y1="-1.75" x2="-3" y2="-0.5" width="0.127" layer="51"/>
+<wire x1="-3" y1="-0.5" x2="-3" y2="0.5" width="0.127" layer="51"/>
+<wire x1="-3" y1="0.5" x2="-3" y2="1.75" width="0.127" layer="51"/>
+<wire x1="3.95" y1="-0.5" x2="3.95" y2="0.5" width="0.127" layer="51"/>
+<wire x1="3.95" y1="0.5" x2="3" y2="0.5" width="0.127" layer="51"/>
+<wire x1="3" y1="0.5" x2="3" y2="-0.5" width="0.127" layer="51"/>
+<wire x1="3" y1="-0.5" x2="3.95" y2="-0.5" width="0.127" layer="51"/>
+<wire x1="3.95" y1="0.5" x2="3" y2="0.5" width="0.127" layer="51"/>
+<wire x1="-3.95" y1="0" x2="-3.95" y2="0.5" width="0.127" layer="51"/>
+<wire x1="-3.95" y1="0.5" x2="-3" y2="0.5" width="0.127" layer="51"/>
+<wire x1="-3" y1="0.5" x2="-3" y2="-0.5" width="0.127" layer="51"/>
+<wire x1="-3" y1="-0.5" x2="-3.95" y2="-0.5" width="0.127" layer="51"/>
+<wire x1="-3.95" y1="-0.5" x2="-3.95" y2="0" width="0.127" layer="51"/>
+<wire x1="-1.5" y1="0.7" x2="1.5" y2="0.7" width="0.127" layer="51"/>
+<wire x1="1.5" y1="0.7" x2="1.5" y2="-0.7" width="0.127" layer="51"/>
+<wire x1="1.5" y1="-0.7" x2="-1.5" y2="-0.7" width="0.127" layer="51"/>
+<wire x1="-1.5" y1="-0.7" x2="-1.5" y2="0.7" width="0.127" layer="51"/>
+<wire x1="-3.1" y1="1.5" x2="-3.1" y2="1.9" width="0.127" layer="21"/>
+<wire x1="-3.1" y1="1.9" x2="3.1" y2="1.9" width="0.127" layer="21"/>
+<wire x1="3.1" y1="1.9" x2="3.1" y2="1.5" width="0.127" layer="21"/>
+<wire x1="-3.1" y1="-1.5" x2="-3.1" y2="-1.9" width="0.127" layer="21"/>
+<wire x1="-3.1" y1="-1.9" x2="3.1" y2="-1.9" width="0.127" layer="21"/>
+<wire x1="3.1" y1="-1.9" x2="3.1" y2="-1.5" width="0.127" layer="21"/>
+<text x="-3.043" y="2.17" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-3.016" y="-2.451" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="BTN_CK_KSS">
+<wire x1="-2.75" y1="1.75" x2="2.75" y2="1.75" width="0.127" layer="51"/>
+<wire x1="2.75" y1="1.75" x2="2.75" y2="1.505" width="0.127" layer="51"/>
+<wire x1="2.75" y1="1.505" x2="2.75" y2="-1.505" width="0.127" layer="51"/>
+<wire x1="2.75" y1="-1.505" x2="2.75" y2="-1.75" width="0.127" layer="51"/>
+<wire x1="2.75" y1="-1.75" x2="1.25" y2="-1.75" width="0.127" layer="51"/>
+<wire x1="1.25" y1="-1.75" x2="-1.25" y2="-1.75" width="0.127" layer="51"/>
+<wire x1="-1.25" y1="-1.75" x2="-2.75" y2="-1.75" width="0.127" layer="51"/>
+<wire x1="-2.75" y1="-1.75" x2="-2.75" y2="-1.505" width="0.127" layer="51"/>
+<wire x1="-2.75" y1="-1.505" x2="-2.75" y2="1.505" width="0.127" layer="51"/>
+<wire x1="-2.75" y1="1.505" x2="-2.75" y2="1.75" width="0.127" layer="51"/>
+<wire x1="3.5" y1="1.505" x2="3.5" y2="-1.505" width="0.127" layer="51"/>
+<wire x1="-3.5" y1="-1.505" x2="-3.5" y2="1.505" width="0.127" layer="51"/>
+<wire x1="-1.25" y1="-2.65" x2="1.25" y2="-2.65" width="0.127" layer="51"/>
+<wire x1="1.25" y1="-2.65" x2="1.25" y2="-1.75" width="0.127" layer="51"/>
+<wire x1="-1.25" y1="-2.65" x2="-1.25" y2="-1.75" width="0.127" layer="51"/>
+<wire x1="-3.5" y1="1.505" x2="-2.75" y2="1.505" width="0.127" layer="51"/>
+<wire x1="2.75" y1="1.505" x2="3.5" y2="1.505" width="0.127" layer="51"/>
+<wire x1="-2.75" y1="-1.505" x2="-3.5" y2="-1.505" width="0.127" layer="51"/>
+<wire x1="3.5" y1="-1.505" x2="2.75" y2="-1.505" width="0.127" layer="51"/>
+<smd name="P$1" x="-2.95" y="0" dx="1.7" dy="3.7" layer="1"/>
+<smd name="P$2" x="2.95" y="0" dx="1.7" dy="3.7" layer="1"/>
+<wire x1="-1.9" y1="1.9" x2="1.9" y2="1.9" width="0.127" layer="21"/>
+<wire x1="-1.9" y1="-1.9" x2="-1.4" y2="-1.9" width="0.127" layer="21"/>
+<wire x1="1.4" y1="-1.9" x2="1.9" y2="-1.9" width="0.127" layer="21"/>
+<text x="-1.886" y="2.094" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.886" y="1.144" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="TACTILE_3X6MM">
+<wire x1="-3" y1="1.75" x2="3" y2="1.75" width="0.127" layer="51"/>
+<wire x1="3" y1="1.75" x2="3" y2="0.5" width="0.127" layer="51"/>
+<wire x1="3" y1="-0.5" x2="3" y2="-1.75" width="0.127" layer="51"/>
+<wire x1="3" y1="-1.75" x2="-3" y2="-1.75" width="0.127" layer="51"/>
+<wire x1="-3" y1="-1.75" x2="-3" y2="-0.5" width="0.127" layer="51"/>
+<wire x1="-3" y1="0.5" x2="-3" y2="1.75" width="0.127" layer="51"/>
+<wire x1="3.95" y1="-0.5" x2="3.95" y2="0.5" width="0.127" layer="51"/>
+<wire x1="3" y1="0.5" x2="3" y2="-0.5" width="0.127" layer="51"/>
+<wire x1="3" y1="-0.5" x2="3.95" y2="-0.5" width="0.127" layer="51"/>
+<wire x1="3.95" y1="0.5" x2="3" y2="0.5" width="0.127" layer="51"/>
+<wire x1="-3.95" y1="0.5" x2="-3" y2="0.5" width="0.127" layer="51"/>
+<wire x1="-3" y1="0.5" x2="-3" y2="-0.5" width="0.127" layer="51"/>
+<wire x1="-3" y1="-0.5" x2="-3.95" y2="-0.5" width="0.127" layer="51"/>
+<wire x1="-3.95" y1="-0.5" x2="-3.95" y2="0.5" width="0.127" layer="51"/>
+<wire x1="-1.5" y1="0.7" x2="1.5" y2="0.7" width="0.127" layer="51"/>
+<wire x1="1.5" y1="0.7" x2="1.5" y2="-0.7" width="0.127" layer="51"/>
+<wire x1="1.5" y1="-0.7" x2="-1.5" y2="-0.7" width="0.127" layer="51"/>
+<wire x1="-1.5" y1="-0.7" x2="-1.5" y2="0.7" width="0.127" layer="51"/>
+<wire x1="-3.1" y1="1.5" x2="-3.1" y2="1.9" width="0.127" layer="21"/>
+<wire x1="-3.1" y1="1.9" x2="3.1" y2="1.9" width="0.127" layer="21"/>
+<wire x1="3.1" y1="1.9" x2="3.1" y2="1.5" width="0.127" layer="21"/>
+<wire x1="-3.1" y1="-1.5" x2="-3.1" y2="-1.9" width="0.127" layer="21"/>
+<wire x1="-3.1" y1="-1.9" x2="3.1" y2="-1.9" width="0.127" layer="21"/>
+<wire x1="3.1" y1="-1.9" x2="3.1" y2="-1.5" width="0.127" layer="21"/>
+<text x="-3.043" y="2.17" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-3.016" y="-2.451" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<smd name="P$1" x="-4" y="0" dx="2" dy="1.5" layer="1"/>
+<smd name="P$2" x="4" y="0" dx="2" dy="1.5" layer="1"/>
+</package>
+</packages>
+<symbols>
+<symbol name="CAPACITOR">
+<wire x1="0" y1="0.762" x2="0" y2="0" width="0.1524" layer="94"/>
+<wire x1="0" y1="2.54" x2="0" y2="1.778" width="0.1524" layer="94"/>
+<text x="-2.29" y="1.25" size="1.27" layer="95" font="vector" rot="R90" align="center">&gt;NAME</text>
+<text x="2.3" y="1.25" size="1.27" layer="96" font="vector" rot="R90" align="center">&gt;VALUE</text>
+<rectangle x1="-1.27" y1="0.508" x2="1.27" y2="1.016" layer="94"/>
+<rectangle x1="-1.27" y1="1.524" x2="1.27" y2="2.032" layer="94"/>
+<pin name="1" x="0" y="5.08" visible="off" length="short" direction="pas" swaplevel="1" rot="R270"/>
+<pin name="2" x="0" y="-2.54" visible="off" length="short" direction="pas" swaplevel="1" rot="R90"/>
+</symbol>
+<symbol name="GND">
+<wire x1="-1.27" y1="0" x2="1.27" y2="0" width="0.254" layer="94"/>
+<text x="-1.524" y="-2.54" size="1.27" layer="96">&gt;VALUE</text>
+<pin name="GND" x="0" y="2.54" visible="off" length="short" direction="sup" rot="R270"/>
+</symbol>
+<symbol name="RESISTOR">
+<wire x1="-2.54" y1="1.27" x2="2.54" y2="1.27" width="0.254" layer="94"/>
+<wire x1="2.54" y1="1.27" x2="2.54" y2="-1.27" width="0.254" layer="94"/>
+<wire x1="2.54" y1="-1.27" x2="-2.54" y2="-1.27" width="0.254" layer="94"/>
+<wire x1="-2.54" y1="-1.27" x2="-2.54" y2="1.27" width="0.254" layer="94"/>
+<text x="0" y="2.54" size="1.27" layer="95" font="vector" align="center">&gt;NAME</text>
+<text x="0" y="0" size="1.016" layer="96" font="vector" ratio="15" align="center">&gt;VALUE</text>
+<pin name="1" x="-5.08" y="0" visible="off" length="short" direction="pas" swaplevel="1"/>
+<pin name="2" x="5.08" y="0" visible="off" length="short" direction="pas" swaplevel="1" rot="R180"/>
+</symbol>
+<symbol name="MOUNTINGHOLE">
+<circle x="0" y="0" radius="2.54" width="0.254" layer="94"/>
+<circle x="0" y="0" radius="1.905" width="0.254" layer="94"/>
+</symbol>
+<symbol name="VBUS">
+<text x="-1.524" y="1.016" size="1.27" layer="96">&gt;VALUE</text>
+<pin name="VBUS" x="0" y="-2.54" visible="off" length="short" direction="sup" rot="R90"/>
+<wire x1="-1.27" y1="-1.27" x2="0" y2="0" width="0.254" layer="94"/>
+<wire x1="0" y1="0" x2="1.27" y2="-1.27" width="0.254" layer="94"/>
+</symbol>
+<symbol name="VBAT">
+<text x="-1.524" y="1.016" size="1.27" layer="96">&gt;VALUE</text>
+<pin name="VBAT" x="0" y="-2.54" visible="off" length="short" direction="sup" rot="R90"/>
+<wire x1="-1.27" y1="-1.27" x2="0" y2="0" width="0.254" layer="94"/>
+<wire x1="0" y1="0" x2="1.27" y2="-1.27" width="0.254" layer="94"/>
+</symbol>
+<symbol name="LED">
+<wire x1="-2.54" y1="1.27" x2="-2.54" y2="-1.27" width="0.254" layer="94"/>
+<wire x1="-2.54" y1="-1.27" x2="0" y2="0" width="0.254" layer="94"/>
+<wire x1="0" y1="0" x2="-2.54" y2="1.27" width="0.254" layer="94"/>
+<wire x1="0" y1="1.27" x2="0" y2="0" width="0.254" layer="94"/>
+<wire x1="0" y1="0" x2="0" y2="-1.27" width="0.254" layer="94"/>
+<wire x1="-0.635" y1="1.27" x2="0.635" y2="2.54" width="0.254" layer="94"/>
+<wire x1="-1.905" y1="1.27" x2="-0.635" y2="2.54" width="0.254" layer="94"/>
+<wire x1="-0.9525" y1="2.8575" x2="-0.3175" y2="2.2225" width="0.254" layer="94"/>
+<wire x1="-0.3175" y1="2.2225" x2="0" y2="3.175" width="0.254" layer="94"/>
+<wire x1="0" y1="3.175" x2="-0.9525" y2="2.8575" width="0.254" layer="94"/>
+<wire x1="0.3175" y1="2.8575" x2="0.9525" y2="2.2225" width="0.254" layer="94"/>
+<wire x1="1.27" y1="3.175" x2="0.3175" y2="2.8575" width="0.254" layer="94"/>
+<wire x1="0.9525" y1="2.2225" x2="1.27" y2="3.175" width="0.254" layer="94"/>
+<text x="-1.27" y="4.445" size="1.27" layer="95" align="center">&gt;NAME</text>
+<text x="-1.27" y="-2.794" size="1.27" layer="96" align="center">&gt;VALUE</text>
+<pin name="A" x="-5.08" y="0" visible="off" length="short" direction="pas"/>
+<pin name="C" x="2.54" y="0" visible="off" length="short" direction="pas" rot="R180"/>
+</symbol>
+<symbol name="PINHD16">
+<wire x1="-6.35" y1="-22.86" x2="1.27" y2="-22.86" width="0.4064" layer="94"/>
+<wire x1="1.27" y1="-22.86" x2="1.27" y2="20.32" width="0.4064" layer="94"/>
+<wire x1="1.27" y1="20.32" x2="-6.35" y2="20.32" width="0.4064" layer="94"/>
+<wire x1="-6.35" y1="20.32" x2="-6.35" y2="-22.86" width="0.4064" layer="94"/>
+<text x="-6.35" y="20.955" size="1.778" layer="95">&gt;NAME</text>
+<text x="-6.35" y="-25.4" size="1.778" layer="96">&gt;VALUE</text>
+<pin name="1" x="-2.54" y="17.78" visible="pad" length="short" direction="pas" function="dot"/>
+<pin name="2" x="-2.54" y="15.24" visible="pad" length="short" direction="pas" function="dot"/>
+<pin name="3" x="-2.54" y="12.7" visible="pad" length="short" direction="pas" function="dot"/>
+<pin name="4" x="-2.54" y="10.16" visible="pad" length="short" direction="pas" function="dot"/>
+<pin name="5" x="-2.54" y="7.62" visible="pad" length="short" direction="pas" function="dot"/>
+<pin name="6" x="-2.54" y="5.08" visible="pad" length="short" direction="pas" function="dot"/>
+<pin name="7" x="-2.54" y="2.54" visible="pad" length="short" direction="pas" function="dot"/>
+<pin name="8" x="-2.54" y="0" visible="pad" length="short" direction="pas" function="dot"/>
+<pin name="9" x="-2.54" y="-2.54" visible="pad" length="short" direction="pas" function="dot"/>
+<pin name="10" x="-2.54" y="-5.08" visible="pad" length="short" direction="pas" function="dot"/>
+<pin name="11" x="-2.54" y="-7.62" visible="pad" length="short" direction="pas" function="dot"/>
+<pin name="12" x="-2.54" y="-10.16" visible="pad" length="short" direction="pas" function="dot"/>
+<pin name="13" x="-2.54" y="-12.7" visible="pad" length="short" direction="pas" function="dot"/>
+<pin name="14" x="-2.54" y="-15.24" visible="pad" length="short" direction="pas" function="dot"/>
+<pin name="15" x="-2.54" y="-17.78" visible="pad" length="short" direction="pas" function="dot"/>
+<pin name="16" x="-2.54" y="-20.32" visible="pad" length="short" direction="pas" function="dot"/>
+</symbol>
+<symbol name="PINHD2">
+<wire x1="-6.35" y1="-2.54" x2="1.27" y2="-2.54" width="0.4064" layer="94"/>
+<wire x1="1.27" y1="-2.54" x2="1.27" y2="5.08" width="0.4064" layer="94"/>
+<wire x1="1.27" y1="5.08" x2="-6.35" y2="5.08" width="0.4064" layer="94"/>
+<wire x1="-6.35" y1="5.08" x2="-6.35" y2="-2.54" width="0.4064" layer="94"/>
+<text x="-6.35" y="5.715" size="1.778" layer="95">&gt;NAME</text>
+<text x="-6.35" y="-5.08" size="1.778" layer="96">&gt;VALUE</text>
+<pin name="1" x="-2.54" y="2.54" visible="pad" length="short" direction="pas" function="dot"/>
+<pin name="2" x="-2.54" y="0" visible="pad" length="short" direction="pas" function="dot"/>
+</symbol>
+<symbol name="PINHD12">
+<wire x1="-6.35" y1="-15.24" x2="1.27" y2="-15.24" width="0.4064" layer="94"/>
+<wire x1="1.27" y1="-15.24" x2="1.27" y2="17.78" width="0.4064" layer="94"/>
+<wire x1="1.27" y1="17.78" x2="-6.35" y2="17.78" width="0.4064" layer="94"/>
+<wire x1="-6.35" y1="17.78" x2="-6.35" y2="-15.24" width="0.4064" layer="94"/>
+<text x="-6.35" y="18.415" size="1.778" layer="95">&gt;NAME</text>
+<text x="-6.35" y="-17.78" size="1.778" layer="96">&gt;VALUE</text>
+<pin name="1" x="-2.54" y="15.24" visible="pad" length="short" direction="pas" function="dot"/>
+<pin name="2" x="-2.54" y="12.7" visible="pad" length="short" direction="pas" function="dot"/>
+<pin name="3" x="-2.54" y="10.16" visible="pad" length="short" direction="pas" function="dot"/>
+<pin name="4" x="-2.54" y="7.62" visible="pad" length="short" direction="pas" function="dot"/>
+<pin name="5" x="-2.54" y="5.08" visible="pad" length="short" direction="pas" function="dot"/>
+<pin name="6" x="-2.54" y="2.54" visible="pad" length="short" direction="pas" function="dot"/>
+<pin name="7" x="-2.54" y="0" visible="pad" length="short" direction="pas" function="dot"/>
+<pin name="8" x="-2.54" y="-2.54" visible="pad" length="short" direction="pas" function="dot"/>
+<pin name="9" x="-2.54" y="-5.08" visible="pad" length="short" direction="pas" function="dot"/>
+<pin name="10" x="-2.54" y="-7.62" visible="pad" length="short" direction="pas" function="dot"/>
+<pin name="11" x="-2.54" y="-10.16" visible="pad" length="short" direction="pas" function="dot"/>
+<pin name="12" x="-2.54" y="-12.7" visible="pad" length="short" direction="pas" function="dot"/>
+</symbol>
+<symbol name="JTAG-CORTEX">
+<wire x1="-6.35" y1="7.62" x2="6.35" y2="7.62" width="0.4064" layer="94"/>
+<wire x1="6.35" y1="-7.62" x2="6.35" y2="7.62" width="0.4064" layer="94"/>
+<wire x1="6.35" y1="-7.62" x2="-6.35" y2="-7.62" width="0.4064" layer="94"/>
+<wire x1="-6.35" y1="7.62" x2="-6.35" y2="-7.62" width="0.4064" layer="94"/>
+<circle x="-4.445" y="5.08" radius="0.635" width="0.254" layer="94"/>
+<circle x="-4.445" y="2.54" radius="0.635" width="0.254" layer="94"/>
+<circle x="-4.445" y="0" radius="0.635" width="0.254" layer="94"/>
+<circle x="-4.445" y="-2.54" radius="0.635" width="0.254" layer="94"/>
+<circle x="-4.445" y="-5.08" radius="0.635" width="0.254" layer="94"/>
+<circle x="4.445" y="5.08" radius="0.635" width="0.254" layer="94"/>
+<circle x="4.445" y="2.54" radius="0.635" width="0.254" layer="94"/>
+<circle x="4.445" y="0" radius="0.635" width="0.254" layer="94"/>
+<circle x="4.445" y="-2.54" radius="0.635" width="0.254" layer="94"/>
+<circle x="4.445" y="-5.08" radius="0.635" width="0.254" layer="94"/>
+<text x="-6.35" y="8.255" size="1.27" layer="95">&gt;NAME</text>
+<text x="1.524" y="-4.318" size="0.635" layer="95">nRESET</text>
+<text x="1.778" y="-1.778" size="0.635" layer="95">NC/TDI</text>
+<text x="1.016" y="0.762" size="0.635" layer="95">SWO/TDO</text>
+<text x="-0.762" y="3.302" size="0.635" layer="95">SWDCLK/TCK</text>
+<text x="0" y="5.842" size="0.635" layer="95">SWDIO/TMS</text>
+<text x="-5.588" y="6.096" size="0.635" layer="95">VCC</text>
+<text x="-5.588" y="3.302" size="0.635" layer="95">GND</text>
+<text x="-5.588" y="0.762" size="0.635" layer="95">GND</text>
+<text x="-5.588" y="-1.778" size="0.635" layer="95">KEY</text>
+<text x="-5.588" y="-4.318" size="0.635" layer="95">GNDDetect</text>
+<text x="-6.35" y="-9.525" size="1.27" layer="96">&gt;VALUE</text>
+<pin name="VCC" x="-7.62" y="5.08" visible="off" length="short" direction="pwr" swaplevel="1"/>
+<pin name="SWDIO" x="7.62" y="5.08" visible="off" length="short" swaplevel="1" rot="R180"/>
+<pin name="GND@1" x="-7.62" y="2.54" visible="off" length="short" direction="pwr" swaplevel="1"/>
+<pin name="SWDCLK" x="7.62" y="2.54" visible="off" length="short" swaplevel="1" rot="R180"/>
+<pin name="GND@2" x="-7.62" y="0" visible="off" length="short" direction="pwr" swaplevel="1"/>
+<pin name="SWO" x="7.62" y="0" visible="off" length="short" swaplevel="1" rot="R180"/>
+<pin name="KEY" x="-7.62" y="-2.54" visible="off" length="short" swaplevel="1"/>
+<pin name="TDI" x="7.62" y="-2.54" visible="off" length="short" swaplevel="1" rot="R180"/>
+<pin name="GNDDETECT" x="-7.62" y="-5.08" visible="off" length="short" swaplevel="1"/>
+<pin name="NRESET" x="7.62" y="-5.08" visible="off" length="short" swaplevel="1" rot="R180"/>
+</symbol>
+<symbol name="VREG_SOT23-5">
+<wire x1="-7.62" y1="-5.08" x2="-7.62" y2="5.08" width="0.254" layer="94"/>
+<wire x1="-7.62" y1="5.08" x2="7.62" y2="5.08" width="0.254" layer="94"/>
+<wire x1="7.62" y1="5.08" x2="7.62" y2="-5.08" width="0.254" layer="94"/>
+<wire x1="7.62" y1="-5.08" x2="-7.62" y2="-5.08" width="0.254" layer="94"/>
+<text x="-7.62" y="6.096" size="1.27" layer="95">&gt;NAME</text>
+<text x="-7.62" y="-7.62" size="1.27" layer="95">&gt;VALUE</text>
+<pin name="IN" x="-10.16" y="2.54" length="short" direction="pwr"/>
+<pin name="OUT" x="10.16" y="2.54" length="short" direction="sup" rot="R180"/>
+<pin name="EN" x="-10.16" y="0" length="short" direction="in"/>
+<pin name="GND" x="-10.16" y="-2.54" length="short" direction="pwr"/>
+<pin name="P4" x="10.16" y="-2.54" length="short" rot="R180"/>
+</symbol>
+<symbol name="DIODE-SCHOTTKY">
+<wire x1="-1.27" y1="1.27" x2="-1.27" y2="-1.27" width="0.254" layer="94"/>
+<wire x1="-1.27" y1="-1.27" x2="1.27" y2="0" width="0.254" layer="94"/>
+<wire x1="1.27" y1="0" x2="-1.27" y2="1.27" width="0.254" layer="94"/>
+<wire x1="1.27" y1="1.27" x2="1.27" y2="0" width="0.254" layer="94"/>
+<wire x1="1.27" y1="0" x2="1.27" y2="-1.27" width="0.254" layer="94"/>
+<text x="0" y="2.54" size="1.27" layer="95" align="center">&gt;NAME</text>
+<text x="0" y="-2.5" size="1.27" layer="96" align="center">&gt;VALUE</text>
+<pin name="A" x="-2.54" y="0" visible="off" length="short" direction="pas"/>
+<pin name="C" x="2.54" y="0" visible="off" length="short" direction="pas" rot="R180"/>
+<wire x1="1.27" y1="-1.27" x2="1.778" y2="-1.27" width="0.254" layer="94"/>
+<wire x1="1.27" y1="1.27" x2="0.762" y2="1.27" width="0.254" layer="94"/>
+</symbol>
+<symbol name="MOSFET-P">
+<wire x1="-1.778" y1="-0.762" x2="-1.778" y2="0" width="0.254" layer="94"/>
+<wire x1="-1.778" y1="0" x2="-1.778" y2="0.762" width="0.254" layer="94"/>
+<wire x1="-1.778" y1="-3.175" x2="-1.778" y2="-2.54" width="0.254" layer="94"/>
+<wire x1="-1.778" y1="-2.54" x2="-1.778" y2="-1.905" width="0.254" layer="94"/>
+<wire x1="-1.778" y1="0" x2="0" y2="0" width="0.1524" layer="94"/>
+<wire x1="0" y1="0" x2="0" y2="2.54" width="0.1524" layer="94"/>
+<wire x1="-1.778" y1="1.905" x2="-1.778" y2="2.54" width="0.254" layer="94"/>
+<wire x1="-1.778" y1="2.54" x2="-1.778" y2="3.175" width="0.254" layer="94"/>
+<wire x1="-2.54" y1="-2.54" x2="-2.54" y2="2.54" width="0.254" layer="94"/>
+<wire x1="0" y1="2.54" x2="-1.778" y2="2.54" width="0.1524" layer="94"/>
+<wire x1="1.27" y1="-2.54" x2="1.27" y2="0.508" width="0.1524" layer="94"/>
+<wire x1="1.27" y1="0.508" x2="1.27" y2="2.54" width="0.1524" layer="94"/>
+<wire x1="0" y1="2.54" x2="1.27" y2="2.54" width="0.1524" layer="94"/>
+<wire x1="-1.778" y1="-2.54" x2="1.27" y2="-2.54" width="0.1524" layer="94"/>
+<wire x1="0.508" y1="0.762" x2="0.762" y2="0.508" width="0.1524" layer="94"/>
+<wire x1="0.762" y1="0.508" x2="1.27" y2="0.508" width="0.1524" layer="94"/>
+<wire x1="1.27" y1="0.508" x2="1.778" y2="0.508" width="0.1524" layer="94"/>
+<wire x1="1.778" y1="0.508" x2="2.032" y2="0.254" width="0.1524" layer="94"/>
+<circle x="0" y="2.54" radius="0.3592" width="0" layer="94"/>
+<circle x="0" y="-2.54" radius="0.3592" width="0" layer="94"/>
+<text x="2.794" y="-1.905" size="1.27" layer="96">&gt;VALUE</text>
+<text x="2.794" y="0.381" size="1.27" layer="95">&gt;NAME</text>
+<text x="0.635" y="-3.81" size="0.8128" layer="93">D</text>
+<text x="0.635" y="3.175" size="0.8128" layer="93">S</text>
+<text x="-3.81" y="1.27" size="0.8128" layer="93">G</text>
+<pin name="S" x="0" y="5.08" visible="off" length="short" direction="pas" rot="R270"/>
+<pin name="G" x="-5.08" y="2.54" visible="off" length="short" direction="pas"/>
+<pin name="D" x="0" y="-5.08" visible="off" length="short" direction="pas" rot="R90"/>
+<polygon width="0.1524" layer="94">
+<vertex x="1.27" y="0.508"/>
+<vertex x="1.778" y="-0.254"/>
+<vertex x="0.762" y="-0.254"/>
+</polygon>
+<polygon width="0.1524" layer="94">
+<vertex x="0" y="0"/>
+<vertex x="-1.016" y="0.762"/>
+<vertex x="-1.016" y="-0.762"/>
+</polygon>
+</symbol>
+<symbol name="MCP73831/2">
+<pin name="VDD" x="-12.7" y="2.54" length="short" direction="pwr"/>
+<pin name="STAT" x="-12.7" y="-2.54" length="short" direction="out"/>
+<pin name="VBAT" x="12.7" y="2.54" length="short" direction="pwr" rot="R180"/>
+<pin name="PROG" x="12.7" y="0" length="short" direction="in" rot="R180"/>
+<pin name="VSS" x="12.7" y="-2.54" length="short" direction="pwr" rot="R180"/>
+<wire x1="-10.16" y1="5.08" x2="10.16" y2="5.08" width="0.254" layer="94" style="shortdash"/>
+<wire x1="10.16" y1="5.08" x2="10.16" y2="-5.08" width="0.254" layer="94"/>
+<wire x1="10.16" y1="-5.08" x2="-10.16" y2="-5.08" width="0.254" layer="94" style="shortdash"/>
+<wire x1="-10.16" y1="-5.08" x2="-10.16" y2="5.08" width="0.254" layer="94"/>
+<text x="-5.715" y="8.255" size="1.27" layer="94">MCP73831/2</text>
+<text x="-6.35" y="6.35" size="1.27" layer="94">LIPO Charger</text>
+<text x="-8.255" y="-9.525" size="1.27" layer="94">Temp:</text>
+<text x="0" y="-9.525" size="1.27" layer="94">-40-85°C</text>
+<text x="-8.255" y="-7.62" size="1.27" layer="94">VDD:</text>
+<text x="0" y="-7.62" size="1.27" layer="94">3.75-6V</text>
+<wire x1="10.16" y1="-10.16" x2="-10.16" y2="-10.16" width="0.254" layer="94"/>
+<wire x1="-10.16" y1="10.16" x2="10.16" y2="10.16" width="0.254" layer="94"/>
+<wire x1="-10.16" y1="10.16" x2="-10.16" y2="5.08" width="0.254" layer="94"/>
+<wire x1="-10.16" y1="-5.08" x2="-10.16" y2="-10.16" width="0.254" layer="94"/>
+<wire x1="10.16" y1="10.16" x2="10.16" y2="5.08" width="0.254" layer="94"/>
+<wire x1="10.16" y1="-5.08" x2="10.16" y2="-10.16" width="0.254" layer="94"/>
+<text x="-10.16" y="11.43" size="1.27" layer="95">&gt;NAME</text>
+<text x="-10.16" y="-12.7" size="1.27" layer="95">&gt;VALUE</text>
+</symbol>
+<symbol name="TESTPOINT">
+<circle x="0" y="3.81" radius="1.27" width="0.254" layer="94"/>
+<text x="0" y="5.588" size="1.27" layer="95" rot="R90" align="center-left">&gt;NAME</text>
+<text x="1.651" y="5.588" size="1.27" layer="96" rot="R90" align="center-left">&gt;VALUE</text>
+<pin name="P$1" x="0" y="0" visible="off" length="short" rot="R90"/>
+</symbol>
+<symbol name="PUSHBUTTON">
+<wire x1="-2.54" y1="1.27" x2="0" y2="1.27" width="0.254" layer="94"/>
+<wire x1="0" y1="1.27" x2="2.54" y2="1.27" width="0.254" layer="94"/>
+<wire x1="-0.635" y1="2.286" x2="0" y2="2.286" width="0.254" layer="94"/>
+<wire x1="0" y1="2.286" x2="0.635" y2="2.286" width="0.254" layer="94"/>
+<wire x1="0" y1="1.27" x2="0" y2="2.286" width="0.254" layer="94"/>
+<text x="-2.54" y="3.556" size="1.27" layer="95">&gt;NAME</text>
+<text x="-2.54" y="-2.286" size="1.27" layer="96">&gt;VALUE</text>
+<pin name="P$1" x="-5.08" y="0" visible="off" length="short" direction="pas"/>
+<pin name="P$2" x="5.08" y="0" visible="off" length="short" direction="pas" rot="R180"/>
+</symbol>
+</symbols>
+<devicesets>
+<deviceset name="CAP_CERAMIC" prefix="C" uservalue="yes">
+<description>&lt;p&gt;&lt;b&gt;Ceramic Capacitors&lt;/b&gt;&lt;/p&gt;
+&lt;p&gt;For new designs, use the packages preceded by an '_' character since they are more reliable:&lt;/p&gt;
+&lt;p&gt;The following footprints should be used on most boards:&lt;/p&gt;
+&lt;ul&gt;
+&lt;li&gt;&lt;b&gt;_0402&lt;/b&gt; - Standard footprint for regular board layouts&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_0603&lt;/b&gt; - Standard footprint for regular board layouts&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_0805&lt;/b&gt; - Standard footprint for regular board layouts&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_1206&lt;/b&gt; - Standard footprint for regular board layouts&lt;/li&gt;
+&lt;/ul&gt;
+&lt;p&gt;For extremely tight-pitch boards where space is at a premium, the following 'micro-pitch' footprints can be used (smaller pads, no silkscreen outline, etc.):&lt;/p&gt;
+&lt;ul&gt;
+&lt;li&gt;&lt;b&gt;_0402MP&lt;/b&gt; - Micro-pitch footprint for very dense/compact boards&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_0603MP&lt;/b&gt; - Micro-pitch footprint for very dense/compact boards&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_0805MP&lt;/b&gt; - Micro-pitch footprint for very dense/compact boards&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_1206MP&lt;/b&gt; - Micro-pitch footprint for very dense/compact boards&lt;/li&gt;
+&lt;/ul&gt;</description>
+<gates>
+<gate name="G$1" symbol="CAPACITOR" x="0" y="-2.54"/>
+</gates>
+<devices>
+<device name="0603MINI" package="0603-MINI">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="0805-NOTHERMALS" package="0805_NOTHERMALS">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0402" package="_0402">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0402MP" package="_0402MP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0603" package="_0603">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0603MP" package="_0603MP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0805" package="_0805">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0805MP" package="_0805MP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="0805-NOOUTLINE" package="0805-NO">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="0805_10MGAP" package="0805_10MGAP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="0603_NO" package="0603-NO">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_1206" package="_1206">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_1206MP" package="_1206MP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+<deviceset name="GND">
+<description>&lt;b&gt;GND&lt;/b&gt;</description>
+<gates>
+<gate name="G$1" symbol="GND" x="0" y="0"/>
+</gates>
+<devices>
+<device name="">
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+<deviceset name="RESISTOR" prefix="R" uservalue="yes">
+<description>&lt;p&gt;&lt;b&gt;Resistors&lt;/b&gt;&lt;/p&gt;
+&lt;p&gt;For new designs, use the packages preceded by an '_' character since they are more reliable:&lt;/p&gt;
+&lt;p&gt;The following footprints should be used on most boards:&lt;/p&gt;
+&lt;ul&gt;
+&lt;li&gt;&lt;b&gt;_0402&lt;/b&gt; - Standard footprint for regular board layouts&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_0603&lt;/b&gt; - Standard footprint for regular board layouts&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_0805&lt;/b&gt; - Standard footprint for regular board layouts&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_1206&lt;/b&gt; - Standard footprint for regular board layouts&lt;/li&gt;
+&lt;/ul&gt;
+&lt;p&gt;For extremely tight-pitch boards where space is at a premium, the following 'micro-pitch' footprints can be used (smaller pads, no silkscreen outline, etc.):&lt;/p&gt;
+&lt;ul&gt;
+&lt;li&gt;&lt;b&gt;_0402MP&lt;/b&gt; - Micro-pitch footprint for very dense/compact boards&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_0603MP&lt;/b&gt; - Micro-pitch footprint for very dense/compact boards&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_0805MP&lt;/b&gt; - Micro-pitch footprint for very dense/compact boards&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_1206MP&lt;/b&gt; - Micro-pitch footprint for very dense/compact boards&lt;/li&gt;
+&lt;/ul&gt;</description>
+<gates>
+<gate name="G$1" symbol="RESISTOR" x="0" y="0"/>
+</gates>
+<devices>
+<device name="0603MINI" package="0603-MINI">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="2012" package="2012">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="0805_NOTHERMALS" package="0805_NOTHERMALS">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="2512" package="2512">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0402" package="_0402">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0402MP" package="_0402MP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0603" package="_0603">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0603MP" package="_0603MP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0805" package="_0805">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0805MP" package="_0805MP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="0805_NOOUTLINE" package="0805-NO">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0603_NOOUT" package="0603-NO">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_1206" package="_1206">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_1206MP" package="_1206MP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="0805_10MGAP" package="0805_10MGAP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+<deviceset name="MOUNTINGHOLE">
+<description>&lt;b&gt;Mounting Hole&lt;/b&gt;
+&lt;p&gt;For #2 screws (0.086"/2.18mm width, 0.094"/2.4mm hole) use 2.5mm&lt;/p&gt;</description>
+<gates>
+<gate name="G$1" symbol="MOUNTINGHOLE" x="0" y="0"/>
+</gates>
+<devices>
+<device name="3.0" package="MOUNTINGHOLE_3.0_PLATED">
+<technologies>
+<technology name="">
+<attribute name="BOM" value="EXCLUDE" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="1.0" package="MOUNTINGHOLE_1.0_PLATED">
+<technologies>
+<technology name="">
+<attribute name="BOM" value="EXCLUDE" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="2.0" package="MOUNTINGHOLE_2.0_PLATED">
+<technologies>
+<technology name="">
+<attribute name="BOM" value="EXCLUDE" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="3.0THIN" package="MOUNTINGHOLE_3.0_PLATEDTHIN">
+<technologies>
+<technology name="">
+<attribute name="BOM" value="EXCLUDE" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="2.5" package="MOUNTINGHOLE_2.5_PLATED">
+<technologies>
+<technology name="">
+<attribute name="BOM" value="EXCLUDE" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="2.5_THICK" package="MOUNTINGHOLE_2.5_PLATED_THICK">
+<technologies>
+<technology name="">
+<attribute name="BOM" value="EXCLUDE" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="" package="MOUNTINGHOLE_3.0_PLATED_VIAS">
+<technologies>
+<technology name="">
+<attribute name="BOM" value="EXCLUDE" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="3.0SQUARE" package="MOUNTINGHOLE_3.0_PLATED_SQUAREVIAS">
+<technologies>
+<technology name="">
+<attribute name="BOM" value="EXCLUDE" constant="no"/>
+</technology>
+</technologies>
+</device>
+</devices>
+</deviceset>
+<deviceset name="VBUS">
+<description>&lt;p&gt;VBUS Supply Symbole&lt;/p&gt;</description>
+<gates>
+<gate name="G$1" symbol="VBUS" x="0" y="0"/>
+</gates>
+<devices>
+<device name="">
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+<deviceset name="VBAT">
+<description>VBAT Supply Sumbol</description>
+<gates>
+<gate name="G$1" symbol="VBAT" x="0" y="0"/>
+</gates>
+<devices>
+<device name="">
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+<deviceset name="LED" prefix="D" uservalue="yes">
+<description>&lt;p&gt;&lt;b&gt;LED&lt;/b&gt;&lt;/p&gt;
+&lt;b&gt;0603&lt;/b&gt; - 0603 Surface Mount Package
+&lt;hr&gt;
+&lt;p&gt;&lt;b&gt;&lt;u&gt;2mA:&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;
+&lt;ul&gt;
+&lt;li&gt;Green LED - Low Power (3.9mcd, 2ma, 1.7Vf) - Digikey: 475-2709-2-ND&lt;/li&gt;
+&lt;li&gt;Orange LED - Low Power (9.8mcd, 2ma, 1.8Vf) - Digikey: 475-1194-2-ND&lt;/li&gt;
+&lt;li&gt;Red LED - Low Power (5mcd, 2ma, 1.8Vf) - Digikey: 475-1195-2-ND&lt;/li&gt;
+&lt;li&gt;Yellow LED - Low Power (7mcd, 2ma, 1.8Vf) - Digikey: 475-1196-2-ND&lt;/li&gt;
+&lt;/ul&gt;
+&lt;p&gt;&lt;b&gt;&lt;u&gt;5mA:&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;
+&lt;ul&gt;
+&lt;li&gt;Blue LED - Low Power (17mcd, 5ma, 2.9Vf) - Digikey: LNJ937W8CRACT-ND&lt;/li&gt;
+&lt;/ul&gt;
+&lt;b&gt;0805&lt;/b&gt; - 0805 Surface Mount Package
+&lt;hr&gt;
+&lt;p&gt;&lt;b&gt;&lt;u&gt;2mA:&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;
+&lt;ul&gt;
+&lt;li&gt;Red LED (8.8mcd, 2mA, 1.8Vf, Clear) - Low Power [Digikey: 475-2510-1-ND]&lt;/li&gt;
+&lt;li&gt;Green LED (5mcd, 2mA, 1.8Vf, Clear) - Low Power [Digikey: 475-2730-1-ND]&lt;/li&gt;
+&lt;li&gt;Yellow LED (11.3mcd, 2mA, 1.8Vf, Clear) - Low Power [Digikey: 475-2555-1-ND]&lt;/li&gt;
+&lt;/ul&gt;
+&lt;p&gt;&lt;b&gt;&lt;u&gt;20mA:&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;
+&lt;ul&gt;
+&lt;li&gt;Red LED (104mcd, 20mA, Diffused) - LS R976 [Digikey: 475-1278-6-ND]&lt;/li&gt;
+&lt;li&gt;Red LED (12mcd, 20mA, 2.0Vf, Clear) - APT2012EC [Digikey: 754-1128-1-ND]&lt;/li&gt;
+&lt;li&gt;Green LED (15mcd, 20mA, 2.2Vf, Clear) - APT2012GC [Digikey: 754-1131-1-ND]&lt;/li&gt;
+&lt;li&gt;Orange LED (160mcd, 20mA, 2.1Vf, Clear) - APT2012SECK [Digikey: 754-1130-1-ND]&lt;/li&gt;
+&lt;/ul&gt;
+&lt;li&gt;&lt;b&gt;1206&lt;/b&gt; - 1206 Surface Mount Package
+&lt;hr&gt;
+&lt;ul&gt;
+&lt;li&gt;Green LED (26mcd, 20mA, Diffused) - LG N971 [Digikey: 475-1407-6-ND]&lt;/li&gt;
+&lt;li&gt;Red LED (15mcd, 20mA, Diffused) - LH N974 [Digikey: 475-1416-6-ND]&lt;/li&gt;
+&lt;/ul&gt;
+
+&lt;li&gt;&lt;b&gt;Cree&lt;/b&gt; - Cree High-Power Surface Mount LEDs
+&lt;hr&gt;
+&lt;ul&gt;
+&lt;li&gt;XPEBWT-L1-0000-00D50 - White 111lm 350mA 2.9Vf 6200K 110°&lt;/li&gt;
+&lt;li&gt;XTEAWT-00-0000-00000LEE3 - White 114lm 350mA 2.85Vf 5000K 115°&lt;/li&gt;
+&lt;/ul&gt;
+
+&lt;li&gt;&lt;b&gt;Everlight&lt;/b&gt; - Everlight 45-21 Series Surface Mount LEDs
+&lt;hr&gt;
+&lt;ul&gt;
+&lt;li&gt;45-21/QK2C-B2832AC2CB2/2T - Warm White 2000mcd 20mA 3.25Vf 3050K 120°&lt;/li&gt;
+&lt;li&gt;45-21/LK2C-B38452C4CB2/2T - Nuetral White 2000mcd 20mA 3.25Vf 4150K 120°&lt;/li&gt;
+&lt;li&gt;45-21/LK2C-B50634C6CB2/2T - Cold White 2200mcd 20mA 3.25Vf 5650K 120°&lt;/li&gt;
+&lt;/ul&gt;
+
+&lt;li&gt;&lt;b&gt;PLCC2 Reverse Mount&lt;/b&gt;
+&lt;hr&gt;
+&lt;ul&gt;
+&lt;li&gt;LS T77K-J1L2-1-0-2-R18-Z - Red 11.25mcd 2mA 1.8Vf 630nm 120°&lt;/li&gt;
+&lt;li&gt;LO T77K-L1M2-24-Z - Orange 19.6mcd 2mA 1.8Vf 606nm 120°&lt;/li&gt;
+&lt;li&gt;LY T77K-K2M1-26-Z - Yellow 15.7mcd 2mA 1.8Vf 587nm 120°&lt;/li&gt;
+&lt;/ul&gt;</description>
+<gates>
+<gate name="G$1" symbol="LED" x="0" y="0"/>
+</gates>
+<devices>
+<device name="1206" package="CHIPLED_1206">
+<connects>
+<connect gate="G$1" pin="A" pad="A"/>
+<connect gate="G$1" pin="C" pad="C"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="0805" package="CHIPLED_0805">
+<connects>
+<connect gate="G$1" pin="A" pad="A"/>
+<connect gate="G$1" pin="C" pad="C"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="0603" package="CHIPLED_0603">
+<connects>
+<connect gate="G$1" pin="A" pad="A"/>
+<connect gate="G$1" pin="C" pad="C"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="0603_NOOUTLINE" package="CHIPLED_0603_NOOUTLINE">
+<connects>
+<connect gate="G$1" pin="A" pad="A"/>
+<connect gate="G$1" pin="C" pad="C"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="0805_NOOUTLINE" package="CHIPLED_0805_NOOUTLINE">
+<connects>
+<connect gate="G$1" pin="A" pad="A"/>
+<connect gate="G$1" pin="C" pad="C"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="XPE2" package="CREE_XLAMP_XPE2">
+<connects>
+<connect gate="G$1" pin="A" pad="ANODE"/>
+<connect gate="G$1" pin="C" pad="CATHODE"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="XTE" package="CREE_XLAMP_XTE">
+<connects>
+<connect gate="G$1" pin="A" pad="ANODE"/>
+<connect gate="G$1" pin="C" pad="CATHODE"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="EV45-21" package="EVERLIGHT_45-21">
+<connects>
+<connect gate="G$1" pin="A" pad="A"/>
+<connect gate="G$1" pin="C" pad="K"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="PLCC2_REV" package="PLCC2_REVMOUNT">
+<connects>
+<connect gate="G$1" pin="A" pad="A"/>
+<connect gate="G$1" pin="C" pad="K"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="1206_NOOUTLINE" package="CHIPLED_1206_NOOUTLINE">
+<connects>
+<connect gate="G$1" pin="A" pad="A"/>
+<connect gate="G$1" pin="C" pad="C"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+<deviceset name="HEADER-1X16" prefix="JP" uservalue="yes">
+<description>&lt;b&gt;PIN HEADER&lt;/b&gt;</description>
+<gates>
+<gate name="A" symbol="PINHD16" x="0" y="0"/>
+</gates>
+<devices>
+<device name="" package="1X16_OVAL">
+<connects>
+<connect gate="A" pin="1" pad="1"/>
+<connect gate="A" pin="10" pad="10"/>
+<connect gate="A" pin="11" pad="11"/>
+<connect gate="A" pin="12" pad="12"/>
+<connect gate="A" pin="13" pad="13"/>
+<connect gate="A" pin="14" pad="14"/>
+<connect gate="A" pin="15" pad="15"/>
+<connect gate="A" pin="16" pad="16"/>
+<connect gate="A" pin="2" pad="2"/>
+<connect gate="A" pin="3" pad="3"/>
+<connect gate="A" pin="4" pad="4"/>
+<connect gate="A" pin="5" pad="5"/>
+<connect gate="A" pin="6" pad="6"/>
+<connect gate="A" pin="7" pad="7"/>
+<connect gate="A" pin="8" pad="8"/>
+<connect gate="A" pin="9" pad="9"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="ROUND" package="1X16_ROUND">
+<connects>
+<connect gate="A" pin="1" pad="1"/>
+<connect gate="A" pin="10" pad="10"/>
+<connect gate="A" pin="11" pad="11"/>
+<connect gate="A" pin="12" pad="12"/>
+<connect gate="A" pin="13" pad="13"/>
+<connect gate="A" pin="14" pad="14"/>
+<connect gate="A" pin="15" pad="15"/>
+<connect gate="A" pin="16" pad="16"/>
+<connect gate="A" pin="2" pad="2"/>
+<connect gate="A" pin="3" pad="3"/>
+<connect gate="A" pin="4" pad="4"/>
+<connect gate="A" pin="5" pad="5"/>
+<connect gate="A" pin="6" pad="6"/>
+<connect gate="A" pin="7" pad="7"/>
+<connect gate="A" pin="8" pad="8"/>
+<connect gate="A" pin="9" pad="9"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="2MM" package="1X16_2MM">
+<connects>
+<connect gate="A" pin="1" pad="1"/>
+<connect gate="A" pin="10" pad="10"/>
+<connect gate="A" pin="11" pad="11"/>
+<connect gate="A" pin="12" pad="12"/>
+<connect gate="A" pin="13" pad="13"/>
+<connect gate="A" pin="14" pad="14"/>
+<connect gate="A" pin="15" pad="15"/>
+<connect gate="A" pin="16" pad="16"/>
+<connect gate="A" pin="2" pad="2"/>
+<connect gate="A" pin="3" pad="3"/>
+<connect gate="A" pin="4" pad="4"/>
+<connect gate="A" pin="5" pad="5"/>
+<connect gate="A" pin="6" pad="6"/>
+<connect gate="A" pin="7" pad="7"/>
+<connect gate="A" pin="8" pad="8"/>
+<connect gate="A" pin="9" pad="9"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="2MM_OVAL" package="1X16_2MM_OVAL">
+<connects>
+<connect gate="A" pin="1" pad="P$1"/>
+<connect gate="A" pin="10" pad="P$10"/>
+<connect gate="A" pin="11" pad="P$11"/>
+<connect gate="A" pin="12" pad="P$12"/>
+<connect gate="A" pin="13" pad="P$13"/>
+<connect gate="A" pin="14" pad="P$14"/>
+<connect gate="A" pin="15" pad="P$15"/>
+<connect gate="A" pin="16" pad="P$16"/>
+<connect gate="A" pin="2" pad="P$2"/>
+<connect gate="A" pin="3" pad="P$3"/>
+<connect gate="A" pin="4" pad="P$4"/>
+<connect gate="A" pin="5" pad="P$5"/>
+<connect gate="A" pin="6" pad="P$6"/>
+<connect gate="A" pin="7" pad="P$7"/>
+<connect gate="A" pin="8" pad="P$8"/>
+<connect gate="A" pin="9" pad="P$9"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_76MIL" package="1X16_ROUND_76MIL">
+<connects>
+<connect gate="A" pin="1" pad="1"/>
+<connect gate="A" pin="10" pad="10"/>
+<connect gate="A" pin="11" pad="11"/>
+<connect gate="A" pin="12" pad="12"/>
+<connect gate="A" pin="13" pad="13"/>
+<connect gate="A" pin="14" pad="14"/>
+<connect gate="A" pin="15" pad="15"/>
+<connect gate="A" pin="16" pad="16"/>
+<connect gate="A" pin="2" pad="2"/>
+<connect gate="A" pin="3" pad="3"/>
+<connect gate="A" pin="4" pad="4"/>
+<connect gate="A" pin="5" pad="5"/>
+<connect gate="A" pin="6" pad="6"/>
+<connect gate="A" pin="7" pad="7"/>
+<connect gate="A" pin="8" pad="8"/>
+<connect gate="A" pin="9" pad="9"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_MIN" package="1X16_ROUND_MIN">
+<connects>
+<connect gate="A" pin="1" pad="1"/>
+<connect gate="A" pin="10" pad="10"/>
+<connect gate="A" pin="11" pad="11"/>
+<connect gate="A" pin="12" pad="12"/>
+<connect gate="A" pin="13" pad="13"/>
+<connect gate="A" pin="14" pad="14"/>
+<connect gate="A" pin="15" pad="15"/>
+<connect gate="A" pin="16" pad="16"/>
+<connect gate="A" pin="2" pad="2"/>
+<connect gate="A" pin="3" pad="3"/>
+<connect gate="A" pin="4" pad="4"/>
+<connect gate="A" pin="5" pad="5"/>
+<connect gate="A" pin="6" pad="6"/>
+<connect gate="A" pin="7" pad="7"/>
+<connect gate="A" pin="8" pad="8"/>
+<connect gate="A" pin="9" pad="9"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+<deviceset name="CON_JST_PH_2PIN" prefix="X" uservalue="yes">
+<description>JST 2-Pin Right-Angle Connector
+&lt;ul&gt;
+&lt;li&gt;PH-Series - 4UConnector: 17311&lt;/li&gt;
+&lt;li&gt;SH-Series - 4UConnector: 07278&lt;/li&gt;
+&lt;/ul&gt;</description>
+<gates>
+<gate name="G$1" symbol="PINHD2" x="2.54" y="0"/>
+</gates>
+<devices>
+<device name="" package="JSTPH2">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="SH2" package="JSTSH2">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="PH2_NOTHERMALS" package="JSTPH2_NOTHERMALS">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+<deviceset name="HEADER-1X12" prefix="JP" uservalue="yes">
+<gates>
+<gate name="G$1" symbol="PINHD12" x="2.54" y="-2.54"/>
+</gates>
+<devices>
+<device name="" package="1X12_ROUND">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="10" pad="10"/>
+<connect gate="G$1" pin="11" pad="11"/>
+<connect gate="G$1" pin="12" pad="12"/>
+<connect gate="G$1" pin="2" pad="2"/>
+<connect gate="G$1" pin="3" pad="3"/>
+<connect gate="G$1" pin="4" pad="4"/>
+<connect gate="G$1" pin="5" pad="5"/>
+<connect gate="G$1" pin="6" pad="6"/>
+<connect gate="G$1" pin="7" pad="7"/>
+<connect gate="G$1" pin="8" pad="8"/>
+<connect gate="G$1" pin="9" pad="9"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="OVAL" package="1X12_OVAL">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="10" pad="10"/>
+<connect gate="G$1" pin="11" pad="11"/>
+<connect gate="G$1" pin="12" pad="12"/>
+<connect gate="G$1" pin="2" pad="2"/>
+<connect gate="G$1" pin="3" pad="3"/>
+<connect gate="G$1" pin="4" pad="4"/>
+<connect gate="G$1" pin="5" pad="5"/>
+<connect gate="G$1" pin="6" pad="6"/>
+<connect gate="G$1" pin="7" pad="7"/>
+<connect gate="G$1" pin="8" pad="8"/>
+<connect gate="G$1" pin="9" pad="9"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="80MIL" package="1X12_ROUND_80MIL">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="10" pad="10"/>
+<connect gate="G$1" pin="11" pad="11"/>
+<connect gate="G$1" pin="12" pad="12"/>
+<connect gate="G$1" pin="2" pad="2"/>
+<connect gate="G$1" pin="3" pad="3"/>
+<connect gate="G$1" pin="4" pad="4"/>
+<connect gate="G$1" pin="5" pad="5"/>
+<connect gate="G$1" pin="6" pad="6"/>
+<connect gate="G$1" pin="7" pad="7"/>
+<connect gate="G$1" pin="8" pad="8"/>
+<connect gate="G$1" pin="9" pad="9"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="76MIL" package="1X12_ROUND_76MIL">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="10" pad="10"/>
+<connect gate="G$1" pin="11" pad="11"/>
+<connect gate="G$1" pin="12" pad="12"/>
+<connect gate="G$1" pin="2" pad="2"/>
+<connect gate="G$1" pin="3" pad="3"/>
+<connect gate="G$1" pin="4" pad="4"/>
+<connect gate="G$1" pin="5" pad="5"/>
+<connect gate="G$1" pin="6" pad="6"/>
+<connect gate="G$1" pin="7" pad="7"/>
+<connect gate="G$1" pin="8" pad="8"/>
+<connect gate="G$1" pin="9" pad="9"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_MIN" package="1X12_ROUND_MIN">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="10" pad="10"/>
+<connect gate="G$1" pin="11" pad="11"/>
+<connect gate="G$1" pin="12" pad="12"/>
+<connect gate="G$1" pin="2" pad="2"/>
+<connect gate="G$1" pin="3" pad="3"/>
+<connect gate="G$1" pin="4" pad="4"/>
+<connect gate="G$1" pin="5" pad="5"/>
+<connect gate="G$1" pin="6" pad="6"/>
+<connect gate="G$1" pin="7" pad="7"/>
+<connect gate="G$1" pin="8" pad="8"/>
+<connect gate="G$1" pin="9" pad="9"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+<deviceset name="JTAG-CORTEX" prefix="X" uservalue="yes">
+<description>&lt;p&gt;&lt;b&gt;Serial Wire (SW-DP) Connector&lt;/b&gt;&lt;/p&gt;
+&lt;p&gt;Standard 0.05" 10-pin connector is for use with the Cortex M and Cortex A SWD (serial wire debugger) interface (SW-DP)&lt;/p&gt;
+&lt;b&gt;Connectors&lt;/b&gt;
+&lt;ul&gt;
+&lt;li&gt;&lt;b&gt;2x05_1.27MM_SMT&lt;/b&gt; - Inexpensive surface-mount header with bare pins, compatible with standard 10-pin SWD cables (4UCON: 16846)&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;2x05_1.27MM_BOX_NOPOSTS&lt;/b&gt; - Polarised surface-mount box (4UCON with caps: 19735, without caps: 15117&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;2x05_1.27MM_BOX_POSTS&lt;/b&gt; - Polarised surface-mount box with mounting holes (4UCON: 20317)&lt;/li&gt;
+&lt;/ul&gt;
+&lt;b&gt;Pinout:&lt;/b&gt;
+&lt;ul&gt;
+&lt;li&gt;http://infocenter.arm.com/help/topic/com.arm.doc.faqs/attached/13634/cortex_debug_connectors.pdf&lt;/li&gt;
+&lt;li&gt;http://www.keil.com/peripherals/coresight/connectors.asp&lt;/li&gt;
+&lt;/ul&gt;</description>
+<gates>
+<gate name="G$1" symbol="JTAG-CORTEX" x="0" y="0"/>
+</gates>
+<devices>
+<device name="" package="2X05_1.27MM_SMT">
+<connects>
+<connect gate="G$1" pin="GND@1" pad="3"/>
+<connect gate="G$1" pin="GND@2" pad="5"/>
+<connect gate="G$1" pin="GNDDETECT" pad="9"/>
+<connect gate="G$1" pin="KEY" pad="7"/>
+<connect gate="G$1" pin="NRESET" pad="10"/>
+<connect gate="G$1" pin="SWDCLK" pad="4"/>
+<connect gate="G$1" pin="SWDIO" pad="2"/>
+<connect gate="G$1" pin="SWO" pad="6"/>
+<connect gate="G$1" pin="TDI" pad="8"/>
+<connect gate="G$1" pin="VCC" pad="1"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="BOX" package="2X05_1.27MM_BOX_NOPOSTS">
+<connects>
+<connect gate="G$1" pin="GND@1" pad="3"/>
+<connect gate="G$1" pin="GND@2" pad="5"/>
+<connect gate="G$1" pin="GNDDETECT" pad="9"/>
+<connect gate="G$1" pin="KEY" pad="7"/>
+<connect gate="G$1" pin="NRESET" pad="10"/>
+<connect gate="G$1" pin="SWDCLK" pad="4"/>
+<connect gate="G$1" pin="SWDIO" pad="2"/>
+<connect gate="G$1" pin="SWO" pad="6"/>
+<connect gate="G$1" pin="TDI" pad="8"/>
+<connect gate="G$1" pin="VCC" pad="1"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="BOXPOSTS" package="2X05_1.27MM_BOX_POSTS">
+<connects>
+<connect gate="G$1" pin="GND@1" pad="3"/>
+<connect gate="G$1" pin="GND@2" pad="5"/>
+<connect gate="G$1" pin="GNDDETECT" pad="9"/>
+<connect gate="G$1" pin="KEY" pad="7"/>
+<connect gate="G$1" pin="NRESET" pad="10"/>
+<connect gate="G$1" pin="SWDCLK" pad="4"/>
+<connect gate="G$1" pin="SWDIO" pad="2"/>
+<connect gate="G$1" pin="SWO" pad="6"/>
+<connect gate="G$1" pin="TDI" pad="8"/>
+<connect gate="G$1" pin="VCC" pad="1"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+<deviceset name="VREG_SOT23-5" prefix="U" uservalue="yes">
+<description>&lt;p&gt;&lt;b&gt;SOT23-5 Fixed Voltage Regulators&lt;/b&gt;&lt;/p&gt;
+&lt;p&gt;&lt;/p&gt;
+&lt;table width="700"&gt;
+&lt;tr bgcolor="#EEEEEE" &gt;
+&lt;td&gt;&lt;b&gt;Part&lt;/b&gt;&lt;/td&gt;
+&lt;td&gt;&lt;b&gt;Current Out&lt;/b&gt;&lt;/td&gt;
+&lt;td&gt;&lt;b&gt;V Out&lt;/b&gt;&lt;/td&gt;
+&lt;td&gt;&lt;b&gt;V In&lt;/b&gt;&lt;/td&gt;
+&lt;td&gt;&lt;b&gt;V Dropout&lt;/b&gt;&lt;/td&gt;
+&lt;td&gt;&lt;b&gt;θJA (°C/W)&lt;/b&gt;&lt;/td&gt;
+&lt;td&gt;&lt;b&gt;TJ (°C)&lt;/b&gt;&lt;/td&gt;
+&lt;td&gt;&lt;b&gt;Digikey Part No.&lt;/b&gt;&lt;/td&gt;
+&lt;/tr&gt;
+&lt;tr&gt;
+ &lt;td&gt;ADP121&lt;/td&gt;
+ &lt;td&gt;150mA&lt;/td&gt;
+ &lt;td&gt;&lt;b&gt;3.3V&lt;/b&gt;&lt;/td&gt;
+ &lt;td&gt;3.4-5.5V&lt;/td&gt;
+ &lt;td&gt;0.09V @ 150mA&lt;/td&gt;
+ &lt;td&gt;--&lt;/td&gt;
+ &lt;td&gt;--&lt;/td&gt;
+ &lt;td&gt;ADP121-AUJZ33R7CT-ND&lt;/td&gt;
+&lt;/tr&gt;
+&lt;tr&gt;
+ &lt;td&gt;ADP121&lt;/td&gt;
+ &lt;td&gt;150mA&lt;/td&gt;
+ &lt;td&gt;&lt;b&gt;3.0V&lt;/b&gt;&lt;/td&gt;
+ &lt;td&gt;3.1-5.5V&lt;/td&gt;
+ &lt;td&gt;0.09V @ 150mA&lt;/td&gt;
+ &lt;td&gt;--&lt;/td&gt;
+ &lt;td&gt;--&lt;/td&gt;
+ &lt;td&gt;ADP121-AUJZ30R7CT-ND&lt;/td&gt;
+&lt;/tr&gt;
+&lt;tr&gt;
+ &lt;td&gt;ADP122&lt;/td&gt;
+ &lt;td&gt;&lt;strong&gt;300mA&lt;/strong&gt;&lt;/td&gt;
+ &lt;td&gt;&lt;b&gt;3.3V&lt;/b&gt;&lt;/td&gt;
+ &lt;td&gt;3.4-5.5V&lt;/td&gt;
+ &lt;td&gt;0.085V @ 300mA&lt;/td&gt;
+ &lt;td&gt;--&lt;/td&gt;
+ &lt;td&gt;--&lt;/td&gt;
+ &lt;td&gt;ADP122AUJZ-3.3-R7CT-ND&lt;/td&gt;
+&lt;/tr&gt;
+&lt;tr&gt;
+ &lt;td&gt;ADP1712&lt;/td&gt;
+ &lt;td&gt;&lt;strong&gt;300mA&lt;/strong&gt;&lt;/td&gt;
+ &lt;td&gt;&lt;b&gt;3.3V&lt;/b&gt;&lt;/td&gt;
+ &lt;td&gt;3.5-5.5V&lt;/td&gt;
+ &lt;td&gt;0.17V @ 300mA&lt;/td&gt;
+ &lt;td&gt;--&lt;/td&gt;
+ &lt;td&gt;--&lt;/td&gt;
+ &lt;td&gt;ADP1712AUJZ-3.3-R7TR-ND&lt;/td&gt;
+&lt;/tr&gt;
+&lt;tr&gt;
+ &lt;td&gt;AP7311 (&lt;b&gt;Low Cost&lt;/b&gt;)&lt;/td&gt;
+ &lt;td&gt;150mA&lt;/td&gt;
+ &lt;td&gt;&lt;b&gt;3.3V&lt;/b&gt;&lt;/td&gt;
+ &lt;td&gt;3.5-6V&lt;/td&gt;
+ &lt;td&gt;0.15V @ 150mA&lt;/td&gt;
+ &lt;td&gt;--&lt;/td&gt;
+ &lt;td&gt;--&lt;/td&gt;
+ &lt;td&gt;AP7311-33WG-7DICT-ND&lt;/td&gt;
+&lt;/tr&gt;
+
+&lt;tr&gt;
+ &lt;td&gt;LD39015M18R&lt;/td&gt;
+ &lt;td&gt;150mA&lt;/td&gt;
+ &lt;td&gt;&lt;b&gt;1.8V&lt;/b&gt;&lt;/td&gt;
+ &lt;td&gt;1.9V-5.5V&lt;/td&gt;
+ &lt;td&gt;0.08V @ 100mA&lt;/td&gt;
+ &lt;td&gt;--&lt;/td&gt;
+ &lt;td&gt;--&lt;/td&gt;
+ &lt;td&gt;497-6977-1-ND&lt;/td&gt;
+&lt;/tr&gt;
+
+&lt;tr&gt;
+ &lt;td&gt;LP2985A-33DBVR&lt;/td&gt;
+ &lt;td&gt;150mA&lt;/td&gt;
+ &lt;td&gt;&lt;b&gt;3.3V&lt;/b&gt;&lt;/td&gt;
+ &lt;td&gt;3.3-16V&lt;/td&gt;
+ &lt;td&gt;0.28V @ 150mA&lt;/td&gt;
+ &lt;td&gt;206&lt;/td&gt;
+ &lt;td&gt;150&lt;/td&gt;
+ &lt;td&gt;296-18479-1-ND&lt;/td&gt;
+&lt;/tr&gt;
+
+&lt;tr&gt;
+ &lt;td&gt;MCP1824T-3302E/OT&lt;/td&gt;
+ &lt;td&gt;&lt;b&gt;300mA&lt;/b&gt;&lt;/td&gt;
+ &lt;td&gt;&lt;b&gt;3.3V&lt;/b&gt;&lt;/td&gt;
+ &lt;td&gt;3.5V-6V&lt;/td&gt;
+ &lt;td&gt;0.2V @ 300mA&lt;/td&gt;
+ &lt;td&gt;--&lt;/td&gt;
+ &lt;td&gt;--&lt;/td&gt;
+ &lt;td&gt;MCP1824T-3302E/OTCT-ND&lt;/td&gt;
+&lt;/tr&gt;
+
+&lt;tr&gt;
+ &lt;td&gt;MIC5205-2.5YM5 TR&lt;/td&gt;
+ &lt;td&gt;150mA&lt;/td&gt;
+ &lt;td&gt;&lt;b&gt;2.5V&lt;/b&gt;&lt;/td&gt;
+ &lt;td&gt;2.7-16V&lt;/td&gt;
+ &lt;td&gt;0.165V @ 150mA&lt;/td&gt;
+ &lt;td&gt;--&lt;/td&gt;
+ &lt;td&gt;--&lt;/td&gt;
+ &lt;td&gt;576-1257-2-ND&lt;/td&gt;
+&lt;/tr&gt;
+&lt;tr&gt;
+ &lt;td&gt;MIC5205-3.0YM5 TR&lt;/td&gt;
+ &lt;td&gt;150mA&lt;/td&gt;
+ &lt;td&gt;&lt;b&gt;3.0V&lt;/b&gt;&lt;/td&gt;
+ &lt;td&gt;3.2V-16V&lt;/td&gt;
+ &lt;td&gt;0.165V @ 150mA&lt;/td&gt;
+ &lt;td&gt;--&lt;/td&gt;
+ &lt;td&gt;--&lt;/td&gt;
+ &lt;td&gt;576-1258-2-ND&lt;/td&gt;
+&lt;/tr&gt;
+&lt;tr&gt;
+ &lt;td&gt;MIC5205-3.3YM5 TR&lt;/td&gt;
+ &lt;td&gt;150mA&lt;/td&gt;
+ &lt;td&gt;&lt;b&gt;3.3V&lt;/b&gt;&lt;/td&gt;
+ &lt;td&gt;3.5V-16V&lt;/td&gt;
+ &lt;td&gt;0.165V @ 150mA&lt;/td&gt;
+ &lt;td&gt;--&lt;/td&gt;
+ &lt;td&gt;--&lt;/td&gt;
+ &lt;td&gt;576-1259-2-ND&lt;/td&gt;
+&lt;/tr&gt;
+&lt;tr&gt;
+ &lt;td&gt;TPS780330220&lt;/td&gt;
+ &lt;td&gt;150mA&lt;/td&gt;
+ &lt;td&gt;&lt;b&gt;3.3V+2.2V&lt;/b&gt;&lt;/td&gt;
+ &lt;td&gt;3.6-5.5V&lt;/td&gt;
+ &lt;td&gt;250mV Max&lt;/td&gt;
+ &lt;td&gt;--&lt;/td&gt;
+ &lt;td&gt;--&lt;/td&gt;
+ &lt;td&gt;296-23332-1-ND&lt;/td&gt;
+&lt;/tr&gt;
+&lt;tr&gt;
+ &lt;td&gt;TDA3663/N1,135&lt;/td&gt;
+ &lt;td&gt;100mA&lt;/td&gt;
+ &lt;td&gt;&lt;b&gt;3.3V&lt;/b&gt;&lt;/td&gt;
+ &lt;td&gt;3.5-&lt;b&gt;45V&lt;/b&gt;&lt;/td&gt;
+ &lt;td&gt;0.18V @ 50mA&lt;/td&gt;
+ &lt;td&gt;--&lt;/td&gt;
+ &lt;td&gt;--&lt;/td&gt;
+ &lt;td&gt;568-5343-1-ND&lt;/td&gt;
+&lt;/tr&gt;
+&lt;tr&gt;
+ &lt;td&gt;&lt;/td&gt;
+ &lt;td&gt;&lt;/td&gt;
+ &lt;td&gt;&lt;/td&gt;
+ &lt;td&gt;&lt;/td&gt;
+ &lt;td&gt;&lt;/td&gt;
+ &lt;td&gt;&lt;/td&gt;
+ &lt;td&gt;&lt;/td&gt;
+ &lt;td&gt;&lt;/td&gt;
+&lt;/tr&gt;
+&lt;tr&gt;
+ &lt;td&gt;&lt;/td&gt;
+ &lt;td&gt;&lt;/td&gt;
+ &lt;td&gt;&lt;/td&gt;
+ &lt;td&gt;&lt;/td&gt;
+ &lt;td&gt;&lt;/td&gt;
+ &lt;td&gt;&lt;/td&gt;
+ &lt;td&gt;&lt;/td&gt;
+ &lt;td&gt;&lt;/td&gt;
+&lt;/tr&gt;
+
+&lt;/table&gt;
+&lt;p&gt;Max operating temp can be calculated using θJA, TJ (max junction temperature), and power in watts. Set the "Maximum Ambient Temperature" until it reaches TJ ("Max Junction Temperature"), which is the absolute limit for safe use of the regulator: &lt;a href="http://www.daycounter.com/Calculators/Heat-Sink-Temperature-Calculator.phtml"&gt;Heat Sink Temperature Calculator&lt;/a&gt;&lt;/p&gt;
+&lt;p&gt;For example, With 12V source into a 3.3V LP2985 and a 30mA load, we are dissipating (12V-3.3V) * 0.03A = 0.261W. With a θJA of 206 °C/W, a TJ of 150°C, and 261mW we can safely use the chip without a heat sink up to 75°C (=147.1°C Junction Temperature).&lt;/p&gt;</description>
+<gates>
+<gate name="G$1" symbol="VREG_SOT23-5" x="0" y="0"/>
+</gates>
+<devices>
+<device name="" package="SOT23-5">
+<connects>
+<connect gate="G$1" pin="EN" pad="3"/>
+<connect gate="G$1" pin="GND" pad="2"/>
+<connect gate="G$1" pin="IN" pad="1"/>
+<connect gate="G$1" pin="OUT" pad="5"/>
+<connect gate="G$1" pin="P4" pad="4"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+<deviceset name="DIODE-SCHOTTKY" prefix="D" uservalue="yes">
+<gates>
+<gate name="G$1" symbol="DIODE-SCHOTTKY" x="0" y="0"/>
+</gates>
+<devices>
+<device name="SMA" package="SMADIODE">
+<connects>
+<connect gate="G$1" pin="A" pad="A"/>
+<connect gate="G$1" pin="C" pad="C"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="DO-1N4148" package="DO-1N4148">
+<connects>
+<connect gate="G$1" pin="A" pad="A"/>
+<connect gate="G$1" pin="C" pad="C"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="SOT23_REFLOW" package="SOT23-R">
+<connects>
+<connect gate="G$1" pin="A" pad="1"/>
+<connect gate="G$1" pin="C" pad="3"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="SOD-523" package="SOD-523">
+<connects>
+<connect gate="G$1" pin="A" pad="A"/>
+<connect gate="G$1" pin="C" pad="K"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="SOD-323" package="SOD-323">
+<connects>
+<connect gate="G$1" pin="A" pad="A"/>
+<connect gate="G$1" pin="C" pad="C"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="SOD-123" package="SOD-123">
+<connects>
+<connect gate="G$1" pin="A" pad="A"/>
+<connect gate="G$1" pin="C" pad="C"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="SOT23_WIDE" package="SOT23-WIDE">
+<connects>
+<connect gate="G$1" pin="A" pad="1"/>
+<connect gate="G$1" pin="C" pad="3"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="POWERDI" package="POWERDI-5">
+<connects>
+<connect gate="G$1" pin="A" pad="A1 A2"/>
+<connect gate="G$1" pin="C" pad="C"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+<deviceset name="MOSFET-P" prefix="Q" uservalue="yes">
+<description>&lt;b&gt;P-Channel Mosfet&lt;/b&gt;
+&lt;p&gt;&lt;b&gt;LEGEND&lt;/b&gt;&lt;/p&gt;
+&lt;p&gt;
+&lt;b&gt;VDS&lt;/b&gt;: Voltage Drain-Source&lt;br/&gt;
+&lt;b&gt;ID&lt;/b&gt;: Drain Current&lt;br/&gt;
+&lt;b&gt;RDS(ON)&lt;/b&gt;: Drain-Source On-State Resistance&lt;br/&gt;
+&lt;b&gt;VGS(TH)&lt;/b&gt;: Gate-Source Threshold Voltage&lt;br/&gt;
+&lt;b&gt;CISS&lt;/b&gt;: Drain-Source Input Capacitance
+&lt;/p&gt;
+&lt;p&gt;
+&lt;b&gt;SOT-23&lt;/b&gt;
+&lt;table border="0" width="90%" cellspacing="0" cellpadding="5"&gt;
+&lt;tr bgcolor="#DDDDDD"&gt;
+&lt;td&gt;Name&lt;/td&gt;
+&lt;td&gt;VDS&lt;/td&gt;
+&lt;td&gt;ID&lt;/td&gt;
+&lt;td&gt;RDS(ON)&lt;/td&gt;
+&lt;td&gt;VGS(TH)&lt;/td&gt;
+&lt;td&gt;CISS&lt;/td&gt;
+&lt;td&gt;Order Number&lt;/td&gt;
+&lt;/tr&gt;
+
+&lt;tr&gt;
+&lt;td&gt;IRLML5103&lt;/td&gt;
+&lt;td&gt;30V&lt;/td&gt;
+&lt;td&gt;760mA&lt;/td&gt;
+&lt;td&gt;600 mOhm&lt;/td&gt;
+&lt;td&gt;--&lt;/td&gt;
+&lt;td&gt;75pF @ 25V&lt;/td&gt;
+&lt;td&gt;Digikey: IRLML5103PBFCT-ND&lt;/td&gt;
+&lt;/tr&gt;
+
+&lt;tr&gt;
+&lt;td&gt;IRLML6401&lt;/td&gt;
+&lt;td&gt;12V&lt;/td&gt;
+&lt;td&gt;4.3A&lt;/td&gt;
+&lt;td&gt;50 mOhm&lt;/td&gt;
+&lt;td&gt;950mV @ 250µA&lt;/td&gt;
+&lt;td&gt;830pF @ 10V&lt;/td&gt;
+&lt;td&gt;Digikey: IRLML6401PBFTR-ND&lt;/td&gt;
+&lt;/tr&gt;
+
+&lt;tr&gt;
+&lt;td&gt;NTR0202PL&lt;/td&gt;
+&lt;td&gt;20V&lt;/td&gt;
+&lt;td&gt;400mA&lt;/td&gt;
+&lt;td&gt;800 mOhm&lt;/td&gt;
+&lt;td&gt;2.3V @ 250uA&lt;/td&gt;
+&lt;td&gt;70pF @ 5V&lt;/td&gt;
+&lt;td&gt;Digikey: NTR0202PLT1GOSTR-ND&lt;/td&gt;
+&lt;/tr&gt;
+
+&lt;tr&gt;
+&lt;td&gt;NTR4101PT1G&lt;/td&gt;
+&lt;td&gt;20V&lt;/td&gt;
+&lt;td&gt;1.8A&lt;/td&gt;
+&lt;td&gt;85 mOhm&lt;/td&gt;
+&lt;td&gt;1.2V @ 250uA&lt;/td&gt;
+&lt;td&gt;675pF @ 10V&lt;/td&gt;
+&lt;td&gt;Digikey: NTR4101PT1GOSCT-ND&lt;/td&gt;
+&lt;/tr&gt;
+
+&lt;tr&gt;
+&lt;td&gt;DMP2004K&lt;/td&gt;
+&lt;td&gt;20V&lt;/td&gt;
+&lt;td&gt;600mA&lt;/td&gt;
+&lt;td&gt;900 mOhm&lt;/td&gt;
+&lt;td&gt;1V @ 250uA&lt;/td&gt;
+&lt;td&gt;175pF @ 16V&lt;/td&gt;
+&lt;td&gt;Digikey: DMP2004KDICT-ND&lt;/td&gt;
+&lt;/tr&gt;
+
+&lt;tr&gt;
+&lt;td&gt;PMV65XP&lt;/td&gt;
+&lt;td&gt;20V&lt;/td&gt;
+&lt;td&gt;3.9A&lt;/td&gt;
+&lt;td&gt;76 mOhm&lt;/td&gt;
+&lt;td&gt;950mV @ 1mA&lt;/td&gt;
+&lt;td&gt;725pF @ 20V&lt;/td&gt;
+&lt;td&gt;Digikey: 568-2358-2-ND&lt;/td&gt;
+&lt;/tr&gt;
+
+&lt;tr&gt;
+&lt;td&gt;&lt;/td&gt;
+&lt;td&gt;&lt;/td&gt;
+&lt;td&gt;&lt;/td&gt;
+&lt;td&gt;&lt;/td&gt;
+&lt;td&gt;&lt;/td&gt;
+&lt;td&gt;&lt;/td&gt;
+&lt;td&gt;&lt;/td&gt;
+&lt;/tr&gt;
+
+&lt;tr&gt;
+&lt;td&gt;&lt;/td&gt;
+&lt;td&gt;&lt;/td&gt;
+&lt;td&gt;&lt;/td&gt;
+&lt;td&gt;&lt;/td&gt;
+&lt;td&gt;&lt;/td&gt;
+&lt;td&gt;&lt;/td&gt;
+&lt;td&gt;&lt;/td&gt;
+&lt;/tr&gt;
+&lt;/table&gt;
+&lt;b&gt;TO-252&lt;/b&gt;
+&lt;table border="0" width="90%" cellspacing="0" cellpadding="5"&gt;
+&lt;tr bgcolor="#DDDDDD"&gt;
+&lt;td&gt;Name&lt;/td&gt;
+&lt;td&gt;VDS&lt;/td&gt;
+&lt;td&gt;ID&lt;/td&gt;
+&lt;td&gt;RDS(ON)&lt;/td&gt;
+&lt;td&gt;VGS(TH)&lt;/td&gt;
+&lt;td&gt;CISS&lt;/td&gt;
+&lt;td&gt;Order Number&lt;/td&gt;
+&lt;/tr&gt;
+
+&lt;tr&gt;
+&lt;td&gt;AOD417&lt;/td&gt;
+&lt;td&gt;30V&lt;/td&gt;
+&lt;td&gt;25A&lt;/td&gt;
+&lt;td&gt;34 mOhm&lt;/td&gt;
+&lt;td&gt;3V @ 250µA&lt;/td&gt;
+&lt;td&gt;920pF @ 15V&lt;/td&gt;
+&lt;td&gt;Digikey: 785-1106-2-ND&lt;/td&gt;
+&lt;/tr&gt;
+
+&lt;/table&gt;
+
+&lt;b&gt;PowerPak&lt;/b&gt;
+&lt;table border="0" width="90%" cellspacing="0" cellpadding="5"&gt;
+&lt;tr bgcolor="#DDDDDD"&gt;
+&lt;td&gt;Name&lt;/td&gt;
+&lt;td&gt;VDS&lt;/td&gt;
+&lt;td&gt;ID&lt;/td&gt;
+&lt;td&gt;RDS(ON)&lt;/td&gt;
+&lt;td&gt;VGS(TH)&lt;/td&gt;
+&lt;td&gt;CISS&lt;/td&gt;
+&lt;td&gt;Order Number&lt;/td&gt;
+&lt;/tr&gt;
+
+
+&lt;tr&gt;
+&lt;td&gt;AON7401&lt;/td&gt;
+&lt;td&gt;30V&lt;/td&gt;
+&lt;td&gt;12A&lt;/td&gt;
+&lt;td&gt;14 mOhm&lt;/td&gt;
+&lt;td&gt;3V @ 250µA&lt;/td&gt;
+&lt;td&gt;2600pF @ 15V&lt;/td&gt;
+&lt;td&gt;Digikey: 785-1302-1-ND&lt;/td&gt;
+&lt;/tr&gt;
+
+
+&lt;/p&gt;</description>
+<gates>
+<gate name="G$1" symbol="MOSFET-P" x="0" y="0"/>
+</gates>
+<devices>
+<device name="" package="SOT23-R">
+<connects>
+<connect gate="G$1" pin="D" pad="3"/>
+<connect gate="G$1" pin="G" pad="1"/>
+<connect gate="G$1" pin="S" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="WIDE" package="SOT23-WIDE">
+<connects>
+<connect gate="G$1" pin="D" pad="3"/>
+<connect gate="G$1" pin="G" pad="1"/>
+<connect gate="G$1" pin="S" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="TO252" package="TO252">
+<connects>
+<connect gate="G$1" pin="D" pad="3"/>
+<connect gate="G$1" pin="G" pad="1"/>
+<connect gate="G$1" pin="S" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="-POWERDI3333" package="POWERDI3333">
+<connects>
+<connect gate="G$1" pin="D" pad="5678"/>
+<connect gate="G$1" pin="G" pad="4"/>
+<connect gate="G$1" pin="S" pad="1 2 3"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+<deviceset name="MCP73831/2" prefix="U" uservalue="yes">
+<description>&lt;p&gt;&lt;b&gt;MCP73831/2 LIPO Charger&lt;/b&gt;&lt;/p&gt;
+&lt;p&gt;
+&lt;ul&gt;
+&lt;li&gt;VDD: 3.75 - 6V&lt;/li&gt;
+&lt;li&gt;Temp -40 - 85°C&lt;/li&gt;
+&lt;li&gt;Programmable Charge Rate: 15-500mA&lt;/li&gt;
+&lt;/ul&gt;
+&lt;/p&gt;
+&lt;p&gt;&lt;b&gt;NOTE:&lt;/b&gt; STAT is a tri-state logic output on the MCP73831 and an open-drain output on the MCP73832.&lt;/p&gt;
+&lt;p&gt;SOT23-5 with 4.2V output and tri-state logic on STAT = MCP73831T-2ACI/OT&lt;/p&gt;</description>
+<gates>
+<gate name="G$1" symbol="MCP73831/2" x="0" y="0"/>
+</gates>
+<devices>
+<device name="" package="SOT23-5">
+<connects>
+<connect gate="G$1" pin="PROG" pad="5"/>
+<connect gate="G$1" pin="STAT" pad="1"/>
+<connect gate="G$1" pin="VBAT" pad="3"/>
+<connect gate="G$1" pin="VDD" pad="4"/>
+<connect gate="G$1" pin="VSS" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+<deviceset name="TESTPOINT" prefix="TP" uservalue="yes">
+<description>&lt;b&gt;Test Point&lt;/b&gt;
+&lt;p&gt;Various test points for characterisation and PCB testing&lt;/p&gt;
+&lt;p&gt;
+&lt;ul&gt;
+&lt;li&gt;&lt;b&gt;TESTPOINT_SMT&lt;/b&gt; - Compact Surface Mount Test Point [Digikey: 5016KTR-ND]&lt;/li&gt;
+&lt;/ul&gt;
+&lt;/p&gt;</description>
+<gates>
+<gate name="G$1" symbol="TESTPOINT" x="0" y="0"/>
+</gates>
+<devices>
+<device name="" package="TESTPOINT_SMT">
+<connects>
+<connect gate="G$1" pin="P$1" pad="P$1"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="PAD2MM" package="TESTPOINT_PAD_2MM">
+<connects>
+<connect gate="G$1" pin="P$1" pad="P$1"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="ROUND2MM" package="TESTPOINT_ROUND_2MM">
+<connects>
+<connect gate="G$1" pin="P$1" pad="P$1"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="0.1&quot;" package="1X01_ROUND">
+<connects>
+<connect gate="G$1" pin="P$1" pad="1"/>
+</connects>
+<technologies>
+<technology name="">
+<attribute name="BOM" value="EXCLUDE" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="1.5X2.0MM_NOCREAM" package="PAD-1.5X2.0">
+<connects>
+<connect gate="G$1" pin="P$1" pad="P$1"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="ROUND1MM" package="TESTPOINT_ROUND_1MM">
+<connects>
+<connect gate="G$1" pin="P$1" pad="P$1"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="ROUND0.5MM" package="TESTPOINT_ROUND_0.5MM">
+<connects>
+<connect gate="G$1" pin="P$1" pad="P$1"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="PAD1MM" package="TESTPOINT_PAD_1MM">
+<connects>
+<connect gate="G$1" pin="P$1" pad="P$1"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="RECT0.25X1MM" package="TESTPOINT_RECT_0.25X1MM">
+<connects>
+<connect gate="G$1" pin="P$1" pad="P$1"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="ROUND1.5MM" package="TESTPOINT_ROUND_1.5MM">
+<connects>
+<connect gate="G$1" pin="P$1" pad="P$1"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="ROUND2MMNO" package="TESTPOINT_ROUND_2MM_NO">
+<connects>
+<connect gate="G$1" pin="P$1" pad="P$1"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="ROUND1.5MMNO" package="TESTPOINT_ROUND_1.5MM_NO">
+<connects>
+<connect gate="G$1" pin="P$1" pad="P$1"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+<deviceset name="SWITCH_PUSHBUTTON" prefix="SW" uservalue="yes">
+<description>&lt;p&gt;&lt;b&gt;Buttons&lt;/b&gt;&lt;/p&gt;
+&lt;b&gt;SOFTTOUCHSMD_SJ&lt;/b&gt; - Soft touch temporary push button (Super Junk Akihabara)
+&lt;p&gt;Compatible with SKPMANE010 [Mouser: 688-SKPMAN]&lt;/p&gt;
+&lt;p&gt;C&amp;K_KSS = Digikey: KSS221GLFS&lt;/p&gt;</description>
+<gates>
+<gate name="G$1" symbol="PUSHBUTTON" x="0" y="0"/>
+</gates>
+<devices>
+<device name="SOFTTOUCHSMD_SJ" package="PUSHBUTTON_SMD_SJ">
+<connects>
+<connect gate="G$1" pin="P$1" pad="P$1"/>
+<connect gate="G$1" pin="P$2" pad="P$2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="EVQ-PE" package="TACT_PANA-EVQ">
+<connects>
+<connect gate="G$1" pin="P$1" pad="P$1"/>
+<connect gate="G$1" pin="P$2" pad="P$2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="C&amp;K_KSS" package="BTN_CK_KSS">
+<connects>
+<connect gate="G$1" pin="P$1" pad="P$1"/>
+<connect gate="G$1" pin="P$2" pad="P$2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_3.5X6MM" package="TACTILE_3X6MM">
+<connects>
+<connect gate="G$1" pin="P$1" pad="P$1"/>
+<connect gate="G$1" pin="P$2" pad="P$2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+</devicesets>
+</library>
+<library name="supply1">
+<packages>
+</packages>
+<symbols>
+<symbol name="GND">
+<wire x1="-1.905" y1="0" x2="1.905" y2="0" width="0.254" layer="94"/>
+<text x="-2.54" y="-2.54" size="1.778" layer="96">&gt;VALUE</text>
+<pin name="GND" x="0" y="2.54" visible="off" length="short" direction="sup" rot="R270"/>
+</symbol>
+<symbol name="+3V3">
+<wire x1="1.27" y1="-1.905" x2="0" y2="0" width="0.254" layer="94"/>
+<wire x1="0" y1="0" x2="-1.27" y2="-1.905" width="0.254" layer="94"/>
+<text x="-2.54" y="-5.08" size="1.778" layer="96" rot="R90">&gt;VALUE</text>
+<pin name="+3V3" x="0" y="-2.54" visible="off" length="short" direction="sup" rot="R90"/>
+</symbol>
+</symbols>
+<devicesets>
+<deviceset name="GND" prefix="GND">
+<description>&lt;b&gt;SUPPLY SYMBOL&lt;/b&gt;</description>
+<gates>
+<gate name="1" symbol="GND" x="0" y="0"/>
+</gates>
+<devices>
+<device name="">
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+<deviceset name="+3V3" prefix="+3V3">
+<description>&lt;b&gt;SUPPLY SYMBOL&lt;/b&gt;</description>
+<gates>
+<gate name="G$1" symbol="+3V3" x="0" y="0"/>
+</gates>
+<devices>
+<device name="">
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+</devicesets>
+</library>
+<library name="My Stuff">
+<description>Generated from &lt;b&gt;Hiking Log FeatherWing.brd&lt;/b&gt;&lt;p&gt;
+by exp-lbrs.ulp</description>
+<packages>
+<package name="LCD_FEATHER_DISPLAY">
+<wire x1="-13.5" y1="9" x2="13.5" y2="9" width="0.127" layer="51"/>
+<wire x1="13.5" y1="9" x2="13.5" y2="-9" width="0.127" layer="51"/>
+<wire x1="13.5" y1="-9" x2="-13.5" y2="-9" width="0.127" layer="51"/>
+<wire x1="-13.5" y1="-9" x2="-13.5" y2="9" width="0.127" layer="51"/>
+<smd name="P$1" x="-11.7" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$2" x="-10.8" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$3" x="-9.9" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$4" x="-9" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$5" x="-8.1" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$6" x="-7.2" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$7" x="-6.3" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$8" x="-5.4" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$9" x="-4.5" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$10" x="-3.6" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$11" x="-2.7" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$12" x="-1.8" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$13" x="-0.9" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$14" x="0" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$15" x="0.9" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$16" x="1.8" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$17" x="2.7" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$18" x="3.6" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$19" x="4.5" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$20" x="5.4" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$21" x="6.3" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$22" x="7.2" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$23" x="8.1" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$24" x="9" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$25" x="9.9" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$26" x="10.8" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+<smd name="P$27" x="11.7" y="8.1" dx="0.5" dy="1.8" layer="1"/>
+</package>
+</packages>
+<symbols>
+<symbol name="A4L-LOC">
+<wire x1="256.54" y1="3.81" x2="256.54" y2="8.89" width="0.1016" layer="94"/>
+<wire x1="256.54" y1="8.89" x2="256.54" y2="13.97" width="0.1016" layer="94"/>
+<wire x1="256.54" y1="13.97" x2="256.54" y2="19.05" width="0.1016" layer="94"/>
+<wire x1="256.54" y1="19.05" x2="256.54" y2="24.13" width="0.1016" layer="94"/>
+<wire x1="184.15" y1="3.81" x2="184.15" y2="24.13" width="0.1016" layer="94"/>
+<wire x1="184.15" y1="24.13" x2="215.265" y2="24.13" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="24.13" x2="256.54" y2="24.13" width="0.1016" layer="94"/>
+<wire x1="234.95" y1="3.81" x2="234.95" y2="8.89" width="0.1016" layer="94"/>
+<wire x1="234.95" y1="8.89" x2="256.54" y2="8.89" width="0.1016" layer="94"/>
+<wire x1="234.95" y1="8.89" x2="215.265" y2="8.89" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="8.89" x2="215.265" y2="3.81" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="8.89" x2="215.265" y2="13.97" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="13.97" x2="256.54" y2="13.97" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="13.97" x2="215.265" y2="19.05" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="19.05" x2="256.54" y2="19.05" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="19.05" x2="215.265" y2="24.13" width="0.1016" layer="94"/>
+<text x="217.17" y="15.24" size="2.54" layer="94">&gt;DRAWING_NAME</text>
+<text x="217.17" y="10.16" size="2.286" layer="94">&gt;LAST_DATE_TIME</text>
+<text x="228.473" y="5.08" size="2.54" layer="94">&gt;SHEET</text>
+<text x="216.916" y="4.953" size="2.54" layer="94">Sheet:</text>
+<frame x1="0" y1="0" x2="260.35" y2="179.07" columns="6" rows="4" layer="94"/>
+<text x="185.42" y="5.08" size="4.572" layer="94" font="vector" ratio="10">oddly
+specific
+objects</text>
+<text x="217.17" y="20.32" size="2.54" layer="94">by joey castillo</text>
+<text x="236.22" y="5.08" size="2.54" layer="94">cc-by-sa 4.0</text>
+</symbol>
+<symbol name="LCD">
+<pin name="1" x="-30.48" y="-10.16" visible="pin" length="middle" direction="in" rot="R90"/>
+<pin name="2" x="-27.94" y="-10.16" visible="pin" length="middle" direction="in" rot="R90"/>
+<pin name="3" x="-25.4" y="-10.16" visible="pin" length="middle" direction="in" rot="R90"/>
+<pin name="4" x="-22.86" y="-10.16" visible="pin" length="middle" direction="in" rot="R90"/>
+<pin name="5" x="-20.32" y="-10.16" visible="pin" length="middle" direction="in" rot="R90"/>
+<pin name="6" x="-17.78" y="-10.16" visible="pin" length="middle" direction="in" rot="R90"/>
+<pin name="7" x="-15.24" y="-10.16" visible="pin" length="middle" direction="in" rot="R90"/>
+<pin name="8" x="-12.7" y="-10.16" visible="pin" length="middle" direction="in" rot="R90"/>
+<pin name="9" x="-10.16" y="-10.16" visible="pin" length="middle" direction="in" rot="R90"/>
+<pin name="10" x="-7.62" y="-10.16" visible="pin" length="middle" direction="in" rot="R90"/>
+<pin name="11" x="-5.08" y="-10.16" visible="pin" length="middle" direction="in" rot="R90"/>
+<pin name="12" x="-2.54" y="-10.16" visible="pin" length="middle" direction="in" rot="R90"/>
+<pin name="13" x="0" y="-10.16" visible="pin" length="middle" direction="in" rot="R90"/>
+<pin name="14" x="2.54" y="-10.16" visible="pin" length="middle" direction="in" rot="R90"/>
+<pin name="15" x="5.08" y="-10.16" visible="pin" length="middle" direction="in" rot="R90"/>
+<pin name="16" x="7.62" y="-10.16" visible="pin" length="middle" direction="in" rot="R90"/>
+<pin name="17" x="10.16" y="-10.16" visible="pin" length="middle" direction="in" rot="R90"/>
+<pin name="18" x="12.7" y="-10.16" visible="pin" length="middle" direction="in" rot="R90"/>
+<pin name="19" x="15.24" y="-10.16" visible="pin" length="middle" direction="in" rot="R90"/>
+<pin name="20" x="17.78" y="-10.16" visible="pin" length="middle" direction="in" rot="R90"/>
+<pin name="21" x="20.32" y="-10.16" visible="pin" length="middle" direction="in" rot="R90"/>
+<pin name="22" x="22.86" y="-10.16" visible="pin" length="middle" direction="in" rot="R90"/>
+<pin name="23" x="25.4" y="-10.16" visible="pin" length="middle" direction="in" rot="R90"/>
+<pin name="24" x="27.94" y="-10.16" visible="pin" length="middle" direction="in" rot="R90"/>
+<pin name="25" x="30.48" y="-10.16" visible="pin" length="middle" direction="in" rot="R90"/>
+<pin name="26" x="33.02" y="-10.16" visible="pin" length="middle" direction="in" rot="R90"/>
+<pin name="27" x="35.56" y="-10.16" visible="pin" length="middle" direction="in" rot="R90"/>
+<wire x1="-33.02" y1="-5.08" x2="-33.02" y2="10.16" width="0.254" layer="94"/>
+<wire x1="-33.02" y1="10.16" x2="38.1" y2="10.16" width="0.254" layer="94"/>
+<wire x1="38.1" y1="10.16" x2="38.1" y2="-5.08" width="0.254" layer="94"/>
+<wire x1="38.1" y1="-5.08" x2="-33.02" y2="-5.08" width="0.254" layer="94"/>
+<text x="-17.78" y="2.54" size="6.4516" layer="94">LCD Glass</text>
+</symbol>
+</symbols>
+<devicesets>
+<deviceset name="A4L-LOC" prefix="FRAME" uservalue="yes">
+<description>&lt;b&gt;FRAME&lt;/b&gt;&lt;p&gt;
+DIN A4, landscape with location and doc. field</description>
+<gates>
+<gate name="G$1" symbol="A4L-LOC" x="0" y="0"/>
+</gates>
+<devices>
+<device name="">
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+<deviceset name="LCD_FEATHER_DISPLAY">
+<gates>
+<gate name="G$1" symbol="LCD" x="0" y="0"/>
+</gates>
+<devices>
+<device name="" package="LCD_FEATHER_DISPLAY">
+<connects>
+<connect gate="G$1" pin="1" pad="P$1"/>
+<connect gate="G$1" pin="10" pad="P$10"/>
+<connect gate="G$1" pin="11" pad="P$11"/>
+<connect gate="G$1" pin="12" pad="P$12"/>
+<connect gate="G$1" pin="13" pad="P$13"/>
+<connect gate="G$1" pin="14" pad="P$14"/>
+<connect gate="G$1" pin="15" pad="P$15"/>
+<connect gate="G$1" pin="16" pad="P$16"/>
+<connect gate="G$1" pin="17" pad="P$17"/>
+<connect gate="G$1" pin="18" pad="P$18"/>
+<connect gate="G$1" pin="19" pad="P$19"/>
+<connect gate="G$1" pin="2" pad="P$2"/>
+<connect gate="G$1" pin="20" pad="P$20"/>
+<connect gate="G$1" pin="21" pad="P$21"/>
+<connect gate="G$1" pin="22" pad="P$22"/>
+<connect gate="G$1" pin="23" pad="P$23"/>
+<connect gate="G$1" pin="24" pad="P$24"/>
+<connect gate="G$1" pin="25" pad="P$25"/>
+<connect gate="G$1" pin="26" pad="P$26"/>
+<connect gate="G$1" pin="27" pad="P$27"/>
+<connect gate="G$1" pin="3" pad="P$3"/>
+<connect gate="G$1" pin="4" pad="P$4"/>
+<connect gate="G$1" pin="5" pad="P$5"/>
+<connect gate="G$1" pin="6" pad="P$6"/>
+<connect gate="G$1" pin="7" pad="P$7"/>
+<connect gate="G$1" pin="8" pad="P$8"/>
+<connect gate="G$1" pin="9" pad="P$9"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+</devicesets>
+</library>
+<library name="supply1" urn="urn:adsk.eagle:library:371">
+<description>&lt;b&gt;Supply Symbols&lt;/b&gt;&lt;p&gt;
+ GND, VCC, 0V, +5V, -5V, etc.&lt;p&gt;
+ Please keep in mind, that these devices are necessary for the
+ automatic wiring of the supply signals.&lt;p&gt;
+ The pin name defined in the symbol is identical to the net which is to be wired automatically.&lt;p&gt;
+ In this library the device names are the same as the pin names of the symbols, therefore the correct signal names appear next to the supply symbols in the schematic.&lt;p&gt;
+ &lt;author&gt;Created by librarian@cadsoft.de&lt;/author&gt;</description>
+<packages>
+</packages>
+<symbols>
+<symbol name="GND" urn="urn:adsk.eagle:symbol:26925/1" library_version="1">
+<wire x1="-1.905" y1="0" x2="1.905" y2="0" width="0.254" layer="94"/>
+<text x="-2.54" y="-2.54" size="1.778" layer="96">&gt;VALUE</text>
+<pin name="GND" x="0" y="2.54" visible="off" length="short" direction="sup" rot="R270"/>
+</symbol>
+<symbol name="+3V3" urn="urn:adsk.eagle:symbol:26950/1" library_version="1">
+<wire x1="1.27" y1="-1.905" x2="0" y2="0" width="0.254" layer="94"/>
+<wire x1="0" y1="0" x2="-1.27" y2="-1.905" width="0.254" layer="94"/>
+<text x="-2.54" y="-5.08" size="1.778" layer="96" rot="R90">&gt;VALUE</text>
+<pin name="+3V3" x="0" y="-2.54" visible="off" length="short" direction="sup" rot="R90"/>
+</symbol>
+</symbols>
+<devicesets>
+<deviceset name="GND" urn="urn:adsk.eagle:component:26954/1" prefix="GND" library_version="1">
+<description>&lt;b&gt;SUPPLY SYMBOL&lt;/b&gt;</description>
+<gates>
+<gate name="1" symbol="GND" x="0" y="0"/>
+</gates>
+<devices>
+<device name="">
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+<deviceset name="+3V3" urn="urn:adsk.eagle:component:26981/1" prefix="+3V3" library_version="1">
+<description>&lt;b&gt;SUPPLY SYMBOL&lt;/b&gt;</description>
+<gates>
+<gate name="G$1" symbol="+3V3" x="0" y="0"/>
+</gates>
+<devices>
+<device name="">
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+</devicesets>
+</library>
+<library name="Adafruit 3.5in 480x320 FeatherWing">
+<description>Generated from &lt;b&gt;Adafruit 3.5in 480x320 FeatherWing.sch&lt;/b&gt;&lt;p&gt;
+by exp-lbrs.ulp</description>
+<packages>
+<package name="MICROBUILDER_INDUCTOR_1007">
+<description>Inductor - 1007 (2518 Metric)
+&lt;p&gt;L: 2.5mm x W: 1.8mm x H: 1.8mm&lt;/p&gt;</description>
+<wire x1="-1.25" y1="-0.9" x2="-0.75" y2="-0.9" width="0.2032" layer="51"/>
+<wire x1="-0.75" y1="-0.9" x2="0.75" y2="-0.9" width="0.2032" layer="51"/>
+<wire x1="0.75" y1="-0.9" x2="1.25" y2="-0.9" width="0.2032" layer="51"/>
+<wire x1="-1.25" y1="0.9" x2="-0.75" y2="0.9" width="0.2032" layer="51"/>
+<wire x1="-0.75" y1="0.9" x2="0.75" y2="0.9" width="0.2032" layer="51"/>
+<wire x1="0.75" y1="0.9" x2="1.25" y2="0.9" width="0.2032" layer="51"/>
+<wire x1="-1.25" y1="-0.9" x2="-1.25" y2="0.9" width="0.2032" layer="51"/>
+<wire x1="1.25" y1="-0.9" x2="1.25" y2="0.9" width="0.2032" layer="51"/>
+<wire x1="-0.75" y1="-0.9" x2="-0.75" y2="0.9" width="0.2032" layer="51"/>
+<wire x1="0.75" y1="-0.9" x2="0.75" y2="0.9" width="0.2032" layer="51"/>
+<wire x1="-1.8415" y1="1.27" x2="1.8415" y2="1.27" width="0.2032" layer="21"/>
+<wire x1="1.8415" y1="1.27" x2="1.8415" y2="-1.27" width="0.2032" layer="21"/>
+<wire x1="1.8415" y1="-1.27" x2="-1.8415" y2="-1.27" width="0.2032" layer="21"/>
+<wire x1="-1.8415" y1="-1.27" x2="-1.8415" y2="1.27" width="0.2032" layer="21"/>
+<smd name="P$1" x="-1.127" y="0" dx="1.016" dy="2.2" layer="1"/>
+<smd name="P$2" x="1.127" y="0" dx="1.016" dy="2.2" layer="1"/>
+<text x="-1.524" y="1.524" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.651" y="-1.905" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="MICROBUILDER_INDUCTOR_8X8MM">
+<circle x="0" y="0" radius="2.5" width="0.2032" layer="51"/>
+<wire x1="-2.5" y1="2.5" x2="2.5" y2="2.5" width="0.127" layer="51"/>
+<wire x1="2.5" y1="2.5" x2="2.5" y2="-2.5" width="0.127" layer="51"/>
+<wire x1="2.5" y1="-2.5" x2="-2.5" y2="-2.5" width="0.127" layer="51"/>
+<wire x1="-2.5" y1="-2.5" x2="-2.5" y2="2.5" width="0.127" layer="51"/>
+<wire x1="-4" y1="4" x2="4" y2="4" width="0.2032" layer="21"/>
+<wire x1="4" y1="4" x2="4" y2="-4" width="0.2032" layer="21"/>
+<wire x1="4" y1="-4" x2="-4" y2="-4" width="0.2032" layer="21"/>
+<wire x1="-4" y1="-4" x2="-4" y2="4" width="0.2032" layer="21"/>
+<smd name="P$1" x="-2.8" y="0" dx="2" dy="7.5" layer="1"/>
+<smd name="P$2" x="2.8" y="0" dx="2" dy="7.5" layer="1"/>
+<text x="-1.746" y="4.246" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-0.746" y="-4.746" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="MICROBUILDER_0603">
+<description>0603 (1608 Metric)</description>
+<wire x1="-1.473" y1="0.729" x2="1.473" y2="0.729" width="0.0508" layer="39"/>
+<wire x1="1.473" y1="0.729" x2="1.473" y2="-0.729" width="0.0508" layer="39"/>
+<wire x1="1.473" y1="-0.729" x2="-1.473" y2="-0.729" width="0.0508" layer="39"/>
+<wire x1="-1.473" y1="-0.729" x2="-1.473" y2="0.729" width="0.0508" layer="39"/>
+<wire x1="-0.356" y1="0.432" x2="0.356" y2="0.432" width="0.1016" layer="51"/>
+<wire x1="-0.356" y1="-0.419" x2="0.356" y2="-0.419" width="0.1016" layer="51"/>
+<wire x1="-1.65" y1="0.75" x2="1.65" y2="0.75" width="0.2032" layer="21"/>
+<wire x1="1.65" y1="0.75" x2="1.65" y2="-0.75" width="0.2032" layer="21"/>
+<wire x1="1.65" y1="-0.75" x2="-1.65" y2="-0.75" width="0.2032" layer="21"/>
+<wire x1="-1.65" y1="-0.75" x2="-1.65" y2="0.75" width="0.2032" layer="21"/>
+<rectangle x1="-0.8382" y1="-0.4699" x2="-0.3381" y2="0.4801" layer="51"/>
+<rectangle x1="0.3302" y1="-0.4699" x2="0.8303" y2="0.4801" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.3" x2="0.1999" y2="0.3" layer="35"/>
+<smd name="1" x="-0.85" y="0" dx="1.1" dy="1" layer="1"/>
+<smd name="2" x="0.85" y="0" dx="1.1" dy="1" layer="1"/>
+<text x="1.778" y="-0.127" size="0.8128" layer="25" font="vector" ratio="18">&gt;NAME</text>
+<text x="1.778" y="-0.762" size="0.4064" layer="27" font="vector" ratio="10">&gt;VALUE</text>
+</package>
+<package name="MICROBUILDER_0603-NO$1">
+<wire x1="-1.473" y1="0.729" x2="1.473" y2="0.729" width="0.0508" layer="39"/>
+<wire x1="1.473" y1="0.729" x2="1.473" y2="-0.729" width="0.0508" layer="39"/>
+<wire x1="1.473" y1="-0.729" x2="-1.473" y2="-0.729" width="0.0508" layer="39"/>
+<wire x1="-1.473" y1="-0.729" x2="-1.473" y2="0.729" width="0.0508" layer="39"/>
+<wire x1="-0.356" y1="0.432" x2="0.356" y2="0.432" width="0.1016" layer="51"/>
+<wire x1="-0.356" y1="-0.419" x2="0.356" y2="-0.419" width="0.1016" layer="51"/>
+<wire x1="0" y1="0.4" x2="0" y2="-0.4" width="0.3048" layer="21"/>
+<rectangle x1="-0.8382" y1="-0.4699" x2="-0.3381" y2="0.4801" layer="51"/>
+<rectangle x1="0.3302" y1="-0.4699" x2="0.8303" y2="0.4801" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.3" x2="0.1999" y2="0.3" layer="35"/>
+<smd name="1" x="-0.85" y="0" dx="1.075" dy="1" layer="1"/>
+<smd name="2" x="0.85" y="0" dx="1.075" dy="1" layer="1"/>
+<text x="1.778" y="-0.127" size="0.8128" layer="25" font="vector" ratio="18">&gt;NAME</text>
+<text x="1.778" y="-0.762" size="0.4064" layer="27" font="vector" ratio="10">&gt;VALUE</text>
+</package>
+<package name="MICROBUILDER_0805">
+<description>0805 (2012 Metric)</description>
+<wire x1="-1.873" y1="0.883" x2="1.873" y2="0.883" width="0.0508" layer="39"/>
+<wire x1="1.873" y1="-0.883" x2="-1.873" y2="-0.883" width="0.0508" layer="39"/>
+<wire x1="-1.873" y1="-0.883" x2="-1.873" y2="0.883" width="0.0508" layer="39"/>
+<wire x1="-0.381" y1="0.66" x2="0.381" y2="0.66" width="0.1016" layer="51"/>
+<wire x1="-0.356" y1="-0.66" x2="0.381" y2="-0.66" width="0.1016" layer="51"/>
+<wire x1="1.873" y1="0.883" x2="1.873" y2="-0.883" width="0.0508" layer="39"/>
+<wire x1="1.85" y1="1" x2="1.85" y2="-1" width="0.2032" layer="21"/>
+<wire x1="1.85" y1="-1" x2="-1.85" y2="-1" width="0.2032" layer="21"/>
+<wire x1="-1.85" y1="-1" x2="-1.85" y2="1" width="0.2032" layer="21"/>
+<wire x1="-1.85" y1="1" x2="1.85" y2="1" width="0.2032" layer="21"/>
+<rectangle x1="-1.0922" y1="-0.7239" x2="-0.3421" y2="0.7262" layer="51"/>
+<rectangle x1="0.3556" y1="-0.7239" x2="1.1057" y2="0.7262" layer="51"/>
+<rectangle x1="-0.1001" y1="-0.4001" x2="0.1001" y2="0.4001" layer="35"/>
+<smd name="1" x="-0.95" y="0" dx="1.3" dy="1.5" layer="1"/>
+<smd name="2" x="0.95" y="0" dx="1.3" dy="1.5" layer="1"/>
+<text x="2.032" y="-0.127" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="2.032" y="-0.762" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="MICROBUILDER_0805-NO">
+<wire x1="-0.381" y1="0.66" x2="0.381" y2="0.66" width="0.1016" layer="51"/>
+<wire x1="-0.356" y1="-0.66" x2="0.381" y2="-0.66" width="0.1016" layer="51"/>
+<wire x1="0" y1="0.508" x2="0" y2="-0.508" width="0.3048" layer="21"/>
+<rectangle x1="-1.0922" y1="-0.7239" x2="-0.3421" y2="0.7262" layer="51"/>
+<rectangle x1="0.3556" y1="-0.7239" x2="1.1057" y2="0.7262" layer="51"/>
+<smd name="1" x="-0.95" y="0" dx="1.24" dy="1.5" layer="1"/>
+<smd name="2" x="0.95" y="0" dx="1.24" dy="1.5" layer="1"/>
+<text x="2.032" y="-0.127" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="2.032" y="-0.762" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="MICROBUILDER_INDUCTOR_6X6MM_SUMIDA_CDRH5D28">
+<description>&lt;p&gt;Source: http://www.sumida.com/products/pdf/CDRH5D28,5D28R,5D28RHP.pdf&lt;/p&gt;</description>
+<circle x="0.01" y="0.01" radius="2.787128125" width="0.127" layer="51"/>
+<wire x1="-2.85" y1="1.3" x2="-1.35" y2="2.8" width="0.127" layer="51"/>
+<wire x1="-1.35" y1="2.8" x2="2.35" y2="2.8" width="0.127" layer="51"/>
+<wire x1="2.35" y1="2.8" x2="2.85" y2="2.3" width="0.127" layer="51" curve="-90"/>
+<wire x1="2.85" y1="2.3" x2="2.85" y2="-1.3" width="0.127" layer="51"/>
+<wire x1="2.85" y1="-1.3" x2="1.35" y2="-2.8" width="0.127" layer="51"/>
+<wire x1="1.35" y1="-2.8" x2="-2.45" y2="-2.8" width="0.127" layer="51"/>
+<wire x1="-2.45" y1="-2.8" x2="-2.85" y2="-2.4" width="0.127" layer="51" curve="-90"/>
+<wire x1="-2.85" y1="-2.4" x2="-2.85" y2="1.3" width="0.127" layer="51"/>
+<wire x1="-0.4" y1="2.9" x2="0.4" y2="2.9" width="0.127" layer="21"/>
+<wire x1="-0.4" y1="-2.9" x2="0.4" y2="-2.9" width="0.127" layer="21"/>
+<smd name="P$1" x="-2.075" y="0" dx="3" dy="6.5" layer="1"/>
+<smd name="P$2" x="2.075" y="0" dx="3" dy="6.5" layer="1"/>
+<text x="-3" y="3.35" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-3" y="-3.819" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<polygon width="0.127" layer="51">
+<vertex x="-2.45" y="1.7"/>
+<vertex x="-2.65" y="1.9" curve="-180"/>
+<vertex x="-1.95" y="2.6"/>
+<vertex x="-1.75" y="2.4"/>
+</polygon>
+<polygon width="0.127" layer="51">
+<vertex x="2.45" y="-1.75"/>
+<vertex x="2.65" y="-1.95" curve="-180"/>
+<vertex x="1.95" y="-2.65"/>
+<vertex x="1.75" y="-2.45"/>
+</polygon>
+</package>
+<package name="MICROBUILDER_INDUCTOR_COILCRAFT_MA5532-AE">
+<wire x1="-5.85" y1="1.75" x2="5.85" y2="1.75" width="0.127" layer="51"/>
+<wire x1="5.85" y1="1.75" x2="5.85" y2="-1.75" width="0.127" layer="51"/>
+<wire x1="5.85" y1="-1.75" x2="-5.85" y2="-1.75" width="0.127" layer="51"/>
+<wire x1="-5.85" y1="-1.75" x2="-5.85" y2="1.75" width="0.127" layer="51"/>
+<wire x1="-5.95" y1="1.85" x2="5.95" y2="1.85" width="0.127" layer="21"/>
+<wire x1="5.95" y1="1.85" x2="5.95" y2="-1.85" width="0.127" layer="21"/>
+<wire x1="5.95" y1="-1.85" x2="-5.95" y2="-1.85" width="0.127" layer="21"/>
+<wire x1="-5.95" y1="-1.85" x2="-5.95" y2="1.85" width="0.127" layer="21"/>
+<smd name="1" x="-4.65" y="0" dx="1.3" dy="3.2" layer="1"/>
+<smd name="2" x="4.65" y="0" dx="1.3" dy="3.2" layer="1"/>
+<text x="-5.874" y="2.074" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-5.851" y="-2.405" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="MICROBUILDER_INDUCTOR_4X4MM_NR401">
+<wire x1="-2" y1="2" x2="2" y2="2" width="0.127" layer="21"/>
+<wire x1="2" y1="2" x2="2" y2="-2" width="0.127" layer="21"/>
+<wire x1="2" y1="-2" x2="-2" y2="-2" width="0.127" layer="21"/>
+<wire x1="-2" y1="-2" x2="-2" y2="2" width="0.127" layer="21"/>
+<smd name="P$1" x="-1.4" y="0" dx="1.2" dy="3.7" layer="1"/>
+<smd name="P$2" x="1.4" y="0" dx="1.2" dy="3.7" layer="1"/>
+<text x="-2" y="2.2" size="0.8128" layer="25" ratio="12">&gt;NAME</text>
+<text x="-2" y="3.2" size="0.8128" layer="27" ratio="12">&gt;VALUE</text>
+</package>
+<package name="MICROBUILDER_INDUCTOR_TAIYOYUDEN_NR3015">
+<wire x1="-0.97" y1="-1.29" x2="-1.36" y2="-1.29" width="0.127" layer="51"/>
+<wire x1="-1.36" y1="-1.29" x2="-1.45" y2="-1.2" width="0.127" layer="51"/>
+<wire x1="-1.45" y1="-1.2" x2="-1.45" y2="1.2" width="0.127" layer="51"/>
+<wire x1="-1.45" y1="1.2" x2="-1.35" y2="1.3" width="0.127" layer="51"/>
+<wire x1="-1.35" y1="1.3" x2="-1.25" y2="1.3" width="0.127" layer="51"/>
+<wire x1="-1.25" y1="1.3" x2="-0.95" y2="1.3" width="0.127" layer="51"/>
+<wire x1="-0.95" y1="1.3" x2="-0.75" y2="1.5" width="0.127" layer="51"/>
+<wire x1="-0.75" y1="1.5" x2="0.8" y2="1.5" width="0.127" layer="51"/>
+<wire x1="0.8" y1="1.5" x2="1" y2="1.3" width="0.127" layer="51"/>
+<wire x1="1" y1="1.3" x2="1.25" y2="1.3" width="0.127" layer="51"/>
+<wire x1="1.25" y1="1.3" x2="1.35" y2="1.3" width="0.127" layer="51"/>
+<wire x1="1.35" y1="1.3" x2="1.45" y2="1.2" width="0.127" layer="51"/>
+<wire x1="1.45" y1="1.2" x2="1.45" y2="-1.2" width="0.127" layer="51"/>
+<wire x1="1.45" y1="-1.2" x2="1.35" y2="-1.3" width="0.127" layer="51"/>
+<wire x1="1.35" y1="-1.3" x2="1.25" y2="-1.3" width="0.127" layer="51"/>
+<wire x1="1.25" y1="-1.3" x2="1" y2="-1.3" width="0.127" layer="51"/>
+<wire x1="1" y1="-1.3" x2="0.8" y2="-1.5" width="0.127" layer="51"/>
+<wire x1="0.8" y1="-1.5" x2="-0.75" y2="-1.5" width="0.127" layer="51"/>
+<wire x1="-0.75" y1="-1.5" x2="-0.95" y2="-1.3" width="0.127" layer="51"/>
+<wire x1="-1.25" y1="1.3" x2="-1.25" y2="-1.25" width="0.127" layer="51"/>
+<wire x1="1.25" y1="-1.3" x2="1.25" y2="1.3" width="0.127" layer="51"/>
+<wire x1="-0.95" y1="1.45" x2="-0.8" y2="1.6" width="0.127" layer="21"/>
+<wire x1="-0.8" y1="1.6" x2="0.85" y2="1.6" width="0.127" layer="21"/>
+<wire x1="0.85" y1="1.6" x2="1" y2="1.45" width="0.127" layer="21"/>
+<wire x1="-0.95" y1="-1.45" x2="-0.8" y2="-1.6" width="0.127" layer="21"/>
+<wire x1="-0.8" y1="-1.6" x2="0.85" y2="-1.6" width="0.127" layer="21"/>
+<wire x1="0.85" y1="-1.6" x2="1" y2="-1.45" width="0.127" layer="21"/>
+<smd name="P$1" x="-1.1" y="0" dx="0.8" dy="2.7" layer="1"/>
+<smd name="P$2" x="1.1" y="0" dx="0.8" dy="2.7" layer="1"/>
+<text x="-1.524" y="1.774" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.501" y="-2.155" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="MICROBUILDER_INDUCTOR_5X5MM_NR5040_NOTHERMALS">
+<circle x="0" y="0" radius="2.5" width="0.2032" layer="51"/>
+<wire x1="-2.5" y1="2.5" x2="2.5" y2="2.5" width="0.127" layer="51"/>
+<wire x1="2.5" y1="2.5" x2="2.5" y2="-2.5" width="0.127" layer="51"/>
+<wire x1="2.5" y1="-2.5" x2="-2.5" y2="-2.5" width="0.127" layer="51"/>
+<wire x1="-2.5" y1="-2.5" x2="-2.5" y2="2.5" width="0.127" layer="51"/>
+<wire x1="-2.938" y1="2.6" x2="2.938" y2="2.6" width="0.2032" layer="21"/>
+<wire x1="2.938" y1="2.6" x2="2.938" y2="-2.6" width="0.2032" layer="21"/>
+<wire x1="2.938" y1="-2.6" x2="-2.938" y2="-2.6" width="0.2032" layer="21"/>
+<wire x1="-2.938" y1="-2.6" x2="-2.938" y2="2.6" width="0.2032" layer="21"/>
+<smd name="P$1" x="-1.8" y="0" dx="3" dy="4" layer="1" thermals="no"/>
+<smd name="P$2" x="1.8" y="0" dx="1.8" dy="4" layer="1" thermals="no"/>
+<text x="-2.946" y="2.846" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-2.946" y="-3.238" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<wire x1="-0.8" y1="2.1" x2="-0.8" y2="-2.1" width="0.127" layer="16"/>
+<wire x1="-0.8" y1="-2.1" x2="0.8" y2="-2.1" width="0.127" layer="16"/>
+<wire x1="0.8" y1="-2.1" x2="0.8" y2="2.1" width="0.127" layer="16"/>
+<wire x1="0.8" y1="2.1" x2="-0.8" y2="2.1" width="0.127" layer="16"/>
+</package>
+<package name="MICROBUILDER_INDUCTOR_TAIYOYUDEN_NRH2412T">
+<wire x1="-1.4" y1="1.2" x2="1.4" y2="1.2" width="0.127" layer="51"/>
+<wire x1="1.4" y1="1.2" x2="1.4" y2="-1.2" width="0.127" layer="51"/>
+<wire x1="1.4" y1="-1.2" x2="-1.4" y2="-1.2" width="0.127" layer="51"/>
+<wire x1="-1.4" y1="-1.2" x2="-1.4" y2="1.2" width="0.127" layer="51"/>
+<wire x1="-1.5" y1="1.3" x2="1.5" y2="1.3" width="0.127" layer="21"/>
+<wire x1="1.5" y1="1.3" x2="1.5" y2="-1.3" width="0.127" layer="21"/>
+<wire x1="1.5" y1="-1.3" x2="-1.5" y2="-1.3" width="0.127" layer="21"/>
+<wire x1="-1.5" y1="-1.3" x2="-1.5" y2="1.3" width="0.127" layer="21"/>
+<smd name="1" x="-0.725" y="0" dx="1" dy="2" layer="1"/>
+<smd name="2" x="0.725" y="0" dx="1" dy="2" layer="1"/>
+<text x="-1.224" y="1.478" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.224" y="-1.84" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="MICROBUILDER_INDUCTOR_6X6MM_TDK_SLF6045">
+<description>&lt;b&gt;Source: &lt;/b&gt; http://www.tdk.co.jp/tefe02/e531_slf6045.pdf</description>
+<wire x1="-3" y1="3" x2="3" y2="3" width="0.127" layer="51"/>
+<wire x1="3" y1="3" x2="3" y2="-3" width="0.2032" layer="51"/>
+<wire x1="3" y1="-3" x2="-3" y2="-3" width="0.127" layer="51"/>
+<wire x1="-3" y1="-3" x2="-3" y2="3" width="0.2032" layer="51"/>
+<wire x1="-3" y1="2" x2="-3" y2="3" width="0.2032" layer="21"/>
+<wire x1="-3" y1="3" x2="3" y2="3" width="0.2032" layer="21"/>
+<wire x1="3" y1="3" x2="3" y2="2" width="0.2032" layer="21"/>
+<wire x1="-3" y1="-2" x2="-3" y2="-3" width="0.2032" layer="21"/>
+<wire x1="-3" y1="-3" x2="3" y2="-3" width="0.2032" layer="21"/>
+<wire x1="3" y1="-3" x2="3" y2="-2" width="0.2032" layer="21"/>
+<smd name="P$1" x="-2.75" y="0" dx="1.5" dy="2.2" layer="1"/>
+<smd name="P$2" x="2.75" y="0" dx="1.5" dy="2.2" layer="1"/>
+<text x="-3" y="3.5" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-3" y="-3.619" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="MICROBUILDER_INDUCTOR_5X5MM_TDK_VLC5045">
+<description>&lt;b&gt;Source: http://www.tdk.co.jp/tefe02/e531_vlc5045.pdf&lt;/b&gt;</description>
+<circle x="0" y="0" radius="2.5" width="0.2032" layer="51"/>
+<wire x1="-2.5" y1="2.5" x2="2.5" y2="2.5" width="0.127" layer="51"/>
+<wire x1="2.5" y1="2.5" x2="2.5" y2="-2.5" width="0.127" layer="51"/>
+<wire x1="2.5" y1="-2.5" x2="-2.5" y2="-2.5" width="0.127" layer="51"/>
+<wire x1="-2.5" y1="-2.5" x2="-2.5" y2="2.5" width="0.127" layer="51"/>
+<wire x1="-2.85" y1="2.75" x2="2.85" y2="2.75" width="0.2032" layer="21"/>
+<wire x1="2.85" y1="2.75" x2="2.85" y2="-2.75" width="0.2032" layer="21"/>
+<wire x1="2.85" y1="-2.75" x2="-2.85" y2="-2.75" width="0.2032" layer="21"/>
+<wire x1="-2.85" y1="-2.75" x2="-2.85" y2="2.75" width="0.2032" layer="21"/>
+<smd name="P$1" x="-1.6" y="0" dx="2" dy="5" layer="1"/>
+<smd name="P$2" x="1.6" y="0" dx="2" dy="5" layer="1"/>
+<text x="-3.746" y="3.246" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-3.746" y="-3.746" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="MICROBUILDER_INDUCTOR_5X5MM_TDK_VLC5045_NOTHERMALS">
+<circle x="0" y="0" radius="2.5" width="0.2032" layer="51"/>
+<wire x1="-2.5" y1="2.5" x2="2.5" y2="2.5" width="0.127" layer="51"/>
+<wire x1="2.5" y1="2.5" x2="2.5" y2="-2.5" width="0.127" layer="51"/>
+<wire x1="2.5" y1="-2.5" x2="-2.5" y2="-2.5" width="0.127" layer="51"/>
+<wire x1="-2.5" y1="-2.5" x2="-2.5" y2="2.5" width="0.127" layer="51"/>
+<wire x1="-3.738" y1="3" x2="3.738" y2="3" width="0.2032" layer="21"/>
+<wire x1="3.738" y1="3" x2="3.738" y2="-3" width="0.2032" layer="21"/>
+<wire x1="3.738" y1="-3" x2="-3.738" y2="-3" width="0.2032" layer="21"/>
+<wire x1="-3.738" y1="-3" x2="-3.738" y2="3" width="0.2032" layer="21"/>
+<smd name="P$1" x="-2.096" y="0" dx="2.54" dy="5" layer="1" thermals="no"/>
+<smd name="P$2" x="2.096" y="0" dx="2.54" dy="5" layer="1" thermals="no"/>
+<text x="-3.746" y="3.246" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-3.746" y="-3.746" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="MICROBUILDER_INDUCTOR_6X6MM_TDK_VLC6045">
+<description>&lt;b&gt;Source: &lt;/b&gt;http://www.tdk.co.jp/tefe02/e531_vlc6045.pdf</description>
+<circle x="0" y="0" radius="3.25" width="0.2032" layer="51"/>
+<wire x1="-3" y1="3" x2="3" y2="3" width="0.2032" layer="51"/>
+<wire x1="3" y1="3" x2="3" y2="-3" width="0.2032" layer="51"/>
+<wire x1="3" y1="-3" x2="-3" y2="-3" width="0.2032" layer="51"/>
+<wire x1="-3" y1="-3" x2="-3" y2="3" width="0.2032" layer="51"/>
+<wire x1="-4.5" y1="3.5" x2="4.5" y2="3.5" width="0.2032" layer="21"/>
+<wire x1="4.5" y1="3.5" x2="4.5" y2="-3.5" width="0.2032" layer="21"/>
+<wire x1="4.5" y1="-3.5" x2="-4.5" y2="-3.5" width="0.2032" layer="21"/>
+<wire x1="-4.5" y1="-3.5" x2="-4.5" y2="3.5" width="0.2032" layer="21"/>
+<smd name="P$1" x="-2.35" y="0" dx="3.25" dy="6" layer="1"/>
+<smd name="P$2" x="2.35" y="0" dx="3.25" dy="6" layer="1"/>
+<text x="-4" y="4" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-4" y="-4.5" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="MICROBUILDER_INDUCTOR_3.6X3MM_VISHAY_IHLP">
+<wire x1="-1.825" y1="1.5" x2="1.825" y2="1.5" width="0.127" layer="51"/>
+<wire x1="1.825" y1="1.5" x2="1.825" y2="-1.5" width="0.127" layer="51"/>
+<wire x1="1.825" y1="-1.5" x2="-1.825" y2="-1.5" width="0.127" layer="51"/>
+<wire x1="-1.825" y1="-1.5" x2="-1.825" y2="1.5" width="0.127" layer="51"/>
+<wire x1="-1.9" y1="0.8" x2="-1.9" y2="1.6" width="0.127" layer="21"/>
+<wire x1="-1.9" y1="1.6" x2="1.9" y2="1.6" width="0.127" layer="21"/>
+<wire x1="1.9" y1="1.6" x2="1.9" y2="0.8" width="0.127" layer="21"/>
+<wire x1="-1.9" y1="-0.8" x2="-1.9" y2="-1.6" width="0.127" layer="21"/>
+<wire x1="-1.9" y1="-1.6" x2="1.9" y2="-1.6" width="0.127" layer="21"/>
+<wire x1="1.9" y1="-1.6" x2="1.9" y2="-0.8" width="0.127" layer="21"/>
+<smd name="1" x="-1.4" y="0" dx="1.5" dy="1.2" layer="1"/>
+<smd name="2" x="1.4" y="0" dx="1.5" dy="1.2" layer="1"/>
+<text x="-1.83" y="1.81" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.83" y="-2.16" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="MICROBUILDER__0402">
+<description>&lt;b&gt; 0402&lt;/b&gt;</description>
+<wire x1="-0.245" y1="0.174" x2="0.245" y2="0.174" width="0.1016" layer="51"/>
+<wire x1="0.245" y1="-0.174" x2="-0.245" y2="-0.174" width="0.1016" layer="51"/>
+<wire x1="-1.0573" y1="0.5557" x2="1.0573" y2="0.5557" width="0.2032" layer="21"/>
+<wire x1="1.0573" y1="0.5557" x2="1.0573" y2="-0.5556" width="0.2032" layer="21"/>
+<wire x1="1.0573" y1="-0.5556" x2="-1.0573" y2="-0.5557" width="0.2032" layer="21"/>
+<wire x1="-1.0573" y1="-0.5557" x2="-1.0573" y2="0.5557" width="0.2032" layer="21"/>
+<rectangle x1="-0.0794" y1="-0.2381" x2="0.0794" y2="0.2381" layer="35"/>
+<rectangle x1="0.25" y1="-0.25" x2="0.5" y2="0.25" layer="51"/>
+<rectangle x1="-0.5" y1="-0.25" x2="-0.25" y2="0.25" layer="51"/>
+<smd name="1" x="-0.508" y="0" dx="0.6" dy="0.6" layer="1"/>
+<smd name="2" x="0.508" y="0" dx="0.6" dy="0.6" layer="1"/>
+<text x="-0.9525" y="0.7939" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-0.9525" y="-1.3336" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="MICROBUILDER__0402MP">
+<description>&lt;b&gt;0402 MicroPitch&lt;p&gt;</description>
+<wire x1="-0.245" y1="0.174" x2="0.245" y2="0.174" width="0.1016" layer="51"/>
+<wire x1="0.245" y1="-0.174" x2="-0.245" y2="-0.174" width="0.1016" layer="51"/>
+<wire x1="0" y1="0.127" x2="0" y2="-0.127" width="0.2032" layer="21"/>
+<rectangle x1="-0.1" y1="-0.2" x2="0.1" y2="0.2" layer="35"/>
+<rectangle x1="-0.5" y1="-0.25" x2="-0.254" y2="0.25" layer="51"/>
+<rectangle x1="0.2588" y1="-0.25" x2="0.5" y2="0.25" layer="51"/>
+<smd name="1" x="-0.508" y="0" dx="0.5" dy="0.5" layer="1"/>
+<smd name="2" x="0.508" y="0" dx="0.5" dy="0.5" layer="1"/>
+<text x="-0.635" y="0.4763" size="0.6096" layer="25" ratio="18">&gt;NAME</text>
+<text x="-0.635" y="-0.7938" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="MICROBUILDER__0603">
+<description>&lt;b&gt;0603&lt;/b&gt;</description>
+<wire x1="-0.432" y1="-0.306" x2="0.432" y2="-0.306" width="0.1016" layer="51"/>
+<wire x1="0.432" y1="0.306" x2="-0.432" y2="0.306" width="0.1016" layer="51"/>
+<wire x1="-1.4605" y1="0.635" x2="1.4605" y2="0.635" width="0.2032" layer="21"/>
+<wire x1="1.4605" y1="0.635" x2="1.4605" y2="-0.635" width="0.2032" layer="21"/>
+<wire x1="1.4605" y1="-0.635" x2="-1.4605" y2="-0.635" width="0.2032" layer="21"/>
+<wire x1="-1.4605" y1="-0.635" x2="-1.4605" y2="0.635" width="0.2032" layer="21"/>
+<rectangle x1="0.4318" y1="-0.4" x2="0.8382" y2="0.4" layer="51"/>
+<rectangle x1="-0.8382" y1="-0.4" x2="-0.4318" y2="0.4" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.4001" x2="0.1999" y2="0.4001" layer="35"/>
+<smd name="1" x="-0.762" y="0" dx="0.9" dy="0.8" layer="1"/>
+<smd name="2" x="0.762" y="0" dx="0.9" dy="0.8" layer="1"/>
+<text x="-1.27" y="0.9525" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.27" y="-1.4923" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="MICROBUILDER__0603MP">
+<description>&lt;b&gt;0603 MicroPitch&lt;/b&gt;</description>
+<wire x1="-0.432" y1="-0.306" x2="0.432" y2="-0.306" width="0.1016" layer="51"/>
+<wire x1="0.432" y1="0.306" x2="-0.432" y2="0.306" width="0.1016" layer="51"/>
+<wire x1="0" y1="0.254" x2="0" y2="-0.254" width="0.2032" layer="21"/>
+<rectangle x1="0.4318" y1="-0.4" x2="0.8" y2="0.4" layer="51"/>
+<rectangle x1="-0.8" y1="-0.4" x2="-0.4318" y2="0.4" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.25" x2="0.1999" y2="0.25" layer="35"/>
+<smd name="1" x="-0.762" y="0" dx="0.8" dy="0.8" layer="1"/>
+<smd name="2" x="0.762" y="0" dx="0.8" dy="0.8" layer="1"/>
+<text x="-0.9525" y="0.635" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-0.9525" y="-0.9525" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="MICROBUILDER__0805">
+<description>&lt;b&gt;0805&lt;/b&gt;</description>
+<wire x1="-0.41" y1="0.585" x2="0.41" y2="0.585" width="0.1016" layer="51"/>
+<wire x1="-0.41" y1="-0.585" x2="0.41" y2="-0.585" width="0.1016" layer="51"/>
+<wire x1="-1.905" y1="0.889" x2="1.905" y2="0.889" width="0.2032" layer="21"/>
+<wire x1="1.905" y1="0.889" x2="1.905" y2="-0.889" width="0.2032" layer="21"/>
+<wire x1="1.905" y1="-0.889" x2="-1.905" y2="-0.889" width="0.2032" layer="21"/>
+<wire x1="-1.905" y1="-0.889" x2="-1.905" y2="0.889" width="0.2032" layer="21"/>
+<rectangle x1="0.4064" y1="-0.65" x2="1.0564" y2="0.65" layer="51"/>
+<rectangle x1="-1.0668" y1="-0.65" x2="-0.4168" y2="0.65" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.5001" x2="0.1999" y2="0.5001" layer="35"/>
+<smd name="1" x="-1.016" y="0" dx="1.2" dy="1.3" layer="1"/>
+<smd name="2" x="1.016" y="0" dx="1.2" dy="1.3" layer="1"/>
+<text x="-1.5875" y="1.27" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.5874" y="-1.651" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="MICROBUILDER__0805MP">
+<description>&lt;b&gt;0805 MicroPitch&lt;/b&gt;</description>
+<wire x1="-0.51" y1="0.535" x2="0.51" y2="0.535" width="0.1016" layer="51"/>
+<wire x1="-0.51" y1="-0.535" x2="0.51" y2="-0.535" width="0.1016" layer="51"/>
+<wire x1="0" y1="0.508" x2="0" y2="-0.508" width="0.2032" layer="21"/>
+<rectangle x1="0.4064" y1="-0.65" x2="1" y2="0.65" layer="51"/>
+<rectangle x1="-1" y1="-0.65" x2="-0.4168" y2="0.65" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.5001" x2="0.1999" y2="0.5001" layer="35"/>
+<smd name="1" x="-1.016" y="0" dx="1.2" dy="1.3" layer="1"/>
+<smd name="2" x="1.016" y="0" dx="1.2" dy="1.3" layer="1"/>
+<text x="-1.5875" y="0.9525" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.5875" y="-1.27" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="MICROBUILDER_INDUCTOR_4X4MM_NR401_BIGPADS">
+<wire x1="-2" y1="2" x2="2" y2="2" width="0.127" layer="21"/>
+<wire x1="2" y1="2" x2="2" y2="-2" width="0.127" layer="21"/>
+<wire x1="2" y1="-2" x2="-2" y2="-2" width="0.127" layer="21"/>
+<wire x1="-2" y1="-2" x2="-2" y2="2" width="0.127" layer="21"/>
+<smd name="P$1" x="-1.8" y="0" dx="2" dy="3.7" layer="1"/>
+<smd name="P$2" x="1.8" y="0" dx="2" dy="3.7" layer="1"/>
+<text x="-2" y="2.2" size="0.8128" layer="25" ratio="12">&gt;NAME</text>
+<text x="-2" y="3.2" size="0.8128" layer="27" ratio="12">&gt;VALUE</text>
+</package>
+</packages>
+<symbols>
+<symbol name="MICROBUILDER_INDUCTOR">
+<wire x1="-2.54" y1="0.3175" x2="-1.27" y2="0.3175" width="0.254" layer="94" curve="-180"/>
+<wire x1="-1.27" y1="0.3175" x2="0" y2="0.3175" width="0.254" layer="94" curve="-180"/>
+<wire x1="0" y1="0.3175" x2="1.27" y2="0.3175" width="0.254" layer="94" curve="-180"/>
+<wire x1="1.27" y1="0.3175" x2="2.54" y2="0.3175" width="0.254" layer="94" curve="-180"/>
+<wire x1="-2.54" y1="0.3175" x2="-2.54" y2="0" width="0.254" layer="94"/>
+<wire x1="2.54" y1="0.3175" x2="2.54" y2="0" width="0.254" layer="94"/>
+<pin name="1" x="-5.08" y="0" visible="off" length="short" direction="pas" swaplevel="1"/>
+<pin name="2" x="5.08" y="0" visible="off" length="short" direction="pas" swaplevel="1" rot="R180"/>
+<text x="0" y="2.54" size="1.27" layer="95" align="center">&gt;NAME</text>
+<text x="0" y="-1.54" size="1.27" layer="96" align="center">&gt;VALUE</text>
+</symbol>
+</symbols>
+<devicesets>
+<deviceset name="MICROBUILDER_INDUCTOR" prefix="L" uservalue="yes">
+<description>&lt;b&gt;Inductors&lt;/b&gt;
+&lt;p&gt;0603:&lt;/p&gt;
+&lt;ul&gt;
+&lt;li&gt;10nH Ceramic Inductor - microwire antenna/RF (Digikey: 712-1434-2-ND)&lt;/li&gt;
+&lt;/ul&gt;
+&lt;p&gt;0805:&lt;/p&gt;
+&lt;ul&gt;
+&lt;li&gt;560nH Ceramic Inductor - RF (Digikey: 553-1047-1-ND)&lt;/li&gt;
+&lt;li&gt;270nH Ceramic Inductor - Q = 40@250MHz, +-5%, 1 Ohm DC Resistance (Digikey: 535-10506-2-ND)&lt;/li&gt;
+&lt;/ul&gt;
+&lt;p&gt;1007 (2518 Metric) SMT:&lt;/p&gt;
+&lt;ul&gt;
+&lt;li&gt;10µH 10% 250mOhm 820mA 1007 Inductor (Digikey: 587-2189-1-ND)&lt;/li&gt;
+&lt;li&gt;22µH 10% 500mOhm 580mA 1007 Inductor (Digikey: 587-2190-1-ND)&lt;/li&gt;
+&lt;li&gt;47µH 10% 950mOhm 420mA 1007 Inductor (Digikey: 587-2191-1-ND)&lt;/li&gt;
+&lt;li&gt;47µH 5% 100mOhm 1A 1008 Inductor (Digikey: 732-1816-1-ND)&lt;/li&gt;
+&lt;/ul&gt;
+&lt;p&gt;5.0x5.0mm (Taiyo Yuden NR5040 Series)&lt;/p&gt;
+&lt;ul&gt;
+&lt;li&gt;6.8µH 20% 2.3A 64mOhm Inductor (Digikey: 587-2374-2-ND)&lt;/li&gt;
+&lt;/ul&gt;
+&lt;p&gt;5.0x5.0mm (TDK VLC5045 Series)&lt;/p&gt;
+&lt;ul&gt;
+&lt;li&gt;4.7µH 20% 3.3A 34mOhm Inductor (Digikey: 445-6526-1-ND)&lt;/li&gt;
+&lt;li&gt;6.8µH 20% 2.7A 46mOhm Inductor (Digikey: 445-6527-1-ND)&lt;/li&gt;
+&lt;/ul&gt;
+&lt;p&gt;6.0x6.0mm (TDK VLC6045 Series)&lt;/p&gt;
+&lt;ul&gt;
+&lt;li&gt;4.7µH 20% 3.8A 27mOhm Inductor (Digikey: 445-6538-2-ND)&lt;/li&gt;
+&lt;li&gt;6.8µH 20% 3A 41mOhm Inductor (Digikey: 445-6540-1-ND)&lt;/li&gt;
+&lt;li&gt;6.2µH 30% 2.2A 45mOhm Inductor (Digikey: SRR5028-6R2YCT-ND) - Not TDK VLC6045 but footprint should match&lt;/li&gt;
+&lt;/ul&gt;
+&lt;p&gt;6.0x6.0mm (TDK SLF6045 Series)&lt;/p&gt;
+&lt;ul&gt;
+&lt;li&gt;6.8uH 30% 2A 33mOhm Inductor (Digikey: 445-4572-1-ND, Mouser: 810-SLF645T6R8N2R0PF)&lt;/li&gt;
+&lt;/ul&gt;
+&lt;p&gt;6.0x6.0mm (Sumida CDRH5D28 Series)&lt;/p&gt;
+&lt;ul&gt;
+&lt;li&gt;6.2uH 30% 1.8A 45mOhm Inductor (Digikey: 308-1542-1-ND)&lt;/li&gt;
+&lt;/ul&gt;
+
+&lt;p&gt;Taiyo Yuden NR3015T2R2M - 2.2uH 20% 1.5A (Digikey: 587-1648-2-ND, Mouser: 963-NR3015T2R2M) - Used with TI TPS62172&lt;/p&gt;
+&lt;p&gt;CoilCraft RFID Transponder Coil - MA5532-AE (For use with AS3935 Lightning Sensor)&lt;/p&gt;
+
+&lt;p&gt;Taiyo Yuden NRH2412T2R2MNGH - 2.2uH 20% 1AA (Digikey: 587-3443-1-ND) - Used with TI LM3671&lt;/p&gt;
+
+&lt;p&gt;
+Vishay IHLP
+&lt;ul&gt;
+&lt;li&gt;1.0uH Molded Inductor - 24mOhm DCR, 5A, +/-20%, -55°C-125°C (Digikey: 541-1319-1-ND)&lt;/li&gt;
+&lt;/ul&gt;
+&lt;/p&gt;</description>
+<gates>
+<gate name="G$1" symbol="MICROBUILDER_INDUCTOR" x="0" y="0"/>
+</gates>
+<devices>
+<device name="" package="MICROBUILDER_INDUCTOR_1007">
+<connects>
+<connect gate="G$1" pin="1" pad="P$1"/>
+<connect gate="G$1" pin="2" pad="P$2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="-8X8" package="MICROBUILDER_INDUCTOR_8X8MM">
+<connects>
+<connect gate="G$1" pin="1" pad="P$1"/>
+<connect gate="G$1" pin="2" pad="P$2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="0603" package="MICROBUILDER_0603">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="0603_NO" package="MICROBUILDER_0603-NO$1">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="0805" package="MICROBUILDER_0805">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="0805-NO" package="MICROBUILDER_0805-NO">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="CDRH5D28" package="MICROBUILDER_INDUCTOR_6X6MM_SUMIDA_CDRH5D28">
+<connects>
+<connect gate="G$1" pin="1" pad="P$1"/>
+<connect gate="G$1" pin="2" pad="P$2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="MA5532" package="MICROBUILDER_INDUCTOR_COILCRAFT_MA5532-AE">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="NR401" package="MICROBUILDER_INDUCTOR_4X4MM_NR401">
+<connects>
+<connect gate="G$1" pin="1" pad="P$1"/>
+<connect gate="G$1" pin="2" pad="P$2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="NR3015" package="MICROBUILDER_INDUCTOR_TAIYOYUDEN_NR3015">
+<connects>
+<connect gate="G$1" pin="1" pad="P$1"/>
+<connect gate="G$1" pin="2" pad="P$2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="NR5040" package="MICROBUILDER_INDUCTOR_5X5MM_NR5040_NOTHERMALS">
+<connects>
+<connect gate="G$1" pin="1" pad="P$1"/>
+<connect gate="G$1" pin="2" pad="P$2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="NRH2412T" package="MICROBUILDER_INDUCTOR_TAIYOYUDEN_NRH2412T">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="TDK_SLF6045" package="MICROBUILDER_INDUCTOR_6X6MM_TDK_SLF6045">
+<connects>
+<connect gate="G$1" pin="1" pad="P$1"/>
+<connect gate="G$1" pin="2" pad="P$2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="TDK_VLC5045" package="MICROBUILDER_INDUCTOR_5X5MM_TDK_VLC5045">
+<connects>
+<connect gate="G$1" pin="1" pad="P$1"/>
+<connect gate="G$1" pin="2" pad="P$2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="TDK_VLC5045_NOTHERM" package="MICROBUILDER_INDUCTOR_5X5MM_TDK_VLC5045_NOTHERMALS">
+<connects>
+<connect gate="G$1" pin="1" pad="P$1"/>
+<connect gate="G$1" pin="2" pad="P$2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="TDK_VLC6045" package="MICROBUILDER_INDUCTOR_6X6MM_TDK_VLC6045">
+<connects>
+<connect gate="G$1" pin="1" pad="P$1"/>
+<connect gate="G$1" pin="2" pad="P$2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="VISHAY_IHLP" package="MICROBUILDER_INDUCTOR_3.6X3MM_VISHAY_IHLP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0402" package="MICROBUILDER__0402">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0402MP" package="MICROBUILDER__0402MP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0603" package="MICROBUILDER__0603">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0603MP" package="MICROBUILDER__0603MP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0805" package="MICROBUILDER__0805">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0805MP" package="MICROBUILDER__0805MP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="NR401_BIGPADS" package="MICROBUILDER_INDUCTOR_4X4MM_NR401_BIGPADS">
+<connects>
+<connect gate="G$1" pin="1" pad="P$1"/>
+<connect gate="G$1" pin="2" pad="P$2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+</devicesets>
+</library>
+<library name="ATSAML22">
+<packages>
+<package name="TQFP64_10X10MC_MCH-L">
+<smd name="1" x="-5.5626" y="3.75" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="2" x="-5.5626" y="3.25" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="3" x="-5.5626" y="2.75" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="4" x="-5.5626" y="2.25" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="5" x="-5.5626" y="1.75" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="6" x="-5.5626" y="1.25" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="7" x="-5.5626" y="0.75" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="8" x="-5.5626" y="0.25" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="9" x="-5.5626" y="-0.25" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="10" x="-5.5626" y="-0.75" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="11" x="-5.5626" y="-1.25" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="12" x="-5.5626" y="-1.75" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="13" x="-5.5626" y="-2.25" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="14" x="-5.5626" y="-2.75" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="15" x="-5.5626" y="-3.25" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="16" x="-5.5626" y="-3.75" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="17" x="-3.75" y="-5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="18" x="-3.25" y="-5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="19" x="-2.75" y="-5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="20" x="-2.25" y="-5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="21" x="-1.75" y="-5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="22" x="-1.25" y="-5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="23" x="-0.75" y="-5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="24" x="-0.25" y="-5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="25" x="0.25" y="-5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="26" x="0.75" y="-5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="27" x="1.25" y="-5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="28" x="1.75" y="-5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="29" x="2.25" y="-5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="30" x="2.75" y="-5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="31" x="3.25" y="-5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="32" x="3.75" y="-5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="33" x="5.5626" y="-3.75" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="34" x="5.5626" y="-3.25" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="35" x="5.5626" y="-2.75" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="36" x="5.5626" y="-2.25" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="37" x="5.5626" y="-1.75" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="38" x="5.5626" y="-1.25" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="39" x="5.5626" y="-0.75" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="40" x="5.5626" y="-0.25" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="41" x="5.5626" y="0.25" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="42" x="5.5626" y="0.75" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="43" x="5.5626" y="1.25" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="44" x="5.5626" y="1.75" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="45" x="5.5626" y="2.25" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="46" x="5.5626" y="2.75" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="47" x="5.5626" y="3.25" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="48" x="5.5626" y="3.75" dx="0.2286" dy="1.1684" layer="1" rot="R270"/>
+<smd name="49" x="3.75" y="5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="50" x="3.25" y="5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="51" x="2.75" y="5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="52" x="2.25" y="5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="53" x="1.75" y="5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="54" x="1.25" y="5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="55" x="0.75" y="5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="56" x="0.25" y="5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="57" x="-0.25" y="5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="58" x="-0.75" y="5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="59" x="-1.25" y="5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="60" x="-1.75" y="5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="61" x="-2.25" y="5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="62" x="-2.75" y="5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="63" x="-3.25" y="5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<smd name="64" x="-3.75" y="5.5626" dx="0.2286" dy="1.1684" layer="1" rot="R180"/>
+<wire x1="-5.1308" y1="-5.1308" x2="-4.191" y2="-5.1308" width="0.1524" layer="21"/>
+<wire x1="5.1308" y1="-5.1308" x2="5.1308" y2="-4.191" width="0.1524" layer="21"/>
+<wire x1="5.1308" y1="5.1308" x2="4.191" y2="5.1308" width="0.1524" layer="21"/>
+<wire x1="-5.1308" y1="5.1308" x2="-5.1308" y2="4.191" width="0.1524" layer="21"/>
+<wire x1="-5.1308" y1="-4.191" x2="-5.1308" y2="-5.1308" width="0.1524" layer="21"/>
+<wire x1="4.191" y1="-5.1308" x2="5.1308" y2="-5.1308" width="0.1524" layer="21"/>
+<wire x1="5.1308" y1="4.191" x2="5.1308" y2="5.1308" width="0.1524" layer="21"/>
+<wire x1="-4.191" y1="5.1308" x2="-5.1308" y2="5.1308" width="0.1524" layer="21"/>
+<wire x1="3.6068" y1="5.0038" x2="3.8862" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="3.8862" y1="5.0038" x2="3.8862" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="3.8862" y1="5.9944" x2="3.6068" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="3.6068" y1="5.9944" x2="3.6068" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="3.0988" y1="5.0038" x2="3.3782" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="3.3782" y1="5.0038" x2="3.3782" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="3.3782" y1="5.9944" x2="3.0988" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="3.0988" y1="5.9944" x2="3.0988" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="2.6162" y1="5.0038" x2="2.8956" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="2.8956" y1="5.0038" x2="2.8956" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="2.8956" y1="5.9944" x2="2.6162" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="2.6162" y1="5.9944" x2="2.6162" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="2.1082" y1="5.0038" x2="2.3876" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="2.3876" y1="5.0038" x2="2.3876" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="2.3876" y1="5.9944" x2="2.1082" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="2.1082" y1="5.9944" x2="2.1082" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="1.6002" y1="5.0038" x2="1.8796" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="1.8796" y1="5.0038" x2="1.8796" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="1.8796" y1="5.9944" x2="1.6002" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="1.6002" y1="5.9944" x2="1.6002" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="1.1176" y1="5.0038" x2="1.397" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="1.397" y1="5.0038" x2="1.397" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="1.397" y1="5.9944" x2="1.1176" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="1.1176" y1="5.9944" x2="1.1176" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="0.6096" y1="5.0038" x2="0.889" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="0.889" y1="5.0038" x2="0.889" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="0.889" y1="5.9944" x2="0.6096" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="0.6096" y1="5.9944" x2="0.6096" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="0.1016" y1="5.0038" x2="0.381" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="0.381" y1="5.0038" x2="0.381" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="0.381" y1="5.9944" x2="0.1016" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="0.1016" y1="5.9944" x2="0.1016" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-0.381" y1="5.0038" x2="-0.1016" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-0.1016" y1="5.0038" x2="-0.1016" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="-0.1016" y1="5.9944" x2="-0.381" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="-0.381" y1="5.9944" x2="-0.381" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-0.889" y1="5.0038" x2="-0.6096" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-0.6096" y1="5.0038" x2="-0.6096" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="-0.6096" y1="5.9944" x2="-0.889" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="-0.889" y1="5.9944" x2="-0.889" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-1.397" y1="5.0038" x2="-1.1176" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-1.1176" y1="5.0038" x2="-1.1176" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="-1.1176" y1="5.9944" x2="-1.397" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="-1.397" y1="5.9944" x2="-1.397" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-1.8796" y1="5.0038" x2="-1.6002" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-1.6002" y1="5.0038" x2="-1.6002" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="-1.6002" y1="5.9944" x2="-1.8796" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="-1.8796" y1="5.9944" x2="-1.8796" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-2.3876" y1="5.0038" x2="-2.1082" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-2.1082" y1="5.0038" x2="-2.1082" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="-2.1082" y1="5.9944" x2="-2.3876" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="-2.3876" y1="5.9944" x2="-2.3876" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-2.8956" y1="5.0038" x2="-2.6162" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-2.6162" y1="5.0038" x2="-2.6162" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="-2.6162" y1="5.9944" x2="-2.8956" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="-2.8956" y1="5.9944" x2="-2.8956" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-3.3782" y1="5.0038" x2="-3.0988" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-3.0988" y1="5.0038" x2="-3.0988" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="-3.0988" y1="5.9944" x2="-3.3782" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="-3.3782" y1="5.9944" x2="-3.3782" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-3.8862" y1="5.0038" x2="-3.7338" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-3.7338" y1="5.0038" x2="-3.6068" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-3.6068" y1="5.0038" x2="-3.6068" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="-3.6068" y1="5.9944" x2="-3.8862" y2="5.9944" width="0.1524" layer="51"/>
+<wire x1="-3.8862" y1="5.9944" x2="-3.8862" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="3.6068" x2="-5.0038" y2="3.7338" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="3.7338" x2="-5.0038" y2="3.8862" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="3.8862" x2="-5.9944" y2="3.8862" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="3.8862" x2="-5.9944" y2="3.6068" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="3.6068" x2="-5.0038" y2="3.6068" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="3.0988" x2="-5.0038" y2="3.3782" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="3.3782" x2="-5.9944" y2="3.3782" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="3.3782" x2="-5.9944" y2="3.0988" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="3.0988" x2="-5.0038" y2="3.0988" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="2.6162" x2="-5.0038" y2="2.8956" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="2.8956" x2="-5.9944" y2="2.8956" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="2.8956" x2="-5.9944" y2="2.6162" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="2.6162" x2="-5.0038" y2="2.6162" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="2.1082" x2="-5.0038" y2="2.3876" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="2.3876" x2="-5.9944" y2="2.3876" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="2.3876" x2="-5.9944" y2="2.1082" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="2.1082" x2="-5.0038" y2="2.1082" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="1.6002" x2="-5.0038" y2="1.8796" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="1.8796" x2="-5.9944" y2="1.8796" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="1.8796" x2="-5.9944" y2="1.6002" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="1.6002" x2="-5.0038" y2="1.6002" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="1.1176" x2="-5.0038" y2="1.397" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="1.397" x2="-5.9944" y2="1.397" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="1.397" x2="-5.9944" y2="1.1176" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="1.1176" x2="-5.0038" y2="1.1176" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="0.6096" x2="-5.0038" y2="0.889" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="0.889" x2="-5.9944" y2="0.889" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="0.889" x2="-5.9944" y2="0.6096" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="0.6096" x2="-5.0038" y2="0.6096" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="0.1016" x2="-5.0038" y2="0.381" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="0.381" x2="-5.9944" y2="0.381" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="0.381" x2="-5.9944" y2="0.1016" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="0.1016" x2="-5.0038" y2="0.1016" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-0.381" x2="-5.0038" y2="-0.1016" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-0.1016" x2="-5.9944" y2="-0.1016" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="-0.1016" x2="-5.9944" y2="-0.381" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="-0.381" x2="-5.0038" y2="-0.381" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-0.889" x2="-5.0038" y2="-0.6096" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-0.6096" x2="-5.9944" y2="-0.6096" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="-0.6096" x2="-5.9944" y2="-0.889" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="-0.889" x2="-5.0038" y2="-0.889" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-1.397" x2="-5.0038" y2="-1.1176" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-1.1176" x2="-5.9944" y2="-1.1176" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="-1.1176" x2="-5.9944" y2="-1.397" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="-1.397" x2="-5.0038" y2="-1.397" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-1.8796" x2="-5.0038" y2="-1.6002" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-1.6002" x2="-5.9944" y2="-1.6002" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="-1.6002" x2="-5.9944" y2="-1.8796" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="-1.8796" x2="-5.0038" y2="-1.8796" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-2.3876" x2="-5.0038" y2="-2.1082" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-2.1082" x2="-5.9944" y2="-2.1082" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="-2.1082" x2="-5.9944" y2="-2.3876" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="-2.3876" x2="-5.0038" y2="-2.3876" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-2.8956" x2="-5.0038" y2="-2.6162" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-2.6162" x2="-5.9944" y2="-2.6162" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="-2.6162" x2="-5.9944" y2="-2.8956" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="-2.8956" x2="-5.0038" y2="-2.8956" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-3.3782" x2="-5.0038" y2="-3.0988" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-3.0988" x2="-5.9944" y2="-3.0988" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="-3.0988" x2="-5.9944" y2="-3.3782" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="-3.3782" x2="-5.0038" y2="-3.3782" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-3.8862" x2="-5.0038" y2="-3.6068" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-3.6068" x2="-5.9944" y2="-3.6068" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="-3.6068" x2="-5.9944" y2="-3.8862" width="0.1524" layer="51"/>
+<wire x1="-5.9944" y1="-3.8862" x2="-5.0038" y2="-3.8862" width="0.1524" layer="51"/>
+<wire x1="-3.6068" y1="-5.0038" x2="-3.8862" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="-3.8862" y1="-5.0038" x2="-3.8862" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="-3.8862" y1="-5.9944" x2="-3.6068" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="-3.6068" y1="-5.9944" x2="-3.6068" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="-3.0988" y1="-5.0038" x2="-3.3782" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="-3.3782" y1="-5.0038" x2="-3.3782" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="-3.3782" y1="-5.9944" x2="-3.0988" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="-3.0988" y1="-5.9944" x2="-3.0988" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="-2.6162" y1="-5.0038" x2="-2.8956" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="-2.8956" y1="-5.0038" x2="-2.8956" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="-2.8956" y1="-5.9944" x2="-2.6162" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="-2.6162" y1="-5.9944" x2="-2.6162" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="-2.1082" y1="-5.0038" x2="-2.3876" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="-2.3876" y1="-5.0038" x2="-2.3876" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="-2.3876" y1="-5.9944" x2="-2.1082" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="-2.1082" y1="-5.9944" x2="-2.1082" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="-1.6002" y1="-5.0038" x2="-1.8796" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="-1.8796" y1="-5.0038" x2="-1.8796" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="-1.8796" y1="-5.9944" x2="-1.6002" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="-1.6002" y1="-5.9944" x2="-1.6002" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="-1.1176" y1="-5.0038" x2="-1.397" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="-1.397" y1="-5.0038" x2="-1.397" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="-1.397" y1="-5.9944" x2="-1.1176" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="-1.1176" y1="-5.9944" x2="-1.1176" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="-0.6096" y1="-5.0038" x2="-0.889" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="-0.889" y1="-5.0038" x2="-0.889" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="-0.889" y1="-5.9944" x2="-0.6096" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="-0.6096" y1="-5.9944" x2="-0.6096" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="-0.1016" y1="-5.0038" x2="-0.381" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="-0.381" y1="-5.0038" x2="-0.381" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="-0.381" y1="-5.9944" x2="-0.1016" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="-0.1016" y1="-5.9944" x2="-0.1016" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="0.381" y1="-5.0038" x2="0.1016" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="0.1016" y1="-5.0038" x2="0.1016" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="0.1016" y1="-5.9944" x2="0.381" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="0.381" y1="-5.9944" x2="0.381" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="0.889" y1="-5.0038" x2="0.6096" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="0.6096" y1="-5.0038" x2="0.6096" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="0.6096" y1="-5.9944" x2="0.889" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="0.889" y1="-5.9944" x2="0.889" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="1.397" y1="-5.0038" x2="1.1176" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="1.1176" y1="-5.0038" x2="1.1176" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="1.1176" y1="-5.9944" x2="1.397" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="1.397" y1="-5.9944" x2="1.397" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="1.8796" y1="-5.0038" x2="1.6002" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="1.6002" y1="-5.0038" x2="1.6002" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="1.6002" y1="-5.9944" x2="1.8796" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="1.8796" y1="-5.9944" x2="1.8796" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="2.3876" y1="-5.0038" x2="2.1082" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="2.1082" y1="-5.0038" x2="2.1082" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="2.1082" y1="-5.9944" x2="2.3876" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="2.3876" y1="-5.9944" x2="2.3876" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="2.8956" y1="-5.0038" x2="2.6162" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="2.6162" y1="-5.0038" x2="2.6162" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="2.6162" y1="-5.9944" x2="2.8956" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="2.8956" y1="-5.9944" x2="2.8956" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="3.3782" y1="-5.0038" x2="3.0988" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="3.0988" y1="-5.0038" x2="3.0988" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="3.0988" y1="-5.9944" x2="3.3782" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="3.3782" y1="-5.9944" x2="3.3782" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="3.8862" y1="-5.0038" x2="3.6068" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="3.6068" y1="-5.0038" x2="3.6068" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="3.6068" y1="-5.9944" x2="3.8862" y2="-5.9944" width="0.1524" layer="51"/>
+<wire x1="3.8862" y1="-5.9944" x2="3.8862" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-3.6068" x2="5.0038" y2="-3.8862" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-3.8862" x2="5.9944" y2="-3.8862" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="-3.8862" x2="5.9944" y2="-3.6068" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="-3.6068" x2="5.0038" y2="-3.6068" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-3.0988" x2="5.0038" y2="-3.3782" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-3.3782" x2="5.9944" y2="-3.3782" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="-3.3782" x2="5.9944" y2="-3.0988" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="-3.0988" x2="5.0038" y2="-3.0988" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-2.6162" x2="5.0038" y2="-2.8956" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-2.8956" x2="5.9944" y2="-2.8956" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="-2.8956" x2="5.9944" y2="-2.6162" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="-2.6162" x2="5.0038" y2="-2.6162" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-2.1082" x2="5.0038" y2="-2.3876" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-2.3876" x2="5.9944" y2="-2.3876" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="-2.3876" x2="5.9944" y2="-2.1082" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="-2.1082" x2="5.0038" y2="-2.1082" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-1.6002" x2="5.0038" y2="-1.8796" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-1.8796" x2="5.9944" y2="-1.8796" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="-1.8796" x2="5.9944" y2="-1.6002" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="-1.6002" x2="5.0038" y2="-1.6002" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-1.1176" x2="5.0038" y2="-1.397" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-1.397" x2="5.9944" y2="-1.397" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="-1.397" x2="5.9944" y2="-1.1176" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="-1.1176" x2="5.0038" y2="-1.1176" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-0.6096" x2="5.0038" y2="-0.889" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-0.889" x2="5.9944" y2="-0.889" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="-0.889" x2="5.9944" y2="-0.6096" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="-0.6096" x2="5.0038" y2="-0.6096" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-0.1016" x2="5.0038" y2="-0.381" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-0.381" x2="5.9944" y2="-0.381" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="-0.381" x2="5.9944" y2="-0.1016" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="-0.1016" x2="5.0038" y2="-0.1016" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="0.381" x2="5.0038" y2="0.1016" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="0.1016" x2="5.9944" y2="0.1016" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="0.1016" x2="5.9944" y2="0.381" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="0.381" x2="5.0038" y2="0.381" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="0.889" x2="5.0038" y2="0.6096" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="0.6096" x2="5.9944" y2="0.6096" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="0.6096" x2="5.9944" y2="0.889" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="0.889" x2="5.0038" y2="0.889" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="1.397" x2="5.0038" y2="1.1176" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="1.1176" x2="5.9944" y2="1.1176" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="1.1176" x2="5.9944" y2="1.397" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="1.397" x2="5.0038" y2="1.397" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="1.8796" x2="5.0038" y2="1.6002" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="1.6002" x2="5.9944" y2="1.6002" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="1.6002" x2="5.9944" y2="1.8796" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="1.8796" x2="5.0038" y2="1.8796" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="2.3876" x2="5.0038" y2="2.1082" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="2.1082" x2="5.9944" y2="2.1082" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="2.1082" x2="5.9944" y2="2.3876" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="2.3876" x2="5.0038" y2="2.3876" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="2.8956" x2="5.0038" y2="2.6162" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="2.6162" x2="5.9944" y2="2.6162" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="2.6162" x2="5.9944" y2="2.8956" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="2.8956" x2="5.0038" y2="2.8956" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="3.3782" x2="5.0038" y2="3.0988" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="3.0988" x2="5.9944" y2="3.0988" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="3.0988" x2="5.9944" y2="3.3782" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="3.3782" x2="5.0038" y2="3.3782" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="3.8862" x2="5.0038" y2="3.6068" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="3.6068" x2="5.9944" y2="3.6068" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="3.6068" x2="5.9944" y2="3.8862" width="0.1524" layer="51"/>
+<wire x1="5.9944" y1="3.8862" x2="5.0038" y2="3.8862" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="3.7338" x2="-3.7338" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="-5.0038" x2="5.0038" y2="-5.0038" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="-5.0038" x2="5.0038" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="5.0038" y1="5.0038" x2="-5.0038" y2="5.0038" width="0.1524" layer="51"/>
+<wire x1="-5.0038" y1="5.0038" x2="-5.0038" y2="-5.0038" width="0.1524" layer="51"/>
+<text x="0" y="7.366" size="1.27" layer="25" font="vector" ratio="18" rot="SR0" align="center">&gt;Name</text>
+<text x="0" y="-7.112" size="1.27" layer="27" font="vector" ratio="18" rot="SR0" align="center">&gt;Value</text>
+<circle x="-6" y="6" radius="0.149575" width="0.5" layer="21"/>
+</package>
+</packages>
+<symbols>
+<symbol name="ATSAML22J18A-AUT">
+<wire x1="-45.72" y1="40.64" x2="-45.72" y2="-40.64" width="0.1524" layer="94"/>
+<wire x1="-45.72" y1="-40.64" x2="45.72" y2="-40.64" width="0.1524" layer="94"/>
+<wire x1="45.72" y1="-40.64" x2="45.72" y2="40.64" width="0.1524" layer="94"/>
+<wire x1="45.72" y1="40.64" x2="-45.72" y2="40.64" width="0.1524" layer="94"/>
+<pin name="!RESET" x="-50.8" y="-35.56" length="middle"/>
+<pin name="PA00/XIN32/EXTINT[0]/SERCOM1.0" x="50.8" y="35.56" length="middle" rot="R180"/>
+<pin name="PA01/XOUT32/EXTINT[1]/SERCOM1.1" x="50.8" y="33.02" length="middle" rot="R180"/>
+<pin name="PA02/I2/AIN0" x="50.8" y="30.48" length="middle" rot="R180"/>
+<pin name="PA03/I3/AIN1" x="50.8" y="27.94" length="middle" rot="R180"/>
+<pin name="PA04/I4/AIN4/SERCOM0.0/SLCD[4]" x="50.8" y="25.4" length="middle" rot="R180"/>
+<pin name="PA05/I5/AIN5/SERCOM0.1/SLCD[5]" x="50.8" y="22.86" length="middle" rot="R180"/>
+<pin name="PA06/I6/AIN6/SERCOM0.2/SLCD[6]" x="50.8" y="20.32" length="middle" rot="R180"/>
+<pin name="PA07/I7/AIN7/SERCOM0.3/SLCD[7]" x="50.8" y="17.78" length="middle" rot="R180"/>
+<pin name="PA08/NMI/SERCOM0.0/SLCD[11]" x="50.8" y="15.24" length="middle" rot="R180"/>
+<pin name="PA09/I9/SERCOM0.1/SLCD[12]" x="50.8" y="12.7" length="middle" rot="R180"/>
+<pin name="PA10/I10/SERCOM0.2/SLCD[13]" x="50.8" y="10.16" length="middle" rot="R180"/>
+<pin name="PA11/I11/SERCOM0.3/SLCD[14]" x="50.8" y="7.62" length="middle" rot="R180"/>
+<pin name="PA12/I12/SERCOM3.0(I2C)/SLCD[28]" x="50.8" y="5.08" length="middle" rot="R180"/>
+<pin name="PA13/I13/SERCOM3.1(I2C)/SLCD[29]" x="50.8" y="2.54" length="middle" rot="R180"/>
+<pin name="PA14/I14/SERCOM3.2/SLCD[30]" x="50.8" y="0" length="middle" rot="R180"/>
+<pin name="PA15/I15/SERCOM3.3/SLCD[31]" x="50.8" y="-2.54" length="middle" rot="R180"/>
+<pin name="PA16/I0/SERCOM1+2.0/SLCD[32]" x="50.8" y="-5.08" length="middle" rot="R180"/>
+<pin name="PA17/I1/SERCOM1+2.1/SLCD[33]" x="50.8" y="-7.62" length="middle" rot="R180"/>
+<pin name="PA18/I2/SERCOM1+2.2/SLCD[34]" x="50.8" y="-10.16" length="middle" rot="R180"/>
+<pin name="PA19/I3/SERCOM1+2.3/SLCD[35]" x="50.8" y="-12.7" length="middle" rot="R180"/>
+<pin name="PA20/I4/SERCOM0.0+2.2/SLCD[48]" x="50.8" y="-15.24" length="middle" rot="R180"/>
+<pin name="PA21/I5/SERCOM0.1+2.3/SLCD[49]" x="50.8" y="-17.78" length="middle" rot="R180"/>
+<pin name="PA22/I6/SERCOM0.2+2.0(I2C)/SLCD[50]" x="50.8" y="-20.32" length="middle" rot="R180"/>
+<pin name="PA23/I7/SERCOM0.3+2.1(I2C)/SLCD[51]" x="50.8" y="-22.86" length="middle" rot="R180"/>
+<pin name="PA24/I12/SERCOM2.2/USB-" x="50.8" y="-25.4" length="middle" rot="R180"/>
+<pin name="PA25/I13/SERCOM2.3/USB+" x="50.8" y="-27.94" length="middle" rot="R180"/>
+<pin name="PA27/I15" x="50.8" y="-30.48" length="middle" rot="R180"/>
+<pin name="PA30/I10/SERCOM1.2/SWCLK" x="50.8" y="-33.02" length="middle" rot="R180"/>
+<pin name="PA31/I11/SERCOM1.3/SWDIO" x="50.8" y="-35.56" length="middle" rot="R180"/>
+<pin name="PB00/I0/AIN8/SERCOM3.2" x="-50.8" y="-7.62" length="middle"/>
+<pin name="PB01/I1/AIN9/SERCOM3.3" x="-50.8" y="-10.16" length="middle"/>
+<pin name="PB02/I2/AIN10/SERCOM3.0" x="-50.8" y="-12.7" length="middle"/>
+<pin name="PB03/I3/AIN11/SERCOM3.1" x="-50.8" y="-15.24" length="middle"/>
+<pin name="PB04/I4/AIN12" x="-50.8" y="35.56" length="middle"/>
+<pin name="PB05/I5/AIN13" x="-50.8" y="33.02" length="middle"/>
+<pin name="PB06/I6/AIN14/SLCD[0]" x="-50.8" y="30.48" length="middle"/>
+<pin name="PB07/I7/AIN15/SLCD[1]" x="-50.8" y="27.94" length="middle"/>
+<pin name="PB08/I8/AIN2/SERCOM3.0/SLCD[2]" x="-50.8" y="25.4" length="middle"/>
+<pin name="PB09/I9/AIN3/SERCOM3.1/SLCD[3]" x="-50.8" y="22.86" length="middle"/>
+<pin name="PB11/I11/SERCOM3.3/SLCD[21]" x="-50.8" y="20.32" length="middle"/>
+<pin name="PB12/I12/SERCOM3.0/SLCD[22]" x="-50.8" y="17.78" length="middle"/>
+<pin name="PB13/SERCOM3.1/SLCD[23]" x="-50.8" y="15.24" length="middle"/>
+<pin name="PB14/I14/SERCOM3.2/SLCD[24]" x="-50.8" y="12.7" length="middle"/>
+<pin name="PB15/I15/SERCOM3.3/SLCD[25]" x="-50.8" y="10.16" length="middle"/>
+<pin name="PB16/I0/SLCD[42]" x="-50.8" y="7.62" length="middle"/>
+<pin name="PB17/I1/SLCD[43]" x="-50.8" y="5.08" length="middle"/>
+<pin name="PB22/I6/SERCOM0.2" x="-50.8" y="2.54" length="middle"/>
+<pin name="PB23/I7/SERCOM0.3" x="-50.8" y="0" length="middle"/>
+<pin name="PB30/I14/SERCOM1.0" x="-50.8" y="-2.54" length="middle"/>
+<pin name="PB31/I15/SERCOM1.1" x="-50.8" y="-5.08" length="middle"/>
+<text x="-4.7244" y="44.6786" size="2.0828" layer="95" ratio="6" rot="SR0">&gt;Name</text>
+<text x="-5.3594" y="42.1386" size="2.0828" layer="96" ratio="6" rot="SR0">&gt;Value</text>
+</symbol>
+<symbol name="ATSAML22J18A-AUT_A">
+<wire x1="-12.7" y1="20.32" x2="-12.7" y2="-20.32" width="0.1524" layer="94"/>
+<wire x1="-12.7" y1="-20.32" x2="12.7" y2="-20.32" width="0.1524" layer="94"/>
+<wire x1="12.7" y1="-20.32" x2="12.7" y2="20.32" width="0.1524" layer="94"/>
+<wire x1="12.7" y1="20.32" x2="-12.7" y2="20.32" width="0.1524" layer="94"/>
+<pin name="GND" x="17.78" y="12.7" length="middle" direction="pas" rot="R180"/>
+<pin name="GNDANA" x="17.78" y="0" length="middle" direction="pas" rot="R180"/>
+<pin name="GND_1" x="17.78" y="10.16" length="middle" direction="pas" rot="R180"/>
+<pin name="GND_2" x="17.78" y="7.62" length="middle" direction="pas" rot="R180"/>
+<pin name="GND_3" x="17.78" y="5.08" length="middle" direction="pas" rot="R180"/>
+<pin name="VDDANA" x="-17.78" y="0" length="middle" direction="pwr"/>
+<pin name="VDDCORE" x="-17.78" y="-10.16" length="middle" direction="pwr"/>
+<pin name="VDDIO" x="-17.78" y="12.7" length="middle" direction="pwr"/>
+<pin name="VDDIO_1" x="-17.78" y="10.16" length="middle" direction="pwr"/>
+<pin name="VDDIO_2" x="-17.78" y="7.62" length="middle" direction="pwr"/>
+<pin name="VDDIO_3" x="-17.78" y="5.08" length="middle" direction="pwr"/>
+<pin name="VDDOUT" x="-17.78" y="-5.08" length="middle" direction="out"/>
+<pin name="VLCD" x="-17.78" y="-15.24" length="middle" direction="pas"/>
+<text x="-5.3594" y="16.7386" size="2.0828" layer="97" ratio="6" rot="SR0">2 of 2</text>
+<text x="-4.7244" y="24.3586" size="2.0828" layer="95" ratio="6" rot="SR0">&gt;Name</text>
+<text x="-5.3594" y="21.8186" size="2.0828" layer="96" ratio="6" rot="SR0">&gt;Value</text>
+</symbol>
+</symbols>
+<devicesets>
+<deviceset name="ATSAML22J18A-AUT">
+<gates>
+<gate name="A" symbol="ATSAML22J18A-AUT" x="-33.02" y="0"/>
+<gate name="B" symbol="ATSAML22J18A-AUT_A" x="48.26" y="20.32"/>
+</gates>
+<devices>
+<device name="" package="TQFP64_10X10MC_MCH-L">
+<connects>
+<connect gate="A" pin="!RESET" pad="52"/>
+<connect gate="A" pin="PA00/XIN32/EXTINT[0]/SERCOM1.0" pad="1"/>
+<connect gate="A" pin="PA01/XOUT32/EXTINT[1]/SERCOM1.1" pad="2"/>
+<connect gate="A" pin="PA02/I2/AIN0" pad="3"/>
+<connect gate="A" pin="PA03/I3/AIN1" pad="4"/>
+<connect gate="A" pin="PA04/I4/AIN4/SERCOM0.0/SLCD[4]" pad="13"/>
+<connect gate="A" pin="PA05/I5/AIN5/SERCOM0.1/SLCD[5]" pad="14"/>
+<connect gate="A" pin="PA06/I6/AIN6/SERCOM0.2/SLCD[6]" pad="15"/>
+<connect gate="A" pin="PA07/I7/AIN7/SERCOM0.3/SLCD[7]" pad="16"/>
+<connect gate="A" pin="PA08/NMI/SERCOM0.0/SLCD[11]" pad="17"/>
+<connect gate="A" pin="PA09/I9/SERCOM0.1/SLCD[12]" pad="18"/>
+<connect gate="A" pin="PA10/I10/SERCOM0.2/SLCD[13]" pad="19"/>
+<connect gate="A" pin="PA11/I11/SERCOM0.3/SLCD[14]" pad="20"/>
+<connect gate="A" pin="PA12/I12/SERCOM3.0(I2C)/SLCD[28]" pad="29"/>
+<connect gate="A" pin="PA13/I13/SERCOM3.1(I2C)/SLCD[29]" pad="30"/>
+<connect gate="A" pin="PA14/I14/SERCOM3.2/SLCD[30]" pad="31"/>
+<connect gate="A" pin="PA15/I15/SERCOM3.3/SLCD[31]" pad="32"/>
+<connect gate="A" pin="PA16/I0/SERCOM1+2.0/SLCD[32]" pad="35"/>
+<connect gate="A" pin="PA17/I1/SERCOM1+2.1/SLCD[33]" pad="36"/>
+<connect gate="A" pin="PA18/I2/SERCOM1+2.2/SLCD[34]" pad="37"/>
+<connect gate="A" pin="PA19/I3/SERCOM1+2.3/SLCD[35]" pad="38"/>
+<connect gate="A" pin="PA20/I4/SERCOM0.0+2.2/SLCD[48]" pad="41"/>
+<connect gate="A" pin="PA21/I5/SERCOM0.1+2.3/SLCD[49]" pad="42"/>
+<connect gate="A" pin="PA22/I6/SERCOM0.2+2.0(I2C)/SLCD[50]" pad="43"/>
+<connect gate="A" pin="PA23/I7/SERCOM0.3+2.1(I2C)/SLCD[51]" pad="44"/>
+<connect gate="A" pin="PA24/I12/SERCOM2.2/USB-" pad="45"/>
+<connect gate="A" pin="PA25/I13/SERCOM2.3/USB+" pad="46"/>
+<connect gate="A" pin="PA27/I15" pad="51"/>
+<connect gate="A" pin="PA30/I10/SERCOM1.2/SWCLK" pad="57"/>
+<connect gate="A" pin="PA31/I11/SERCOM1.3/SWDIO" pad="58"/>
+<connect gate="A" pin="PB00/I0/AIN8/SERCOM3.2" pad="61"/>
+<connect gate="A" pin="PB01/I1/AIN9/SERCOM3.3" pad="62"/>
+<connect gate="A" pin="PB02/I2/AIN10/SERCOM3.0" pad="63"/>
+<connect gate="A" pin="PB03/I3/AIN11/SERCOM3.1" pad="64"/>
+<connect gate="A" pin="PB04/I4/AIN12" pad="5"/>
+<connect gate="A" pin="PB05/I5/AIN13" pad="6"/>
+<connect gate="A" pin="PB06/I6/AIN14/SLCD[0]" pad="9"/>
+<connect gate="A" pin="PB07/I7/AIN15/SLCD[1]" pad="10"/>
+<connect gate="A" pin="PB08/I8/AIN2/SERCOM3.0/SLCD[2]" pad="11"/>
+<connect gate="A" pin="PB09/I9/AIN3/SERCOM3.1/SLCD[3]" pad="12"/>
+<connect gate="A" pin="PB11/I11/SERCOM3.3/SLCD[21]" pad="24"/>
+<connect gate="A" pin="PB12/I12/SERCOM3.0/SLCD[22]" pad="25"/>
+<connect gate="A" pin="PB13/SERCOM3.1/SLCD[23]" pad="26"/>
+<connect gate="A" pin="PB14/I14/SERCOM3.2/SLCD[24]" pad="27"/>
+<connect gate="A" pin="PB15/I15/SERCOM3.3/SLCD[25]" pad="28"/>
+<connect gate="A" pin="PB16/I0/SLCD[42]" pad="39"/>
+<connect gate="A" pin="PB17/I1/SLCD[43]" pad="40"/>
+<connect gate="A" pin="PB22/I6/SERCOM0.2" pad="49"/>
+<connect gate="A" pin="PB23/I7/SERCOM0.3" pad="50"/>
+<connect gate="A" pin="PB30/I14/SERCOM1.0" pad="59"/>
+<connect gate="A" pin="PB31/I15/SERCOM1.1" pad="60"/>
+<connect gate="B" pin="GND" pad="22"/>
+<connect gate="B" pin="GNDANA" pad="7"/>
+<connect gate="B" pin="GND_1" pad="33"/>
+<connect gate="B" pin="GND_2" pad="47"/>
+<connect gate="B" pin="GND_3" pad="54"/>
+<connect gate="B" pin="VDDANA" pad="8"/>
+<connect gate="B" pin="VDDCORE" pad="53"/>
+<connect gate="B" pin="VDDIO" pad="21"/>
+<connect gate="B" pin="VDDIO_1" pad="34"/>
+<connect gate="B" pin="VDDIO_2" pad="48"/>
+<connect gate="B" pin="VDDIO_3" pad="56"/>
+<connect gate="B" pin="VDDOUT" pad="55"/>
+<connect gate="B" pin="VLCD" pad="23"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+</devicesets>
+</library>
+<library name="USB4085-GF-A_REVA">
+<packages>
+<package name="GCT_USB4085-GF-A_REVA">
+<text x="-4.2729" y="5.88031875" size="1.270190625" layer="25" ratio="13" rot="SR0">&gt;NAME</text>
+<text x="-4.171540625" y="-6.4739" size="1.271959375" layer="27" ratio="13" rot="SR0">&gt;VALUE</text>
+<wire x1="4.025" y1="3.795" x2="4.325" y2="4.095" width="0.001" layer="46" curve="-90"/>
+<wire x1="4.325" y1="4.095" x2="4.625" y2="3.795" width="0.001" layer="46" curve="-90"/>
+<wire x1="4.625" y1="3.795" x2="4.625" y2="2.295" width="0.001" layer="46"/>
+<wire x1="4.625" y1="2.295" x2="4.325" y2="1.995" width="0.001" layer="46" curve="-90"/>
+<wire x1="4.325" y1="1.995" x2="4.025" y2="2.295" width="0.001" layer="46" curve="-90"/>
+<wire x1="4.025" y1="2.295" x2="4.025" y2="3.795" width="0.001" layer="46"/>
+<wire x1="-4.625" y1="3.795" x2="-4.325" y2="4.095" width="0.001" layer="46" curve="-90"/>
+<wire x1="-4.325" y1="4.095" x2="-4.025" y2="3.795" width="0.001" layer="46" curve="-90"/>
+<wire x1="-4.025" y1="3.795" x2="-4.025" y2="2.295" width="0.001" layer="46"/>
+<wire x1="-4.025" y1="2.295" x2="-4.325" y2="1.995" width="0.001" layer="46" curve="-90"/>
+<wire x1="-4.325" y1="1.995" x2="-4.625" y2="2.295" width="0.001" layer="46" curve="-90"/>
+<wire x1="-4.625" y1="2.295" x2="-4.625" y2="3.795" width="0.001" layer="46"/>
+<wire x1="4.025" y1="0.065" x2="4.325" y2="0.365" width="0.001" layer="46" curve="-90"/>
+<wire x1="4.325" y1="0.365" x2="4.625" y2="0.065" width="0.001" layer="46" curve="-90"/>
+<wire x1="4.625" y1="0.065" x2="4.625" y2="-0.735" width="0.001" layer="46"/>
+<wire x1="4.625" y1="-0.735" x2="4.325" y2="-1.035" width="0.001" layer="46" curve="-90"/>
+<wire x1="4.325" y1="-1.035" x2="4.025" y2="-0.735" width="0.001" layer="46" curve="-90"/>
+<wire x1="4.025" y1="-0.735" x2="4.025" y2="0.065" width="0.001" layer="46"/>
+<wire x1="-4.625" y1="0.065" x2="-4.325" y2="0.365" width="0.001" layer="46" curve="-90"/>
+<wire x1="-4.325" y1="0.365" x2="-4.025" y2="0.065" width="0.001" layer="46" curve="-90"/>
+<wire x1="-4.025" y1="0.065" x2="-4.025" y2="-0.735" width="0.001" layer="46"/>
+<wire x1="-4.025" y1="-0.735" x2="-4.325" y2="-1.035" width="0.001" layer="46" curve="-90"/>
+<wire x1="-4.325" y1="-1.035" x2="-4.625" y2="-0.735" width="0.001" layer="46" curve="-90"/>
+<wire x1="-4.625" y1="-0.735" x2="-4.625" y2="0.065" width="0.001" layer="46"/>
+<wire x1="-5.3" y1="-2.075" x2="5.9" y2="-2.075" width="0.127" layer="51"/>
+<text x="5.70338125" y="-2.07623125" size="1.0166" layer="51">&gt;PCB Edge</text>
+<wire x1="-4.475" y1="4.585" x2="4.475" y2="4.585" width="0.1" layer="51"/>
+<wire x1="4.475" y1="4.585" x2="4.475" y2="-4.585" width="0.1" layer="51"/>
+<wire x1="4.475" y1="-4.585" x2="-4.475" y2="-4.585" width="0.1" layer="51"/>
+<wire x1="-4.475" y1="-4.585" x2="-4.475" y2="4.585" width="0.1" layer="51"/>
+<wire x1="-4.475" y1="4.585" x2="4.475" y2="4.585" width="0.2" layer="21"/>
+<wire x1="-4.475" y1="-1.725" x2="-4.475" y2="-2.075" width="0.2" layer="21"/>
+<wire x1="-4.475" y1="-2.075" x2="4.475" y2="-2.075" width="0.2" layer="21"/>
+<wire x1="4.475" y1="-2.075" x2="4.475" y2="-1.725" width="0.2" layer="21"/>
+<wire x1="-5.1" y1="4.825" x2="5.15" y2="4.825" width="0.05" layer="39"/>
+<wire x1="5.15" y1="4.825" x2="5.15" y2="-4.825" width="0.05" layer="39"/>
+<wire x1="5.15" y1="-4.825" x2="-5.1" y2="-4.825" width="0.05" layer="39"/>
+<wire x1="-5.1" y1="-4.825" x2="-5.1" y2="4.825" width="0.05" layer="39"/>
+<pad name="A1" x="-2.975" y="4.025" drill="0.4" diameter="0.65"/>
+<pad name="A4" x="-2.125" y="4.025" drill="0.4" diameter="0.65"/>
+<pad name="A5" x="-1.275" y="4.025" drill="0.4" diameter="0.65"/>
+<pad name="A6" x="-0.425" y="4.025" drill="0.4" diameter="0.65"/>
+<pad name="A7" x="0.425" y="4.025" drill="0.4" diameter="0.65"/>
+<pad name="A8" x="1.275" y="4.025" drill="0.4" diameter="0.65"/>
+<pad name="A9" x="2.125" y="4.025" drill="0.4" diameter="0.65"/>
+<pad name="A12" x="2.975" y="4.025" drill="0.4" diameter="0.65"/>
+<pad name="B1" x="2.975" y="2.675" drill="0.4" diameter="0.65" rot="R180"/>
+<pad name="B4" x="2.125" y="2.675" drill="0.4" diameter="0.65" rot="R180"/>
+<pad name="B5" x="1.275" y="2.675" drill="0.4" diameter="0.65" rot="R180"/>
+<pad name="B6" x="0.425" y="2.675" drill="0.4" diameter="0.65" rot="R180"/>
+<pad name="B7" x="-0.425" y="2.675" drill="0.4" diameter="0.65" rot="R180"/>
+<pad name="B8" x="-1.275" y="2.675" drill="0.4" diameter="0.65" rot="R180"/>
+<pad name="B9" x="-2.125" y="2.675" drill="0.4" diameter="0.65" rot="R180"/>
+<pad name="B12" x="-2.975" y="2.675" drill="0.4" diameter="0.65" rot="R180"/>
+<pad name="P1" x="-4.325" y="3.045" drill="0.6" diameter="1.108" shape="long" rot="R90"/>
+<pad name="P2" x="4.325" y="3.045" drill="0.6" diameter="1.108" shape="long" rot="R90"/>
+<pad name="P3" x="4.325" y="-0.335" drill="0.6" diameter="1.108" shape="long" rot="R90"/>
+<pad name="P4" x="-4.325" y="-0.335" drill="0.6" diameter="1.108" shape="long" rot="R90"/>
+</package>
+</packages>
+<symbols>
+<symbol name="USB4085-GF-A_REVA">
+<wire x1="-12.7" y1="12.7" x2="12.7" y2="12.7" width="0.254" layer="94"/>
+<wire x1="12.7" y1="12.7" x2="12.7" y2="-10.16" width="0.254" layer="94"/>
+<wire x1="12.7" y1="-10.16" x2="-12.7" y2="-10.16" width="0.254" layer="94"/>
+<wire x1="-12.7" y1="-10.16" x2="-12.7" y2="12.7" width="0.254" layer="94"/>
+<text x="-12.722359375" y="13.2316" size="1.77888125" layer="95">&gt;NAME</text>
+<text x="-12.728490625" y="-12.7535" size="1.780909375" layer="96">&gt;VALUE</text>
+<pin name="VBUS" x="15.24" y="10.16" visible="pin" length="short" direction="pwr" rot="R180"/>
+<pin name="CC1" x="-15.24" y="5.08" visible="pin" length="short"/>
+<pin name="CC2" x="15.24" y="5.08" visible="pin" length="short" rot="R180"/>
+<pin name="DP1" x="15.24" y="0" visible="pin" length="short" rot="R180"/>
+<pin name="DP2" x="15.24" y="2.54" visible="pin" length="short" rot="R180"/>
+<pin name="DN1" x="-15.24" y="2.54" visible="pin" length="short"/>
+<pin name="DN2" x="-15.24" y="0" visible="pin" length="short"/>
+<pin name="SBU1" x="-15.24" y="-2.54" visible="pin" length="short"/>
+<pin name="SBU2" x="15.24" y="-2.54" visible="pin" length="short" rot="R180"/>
+<pin name="GND" x="15.24" y="-7.62" visible="pin" length="short" direction="pas" rot="R180"/>
+<pin name="SHIELD" x="-15.24" y="-7.62" visible="pin" length="short" direction="pas"/>
+</symbol>
+</symbols>
+<devicesets>
+<deviceset name="USB4085-GF-A_REVA" prefix="J">
+<description>USB 2.0 Type C Receptacle Dip Type, PCB Top Mount </description>
+<gates>
+<gate name="G$1" symbol="USB4085-GF-A_REVA" x="0" y="0"/>
+</gates>
+<devices>
+<device name="" package="GCT_USB4085-GF-A_REVA">
+<connects>
+<connect gate="G$1" pin="CC1" pad="A5"/>
+<connect gate="G$1" pin="CC2" pad="B5"/>
+<connect gate="G$1" pin="DN1" pad="A7"/>
+<connect gate="G$1" pin="DN2" pad="B7"/>
+<connect gate="G$1" pin="DP1" pad="A6"/>
+<connect gate="G$1" pin="DP2" pad="B6"/>
+<connect gate="G$1" pin="GND" pad="A1 A12 B1 B12"/>
+<connect gate="G$1" pin="SBU1" pad="A8"/>
+<connect gate="G$1" pin="SBU2" pad="B8"/>
+<connect gate="G$1" pin="SHIELD" pad="P1 P2 P3 P4"/>
+<connect gate="G$1" pin="VBUS" pad="A4 A9 B4 B9"/>
+</connects>
+<technologies>
+<technology name="">
+<attribute name="DESCRIPTION" value=" USB-C (USB TYPE-C) USB 2.0 Receptacle Connector 24 (16+8 Dummy) Position Through Hole, Right Angle, low cost, 3.46mm profile, 16 pin, horizontal, Top mount "/>
+<attribute name="DIGI-KEY_PART_NUMBER" value="2073-USB4085-GF-ACT-ND"/>
+<attribute name="MF" value="Global Connector Technology"/>
+<attribute name="MP" value="USB4085-GF-A"/>
+<attribute name="PACKAGE" value="Package "/>
+<attribute name="PURCHASE-URL" value="https://pricing.snapeda.com/search/part/USB4085-GF-A/?ref=eda"/>
+</technology>
+</technologies>
+</device>
+</devices>
+</deviceset>
+</devicesets>
+</library>
+</libraries>
+<attributes>
+<attribute name="COMPANY" value="ADAFRUIT INDUSTRIES"/>
+<attribute name="DRAWN" value="KTOWN"/>
+<attribute name="REV" value="B"/>
+</attributes>
+<variantdefs>
+</variantdefs>
+<classes>
+<class number="0" name="default" width="0.2032" drill="0.254">
+</class>
+<class number="1" name="power" width="0.3048" drill="0.254">
+</class>
+<class number="2" name="gnd" width="0.3048" drill="0.254">
+</class>
+<class number="3" name="lcd" width="0.1524" drill="0.254">
+</class>
+</classes>
+<parts>
+<part name="U$31" library="microbuilder" deviceset="MOUNTINGHOLE" device="2.5"/>
+<part name="U$32" library="microbuilder" deviceset="MOUNTINGHOLE" device="2.5"/>
+<part name="J2" library="microbuilder" deviceset="CON_JST_PH_2PIN" device="" value="JSTPH"/>
+<part name="U$16" library="microbuilder" deviceset="VBAT" device=""/>
+<part name="U$22" library="microbuilder" deviceset="GND" device=""/>
+<part name="LED" library="microbuilder" deviceset="LED" device="0805_NOOUTLINE" value="RED"/>
+<part name="R7" library="microbuilder" deviceset="RESISTOR" device="_0603_NOOUT" value="1K"/>
+<part name="U$8" library="microbuilder" deviceset="GND" device=""/>
+<part name="GND7" library="supply1" deviceset="GND" device=""/>
+<part name="FRAME1" library="My Stuff" deviceset="A4L-LOC" device=""/>
+<part name="GND22" library="supply1" library_urn="urn:adsk.eagle:library:371" deviceset="GND" device=""/>
+<part name="J3" library="microbuilder" deviceset="JTAG-CORTEX" device="BOX" value="2x5 0.05&quot; SWD"/>
+<part name="+3V19" library="supply1" deviceset="+3V3" device=""/>
+<part name="C1" library="microbuilder" deviceset="CAP_CERAMIC" device="_1206" value="10µF"/>
+<part name="C3" library="microbuilder" deviceset="CAP_CERAMIC" device="_1206" value="1uF"/>
+<part name="U$27" library="microbuilder" deviceset="GND" device=""/>
+<part name="U$28" library="microbuilder" deviceset="GND" device=""/>
+<part name="C2" library="microbuilder" deviceset="CAP_CERAMIC" device="_1206" value="10µF"/>
+<part name="U$29" library="microbuilder" deviceset="GND" device=""/>
+<part name="U$30" library="microbuilder" deviceset="GND" device=""/>
+<part name="+3V4" library="supply1" library_urn="urn:adsk.eagle:library:371" deviceset="+3V3" device=""/>
+<part name="U1" library="microbuilder" deviceset="VREG_SOT23-5" device="" value="AP2112-3.3"/>
+<part name="U$15" library="microbuilder" deviceset="VBUS" device=""/>
+<part name="U$17" library="microbuilder" deviceset="VBAT" device=""/>
+<part name="D1" library="microbuilder" deviceset="DIODE-SCHOTTKY" device="SOD-123" value="MBR120"/>
+<part name="Q1" library="microbuilder" deviceset="MOSFET-P" device="" value="DMG341"/>
+<part name="U$25" library="microbuilder" deviceset="GND" device=""/>
+<part name="R2" library="microbuilder" deviceset="RESISTOR" device="_0603_NOOUT" value="10K"/>
+<part name="R1" library="microbuilder" deviceset="RESISTOR" device="_0603_NOOUT" value="100K"/>
+<part name="U2" library="microbuilder" deviceset="MCP73831/2" device="" value="MCP73831T-2ACI/OT"/>
+<part name="CHG" library="microbuilder" deviceset="LED" device="0805_NOOUTLINE" value="ORANGE"/>
+<part name="R3" library="microbuilder" deviceset="RESISTOR" device="_0603_NOOUT" value="1K"/>
+<part name="C4" library="microbuilder" deviceset="CAP_CERAMIC" device="_1206" value="10µF"/>
+<part name="U$33" library="microbuilder" deviceset="GND" device=""/>
+<part name="R4" library="microbuilder" deviceset="RESISTOR" device="_0603_NOOUT" value="10K"/>
+<part name="U$36" library="microbuilder" deviceset="GND" device=""/>
+<part name="U$38" library="microbuilder" deviceset="VBUS" device=""/>
+<part name="U$39" library="microbuilder" deviceset="VBAT" device=""/>
+<part name="U$1" library="microbuilder" deviceset="VBUS" device=""/>
+<part name="GND8" library="supply1" deviceset="GND" device=""/>
+<part name="R6" library="microbuilder" deviceset="RESISTOR" device="_0603_NOOUT" value="10K"/>
+<part name="+3V2" library="supply1" deviceset="+3V3" device=""/>
+<part name="U$2" library="microbuilder" deviceset="VBUS" device=""/>
+<part name="JP2" library="microbuilder" deviceset="HEADER-1X16" device="_MIN"/>
+<part name="JP4" library="microbuilder" deviceset="HEADER-1X12" device="_MIN"/>
+<part name="U$3" library="microbuilder" deviceset="GND" device=""/>
+<part name="+3V6" library="supply1" deviceset="+3V3" device=""/>
+<part name="U$5" library="microbuilder" deviceset="VBAT" device=""/>
+<part name="TP6" library="microbuilder" deviceset="TESTPOINT" device="ROUND2MMNO"/>
+<part name="TP7" library="microbuilder" deviceset="TESTPOINT" device="ROUND2MMNO"/>
+<part name="TP8" library="microbuilder" deviceset="TESTPOINT" device="ROUND2MMNO"/>
+<part name="TP1" library="microbuilder" deviceset="TESTPOINT" device="ROUND2MMNO"/>
+<part name="TP2" library="microbuilder" deviceset="TESTPOINT" device="ROUND2MMNO"/>
+<part name="U$7" library="microbuilder" deviceset="GND" device=""/>
+<part name="+3V1" library="supply1" library_urn="urn:adsk.eagle:library:371" deviceset="+3V3" device=""/>
+<part name="C11" library="microbuilder" deviceset="CAP_CERAMIC" device="_1206" value="1uF"/>
+<part name="C5" library="microbuilder" deviceset="CAP_CERAMIC" device="0603_NO" value="0.1uF"/>
+<part name="C6" library="microbuilder" deviceset="CAP_CERAMIC" device="0603_NO" value="0.1uF"/>
+<part name="C7" library="microbuilder" deviceset="CAP_CERAMIC" device="0603_NO" value="0.1uF"/>
+<part name="C8" library="microbuilder" deviceset="CAP_CERAMIC" device="0603_NO" value="0.1uF"/>
+<part name="U$11" library="microbuilder" deviceset="GND" device=""/>
+<part name="C9" library="microbuilder" deviceset="CAP_CERAMIC" device="0603_NO" value="0.1uF"/>
+<part name="C10" library="microbuilder" deviceset="CAP_CERAMIC" device="_1206" value="1uF"/>
+<part name="L1" library="Adafruit 3.5in 480x320 FeatherWing" deviceset="MICROBUILDER_INDUCTOR" device="_0805MP" value="10uH"/>
+<part name="R8" library="microbuilder" deviceset="RESISTOR" device="_0603_NOOUT" value="10K"/>
+<part name="U3" library="ATSAML22" deviceset="ATSAML22J18A-AUT" device=""/>
+<part name="C12" library="microbuilder" deviceset="CAP_CERAMIC" device="0603_NO" value="0.1uF"/>
+<part name="U$10" library="microbuilder" deviceset="GND" device=""/>
+<part name="+3V3" library="supply1" deviceset="+3V3" device=""/>
+<part name="J1" library="USB4085-GF-A_REVA" deviceset="USB4085-GF-A_REVA" device=""/>
+<part name="GND1" library="supply1" deviceset="GND" device=""/>
+<part name="R5" library="microbuilder" deviceset="RESISTOR" device="_0603_NOOUT" value="5.1K"/>
+<part name="R9" library="microbuilder" deviceset="RESISTOR" device="_0603_NOOUT" value="5.1K"/>
+<part name="GND2" library="supply1" deviceset="GND" device=""/>
+<part name="GND3" library="supply1" deviceset="GND" device=""/>
+<part name="U$4" library="My Stuff" deviceset="LCD_FEATHER_DISPLAY" device=""/>
+<part name="RESET" library="microbuilder" deviceset="SWITCH_PUSHBUTTON" device="_3.5X6MM"/>
+</parts>
+<sheets>
+<sheet>
+<plain>
+<wire x1="5.08" y1="134.62" x2="78.74" y2="134.62" width="0.1524" layer="94" style="shortdash"/>
+<wire x1="78.74" y1="134.62" x2="160.02" y2="134.62" width="0.1524" layer="94" style="shortdash"/>
+<wire x1="160.02" y1="134.62" x2="175.26" y2="134.62" width="0.1524" layer="94" style="shortdash"/>
+<wire x1="175.26" y1="134.62" x2="175.26" y2="175.26" width="0.1524" layer="94" style="shortdash"/>
+<wire x1="170.18" y1="5.08" x2="170.18" y2="78.74" width="0.1524" layer="94" style="shortdash"/>
+<wire x1="205.74" y1="134.62" x2="175.26" y2="134.62" width="0.1524" layer="94" style="shortdash"/>
+<wire x1="205.74" y1="134.62" x2="205.74" y2="175.26" width="0.1524" layer="94" style="shortdash"/>
+<wire x1="256.54" y1="78.74" x2="170.18" y2="78.74" width="0.1524" layer="94" style="shortdash"/>
+<text x="83.82" y="170.18" size="1.778" layer="94">LIPO CHARGING</text>
+<text x="162.56" y="172.72" size="1.778" layer="94">LED</text>
+<text x="177.8" y="172.72" size="1.778" layer="94">RESET</text>
+<text x="35.56" y="170.18" size="1.778" layer="94">POWER AND FILTERING</text>
+<text x="121.92" y="172.72" size="1.778" layer="97">10K = 100mA</text>
+<text x="121.92" y="170.18" size="1.778" layer="97">5.0K = 200mA</text>
+<text x="121.92" y="167.64" size="1.778" layer="97">2.0K = 500mA</text>
+<text x="121.92" y="165.1" size="1.778" layer="97">1.0K = 1000mA</text>
+<text x="172.72" y="73.66" size="1.778" layer="94">FEATHER HEADERS</text>
+<wire x1="160.02" y1="134.62" x2="160.02" y2="175.26" width="0.1524" layer="94" style="shortdash"/>
+<wire x1="256.54" y1="134.62" x2="205.74" y2="134.62" width="0.1524" layer="94" style="shortdash"/>
+<wire x1="78.74" y1="134.62" x2="78.74" y2="175.26" width="0.1524" layer="94" style="shortdash"/>
+<wire x1="160.02" y1="96.52" x2="5.08" y2="96.52" width="0.1524" layer="94" style="shortdash"/>
+<wire x1="78.74" y1="96.52" x2="78.74" y2="134.62" width="0.1524" layer="94" style="shortdash"/>
+<wire x1="160.02" y1="96.52" x2="160.02" y2="134.62" width="0.1524" layer="94" style="shortdash"/>
+<wire x1="170.18" y1="96.52" x2="160.02" y2="96.52" width="0.1524" layer="94" style="shortdash"/>
+<wire x1="170.18" y1="96.52" x2="170.18" y2="78.74" width="0.1524" layer="94" style="shortdash"/>
+<text x="208.28" y="172.72" size="1.778" layer="94">USB PORT</text>
+<text x="175.26" y="129.54" size="1.778" layer="94">SAM L22 POWER</text>
+<text x="7.62" y="91.44" size="1.778" layer="94">SAM L22 MICROCONTROLLER</text>
+<text x="7.62" y="129.54" size="1.778" layer="94">SWD CONNECTOR</text>
+<text x="78.74" y="99.06" size="1.778" layer="94" rot="MR90">LIQUID
+CRYSTAL
+DISPLAY</text>
+<text x="30.48" y="17.78" size="1.778" layer="88">SERCOM0: UART
+SERCOM1: I2C
+SERCOM2: Unavailable
+SERCOM3: SPI</text>
+<text x="139.7" y="17.78" size="1.778" layer="88" distance="42">TCC[5]</text>
+<text x="139.7" y="50.8" size="1.778" layer="88" distance="42">TCC[7]
+TCC[6]</text>
+<text x="139.7" y="73.66" size="1.778" layer="88" distance="42">TCC[0]</text>
+<text x="5.08" y="48.26" size="1.778" layer="88" distance="42">TCC[2]
+TCC[3]</text>
+<text x="5.08" y="83.82" size="1.778" layer="88" distance="42">Watch A0</text>
+<text x="5.08" y="33.02" size="1.778" layer="88" distance="42">Watch CS</text>
+</plain>
+<instances>
+<instance part="U$31" gate="G$1" x="175.26" y="7.62" smashed="yes"/>
+<instance part="U$32" gate="G$1" x="180.34" y="7.62" smashed="yes"/>
+<instance part="J2" gate="G$1" x="83.82" y="149.86" smashed="yes" rot="R180">
+<attribute name="NAME" x="90.17" y="144.145" size="1.778" layer="95" rot="R180"/>
+<attribute name="VALUE" x="90.17" y="154.94" size="1.778" layer="96" rot="R180"/>
+</instance>
+<instance part="U$16" gate="G$1" x="86.36" y="160.02" smashed="yes">
+<attribute name="VALUE" x="84.836" y="161.036" size="1.27" layer="96"/>
+</instance>
+<instance part="U$22" gate="G$1" x="86.36" y="139.7" smashed="yes">
+<attribute name="VALUE" x="84.836" y="139.7" size="1.27" layer="96"/>
+</instance>
+<instance part="LED" gate="G$1" x="167.64" y="162.56" smashed="yes" rot="R90">
+<attribute name="NAME" x="163.195" y="161.29" size="1.27" layer="95" rot="R90" align="center"/>
+<attribute name="VALUE" x="170.434" y="161.29" size="1.27" layer="96" rot="R90" align="center"/>
+</instance>
+<instance part="R7" gate="G$1" x="167.64" y="152.4" smashed="yes" rot="R90">
+<attribute name="NAME" x="165.1" y="152.4" size="1.27" layer="95" font="vector" rot="R90" align="center"/>
+<attribute name="VALUE" x="167.64" y="152.4" size="1.016" layer="96" font="vector" ratio="15" rot="R90" align="center"/>
+</instance>
+<instance part="U$8" gate="G$1" x="170.18" y="170.18" smashed="yes" rot="R90">
+<attribute name="VALUE" x="172.72" y="168.656" size="1.27" layer="96" rot="R90"/>
+</instance>
+<instance part="GND7" gate="1" x="198.12" y="149.86" smashed="yes">
+<attribute name="VALUE" x="195.58" y="147.32" size="1.778" layer="96"/>
+</instance>
+<instance part="FRAME1" gate="G$1" x="0" y="0" smashed="yes">
+<attribute name="DRAWING_NAME" x="217.17" y="15.24" size="2.54" layer="94"/>
+<attribute name="LAST_DATE_TIME" x="217.17" y="10.16" size="2.286" layer="94"/>
+<attribute name="SHEET" x="228.473" y="5.08" size="2.54" layer="94"/>
+</instance>
+<instance part="GND22" gate="1" x="17.78" y="104.14" smashed="yes">
+<attribute name="VALUE" x="15.24" y="101.6" size="1.778" layer="96"/>
+</instance>
+<instance part="J3" gate="G$1" x="27.94" y="111.76" smashed="yes">
+<attribute name="NAME" x="21.59" y="120.015" size="1.27" layer="95"/>
+<attribute name="VALUE" x="21.59" y="102.235" size="1.27" layer="96"/>
+</instance>
+<instance part="+3V19" gate="G$1" x="17.78" y="124.46" smashed="yes">
+<attribute name="VALUE" x="15.24" y="119.38" size="1.778" layer="96" rot="R90"/>
+</instance>
+<instance part="C1" gate="G$1" x="25.4" y="144.78" smashed="yes">
+<attribute name="NAME" x="23.11" y="146.03" size="1.27" layer="95" font="vector" rot="R90" align="center"/>
+<attribute name="VALUE" x="27.7" y="146.03" size="1.27" layer="96" font="vector" rot="R90" align="center"/>
+</instance>
+<instance part="C3" gate="G$1" x="71.12" y="144.78" smashed="yes">
+<attribute name="NAME" x="68.83" y="146.03" size="1.27" layer="95" font="vector" rot="R90" align="center"/>
+<attribute name="VALUE" x="73.42" y="146.03" size="1.27" layer="96" font="vector" rot="R90" align="center"/>
+</instance>
+<instance part="U$27" gate="G$1" x="25.4" y="139.7" smashed="yes">
+<attribute name="VALUE" x="23.876" y="137.16" size="1.27" layer="96"/>
+</instance>
+<instance part="U$28" gate="G$1" x="71.12" y="139.7" smashed="yes">
+<attribute name="VALUE" x="69.596" y="137.16" size="1.27" layer="96"/>
+</instance>
+<instance part="C2" gate="G$1" x="63.5" y="144.78" smashed="yes">
+<attribute name="NAME" x="61.21" y="146.03" size="1.27" layer="95" font="vector" rot="R90" align="center"/>
+<attribute name="VALUE" x="65.8" y="146.03" size="1.27" layer="96" font="vector" rot="R90" align="center"/>
+</instance>
+<instance part="U$29" gate="G$1" x="63.5" y="139.7" smashed="yes">
+<attribute name="VALUE" x="61.976" y="137.16" size="1.27" layer="96"/>
+</instance>
+<instance part="U$30" gate="G$1" x="40.64" y="139.7" smashed="yes">
+<attribute name="VALUE" x="39.116" y="137.16" size="1.27" layer="96"/>
+</instance>
+<instance part="+3V4" gate="G$1" x="71.12" y="170.18" smashed="yes" rot="MR0">
+<attribute name="VALUE" x="73.66" y="165.1" size="1.778" layer="96" rot="MR90"/>
+</instance>
+<instance part="U1" gate="G$1" x="50.8" y="154.94" smashed="yes">
+<attribute name="NAME" x="43.18" y="161.036" size="1.27" layer="95"/>
+<attribute name="VALUE" x="43.18" y="147.32" size="1.27" layer="95"/>
+</instance>
+<instance part="U$15" gate="G$1" x="10.16" y="172.72" smashed="yes">
+<attribute name="VALUE" x="8.636" y="173.736" size="1.27" layer="96"/>
+</instance>
+<instance part="U$17" gate="G$1" x="25.4" y="172.72" smashed="yes">
+<attribute name="VALUE" x="23.876" y="173.736" size="1.27" layer="96"/>
+</instance>
+<instance part="D1" gate="G$1" x="15.24" y="157.48" smashed="yes">
+<attribute name="NAME" x="15.24" y="160.02" size="1.27" layer="95" align="center"/>
+<attribute name="VALUE" x="15.24" y="154.98" size="1.27" layer="96" align="center"/>
+</instance>
+<instance part="Q1" gate="G$1" x="25.4" y="165.1" smashed="yes" rot="MR180">
+<attribute name="VALUE" x="28.194" y="167.005" size="1.27" layer="96" rot="MR180"/>
+<attribute name="NAME" x="28.194" y="164.719" size="1.27" layer="95" rot="MR180"/>
+</instance>
+<instance part="U$25" gate="G$1" x="10.16" y="139.7" smashed="yes">
+<attribute name="VALUE" x="8.636" y="137.16" size="1.27" layer="96"/>
+</instance>
+<instance part="R2" gate="G$1" x="33.02" y="152.4" smashed="yes" rot="R90">
+<attribute name="NAME" x="31.5214" y="148.59" size="1.778" layer="95" rot="R90"/>
+<attribute name="VALUE" x="36.322" y="151.13" size="1.778" layer="96" rot="R90"/>
+</instance>
+<instance part="R1" gate="G$1" x="10.16" y="149.86" smashed="yes" rot="R90">
+<attribute name="NAME" x="8.6614" y="146.05" size="1.778" layer="95" rot="R90"/>
+<attribute name="VALUE" x="13.462" y="148.59" size="1.778" layer="96" rot="R90"/>
+</instance>
+<instance part="U2" gate="G$1" x="127" y="152.4" smashed="yes">
+<attribute name="NAME" x="116.84" y="163.83" size="1.27" layer="95"/>
+<attribute name="VALUE" x="116.84" y="142.24" size="1.27" layer="95"/>
+</instance>
+<instance part="CHG" gate="G$1" x="99.06" y="154.94" smashed="yes" rot="R270">
+<attribute name="NAME" x="103.505" y="156.21" size="1.27" layer="95" rot="R270" align="center"/>
+<attribute name="VALUE" x="96.266" y="156.21" size="1.27" layer="96" rot="R270" align="center"/>
+</instance>
+<instance part="R3" gate="G$1" x="104.14" y="149.86" smashed="yes">
+<attribute name="NAME" x="104.14" y="152.4" size="1.27" layer="95" font="vector" align="center"/>
+<attribute name="VALUE" x="104.14" y="149.86" size="1.016" layer="96" font="vector" ratio="15" align="center"/>
+</instance>
+<instance part="C4" gate="G$1" x="154.94" y="147.32" smashed="yes">
+<attribute name="NAME" x="152.65" y="148.57" size="1.27" layer="95" font="vector" rot="R90" align="center"/>
+<attribute name="VALUE" x="157.24" y="148.57" size="1.27" layer="96" font="vector" rot="R90" align="center"/>
+</instance>
+<instance part="U$33" gate="G$1" x="154.94" y="139.7" smashed="yes">
+<attribute name="VALUE" x="153.416" y="137.16" size="1.27" layer="96"/>
+</instance>
+<instance part="R4" gate="G$1" x="147.32" y="147.32" smashed="yes" rot="R270">
+<attribute name="NAME" x="149.86" y="147.32" size="1.27" layer="95" font="vector" rot="R270" align="center"/>
+<attribute name="VALUE" x="147.32" y="147.32" size="1.016" layer="96" font="vector" ratio="15" rot="R270" align="center"/>
+</instance>
+<instance part="U$36" gate="G$1" x="147.32" y="139.7" smashed="yes">
+<attribute name="VALUE" x="145.796" y="137.16" size="1.27" layer="96"/>
+</instance>
+<instance part="U$38" gate="G$1" x="99.06" y="165.1" smashed="yes">
+<attribute name="VALUE" x="97.536" y="166.116" size="1.27" layer="96"/>
+</instance>
+<instance part="U$39" gate="G$1" x="149.86" y="170.18" smashed="yes">
+<attribute name="VALUE" x="148.336" y="171.196" size="1.27" layer="96"/>
+</instance>
+<instance part="U$1" gate="G$1" x="248.92" y="170.18" smashed="yes" rot="MR0">
+<attribute name="VALUE" x="250.444" y="171.196" size="1.27" layer="96" rot="MR0"/>
+</instance>
+<instance part="GND8" gate="1" x="213.36" y="142.24" smashed="yes">
+<attribute name="VALUE" x="210.82" y="139.7" size="1.778" layer="96"/>
+</instance>
+<instance part="R6" gate="G$1" x="66.04" y="119.38" smashed="yes" rot="R90">
+<attribute name="NAME" x="64.5414" y="115.57" size="1.778" layer="95" rot="R90"/>
+<attribute name="VALUE" x="69.342" y="118.11" size="1.778" layer="96" rot="R90"/>
+</instance>
+<instance part="+3V2" gate="G$1" x="66.04" y="127" smashed="yes" rot="MR0">
+<attribute name="VALUE" x="68.58" y="121.92" size="1.778" layer="96" rot="MR90"/>
+</instance>
+<instance part="U$2" gate="G$1" x="177.8" y="66.04" smashed="yes">
+<attribute name="VALUE" x="176.276" y="67.056" size="1.27" layer="96"/>
+</instance>
+<instance part="JP2" gate="A" x="246.38" y="48.26" smashed="yes" rot="R180">
+<attribute name="NAME" x="252.73" y="27.305" size="1.778" layer="95" rot="R180"/>
+<attribute name="VALUE" x="252.73" y="73.66" size="1.778" layer="96" rot="R180"/>
+</instance>
+<instance part="JP4" gate="G$1" x="208.28" y="43.18" smashed="yes">
+<attribute name="NAME" x="201.93" y="61.595" size="1.778" layer="95"/>
+<attribute name="VALUE" x="201.93" y="25.4" size="1.778" layer="96"/>
+</instance>
+<instance part="U$3" gate="G$1" x="226.06" y="27.94" smashed="yes">
+<attribute name="VALUE" x="224.536" y="25.4" size="1.27" layer="96"/>
+</instance>
+<instance part="+3V6" gate="G$1" x="226.06" y="71.12" smashed="yes">
+<attribute name="VALUE" x="223.52" y="66.04" size="1.778" layer="96" rot="R90"/>
+</instance>
+<instance part="U$5" gate="G$1" x="195.58" y="66.04" smashed="yes">
+<attribute name="VALUE" x="194.056" y="67.056" size="1.27" layer="96"/>
+</instance>
+<instance part="TP6" gate="G$1" x="66.04" y="114.3" smashed="yes" rot="R270">
+<attribute name="NAME" x="71.628" y="114.3" size="1.27" layer="95" align="center-left"/>
+<attribute name="VALUE" x="71.628" y="112.649" size="1.27" layer="96" align="center-left"/>
+</instance>
+<instance part="TP7" gate="G$1" x="53.34" y="116.84" smashed="yes" rot="R270">
+<attribute name="NAME" x="58.928" y="116.84" size="1.27" layer="95" align="center-left"/>
+<attribute name="VALUE" x="58.928" y="115.189" size="1.27" layer="96" align="center-left"/>
+</instance>
+<instance part="TP8" gate="G$1" x="45.72" y="106.68" smashed="yes" rot="R270">
+<attribute name="NAME" x="51.308" y="106.68" size="1.27" layer="95" align="center-left"/>
+<attribute name="VALUE" x="51.308" y="105.029" size="1.27" layer="96" align="center-left"/>
+</instance>
+<instance part="TP1" gate="G$1" x="17.78" y="116.84" smashed="yes" rot="R90">
+<attribute name="NAME" x="12.192" y="116.84" size="1.27" layer="95" rot="R180" align="center-left"/>
+<attribute name="VALUE" x="12.192" y="118.491" size="1.27" layer="96" rot="R180" align="center-left"/>
+</instance>
+<instance part="TP2" gate="G$1" x="17.78" y="111.76" smashed="yes" rot="R90">
+<attribute name="NAME" x="12.192" y="111.76" size="1.27" layer="95" rot="R180" align="center-left"/>
+<attribute name="VALUE" x="12.192" y="113.411" size="1.27" layer="96" rot="R180" align="center-left"/>
+</instance>
+<instance part="U$7" gate="G$1" x="248.92" y="86.36" smashed="yes">
+<attribute name="VALUE" x="247.396" y="83.82" size="1.27" layer="96"/>
+</instance>
+<instance part="+3V1" gate="G$1" x="190.5" y="127" smashed="yes" rot="MR0">
+<attribute name="VALUE" x="193.04" y="121.92" size="1.778" layer="96" rot="MR90"/>
+</instance>
+<instance part="C11" gate="G$1" x="190.5" y="88.9" smashed="yes" rot="R90">
+<attribute name="NAME" x="189.25" y="86.61" size="1.27" layer="95" font="vector" rot="R180" align="center"/>
+<attribute name="VALUE" x="189.25" y="91.2" size="1.27" layer="96" font="vector" rot="R180" align="center"/>
+</instance>
+<instance part="C5" gate="G$1" x="185.42" y="116.84" smashed="yes" rot="R90">
+<attribute name="NAME" x="184.17" y="114.55" size="1.27" layer="95" font="vector" rot="R180" align="center"/>
+<attribute name="VALUE" x="184.17" y="119.14" size="1.27" layer="96" font="vector" rot="R180" align="center"/>
+</instance>
+<instance part="C6" gate="G$1" x="185.42" y="114.3" smashed="yes" rot="R90">
+<attribute name="NAME" x="184.17" y="112.01" size="1.27" layer="95" font="vector" rot="R180" align="center"/>
+<attribute name="VALUE" x="184.17" y="116.6" size="1.27" layer="96" font="vector" rot="R180" align="center"/>
+</instance>
+<instance part="C7" gate="G$1" x="185.42" y="111.76" smashed="yes" rot="R90">
+<attribute name="NAME" x="184.17" y="109.47" size="1.27" layer="95" font="vector" rot="R180" align="center"/>
+<attribute name="VALUE" x="184.17" y="114.06" size="1.27" layer="96" font="vector" rot="R180" align="center"/>
+</instance>
+<instance part="C8" gate="G$1" x="185.42" y="109.22" smashed="yes" rot="R90">
+<attribute name="NAME" x="184.17" y="106.93" size="1.27" layer="95" font="vector" rot="R180" align="center"/>
+<attribute name="VALUE" x="184.17" y="111.52" size="1.27" layer="96" font="vector" rot="R180" align="center"/>
+</instance>
+<instance part="U$11" gate="G$1" x="177.8" y="86.36" smashed="yes">
+<attribute name="VALUE" x="176.276" y="83.82" size="1.27" layer="96"/>
+</instance>
+<instance part="C9" gate="G$1" x="185.42" y="104.14" smashed="yes" rot="R90">
+<attribute name="NAME" x="184.17" y="101.85" size="1.27" layer="95" font="vector" rot="R180" align="center"/>
+<attribute name="VALUE" x="184.17" y="106.44" size="1.27" layer="96" font="vector" rot="R180" align="center"/>
+</instance>
+<instance part="C10" gate="G$1" x="180.34" y="93.98" smashed="yes" rot="R270">
+<attribute name="NAME" x="181.59" y="96.27" size="1.27" layer="95" font="vector" align="center"/>
+<attribute name="VALUE" x="181.59" y="91.68" size="1.27" layer="96" font="vector" align="center"/>
+</instance>
+<instance part="L1" gate="G$1" x="190.5" y="99.06" smashed="yes">
+<attribute name="NAME" x="190.5" y="101.6" size="1.27" layer="95" align="center"/>
+<attribute name="VALUE" x="190.5" y="97.52" size="1.27" layer="96" align="center"/>
+</instance>
+<instance part="R8" gate="G$1" x="12.7" y="17.78" smashed="yes" rot="R270">
+<attribute name="NAME" x="14.1986" y="21.59" size="1.778" layer="95" rot="R270"/>
+<attribute name="VALUE" x="9.398" y="19.05" size="1.778" layer="96" rot="R270"/>
+</instance>
+<instance part="U3" gate="A" x="73.66" y="48.26" smashed="yes">
+<attribute name="NAME" x="68.9356" y="92.9386" size="2.0828" layer="95" ratio="6" rot="SR0"/>
+<attribute name="VALUE" x="68.3006" y="90.3986" size="2.0828" layer="96" ratio="6" rot="SR0"/>
+</instance>
+<instance part="U3" gate="B" x="213.36" y="104.14" smashed="yes">
+<attribute name="NAME" x="208.6356" y="128.4986" size="2.0828" layer="95" ratio="6" rot="SR0"/>
+<attribute name="VALUE" x="208.0006" y="125.9586" size="2.0828" layer="96" ratio="6" rot="SR0"/>
+</instance>
+<instance part="C12" gate="G$1" x="152.4" y="76.2" smashed="yes" rot="R90">
+<attribute name="NAME" x="151.15" y="73.91" size="1.27" layer="95" font="vector" rot="R180" align="center"/>
+<attribute name="VALUE" x="151.15" y="78.5" size="1.27" layer="96" font="vector" rot="R180" align="center"/>
+</instance>
+<instance part="U$10" gate="G$1" x="154.94" y="73.66" smashed="yes" rot="MR0">
+<attribute name="VALUE" x="155.956" y="73.66" size="1.27" layer="96" rot="MR180"/>
+</instance>
+<instance part="+3V3" gate="G$1" x="12.7" y="25.4" smashed="yes">
+<attribute name="VALUE" x="10.16" y="20.32" size="1.778" layer="96" rot="R90"/>
+</instance>
+<instance part="J1" gate="G$1" x="231.14" y="154.94" smashed="yes">
+<attribute name="NAME" x="218.417640625" y="168.1716" size="1.77888125" layer="95"/>
+<attribute name="VALUE" x="218.411509375" y="142.1865" size="1.780909375" layer="96"/>
+</instance>
+<instance part="GND1" gate="1" x="248.92" y="142.24" smashed="yes" rot="MR0">
+<attribute name="VALUE" x="251.46" y="139.7" size="1.778" layer="96" rot="MR0"/>
+</instance>
+<instance part="R5" gate="G$1" x="210.82" y="160.02" smashed="yes">
+<attribute name="NAME" x="210.82" y="162.56" size="1.27" layer="95" font="vector" align="center"/>
+<attribute name="VALUE" x="210.82" y="157.48" size="1.016" layer="96" font="vector" ratio="15" align="center"/>
+</instance>
+<instance part="R9" gate="G$1" x="251.46" y="160.02" smashed="yes" rot="MR180">
+<attribute name="NAME" x="251.46" y="157.48" size="1.27" layer="95" font="vector" rot="MR180" align="center"/>
+<attribute name="VALUE" x="251.46" y="162.56" size="1.016" layer="96" font="vector" ratio="15" rot="MR180" align="center"/>
+</instance>
+<instance part="GND2" gate="1" x="259.08" y="160.02" smashed="yes" rot="MR270">
+<attribute name="VALUE" x="261.62" y="162.56" size="1.778" layer="96" rot="MR270"/>
+</instance>
+<instance part="GND3" gate="1" x="203.2" y="160.02" smashed="yes" rot="MR90">
+<attribute name="VALUE" x="200.66" y="157.48" size="1.778" layer="96" rot="MR90"/>
+</instance>
+<instance part="U$4" gate="G$1" x="119.38" y="121.92" smashed="yes"/>
+<instance part="RESET" gate="G$1" x="193.04" y="154.94" smashed="yes">
+<attribute name="NAME" x="190.5" y="158.496" size="1.27" layer="95"/>
+<attribute name="VALUE" x="190.5" y="152.654" size="1.27" layer="96"/>
+</instance>
+</instances>
+<busses>
+</busses>
+<nets>
+<net name="GND" class="2">
+<segment>
+<pinref part="J2" gate="G$1" pin="1"/>
+<pinref part="U$22" gate="G$1" pin="GND"/>
+<wire x1="86.36" y1="142.24" x2="86.36" y2="147.32" width="0.1524" layer="91"/>
+</segment>
+<segment>
+<pinref part="U$8" gate="G$1" pin="GND"/>
+<pinref part="LED" gate="G$1" pin="C"/>
+<wire x1="167.64" y1="165.1" x2="167.64" y2="170.18" width="0.1524" layer="91"/>
+</segment>
+<segment>
+<wire x1="198.12" y1="154.94" x2="198.12" y2="152.4" width="0.1524" layer="91"/>
+<pinref part="GND7" gate="1" pin="GND"/>
+<pinref part="RESET" gate="G$1" pin="P$2"/>
+</segment>
+<segment>
+<wire x1="20.32" y1="114.3" x2="17.78" y2="114.3" width="0.1524" layer="91"/>
+<wire x1="17.78" y1="114.3" x2="17.78" y2="111.76" width="0.1524" layer="91"/>
+<wire x1="17.78" y1="111.76" x2="17.78" y2="106.68" width="0.1524" layer="91"/>
+<junction x="17.78" y="111.76"/>
+<wire x1="20.32" y1="111.76" x2="17.78" y2="111.76" width="0.1524" layer="91"/>
+<pinref part="GND22" gate="1" pin="GND"/>
+<pinref part="J3" gate="G$1" pin="GND@1"/>
+<pinref part="J3" gate="G$1" pin="GND@2"/>
+<pinref part="TP2" gate="G$1" pin="P$1"/>
+</segment>
+<segment>
+<pinref part="C3" gate="G$1" pin="2"/>
+<pinref part="U$28" gate="G$1" pin="GND"/>
+</segment>
+<segment>
+<pinref part="C1" gate="G$1" pin="2"/>
+<pinref part="U$27" gate="G$1" pin="GND"/>
+</segment>
+<segment>
+<pinref part="C2" gate="G$1" pin="2"/>
+<pinref part="U$29" gate="G$1" pin="GND"/>
+</segment>
+<segment>
+<pinref part="U1" gate="G$1" pin="GND"/>
+<wire x1="40.64" y1="152.4" x2="40.64" y2="142.24" width="0.1524" layer="91"/>
+<pinref part="U$30" gate="G$1" pin="GND"/>
+</segment>
+<segment>
+<pinref part="U$25" gate="G$1" pin="GND"/>
+<wire x1="10.16" y1="142.24" x2="10.16" y2="144.78" width="0.1524" layer="91"/>
+<pinref part="R1" gate="G$1" pin="1"/>
+</segment>
+<segment>
+<pinref part="C4" gate="G$1" pin="2"/>
+<pinref part="U$33" gate="G$1" pin="GND"/>
+<wire x1="154.94" y1="144.78" x2="154.94" y2="142.24" width="0.1524" layer="91"/>
+</segment>
+<segment>
+<pinref part="R4" gate="G$1" pin="2"/>
+<pinref part="U$36" gate="G$1" pin="GND"/>
+<pinref part="U2" gate="G$1" pin="VSS"/>
+<wire x1="139.7" y1="149.86" x2="142.24" y2="149.86" width="0.1524" layer="91"/>
+<wire x1="142.24" y1="149.86" x2="142.24" y2="142.24" width="0.1524" layer="91"/>
+<wire x1="142.24" y1="142.24" x2="147.32" y2="142.24" width="0.1524" layer="91"/>
+<junction x="147.32" y="142.24"/>
+</segment>
+<segment>
+<wire x1="213.36" y1="147.32" x2="213.36" y2="144.78" width="0.1524" layer="91"/>
+<pinref part="GND8" gate="1" pin="GND"/>
+<wire x1="213.36" y1="147.32" x2="215.9" y2="147.32" width="0.1524" layer="91"/>
+<pinref part="J1" gate="G$1" pin="SHIELD"/>
+</segment>
+<segment>
+<pinref part="U$3" gate="G$1" pin="GND"/>
+<pinref part="JP2" gate="A" pin="13"/>
+<wire x1="248.92" y1="60.96" x2="226.06" y2="60.96" width="0.1524" layer="91"/>
+<wire x1="226.06" y1="60.96" x2="226.06" y2="30.48" width="0.1524" layer="91"/>
+</segment>
+<segment>
+<wire x1="231.14" y1="116.84" x2="248.92" y2="116.84" width="0.1524" layer="91"/>
+<wire x1="248.92" y1="116.84" x2="248.92" y2="114.3" width="0.1524" layer="91"/>
+<wire x1="248.92" y1="114.3" x2="248.92" y2="111.76" width="0.1524" layer="91"/>
+<wire x1="248.92" y1="111.76" x2="248.92" y2="109.22" width="0.1524" layer="91"/>
+<wire x1="248.92" y1="109.22" x2="248.92" y2="104.14" width="0.1524" layer="91"/>
+<wire x1="248.92" y1="104.14" x2="248.92" y2="88.9" width="0.1524" layer="91"/>
+<wire x1="231.14" y1="114.3" x2="248.92" y2="114.3" width="0.1524" layer="91"/>
+<junction x="248.92" y="114.3"/>
+<wire x1="231.14" y1="111.76" x2="248.92" y2="111.76" width="0.1524" layer="91"/>
+<junction x="248.92" y="111.76"/>
+<wire x1="231.14" y1="109.22" x2="248.92" y2="109.22" width="0.1524" layer="91"/>
+<junction x="248.92" y="109.22"/>
+<wire x1="231.14" y1="104.14" x2="248.92" y2="104.14" width="0.1524" layer="91"/>
+<junction x="248.92" y="104.14"/>
+<wire x1="231.14" y1="88.9" x2="248.92" y2="88.9" width="0.1524" layer="91"/>
+<junction x="248.92" y="88.9"/>
+<pinref part="U$7" gate="G$1" pin="GND"/>
+<pinref part="U3" gate="B" pin="GND"/>
+<pinref part="U3" gate="B" pin="GNDANA"/>
+<pinref part="U3" gate="B" pin="GND_1"/>
+<pinref part="U3" gate="B" pin="GND_2"/>
+<pinref part="U3" gate="B" pin="GND_3"/>
+</segment>
+<segment>
+<pinref part="U$11" gate="G$1" pin="GND"/>
+<pinref part="C5" gate="G$1" pin="1"/>
+<wire x1="177.8" y1="88.9" x2="177.8" y2="93.98" width="0.1524" layer="91"/>
+<wire x1="177.8" y1="93.98" x2="177.8" y2="104.14" width="0.1524" layer="91"/>
+<wire x1="177.8" y1="104.14" x2="177.8" y2="109.22" width="0.1524" layer="91"/>
+<wire x1="177.8" y1="109.22" x2="177.8" y2="111.76" width="0.1524" layer="91"/>
+<wire x1="177.8" y1="111.76" x2="177.8" y2="114.3" width="0.1524" layer="91"/>
+<wire x1="177.8" y1="114.3" x2="177.8" y2="116.84" width="0.1524" layer="91"/>
+<wire x1="177.8" y1="116.84" x2="180.34" y2="116.84" width="0.1524" layer="91"/>
+<pinref part="C6" gate="G$1" pin="1"/>
+<wire x1="180.34" y1="114.3" x2="177.8" y2="114.3" width="0.1524" layer="91"/>
+<junction x="177.8" y="114.3"/>
+<pinref part="C7" gate="G$1" pin="1"/>
+<wire x1="180.34" y1="111.76" x2="177.8" y2="111.76" width="0.1524" layer="91"/>
+<junction x="177.8" y="111.76"/>
+<pinref part="C8" gate="G$1" pin="1"/>
+<wire x1="180.34" y1="109.22" x2="177.8" y2="109.22" width="0.1524" layer="91"/>
+<junction x="177.8" y="109.22"/>
+<pinref part="C11" gate="G$1" pin="1"/>
+<wire x1="185.42" y1="88.9" x2="177.8" y2="88.9" width="0.1524" layer="91"/>
+<junction x="177.8" y="88.9"/>
+<pinref part="C9" gate="G$1" pin="1"/>
+<wire x1="180.34" y1="104.14" x2="177.8" y2="104.14" width="0.1524" layer="91"/>
+<junction x="177.8" y="104.14"/>
+<pinref part="C10" gate="G$1" pin="2"/>
+<junction x="177.8" y="93.98"/>
+</segment>
+<segment>
+<pinref part="U$10" gate="G$1" pin="GND"/>
+<pinref part="C12" gate="G$1" pin="2"/>
+</segment>
+<segment>
+<wire x1="248.92" y1="147.32" x2="248.92" y2="144.78" width="0.1524" layer="91"/>
+<pinref part="GND1" gate="1" pin="GND"/>
+<wire x1="248.92" y1="147.32" x2="246.38" y2="147.32" width="0.1524" layer="91"/>
+<pinref part="J1" gate="G$1" pin="GND"/>
+</segment>
+<segment>
+<pinref part="R9" gate="G$1" pin="2"/>
+<pinref part="GND2" gate="1" pin="GND"/>
+</segment>
+<segment>
+<pinref part="R5" gate="G$1" pin="1"/>
+<pinref part="GND3" gate="1" pin="GND"/>
+</segment>
+</net>
+<net name="VBUS" class="1">
+<segment>
+<pinref part="U$15" gate="G$1" pin="VBUS"/>
+<wire x1="10.16" y1="154.94" x2="10.16" y2="157.48" width="0.1524" layer="91"/>
+<pinref part="D1" gate="G$1" pin="A"/>
+<wire x1="10.16" y1="157.48" x2="10.16" y2="162.56" width="0.1524" layer="91"/>
+<wire x1="10.16" y1="162.56" x2="10.16" y2="170.18" width="0.1524" layer="91"/>
+<wire x1="12.7" y1="157.48" x2="10.16" y2="157.48" width="0.1524" layer="91"/>
+<junction x="10.16" y="157.48"/>
+<pinref part="Q1" gate="G$1" pin="G"/>
+<wire x1="20.32" y1="162.56" x2="10.16" y2="162.56" width="0.1524" layer="91"/>
+<junction x="10.16" y="162.56"/>
+<pinref part="R1" gate="G$1" pin="2"/>
+</segment>
+<segment>
+<pinref part="U2" gate="G$1" pin="VDD"/>
+<wire x1="99.06" y1="162.56" x2="109.22" y2="162.56" width="0.1524" layer="91"/>
+<wire x1="109.22" y1="162.56" x2="109.22" y2="154.94" width="0.1524" layer="91"/>
+<wire x1="109.22" y1="154.94" x2="114.3" y2="154.94" width="0.1524" layer="91"/>
+<pinref part="CHG" gate="G$1" pin="A"/>
+<wire x1="99.06" y1="160.02" x2="99.06" y2="162.56" width="0.1524" layer="91"/>
+<junction x="99.06" y="162.56"/>
+<pinref part="U$38" gate="G$1" pin="VBUS"/>
+</segment>
+<segment>
+<pinref part="U$1" gate="G$1" pin="VBUS"/>
+<wire x1="246.38" y1="165.1" x2="248.92" y2="165.1" width="0.1524" layer="91"/>
+<wire x1="248.92" y1="165.1" x2="248.92" y2="167.64" width="0.1524" layer="91"/>
+<pinref part="J1" gate="G$1" pin="VBUS"/>
+</segment>
+<segment>
+<pinref part="U$2" gate="G$1" pin="VBUS"/>
+<pinref part="JP4" gate="G$1" pin="3"/>
+<wire x1="177.8" y1="63.5" x2="177.8" y2="53.34" width="0.1524" layer="91"/>
+<wire x1="177.8" y1="53.34" x2="205.74" y2="53.34" width="0.1524" layer="91"/>
+</segment>
+</net>
+<net name="VBAT" class="1">
+<segment>
+<pinref part="J2" gate="G$1" pin="2"/>
+<pinref part="U$16" gate="G$1" pin="VBAT"/>
+<wire x1="86.36" y1="157.48" x2="86.36" y2="149.86" width="0.1524" layer="91"/>
+</segment>
+<segment>
+<pinref part="U$17" gate="G$1" pin="VBAT"/>
+<pinref part="Q1" gate="G$1" pin="D"/>
+</segment>
+<segment>
+<pinref part="U2" gate="G$1" pin="VBAT"/>
+<pinref part="C4" gate="G$1" pin="1"/>
+<wire x1="149.86" y1="154.94" x2="139.7" y2="154.94" width="0.1524" layer="91"/>
+<wire x1="154.94" y1="152.4" x2="154.94" y2="154.94" width="0.1524" layer="91"/>
+<wire x1="154.94" y1="154.94" x2="149.86" y2="154.94" width="0.1524" layer="91"/>
+<junction x="154.94" y="154.94"/>
+<pinref part="U$39" gate="G$1" pin="VBAT"/>
+<wire x1="149.86" y1="167.64" x2="149.86" y2="154.94" width="0.1524" layer="91"/>
+<junction x="149.86" y="154.94"/>
+</segment>
+<segment>
+<pinref part="JP4" gate="G$1" pin="1"/>
+<wire x1="205.74" y1="58.42" x2="195.58" y2="58.42" width="0.1524" layer="91"/>
+<pinref part="U$5" gate="G$1" pin="VBAT"/>
+<wire x1="195.58" y1="63.5" x2="195.58" y2="58.42" width="0.1524" layer="91"/>
+</segment>
+</net>
+<net name="EN" class="0">
+<segment>
+<wire x1="33.02" y1="147.32" x2="38.1" y2="147.32" width="0.1524" layer="91"/>
+<wire x1="38.1" y1="147.32" x2="38.1" y2="154.94" width="0.1524" layer="91"/>
+<pinref part="U1" gate="G$1" pin="EN"/>
+<wire x1="38.1" y1="154.94" x2="40.64" y2="154.94" width="0.1524" layer="91"/>
+<label x="33.02" y="144.78" size="1.778" layer="95"/>
+<pinref part="R2" gate="G$1" pin="1"/>
+</segment>
+<segment>
+<label x="195.58" y="55.88" size="1.778" layer="95" rot="R180" xref="yes"/>
+<pinref part="JP4" gate="G$1" pin="2"/>
+<wire x1="205.74" y1="55.88" x2="195.58" y2="55.88" width="0.1524" layer="91"/>
+</segment>
+</net>
+<net name="N$1" class="0">
+<segment>
+<pinref part="R7" gate="G$1" pin="2"/>
+<pinref part="LED" gate="G$1" pin="A"/>
+</segment>
+</net>
+<net name="+3V3" class="1">
+<segment>
+<wire x1="17.78" y1="121.92" x2="17.78" y2="116.84" width="0.1524" layer="91"/>
+<wire x1="17.78" y1="116.84" x2="20.32" y2="116.84" width="0.1524" layer="91"/>
+<pinref part="J3" gate="G$1" pin="VCC"/>
+<pinref part="+3V19" gate="G$1" pin="+3V3"/>
+<pinref part="TP1" gate="G$1" pin="P$1"/>
+<junction x="17.78" y="116.84"/>
+</segment>
+<segment>
+<wire x1="60.96" y1="157.48" x2="63.5" y2="157.48" width="0.1524" layer="91"/>
+<wire x1="63.5" y1="157.48" x2="71.12" y2="157.48" width="0.1524" layer="91"/>
+<wire x1="71.12" y1="157.48" x2="71.12" y2="167.64" width="0.1524" layer="91"/>
+<pinref part="C3" gate="G$1" pin="1"/>
+<wire x1="71.12" y1="157.48" x2="71.12" y2="149.86" width="0.1524" layer="91"/>
+<junction x="71.12" y="157.48"/>
+<pinref part="C2" gate="G$1" pin="1"/>
+<wire x1="63.5" y1="149.86" x2="63.5" y2="157.48" width="0.1524" layer="91"/>
+<junction x="63.5" y="157.48"/>
+<pinref part="+3V4" gate="G$1" pin="+3V3"/>
+<pinref part="U1" gate="G$1" pin="OUT"/>
+</segment>
+<segment>
+<pinref part="R6" gate="G$1" pin="2"/>
+<pinref part="+3V2" gate="G$1" pin="+3V3"/>
+</segment>
+<segment>
+<wire x1="226.06" y1="68.58" x2="226.06" y2="66.04" width="0.1524" layer="91"/>
+<pinref part="JP2" gate="A" pin="15"/>
+<pinref part="+3V6" gate="G$1" pin="+3V3"/>
+<wire x1="226.06" y1="66.04" x2="248.92" y2="66.04" width="0.1524" layer="91"/>
+</segment>
+<segment>
+<pinref part="+3V1" gate="G$1" pin="+3V3"/>
+<wire x1="195.58" y1="109.22" x2="190.5" y2="109.22" width="0.1524" layer="91"/>
+<wire x1="190.5" y1="109.22" x2="187.96" y2="109.22" width="0.1524" layer="91"/>
+<wire x1="195.58" y1="111.76" x2="190.5" y2="111.76" width="0.1524" layer="91"/>
+<wire x1="190.5" y1="111.76" x2="187.96" y2="111.76" width="0.1524" layer="91"/>
+<wire x1="195.58" y1="114.3" x2="190.5" y2="114.3" width="0.1524" layer="91"/>
+<wire x1="190.5" y1="114.3" x2="187.96" y2="114.3" width="0.1524" layer="91"/>
+<wire x1="195.58" y1="116.84" x2="190.5" y2="116.84" width="0.1524" layer="91"/>
+<wire x1="190.5" y1="116.84" x2="187.96" y2="116.84" width="0.1524" layer="91"/>
+<wire x1="195.58" y1="104.14" x2="190.5" y2="104.14" width="0.1524" layer="91"/>
+<wire x1="190.5" y1="104.14" x2="187.96" y2="104.14" width="0.1524" layer="91"/>
+<pinref part="C5" gate="G$1" pin="2"/>
+<pinref part="C6" gate="G$1" pin="2"/>
+<pinref part="C7" gate="G$1" pin="2"/>
+<pinref part="C8" gate="G$1" pin="2"/>
+<wire x1="190.5" y1="124.46" x2="190.5" y2="116.84" width="0.1524" layer="91"/>
+<junction x="190.5" y="104.14"/>
+<junction x="190.5" y="109.22"/>
+<wire x1="190.5" y1="116.84" x2="190.5" y2="114.3" width="0.1524" layer="91"/>
+<wire x1="190.5" y1="114.3" x2="190.5" y2="111.76" width="0.1524" layer="91"/>
+<wire x1="190.5" y1="111.76" x2="190.5" y2="109.22" width="0.1524" layer="91"/>
+<wire x1="190.5" y1="109.22" x2="190.5" y2="104.14" width="0.1524" layer="91"/>
+<junction x="190.5" y="111.76"/>
+<junction x="190.5" y="114.3"/>
+<junction x="190.5" y="116.84"/>
+<pinref part="C9" gate="G$1" pin="2"/>
+<pinref part="U3" gate="B" pin="VDDANA"/>
+<pinref part="U3" gate="B" pin="VDDIO"/>
+<pinref part="U3" gate="B" pin="VDDIO_1"/>
+<pinref part="U3" gate="B" pin="VDDIO_2"/>
+<pinref part="U3" gate="B" pin="VDDIO_3"/>
+</segment>
+<segment>
+<pinref part="R8" gate="G$1" pin="1"/>
+<pinref part="+3V3" gate="G$1" pin="+3V3"/>
+</segment>
+</net>
+<net name="!RESET" class="0">
+<segment>
+<wire x1="177.8" y1="154.94" x2="187.96" y2="154.94" width="0.1524" layer="91"/>
+<label x="177.8" y="154.94" size="1.778" layer="95"/>
+<pinref part="RESET" gate="G$1" pin="P$1"/>
+</segment>
+<segment>
+<label x="35.56" y="106.68" size="1.778" layer="95"/>
+<wire x1="35.56" y1="106.68" x2="45.72" y2="106.68" width="0.1524" layer="91"/>
+<pinref part="J3" gate="G$1" pin="NRESET"/>
+<pinref part="TP8" gate="G$1" pin="P$1"/>
+</segment>
+<segment>
+<pinref part="JP2" gate="A" pin="16"/>
+<wire x1="248.92" y1="68.58" x2="241.3" y2="68.58" width="0.1524" layer="91"/>
+<label x="241.3" y="68.58" size="1.27" layer="95" rot="R180" xref="yes"/>
+</segment>
+<segment>
+<label x="15.24" y="12.7" size="1.778" layer="95"/>
+<wire x1="12.7" y1="12.7" x2="22.86" y2="12.7" width="0.1524" layer="91"/>
+<wire x1="7.62" y1="12.7" x2="12.7" y2="12.7" width="0.1524" layer="91"/>
+<pinref part="R8" gate="G$1" pin="2"/>
+<junction x="12.7" y="12.7"/>
+<pinref part="U3" gate="A" pin="!RESET"/>
+</segment>
+</net>
+<net name="VHI" class="1">
+<segment>
+<pinref part="D1" gate="G$1" pin="C"/>
+<wire x1="17.78" y1="157.48" x2="25.4" y2="157.48" width="0.1524" layer="91"/>
+<pinref part="Q1" gate="G$1" pin="S"/>
+<wire x1="25.4" y1="160.02" x2="25.4" y2="157.48" width="0.1524" layer="91"/>
+<pinref part="C1" gate="G$1" pin="1"/>
+<wire x1="40.64" y1="157.48" x2="33.02" y2="157.48" width="0.1524" layer="91"/>
+<wire x1="33.02" y1="157.48" x2="25.4" y2="157.48" width="0.1524" layer="91"/>
+<wire x1="25.4" y1="157.48" x2="25.4" y2="149.86" width="0.1524" layer="91"/>
+<pinref part="U1" gate="G$1" pin="IN"/>
+<junction x="25.4" y="157.48"/>
+<pinref part="R2" gate="G$1" pin="2"/>
+<junction x="33.02" y="157.48"/>
+</segment>
+</net>
+<net name="CHG" class="0">
+<segment>
+<pinref part="CHG" gate="G$1" pin="C"/>
+<pinref part="R3" gate="G$1" pin="1"/>
+<wire x1="99.06" y1="152.4" x2="99.06" y2="149.86" width="0.1524" layer="91"/>
+</segment>
+</net>
+<net name="STAT" class="0">
+<segment>
+<pinref part="R3" gate="G$1" pin="2"/>
+<pinref part="U2" gate="G$1" pin="STAT"/>
+<wire x1="109.22" y1="149.86" x2="114.3" y2="149.86" width="0.1524" layer="91"/>
+</segment>
+</net>
+<net name="PROG" class="0">
+<segment>
+<pinref part="U2" gate="G$1" pin="PROG"/>
+<pinref part="R4" gate="G$1" pin="1"/>
+<wire x1="139.7" y1="152.4" x2="147.32" y2="152.4" width="0.1524" layer="91"/>
+</segment>
+</net>
+<net name="USB_P" class="0">
+<segment>
+<wire x1="246.38" y1="157.48" x2="248.92" y2="157.48" width="0.1524" layer="91"/>
+<label x="246.38" y="157.48" size="1.778" layer="95"/>
+<pinref part="J1" gate="G$1" pin="DP2"/>
+<pinref part="J1" gate="G$1" pin="DP1"/>
+<wire x1="248.92" y1="157.48" x2="254" y2="157.48" width="0.1524" layer="91"/>
+<wire x1="246.38" y1="154.94" x2="248.92" y2="154.94" width="0.1524" layer="91"/>
+<wire x1="248.92" y1="154.94" x2="248.92" y2="157.48" width="0.1524" layer="91"/>
+<junction x="248.92" y="157.48"/>
+</segment>
+<segment>
+<wire x1="139.7" y1="20.32" x2="124.46" y2="20.32" width="0.1524" layer="91"/>
+<label x="127" y="20.32" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PA25/I13/SERCOM2.3/USB+"/>
+</segment>
+</net>
+<net name="USB_N" class="0">
+<segment>
+<wire x1="215.9" y1="157.48" x2="213.36" y2="157.48" width="0.1524" layer="91"/>
+<label x="208.28" y="157.48" size="1.778" layer="95"/>
+<pinref part="J1" gate="G$1" pin="DN1"/>
+<pinref part="J1" gate="G$1" pin="DN2"/>
+<wire x1="213.36" y1="157.48" x2="208.28" y2="157.48" width="0.1524" layer="91"/>
+<wire x1="215.9" y1="154.94" x2="213.36" y2="154.94" width="0.1524" layer="91"/>
+<wire x1="213.36" y1="154.94" x2="213.36" y2="157.48" width="0.1524" layer="91"/>
+<junction x="213.36" y="157.48"/>
+</segment>
+<segment>
+<wire x1="139.7" y1="22.86" x2="124.46" y2="22.86" width="0.1524" layer="91"/>
+<label x="127" y="22.86" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PA24/I12/SERCOM2.2/USB-"/>
+</segment>
+</net>
+<net name="A6" class="0">
+<segment>
+<pinref part="JP2" gate="A" pin="11"/>
+<label x="241.3" y="55.88" size="1.27" layer="95" rot="R180" xref="yes"/>
+<wire x1="248.92" y1="55.88" x2="241.3" y2="55.88" width="0.1524" layer="91"/>
+</segment>
+<segment>
+<wire x1="139.7" y1="73.66" x2="124.46" y2="73.66" width="0.1524" layer="91"/>
+<label x="127" y="73.66" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PA04/I4/AIN4/SERCOM0.0/SLCD[4]"/>
+</segment>
+</net>
+<net name="A5" class="0">
+<segment>
+<pinref part="JP2" gate="A" pin="12"/>
+<label x="241.3" y="58.42" size="1.27" layer="95" rot="R180" xref="yes"/>
+<wire x1="248.92" y1="58.42" x2="241.3" y2="58.42" width="0.1524" layer="91"/>
+</segment>
+<segment>
+<pinref part="U3" gate="A" pin="PA07/I7/AIN7/SERCOM0.3/SLCD[7]"/>
+<wire x1="139.7" y1="66.04" x2="124.46" y2="66.04" width="0.1524" layer="91"/>
+<label x="127" y="66.04" size="1.778" layer="95"/>
+</segment>
+</net>
+<net name="PA00" class="0">
+<segment>
+<pinref part="JP4" gate="G$1" pin="7"/>
+<wire x1="195.58" y1="43.18" x2="205.74" y2="43.18" width="0.1524" layer="91"/>
+<label x="195.58" y="43.18" size="1.27" layer="95" rot="R180" xref="yes"/>
+</segment>
+<segment>
+<wire x1="139.7" y1="83.82" x2="124.46" y2="83.82" width="0.1524" layer="91"/>
+<label x="127" y="83.82" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PA00/XIN32/EXTINT[0]/SERCOM1.0"/>
+</segment>
+</net>
+<net name="PA01" class="0">
+<segment>
+<pinref part="JP4" gate="G$1" pin="6"/>
+<wire x1="195.58" y1="45.72" x2="205.74" y2="45.72" width="0.1524" layer="91"/>
+<label x="195.58" y="45.72" size="1.27" layer="95" rot="R180" xref="yes"/>
+</segment>
+<segment>
+<wire x1="139.7" y1="81.28" x2="124.46" y2="81.28" width="0.1524" layer="91"/>
+<label x="127" y="81.28" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PA01/XOUT32/EXTINT[1]/SERCOM1.1"/>
+</segment>
+</net>
+<net name="SDA" class="0">
+<segment>
+<wire x1="195.58" y1="30.48" x2="205.74" y2="30.48" width="0.1524" layer="91"/>
+<label x="195.58" y="30.48" size="1.27" layer="95" rot="R180" xref="yes"/>
+<pinref part="JP4" gate="G$1" pin="12"/>
+</segment>
+<segment>
+<wire x1="7.62" y1="45.72" x2="22.86" y2="45.72" width="0.1524" layer="91"/>
+<label x="10.16" y="45.72" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PB30/I14/SERCOM1.0"/>
+</segment>
+</net>
+<net name="SCL" class="0">
+<segment>
+<wire x1="205.74" y1="33.02" x2="195.58" y2="33.02" width="0.1524" layer="91"/>
+<label x="195.58" y="33.02" size="1.27" layer="95" rot="R180" xref="yes"/>
+<pinref part="JP4" gate="G$1" pin="11"/>
+</segment>
+<segment>
+<wire x1="7.62" y1="43.18" x2="22.86" y2="43.18" width="0.1524" layer="91"/>
+<label x="10.16" y="43.18" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PB31/I15/SERCOM1.1"/>
+</segment>
+</net>
+<net name="PA27" class="0">
+<segment>
+<pinref part="JP4" gate="G$1" pin="8"/>
+<wire x1="195.58" y1="40.64" x2="205.74" y2="40.64" width="0.1524" layer="91"/>
+<label x="195.58" y="40.64" size="1.27" layer="95" rot="R180" xref="yes"/>
+</segment>
+<segment>
+<wire x1="139.7" y1="17.78" x2="124.46" y2="17.78" width="0.1524" layer="91"/>
+<label x="127" y="17.78" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PA27/I15"/>
+</segment>
+</net>
+<net name="A0" class="0">
+<segment>
+<pinref part="JP2" gate="A" pin="9"/>
+<wire x1="241.3" y1="50.8" x2="248.92" y2="50.8" width="0.1524" layer="91"/>
+<label x="241.3" y="50.8" size="1.27" layer="95" rot="R180" xref="yes"/>
+</segment>
+<segment>
+<wire x1="15.24" y1="83.82" x2="22.86" y2="83.82" width="0.1524" layer="91"/>
+<label x="17.78" y="83.82" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PB04/I4/AIN12"/>
+</segment>
+</net>
+<net name="A7" class="0">
+<segment>
+<pinref part="JP2" gate="A" pin="10"/>
+<label x="241.3" y="53.34" size="1.27" layer="95" rot="R180" xref="yes"/>
+<wire x1="248.92" y1="53.34" x2="241.3" y2="53.34" width="0.1524" layer="91"/>
+</segment>
+<segment>
+<wire x1="7.62" y1="81.28" x2="22.86" y2="81.28" width="0.1524" layer="91"/>
+<label x="10.16" y="81.28" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PB05/I5/AIN13"/>
+</segment>
+</net>
+<net name="A8" class="0">
+<segment>
+<pinref part="JP2" gate="A" pin="8"/>
+<label x="241.3" y="48.26" size="1.27" layer="95" rot="R180" xref="yes"/>
+<wire x1="248.92" y1="48.26" x2="241.3" y2="48.26" width="0.1524" layer="91"/>
+</segment>
+<segment>
+<wire x1="139.7" y1="78.74" x2="124.46" y2="78.74" width="0.1524" layer="91"/>
+<label x="127" y="78.74" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PA02/I2/AIN0"/>
+</segment>
+</net>
+<net name="TX" class="0">
+<segment>
+<pinref part="JP2" gate="A" pin="2"/>
+<wire x1="241.3" y1="33.02" x2="248.92" y2="33.02" width="0.1524" layer="91"/>
+<label x="241.3" y="33.02" size="1.27" layer="95" rot="R180" xref="yes"/>
+</segment>
+<segment>
+<wire x1="12.7" y1="50.8" x2="22.86" y2="50.8" width="0.1524" layer="91"/>
+<label x="15.24" y="50.8" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PB22/I6/SERCOM0.2"/>
+</segment>
+</net>
+<net name="RX" class="0">
+<segment>
+<pinref part="JP2" gate="A" pin="3"/>
+<label x="241.3" y="35.56" size="1.27" layer="95" rot="R180" xref="yes"/>
+<wire x1="248.92" y1="35.56" x2="241.3" y2="35.56" width="0.1524" layer="91"/>
+</segment>
+<segment>
+<wire x1="22.86" y1="48.26" x2="12.7" y2="48.26" width="0.1524" layer="91"/>
+<label x="15.24" y="48.26" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PB23/I7/SERCOM0.3"/>
+</segment>
+</net>
+<net name="A4/MISO" class="0">
+<segment>
+<wire x1="241.3" y1="38.1" x2="248.92" y2="38.1" width="0.1524" layer="91"/>
+<pinref part="JP2" gate="A" pin="4"/>
+<label x="241.3" y="38.1" size="1.27" layer="95" rot="R180" xref="yes"/>
+</segment>
+<segment>
+<wire x1="22.86" y1="40.64" x2="7.62" y2="40.64" width="0.1524" layer="91"/>
+<label x="10.16" y="40.64" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PB00/I0/AIN8/SERCOM3.2"/>
+</segment>
+</net>
+<net name="A2/MOSI" class="0">
+<segment>
+<pinref part="JP2" gate="A" pin="5"/>
+<label x="241.3" y="40.64" size="1.27" layer="95" rot="R180" xref="yes"/>
+<wire x1="248.92" y1="40.64" x2="241.3" y2="40.64" width="0.1524" layer="91"/>
+</segment>
+<segment>
+<wire x1="22.86" y1="35.56" x2="7.62" y2="35.56" width="0.1524" layer="91"/>
+<label x="10.16" y="35.56" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PB02/I2/AIN10/SERCOM3.0"/>
+</segment>
+</net>
+<net name="A1/SCK" class="0">
+<segment>
+<pinref part="JP2" gate="A" pin="6"/>
+<label x="241.3" y="43.18" size="1.27" layer="95" rot="R180" xref="yes"/>
+<wire x1="248.92" y1="43.18" x2="241.3" y2="43.18" width="0.1524" layer="91"/>
+</segment>
+<segment>
+<wire x1="22.86" y1="38.1" x2="7.62" y2="38.1" width="0.1524" layer="91"/>
+<label x="10.16" y="38.1" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PB01/I1/AIN9/SERCOM3.3"/>
+</segment>
+</net>
+<net name="A3" class="0">
+<segment>
+<label x="241.3" y="45.72" size="1.27" layer="95" rot="R180" xref="yes"/>
+<wire x1="248.92" y1="45.72" x2="241.3" y2="45.72" width="0.1524" layer="91"/>
+<pinref part="JP2" gate="A" pin="7"/>
+</segment>
+<segment>
+<wire x1="22.86" y1="33.02" x2="15.24" y2="33.02" width="0.1524" layer="91"/>
+<label x="17.78" y="33.02" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PB03/I3/AIN11/SERCOM3.1"/>
+</segment>
+</net>
+<net name="SWCLK" class="0">
+<segment>
+<wire x1="66.04" y1="114.3" x2="35.56" y2="114.3" width="0.1524" layer="91"/>
+<label x="35.56" y="114.3" size="1.778" layer="95"/>
+<pinref part="J3" gate="G$1" pin="SWDCLK"/>
+<pinref part="R6" gate="G$1" pin="1"/>
+<pinref part="TP6" gate="G$1" pin="P$1"/>
+<junction x="66.04" y="114.3"/>
+</segment>
+<segment>
+<label x="127" y="15.24" size="1.778" layer="95"/>
+<wire x1="124.46" y1="15.24" x2="139.7" y2="15.24" width="0.1524" layer="91"/>
+<pinref part="U3" gate="A" pin="PA30/I10/SERCOM1.2/SWCLK"/>
+</segment>
+<segment>
+<pinref part="JP4" gate="G$1" pin="10"/>
+<wire x1="195.58" y1="35.56" x2="205.74" y2="35.56" width="0.1524" layer="91"/>
+<label x="195.58" y="35.56" size="1.27" layer="95" rot="R180" xref="yes"/>
+</segment>
+</net>
+<net name="SWDIO" class="0">
+<segment>
+<label x="35.56" y="116.84" size="1.778" layer="95"/>
+<wire x1="35.56" y1="116.84" x2="53.34" y2="116.84" width="0.1524" layer="91"/>
+<pinref part="J3" gate="G$1" pin="SWDIO"/>
+<pinref part="TP7" gate="G$1" pin="P$1"/>
+</segment>
+<segment>
+<label x="127" y="12.7" size="1.778" layer="95"/>
+<wire x1="124.46" y1="12.7" x2="139.7" y2="12.7" width="0.1524" layer="91"/>
+<pinref part="U3" gate="A" pin="PA31/I11/SERCOM1.3/SWDIO"/>
+</segment>
+<segment>
+<pinref part="JP4" gate="G$1" pin="9"/>
+<wire x1="195.58" y1="38.1" x2="205.74" y2="38.1" width="0.1524" layer="91"/>
+<label x="195.58" y="38.1" size="1.27" layer="95" rot="R180" xref="yes"/>
+</segment>
+</net>
+<net name="SEG0" class="3">
+<segment>
+<wire x1="154.94" y1="111.76" x2="154.94" y2="99.06" width="0.1524" layer="91"/>
+<label x="154.94" y="109.22" size="1.778" layer="95" rot="MR270"/>
+<pinref part="U$4" gate="G$1" pin="27"/>
+</segment>
+<segment>
+<wire x1="7.62" y1="71.12" x2="22.86" y2="71.12" width="0.1524" layer="91"/>
+<label x="10.16" y="71.12" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PB09/I9/AIN3/SERCOM3.1/SLCD[3]"/>
+</segment>
+</net>
+<net name="SEG1" class="3">
+<segment>
+<wire x1="152.4" y1="111.76" x2="152.4" y2="99.06" width="0.1524" layer="91"/>
+<label x="152.4" y="109.22" size="1.778" layer="95" rot="MR270"/>
+<pinref part="U$4" gate="G$1" pin="26"/>
+</segment>
+<segment>
+<wire x1="124.46" y1="71.12" x2="139.7" y2="71.12" width="0.1524" layer="91"/>
+<label x="127" y="71.12" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PA05/I5/AIN5/SERCOM0.1/SLCD[5]"/>
+</segment>
+</net>
+<net name="SEG4" class="3">
+<segment>
+<wire x1="144.78" y1="111.76" x2="144.78" y2="99.06" width="0.1524" layer="91"/>
+<label x="144.78" y="109.22" size="1.778" layer="95" rot="MR270"/>
+<pinref part="U$4" gate="G$1" pin="23"/>
+</segment>
+<segment>
+<wire x1="124.46" y1="60.96" x2="139.7" y2="60.96" width="0.1524" layer="91"/>
+<label x="127" y="60.96" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PA09/I9/SERCOM0.1/SLCD[12]"/>
+</segment>
+</net>
+<net name="SEG5" class="3">
+<segment>
+<wire x1="124.46" y1="58.42" x2="139.7" y2="58.42" width="0.1524" layer="91"/>
+<label x="127" y="58.42" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PA10/I10/SERCOM0.2/SLCD[13]"/>
+</segment>
+<segment>
+<wire x1="142.24" y1="111.76" x2="142.24" y2="99.06" width="0.1524" layer="91"/>
+<label x="142.24" y="109.22" size="1.778" layer="95" rot="MR270"/>
+<pinref part="U$4" gate="G$1" pin="22"/>
+</segment>
+</net>
+<net name="SEG6" class="3">
+<segment>
+<wire x1="124.46" y1="55.88" x2="139.7" y2="55.88" width="0.1524" layer="91"/>
+<label x="127" y="55.88" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PA11/I11/SERCOM0.3/SLCD[14]"/>
+</segment>
+<segment>
+<wire x1="139.7" y1="111.76" x2="139.7" y2="99.06" width="0.1524" layer="91"/>
+<label x="139.7" y="109.22" size="1.778" layer="95" rot="MR270"/>
+<pinref part="U$4" gate="G$1" pin="21"/>
+</segment>
+</net>
+<net name="SEG7" class="3">
+<segment>
+<wire x1="7.62" y1="68.58" x2="22.86" y2="68.58" width="0.1524" layer="91"/>
+<label x="10.16" y="68.58" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PB11/I11/SERCOM3.3/SLCD[21]"/>
+</segment>
+<segment>
+<wire x1="137.16" y1="111.76" x2="137.16" y2="99.06" width="0.1524" layer="91"/>
+<label x="137.16" y="109.22" size="1.778" layer="95" rot="MR270"/>
+<pinref part="U$4" gate="G$1" pin="20"/>
+</segment>
+</net>
+<net name="SEG11" class="3">
+<segment>
+<wire x1="22.86" y1="58.42" x2="7.62" y2="58.42" width="0.1524" layer="91"/>
+<label x="10.16" y="58.42" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PB15/I15/SERCOM3.3/SLCD[25]"/>
+</segment>
+<segment>
+<wire x1="127" y1="111.76" x2="127" y2="99.06" width="0.1524" layer="91"/>
+<label x="127" y="109.22" size="1.778" layer="95" rot="MR270"/>
+<pinref part="U$4" gate="G$1" pin="16"/>
+</segment>
+</net>
+<net name="SEG2" class="3">
+<segment>
+<wire x1="149.86" y1="111.76" x2="149.86" y2="99.06" width="0.1524" layer="91"/>
+<label x="149.86" y="109.22" size="1.778" layer="95" rot="MR270"/>
+<pinref part="U$4" gate="G$1" pin="25"/>
+</segment>
+<segment>
+<wire x1="124.46" y1="68.58" x2="139.7" y2="68.58" width="0.1524" layer="91"/>
+<label x="127" y="68.58" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PA06/I6/AIN6/SERCOM0.2/SLCD[6]"/>
+</segment>
+</net>
+<net name="SEG3" class="3">
+<segment>
+<wire x1="147.32" y1="111.76" x2="147.32" y2="99.06" width="0.1524" layer="91"/>
+<label x="147.32" y="109.22" size="1.778" layer="95" rot="MR270"/>
+<pinref part="U$4" gate="G$1" pin="24"/>
+</segment>
+<segment>
+<wire x1="124.46" y1="63.5" x2="139.7" y2="63.5" width="0.1524" layer="91"/>
+<label x="127" y="63.5" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PA08/NMI/SERCOM0.0/SLCD[11]"/>
+</segment>
+</net>
+<net name="SEG12" class="3">
+<segment>
+<wire x1="139.7" y1="48.26" x2="124.46" y2="48.26" width="0.1524" layer="91"/>
+<label x="127" y="48.26" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PA14/I14/SERCOM3.2/SLCD[30]"/>
+</segment>
+<segment>
+<wire x1="124.46" y1="111.76" x2="124.46" y2="99.06" width="0.1524" layer="91"/>
+<label x="124.46" y="109.22" size="1.778" layer="95" rot="MR270"/>
+<pinref part="U$4" gate="G$1" pin="15"/>
+</segment>
+</net>
+<net name="SEG18" class="3">
+<segment>
+<wire x1="7.62" y1="55.88" x2="22.86" y2="55.88" width="0.1524" layer="91"/>
+<label x="10.16" y="55.88" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PB16/I0/SLCD[42]"/>
+</segment>
+<segment>
+<wire x1="101.6" y1="111.76" x2="101.6" y2="99.06" width="0.1524" layer="91"/>
+<label x="101.6" y="109.22" size="1.778" layer="95" rot="MR270"/>
+<pinref part="U$4" gate="G$1" pin="6"/>
+</segment>
+</net>
+<net name="SEG19" class="3">
+<segment>
+<wire x1="7.62" y1="53.34" x2="22.86" y2="53.34" width="0.1524" layer="91"/>
+<label x="10.16" y="53.34" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PB17/I1/SLCD[43]"/>
+</segment>
+<segment>
+<wire x1="99.06" y1="111.76" x2="99.06" y2="99.06" width="0.1524" layer="91"/>
+<label x="99.06" y="109.22" size="1.778" layer="95" rot="MR270"/>
+<pinref part="U$4" gate="G$1" pin="5"/>
+</segment>
+</net>
+<net name="AREF" class="0">
+<segment>
+<pinref part="JP2" gate="A" pin="14"/>
+<label x="241.3" y="63.5" size="1.27" layer="95" rot="R180" xref="yes"/>
+<wire x1="248.92" y1="63.5" x2="241.3" y2="63.5" width="0.1524" layer="91"/>
+</segment>
+<segment>
+<wire x1="124.46" y1="76.2" x2="147.32" y2="76.2" width="0.1524" layer="91"/>
+<label x="127" y="76.2" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PA03/I3/AIN1"/>
+<pinref part="C12" gate="G$1" pin="1"/>
+</segment>
+</net>
+<net name="COM0" class="3">
+<segment>
+<wire x1="104.14" y1="99.06" x2="104.14" y2="111.76" width="0.1524" layer="91"/>
+<label x="104.14" y="109.22" size="1.778" layer="95" rot="MR270"/>
+<pinref part="U$4" gate="G$1" pin="7"/>
+</segment>
+<segment>
+<wire x1="22.86" y1="78.74" x2="7.62" y2="78.74" width="0.1524" layer="91"/>
+<label x="10.16" y="78.74" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PB06/I6/AIN14/SLCD[0]"/>
+</segment>
+</net>
+<net name="COM1" class="3">
+<segment>
+<wire x1="106.68" y1="99.06" x2="106.68" y2="111.76" width="0.1524" layer="91"/>
+<label x="106.68" y="109.22" size="1.778" layer="95" rot="MR270"/>
+<pinref part="U$4" gate="G$1" pin="8"/>
+</segment>
+<segment>
+<wire x1="22.86" y1="76.2" x2="7.62" y2="76.2" width="0.1524" layer="91"/>
+<label x="10.16" y="76.2" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PB07/I7/AIN15/SLCD[1]"/>
+</segment>
+</net>
+<net name="SEG13" class="3">
+<segment>
+<wire x1="124.46" y1="45.72" x2="139.7" y2="45.72" width="0.1524" layer="91"/>
+<label x="127" y="45.72" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PA15/I15/SERCOM3.3/SLCD[31]"/>
+</segment>
+<segment>
+<wire x1="121.92" y1="111.76" x2="121.92" y2="99.06" width="0.1524" layer="91"/>
+<label x="121.92" y="109.22" size="1.778" layer="95" rot="MR270"/>
+<pinref part="U$4" gate="G$1" pin="14"/>
+</segment>
+</net>
+<net name="SEG14" class="3">
+<segment>
+<wire x1="124.46" y1="43.18" x2="139.7" y2="43.18" width="0.1524" layer="91"/>
+<label x="127" y="43.18" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PA16/I0/SERCOM1+2.0/SLCD[32]"/>
+</segment>
+<segment>
+<wire x1="119.38" y1="111.76" x2="119.38" y2="99.06" width="0.1524" layer="91"/>
+<label x="119.38" y="109.22" size="1.778" layer="95" rot="MR270"/>
+<pinref part="U$4" gate="G$1" pin="13"/>
+</segment>
+</net>
+<net name="SEG15" class="3">
+<segment>
+<wire x1="124.46" y1="40.64" x2="139.7" y2="40.64" width="0.1524" layer="91"/>
+<label x="127" y="40.64" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PA17/I1/SERCOM1+2.1/SLCD[33]"/>
+</segment>
+<segment>
+<wire x1="116.84" y1="111.76" x2="116.84" y2="99.06" width="0.1524" layer="91"/>
+<label x="116.84" y="109.22" size="1.778" layer="95" rot="MR270"/>
+<pinref part="U$4" gate="G$1" pin="12"/>
+</segment>
+</net>
+<net name="SEG16" class="3">
+<segment>
+<wire x1="124.46" y1="38.1" x2="139.7" y2="38.1" width="0.1524" layer="91"/>
+<label x="127" y="38.1" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PA18/I2/SERCOM1+2.2/SLCD[34]"/>
+</segment>
+<segment>
+<wire x1="114.3" y1="111.76" x2="114.3" y2="99.06" width="0.1524" layer="91"/>
+<label x="114.3" y="109.22" size="1.778" layer="95" rot="MR270"/>
+<pinref part="U$4" gate="G$1" pin="11"/>
+</segment>
+</net>
+<net name="SEG17" class="3">
+<segment>
+<wire x1="124.46" y1="35.56" x2="139.7" y2="35.56" width="0.1524" layer="91"/>
+<label x="127" y="35.56" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PA19/I3/SERCOM1+2.3/SLCD[35]"/>
+</segment>
+<segment>
+<wire x1="111.76" y1="111.76" x2="111.76" y2="99.06" width="0.1524" layer="91"/>
+<label x="111.76" y="109.22" size="1.778" layer="95" rot="MR270"/>
+<pinref part="U$4" gate="G$1" pin="10"/>
+</segment>
+</net>
+<net name="VLCD" class="0">
+<segment>
+<pinref part="C11" gate="G$1" pin="2"/>
+<wire x1="193.04" y1="88.9" x2="195.58" y2="88.9" width="0.1524" layer="91"/>
+<pinref part="U3" gate="B" pin="VLCD"/>
+</segment>
+</net>
+<net name="VDDCORE" class="1">
+<segment>
+<wire x1="195.58" y1="93.98" x2="185.42" y2="93.98" width="0.1524" layer="91"/>
+<pinref part="C10" gate="G$1" pin="1"/>
+<pinref part="L1" gate="G$1" pin="1"/>
+<wire x1="185.42" y1="99.06" x2="185.42" y2="93.98" width="0.1524" layer="91"/>
+<junction x="185.42" y="93.98"/>
+<pinref part="U3" gate="B" pin="VDDCORE"/>
+</segment>
+</net>
+<net name="COM2" class="3">
+<segment>
+<wire x1="109.22" y1="99.06" x2="109.22" y2="111.76" width="0.1524" layer="91"/>
+<label x="109.22" y="109.22" size="1.778" layer="95" rot="MR270"/>
+<pinref part="U$4" gate="G$1" pin="9"/>
+</segment>
+<segment>
+<wire x1="22.86" y1="73.66" x2="7.62" y2="73.66" width="0.1524" layer="91"/>
+<label x="10.16" y="73.66" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PB08/I8/AIN2/SERCOM3.0/SLCD[2]"/>
+</segment>
+</net>
+<net name="SEG23" class="3">
+<segment>
+<wire x1="124.46" y1="25.4" x2="139.7" y2="25.4" width="0.1524" layer="91"/>
+<label x="127" y="25.4" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PA23/I7/SERCOM0.3+2.1(I2C)/SLCD[51]"/>
+</segment>
+<segment>
+<wire x1="88.9" y1="111.76" x2="88.9" y2="99.06" width="0.1524" layer="91"/>
+<label x="88.9" y="109.22" size="1.778" layer="95" rot="MR270"/>
+<pinref part="U$4" gate="G$1" pin="1"/>
+</segment>
+</net>
+<net name="SEG21" class="3">
+<segment>
+<wire x1="124.46" y1="30.48" x2="139.7" y2="30.48" width="0.1524" layer="91"/>
+<label x="127" y="30.48" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PA21/I5/SERCOM0.1+2.3/SLCD[49]"/>
+</segment>
+<segment>
+<wire x1="93.98" y1="111.76" x2="93.98" y2="99.06" width="0.1524" layer="91"/>
+<label x="93.98" y="109.22" size="1.778" layer="95" rot="MR270"/>
+<pinref part="U$4" gate="G$1" pin="3"/>
+</segment>
+</net>
+<net name="SEG20" class="3">
+<segment>
+<wire x1="124.46" y1="33.02" x2="139.7" y2="33.02" width="0.1524" layer="91"/>
+<label x="127" y="33.02" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PA20/I4/SERCOM0.0+2.2/SLCD[48]"/>
+</segment>
+<segment>
+<wire x1="96.52" y1="111.76" x2="96.52" y2="99.06" width="0.1524" layer="91"/>
+<label x="96.52" y="109.22" size="1.778" layer="95" rot="MR270"/>
+<pinref part="U$4" gate="G$1" pin="4"/>
+</segment>
+</net>
+<net name="PA13" class="0">
+<segment>
+<pinref part="JP4" gate="G$1" pin="5"/>
+<wire x1="195.58" y1="48.26" x2="205.74" y2="48.26" width="0.1524" layer="91"/>
+<label x="195.58" y="48.26" size="1.27" layer="95" rot="R180" xref="yes"/>
+</segment>
+<segment>
+<wire x1="139.7" y1="50.8" x2="124.46" y2="50.8" width="0.1524" layer="91"/>
+<label x="127" y="50.8" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PA13/I13/SERCOM3.1(I2C)/SLCD[29]"/>
+</segment>
+</net>
+<net name="PA12" class="0">
+<segment>
+<pinref part="JP4" gate="G$1" pin="4"/>
+<wire x1="205.74" y1="50.8" x2="195.58" y2="50.8" width="0.1524" layer="91"/>
+<label x="195.58" y="50.8" size="1.27" layer="95" rot="R180" xref="yes"/>
+</segment>
+<segment>
+<wire x1="139.7" y1="53.34" x2="124.46" y2="53.34" width="0.1524" layer="91"/>
+<label x="127" y="53.34" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PA12/I12/SERCOM3.0(I2C)/SLCD[28]"/>
+</segment>
+<segment>
+<pinref part="R7" gate="G$1" pin="1"/>
+<wire x1="167.64" y1="147.32" x2="167.64" y2="139.7" width="0.1524" layer="91"/>
+<label x="167.64" y="139.7" size="1.778" layer="95" rot="R90"/>
+</segment>
+</net>
+<net name="VDDOUT" class="1">
+<segment>
+<pinref part="L1" gate="G$1" pin="2"/>
+<pinref part="U3" gate="B" pin="VDDOUT"/>
+</segment>
+</net>
+<net name="SEG8" class="3">
+<segment>
+<wire x1="7.62" y1="66.04" x2="22.86" y2="66.04" width="0.1524" layer="91"/>
+<label x="10.16" y="66.04" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PB12/I12/SERCOM3.0/SLCD[22]"/>
+</segment>
+<segment>
+<wire x1="134.62" y1="111.76" x2="134.62" y2="99.06" width="0.1524" layer="91"/>
+<label x="134.62" y="109.22" size="1.778" layer="95" rot="MR270"/>
+<pinref part="U$4" gate="G$1" pin="19"/>
+</segment>
+</net>
+<net name="SEG9" class="3">
+<segment>
+<wire x1="7.62" y1="63.5" x2="22.86" y2="63.5" width="0.1524" layer="91"/>
+<label x="10.16" y="63.5" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PB13/SERCOM3.1/SLCD[23]"/>
+</segment>
+<segment>
+<wire x1="132.08" y1="111.76" x2="132.08" y2="99.06" width="0.1524" layer="91"/>
+<label x="132.08" y="109.22" size="1.778" layer="95" rot="MR270"/>
+<pinref part="U$4" gate="G$1" pin="18"/>
+</segment>
+</net>
+<net name="SEG10" class="3">
+<segment>
+<wire x1="7.62" y1="60.96" x2="22.86" y2="60.96" width="0.1524" layer="91"/>
+<label x="10.16" y="60.96" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PB14/I14/SERCOM3.2/SLCD[24]"/>
+</segment>
+<segment>
+<wire x1="129.54" y1="111.76" x2="129.54" y2="99.06" width="0.1524" layer="91"/>
+<label x="129.54" y="109.22" size="1.778" layer="95" rot="MR270"/>
+<pinref part="U$4" gate="G$1" pin="17"/>
+</segment>
+</net>
+<net name="SEG22" class="3">
+<segment>
+<wire x1="124.46" y1="27.94" x2="139.7" y2="27.94" width="0.1524" layer="91"/>
+<label x="127" y="27.94" size="1.778" layer="95"/>
+<pinref part="U3" gate="A" pin="PA22/I6/SERCOM0.2+2.0(I2C)/SLCD[50]"/>
+</segment>
+<segment>
+<wire x1="91.44" y1="111.76" x2="91.44" y2="99.06" width="0.1524" layer="91"/>
+<label x="91.44" y="109.22" size="1.778" layer="95" rot="MR270"/>
+<pinref part="U$4" gate="G$1" pin="2"/>
+</segment>
+</net>
+<net name="N$2" class="0">
+<segment>
+<pinref part="R5" gate="G$1" pin="2"/>
+<pinref part="J1" gate="G$1" pin="CC1"/>
+</segment>
+</net>
+<net name="N$3" class="0">
+<segment>
+<pinref part="J1" gate="G$1" pin="CC2"/>
+<pinref part="R9" gate="G$1" pin="1"/>
+</segment>
+</net>
+</nets>
+</sheet>
+</sheets>
+<errors>
+<approved hash="102,1,60.96,154.94,OUT,3.3V,,,,"/>
+<approved hash="104,1,40.64,154.94,U2,IN,N$7,,,"/>
+<approved hash="104,1,40.64,30.48,U3,VDD,VBUS,,,"/>
+<approved hash="104,1,66.04,25.4,U3,VSS,GND,,,"/>
+<approved hash="202,1,218.44,129.54,IC1G$1,RI,,,,"/>
+<approved hash="104,1,187.96,154.94,IC1G$1,VIO,3.3V,,,"/>
+<approved hash="104,1,187.96,152.4,IC1G$1,VDD,3.3V,,,"/>
+<approved hash="104,1,187.96,149.86,IC1G$1,REGIN,3.3V,,,"/>
+<approved hash="202,1,218.44,127,IC1G$1,DCD,,,,"/>
+<approved hash="202,1,218.44,121.92,IC1G$1,DSR,,,,"/>
+<approved hash="202,1,218.44,111.76,IC1G$1,CTS,,,,"/>
+<approved hash="104,1,243.84,114.3,IC1G$2,TP,GND,,,"/>
+<approved hash="113,1,195.275,19.7358,FRAME1,,,,,"/>
+<approved hash="113,1,235.983,65.9088,JP1,,,,,"/>
+<approved hash="113,1,183.117,68.7112,JP3,,,,,"/>
+</errors>
+</schematic>
+</drawing>
+<compatibility>
+<note version="6.3" minversion="6.2.2" severity="warning">
+Since Version 6.2.2 text objects can contain more than one line,
+which will not be processed correctly with this version.
+</note>
+<note version="8.2" severity="warning">
+Since Version 8.2, EAGLE supports online libraries. The ids
+of those online libraries will not be understood (or retained)
+with this version.
+</note>
+<note version="8.3" severity="warning">
+Since Version 8.3, EAGLE supports URNs for individual library
+assets (packages, symbols, and devices). The URNs of those assets
+will not be understood (or retained) with this version.
+</note>
+</compatibility>
+</eagle>
diff --git a/PCB/Sensor Boards/OSO-MISC-21-015 Temperature and Light Board.brd b/PCB/Sensor Boards/OSO-MISC-21-015 Temperature and Light Board.brd
new file mode 100644
index 00000000..03809c7f
--- /dev/null
+++ b/PCB/Sensor Boards/OSO-MISC-21-015 Temperature and Light Board.brd
@@ -0,0 +1,621 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE eagle SYSTEM "eagle.dtd">
+<eagle version="9.6.2">
+<drawing>
+<settings>
+<setting alwaysvectorfont="yes"/>
+<setting keepoldvectorfont="yes"/>
+<setting verticaltext="up"/>
+</settings>
+<grid distance="0.01" unitdist="inch" unit="inch" style="lines" multiple="1" display="no" altdistance="0.001" altunitdist="inch" altunit="inch"/>
+<layers>
+<layer number="1" name="Top" color="4" fill="1" visible="yes" active="yes"/>
+<layer number="2" name="Route2" color="1" fill="3" visible="no" active="no"/>
+<layer number="3" name="Route3" color="4" fill="3" visible="no" active="no"/>
+<layer number="4" name="Route4" color="1" fill="4" visible="no" active="no"/>
+<layer number="5" name="Route5" color="4" fill="4" visible="no" active="no"/>
+<layer number="6" name="Route6" color="1" fill="8" visible="no" active="no"/>
+<layer number="7" name="Route7" color="4" fill="8" visible="no" active="no"/>
+<layer number="8" name="Route8" color="1" fill="2" visible="no" active="no"/>
+<layer number="9" name="Route9" color="4" fill="2" visible="no" active="no"/>
+<layer number="10" name="Route10" color="1" fill="7" visible="no" active="no"/>
+<layer number="11" name="Route11" color="4" fill="7" visible="no" active="no"/>
+<layer number="12" name="Route12" color="1" fill="5" visible="no" active="no"/>
+<layer number="13" name="Route13" color="4" fill="5" visible="no" active="no"/>
+<layer number="14" name="Route14" color="1" fill="6" visible="no" active="no"/>
+<layer number="15" name="Route15" color="4" fill="6" visible="no" active="no"/>
+<layer number="16" name="Bottom" color="1" fill="1" visible="yes" active="yes"/>
+<layer number="17" name="Pads" color="2" fill="1" visible="yes" active="yes"/>
+<layer number="18" name="Vias" color="2" fill="1" visible="yes" active="yes"/>
+<layer number="19" name="Unrouted" color="6" fill="1" visible="yes" active="yes"/>
+<layer number="20" name="Dimension" color="15" fill="1" visible="yes" active="yes"/>
+<layer number="21" name="tPlace" color="14" fill="1" visible="no" active="yes"/>
+<layer number="22" name="bPlace" color="13" fill="1" visible="yes" active="yes"/>
+<layer number="23" name="tOrigins" color="15" fill="1" visible="no" active="yes"/>
+<layer number="24" name="bOrigins" color="15" fill="1" visible="yes" active="yes"/>
+<layer number="25" name="tNames" color="7" fill="1" visible="no" active="yes"/>
+<layer number="26" name="bNames" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="27" name="tValues" color="7" fill="1" visible="no" active="yes"/>
+<layer number="28" name="bValues" color="7" fill="1" visible="no" active="yes"/>
+<layer number="29" name="tStop" color="7" fill="3" visible="no" active="yes"/>
+<layer number="30" name="bStop" color="7" fill="6" visible="no" active="yes"/>
+<layer number="31" name="tCream" color="7" fill="4" visible="no" active="yes"/>
+<layer number="32" name="bCream" color="7" fill="5" visible="no" active="yes"/>
+<layer number="33" name="tFinish" color="6" fill="3" visible="no" active="yes"/>
+<layer number="34" name="bFinish" color="6" fill="6" visible="no" active="yes"/>
+<layer number="35" name="tGlue" color="7" fill="4" visible="no" active="yes"/>
+<layer number="36" name="bGlue" color="7" fill="5" visible="no" active="yes"/>
+<layer number="37" name="tTest" color="7" fill="1" visible="no" active="yes"/>
+<layer number="38" name="bTest" color="7" fill="1" visible="no" active="yes"/>
+<layer number="39" name="tKeepout" color="4" fill="11" visible="no" active="yes"/>
+<layer number="40" name="bKeepout" color="1" fill="11" visible="yes" active="yes"/>
+<layer number="41" name="tRestrict" color="4" fill="10" visible="no" active="yes"/>
+<layer number="42" name="bRestrict" color="1" fill="10" visible="yes" active="yes"/>
+<layer number="43" name="vRestrict" color="2" fill="10" visible="no" active="yes"/>
+<layer number="44" name="Drills" color="7" fill="1" visible="no" active="yes"/>
+<layer number="45" name="Holes" color="7" fill="1" visible="no" active="yes"/>
+<layer number="46" name="Milling" color="3" fill="1" visible="no" active="yes"/>
+<layer number="47" name="Measures" color="7" fill="1" visible="no" active="yes"/>
+<layer number="48" name="Document" color="7" fill="1" visible="no" active="yes"/>
+<layer number="49" name="Reference" color="7" fill="1" visible="no" active="yes"/>
+<layer number="50" name="dxf" color="7" fill="1" visible="no" active="yes"/>
+<layer number="51" name="tDocu" color="15" fill="1" visible="no" active="yes"/>
+<layer number="52" name="bDocu" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="53" name="tGND_GNDA" color="7" fill="9" visible="no" active="no"/>
+<layer number="54" name="bGND_GNDA" color="1" fill="9" visible="no" active="no"/>
+<layer number="56" name="wert" color="7" fill="1" visible="no" active="yes"/>
+<layer number="57" name="tCAD" color="7" fill="1" visible="no" active="no"/>
+<layer number="58" name="b3D" color="7" fill="1" visible="no" active="no"/>
+<layer number="59" name="tCarbon" color="7" fill="1" visible="no" active="no"/>
+<layer number="60" name="bCarbon" color="7" fill="1" visible="no" active="no"/>
+<layer number="61" name="stand" color="7" fill="1" visible="no" active="no"/>
+<layer number="88" name="SimResults" color="9" fill="1" visible="no" active="no"/>
+<layer number="89" name="SimProbes" color="9" fill="1" visible="no" active="no"/>
+<layer number="90" name="Modules" color="7" fill="1" visible="no" active="no"/>
+<layer number="91" name="Nets" color="2" fill="1" visible="no" active="no"/>
+<layer number="92" name="Busses" color="1" fill="1" visible="no" active="no"/>
+<layer number="93" name="Pins" color="2" fill="1" visible="no" active="no"/>
+<layer number="94" name="Symbols" color="4" fill="1" visible="no" active="no"/>
+<layer number="95" name="Names" color="7" fill="1" visible="no" active="no"/>
+<layer number="96" name="Values" color="7" fill="1" visible="no" active="no"/>
+<layer number="97" name="Info" color="7" fill="1" visible="no" active="no"/>
+<layer number="98" name="Guide" color="6" fill="1" visible="no" active="no"/>
+<layer number="99" name="SpiceOrder" color="7" fill="1" visible="no" active="no"/>
+<layer number="100" name="Muster" color="7" fill="1" visible="no" active="no"/>
+<layer number="101" name="Patch_Top" color="12" fill="4" visible="no" active="yes"/>
+<layer number="102" name="Vscore" color="7" fill="1" visible="no" active="yes"/>
+<layer number="103" name="fp3" color="7" fill="1" visible="no" active="yes"/>
+<layer number="104" name="Name" color="7" fill="1" visible="no" active="yes"/>
+<layer number="105" name="Beschreib" color="9" fill="1" visible="no" active="yes"/>
+<layer number="106" name="BGA-Top" color="4" fill="1" visible="no" active="yes"/>
+<layer number="107" name="BD-Top" color="5" fill="1" visible="no" active="yes"/>
+<layer number="108" name="fp8" color="7" fill="1" visible="no" active="yes"/>
+<layer number="109" name="fp9" color="7" fill="1" visible="no" active="yes"/>
+<layer number="110" name="fp0" color="7" fill="1" visible="no" active="yes"/>
+<layer number="111" name="LPC17xx" color="7" fill="1" visible="no" active="yes"/>
+<layer number="112" name="tSilk" color="7" fill="1" visible="no" active="yes"/>
+<layer number="113" name="ReferenceLS" color="7" fill="1" visible="no" active="no"/>
+<layer number="114" name="tPlaceRed" color="7" fill="1" visible="no" active="yes"/>
+<layer number="115" name="FRNTMAAT2" color="7" fill="1" visible="no" active="yes"/>
+<layer number="116" name="Patch_BOT" color="9" fill="4" visible="no" active="yes"/>
+<layer number="117" name="BACKMAAT1" color="7" fill="1" visible="no" active="yes"/>
+<layer number="118" name="Rect_Pads" color="7" fill="1" visible="no" active="no"/>
+<layer number="119" name="KAP_TEKEN" color="7" fill="1" visible="no" active="yes"/>
+<layer number="120" name="KAP_MAAT1" color="7" fill="1" visible="no" active="yes"/>
+<layer number="121" name="_tsilk" color="7" fill="1" visible="no" active="yes"/>
+<layer number="122" name="_bsilk" color="7" fill="1" visible="no" active="yes"/>
+<layer number="123" name="tTestmark" color="7" fill="1" visible="no" active="yes"/>
+<layer number="124" name="bTestmark" color="7" fill="1" visible="no" active="yes"/>
+<layer number="125" name="_tNames" color="7" fill="1" visible="no" active="yes"/>
+<layer number="126" name="_bNames" color="7" fill="1" visible="no" active="yes"/>
+<layer number="127" name="_tValues" color="7" fill="1" visible="no" active="yes"/>
+<layer number="128" name="_bValues" color="7" fill="1" visible="no" active="yes"/>
+<layer number="129" name="Mask" color="7" fill="1" visible="no" active="yes"/>
+<layer number="130" name="SMDSTROOK" color="7" fill="1" visible="no" active="yes"/>
+<layer number="131" name="tAdjust" color="7" fill="1" visible="no" active="yes"/>
+<layer number="132" name="bAdjust" color="7" fill="1" visible="no" active="yes"/>
+<layer number="133" name="bottom_silk" color="7" fill="1" visible="no" active="yes"/>
+<layer number="134" name="silk_top" color="7" fill="1" visible="no" active="yes"/>
+<layer number="135" name="silk_bottom" color="7" fill="1" visible="no" active="yes"/>
+<layer number="136" name="silktop" color="7" fill="1" visible="no" active="yes"/>
+<layer number="137" name="silkbottom" color="7" fill="1" visible="no" active="yes"/>
+<layer number="138" name="EEE" color="7" fill="1" visible="no" active="yes"/>
+<layer number="139" name="_tKeepout" color="7" fill="1" visible="no" active="yes"/>
+<layer number="140" name="mbKeepout" color="7" fill="1" visible="no" active="yes"/>
+<layer number="141" name="ASSEMBLY_TOP" color="7" fill="1" visible="no" active="yes"/>
+<layer number="142" name="mbRestrict" color="7" fill="1" visible="no" active="yes"/>
+<layer number="143" name="PLACE_BOUND_TOP" color="7" fill="1" visible="no" active="yes"/>
+<layer number="144" name="Drill_legend" color="7" fill="1" visible="no" active="yes"/>
+<layer number="145" name="DrillLegend_01-16" color="7" fill="1" visible="no" active="yes"/>
+<layer number="146" name="DrillLegend_01-20" color="7" fill="1" visible="no" active="yes"/>
+<layer number="147" name="PIN_NUMBER" color="7" fill="1" visible="no" active="yes"/>
+<layer number="148" name="mDocument" color="7" fill="1" visible="no" active="yes"/>
+<layer number="149" name="DrillLegend_02-15" color="7" fill="1" visible="no" active="yes"/>
+<layer number="150" name="Notes" color="7" fill="1" visible="no" active="yes"/>
+<layer number="151" name="HeatSink" color="7" fill="1" visible="no" active="yes"/>
+<layer number="152" name="_bDocu" color="7" fill="1" visible="no" active="yes"/>
+<layer number="153" name="FabDoc1" color="6" fill="1" visible="no" active="no"/>
+<layer number="154" name="FabDoc2" color="2" fill="1" visible="no" active="no"/>
+<layer number="155" name="FabDoc3" color="7" fill="15" visible="no" active="no"/>
+<layer number="166" name="AntennaArea" color="7" fill="1" visible="no" active="yes"/>
+<layer number="168" name="4mmHeightArea" color="7" fill="1" visible="no" active="yes"/>
+<layer number="191" name="mNets" color="7" fill="1" visible="no" active="yes"/>
+<layer number="192" name="mBusses" color="7" fill="1" visible="no" active="yes"/>
+<layer number="193" name="mPins" color="7" fill="1" visible="no" active="yes"/>
+<layer number="194" name="mSymbols" color="7" fill="1" visible="no" active="yes"/>
+<layer number="195" name="mNames" color="7" fill="1" visible="no" active="yes"/>
+<layer number="196" name="mValues" color="7" fill="1" visible="no" active="yes"/>
+<layer number="199" name="Contour" color="7" fill="1" visible="no" active="yes"/>
+<layer number="200" name="200bmp" color="14" fill="10" visible="no" active="yes"/>
+<layer number="201" name="201bmp" color="13" fill="1" visible="no" active="yes"/>
+<layer number="202" name="202bmp" color="3" fill="1" visible="no" active="yes"/>
+<layer number="203" name="203bmp" color="4" fill="10" visible="no" active="yes"/>
+<layer number="204" name="204bmp" color="5" fill="10" visible="no" active="yes"/>
+<layer number="205" name="205bmp" color="6" fill="10" visible="no" active="yes"/>
+<layer number="206" name="206bmp" color="7" fill="10" visible="no" active="yes"/>
+<layer number="207" name="207bmp" color="8" fill="10" visible="no" active="yes"/>
+<layer number="208" name="208bmp" color="9" fill="10" visible="no" active="yes"/>
+<layer number="209" name="209bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="210" name="210bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="211" name="211bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="212" name="212bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="213" name="213bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="214" name="214bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="215" name="215bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="216" name="216bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="217" name="217bmp" color="18" fill="1" visible="no" active="no"/>
+<layer number="218" name="218bmp" color="19" fill="1" visible="no" active="no"/>
+<layer number="219" name="219bmp" color="20" fill="1" visible="no" active="no"/>
+<layer number="220" name="220bmp" color="21" fill="1" visible="no" active="no"/>
+<layer number="221" name="221bmp" color="22" fill="1" visible="no" active="no"/>
+<layer number="222" name="222bmp" color="23" fill="1" visible="no" active="no"/>
+<layer number="223" name="223bmp" color="24" fill="1" visible="no" active="no"/>
+<layer number="224" name="224bmp" color="25" fill="1" visible="no" active="no"/>
+<layer number="225" name="225bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="226" name="226bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="227" name="227bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="228" name="228bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="229" name="229bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="230" name="230bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="231" name="Eagle3D_PG1" color="7" fill="1" visible="no" active="no"/>
+<layer number="232" name="Eagle3D_PG2" color="7" fill="1" visible="no" active="no"/>
+<layer number="233" name="Eagle3D_PG3" color="7" fill="1" visible="no" active="no"/>
+<layer number="248" name="Housing" color="7" fill="1" visible="no" active="yes"/>
+<layer number="249" name="Edge" color="7" fill="1" visible="no" active="yes"/>
+<layer number="250" name="Descript" color="7" fill="1" visible="no" active="no"/>
+<layer number="251" name="SMDround" color="7" fill="1" visible="no" active="no"/>
+<layer number="254" name="cooling" color="7" fill="1" visible="no" active="yes"/>
+<layer number="255" name="routoute" color="7" fill="1" visible="no" active="yes"/>
+</layers>
+<board>
+<plain>
+<wire x1="-2.4892" y1="-2.794" x2="-2.7432" y2="-2.54" width="0" layer="20" curve="90"/>
+<wire x1="-2.7432" y1="-2.54" x2="-7.493" y2="-2.54" width="0" layer="20"/>
+<wire x1="-8.128" y1="-1.905" x2="-11.049" y2="-1.905" width="0" layer="20"/>
+<wire x1="-11.049" y1="-1.905" x2="-11.938" y2="-1.016" width="0" layer="20" curve="-90"/>
+<wire x1="-11.938" y1="-1.016" x2="-11.938" y2="2.921" width="0" layer="20"/>
+<wire x1="-11.938" y1="2.921" x2="-11.049" y2="3.81" width="0" layer="20" curve="-90"/>
+<wire x1="-11.049" y1="3.81" x2="2.1082" y2="3.81" width="0" layer="20"/>
+<wire x1="2.1082" y1="3.81" x2="2.4892" y2="3.429" width="0" layer="20" curve="-90"/>
+<wire x1="2.4892" y1="3.429" x2="2.4892" y2="-2.794" width="0" layer="20"/>
+<wire x1="-7.493" y1="-2.54" x2="-8.128" y2="-1.905" width="0" layer="20" curve="90"/>
+<text x="-1.778" y="3.556" size="0.6096" layer="21" font="vector" ratio="18" align="top-center">OSO-MISC-21-015
+Temp + Light</text>
+<wire x1="2.4892" y1="-1.524" x2="-5.715" y2="-1.524" width="0.127" layer="21" style="shortdash"/>
+<wire x1="-6.223" y1="3.048" x2="-6.223" y2="-1.016" width="0.127" layer="21" style="shortdash"/>
+<wire x1="-6.223" y1="-1.016" x2="-5.715" y2="-1.524" width="0.127" layer="21" style="shortdash" curve="90"/>
+<wire x1="-6.223" y1="3.048" x2="-6.985" y2="3.81" width="0.127" layer="21" style="shortdash" curve="90"/>
+<text x="-1.778" y="1.651" size="0.508" layer="21" font="vector" ratio="12" align="top-center">A0: Thermistor !EN
+A2: Temp. Sense
+A3: Phototrans. !EN
+A4: Light Sense</text>
+</plain>
+<libraries>
+<library name="FH19C-9S-0.5SH">
+<description>&lt;b&gt;https://componentsearchengine.com&lt;/b&gt;&lt;p&gt;
+&lt;author&gt;Created by SamacSys&lt;/author&gt;</description>
+<packages>
+<package name="FH19C9S05SH10-FFC">
+<description>&lt;b&gt;FH19C-9S-0.5SH(10)-1&lt;/b&gt;&lt;br&gt;
+</description>
+<smd name="1" x="2" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="2" x="1.5" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="3" x="1" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="4" x="0.5" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="5" x="0" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="6" x="-0.5" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="7" x="-1" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="8" x="-1.5" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="9" x="-2" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<wire x1="-2.4892" y1="0" x2="-2.4892" y2="-3.35" width="0" layer="20"/>
+<wire x1="-2.3392" y1="-3.5" x2="2.3392" y2="-3.5" width="0" layer="20"/>
+<wire x1="2.4892" y1="0" x2="2.4892" y2="-3.35" width="0" layer="20"/>
+<wire x1="-2.3392" y1="-3.5" x2="-2.4892" y2="-3.35" width="0" layer="20" curve="-90"/>
+<wire x1="2.3392" y1="-3.5" x2="2.4892" y2="-3.35" width="0" layer="20" curve="90"/>
+<polygon width="0.1524" layer="30">
+<vertex x="-2.4902" y="-0.9742"/>
+<vertex x="2.4882" y="-0.9742"/>
+<vertex x="2.4892" y="-3.4798"/>
+<vertex x="-2.4892" y="-3.4798"/>
+</polygon>
+</package>
+</packages>
+</library>
+<library name="microbuilder">
+<description>&lt;h2&gt;&lt;b&gt;microBuilder.eu&lt;/b&gt; Eagle Footprint Library&lt;/h2&gt;
+
+&lt;p&gt;Footprints for common components used in our projects and products. This is the same library that we use internally, and it is regularly updated. The newest version can always be found at &lt;b&gt;www.microBuilder.eu&lt;/b&gt;. If you find this library useful, please feel free to purchase something from our online store. Please also note that all holes are optimised for metric drill bits!&lt;/p&gt;
+
+&lt;h3&gt;Obligatory Warning&lt;/h3&gt;
+&lt;p&gt;While it probably goes without saying, there are no guarantees that the footprints or schematic symbols in this library are flawless, and we make no promises of fitness for production, prototyping or any other purpose. These libraries are provided for information puposes only, and are used at your own discretion. While we make every effort to produce accurate footprints, and many of the items found in this library have be proven in production, we can't make any promises of suitability for a specific purpose. If you do find any errors, though, please feel free to contact us at www.microbuilder.eu to let us know about it so that we can update the library accordingly!&lt;/p&gt;
+
+&lt;h3&gt;License&lt;/h3&gt;
+&lt;p&gt;This work is placed in the public domain, and may be freely used for commercial and non-commercial work with the following conditions:&lt;/p&gt;
+&lt;p&gt;THIS SOFTWARE IS PROVIDED ''AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+&lt;/p&gt;</description>
+<packages>
+<package name="_0603">
+<description>&lt;b&gt;0603&lt;/b&gt;</description>
+<wire x1="-0.432" y1="-0.306" x2="0.432" y2="-0.306" width="0.1016" layer="51"/>
+<wire x1="0.432" y1="0.306" x2="-0.432" y2="0.306" width="0.1016" layer="51"/>
+<wire x1="-1.4605" y1="0.635" x2="1.4605" y2="0.635" width="0.2032" layer="21"/>
+<wire x1="1.4605" y1="0.635" x2="1.4605" y2="-0.635" width="0.2032" layer="21"/>
+<wire x1="1.4605" y1="-0.635" x2="-1.4605" y2="-0.635" width="0.2032" layer="21"/>
+<wire x1="-1.4605" y1="-0.635" x2="-1.4605" y2="0.635" width="0.2032" layer="21"/>
+<smd name="1" x="-0.762" y="0" dx="0.9" dy="0.8" layer="1"/>
+<smd name="2" x="0.762" y="0" dx="0.9" dy="0.8" layer="1"/>
+<text x="-1.27" y="0.9525" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.27" y="-1.4923" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="0.4318" y1="-0.4" x2="0.8382" y2="0.4" layer="51"/>
+<rectangle x1="-0.8382" y1="-0.4" x2="-0.4318" y2="0.4" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.4001" x2="0.1999" y2="0.4001" layer="35"/>
+</package>
+<package name="_0603MP">
+<description>&lt;b&gt;0603 MicroPitch&lt;/b&gt;</description>
+<wire x1="-0.432" y1="-0.306" x2="0.432" y2="-0.306" width="0.1016" layer="51"/>
+<wire x1="0.432" y1="0.306" x2="-0.432" y2="0.306" width="0.1016" layer="51"/>
+<wire x1="0" y1="0.254" x2="0" y2="-0.254" width="0.2032" layer="21"/>
+<smd name="1" x="-0.762" y="0" dx="0.8" dy="0.8" layer="1"/>
+<smd name="2" x="0.762" y="0" dx="0.8" dy="0.8" layer="1"/>
+<text x="-0.9525" y="0.635" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-0.9525" y="-0.9525" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="0.4318" y1="-0.4" x2="0.8" y2="0.4" layer="51"/>
+<rectangle x1="-0.8" y1="-0.4" x2="-0.4318" y2="0.4" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.25" x2="0.1999" y2="0.25" layer="35"/>
+</package>
+</packages>
+</library>
+<library name="ALS-PT19-315C_L177_TR8">
+<packages>
+<package name="XDCR_ALS-PT19-315C/L177/TR8_REVERSE">
+<wire x1="-0.85" y1="-0.4" x2="0.85" y2="-0.4" width="0.127" layer="51"/>
+<wire x1="0.85" y1="0.4" x2="-0.85" y2="0.4" width="0.127" layer="51"/>
+<wire x1="-0.85" y1="0.4" x2="-0.85" y2="-0.4" width="0.127" layer="51"/>
+<wire x1="0.85" y1="-0.4" x2="0.85" y2="0.4" width="0.127" layer="51"/>
+<wire x1="-1.6" y1="0.65" x2="-1.6" y2="-0.65" width="0.05" layer="39"/>
+<wire x1="-1.6" y1="-0.65" x2="1.6" y2="-0.65" width="0.05" layer="39"/>
+<wire x1="1.6" y1="-0.65" x2="1.6" y2="0.65" width="0.05" layer="39"/>
+<wire x1="1.6" y1="0.65" x2="-1.6" y2="0.65" width="0.05" layer="39"/>
+<text x="-2" y="1" size="0.8128" layer="25">&gt;NAME</text>
+<text x="-2" y="-1" size="0.8128" layer="27" align="top-left">&gt;VALUE</text>
+<circle x="-1.95" y="0" radius="0.1" width="0.2" layer="21"/>
+<circle x="-1.95" y="0" radius="0.1" width="0.2" layer="51"/>
+<smd name="1" x="-0.95" y="0" dx="0.8" dy="0.8" layer="1"/>
+<smd name="2" x="0.95" y="0" dx="0.8" dy="0.8" layer="1"/>
+<wire x1="0.65" y1="0.7" x2="0.65" y2="-0.7" width="0" layer="20"/>
+<wire x1="0.65" y1="-0.7" x2="-0.65" y2="-0.7" width="0" layer="20"/>
+<wire x1="-0.65" y1="-0.7" x2="-0.65" y2="0.7" width="0" layer="20"/>
+<wire x1="-0.65" y1="0.7" x2="0.65" y2="0.7" width="0" layer="20"/>
+</package>
+</packages>
+</library>
+</libraries>
+<attributes>
+<attribute name="REV" value="D"/>
+</attributes>
+<variantdefs>
+</variantdefs>
+<classes>
+<class number="0" name="default" width="0.2032" drill="0">
+</class>
+<class number="1" name="power" width="0.2032" drill="0">
+</class>
+<class number="2" name="gnd" width="0.2032" drill="0">
+</class>
+</classes>
+<designrules name="oshpark-2layer *">
+<description language="en">&lt;b&gt;OSH Park Design Rules&lt;/b&gt;
+&lt;p&gt;
+Please make sure your boards conform to these design rules.
+&lt;/p&gt;
+&lt;p&gt;
+Note, that not all DRC settings must be set by the manufacturer. Several can be adjusted for the design, including those listed on our docs page here.
+&lt;a href=&quot;http://docs.oshpark.com/design-tools/eagle/design-rules-files/&quot;&gt;Adjustable Settings&lt;/a&gt;
+&lt;/p&gt;</description>
+<param name="layerSetup" value="(1*16)"/>
+<param name="mtCopper" value="0.035559375mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.035559375mm"/>
+<param name="mtIsolate" value="1.6mm 0.1499mm 0.2007mm 0.1499mm 0.2007mm 0.1499mm 0.2007mm 0.1499mm 0.2007mm 0.1499mm 0.2007mm 0.1499mm 0.2007mm 0.1499mm 0.2007mm"/>
+<param name="mdWireWire" value="6mil"/>
+<param name="mdWirePad" value="6mil"/>
+<param name="mdWireVia" value="6mil"/>
+<param name="mdPadPad" value="6mil"/>
+<param name="mdPadVia" value="6mil"/>
+<param name="mdViaVia" value="6mil"/>
+<param name="mdSmdPad" value="6mil"/>
+<param name="mdSmdVia" value="6mil"/>
+<param name="mdSmdSmd" value="6mil"/>
+<param name="mdViaViaSameLayer" value="8mil"/>
+<param name="mnLayersViaInSmd" value="2"/>
+<param name="mdCopperDimension" value="15mil"/>
+<param name="mdDrill" value="6mil"/>
+<param name="mdSmdStop" value="0mil"/>
+<param name="msWidth" value="6mil"/>
+<param name="msDrill" value="10mil"/>
+<param name="msMicroVia" value="10mil"/>
+<param name="msBlindViaRatio" value="0.5"/>
+<param name="rvPadTop" value="0.25"/>
+<param name="rvPadInner" value="0.25"/>
+<param name="rvPadBottom" value="0.25"/>
+<param name="rvViaOuter" value="0.25"/>
+<param name="rvViaInner" value="0.25"/>
+<param name="rvMicroViaOuter" value="0.25"/>
+<param name="rvMicroViaInner" value="0.25"/>
+<param name="rlMinPadTop" value="5mil"/>
+<param name="rlMaxPadTop" value="20mil"/>
+<param name="rlMinPadInner" value="5mil"/>
+<param name="rlMaxPadInner" value="20mil"/>
+<param name="rlMinPadBottom" value="5mil"/>
+<param name="rlMaxPadBottom" value="20mil"/>
+<param name="rlMinViaOuter" value="5mil"/>
+<param name="rlMaxViaOuter" value="20mil"/>
+<param name="rlMinViaInner" value="5mil"/>
+<param name="rlMaxViaInner" value="20mil"/>
+<param name="rlMinMicroViaOuter" value="5mil"/>
+<param name="rlMaxMicroViaOuter" value="20mil"/>
+<param name="rlMinMicroViaInner" value="5mil"/>
+<param name="rlMaxMicroViaInner" value="20mil"/>
+<param name="psTop" value="-1"/>
+<param name="psBottom" value="-1"/>
+<param name="psFirst" value="-1"/>
+<param name="psElongationLong" value="100"/>
+<param name="psElongationOffset" value="100"/>
+<param name="mvStopFrame" value="1"/>
+<param name="mvCreamFrame" value="0"/>
+<param name="mlMinStopFrame" value="2.5mil"/>
+<param name="mlMaxStopFrame" value="2.5mil"/>
+<param name="mlMinCreamFrame" value="0mil"/>
+<param name="mlMaxCreamFrame" value="0mil"/>
+<param name="mlViaStopLimit" value="12mil"/>
+<param name="srRoundness" value="0"/>
+<param name="srMinRoundness" value="0mil"/>
+<param name="srMaxRoundness" value="0mil"/>
+<param name="slThermalIsolate" value="10mil"/>
+<param name="slThermalsForVias" value="0"/>
+<param name="dpMaxLengthDifference" value="10mm"/>
+<param name="dpGapFactor" value="2.5"/>
+<param name="checkAngle" value="0"/>
+<param name="checkFont" value="1"/>
+<param name="checkRestrict" value="1"/>
+<param name="checkStop" value="0"/>
+<param name="checkValues" value="0"/>
+<param name="checkNames" value="1"/>
+<param name="checkWireStubs" value="1"/>
+<param name="checkPolygonWidth" value="0"/>
+<param name="useDiameter" value="13"/>
+<param name="maxErrors" value="50"/>
+</designrules>
+<autorouter>
+<pass name="Default">
+<param name="RoutingGrid" value="50mil"/>
+<param name="AutoGrid" value="1"/>
+<param name="Efforts" value="0"/>
+<param name="TopRouterVariant" value="1"/>
+<param name="tpViaShape" value="round"/>
+<param name="PrefDir.1" value="|"/>
+<param name="PrefDir.2" value="0"/>
+<param name="PrefDir.3" value="0"/>
+<param name="PrefDir.4" value="0"/>
+<param name="PrefDir.5" value="0"/>
+<param name="PrefDir.6" value="0"/>
+<param name="PrefDir.7" value="0"/>
+<param name="PrefDir.8" value="0"/>
+<param name="PrefDir.9" value="0"/>
+<param name="PrefDir.10" value="0"/>
+<param name="PrefDir.11" value="0"/>
+<param name="PrefDir.12" value="0"/>
+<param name="PrefDir.13" value="0"/>
+<param name="PrefDir.14" value="0"/>
+<param name="PrefDir.15" value="0"/>
+<param name="PrefDir.16" value="-"/>
+<param name="cfVia" value="8"/>
+<param name="cfNonPref" value="5"/>
+<param name="cfChangeDir" value="2"/>
+<param name="cfOrthStep" value="2"/>
+<param name="cfDiagStep" value="3"/>
+<param name="cfExtdStep" value="0"/>
+<param name="cfBonusStep" value="1"/>
+<param name="cfMalusStep" value="1"/>
+<param name="cfPadImpact" value="4"/>
+<param name="cfSmdImpact" value="4"/>
+<param name="cfBusImpact" value="0"/>
+<param name="cfHugging" value="3"/>
+<param name="cfAvoid" value="4"/>
+<param name="cfPolygon" value="10"/>
+<param name="cfBase.1" value="0"/>
+<param name="cfBase.2" value="1"/>
+<param name="cfBase.3" value="1"/>
+<param name="cfBase.4" value="1"/>
+<param name="cfBase.5" value="1"/>
+<param name="cfBase.6" value="1"/>
+<param name="cfBase.7" value="1"/>
+<param name="cfBase.8" value="1"/>
+<param name="cfBase.9" value="1"/>
+<param name="cfBase.10" value="1"/>
+<param name="cfBase.11" value="1"/>
+<param name="cfBase.12" value="1"/>
+<param name="cfBase.13" value="1"/>
+<param name="cfBase.14" value="1"/>
+<param name="cfBase.15" value="1"/>
+<param name="cfBase.16" value="0"/>
+<param name="mnVias" value="20"/>
+<param name="mnSegments" value="9999"/>
+<param name="mnExtdSteps" value="9999"/>
+<param name="mnRipupLevel" value="10"/>
+<param name="mnRipupSteps" value="100"/>
+<param name="mnRipupTotal" value="100"/>
+</pass>
+<pass name="Follow-me" refer="Default" active="yes">
+</pass>
+<pass name="Busses" refer="Default" active="yes">
+<param name="cfNonPref" value="4"/>
+<param name="cfBusImpact" value="4"/>
+<param name="cfHugging" value="0"/>
+<param name="mnVias" value="0"/>
+</pass>
+<pass name="Route" refer="Default" active="yes">
+</pass>
+</autorouter>
+<elements>
+<element name="U$3" library="FH19C-9S-0.5SH" package="FH19C9S05SH10-FFC" value="FH19C-9S-0.5SH_10-FFC" x="0" y="-2.794" smashed="yes"/>
+<element name="RT" library="microbuilder" package="_0603" value="NTC 10K" x="-11.1252" y="1.8796" smashed="yes" rot="MR270">
+<attribute name="NAME" x="-9.7282" y="1.8923" size="0.8128" layer="26" font="vector" ratio="18" rot="MR0" align="center"/>
+<attribute name="VALUE" x="-9.6329" y="3.1496" size="0.8128" layer="28" font="vector" ratio="18" rot="MR270" align="center"/>
+</element>
+<element name="R1" library="microbuilder" package="_0603MP" value="1% 10K" x="-9.7282" y="-0.3556" smashed="yes" rot="MR270">
+<attribute name="NAME" x="-11.1125" y="-1.1176" size="0.8128" layer="26" font="vector" ratio="18" rot="MR180" align="center"/>
+<attribute name="VALUE" x="-8.7757" y="0.5969" size="0.8128" layer="28" font="vector" ratio="18" rot="MR270" align="center"/>
+</element>
+<element name="R2" library="microbuilder" package="_0603MP" value="10K" x="-7.62" y="3.0226" smashed="yes" rot="MR180">
+<attribute name="NAME" x="-5.5753" y="3.0226" size="0.8128" layer="26" font="vector" ratio="18" rot="MR0" align="center"/>
+<attribute name="VALUE" x="-8.5725" y="3.9751" size="0.8128" layer="28" font="vector" ratio="18" rot="MR180" align="center"/>
+</element>
+<element name="Q1" library="ALS-PT19-315C_L177_TR8" package="XDCR_ALS-PT19-315C/L177/TR8_REVERSE" value="ALS-PT19-315C" x="-8.0518" y="0.6604" smashed="yes" rot="MR90">
+<attribute name="NAME" x="-6.5598" y="0.6698" size="0.8128" layer="26" font="vector" ratio="18" rot="MR0" align="center"/>
+<attribute name="VALUE" x="-9.0518" y="-1.3396" size="0.8128" layer="28" font="vector" ratio="18" rot="MR90" align="center"/>
+</element>
+</elements>
+<signals>
+<signal name="SCL">
+<contactref element="U$3" pad="8"/>
+</signal>
+<signal name="SDA">
+<contactref element="U$3" pad="7"/>
+</signal>
+<signal name="GND" class="2">
+<contactref element="U$3" pad="2"/>
+</signal>
+<signal name="A0_TEMP_ENABLE">
+<contactref element="U$3" pad="9"/>
+<contactref element="R1" pad="2"/>
+<wire x1="-2" y1="-5.044" x2="-2" y2="-2.318" width="0.254" layer="16"/>
+<wire x1="-2.921" y1="-1.397" x2="-9.4488" y2="-1.397" width="0.254" layer="16"/>
+<wire x1="-9.4488" y1="-1.397" x2="-9.7282" y2="-1.1176" width="0.254" layer="16"/>
+<wire x1="-2" y1="-2.318" x2="-2.921" y2="-1.397" width="0.254" layer="16"/>
+</signal>
+<signal name="A4_LIGHT_SENSE">
+<contactref element="U$3" pad="3"/>
+<contactref element="R2" pad="1"/>
+<contactref element="Q1" pad="2"/>
+<wire x1="1" y1="-1.254" x2="1" y2="-5.044" width="0.254" layer="16"/>
+<wire x1="-8.0518" y1="1.6104" x2="-8.0518" y2="1.8898" width="0.254" layer="16"/>
+<wire x1="-1.9152" y1="1.6612" x2="1" y2="-1.254" width="0.254" layer="16"/>
+<wire x1="-8.3312" y1="1.8898" x2="-8.3312" y2="2.9718" width="0.254" layer="16"/>
+<wire x1="-8.3312" y1="2.9718" x2="-8.382" y2="3.0226" width="0.254" layer="16"/>
+<wire x1="-6.97734375" y1="1.6612" x2="-7.20594375" y2="1.8898" width="0.254" layer="16"/>
+<wire x1="-1.9152" y1="1.6612" x2="-6.97734375" y2="1.6612" width="0.254" layer="16"/>
+<wire x1="-7.20594375" y1="1.8898" x2="-8.0518" y2="1.8898" width="0.254" layer="16"/>
+<wire x1="-8.0518" y1="1.8898" x2="-8.3312" y2="1.8898" width="0.254" layer="16"/>
+</signal>
+<signal name="A3_LIGHT_ENABLE">
+<contactref element="U$3" pad="4"/>
+<contactref element="R2" pad="2"/>
+<wire x1="0.5" y1="-5.044" x2="0.5" y2="-1.533740625" width="0.254" layer="16"/>
+<wire x1="0.5" y1="-1.533740625" x2="-2.05994375" y2="1.026203125" width="0.254" layer="16"/>
+<via x="-2.05994375" y="1.026203125" extent="1-16" drill="0.254"/>
+<wire x1="-2.05994375" y1="1.026203125" x2="-5.334003125" y2="1.026203125" width="0.254" layer="1"/>
+<wire x1="-5.334003125" y1="1.026203125" x2="-6.5024" y2="2.1946" width="0.254" layer="1"/>
+<via x="-6.5024" y="2.1946" extent="1-16" drill="0.254"/>
+<wire x1="-6.5024" y1="2.1946" x2="-6.5786" y2="2.2708" width="0.254" layer="16"/>
+<wire x1="-6.5786" y1="2.7432" x2="-6.5786" y2="2.2708" width="0.254" layer="16"/>
+<wire x1="-6.5786" y1="2.7432" x2="-6.858" y2="3.0226" width="0.254" layer="16"/>
+</signal>
+<signal name="A2_TEMP_SENSE">
+<contactref element="U$3" pad="5"/>
+<contactref element="RT" pad="2"/>
+<contactref element="R1" pad="1"/>
+<wire x1="-11.1252" y1="1.1176" x2="-10.414" y2="0.4064" width="0.254" layer="16"/>
+<wire x1="-10.414" y1="0.4064" x2="-9.7282" y2="0.4064" width="0.254" layer="16"/>
+<wire x1="-8.6614" y1="-0.9906" x2="-9.4488" y2="-0.2032" width="0.254" layer="16"/>
+<wire x1="-9.7282" y1="0.4064" x2="-9.4488" y2="0.127" width="0.254" layer="16"/>
+<wire x1="-9.4488" y1="0.127" x2="-9.4488" y2="-0.2032" width="0.254" layer="16"/>
+<wire x1="-1.0414" y1="-0.9906" x2="0" y2="-2.032" width="0.254" layer="16"/>
+<wire x1="0" y1="-2.032" x2="0" y2="-5.044" width="0.254" layer="16"/>
+<wire x1="-8.6614" y1="-0.9906" x2="-1.0414" y2="-0.9906" width="0.254" layer="16"/>
+</signal>
+<signal name="VCC" class="1">
+<contactref element="U$3" pad="1"/>
+<contactref element="RT" pad="1"/>
+<contactref element="Q1" pad="1"/>
+<wire x1="2" y1="-5.044" x2="2" y2="-3.5367" width="0.254" layer="16"/>
+<wire x1="2" y1="-3.5367" x2="1.778" y2="-3.3147" width="0.254" layer="16"/>
+<via x="1.778" y="-3.3147" extent="1-16" drill="0.254"/>
+<wire x1="-11.1252" y1="2.6416" x2="-11.1252" y2="2.5908" width="0.254" layer="16"/>
+<wire x1="-9.906" y1="1.3716" x2="-11.1252" y2="2.5908" width="0.254" layer="16"/>
+<via x="-9.906" y="1.3716" extent="1-16" drill="0.254"/>
+<via x="-6.858" y="-0.4572" extent="1-16" drill="0.254"/>
+<wire x1="-9.2598" y1="-0.200025" x2="-8.962225" y2="-0.4976" width="0.254" layer="1"/>
+<wire x1="-8.962225" y1="-0.4976" x2="-6.887375" y2="-0.4976" width="0.254" layer="1"/>
+<wire x1="-9.906" y1="1.3716" x2="-9.2598" y2="0.7254" width="0.254" layer="1"/>
+<wire x1="-9.2598" y1="0.7254" x2="-9.2598" y2="-0.200025" width="0.254" layer="1"/>
+<wire x1="-6.858" y1="-0.4572" x2="-6.858" y2="-0.468225" width="0.254" layer="1"/>
+<wire x1="-6.858" y1="-0.468225" x2="-6.887375" y2="-0.4976" width="0.254" layer="1"/>
+<wire x1="-8.0518" y1="-0.2896" x2="-8.0518" y2="-0.4976" width="0.254" layer="16"/>
+<wire x1="-6.8984" y1="-0.4976" x2="-6.858" y2="-0.4572" width="0.254" layer="16"/>
+<wire x1="-6.8984" y1="-0.4976" x2="-8.0518" y2="-0.4976" width="0.254" layer="16"/>
+<wire x1="1.778" y1="-3.3147" x2="-1.0795" y2="-0.4572" width="0.254" layer="1"/>
+<wire x1="-1.0795" y1="-0.4572" x2="-6.858" y2="-0.4572" width="0.254" layer="1"/>
+</signal>
+</signals>
+<mfgpreviewcolors>
+<mfgpreviewcolor name="soldermaskcolor" color="0x64F0A000"/>
+<mfgpreviewcolor name="silkscreencolor" color="0xFFFEFEFE"/>
+<mfgpreviewcolor name="backgroundcolor" color="0xFF282828"/>
+<mfgpreviewcolor name="coppercolor" color="0xFFFFBF00"/>
+<mfgpreviewcolor name="substratecolor" color="0xFF786E46"/>
+</mfgpreviewcolors>
+<errors>
+<approved hash="4,16,9cc8a33735273f8c"/>
+<approved hash="4,16,75bf1b02d58151c8"/>
+<approved hash="4,16,70b4dd0ea9337bbd"/>
+<approved hash="4,16,42aacdba90153b82"/>
+<approved hash="4,16,c73eee013d8a7d31"/>
+<approved hash="4,16,9200d5cd109a9664"/>
+<approved hash="4,16,ad53f5b81819b47d"/>
+<approved hash="4,16,654600ffa8c2724f"/>
+<approved hash="4,16,1449b5f307c1274b"/>
+<approved hash="4,16,cb4ee6f31ac3d04e"/>
+<approved hash="4,16,85b313f6e9c5f2b6"/>
+<approved hash="4,16,d6b5b30f0b3fc9b5"/>
+<approved hash="4,16,27b00e0dbc3f14b2"/>
+<approved hash="4,16,2e147eaf8f3151ee"/>
+<approved hash="4,16,21a281a70cd6e8f0"/>
+<approved hash="4,16,698c9ef176a9cf60"/>
+<approved hash="4,16,c7ad4523f108e472"/>
+<approved hash="4,16,c43f11e108460bf1"/>
+<approved hash="4,16,85286978ed28c133"/>
+<approved hash="4,16,65bbe50a131d2975"/>
+<approved hash="4,16,d10cba08f42d4940"/>
+<approved hash="4,16,ba4bf49845b2c390"/>
+<approved hash="4,16,c7cd3c33c3d1aa5d"/>
+<approved hash="4,16,e30cbf5a20926eae"/>
+<approved hash="4,16,e30cb60601d26eae"/>
+</errors>
+</board>
+</drawing>
+<compatibility>
+<note version="6.3" minversion="6.2.2" severity="warning">
+Since Version 6.2.2 text objects can contain more than one line,
+which will not be processed correctly with this version.
+</note>
+</compatibility>
+</eagle>
diff --git a/PCB/Sensor Boards/OSO-MISC-21-015 Temperature and Light Board.sch b/PCB/Sensor Boards/OSO-MISC-21-015 Temperature and Light Board.sch
new file mode 100644
index 00000000..e100f1f4
--- /dev/null
+++ b/PCB/Sensor Boards/OSO-MISC-21-015 Temperature and Light Board.sch
@@ -0,0 +1,1090 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE eagle SYSTEM "eagle.dtd">
+<eagle version="9.6.2">
+<drawing>
+<settings>
+<setting alwaysvectorfont="no"/>
+<setting keepoldvectorfont="yes"/>
+<setting verticaltext="up"/>
+</settings>
+<grid distance="0.1" unitdist="inch" unit="inch" style="lines" multiple="1" display="no" altdistance="0.01" altunitdist="inch" altunit="inch"/>
+<layers>
+<layer number="1" name="Top" color="4" fill="1" visible="no" active="no"/>
+<layer number="2" name="Route2" color="1" fill="3" visible="no" active="no"/>
+<layer number="3" name="Route3" color="4" fill="3" visible="no" active="no"/>
+<layer number="4" name="Route4" color="1" fill="4" visible="no" active="no"/>
+<layer number="5" name="Route5" color="4" fill="4" visible="no" active="no"/>
+<layer number="6" name="Route6" color="1" fill="8" visible="no" active="no"/>
+<layer number="7" name="Route7" color="4" fill="8" visible="no" active="no"/>
+<layer number="8" name="Route8" color="1" fill="2" visible="no" active="no"/>
+<layer number="9" name="Route9" color="4" fill="2" visible="no" active="no"/>
+<layer number="10" name="Route10" color="1" fill="7" visible="no" active="no"/>
+<layer number="11" name="Route11" color="4" fill="7" visible="no" active="no"/>
+<layer number="12" name="Route12" color="1" fill="5" visible="no" active="no"/>
+<layer number="13" name="Route13" color="4" fill="5" visible="no" active="no"/>
+<layer number="14" name="Route14" color="1" fill="6" visible="no" active="no"/>
+<layer number="15" name="Route15" color="4" fill="6" visible="no" active="no"/>
+<layer number="16" name="Bottom" color="1" fill="1" visible="no" active="no"/>
+<layer number="17" name="Pads" color="2" fill="1" visible="no" active="no"/>
+<layer number="18" name="Vias" color="2" fill="1" visible="no" active="no"/>
+<layer number="19" name="Unrouted" color="6" fill="1" visible="no" active="no"/>
+<layer number="20" name="Dimension" color="15" fill="1" visible="no" active="no"/>
+<layer number="21" name="tPlace" color="14" fill="1" visible="no" active="no"/>
+<layer number="22" name="bPlace" color="13" fill="1" visible="no" active="no"/>
+<layer number="23" name="tOrigins" color="15" fill="1" visible="no" active="no"/>
+<layer number="24" name="bOrigins" color="15" fill="1" visible="no" active="no"/>
+<layer number="25" name="tNames" color="7" fill="1" visible="no" active="no"/>
+<layer number="26" name="bNames" color="7" fill="1" visible="no" active="no"/>
+<layer number="27" name="tValues" color="7" fill="1" visible="no" active="no"/>
+<layer number="28" name="bValues" color="7" fill="1" visible="no" active="no"/>
+<layer number="29" name="tStop" color="7" fill="3" visible="no" active="no"/>
+<layer number="30" name="bStop" color="7" fill="6" visible="no" active="no"/>
+<layer number="31" name="tCream" color="7" fill="4" visible="no" active="no"/>
+<layer number="32" name="bCream" color="7" fill="5" visible="no" active="no"/>
+<layer number="33" name="tFinish" color="6" fill="3" visible="no" active="no"/>
+<layer number="34" name="bFinish" color="6" fill="6" visible="no" active="no"/>
+<layer number="35" name="tGlue" color="7" fill="4" visible="no" active="no"/>
+<layer number="36" name="bGlue" color="7" fill="5" visible="no" active="no"/>
+<layer number="37" name="tTest" color="7" fill="1" visible="no" active="no"/>
+<layer number="38" name="bTest" color="7" fill="1" visible="no" active="no"/>
+<layer number="39" name="tKeepout" color="4" fill="11" visible="no" active="no"/>
+<layer number="40" name="bKeepout" color="1" fill="11" visible="no" active="no"/>
+<layer number="41" name="tRestrict" color="4" fill="10" visible="no" active="no"/>
+<layer number="42" name="bRestrict" color="1" fill="10" visible="no" active="no"/>
+<layer number="43" name="vRestrict" color="2" fill="10" visible="no" active="no"/>
+<layer number="44" name="Drills" color="7" fill="1" visible="no" active="no"/>
+<layer number="45" name="Holes" color="7" fill="1" visible="no" active="no"/>
+<layer number="46" name="Milling" color="3" fill="1" visible="no" active="no"/>
+<layer number="47" name="Measures" color="7" fill="1" visible="no" active="no"/>
+<layer number="48" name="Document" color="7" fill="1" visible="no" active="no"/>
+<layer number="49" name="Reference" color="7" fill="1" visible="no" active="no"/>
+<layer number="50" name="dxf" color="7" fill="1" visible="no" active="no"/>
+<layer number="51" name="tDocu" color="15" fill="1" visible="no" active="no"/>
+<layer number="52" name="bDocu" color="7" fill="1" visible="no" active="no"/>
+<layer number="53" name="tGND_GNDA" color="7" fill="9" visible="no" active="no"/>
+<layer number="54" name="bGND_GNDA" color="1" fill="9" visible="no" active="no"/>
+<layer number="56" name="wert" color="7" fill="1" visible="no" active="no"/>
+<layer number="57" name="tCAD" color="7" fill="1" visible="no" active="no"/>
+<layer number="58" name="b3D" color="7" fill="1" visible="no" active="no"/>
+<layer number="59" name="tCarbon" color="7" fill="1" visible="no" active="no"/>
+<layer number="60" name="bCarbon" color="7" fill="1" visible="no" active="no"/>
+<layer number="61" name="stand" color="7" fill="1" visible="no" active="no"/>
+<layer number="88" name="SimResults" color="9" fill="1" visible="yes" active="yes"/>
+<layer number="89" name="SimProbes" color="9" fill="1" visible="yes" active="yes"/>
+<layer number="90" name="Modules" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="91" name="Nets" color="2" fill="1" visible="yes" active="yes"/>
+<layer number="92" name="Busses" color="1" fill="1" visible="yes" active="yes"/>
+<layer number="93" name="Pins" color="2" fill="1" visible="no" active="yes"/>
+<layer number="94" name="Symbols" color="4" fill="1" visible="yes" active="yes"/>
+<layer number="95" name="Names" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="96" name="Values" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="97" name="Info" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="98" name="Guide" color="6" fill="1" visible="yes" active="yes"/>
+<layer number="99" name="SpiceOrder" color="7" fill="1" visible="no" active="no"/>
+<layer number="100" name="Muster" color="7" fill="1" visible="no" active="no"/>
+<layer number="101" name="Patch_Top" color="12" fill="4" visible="yes" active="yes"/>
+<layer number="102" name="Vscore" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="103" name="fp3" color="7" fill="1" visible="no" active="yes"/>
+<layer number="104" name="Name" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="105" name="Beschreib" color="9" fill="1" visible="yes" active="yes"/>
+<layer number="106" name="BGA-Top" color="4" fill="1" visible="yes" active="yes"/>
+<layer number="107" name="BD-Top" color="5" fill="1" visible="yes" active="yes"/>
+<layer number="108" name="fp8" color="7" fill="1" visible="no" active="yes"/>
+<layer number="109" name="fp9" color="7" fill="1" visible="no" active="yes"/>
+<layer number="110" name="fp0" color="7" fill="1" visible="no" active="yes"/>
+<layer number="111" name="LPC17xx" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="112" name="tSilk" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="113" name="ReferenceLS" color="7" fill="1" visible="no" active="no"/>
+<layer number="114" name="tPlaceRed" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="115" name="FRNTMAAT2" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="116" name="Patch_BOT" color="9" fill="4" visible="yes" active="yes"/>
+<layer number="117" name="BACKMAAT1" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="118" name="Rect_Pads" color="7" fill="1" visible="no" active="no"/>
+<layer number="119" name="KAP_TEKEN" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="120" name="KAP_MAAT1" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="121" name="_tsilk" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="122" name="_bsilk" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="123" name="tTestmark" color="7" fill="1" visible="no" active="yes"/>
+<layer number="124" name="bTestmark" color="7" fill="1" visible="no" active="yes"/>
+<layer number="125" name="_tNames" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="126" name="_bNames" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="127" name="_tValues" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="128" name="_bValues" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="129" name="Mask" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="130" name="SMDSTROOK" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="131" name="tAdjust" color="7" fill="1" visible="no" active="yes"/>
+<layer number="132" name="bAdjust" color="7" fill="1" visible="no" active="yes"/>
+<layer number="133" name="bottom_silk" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="134" name="silk_top" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="135" name="silk_bottom" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="136" name="silktop" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="137" name="silkbottom" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="138" name="EEE" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="139" name="_tKeepout" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="140" name="mbKeepout" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="141" name="ASSEMBLY_TOP" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="142" name="mbRestrict" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="143" name="PLACE_BOUND_TOP" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="144" name="Drill_legend" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="145" name="DrillLegend_01-16" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="146" name="DrillLegend_01-20" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="147" name="PIN_NUMBER" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="148" name="mDocument" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="149" name="DrillLegend_02-15" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="150" name="Notes" color="7" fill="1" visible="no" active="yes"/>
+<layer number="151" name="HeatSink" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="152" name="_bDocu" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="153" name="FabDoc1" color="6" fill="1" visible="no" active="no"/>
+<layer number="154" name="FabDoc2" color="2" fill="1" visible="no" active="no"/>
+<layer number="155" name="FabDoc3" color="7" fill="15" visible="no" active="no"/>
+<layer number="166" name="AntennaArea" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="168" name="4mmHeightArea" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="191" name="mNets" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="192" name="mBusses" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="193" name="mPins" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="194" name="mSymbols" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="195" name="mNames" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="196" name="mValues" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="199" name="Contour" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="200" name="200bmp" color="1" fill="10" visible="no" active="no"/>
+<layer number="201" name="201bmp" color="2" fill="1" visible="no" active="no"/>
+<layer number="202" name="202bmp" color="3" fill="1" visible="no" active="no"/>
+<layer number="203" name="203bmp" color="4" fill="10" visible="yes" active="yes"/>
+<layer number="204" name="204bmp" color="5" fill="10" visible="yes" active="yes"/>
+<layer number="205" name="205bmp" color="6" fill="10" visible="yes" active="yes"/>
+<layer number="206" name="206bmp" color="7" fill="10" visible="yes" active="yes"/>
+<layer number="207" name="207bmp" color="8" fill="10" visible="yes" active="yes"/>
+<layer number="208" name="208bmp" color="9" fill="10" visible="yes" active="yes"/>
+<layer number="209" name="209bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="210" name="210bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="211" name="211bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="212" name="212bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="213" name="213bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="214" name="214bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="215" name="215bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="216" name="216bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="217" name="217bmp" color="18" fill="1" visible="no" active="no"/>
+<layer number="218" name="218bmp" color="19" fill="1" visible="no" active="no"/>
+<layer number="219" name="219bmp" color="20" fill="1" visible="no" active="no"/>
+<layer number="220" name="220bmp" color="21" fill="1" visible="no" active="no"/>
+<layer number="221" name="221bmp" color="22" fill="1" visible="no" active="no"/>
+<layer number="222" name="222bmp" color="23" fill="1" visible="no" active="no"/>
+<layer number="223" name="223bmp" color="24" fill="1" visible="no" active="no"/>
+<layer number="224" name="224bmp" color="25" fill="1" visible="no" active="no"/>
+<layer number="225" name="225bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="226" name="226bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="227" name="227bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="228" name="228bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="229" name="229bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="230" name="230bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="231" name="Eagle3D_PG1" color="7" fill="1" visible="no" active="no"/>
+<layer number="232" name="Eagle3D_PG2" color="7" fill="1" visible="no" active="no"/>
+<layer number="233" name="Eagle3D_PG3" color="7" fill="1" visible="no" active="no"/>
+<layer number="248" name="Housing" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="249" name="Edge" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="250" name="Descript" color="7" fill="1" visible="no" active="no"/>
+<layer number="251" name="SMDround" color="7" fill="1" visible="no" active="no"/>
+<layer number="254" name="cooling" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="255" name="routoute" color="7" fill="1" visible="yes" active="yes"/>
+</layers>
+<schematic>
+<libraries>
+<library name="My Stuff">
+<description>Generated from &lt;b&gt;Hiking Log FeatherWing.brd&lt;/b&gt;&lt;p&gt;
+by exp-lbrs.ulp</description>
+<packages>
+</packages>
+<symbols>
+<symbol name="A4L-LOC">
+<wire x1="256.54" y1="3.81" x2="256.54" y2="8.89" width="0.1016" layer="94"/>
+<wire x1="256.54" y1="8.89" x2="256.54" y2="13.97" width="0.1016" layer="94"/>
+<wire x1="256.54" y1="13.97" x2="256.54" y2="19.05" width="0.1016" layer="94"/>
+<wire x1="256.54" y1="19.05" x2="256.54" y2="24.13" width="0.1016" layer="94"/>
+<wire x1="184.15" y1="3.81" x2="184.15" y2="24.13" width="0.1016" layer="94"/>
+<wire x1="184.15" y1="24.13" x2="215.265" y2="24.13" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="24.13" x2="256.54" y2="24.13" width="0.1016" layer="94"/>
+<wire x1="234.95" y1="3.81" x2="234.95" y2="8.89" width="0.1016" layer="94"/>
+<wire x1="234.95" y1="8.89" x2="256.54" y2="8.89" width="0.1016" layer="94"/>
+<wire x1="234.95" y1="8.89" x2="215.265" y2="8.89" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="8.89" x2="215.265" y2="3.81" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="8.89" x2="215.265" y2="13.97" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="13.97" x2="256.54" y2="13.97" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="13.97" x2="215.265" y2="19.05" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="19.05" x2="256.54" y2="19.05" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="19.05" x2="215.265" y2="24.13" width="0.1016" layer="94"/>
+<text x="217.17" y="15.24" size="2.54" layer="94">&gt;DRAWING_NAME</text>
+<text x="217.17" y="10.16" size="2.286" layer="94">&gt;LAST_DATE_TIME</text>
+<text x="228.473" y="5.08" size="2.54" layer="94">&gt;SHEET</text>
+<text x="216.916" y="4.953" size="2.54" layer="94">Sheet:</text>
+<frame x1="0" y1="0" x2="260.35" y2="179.07" columns="6" rows="4" layer="94"/>
+<text x="185.42" y="5.08" size="4.572" layer="94" font="vector" ratio="10">oddly
+specific
+objects</text>
+<text x="217.17" y="20.32" size="2.54" layer="94">by joey castillo</text>
+<text x="236.22" y="5.08" size="2.54" layer="94">cc-by-sa 4.0</text>
+</symbol>
+</symbols>
+<devicesets>
+<deviceset name="A4L-LOC" prefix="FRAME" uservalue="yes">
+<description>&lt;b&gt;FRAME&lt;/b&gt;&lt;p&gt;
+DIN A4, landscape with location and doc. field</description>
+<gates>
+<gate name="G$1" symbol="A4L-LOC" x="0" y="0"/>
+</gates>
+<devices>
+<device name="">
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+</devicesets>
+</library>
+<library name="FH19C-9S-0.5SH">
+<description>&lt;b&gt;https://componentsearchengine.com&lt;/b&gt;&lt;p&gt;
+&lt;author&gt;Created by SamacSys&lt;/author&gt;</description>
+<packages>
+<package name="FH19C9S05SH10-FFC">
+<description>&lt;b&gt;FH19C-9S-0.5SH(10)-1&lt;/b&gt;&lt;br&gt;
+</description>
+<smd name="1" x="2" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="2" x="1.5" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="3" x="1" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="4" x="0.5" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="5" x="0" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="6" x="-0.5" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="7" x="-1" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="8" x="-1.5" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="9" x="-2" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<wire x1="-2.4892" y1="0" x2="-2.4892" y2="-3.35" width="0" layer="20"/>
+<wire x1="-2.3392" y1="-3.5" x2="2.3392" y2="-3.5" width="0" layer="20"/>
+<wire x1="2.4892" y1="0" x2="2.4892" y2="-3.35" width="0" layer="20"/>
+<wire x1="-2.3392" y1="-3.5" x2="-2.4892" y2="-3.35" width="0" layer="20" curve="-90"/>
+<wire x1="2.3392" y1="-3.5" x2="2.4892" y2="-3.35" width="0" layer="20" curve="90"/>
+<polygon width="0.1524" layer="30">
+<vertex x="-2.4902" y="-0.9742"/>
+<vertex x="2.4882" y="-0.9742"/>
+<vertex x="2.4892" y="-3.4798"/>
+<vertex x="-2.4892" y="-3.4798"/>
+</polygon>
+</package>
+</packages>
+<symbols>
+<symbol name="FH19C-9S-0.5SH_10-FFC">
+<wire x1="-5.08" y1="12.7" x2="7.62" y2="12.7" width="0.254" layer="94"/>
+<wire x1="7.62" y1="-12.7" x2="7.62" y2="12.7" width="0.254" layer="94"/>
+<wire x1="7.62" y1="-12.7" x2="-5.08" y2="-12.7" width="0.254" layer="94"/>
+<wire x1="-5.08" y1="12.7" x2="-5.08" y2="-12.7" width="0.254" layer="94"/>
+<text x="8.89" y="17.78" size="1.778" layer="95" align="center-left">&gt;NAME</text>
+<text x="8.89" y="15.24" size="1.778" layer="96" align="center-left">&gt;VALUE</text>
+<pin name="1" x="12.7" y="10.16" length="middle" rot="R180"/>
+<pin name="2" x="12.7" y="7.62" length="middle" rot="R180"/>
+<pin name="3" x="12.7" y="5.08" length="middle" rot="R180"/>
+<pin name="4" x="12.7" y="2.54" length="middle" rot="R180"/>
+<pin name="5" x="12.7" y="0" length="middle" rot="R180"/>
+<pin name="6" x="12.7" y="-2.54" length="middle" rot="R180"/>
+<pin name="7" x="12.7" y="-5.08" length="middle" rot="R180"/>
+<pin name="8" x="12.7" y="-7.62" length="middle" rot="R180"/>
+<pin name="9" x="12.7" y="-10.16" length="middle" rot="R180"/>
+</symbol>
+</symbols>
+<devicesets>
+<deviceset name="FH19C-9S-0.5SH_10-FFC">
+<gates>
+<gate name="G$1" symbol="FH19C-9S-0.5SH_10-FFC" x="0" y="0"/>
+</gates>
+<devices>
+<device name="" package="FH19C9S05SH10-FFC">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+<connect gate="G$1" pin="3" pad="3"/>
+<connect gate="G$1" pin="4" pad="4"/>
+<connect gate="G$1" pin="5" pad="5"/>
+<connect gate="G$1" pin="6" pad="6"/>
+<connect gate="G$1" pin="7" pad="7"/>
+<connect gate="G$1" pin="8" pad="8"/>
+<connect gate="G$1" pin="9" pad="9"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+</devicesets>
+</library>
+<library name="microbuilder">
+<description>&lt;h2&gt;&lt;b&gt;microBuilder.eu&lt;/b&gt; Eagle Footprint Library&lt;/h2&gt;
+
+&lt;p&gt;Footprints for common components used in our projects and products. This is the same library that we use internally, and it is regularly updated. The newest version can always be found at &lt;b&gt;www.microBuilder.eu&lt;/b&gt;. If you find this library useful, please feel free to purchase something from our online store. Please also note that all holes are optimised for metric drill bits!&lt;/p&gt;
+
+&lt;h3&gt;Obligatory Warning&lt;/h3&gt;
+&lt;p&gt;While it probably goes without saying, there are no guarantees that the footprints or schematic symbols in this library are flawless, and we make no promises of fitness for production, prototyping or any other purpose. These libraries are provided for information puposes only, and are used at your own discretion. While we make every effort to produce accurate footprints, and many of the items found in this library have be proven in production, we can't make any promises of suitability for a specific purpose. If you do find any errors, though, please feel free to contact us at www.microbuilder.eu to let us know about it so that we can update the library accordingly!&lt;/p&gt;
+
+&lt;h3&gt;License&lt;/h3&gt;
+&lt;p&gt;This work is placed in the public domain, and may be freely used for commercial and non-commercial work with the following conditions:&lt;/p&gt;
+&lt;p&gt;THIS SOFTWARE IS PROVIDED ''AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+&lt;/p&gt;</description>
+<packages>
+<package name="0603-MINI">
+<description>0603-Mini
+&lt;p&gt;Mini footprint for dense boards&lt;/p&gt;</description>
+<wire x1="-1.346" y1="0.583" x2="1.346" y2="0.583" width="0.0508" layer="39"/>
+<wire x1="1.346" y1="0.583" x2="1.346" y2="-0.583" width="0.0508" layer="39"/>
+<wire x1="1.346" y1="-0.583" x2="-1.346" y2="-0.583" width="0.0508" layer="39"/>
+<wire x1="-1.346" y1="-0.583" x2="-1.346" y2="0.583" width="0.0508" layer="39"/>
+<wire x1="-1.45" y1="-0.7" x2="-1.45" y2="0.7" width="0.2032" layer="21"/>
+<wire x1="-1.45" y1="0.7" x2="1.45" y2="0.7" width="0.2032" layer="21"/>
+<wire x1="1.45" y1="0.7" x2="1.45" y2="-0.7" width="0.2032" layer="21"/>
+<wire x1="1.45" y1="-0.7" x2="-1.45" y2="-0.7" width="0.2032" layer="21"/>
+<wire x1="-0.356" y1="0.432" x2="0.356" y2="0.432" width="0.1016" layer="51"/>
+<wire x1="-0.356" y1="-0.419" x2="0.356" y2="-0.419" width="0.1016" layer="51"/>
+<smd name="1" x="-0.75" y="0" dx="0.9" dy="0.9" layer="1"/>
+<smd name="2" x="0.75" y="0" dx="0.9" dy="0.9" layer="1"/>
+<text x="1.524" y="-0.0635" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="1.524" y="-0.635" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-0.8382" y1="-0.4699" x2="-0.3381" y2="0.4801" layer="51"/>
+<rectangle x1="0.3302" y1="-0.4699" x2="0.8303" y2="0.4801" layer="51"/>
+</package>
+<package name="0805_NOTHERMALS">
+<wire x1="-1.873" y1="0.883" x2="1.873" y2="0.883" width="0.0508" layer="39"/>
+<wire x1="1.873" y1="-0.883" x2="-1.873" y2="-0.883" width="0.0508" layer="39"/>
+<wire x1="-1.873" y1="-0.883" x2="-1.873" y2="0.883" width="0.0508" layer="39"/>
+<wire x1="-0.381" y1="0.66" x2="0.381" y2="0.66" width="0.1016" layer="51"/>
+<wire x1="-0.356" y1="-0.66" x2="0.381" y2="-0.66" width="0.1016" layer="51"/>
+<wire x1="1.873" y1="0.883" x2="1.873" y2="-0.883" width="0.0508" layer="39"/>
+<wire x1="1.85" y1="1" x2="1.85" y2="-1" width="0.2032" layer="21"/>
+<wire x1="1.85" y1="-1" x2="-1.85" y2="-1" width="0.2032" layer="21"/>
+<wire x1="-1.85" y1="-1" x2="-1.85" y2="1" width="0.2032" layer="21"/>
+<wire x1="-1.85" y1="1" x2="1.85" y2="1" width="0.2032" layer="21"/>
+<smd name="1" x="-0.95" y="0" dx="1.3" dy="1.5" layer="1" thermals="no"/>
+<smd name="2" x="0.95" y="0" dx="1.3" dy="1.5" layer="1" thermals="no"/>
+<text x="2.032" y="-0.127" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="2.032" y="-0.762" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-1.0922" y1="-0.7239" x2="-0.3421" y2="0.7262" layer="51"/>
+<rectangle x1="0.3556" y1="-0.7239" x2="1.1057" y2="0.7262" layer="51"/>
+</package>
+<package name="_0402">
+<description>&lt;b&gt; 0402&lt;/b&gt;</description>
+<wire x1="-0.245" y1="0.174" x2="0.245" y2="0.174" width="0.1016" layer="51"/>
+<wire x1="0.245" y1="-0.174" x2="-0.245" y2="-0.174" width="0.1016" layer="51"/>
+<wire x1="-1.0573" y1="0.5557" x2="1.0573" y2="0.5557" width="0.2032" layer="21"/>
+<wire x1="1.0573" y1="0.5557" x2="1.0573" y2="-0.5556" width="0.2032" layer="21"/>
+<wire x1="1.0573" y1="-0.5556" x2="-1.0573" y2="-0.5557" width="0.2032" layer="21"/>
+<wire x1="-1.0573" y1="-0.5557" x2="-1.0573" y2="0.5557" width="0.2032" layer="21"/>
+<smd name="1" x="-0.508" y="0" dx="0.6" dy="0.6" layer="1"/>
+<smd name="2" x="0.508" y="0" dx="0.6" dy="0.6" layer="1"/>
+<text x="-0.9525" y="0.7939" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-0.9525" y="-1.3336" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-0.0794" y1="-0.2381" x2="0.0794" y2="0.2381" layer="35"/>
+<rectangle x1="0.25" y1="-0.25" x2="0.5" y2="0.25" layer="51"/>
+<rectangle x1="-0.5" y1="-0.25" x2="-0.25" y2="0.25" layer="51"/>
+</package>
+<package name="_0402MP">
+<description>&lt;b&gt;0402 MicroPitch&lt;p&gt;</description>
+<wire x1="-0.245" y1="0.174" x2="0.245" y2="0.174" width="0.1016" layer="51"/>
+<wire x1="0.245" y1="-0.174" x2="-0.245" y2="-0.174" width="0.1016" layer="51"/>
+<wire x1="0" y1="0.127" x2="0" y2="-0.127" width="0.2032" layer="21"/>
+<smd name="1" x="-0.508" y="0" dx="0.5" dy="0.5" layer="1"/>
+<smd name="2" x="0.508" y="0" dx="0.5" dy="0.5" layer="1"/>
+<text x="-0.635" y="0.4763" size="0.6096" layer="25" ratio="18">&gt;NAME</text>
+<text x="-0.635" y="-0.7938" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-0.1" y1="-0.2" x2="0.1" y2="0.2" layer="35"/>
+<rectangle x1="-0.5" y1="-0.25" x2="-0.254" y2="0.25" layer="51"/>
+<rectangle x1="0.2588" y1="-0.25" x2="0.5" y2="0.25" layer="51"/>
+</package>
+<package name="_0603">
+<description>&lt;b&gt;0603&lt;/b&gt;</description>
+<wire x1="-0.432" y1="-0.306" x2="0.432" y2="-0.306" width="0.1016" layer="51"/>
+<wire x1="0.432" y1="0.306" x2="-0.432" y2="0.306" width="0.1016" layer="51"/>
+<wire x1="-1.4605" y1="0.635" x2="1.4605" y2="0.635" width="0.2032" layer="21"/>
+<wire x1="1.4605" y1="0.635" x2="1.4605" y2="-0.635" width="0.2032" layer="21"/>
+<wire x1="1.4605" y1="-0.635" x2="-1.4605" y2="-0.635" width="0.2032" layer="21"/>
+<wire x1="-1.4605" y1="-0.635" x2="-1.4605" y2="0.635" width="0.2032" layer="21"/>
+<smd name="1" x="-0.762" y="0" dx="0.9" dy="0.8" layer="1"/>
+<smd name="2" x="0.762" y="0" dx="0.9" dy="0.8" layer="1"/>
+<text x="-1.27" y="0.9525" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.27" y="-1.4923" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="0.4318" y1="-0.4" x2="0.8382" y2="0.4" layer="51"/>
+<rectangle x1="-0.8382" y1="-0.4" x2="-0.4318" y2="0.4" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.4001" x2="0.1999" y2="0.4001" layer="35"/>
+</package>
+<package name="_0603MP">
+<description>&lt;b&gt;0603 MicroPitch&lt;/b&gt;</description>
+<wire x1="-0.432" y1="-0.306" x2="0.432" y2="-0.306" width="0.1016" layer="51"/>
+<wire x1="0.432" y1="0.306" x2="-0.432" y2="0.306" width="0.1016" layer="51"/>
+<wire x1="0" y1="0.254" x2="0" y2="-0.254" width="0.2032" layer="21"/>
+<smd name="1" x="-0.762" y="0" dx="0.8" dy="0.8" layer="1"/>
+<smd name="2" x="0.762" y="0" dx="0.8" dy="0.8" layer="1"/>
+<text x="-0.9525" y="0.635" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-0.9525" y="-0.9525" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="0.4318" y1="-0.4" x2="0.8" y2="0.4" layer="51"/>
+<rectangle x1="-0.8" y1="-0.4" x2="-0.4318" y2="0.4" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.25" x2="0.1999" y2="0.25" layer="35"/>
+</package>
+<package name="_0805">
+<description>&lt;b&gt;0805&lt;/b&gt;</description>
+<wire x1="-0.41" y1="0.585" x2="0.41" y2="0.585" width="0.1016" layer="51"/>
+<wire x1="-0.41" y1="-0.585" x2="0.41" y2="-0.585" width="0.1016" layer="51"/>
+<wire x1="-1.905" y1="0.889" x2="1.905" y2="0.889" width="0.2032" layer="21"/>
+<wire x1="1.905" y1="0.889" x2="1.905" y2="-0.889" width="0.2032" layer="21"/>
+<wire x1="1.905" y1="-0.889" x2="-1.905" y2="-0.889" width="0.2032" layer="21"/>
+<wire x1="-1.905" y1="-0.889" x2="-1.905" y2="0.889" width="0.2032" layer="21"/>
+<smd name="1" x="-1.016" y="0" dx="1.2" dy="1.3" layer="1"/>
+<smd name="2" x="1.016" y="0" dx="1.2" dy="1.3" layer="1"/>
+<text x="-1.5875" y="1.27" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.5874" y="-1.651" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="0.4064" y1="-0.65" x2="1.0564" y2="0.65" layer="51"/>
+<rectangle x1="-1.0668" y1="-0.65" x2="-0.4168" y2="0.65" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.5001" x2="0.1999" y2="0.5001" layer="35"/>
+</package>
+<package name="_0805MP">
+<description>&lt;b&gt;0805 MicroPitch&lt;/b&gt;</description>
+<wire x1="-0.51" y1="0.535" x2="0.51" y2="0.535" width="0.1016" layer="51"/>
+<wire x1="-0.51" y1="-0.535" x2="0.51" y2="-0.535" width="0.1016" layer="51"/>
+<wire x1="0" y1="0.508" x2="0" y2="-0.508" width="0.2032" layer="21"/>
+<smd name="1" x="-1.016" y="0" dx="1.2" dy="1.3" layer="1"/>
+<smd name="2" x="1.016" y="0" dx="1.2" dy="1.3" layer="1"/>
+<text x="-1.5875" y="0.9525" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.5875" y="-1.27" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="0.4064" y1="-0.65" x2="1" y2="0.65" layer="51"/>
+<rectangle x1="-1" y1="-0.65" x2="-0.4168" y2="0.65" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.5001" x2="0.1999" y2="0.5001" layer="35"/>
+</package>
+<package name="0805-NO">
+<wire x1="-0.381" y1="0.66" x2="0.381" y2="0.66" width="0.1016" layer="51"/>
+<wire x1="-0.356" y1="-0.66" x2="0.381" y2="-0.66" width="0.1016" layer="51"/>
+<smd name="1" x="-0.95" y="0" dx="1.24" dy="1.5" layer="1"/>
+<smd name="2" x="0.95" y="0" dx="1.24" dy="1.5" layer="1"/>
+<text x="2.032" y="-0.127" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="2.032" y="-0.762" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-1.0922" y1="-0.7239" x2="-0.3421" y2="0.7262" layer="51"/>
+<rectangle x1="0.3556" y1="-0.7239" x2="1.1057" y2="0.7262" layer="51"/>
+<wire x1="0" y1="0.508" x2="0" y2="-0.508" width="0.3048" layer="21"/>
+</package>
+<package name="0805_10MGAP">
+<wire x1="-0.381" y1="0.66" x2="0.381" y2="0.66" width="0.1016" layer="51"/>
+<wire x1="-0.356" y1="-0.66" x2="0.381" y2="-0.66" width="0.1016" layer="51"/>
+<smd name="1" x="-1.05" y="0" dx="1.2" dy="1.5" layer="1"/>
+<smd name="2" x="1.05" y="0" dx="1.2" dy="1.5" layer="1"/>
+<text x="2.032" y="-0.127" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="2.032" y="-0.762" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-1.0922" y1="-0.7239" x2="-0.3421" y2="0.7262" layer="51"/>
+<rectangle x1="0.3556" y1="-0.7239" x2="1.1057" y2="0.7262" layer="51"/>
+<wire x1="0" y1="0.508" x2="0" y2="-0.508" width="0.3048" layer="21"/>
+</package>
+<package name="0603-NO">
+<wire x1="-1.473" y1="0.729" x2="1.473" y2="0.729" width="0.0508" layer="39"/>
+<wire x1="1.473" y1="0.729" x2="1.473" y2="-0.729" width="0.0508" layer="39"/>
+<wire x1="1.473" y1="-0.729" x2="-1.473" y2="-0.729" width="0.0508" layer="39"/>
+<wire x1="-1.473" y1="-0.729" x2="-1.473" y2="0.729" width="0.0508" layer="39"/>
+<wire x1="-0.356" y1="0.432" x2="0.356" y2="0.432" width="0.1016" layer="51"/>
+<wire x1="-0.356" y1="-0.419" x2="0.356" y2="-0.419" width="0.1016" layer="51"/>
+<smd name="1" x="-0.85" y="0" dx="1.075" dy="1" layer="1"/>
+<smd name="2" x="0.85" y="0" dx="1.075" dy="1" layer="1"/>
+<text x="1.778" y="-0.127" size="0.8128" layer="25" font="vector" ratio="18">&gt;NAME</text>
+<text x="1.778" y="-0.762" size="0.4064" layer="27" font="vector" ratio="10">&gt;VALUE</text>
+<rectangle x1="-0.8382" y1="-0.4699" x2="-0.3381" y2="0.4801" layer="51"/>
+<rectangle x1="0.3302" y1="-0.4699" x2="0.8303" y2="0.4801" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.3" x2="0.1999" y2="0.3" layer="35"/>
+<wire x1="0" y1="0.4" x2="0" y2="-0.4" width="0.3048" layer="21"/>
+</package>
+<package name="_1206">
+<wire x1="0.9525" y1="-0.8128" x2="-0.9652" y2="-0.8128" width="0.1016" layer="51"/>
+<wire x1="0.9525" y1="0.8128" x2="-0.9652" y2="0.8128" width="0.1016" layer="51"/>
+<wire x1="-2.286" y1="1.143" x2="2.286" y2="1.143" width="0.2032" layer="21"/>
+<wire x1="2.286" y1="1.143" x2="2.286" y2="-1.143" width="0.2032" layer="21"/>
+<wire x1="2.286" y1="-1.143" x2="-2.286" y2="-1.143" width="0.2032" layer="21"/>
+<wire x1="-2.286" y1="-1.143" x2="-2.286" y2="1.143" width="0.2032" layer="21"/>
+<smd name="2" x="1.27" y="0" dx="1.4" dy="1.8" layer="1"/>
+<smd name="1" x="-1.27" y="0" dx="1.4" dy="1.8" layer="1"/>
+<rectangle x1="-1.6891" y1="-0.8763" x2="-0.9525" y2="0.8763" layer="51"/>
+<rectangle x1="0.9525" y1="-0.8763" x2="1.6891" y2="0.8763" layer="51"/>
+<rectangle x1="-0.3" y1="-0.7" x2="0.3" y2="0.7" layer="35"/>
+<text x="-2.2225" y="1.5113" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-2.2225" y="-1.8288" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="_1206MP">
+<wire x1="1.0525" y1="-0.7128" x2="-1.0652" y2="-0.7128" width="0.1016" layer="51"/>
+<wire x1="1.0525" y1="0.7128" x2="-1.0652" y2="0.7128" width="0.1016" layer="51"/>
+<wire x1="-0.635" y1="0.635" x2="0.635" y2="0.635" width="0.2032" layer="21"/>
+<wire x1="-0.635" y1="-0.635" x2="0.635" y2="-0.635" width="0.2032" layer="21"/>
+<smd name="2" x="1.524" y="0" dx="1.3" dy="1.6" layer="1"/>
+<smd name="1" x="-1.524" y="0" dx="1.3" dy="1.6" layer="1"/>
+<text x="-2.2225" y="1.1113" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-2.2225" y="-1.4288" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-1.6" y1="-0.8" x2="-0.9" y2="0.8" layer="51"/>
+<rectangle x1="-0.3" y1="-0.7" x2="0.3" y2="0.7" layer="35"/>
+<rectangle x1="0.9001" y1="-0.8" x2="1.6" y2="0.8" layer="51" rot="R180"/>
+</package>
+<package name="2012">
+<wire x1="-1.662" y1="1.245" x2="1.662" y2="1.245" width="0.2032" layer="51"/>
+<wire x1="-1.637" y1="-1.245" x2="1.687" y2="-1.245" width="0.2032" layer="51"/>
+<wire x1="-3.473" y1="1.483" x2="3.473" y2="1.483" width="0.0508" layer="39"/>
+<wire x1="3.473" y1="1.483" x2="3.473" y2="-1.483" width="0.0508" layer="39"/>
+<wire x1="3.473" y1="-1.483" x2="-3.473" y2="-1.483" width="0.0508" layer="39"/>
+<wire x1="-3.473" y1="-1.483" x2="-3.473" y2="1.483" width="0.0508" layer="39"/>
+<wire x1="-3.302" y1="1.524" x2="3.302" y2="1.524" width="0.2032" layer="21"/>
+<wire x1="3.302" y1="1.524" x2="3.302" y2="-1.524" width="0.2032" layer="21"/>
+<wire x1="3.302" y1="-1.524" x2="-3.302" y2="-1.524" width="0.2032" layer="21"/>
+<wire x1="-3.302" y1="-1.524" x2="-3.302" y2="1.524" width="0.2032" layer="21"/>
+<smd name="1" x="-2.2" y="0" dx="1.8" dy="2.7" layer="1"/>
+<smd name="2" x="2.2" y="0" dx="1.8" dy="2.7" layer="1"/>
+<text x="-2.54" y="1.8415" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-2.667" y="-2.159" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-2.4892" y1="-1.3208" x2="-1.6393" y2="1.3292" layer="51"/>
+<rectangle x1="1.651" y1="-1.3208" x2="2.5009" y2="1.3292" layer="51"/>
+</package>
+<package name="2512">
+<description>&lt;b&gt;RESISTOR 2512 (Metric 6432)&lt;/b&gt;</description>
+<wire x1="-2.362" y1="1.473" x2="2.387" y2="1.473" width="0.2032" layer="51"/>
+<wire x1="-2.362" y1="-1.473" x2="2.387" y2="-1.473" width="0.2032" layer="51"/>
+<wire x1="-3.973" y1="1.983" x2="3.973" y2="1.983" width="0.0508" layer="39"/>
+<wire x1="3.973" y1="1.983" x2="3.973" y2="-1.983" width="0.0508" layer="39"/>
+<wire x1="3.973" y1="-1.983" x2="-3.973" y2="-1.983" width="0.0508" layer="39"/>
+<wire x1="-3.973" y1="-1.983" x2="-3.973" y2="1.983" width="0.0508" layer="39"/>
+<smd name="1" x="-2.8" y="0" dx="1.8" dy="3.2" layer="1"/>
+<smd name="2" x="2.8" y="0" dx="1.8" dy="3.2" layer="1"/>
+<text x="-3.683" y="1.905" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-3.556" y="-2.286" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-3.2004" y1="-1.5494" x2="-2.3505" y2="1.5507" layer="51"/>
+<rectangle x1="2.3622" y1="-1.5494" x2="3.2121" y2="1.5507" layer="51"/>
+<rectangle x1="-0.5001" y1="-1" x2="0.5001" y2="1" layer="35"/>
+</package>
+</packages>
+<symbols>
+<symbol name="RESISTOR">
+<wire x1="-2.54" y1="1.27" x2="2.54" y2="1.27" width="0.254" layer="94"/>
+<wire x1="2.54" y1="1.27" x2="2.54" y2="-1.27" width="0.254" layer="94"/>
+<wire x1="2.54" y1="-1.27" x2="-2.54" y2="-1.27" width="0.254" layer="94"/>
+<wire x1="-2.54" y1="-1.27" x2="-2.54" y2="1.27" width="0.254" layer="94"/>
+<text x="0" y="2.54" size="1.27" layer="95" font="vector" align="center">&gt;NAME</text>
+<text x="0" y="0" size="1.016" layer="96" font="vector" ratio="15" align="center">&gt;VALUE</text>
+<pin name="1" x="-5.08" y="0" visible="off" length="short" direction="pas" swaplevel="1"/>
+<pin name="2" x="5.08" y="0" visible="off" length="short" direction="pas" swaplevel="1" rot="R180"/>
+</symbol>
+</symbols>
+<devicesets>
+<deviceset name="RESISTOR" prefix="R" uservalue="yes">
+<description>&lt;p&gt;&lt;b&gt;Resistors&lt;/b&gt;&lt;/p&gt;
+&lt;p&gt;For new designs, use the packages preceded by an '_' character since they are more reliable:&lt;/p&gt;
+&lt;p&gt;The following footprints should be used on most boards:&lt;/p&gt;
+&lt;ul&gt;
+&lt;li&gt;&lt;b&gt;_0402&lt;/b&gt; - Standard footprint for regular board layouts&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_0603&lt;/b&gt; - Standard footprint for regular board layouts&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_0805&lt;/b&gt; - Standard footprint for regular board layouts&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_1206&lt;/b&gt; - Standard footprint for regular board layouts&lt;/li&gt;
+&lt;/ul&gt;
+&lt;p&gt;For extremely tight-pitch boards where space is at a premium, the following 'micro-pitch' footprints can be used (smaller pads, no silkscreen outline, etc.):&lt;/p&gt;
+&lt;ul&gt;
+&lt;li&gt;&lt;b&gt;_0402MP&lt;/b&gt; - Micro-pitch footprint for very dense/compact boards&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_0603MP&lt;/b&gt; - Micro-pitch footprint for very dense/compact boards&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_0805MP&lt;/b&gt; - Micro-pitch footprint for very dense/compact boards&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_1206MP&lt;/b&gt; - Micro-pitch footprint for very dense/compact boards&lt;/li&gt;
+&lt;/ul&gt;</description>
+<gates>
+<gate name="G$1" symbol="RESISTOR" x="0" y="0"/>
+</gates>
+<devices>
+<device name="0603MINI" package="0603-MINI">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="2012" package="2012">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="0805_NOTHERMALS" package="0805_NOTHERMALS">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="2512" package="2512">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0402" package="_0402">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0402MP" package="_0402MP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0603" package="_0603">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0603MP" package="_0603MP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0805" package="_0805">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0805MP" package="_0805MP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="0805_NOOUTLINE" package="0805-NO">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0603_NOOUT" package="0603-NO">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_1206" package="_1206">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_1206MP" package="_1206MP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="0805_10MGAP" package="0805_10MGAP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+</devicesets>
+</library>
+<library name="ALS-PT19-315C_L177_TR8">
+<packages>
+<package name="XDCR_ALS-PT19-315C/L177/TR8">
+<wire x1="-0.85" y1="-0.4" x2="0.85" y2="-0.4" width="0.127" layer="51"/>
+<wire x1="0.85" y1="0.4" x2="-0.85" y2="0.4" width="0.127" layer="51"/>
+<wire x1="-0.85" y1="0.4" x2="-0.85" y2="-0.4" width="0.127" layer="51"/>
+<wire x1="0.85" y1="-0.4" x2="0.85" y2="0.4" width="0.127" layer="51"/>
+<wire x1="-1.4" y1="0.65" x2="-1.4" y2="-0.65" width="0.05" layer="39"/>
+<wire x1="-1.4" y1="-0.65" x2="1.4" y2="-0.65" width="0.05" layer="39"/>
+<wire x1="1.4" y1="-0.65" x2="1.4" y2="0.65" width="0.05" layer="39"/>
+<wire x1="1.4" y1="0.65" x2="-1.4" y2="0.65" width="0.05" layer="39"/>
+<text x="-2" y="1" size="0.8128" layer="25">&gt;NAME</text>
+<text x="-2" y="-1" size="0.8128" layer="27" align="top-left">&gt;VALUE</text>
+<circle x="-1.75" y="0" radius="0.1" width="0.2" layer="21"/>
+<circle x="-1.75" y="0" radius="0.1" width="0.2" layer="51"/>
+<smd name="1" x="-0.75" y="0" dx="0.8" dy="0.8" layer="1"/>
+<smd name="2" x="0.75" y="0" dx="0.8" dy="0.8" layer="1"/>
+</package>
+<package name="XDCR_ALS-PT19-315C/L177/TR8_REVERSE">
+<wire x1="-0.85" y1="-0.4" x2="0.85" y2="-0.4" width="0.127" layer="51"/>
+<wire x1="0.85" y1="0.4" x2="-0.85" y2="0.4" width="0.127" layer="51"/>
+<wire x1="-0.85" y1="0.4" x2="-0.85" y2="-0.4" width="0.127" layer="51"/>
+<wire x1="0.85" y1="-0.4" x2="0.85" y2="0.4" width="0.127" layer="51"/>
+<wire x1="-1.6" y1="0.65" x2="-1.6" y2="-0.65" width="0.05" layer="39"/>
+<wire x1="-1.6" y1="-0.65" x2="1.6" y2="-0.65" width="0.05" layer="39"/>
+<wire x1="1.6" y1="-0.65" x2="1.6" y2="0.65" width="0.05" layer="39"/>
+<wire x1="1.6" y1="0.65" x2="-1.6" y2="0.65" width="0.05" layer="39"/>
+<text x="-2" y="1" size="0.8128" layer="25">&gt;NAME</text>
+<text x="-2" y="-1" size="0.8128" layer="27" align="top-left">&gt;VALUE</text>
+<circle x="-1.95" y="0" radius="0.1" width="0.2" layer="21"/>
+<circle x="-1.95" y="0" radius="0.1" width="0.2" layer="51"/>
+<smd name="1" x="-0.95" y="0" dx="0.8" dy="0.8" layer="1"/>
+<smd name="2" x="0.95" y="0" dx="0.8" dy="0.8" layer="1"/>
+<wire x1="0.65" y1="0.7" x2="0.65" y2="-0.7" width="0" layer="20"/>
+<wire x1="0.65" y1="-0.7" x2="-0.65" y2="-0.7" width="0" layer="20"/>
+<wire x1="-0.65" y1="-0.7" x2="-0.65" y2="0.7" width="0" layer="20"/>
+<wire x1="-0.65" y1="0.7" x2="0.65" y2="0.7" width="0" layer="20"/>
+</package>
+</packages>
+<symbols>
+<symbol name="ALS-PT19-315C/L177/TR8">
+<wire x1="-4.953" y1="2.54" x2="-3.175" y2="0.762" width="0.1524" layer="94"/>
+<wire x1="-3.175" y1="0.762" x2="-4.318" y2="1.143" width="0.1524" layer="94"/>
+<wire x1="-4.318" y1="1.143" x2="-3.556" y2="1.905" width="0.1524" layer="94"/>
+<wire x1="-3.556" y1="1.905" x2="-3.175" y2="0.762" width="0.1524" layer="94"/>
+<wire x1="2.286" y1="-2.286" x2="2.54" y2="-2.54" width="0.1524" layer="94"/>
+<text x="-10.1556" y="5.0822" size="1.779540625" layer="95">&gt;NAME</text>
+<text x="-10.1508" y="-7.62" size="1.78121875" layer="96">&gt;VALUE</text>
+<polygon width="0.1524" layer="94">
+<vertex x="-4.318" y="1.143"/>
+<vertex x="-3.175" y="0.762"/>
+<vertex x="-3.556" y="1.905"/>
+</polygon>
+<circle x="1.27" y="0" radius="3.175" width="0.254" layer="94"/>
+<wire x1="0" y1="1.905" x2="0" y2="0.635" width="0.254" layer="94"/>
+<wire x1="0" y1="0.635" x2="0" y2="-0.635" width="0.254" layer="94"/>
+<wire x1="0" y1="-0.635" x2="0" y2="-1.905" width="0.254" layer="94"/>
+<wire x1="0" y1="-0.635" x2="2.54" y2="-2.54" width="0.254" layer="94"/>
+<wire x1="0" y1="0.635" x2="2.54" y2="2.54" width="0.254" layer="94"/>
+<polygon width="0.254" layer="94">
+<vertex x="2.54" y="-2.54"/>
+<vertex x="2.286" y="-1.524"/>
+<vertex x="1.524" y="-2.54"/>
+</polygon>
+<wire x1="-4.953" y1="0.635" x2="-3.175" y2="-1.143" width="0.1524" layer="94"/>
+<wire x1="-3.175" y1="-1.143" x2="-4.318" y2="-0.762" width="0.1524" layer="94"/>
+<wire x1="-4.318" y1="-0.762" x2="-3.556" y2="0" width="0.1524" layer="94"/>
+<wire x1="-3.556" y1="0" x2="-3.175" y2="-1.143" width="0.1524" layer="94"/>
+<polygon width="0.1524" layer="94">
+<vertex x="-4.318" y="-0.762"/>
+<vertex x="-3.175" y="-1.143"/>
+<vertex x="-3.556" y="0"/>
+</polygon>
+<pin name="E" x="2.54" y="-5.08" visible="off" length="short" direction="pas" rot="R90"/>
+<pin name="C" x="2.54" y="5.08" visible="off" length="short" direction="pas" rot="R270"/>
+</symbol>
+</symbols>
+<devicesets>
+<deviceset name="ALS-PT19-315C/L177/TR8" prefix="A">
+<description>Phototransistors 630nm 2-SMD, No Lead </description>
+<gates>
+<gate name="G$1" symbol="ALS-PT19-315C/L177/TR8" x="0" y="0"/>
+</gates>
+<devices>
+<device name="" package="XDCR_ALS-PT19-315C/L177/TR8">
+<connects>
+<connect gate="G$1" pin="C" pad="1"/>
+<connect gate="G$1" pin="E" pad="2"/>
+</connects>
+<technologies>
+<technology name="">
+<attribute name="DESCRIPTION" value=" Phototransistors 630nm - 2-SMD, No Lead "/>
+<attribute name="DIGI-KEY_PART_NUMBER" value="1080-1244-2-ND"/>
+<attribute name="MF" value="Everlight"/>
+<attribute name="MP" value="ALS-PT19-315C/L177/TR8"/>
+<attribute name="PACKAGE" value="SMD-2 Everlight Electronics Co Ltd"/>
+<attribute name="PURCHASE-URL" value="https://pricing.snapeda.com/search/part/ALS-PT19-315C/L177/TR8/?ref=eda"/>
+</technology>
+</technologies>
+</device>
+<device name="REVERSEMOUNT" package="XDCR_ALS-PT19-315C/L177/TR8_REVERSE">
+<connects>
+<connect gate="G$1" pin="C" pad="1"/>
+<connect gate="G$1" pin="E" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+</devicesets>
+</library>
+<library name="supply1" urn="urn:adsk.eagle:library:371">
+<description>&lt;b&gt;Supply Symbols&lt;/b&gt;&lt;p&gt;
+ GND, VCC, 0V, +5V, -5V, etc.&lt;p&gt;
+ Please keep in mind, that these devices are necessary for the
+ automatic wiring of the supply signals.&lt;p&gt;
+ The pin name defined in the symbol is identical to the net which is to be wired automatically.&lt;p&gt;
+ In this library the device names are the same as the pin names of the symbols, therefore the correct signal names appear next to the supply symbols in the schematic.&lt;p&gt;
+ &lt;author&gt;Created by librarian@cadsoft.de&lt;/author&gt;</description>
+<packages>
+</packages>
+<symbols>
+<symbol name="GND" urn="urn:adsk.eagle:symbol:26925/1" library_version="1">
+<wire x1="-1.905" y1="0" x2="1.905" y2="0" width="0.254" layer="94"/>
+<text x="-2.54" y="-2.54" size="1.778" layer="96">&gt;VALUE</text>
+<pin name="GND" x="0" y="2.54" visible="off" length="short" direction="sup" rot="R270"/>
+</symbol>
+<symbol name="VCC" urn="urn:adsk.eagle:symbol:26928/1" library_version="1">
+<wire x1="1.27" y1="-1.905" x2="0" y2="0" width="0.254" layer="94"/>
+<wire x1="0" y1="0" x2="-1.27" y2="-1.905" width="0.254" layer="94"/>
+<text x="-2.54" y="-2.54" size="1.778" layer="96" rot="R90">&gt;VALUE</text>
+<pin name="VCC" x="0" y="-2.54" visible="off" length="short" direction="sup" rot="R90"/>
+</symbol>
+</symbols>
+<devicesets>
+<deviceset name="GND" urn="urn:adsk.eagle:component:26954/1" prefix="GND" library_version="1">
+<description>&lt;b&gt;SUPPLY SYMBOL&lt;/b&gt;</description>
+<gates>
+<gate name="1" symbol="GND" x="0" y="0"/>
+</gates>
+<devices>
+<device name="">
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+<deviceset name="VCC" urn="urn:adsk.eagle:component:26957/1" prefix="P+" library_version="1">
+<description>&lt;b&gt;SUPPLY SYMBOL&lt;/b&gt;</description>
+<gates>
+<gate name="VCC" symbol="VCC" x="0" y="0"/>
+</gates>
+<devices>
+<device name="">
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+</devicesets>
+</library>
+</libraries>
+<attributes>
+</attributes>
+<variantdefs>
+</variantdefs>
+<classes>
+<class number="0" name="default" width="0.2032" drill="0">
+</class>
+<class number="1" name="power" width="0.2032" drill="0">
+</class>
+<class number="2" name="gnd" width="0.2032" drill="0">
+</class>
+</classes>
+<parts>
+<part name="FRAME1" library="My Stuff" deviceset="A4L-LOC" device=""/>
+<part name="U$3" library="FH19C-9S-0.5SH" deviceset="FH19C-9S-0.5SH_10-FFC" device=""/>
+<part name="RT" library="microbuilder" deviceset="RESISTOR" device="_0603" value="NTC 10K"/>
+<part name="R1" library="microbuilder" deviceset="RESISTOR" device="_0603MP" value="1% 10K"/>
+<part name="GND1" library="supply1" library_urn="urn:adsk.eagle:library:371" deviceset="GND" device=""/>
+<part name="P+1" library="supply1" library_urn="urn:adsk.eagle:library:371" deviceset="VCC" device=""/>
+<part name="P+2" library="supply1" library_urn="urn:adsk.eagle:library:371" deviceset="VCC" device=""/>
+<part name="P+3" library="supply1" library_urn="urn:adsk.eagle:library:371" deviceset="VCC" device=""/>
+<part name="R2" library="microbuilder" deviceset="RESISTOR" device="_0603MP" value="10K"/>
+<part name="Q1" library="ALS-PT19-315C_L177_TR8" deviceset="ALS-PT19-315C/L177/TR8" device="REVERSEMOUNT" value="ALS-PT19-315C"/>
+</parts>
+<sheets>
+<sheet>
+<plain>
+</plain>
+<instances>
+<instance part="FRAME1" gate="G$1" x="0" y="0" smashed="yes">
+<attribute name="DRAWING_NAME" x="217.17" y="15.24" size="2.54" layer="94"/>
+<attribute name="LAST_DATE_TIME" x="217.17" y="10.16" size="2.286" layer="94"/>
+<attribute name="SHEET" x="228.473" y="5.08" size="2.54" layer="94"/>
+</instance>
+<instance part="U$3" gate="G$1" x="20.32" y="86.36" smashed="yes">
+<attribute name="NAME" x="29.21" y="104.14" size="1.778" layer="95" align="center-left"/>
+<attribute name="VALUE" x="29.21" y="101.6" size="1.778" layer="96" align="center-left"/>
+</instance>
+<instance part="RT" gate="G$1" x="127" y="91.44" smashed="yes" rot="R270">
+<attribute name="NAME" x="129.54" y="91.44" size="1.27" layer="95" font="vector" rot="R270" align="center"/>
+<attribute name="VALUE" x="124.46" y="91.44" size="1.016" layer="96" font="vector" ratio="15" rot="R270" align="center"/>
+</instance>
+<instance part="R1" gate="G$1" x="127" y="81.28" smashed="yes" rot="R270">
+<attribute name="NAME" x="129.54" y="81.28" size="1.27" layer="95" font="vector" rot="R270" align="center"/>
+<attribute name="VALUE" x="124.46" y="81.28" size="1.016" layer="96" font="vector" ratio="15" rot="R270" align="center"/>
+</instance>
+<instance part="GND1" gate="1" x="68.58" y="88.9" smashed="yes">
+<attribute name="VALUE" x="66.04" y="86.36" size="1.778" layer="96"/>
+</instance>
+<instance part="P+1" gate="VCC" x="68.58" y="101.6" smashed="yes">
+<attribute name="VALUE" x="66.04" y="99.06" size="1.778" layer="96" rot="R90"/>
+</instance>
+<instance part="P+2" gate="VCC" x="127" y="99.06" smashed="yes">
+<attribute name="VALUE" x="124.46" y="96.52" size="1.778" layer="96" rot="R90"/>
+</instance>
+<instance part="P+3" gate="VCC" x="177.8" y="99.06" smashed="yes">
+<attribute name="VALUE" x="175.26" y="96.52" size="1.778" layer="96" rot="R90"/>
+</instance>
+<instance part="R2" gate="G$1" x="177.8" y="81.28" smashed="yes" rot="R270">
+<attribute name="NAME" x="180.34" y="81.28" size="1.27" layer="95" font="vector" rot="R270" align="center"/>
+<attribute name="VALUE" x="175.26" y="81.28" size="1.016" layer="96" font="vector" ratio="15" rot="R270" align="center"/>
+</instance>
+<instance part="Q1" gate="G$1" x="175.26" y="91.44" smashed="yes">
+<attribute name="NAME" x="165.1044" y="96.5222" size="1.779540625" layer="95"/>
+<attribute name="VALUE" x="180.3492" y="91.44" size="1.78121875" layer="96"/>
+</instance>
+</instances>
+<busses>
+</busses>
+<nets>
+<net name="SCL" class="0">
+<segment>
+<pinref part="U$3" gate="G$1" pin="8"/>
+<wire x1="60.96" y1="78.74" x2="33.02" y2="78.74" width="0.1524" layer="91"/>
+<label x="35.56" y="78.74" size="1.778" layer="95"/>
+</segment>
+</net>
+<net name="SDA" class="0">
+<segment>
+<pinref part="U$3" gate="G$1" pin="7"/>
+<wire x1="60.96" y1="81.28" x2="33.02" y2="81.28" width="0.1524" layer="91"/>
+<label x="35.56" y="81.28" size="1.778" layer="95"/>
+</segment>
+</net>
+<net name="GND" class="2">
+<segment>
+<pinref part="U$3" gate="G$1" pin="2"/>
+<wire x1="68.58" y1="93.98" x2="33.02" y2="93.98" width="0.1524" layer="91"/>
+<label x="35.56" y="93.98" size="1.778" layer="95"/>
+<pinref part="GND1" gate="1" pin="GND"/>
+<wire x1="68.58" y1="93.98" x2="68.58" y2="91.44" width="0.1524" layer="91"/>
+</segment>
+</net>
+<net name="A0_TEMP_ENABLE" class="0">
+<segment>
+<pinref part="U$3" gate="G$1" pin="9"/>
+<wire x1="33.02" y1="76.2" x2="60.96" y2="76.2" width="0.1524" layer="91"/>
+<label x="35.56" y="76.2" size="1.778" layer="95"/>
+</segment>
+<segment>
+<wire x1="99.06" y1="76.2" x2="127" y2="76.2" width="0.1524" layer="91"/>
+<label x="101.6" y="76.2" size="1.778" layer="95"/>
+<pinref part="R1" gate="G$1" pin="2"/>
+</segment>
+</net>
+<net name="A4_LIGHT_SENSE" class="0">
+<segment>
+<pinref part="U$3" gate="G$1" pin="3"/>
+<wire x1="60.96" y1="91.44" x2="33.02" y2="91.44" width="0.1524" layer="91"/>
+<label x="35.56" y="91.44" size="1.778" layer="95"/>
+</segment>
+<segment>
+<wire x1="149.86" y1="86.36" x2="177.8" y2="86.36" width="0.1524" layer="91"/>
+<label x="152.4" y="86.36" size="1.778" layer="95"/>
+<pinref part="R2" gate="G$1" pin="1"/>
+<pinref part="Q1" gate="G$1" pin="E"/>
+<junction x="177.8" y="86.36"/>
+</segment>
+</net>
+<net name="A3_LIGHT_ENABLE" class="0">
+<segment>
+<pinref part="U$3" gate="G$1" pin="4"/>
+<wire x1="60.96" y1="88.9" x2="33.02" y2="88.9" width="0.1524" layer="91"/>
+<label x="35.56" y="88.9" size="1.778" layer="95"/>
+</segment>
+<segment>
+<wire x1="149.86" y1="76.2" x2="177.8" y2="76.2" width="0.1524" layer="91"/>
+<label x="152.4" y="76.2" size="1.778" layer="95"/>
+<pinref part="R2" gate="G$1" pin="2"/>
+</segment>
+</net>
+<net name="A2_TEMP_SENSE" class="0">
+<segment>
+<wire x1="60.96" y1="86.36" x2="33.02" y2="86.36" width="0.1524" layer="91"/>
+<label x="35.56" y="86.36" size="1.778" layer="95"/>
+<pinref part="U$3" gate="G$1" pin="5"/>
+</segment>
+<segment>
+<pinref part="RT" gate="G$1" pin="2"/>
+<pinref part="R1" gate="G$1" pin="1"/>
+<wire x1="127" y1="86.36" x2="99.06" y2="86.36" width="0.1524" layer="91"/>
+<junction x="127" y="86.36"/>
+<label x="101.6" y="86.36" size="1.778" layer="95"/>
+</segment>
+</net>
+<net name="VCC" class="1">
+<segment>
+<pinref part="U$3" gate="G$1" pin="1"/>
+<wire x1="68.58" y1="96.52" x2="33.02" y2="96.52" width="0.1524" layer="91"/>
+<label x="35.56" y="96.52" size="1.778" layer="95"/>
+<wire x1="68.58" y1="96.52" x2="68.58" y2="99.06" width="0.1524" layer="91"/>
+<pinref part="P+1" gate="VCC" pin="VCC"/>
+</segment>
+<segment>
+<pinref part="RT" gate="G$1" pin="1"/>
+<pinref part="P+2" gate="VCC" pin="VCC"/>
+</segment>
+<segment>
+<pinref part="P+3" gate="VCC" pin="VCC"/>
+<pinref part="Q1" gate="G$1" pin="C"/>
+</segment>
+</net>
+</nets>
+</sheet>
+</sheets>
+<errors>
+<approved hash="102,1,124.46,66.04,OUT,3.3V,,,,"/>
+<approved hash="104,1,320.04,111.76,IC3,VDDA,3.3V,,,"/>
+<approved hash="104,1,320.04,106.68,IC3,VDDIN,3.3V,,,"/>
+<approved hash="104,1,320.04,45.72,IC3,GNDA,GND,,,"/>
+<approved hash="104,1,406.4,162.56,LED1,VDD,3.3V,,,"/>
+<approved hash="104,1,104.14,66.04,U1,IN,VOUT,,,"/>
+<approved hash="113,1,139.596,107.846,FRAME1,,,,,"/>
+<approved hash="113,1,129.777,128.401,JP3,,,,,"/>
+<approved hash="113,1,167.403,125.599,JP4,,,,,"/>
+</errors>
+</schematic>
+</drawing>
+<compatibility>
+<note version="6.3" minversion="6.2.2" severity="warning">
+Since Version 6.2.2 text objects can contain more than one line,
+which will not be processed correctly with this version.
+</note>
+<note version="8.2" severity="warning">
+Since Version 8.2, EAGLE supports online libraries. The ids
+of those online libraries will not be understood (or retained)
+with this version.
+</note>
+<note version="8.3" severity="warning">
+Since Version 8.3, EAGLE supports URNs for individual library
+assets (packages, symbols, and devices). The URNs of those assets
+will not be understood (or retained) with this version.
+</note>
+</compatibility>
+</eagle>
diff --git a/PCB/Sensor Boards/OSO-MISC-21-016 Power Test.brd b/PCB/Sensor Boards/OSO-MISC-21-016 Power Test.brd
new file mode 100644
index 00000000..0960450d
--- /dev/null
+++ b/PCB/Sensor Boards/OSO-MISC-21-016 Power Test.brd
@@ -0,0 +1,543 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE eagle SYSTEM "eagle.dtd">
+<eagle version="9.6.2">
+<drawing>
+<settings>
+<setting alwaysvectorfont="yes"/>
+<setting keepoldvectorfont="yes"/>
+<setting verticaltext="up"/>
+</settings>
+<grid distance="0.005" unitdist="inch" unit="inch" style="lines" multiple="1" display="no" altdistance="0.001" altunitdist="inch" altunit="inch"/>
+<layers>
+<layer number="1" name="Top" color="4" fill="1" visible="no" active="yes"/>
+<layer number="2" name="Route2" color="1" fill="3" visible="no" active="no"/>
+<layer number="3" name="Route3" color="4" fill="3" visible="no" active="no"/>
+<layer number="4" name="Route4" color="1" fill="4" visible="no" active="no"/>
+<layer number="5" name="Route5" color="4" fill="4" visible="no" active="no"/>
+<layer number="6" name="Route6" color="1" fill="8" visible="no" active="no"/>
+<layer number="7" name="Route7" color="4" fill="8" visible="no" active="no"/>
+<layer number="8" name="Route8" color="1" fill="2" visible="no" active="no"/>
+<layer number="9" name="Route9" color="4" fill="2" visible="no" active="no"/>
+<layer number="10" name="Route10" color="1" fill="7" visible="no" active="no"/>
+<layer number="11" name="Route11" color="4" fill="7" visible="no" active="no"/>
+<layer number="12" name="Route12" color="1" fill="5" visible="no" active="no"/>
+<layer number="13" name="Route13" color="4" fill="5" visible="no" active="no"/>
+<layer number="14" name="Route14" color="1" fill="6" visible="no" active="no"/>
+<layer number="15" name="Route15" color="4" fill="6" visible="no" active="no"/>
+<layer number="16" name="Bottom" color="1" fill="1" visible="yes" active="yes"/>
+<layer number="17" name="Pads" color="2" fill="1" visible="yes" active="yes"/>
+<layer number="18" name="Vias" color="2" fill="1" visible="yes" active="yes"/>
+<layer number="19" name="Unrouted" color="6" fill="1" visible="yes" active="yes"/>
+<layer number="20" name="Dimension" color="15" fill="1" visible="yes" active="yes"/>
+<layer number="21" name="tPlace" color="14" fill="1" visible="no" active="yes"/>
+<layer number="22" name="bPlace" color="13" fill="1" visible="yes" active="yes"/>
+<layer number="23" name="tOrigins" color="15" fill="1" visible="no" active="yes"/>
+<layer number="24" name="bOrigins" color="15" fill="1" visible="yes" active="yes"/>
+<layer number="25" name="tNames" color="7" fill="1" visible="no" active="yes"/>
+<layer number="26" name="bNames" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="27" name="tValues" color="7" fill="1" visible="no" active="yes"/>
+<layer number="28" name="bValues" color="7" fill="1" visible="no" active="yes"/>
+<layer number="29" name="tStop" color="7" fill="3" visible="no" active="yes"/>
+<layer number="30" name="bStop" color="7" fill="6" visible="no" active="yes"/>
+<layer number="31" name="tCream" color="7" fill="4" visible="no" active="yes"/>
+<layer number="32" name="bCream" color="7" fill="5" visible="no" active="yes"/>
+<layer number="33" name="tFinish" color="6" fill="3" visible="no" active="yes"/>
+<layer number="34" name="bFinish" color="6" fill="6" visible="no" active="yes"/>
+<layer number="35" name="tGlue" color="7" fill="4" visible="no" active="yes"/>
+<layer number="36" name="bGlue" color="7" fill="5" visible="no" active="yes"/>
+<layer number="37" name="tTest" color="7" fill="1" visible="no" active="yes"/>
+<layer number="38" name="bTest" color="7" fill="1" visible="no" active="yes"/>
+<layer number="39" name="tKeepout" color="4" fill="11" visible="no" active="yes"/>
+<layer number="40" name="bKeepout" color="1" fill="11" visible="yes" active="yes"/>
+<layer number="41" name="tRestrict" color="4" fill="10" visible="no" active="yes"/>
+<layer number="42" name="bRestrict" color="1" fill="10" visible="yes" active="yes"/>
+<layer number="43" name="vRestrict" color="2" fill="10" visible="no" active="yes"/>
+<layer number="44" name="Drills" color="7" fill="1" visible="no" active="yes"/>
+<layer number="45" name="Holes" color="7" fill="1" visible="no" active="yes"/>
+<layer number="46" name="Milling" color="3" fill="1" visible="no" active="yes"/>
+<layer number="47" name="Measures" color="7" fill="1" visible="no" active="yes"/>
+<layer number="48" name="Document" color="7" fill="1" visible="no" active="yes"/>
+<layer number="49" name="Reference" color="7" fill="1" visible="no" active="yes"/>
+<layer number="50" name="dxf" color="7" fill="1" visible="no" active="yes"/>
+<layer number="51" name="tDocu" color="15" fill="1" visible="no" active="yes"/>
+<layer number="52" name="bDocu" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="53" name="tGND_GNDA" color="7" fill="9" visible="no" active="no"/>
+<layer number="54" name="bGND_GNDA" color="1" fill="9" visible="no" active="no"/>
+<layer number="56" name="wert" color="7" fill="1" visible="no" active="yes"/>
+<layer number="57" name="tCAD" color="7" fill="1" visible="no" active="no"/>
+<layer number="58" name="b3D" color="7" fill="1" visible="no" active="no"/>
+<layer number="59" name="tCarbon" color="7" fill="1" visible="no" active="no"/>
+<layer number="60" name="bCarbon" color="7" fill="1" visible="no" active="no"/>
+<layer number="61" name="stand" color="7" fill="1" visible="no" active="no"/>
+<layer number="88" name="SimResults" color="9" fill="1" visible="no" active="no"/>
+<layer number="89" name="SimProbes" color="9" fill="1" visible="no" active="no"/>
+<layer number="90" name="Modules" color="7" fill="1" visible="no" active="no"/>
+<layer number="91" name="Nets" color="2" fill="1" visible="no" active="no"/>
+<layer number="92" name="Busses" color="1" fill="1" visible="no" active="no"/>
+<layer number="93" name="Pins" color="2" fill="1" visible="no" active="no"/>
+<layer number="94" name="Symbols" color="4" fill="1" visible="no" active="no"/>
+<layer number="95" name="Names" color="7" fill="1" visible="no" active="no"/>
+<layer number="96" name="Values" color="7" fill="1" visible="no" active="no"/>
+<layer number="97" name="Info" color="7" fill="1" visible="no" active="no"/>
+<layer number="98" name="Guide" color="6" fill="1" visible="no" active="no"/>
+<layer number="99" name="SpiceOrder" color="7" fill="1" visible="no" active="no"/>
+<layer number="100" name="Muster" color="7" fill="1" visible="no" active="no"/>
+<layer number="101" name="Patch_Top" color="12" fill="4" visible="no" active="yes"/>
+<layer number="102" name="Vscore" color="7" fill="1" visible="no" active="yes"/>
+<layer number="103" name="fp3" color="7" fill="1" visible="no" active="yes"/>
+<layer number="104" name="Name" color="7" fill="1" visible="no" active="yes"/>
+<layer number="105" name="Beschreib" color="9" fill="1" visible="no" active="yes"/>
+<layer number="106" name="BGA-Top" color="4" fill="1" visible="no" active="yes"/>
+<layer number="107" name="BD-Top" color="5" fill="1" visible="no" active="yes"/>
+<layer number="108" name="fp8" color="7" fill="1" visible="no" active="yes"/>
+<layer number="109" name="fp9" color="7" fill="1" visible="no" active="yes"/>
+<layer number="110" name="fp0" color="7" fill="1" visible="no" active="yes"/>
+<layer number="111" name="LPC17xx" color="7" fill="1" visible="no" active="yes"/>
+<layer number="112" name="tSilk" color="7" fill="1" visible="no" active="yes"/>
+<layer number="113" name="ReferenceLS" color="7" fill="1" visible="no" active="no"/>
+<layer number="114" name="tPlaceRed" color="7" fill="1" visible="no" active="yes"/>
+<layer number="115" name="FRNTMAAT2" color="7" fill="1" visible="no" active="yes"/>
+<layer number="116" name="Patch_BOT" color="9" fill="4" visible="no" active="yes"/>
+<layer number="117" name="BACKMAAT1" color="7" fill="1" visible="no" active="yes"/>
+<layer number="118" name="Rect_Pads" color="7" fill="1" visible="no" active="no"/>
+<layer number="119" name="KAP_TEKEN" color="7" fill="1" visible="no" active="yes"/>
+<layer number="120" name="KAP_MAAT1" color="7" fill="1" visible="no" active="yes"/>
+<layer number="121" name="_tsilk" color="7" fill="1" visible="no" active="yes"/>
+<layer number="122" name="_bsilk" color="7" fill="1" visible="no" active="yes"/>
+<layer number="123" name="tTestmark" color="7" fill="1" visible="no" active="yes"/>
+<layer number="124" name="bTestmark" color="7" fill="1" visible="no" active="yes"/>
+<layer number="125" name="_tNames" color="7" fill="1" visible="no" active="yes"/>
+<layer number="126" name="_bNames" color="7" fill="1" visible="no" active="yes"/>
+<layer number="127" name="_tValues" color="7" fill="1" visible="no" active="yes"/>
+<layer number="128" name="_bValues" color="7" fill="1" visible="no" active="yes"/>
+<layer number="129" name="Mask" color="7" fill="1" visible="no" active="yes"/>
+<layer number="130" name="SMDSTROOK" color="7" fill="1" visible="no" active="yes"/>
+<layer number="131" name="tAdjust" color="7" fill="1" visible="no" active="yes"/>
+<layer number="132" name="bAdjust" color="7" fill="1" visible="no" active="yes"/>
+<layer number="133" name="bottom_silk" color="7" fill="1" visible="no" active="yes"/>
+<layer number="134" name="silk_top" color="7" fill="1" visible="no" active="yes"/>
+<layer number="135" name="silk_bottom" color="7" fill="1" visible="no" active="yes"/>
+<layer number="136" name="silktop" color="7" fill="1" visible="no" active="yes"/>
+<layer number="137" name="silkbottom" color="7" fill="1" visible="no" active="yes"/>
+<layer number="138" name="EEE" color="7" fill="1" visible="no" active="yes"/>
+<layer number="139" name="_tKeepout" color="7" fill="1" visible="no" active="yes"/>
+<layer number="140" name="mbKeepout" color="7" fill="1" visible="no" active="yes"/>
+<layer number="141" name="ASSEMBLY_TOP" color="7" fill="1" visible="no" active="yes"/>
+<layer number="142" name="mbRestrict" color="7" fill="1" visible="no" active="yes"/>
+<layer number="143" name="PLACE_BOUND_TOP" color="7" fill="1" visible="no" active="yes"/>
+<layer number="144" name="Drill_legend" color="7" fill="1" visible="no" active="yes"/>
+<layer number="145" name="DrillLegend_01-16" color="7" fill="1" visible="no" active="yes"/>
+<layer number="146" name="DrillLegend_01-20" color="7" fill="1" visible="no" active="yes"/>
+<layer number="147" name="PIN_NUMBER" color="7" fill="1" visible="no" active="yes"/>
+<layer number="148" name="mDocument" color="7" fill="1" visible="no" active="yes"/>
+<layer number="149" name="DrillLegend_02-15" color="7" fill="1" visible="no" active="yes"/>
+<layer number="150" name="Notes" color="7" fill="1" visible="no" active="yes"/>
+<layer number="151" name="HeatSink" color="7" fill="1" visible="no" active="yes"/>
+<layer number="152" name="_bDocu" color="7" fill="1" visible="no" active="yes"/>
+<layer number="153" name="FabDoc1" color="6" fill="1" visible="no" active="no"/>
+<layer number="154" name="FabDoc2" color="2" fill="1" visible="no" active="no"/>
+<layer number="155" name="FabDoc3" color="7" fill="15" visible="no" active="no"/>
+<layer number="166" name="AntennaArea" color="7" fill="1" visible="no" active="yes"/>
+<layer number="168" name="4mmHeightArea" color="7" fill="1" visible="no" active="yes"/>
+<layer number="191" name="mNets" color="7" fill="1" visible="no" active="yes"/>
+<layer number="192" name="mBusses" color="7" fill="1" visible="no" active="yes"/>
+<layer number="193" name="mPins" color="7" fill="1" visible="no" active="yes"/>
+<layer number="194" name="mSymbols" color="7" fill="1" visible="no" active="yes"/>
+<layer number="195" name="mNames" color="7" fill="1" visible="no" active="yes"/>
+<layer number="196" name="mValues" color="7" fill="1" visible="no" active="yes"/>
+<layer number="199" name="Contour" color="7" fill="1" visible="no" active="yes"/>
+<layer number="200" name="200bmp" color="14" fill="10" visible="no" active="yes"/>
+<layer number="201" name="201bmp" color="13" fill="1" visible="no" active="yes"/>
+<layer number="202" name="202bmp" color="3" fill="1" visible="no" active="yes"/>
+<layer number="203" name="203bmp" color="4" fill="10" visible="no" active="yes"/>
+<layer number="204" name="204bmp" color="5" fill="10" visible="no" active="yes"/>
+<layer number="205" name="205bmp" color="6" fill="10" visible="no" active="yes"/>
+<layer number="206" name="206bmp" color="7" fill="10" visible="no" active="yes"/>
+<layer number="207" name="207bmp" color="8" fill="10" visible="no" active="yes"/>
+<layer number="208" name="208bmp" color="9" fill="10" visible="no" active="yes"/>
+<layer number="209" name="209bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="210" name="210bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="211" name="211bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="212" name="212bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="213" name="213bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="214" name="214bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="215" name="215bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="216" name="216bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="217" name="217bmp" color="18" fill="1" visible="no" active="no"/>
+<layer number="218" name="218bmp" color="19" fill="1" visible="no" active="no"/>
+<layer number="219" name="219bmp" color="20" fill="1" visible="no" active="no"/>
+<layer number="220" name="220bmp" color="21" fill="1" visible="no" active="no"/>
+<layer number="221" name="221bmp" color="22" fill="1" visible="no" active="no"/>
+<layer number="222" name="222bmp" color="23" fill="1" visible="no" active="no"/>
+<layer number="223" name="223bmp" color="24" fill="1" visible="no" active="no"/>
+<layer number="224" name="224bmp" color="25" fill="1" visible="no" active="no"/>
+<layer number="225" name="225bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="226" name="226bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="227" name="227bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="228" name="228bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="229" name="229bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="230" name="230bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="231" name="Eagle3D_PG1" color="7" fill="1" visible="no" active="no"/>
+<layer number="232" name="Eagle3D_PG2" color="7" fill="1" visible="no" active="no"/>
+<layer number="233" name="Eagle3D_PG3" color="7" fill="1" visible="no" active="no"/>
+<layer number="248" name="Housing" color="7" fill="1" visible="no" active="yes"/>
+<layer number="249" name="Edge" color="7" fill="1" visible="no" active="yes"/>
+<layer number="250" name="Descript" color="7" fill="1" visible="no" active="no"/>
+<layer number="251" name="SMDround" color="7" fill="1" visible="no" active="no"/>
+<layer number="254" name="cooling" color="7" fill="1" visible="no" active="yes"/>
+<layer number="255" name="routoute" color="7" fill="1" visible="no" active="yes"/>
+</layers>
+<board>
+<plain>
+<wire x1="-2.4892" y1="-2.794" x2="-2.7432" y2="-2.54" width="0" layer="20" curve="90"/>
+<wire x1="-2.7432" y1="-2.54" x2="-7.493" y2="-2.54" width="0" layer="20"/>
+<wire x1="-8.128" y1="-1.905" x2="-11.049" y2="-1.905" width="0" layer="20"/>
+<wire x1="-11.049" y1="-1.905" x2="-11.938" y2="-1.016" width="0" layer="20" curve="-90"/>
+<wire x1="-11.938" y1="-1.016" x2="-11.938" y2="2.921" width="0" layer="20"/>
+<wire x1="-11.938" y1="2.921" x2="-11.049" y2="3.81" width="0" layer="20" curve="-90"/>
+<wire x1="-11.049" y1="3.81" x2="2.1082" y2="3.81" width="0" layer="20"/>
+<wire x1="2.1082" y1="3.81" x2="2.4892" y2="3.429" width="0" layer="20" curve="-90"/>
+<wire x1="2.4892" y1="3.429" x2="2.4892" y2="-2.794" width="0" layer="20"/>
+<wire x1="-7.493" y1="-2.54" x2="-8.128" y2="-1.905" width="0" layer="20" curve="90"/>
+<text x="-1.778" y="3.556" size="0.6096" layer="21" font="vector" ratio="18" align="top-center">OSO-MISC-21-016
+Power Tester</text>
+<wire x1="2.4892" y1="-1.524" x2="-5.715" y2="-1.524" width="0.127" layer="21" style="shortdash"/>
+<wire x1="-6.223" y1="3.048" x2="-6.223" y2="-1.016" width="0.127" layer="21" style="shortdash"/>
+<wire x1="-6.223" y1="-1.016" x2="-5.715" y2="-1.524" width="0.127" layer="21" style="shortdash" curve="90"/>
+<wire x1="-6.223" y1="3.048" x2="-6.985" y2="3.81" width="0.127" layer="21" style="shortdash" curve="90"/>
+<text x="-1.778" y="1.651" size="0.508" layer="21" font="vector" ratio="12" align="top-center">Must be only power
+source to watch.
+DO NOT USE ALONG
+WITH A COIN CELL!!!</text>
+</plain>
+<libraries>
+<library name="FH19C-9S-0.5SH">
+<description>&lt;b&gt;https://componentsearchengine.com&lt;/b&gt;&lt;p&gt;
+&lt;author&gt;Created by SamacSys&lt;/author&gt;</description>
+<packages>
+<package name="FH19C9S05SH10-FFC">
+<description>&lt;b&gt;FH19C-9S-0.5SH(10)-1&lt;/b&gt;&lt;br&gt;
+</description>
+<smd name="1" x="2" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="2" x="1.5" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="3" x="1" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="4" x="0.5" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="5" x="0" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="6" x="-0.5" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="7" x="-1" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="8" x="-1.5" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="9" x="-2" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<wire x1="-2.4892" y1="0" x2="-2.4892" y2="-3.35" width="0" layer="20"/>
+<wire x1="-2.3392" y1="-3.5" x2="2.3392" y2="-3.5" width="0" layer="20"/>
+<wire x1="2.4892" y1="0" x2="2.4892" y2="-3.35" width="0" layer="20"/>
+<wire x1="-2.3392" y1="-3.5" x2="-2.4892" y2="-3.35" width="0" layer="20" curve="-90"/>
+<wire x1="2.3392" y1="-3.5" x2="2.4892" y2="-3.35" width="0" layer="20" curve="90"/>
+<polygon width="0.1524" layer="30">
+<vertex x="-2.4902" y="-0.9742"/>
+<vertex x="2.4882" y="-0.9742"/>
+<vertex x="2.4892" y="-3.4798"/>
+<vertex x="-2.4892" y="-3.4798"/>
+</polygon>
+</package>
+</packages>
+</library>
+<library name="testpad" urn="urn:adsk.eagle:library:385">
+<description>&lt;b&gt;Test Pins/Pads&lt;/b&gt;&lt;p&gt;
+Cream on SMD OFF.&lt;br&gt;
+new: Attribute TP_SIGNAL_NAME&lt;br&gt;
+&lt;author&gt;Created by librarian@cadsoft.de&lt;/author&gt;</description>
+<packages>
+<package name="B2,54" urn="urn:adsk.eagle:footprint:27901/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<wire x1="-0.635" y1="0" x2="0.635" y2="0" width="0.0024" layer="37"/>
+<wire x1="0" y1="-0.635" x2="0" y2="0.635" width="0.0024" layer="37"/>
+<circle x="0" y="0" radius="0.635" width="0.254" layer="37"/>
+<smd name="TP" x="0" y="0" dx="2.54" dy="2.54" layer="1" roundness="100" cream="no"/>
+<text x="-1.27" y="1.651" size="1.27" layer="25" ratio="10">&gt;NAME</text>
+<text x="-1.27" y="-1.397" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="-1.27" y="-3.175" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+</packages>
+<packages3d>
+<package3d name="B2,54" urn="urn:adsk.eagle:package:27948/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="B2,54"/>
+</packageinstances>
+</package3d>
+</packages3d>
+</library>
+</libraries>
+<attributes>
+<attribute name="REV" value="D"/>
+</attributes>
+<variantdefs>
+</variantdefs>
+<classes>
+<class number="0" name="default" width="0.2032" drill="0">
+</class>
+<class number="1" name="power" width="0.2032" drill="0">
+</class>
+<class number="2" name="gnd" width="0.2032" drill="0">
+</class>
+</classes>
+<designrules name="oshpark-2layer *">
+<description language="en">&lt;b&gt;OSH Park Design Rules&lt;/b&gt;
+&lt;p&gt;
+Please make sure your boards conform to these design rules.
+&lt;/p&gt;
+&lt;p&gt;
+Note, that not all DRC settings must be set by the manufacturer. Several can be adjusted for the design, including those listed on our docs page here.
+&lt;a href=&quot;http://docs.oshpark.com/design-tools/eagle/design-rules-files/&quot;&gt;Adjustable Settings&lt;/a&gt;
+&lt;/p&gt;</description>
+<param name="layerSetup" value="(1*16)"/>
+<param name="mtCopper" value="0.035559375mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.035559375mm"/>
+<param name="mtIsolate" value="1.6mm 0.1499mm 0.2007mm 0.1499mm 0.2007mm 0.1499mm 0.2007mm 0.1499mm 0.2007mm 0.1499mm 0.2007mm 0.1499mm 0.2007mm 0.1499mm 0.2007mm"/>
+<param name="mdWireWire" value="6mil"/>
+<param name="mdWirePad" value="6mil"/>
+<param name="mdWireVia" value="6mil"/>
+<param name="mdPadPad" value="6mil"/>
+<param name="mdPadVia" value="6mil"/>
+<param name="mdViaVia" value="6mil"/>
+<param name="mdSmdPad" value="6mil"/>
+<param name="mdSmdVia" value="6mil"/>
+<param name="mdSmdSmd" value="6mil"/>
+<param name="mdViaViaSameLayer" value="8mil"/>
+<param name="mnLayersViaInSmd" value="2"/>
+<param name="mdCopperDimension" value="15mil"/>
+<param name="mdDrill" value="6mil"/>
+<param name="mdSmdStop" value="0mil"/>
+<param name="msWidth" value="6mil"/>
+<param name="msDrill" value="10mil"/>
+<param name="msMicroVia" value="10mil"/>
+<param name="msBlindViaRatio" value="0.5"/>
+<param name="rvPadTop" value="0.25"/>
+<param name="rvPadInner" value="0.25"/>
+<param name="rvPadBottom" value="0.25"/>
+<param name="rvViaOuter" value="0.25"/>
+<param name="rvViaInner" value="0.25"/>
+<param name="rvMicroViaOuter" value="0.25"/>
+<param name="rvMicroViaInner" value="0.25"/>
+<param name="rlMinPadTop" value="5mil"/>
+<param name="rlMaxPadTop" value="20mil"/>
+<param name="rlMinPadInner" value="5mil"/>
+<param name="rlMaxPadInner" value="20mil"/>
+<param name="rlMinPadBottom" value="5mil"/>
+<param name="rlMaxPadBottom" value="20mil"/>
+<param name="rlMinViaOuter" value="5mil"/>
+<param name="rlMaxViaOuter" value="20mil"/>
+<param name="rlMinViaInner" value="5mil"/>
+<param name="rlMaxViaInner" value="20mil"/>
+<param name="rlMinMicroViaOuter" value="5mil"/>
+<param name="rlMaxMicroViaOuter" value="20mil"/>
+<param name="rlMinMicroViaInner" value="5mil"/>
+<param name="rlMaxMicroViaInner" value="20mil"/>
+<param name="psTop" value="-1"/>
+<param name="psBottom" value="-1"/>
+<param name="psFirst" value="-1"/>
+<param name="psElongationLong" value="100"/>
+<param name="psElongationOffset" value="100"/>
+<param name="mvStopFrame" value="1"/>
+<param name="mvCreamFrame" value="0"/>
+<param name="mlMinStopFrame" value="2.5mil"/>
+<param name="mlMaxStopFrame" value="2.5mil"/>
+<param name="mlMinCreamFrame" value="0mil"/>
+<param name="mlMaxCreamFrame" value="0mil"/>
+<param name="mlViaStopLimit" value="12mil"/>
+<param name="srRoundness" value="0"/>
+<param name="srMinRoundness" value="0mil"/>
+<param name="srMaxRoundness" value="0mil"/>
+<param name="slThermalIsolate" value="10mil"/>
+<param name="slThermalsForVias" value="0"/>
+<param name="dpMaxLengthDifference" value="10mm"/>
+<param name="dpGapFactor" value="2.5"/>
+<param name="checkAngle" value="0"/>
+<param name="checkFont" value="1"/>
+<param name="checkRestrict" value="1"/>
+<param name="checkStop" value="0"/>
+<param name="checkValues" value="0"/>
+<param name="checkNames" value="1"/>
+<param name="checkWireStubs" value="1"/>
+<param name="checkPolygonWidth" value="0"/>
+<param name="useDiameter" value="13"/>
+<param name="maxErrors" value="50"/>
+</designrules>
+<autorouter>
+<pass name="Default">
+<param name="RoutingGrid" value="50mil"/>
+<param name="AutoGrid" value="1"/>
+<param name="Efforts" value="0"/>
+<param name="TopRouterVariant" value="1"/>
+<param name="tpViaShape" value="round"/>
+<param name="PrefDir.1" value="|"/>
+<param name="PrefDir.2" value="0"/>
+<param name="PrefDir.3" value="0"/>
+<param name="PrefDir.4" value="0"/>
+<param name="PrefDir.5" value="0"/>
+<param name="PrefDir.6" value="0"/>
+<param name="PrefDir.7" value="0"/>
+<param name="PrefDir.8" value="0"/>
+<param name="PrefDir.9" value="0"/>
+<param name="PrefDir.10" value="0"/>
+<param name="PrefDir.11" value="0"/>
+<param name="PrefDir.12" value="0"/>
+<param name="PrefDir.13" value="0"/>
+<param name="PrefDir.14" value="0"/>
+<param name="PrefDir.15" value="0"/>
+<param name="PrefDir.16" value="-"/>
+<param name="cfVia" value="8"/>
+<param name="cfNonPref" value="5"/>
+<param name="cfChangeDir" value="2"/>
+<param name="cfOrthStep" value="2"/>
+<param name="cfDiagStep" value="3"/>
+<param name="cfExtdStep" value="0"/>
+<param name="cfBonusStep" value="1"/>
+<param name="cfMalusStep" value="1"/>
+<param name="cfPadImpact" value="4"/>
+<param name="cfSmdImpact" value="4"/>
+<param name="cfBusImpact" value="0"/>
+<param name="cfHugging" value="3"/>
+<param name="cfAvoid" value="4"/>
+<param name="cfPolygon" value="10"/>
+<param name="cfBase.1" value="0"/>
+<param name="cfBase.2" value="1"/>
+<param name="cfBase.3" value="1"/>
+<param name="cfBase.4" value="1"/>
+<param name="cfBase.5" value="1"/>
+<param name="cfBase.6" value="1"/>
+<param name="cfBase.7" value="1"/>
+<param name="cfBase.8" value="1"/>
+<param name="cfBase.9" value="1"/>
+<param name="cfBase.10" value="1"/>
+<param name="cfBase.11" value="1"/>
+<param name="cfBase.12" value="1"/>
+<param name="cfBase.13" value="1"/>
+<param name="cfBase.14" value="1"/>
+<param name="cfBase.15" value="1"/>
+<param name="cfBase.16" value="0"/>
+<param name="mnVias" value="20"/>
+<param name="mnSegments" value="9999"/>
+<param name="mnExtdSteps" value="9999"/>
+<param name="mnRipupLevel" value="10"/>
+<param name="mnRipupSteps" value="100"/>
+<param name="mnRipupTotal" value="100"/>
+</pass>
+<pass name="Follow-me" refer="Default" active="yes">
+</pass>
+<pass name="Busses" refer="Default" active="yes">
+<param name="cfNonPref" value="4"/>
+<param name="cfBusImpact" value="4"/>
+<param name="cfHugging" value="0"/>
+<param name="mnVias" value="0"/>
+</pass>
+<pass name="Route" refer="Default" active="yes">
+</pass>
+</autorouter>
+<elements>
+<element name="U$3" library="FH19C-9S-0.5SH" package="FH19C9S05SH10-FFC" value="FH19C-9S-0.5SH_10-FFC" x="0" y="-2.794" smashed="yes"/>
+<element name="VCC" library="testpad" library_urn="urn:adsk.eagle:library:385" package="B2,54" package3d_urn="urn:adsk.eagle:package:27948/1" value="TPB2,54" x="-10.16" y="2.032" smashed="yes" rot="MR0">
+<attribute name="NAME" x="-7.493" y="2.032" size="0.8128" layer="26" font="vector" ratio="18" rot="MR0" align="center"/>
+<attribute name="POPULARITY" value="3" x="-10.16" y="2.032" size="0.8128" layer="28" font="vector" ratio="18" rot="MR0" display="off"/>
+<attribute name="TP_SIGNAL_NAME" value="" x="-9.525" y="0.127" size="1" layer="38" rot="MR0"/>
+<attribute name="VALUE" x="-9.525" y="1.27" size="0.8128" layer="28" font="vector" ratio="18" rot="MR0" align="center"/>
+</element>
+<element name="GND" library="testpad" library_urn="urn:adsk.eagle:library:385" package="B2,54" package3d_urn="urn:adsk.eagle:package:27948/1" value="TPB2,54" x="-7.874" y="-0.254" smashed="yes" rot="MR0">
+<attribute name="NAME" x="-5.207" y="-0.254" size="0.8128" layer="26" font="vector" ratio="18" rot="MR0" align="center"/>
+<attribute name="POPULARITY" value="3" x="-7.874" y="-0.254" size="0.8128" layer="28" font="vector" ratio="18" rot="MR0" display="off"/>
+<attribute name="TP_SIGNAL_NAME" value="" x="-7.239" y="-2.159" size="1" layer="38" rot="MR0"/>
+<attribute name="VALUE" x="-7.239" y="-1.016" size="0.8128" layer="28" font="vector" ratio="18" rot="MR0" align="center"/>
+</element>
+</elements>
+<signals>
+<signal name="GND" class="2">
+<contactref element="U$3" pad="2"/>
+<contactref element="GND" pad="TP"/>
+<wire x1="-7.874" y1="-0.254" x2="-1.4612" y2="-0.254" width="0.254" layer="16"/>
+<wire x1="1.5" y1="-5.044" x2="1.5" y2="-3.2152" width="0.254" layer="16"/>
+<wire x1="1.5" y1="-3.2152" x2="-1.4612" y2="-0.254" width="0.254" layer="16"/>
+<polygon width="0.254" layer="16">
+<vertex x="1.778" y="-3.4544"/>
+<vertex x="-2.5654" y="0.889"/>
+<vertex x="-8.001" y="0.889"/>
+<vertex x="-9.144" y="-0.254"/>
+<vertex x="-9.144" y="-2.032"/>
+<vertex x="-7.7216" y="-3.4544"/>
+</polygon>
+</signal>
+<signal name="VCC" class="1">
+<contactref element="U$3" pad="1"/>
+<contactref element="VCC" pad="TP"/>
+<wire x1="2" y1="-5.044" x2="1.9746" y2="-5.0186" width="0.254" layer="16"/>
+<wire x1="1.9746" y1="0.5694" x2="1.9746" y2="-5.0186" width="0.254" layer="16"/>
+<wire x1="1.9746" y1="0.5694" x2="1.492" y2="1.052" width="0.254" layer="16"/>
+<wire x1="1.492" y1="2.032" x2="1.492" y2="1.052" width="0.254" layer="16"/>
+<wire x1="1.492" y1="2.032" x2="-10.16" y2="2.032" width="0.254" layer="16"/>
+<polygon width="0.254" layer="16">
+<vertex x="-2.3622" y="1.2954"/>
+<vertex x="2.0574" y="-3.1242"/>
+<vertex x="2.794" y="-3.1242"/>
+<vertex x="2.794" y="3.556"/>
+<vertex x="2.286" y="4.064"/>
+<vertex x="-12.192" y="4.064"/>
+<vertex x="-12.192" y="1.2954"/>
+</polygon>
+</signal>
+</signals>
+<mfgpreviewcolors>
+<mfgpreviewcolor name="soldermaskcolor" color="0x64F0A000"/>
+<mfgpreviewcolor name="silkscreencolor" color="0xFFFEFEFE"/>
+<mfgpreviewcolor name="backgroundcolor" color="0xFF282828"/>
+<mfgpreviewcolor name="coppercolor" color="0xFFFFBF00"/>
+<mfgpreviewcolor name="substratecolor" color="0xFF786E46"/>
+</mfgpreviewcolors>
+<errors>
+<approved hash="4,16,9cc8a33735273f8c"/>
+<approved hash="4,16,75bf1b02d58151c8"/>
+<approved hash="4,16,70b4dd0ea9337bbd"/>
+<approved hash="4,16,42aacdba90153b82"/>
+<approved hash="4,16,c73eee013d8a7d31"/>
+<approved hash="4,16,9200d5cd109a9664"/>
+<approved hash="4,16,ad53f5b81819b47d"/>
+<approved hash="4,16,654600ffa8c2724f"/>
+<approved hash="4,16,1449b5f307c1274b"/>
+<approved hash="4,16,cb4ee6f31ac3d04e"/>
+<approved hash="4,16,85b313f6e9c5f2b6"/>
+<approved hash="4,16,d6b5b30f0b3fc9b5"/>
+<approved hash="4,16,27b00e0dbc3f14b2"/>
+<approved hash="4,16,2e147eaf8f3151ee"/>
+<approved hash="4,16,21a281a70cd6e8f0"/>
+<approved hash="4,16,698c9ef176a9cf60"/>
+<approved hash="4,16,c7ad4523f108e472"/>
+<approved hash="4,16,c43f11e108460bf1"/>
+<approved hash="4,16,85286978ed28c133"/>
+<approved hash="4,16,65bbe50a131d2975"/>
+<approved hash="4,16,d10cba08f42d4940"/>
+<approved hash="4,16,ba4bf49845b2c390"/>
+<approved hash="4,16,c7cd3c33c3d1aa5d"/>
+<approved hash="4,16,e30cbf5a20926eae"/>
+<approved hash="4,16,e30cb60601d26eae"/>
+</errors>
+</board>
+</drawing>
+<compatibility>
+<note version="6.3" minversion="6.2.2" severity="warning">
+Since Version 6.2.2 text objects can contain more than one line,
+which will not be processed correctly with this version.
+</note>
+<note version="8.2" severity="warning">
+Since Version 8.2, EAGLE supports online libraries. The ids
+of those online libraries will not be understood (or retained)
+with this version.
+</note>
+<note version="8.3" severity="warning">
+Since Version 8.3, EAGLE supports URNs for individual library
+assets (packages, symbols, and devices). The URNs of those assets
+will not be understood (or retained) with this version.
+</note>
+<note version="8.3" severity="warning">
+Since Version 8.3, EAGLE supports the association of 3D packages
+with devices in libraries, schematics, and board files. Those 3D
+packages will not be understood (or retained) with this version.
+</note>
+</compatibility>
+</eagle>
diff --git a/PCB/Sensor Boards/OSO-MISC-21-016 Power Test.sch b/PCB/Sensor Boards/OSO-MISC-21-016 Power Test.sch
new file mode 100644
index 00000000..7ca85fbd
--- /dev/null
+++ b/PCB/Sensor Boards/OSO-MISC-21-016 Power Test.sch
@@ -0,0 +1,1558 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE eagle SYSTEM "eagle.dtd">
+<eagle version="9.6.2">
+<drawing>
+<settings>
+<setting alwaysvectorfont="no"/>
+<setting keepoldvectorfont="yes"/>
+<setting verticaltext="up"/>
+</settings>
+<grid distance="0.1" unitdist="inch" unit="inch" style="lines" multiple="1" display="no" altdistance="0.01" altunitdist="inch" altunit="inch"/>
+<layers>
+<layer number="1" name="Top" color="4" fill="1" visible="yes" active="no"/>
+<layer number="2" name="Route2" color="1" fill="3" visible="yes" active="no"/>
+<layer number="3" name="Route3" color="4" fill="3" visible="yes" active="no"/>
+<layer number="4" name="Route4" color="1" fill="4" visible="yes" active="no"/>
+<layer number="5" name="Route5" color="4" fill="4" visible="yes" active="no"/>
+<layer number="6" name="Route6" color="1" fill="8" visible="yes" active="no"/>
+<layer number="7" name="Route7" color="4" fill="8" visible="yes" active="no"/>
+<layer number="8" name="Route8" color="1" fill="2" visible="yes" active="no"/>
+<layer number="9" name="Route9" color="4" fill="2" visible="yes" active="no"/>
+<layer number="10" name="Route10" color="1" fill="7" visible="yes" active="no"/>
+<layer number="11" name="Route11" color="4" fill="7" visible="yes" active="no"/>
+<layer number="12" name="Route12" color="1" fill="5" visible="yes" active="no"/>
+<layer number="13" name="Route13" color="4" fill="5" visible="yes" active="no"/>
+<layer number="14" name="Route14" color="1" fill="6" visible="yes" active="no"/>
+<layer number="15" name="Route15" color="4" fill="6" visible="yes" active="no"/>
+<layer number="16" name="Bottom" color="1" fill="1" visible="yes" active="no"/>
+<layer number="17" name="Pads" color="2" fill="1" visible="yes" active="no"/>
+<layer number="18" name="Vias" color="2" fill="1" visible="yes" active="no"/>
+<layer number="19" name="Unrouted" color="6" fill="1" visible="yes" active="no"/>
+<layer number="20" name="Dimension" color="15" fill="1" visible="yes" active="no"/>
+<layer number="21" name="tPlace" color="14" fill="1" visible="yes" active="no"/>
+<layer number="22" name="bPlace" color="13" fill="1" visible="yes" active="no"/>
+<layer number="23" name="tOrigins" color="15" fill="1" visible="yes" active="no"/>
+<layer number="24" name="bOrigins" color="15" fill="1" visible="yes" active="no"/>
+<layer number="25" name="tNames" color="7" fill="1" visible="yes" active="no"/>
+<layer number="26" name="bNames" color="7" fill="1" visible="yes" active="no"/>
+<layer number="27" name="tValues" color="7" fill="1" visible="yes" active="no"/>
+<layer number="28" name="bValues" color="7" fill="1" visible="yes" active="no"/>
+<layer number="29" name="tStop" color="7" fill="3" visible="no" active="no"/>
+<layer number="30" name="bStop" color="7" fill="6" visible="no" active="no"/>
+<layer number="31" name="tCream" color="7" fill="4" visible="no" active="no"/>
+<layer number="32" name="bCream" color="7" fill="5" visible="no" active="no"/>
+<layer number="33" name="tFinish" color="6" fill="3" visible="no" active="no"/>
+<layer number="34" name="bFinish" color="6" fill="6" visible="no" active="no"/>
+<layer number="35" name="tGlue" color="7" fill="4" visible="no" active="no"/>
+<layer number="36" name="bGlue" color="7" fill="5" visible="no" active="no"/>
+<layer number="37" name="tTest" color="7" fill="1" visible="yes" active="no"/>
+<layer number="38" name="bTest" color="7" fill="1" visible="yes" active="no"/>
+<layer number="39" name="tKeepout" color="4" fill="11" visible="no" active="no"/>
+<layer number="40" name="bKeepout" color="1" fill="11" visible="no" active="no"/>
+<layer number="41" name="tRestrict" color="4" fill="10" visible="no" active="no"/>
+<layer number="42" name="bRestrict" color="1" fill="10" visible="no" active="no"/>
+<layer number="43" name="vRestrict" color="2" fill="10" visible="no" active="no"/>
+<layer number="44" name="Drills" color="7" fill="1" visible="no" active="no"/>
+<layer number="45" name="Holes" color="7" fill="1" visible="no" active="no"/>
+<layer number="46" name="Milling" color="3" fill="1" visible="yes" active="no"/>
+<layer number="47" name="Measures" color="7" fill="1" visible="yes" active="no"/>
+<layer number="48" name="Document" color="7" fill="1" visible="yes" active="no"/>
+<layer number="49" name="Reference" color="7" fill="1" visible="yes" active="no"/>
+<layer number="50" name="dxf" color="7" fill="1" visible="yes" active="no"/>
+<layer number="51" name="tDocu" color="15" fill="1" visible="yes" active="no"/>
+<layer number="52" name="bDocu" color="7" fill="1" visible="yes" active="no"/>
+<layer number="53" name="tGND_GNDA" color="7" fill="9" visible="yes" active="no"/>
+<layer number="54" name="bGND_GNDA" color="1" fill="9" visible="yes" active="no"/>
+<layer number="56" name="wert" color="7" fill="1" visible="yes" active="no"/>
+<layer number="57" name="tCAD" color="7" fill="1" visible="yes" active="no"/>
+<layer number="58" name="b3D" color="7" fill="1" visible="yes" active="no"/>
+<layer number="59" name="tCarbon" color="7" fill="1" visible="yes" active="no"/>
+<layer number="60" name="bCarbon" color="7" fill="1" visible="yes" active="no"/>
+<layer number="61" name="stand" color="7" fill="1" visible="yes" active="no"/>
+<layer number="88" name="SimResults" color="9" fill="1" visible="yes" active="yes"/>
+<layer number="89" name="SimProbes" color="9" fill="1" visible="yes" active="yes"/>
+<layer number="90" name="Modules" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="91" name="Nets" color="2" fill="1" visible="yes" active="yes"/>
+<layer number="92" name="Busses" color="1" fill="1" visible="yes" active="yes"/>
+<layer number="93" name="Pins" color="2" fill="1" visible="no" active="yes"/>
+<layer number="94" name="Symbols" color="4" fill="1" visible="yes" active="yes"/>
+<layer number="95" name="Names" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="96" name="Values" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="97" name="Info" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="98" name="Guide" color="6" fill="1" visible="yes" active="yes"/>
+<layer number="99" name="SpiceOrder" color="7" fill="1" visible="no" active="no"/>
+<layer number="100" name="Muster" color="7" fill="1" visible="no" active="no"/>
+<layer number="101" name="Patch_Top" color="12" fill="4" visible="yes" active="yes"/>
+<layer number="102" name="Vscore" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="103" name="fp3" color="7" fill="1" visible="no" active="yes"/>
+<layer number="104" name="Name" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="105" name="Beschreib" color="9" fill="1" visible="yes" active="yes"/>
+<layer number="106" name="BGA-Top" color="4" fill="1" visible="yes" active="yes"/>
+<layer number="107" name="BD-Top" color="5" fill="1" visible="yes" active="yes"/>
+<layer number="108" name="fp8" color="7" fill="1" visible="no" active="yes"/>
+<layer number="109" name="fp9" color="7" fill="1" visible="no" active="yes"/>
+<layer number="110" name="fp0" color="7" fill="1" visible="no" active="yes"/>
+<layer number="111" name="LPC17xx" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="112" name="tSilk" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="113" name="ReferenceLS" color="7" fill="1" visible="no" active="no"/>
+<layer number="114" name="tPlaceRed" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="115" name="FRNTMAAT2" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="116" name="Patch_BOT" color="9" fill="4" visible="yes" active="yes"/>
+<layer number="117" name="BACKMAAT1" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="118" name="Rect_Pads" color="7" fill="1" visible="no" active="no"/>
+<layer number="119" name="KAP_TEKEN" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="120" name="KAP_MAAT1" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="121" name="_tsilk" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="122" name="_bsilk" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="123" name="tTestmark" color="7" fill="1" visible="no" active="yes"/>
+<layer number="124" name="bTestmark" color="7" fill="1" visible="no" active="yes"/>
+<layer number="125" name="_tNames" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="126" name="_bNames" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="127" name="_tValues" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="128" name="_bValues" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="129" name="Mask" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="130" name="SMDSTROOK" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="131" name="tAdjust" color="7" fill="1" visible="no" active="yes"/>
+<layer number="132" name="bAdjust" color="7" fill="1" visible="no" active="yes"/>
+<layer number="133" name="bottom_silk" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="134" name="silk_top" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="135" name="silk_bottom" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="136" name="silktop" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="137" name="silkbottom" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="138" name="EEE" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="139" name="_tKeepout" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="140" name="mbKeepout" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="141" name="ASSEMBLY_TOP" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="142" name="mbRestrict" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="143" name="PLACE_BOUND_TOP" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="144" name="Drill_legend" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="145" name="DrillLegend_01-16" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="146" name="DrillLegend_01-20" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="147" name="PIN_NUMBER" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="148" name="mDocument" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="149" name="DrillLegend_02-15" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="150" name="Notes" color="7" fill="1" visible="no" active="yes"/>
+<layer number="151" name="HeatSink" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="152" name="_bDocu" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="153" name="FabDoc1" color="6" fill="1" visible="no" active="no"/>
+<layer number="154" name="FabDoc2" color="2" fill="1" visible="no" active="no"/>
+<layer number="155" name="FabDoc3" color="7" fill="15" visible="no" active="no"/>
+<layer number="166" name="AntennaArea" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="168" name="4mmHeightArea" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="191" name="mNets" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="192" name="mBusses" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="193" name="mPins" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="194" name="mSymbols" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="195" name="mNames" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="196" name="mValues" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="199" name="Contour" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="200" name="200bmp" color="1" fill="10" visible="no" active="no"/>
+<layer number="201" name="201bmp" color="2" fill="1" visible="no" active="no"/>
+<layer number="202" name="202bmp" color="3" fill="1" visible="no" active="no"/>
+<layer number="203" name="203bmp" color="4" fill="10" visible="yes" active="yes"/>
+<layer number="204" name="204bmp" color="5" fill="10" visible="yes" active="yes"/>
+<layer number="205" name="205bmp" color="6" fill="10" visible="yes" active="yes"/>
+<layer number="206" name="206bmp" color="7" fill="10" visible="yes" active="yes"/>
+<layer number="207" name="207bmp" color="8" fill="10" visible="yes" active="yes"/>
+<layer number="208" name="208bmp" color="9" fill="10" visible="yes" active="yes"/>
+<layer number="209" name="209bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="210" name="210bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="211" name="211bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="212" name="212bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="213" name="213bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="214" name="214bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="215" name="215bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="216" name="216bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="217" name="217bmp" color="18" fill="1" visible="no" active="no"/>
+<layer number="218" name="218bmp" color="19" fill="1" visible="no" active="no"/>
+<layer number="219" name="219bmp" color="20" fill="1" visible="no" active="no"/>
+<layer number="220" name="220bmp" color="21" fill="1" visible="no" active="no"/>
+<layer number="221" name="221bmp" color="22" fill="1" visible="no" active="no"/>
+<layer number="222" name="222bmp" color="23" fill="1" visible="no" active="no"/>
+<layer number="223" name="223bmp" color="24" fill="1" visible="no" active="no"/>
+<layer number="224" name="224bmp" color="25" fill="1" visible="no" active="no"/>
+<layer number="225" name="225bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="226" name="226bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="227" name="227bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="228" name="228bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="229" name="229bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="230" name="230bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="231" name="Eagle3D_PG1" color="7" fill="1" visible="no" active="no"/>
+<layer number="232" name="Eagle3D_PG2" color="7" fill="1" visible="no" active="no"/>
+<layer number="233" name="Eagle3D_PG3" color="7" fill="1" visible="no" active="no"/>
+<layer number="248" name="Housing" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="249" name="Edge" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="250" name="Descript" color="7" fill="1" visible="no" active="no"/>
+<layer number="251" name="SMDround" color="7" fill="1" visible="no" active="no"/>
+<layer number="254" name="cooling" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="255" name="routoute" color="7" fill="1" visible="yes" active="yes"/>
+</layers>
+<schematic>
+<libraries>
+<library name="My Stuff">
+<description>Generated from &lt;b&gt;Hiking Log FeatherWing.brd&lt;/b&gt;&lt;p&gt;
+by exp-lbrs.ulp</description>
+<packages>
+</packages>
+<symbols>
+<symbol name="A4L-LOC">
+<wire x1="256.54" y1="3.81" x2="256.54" y2="8.89" width="0.1016" layer="94"/>
+<wire x1="256.54" y1="8.89" x2="256.54" y2="13.97" width="0.1016" layer="94"/>
+<wire x1="256.54" y1="13.97" x2="256.54" y2="19.05" width="0.1016" layer="94"/>
+<wire x1="256.54" y1="19.05" x2="256.54" y2="24.13" width="0.1016" layer="94"/>
+<wire x1="184.15" y1="3.81" x2="184.15" y2="24.13" width="0.1016" layer="94"/>
+<wire x1="184.15" y1="24.13" x2="215.265" y2="24.13" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="24.13" x2="256.54" y2="24.13" width="0.1016" layer="94"/>
+<wire x1="234.95" y1="3.81" x2="234.95" y2="8.89" width="0.1016" layer="94"/>
+<wire x1="234.95" y1="8.89" x2="256.54" y2="8.89" width="0.1016" layer="94"/>
+<wire x1="234.95" y1="8.89" x2="215.265" y2="8.89" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="8.89" x2="215.265" y2="3.81" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="8.89" x2="215.265" y2="13.97" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="13.97" x2="256.54" y2="13.97" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="13.97" x2="215.265" y2="19.05" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="19.05" x2="256.54" y2="19.05" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="19.05" x2="215.265" y2="24.13" width="0.1016" layer="94"/>
+<text x="217.17" y="15.24" size="2.54" layer="94">&gt;DRAWING_NAME</text>
+<text x="217.17" y="10.16" size="2.286" layer="94">&gt;LAST_DATE_TIME</text>
+<text x="228.473" y="5.08" size="2.54" layer="94">&gt;SHEET</text>
+<text x="216.916" y="4.953" size="2.54" layer="94">Sheet:</text>
+<frame x1="0" y1="0" x2="260.35" y2="179.07" columns="6" rows="4" layer="94"/>
+<text x="185.42" y="5.08" size="4.572" layer="94" font="vector" ratio="10">oddly
+specific
+objects</text>
+<text x="217.17" y="20.32" size="2.54" layer="94">by joey castillo</text>
+<text x="236.22" y="5.08" size="2.54" layer="94">cc-by-sa 4.0</text>
+</symbol>
+</symbols>
+<devicesets>
+<deviceset name="A4L-LOC" prefix="FRAME" uservalue="yes">
+<description>&lt;b&gt;FRAME&lt;/b&gt;&lt;p&gt;
+DIN A4, landscape with location and doc. field</description>
+<gates>
+<gate name="G$1" symbol="A4L-LOC" x="0" y="0"/>
+</gates>
+<devices>
+<device name="">
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+</devicesets>
+</library>
+<library name="FH19C-9S-0.5SH">
+<description>&lt;b&gt;https://componentsearchengine.com&lt;/b&gt;&lt;p&gt;
+&lt;author&gt;Created by SamacSys&lt;/author&gt;</description>
+<packages>
+<package name="FH19C9S05SH10-FFC">
+<description>&lt;b&gt;FH19C-9S-0.5SH(10)-1&lt;/b&gt;&lt;br&gt;
+</description>
+<smd name="1" x="2" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="2" x="1.5" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="3" x="1" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="4" x="0.5" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="5" x="0" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="6" x="-0.5" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="7" x="-1" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="8" x="-1.5" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="9" x="-2" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<wire x1="-2.4892" y1="0" x2="-2.4892" y2="-3.35" width="0" layer="20"/>
+<wire x1="-2.3392" y1="-3.5" x2="2.3392" y2="-3.5" width="0" layer="20"/>
+<wire x1="2.4892" y1="0" x2="2.4892" y2="-3.35" width="0" layer="20"/>
+<wire x1="-2.3392" y1="-3.5" x2="-2.4892" y2="-3.35" width="0" layer="20" curve="-90"/>
+<wire x1="2.3392" y1="-3.5" x2="2.4892" y2="-3.35" width="0" layer="20" curve="90"/>
+<polygon width="0.1524" layer="30">
+<vertex x="-2.4902" y="-0.9742"/>
+<vertex x="2.4882" y="-0.9742"/>
+<vertex x="2.4892" y="-3.4798"/>
+<vertex x="-2.4892" y="-3.4798"/>
+</polygon>
+</package>
+</packages>
+<symbols>
+<symbol name="FH19C-9S-0.5SH_10-FFC">
+<wire x1="-5.08" y1="12.7" x2="7.62" y2="12.7" width="0.254" layer="94"/>
+<wire x1="7.62" y1="-12.7" x2="7.62" y2="12.7" width="0.254" layer="94"/>
+<wire x1="7.62" y1="-12.7" x2="-5.08" y2="-12.7" width="0.254" layer="94"/>
+<wire x1="-5.08" y1="12.7" x2="-5.08" y2="-12.7" width="0.254" layer="94"/>
+<text x="8.89" y="17.78" size="1.778" layer="95" align="center-left">&gt;NAME</text>
+<text x="8.89" y="15.24" size="1.778" layer="96" align="center-left">&gt;VALUE</text>
+<pin name="1" x="12.7" y="10.16" length="middle" rot="R180"/>
+<pin name="2" x="12.7" y="7.62" length="middle" rot="R180"/>
+<pin name="3" x="12.7" y="5.08" length="middle" rot="R180"/>
+<pin name="4" x="12.7" y="2.54" length="middle" rot="R180"/>
+<pin name="5" x="12.7" y="0" length="middle" rot="R180"/>
+<pin name="6" x="12.7" y="-2.54" length="middle" rot="R180"/>
+<pin name="7" x="12.7" y="-5.08" length="middle" rot="R180"/>
+<pin name="8" x="12.7" y="-7.62" length="middle" rot="R180"/>
+<pin name="9" x="12.7" y="-10.16" length="middle" rot="R180"/>
+</symbol>
+</symbols>
+<devicesets>
+<deviceset name="FH19C-9S-0.5SH_10-FFC">
+<gates>
+<gate name="G$1" symbol="FH19C-9S-0.5SH_10-FFC" x="0" y="0"/>
+</gates>
+<devices>
+<device name="" package="FH19C9S05SH10-FFC">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+<connect gate="G$1" pin="3" pad="3"/>
+<connect gate="G$1" pin="4" pad="4"/>
+<connect gate="G$1" pin="5" pad="5"/>
+<connect gate="G$1" pin="6" pad="6"/>
+<connect gate="G$1" pin="7" pad="7"/>
+<connect gate="G$1" pin="8" pad="8"/>
+<connect gate="G$1" pin="9" pad="9"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+</devicesets>
+</library>
+<library name="supply1" urn="urn:adsk.eagle:library:371">
+<description>&lt;b&gt;Supply Symbols&lt;/b&gt;&lt;p&gt;
+ GND, VCC, 0V, +5V, -5V, etc.&lt;p&gt;
+ Please keep in mind, that these devices are necessary for the
+ automatic wiring of the supply signals.&lt;p&gt;
+ The pin name defined in the symbol is identical to the net which is to be wired automatically.&lt;p&gt;
+ In this library the device names are the same as the pin names of the symbols, therefore the correct signal names appear next to the supply symbols in the schematic.&lt;p&gt;
+ &lt;author&gt;Created by librarian@cadsoft.de&lt;/author&gt;</description>
+<packages>
+</packages>
+<symbols>
+<symbol name="GND" urn="urn:adsk.eagle:symbol:26925/1" library_version="1">
+<wire x1="-1.905" y1="0" x2="1.905" y2="0" width="0.254" layer="94"/>
+<text x="-2.54" y="-2.54" size="1.778" layer="96">&gt;VALUE</text>
+<pin name="GND" x="0" y="2.54" visible="off" length="short" direction="sup" rot="R270"/>
+</symbol>
+<symbol name="VCC" urn="urn:adsk.eagle:symbol:26928/1" library_version="1">
+<wire x1="1.27" y1="-1.905" x2="0" y2="0" width="0.254" layer="94"/>
+<wire x1="0" y1="0" x2="-1.27" y2="-1.905" width="0.254" layer="94"/>
+<text x="-2.54" y="-2.54" size="1.778" layer="96" rot="R90">&gt;VALUE</text>
+<pin name="VCC" x="0" y="-2.54" visible="off" length="short" direction="sup" rot="R90"/>
+</symbol>
+</symbols>
+<devicesets>
+<deviceset name="GND" urn="urn:adsk.eagle:component:26954/1" prefix="GND" library_version="1">
+<description>&lt;b&gt;SUPPLY SYMBOL&lt;/b&gt;</description>
+<gates>
+<gate name="1" symbol="GND" x="0" y="0"/>
+</gates>
+<devices>
+<device name="">
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+<deviceset name="VCC" urn="urn:adsk.eagle:component:26957/1" prefix="P+" library_version="1">
+<description>&lt;b&gt;SUPPLY SYMBOL&lt;/b&gt;</description>
+<gates>
+<gate name="VCC" symbol="VCC" x="0" y="0"/>
+</gates>
+<devices>
+<device name="">
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+</devicesets>
+</library>
+<library name="testpad" urn="urn:adsk.eagle:library:385">
+<description>&lt;b&gt;Test Pins/Pads&lt;/b&gt;&lt;p&gt;
+Cream on SMD OFF.&lt;br&gt;
+new: Attribute TP_SIGNAL_NAME&lt;br&gt;
+&lt;author&gt;Created by librarian@cadsoft.de&lt;/author&gt;</description>
+<packages>
+<package name="B1,27" urn="urn:adsk.eagle:footprint:27900/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<wire x1="-0.635" y1="0" x2="0.635" y2="0" width="0.0024" layer="37"/>
+<wire x1="0" y1="0.635" x2="0" y2="-0.635" width="0.0024" layer="37"/>
+<smd name="TP" x="0" y="0" dx="1.27" dy="1.27" layer="1" roundness="100" cream="no"/>
+<text x="-0.635" y="1.016" size="1.27" layer="25" ratio="10">&gt;NAME</text>
+<text x="-0.635" y="-0.762" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="-0.635" y="-1.905" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+<package name="B2,54" urn="urn:adsk.eagle:footprint:27901/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<wire x1="-0.635" y1="0" x2="0.635" y2="0" width="0.0024" layer="37"/>
+<wire x1="0" y1="-0.635" x2="0" y2="0.635" width="0.0024" layer="37"/>
+<circle x="0" y="0" radius="0.635" width="0.254" layer="37"/>
+<smd name="TP" x="0" y="0" dx="2.54" dy="2.54" layer="1" roundness="100" cream="no"/>
+<text x="-1.27" y="1.651" size="1.27" layer="25" ratio="10">&gt;NAME</text>
+<text x="-1.27" y="-1.397" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="-1.27" y="-3.175" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+<package name="P1-13" urn="urn:adsk.eagle:footprint:27902/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<circle x="0" y="0" radius="0.762" width="0.1524" layer="51"/>
+<pad name="TP" x="0" y="0" drill="1.3208" diameter="2.159" shape="octagon"/>
+<text x="-1.016" y="1.27" size="1.27" layer="25" ratio="10">&gt;NAME</text>
+<text x="0" y="0" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="-1.27" y="-2.54" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+<rectangle x1="-0.3302" y1="-0.3302" x2="0.3302" y2="0.3302" layer="51"/>
+</package>
+<package name="P1-13Y" urn="urn:adsk.eagle:footprint:27903/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<circle x="0" y="0" radius="0.762" width="0.1524" layer="51"/>
+<pad name="TP" x="0" y="0" drill="1.3208" diameter="1.905" shape="long" rot="R90"/>
+<text x="-0.889" y="2.159" size="1.27" layer="25" ratio="10">&gt;NAME</text>
+<text x="0" y="0" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="-1.27" y="-3.81" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+<rectangle x1="-0.3302" y1="-0.3302" x2="0.3302" y2="0.3302" layer="51"/>
+</package>
+<package name="P1-17" urn="urn:adsk.eagle:footprint:27904/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<circle x="0" y="0" radius="0.8128" width="0.1524" layer="51"/>
+<pad name="TP" x="0" y="0" drill="1.7018" diameter="2.54" shape="octagon"/>
+<text x="-1.143" y="1.397" size="1.27" layer="25" ratio="10">&gt;NAME</text>
+<text x="0" y="0" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="-1.27" y="-3.175" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+<rectangle x1="-0.3302" y1="-0.3302" x2="0.3302" y2="0.3302" layer="51"/>
+</package>
+<package name="P1-17Y" urn="urn:adsk.eagle:footprint:27905/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<circle x="0" y="0" radius="0.8128" width="0.1524" layer="51"/>
+<pad name="TP" x="0" y="0" drill="1.7018" diameter="2.1208" shape="long" rot="R90"/>
+<text x="-1.143" y="2.286" size="1.27" layer="25" ratio="10">&gt;NAME</text>
+<text x="0" y="0" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="-1.27" y="-3.81" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+<rectangle x1="-0.3302" y1="-0.3302" x2="0.3302" y2="0.3302" layer="51"/>
+</package>
+<package name="P1-20" urn="urn:adsk.eagle:footprint:27906/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<circle x="0" y="0" radius="1.016" width="0.1524" layer="51"/>
+<pad name="TP" x="0" y="0" drill="2.0066" diameter="3.1496" shape="octagon"/>
+<text x="-1.524" y="1.778" size="1.27" layer="25" ratio="10">&gt;NAME</text>
+<text x="0" y="0" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="-1.27" y="-3.175" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+<rectangle x1="-0.3302" y1="-0.3302" x2="0.3302" y2="0.3302" layer="51"/>
+</package>
+<package name="P1-20Y" urn="urn:adsk.eagle:footprint:27907/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<circle x="0" y="0" radius="1.016" width="0.1524" layer="51"/>
+<pad name="TP" x="0" y="0" drill="2.0066" diameter="2.54" shape="long" rot="R90"/>
+<text x="-1.27" y="2.794" size="1.27" layer="25" ratio="10">&gt;NAME</text>
+<text x="0" y="0" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="-1.27" y="-4.445" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+<rectangle x1="-0.3302" y1="-0.3302" x2="0.3302" y2="0.3302" layer="51"/>
+</package>
+<package name="TP06R" urn="urn:adsk.eagle:footprint:27908/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<smd name="TP" x="0" y="0" dx="0.6" dy="0.6" layer="1" roundness="100" cream="no"/>
+<text x="-0.3" y="0.4001" size="1.27" layer="25">&gt;NAME</text>
+<text x="-0.254" y="-0.381" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="0" y="-1.905" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+<package name="TP06SQ" urn="urn:adsk.eagle:footprint:27909/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<smd name="TP" x="0" y="0" dx="0.5996" dy="0.5996" layer="1" cream="no"/>
+<text x="-0.3" y="0.4001" size="1.27" layer="25">&gt;NAME</text>
+<text x="-0.254" y="-0.381" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="0" y="-1.905" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+<package name="TP07R" urn="urn:adsk.eagle:footprint:27910/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<smd name="TP" x="0" y="0" dx="0.7" dy="0.7" layer="1" roundness="100" cream="no"/>
+<text x="-0.3" y="0.4001" size="1.27" layer="25">&gt;NAME</text>
+<text x="-0.254" y="-0.508" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="0" y="-1.905" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+<package name="TP07SQ" urn="urn:adsk.eagle:footprint:27911/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<smd name="TP" x="0" y="0" dx="0.7" dy="0.7" layer="1" cream="no"/>
+<text x="-0.3" y="0.4001" size="1.27" layer="25">&gt;NAME</text>
+<text x="-0.381" y="-0.381" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="0" y="-1.905" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+<package name="TP08R" urn="urn:adsk.eagle:footprint:27912/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<smd name="TP" x="0" y="0" dx="0.8" dy="0.8" layer="1" roundness="100" cream="no"/>
+<text x="-0.3" y="0.4001" size="1.27" layer="25">&gt;NAME</text>
+<text x="-0.381" y="-0.381" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="0" y="-1.905" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+<package name="TP08SQ" urn="urn:adsk.eagle:footprint:27913/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<smd name="TP" x="0" y="0" dx="0.8" dy="0.8" layer="1" cream="no"/>
+<text x="-0.3" y="0.4001" size="1.27" layer="25">&gt;NAME</text>
+<text x="-0.381" y="-0.508" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="0" y="-1.905" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+<package name="TP09R" urn="urn:adsk.eagle:footprint:27914/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<smd name="TP" x="0" y="0" dx="0.9" dy="0.9" layer="1" roundness="100" cream="no"/>
+<text x="-0.4501" y="0.5001" size="1.27" layer="25">&gt;NAME</text>
+<text x="-0.381" y="-0.508" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="0" y="-1.905" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+<package name="TP09SQ" urn="urn:adsk.eagle:footprint:27915/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<smd name="TP" x="0" y="0" dx="0.8998" dy="0.8998" layer="1" cream="no"/>
+<text x="-0.4501" y="0.5001" size="1.27" layer="25">&gt;NAME</text>
+<text x="-0.381" y="-0.508" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="0" y="-1.905" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+<package name="TP10R" urn="urn:adsk.eagle:footprint:27916/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<smd name="TP" x="0" y="0" dx="1" dy="1" layer="1" roundness="100" cream="no"/>
+<text x="-0.5001" y="0.5499" size="1.27" layer="25">&gt;NAME</text>
+<text x="-0.381" y="-0.508" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="0" y="-1.905" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+<package name="TP10SQ" urn="urn:adsk.eagle:footprint:27917/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<smd name="TP" x="0" y="0" dx="1" dy="1" layer="1" cream="no"/>
+<text x="-0.5001" y="0.5499" size="1.27" layer="25">&gt;NAME</text>
+<text x="-0.508" y="-0.635" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="0" y="-1.905" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+<package name="TP11R" urn="urn:adsk.eagle:footprint:27918/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<smd name="TP" x="0" y="0" dx="1.1" dy="1.1" layer="1" roundness="100" cream="no"/>
+<text x="-0.5499" y="0.5999" size="1.27" layer="25">&gt;NAME</text>
+<text x="-0.508" y="-0.508" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="0" y="-1.905" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+<package name="TP11SQ" urn="urn:adsk.eagle:footprint:27919/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<smd name="TP" x="0" y="0" dx="1.1" dy="1.1" layer="1" cream="no"/>
+<text x="-0.5499" y="0.5999" size="1.27" layer="25">&gt;NAME</text>
+<text x="-0.508" y="-0.635" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="0" y="-2.54" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+<package name="TP12SQ" urn="urn:adsk.eagle:footprint:27920/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<smd name="TP" x="0" y="0" dx="1.1998" dy="1.1998" layer="1" cream="no"/>
+<text x="-0.5999" y="0.65" size="1.27" layer="25">&gt;NAME</text>
+<text x="-0.508" y="-0.635" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="0" y="-2.54" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+<package name="TP12R" urn="urn:adsk.eagle:footprint:27921/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<smd name="TP" x="0" y="0" dx="1.2" dy="1.2" layer="1" roundness="100" cream="no"/>
+<text x="-0.5999" y="0.65" size="1.27" layer="25">&gt;NAME</text>
+<text x="-0.508" y="-0.635" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="0" y="-2.54" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+<package name="TP13R" urn="urn:adsk.eagle:footprint:27922/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<smd name="TP" x="0" y="0" dx="1.3" dy="1.3" layer="1" roundness="100" cream="no"/>
+<text x="-0.65" y="0.7" size="1.27" layer="25">&gt;NAME</text>
+<text x="-0.508" y="-0.635" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="0" y="-2.54" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+<package name="TP14R" urn="urn:adsk.eagle:footprint:27923/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<smd name="TP" x="0" y="0" dx="1.4" dy="1.4" layer="1" roundness="100" cream="no"/>
+<text x="-0.7" y="0.7501" size="1.27" layer="25">&gt;NAME</text>
+<text x="-0.508" y="-0.762" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="0" y="-2.54" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+<package name="TP15R" urn="urn:adsk.eagle:footprint:27924/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<smd name="TP" x="0" y="0" dx="1.5" dy="1.5" layer="1" roundness="100" cream="no"/>
+<text x="-0.7501" y="0.8001" size="1.27" layer="25">&gt;NAME</text>
+<text x="-0.635" y="-0.762" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="0" y="-2.54" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+<package name="TP16R" urn="urn:adsk.eagle:footprint:27925/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<smd name="TP" x="0" y="0" dx="1.6" dy="1.6" layer="1" roundness="100" cream="no"/>
+<text x="-0.8001" y="0.8499" size="1.27" layer="25">&gt;NAME</text>
+<text x="-0.635" y="-0.762" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="0" y="-2.54" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+<package name="TP17R" urn="urn:adsk.eagle:footprint:27926/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<smd name="TP" x="0" y="0" dx="1.7" dy="1.7" layer="1" roundness="100" cream="no"/>
+<text x="-0.8499" y="0.8999" size="1.27" layer="25">&gt;NAME</text>
+<text x="-0.635" y="-0.889" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="0" y="-2.54" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+<package name="TP18R" urn="urn:adsk.eagle:footprint:27927/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<smd name="TP" x="0" y="0" dx="1.8" dy="1.8" layer="1" roundness="100" cream="no"/>
+<text x="-0.8999" y="0.95" size="1.27" layer="25">&gt;NAME</text>
+<text x="-0.762" y="-0.889" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="0" y="-2.54" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+<package name="TP19R" urn="urn:adsk.eagle:footprint:27928/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<smd name="TP" x="0" y="0" dx="1.9" dy="1.9" layer="1" roundness="100" cream="no"/>
+<text x="-0.95" y="1" size="1.27" layer="25">&gt;NAME</text>
+<text x="-0.762" y="-0.889" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="0" y="-2.54" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+<package name="TP20R" urn="urn:adsk.eagle:footprint:27929/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<smd name="TP" x="0" y="0" dx="2" dy="2" layer="1" roundness="100" cream="no"/>
+<text x="-1" y="1.05" size="1.27" layer="25">&gt;NAME</text>
+<text x="-0.762" y="-1.016" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="0" y="-2.54" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+<package name="TP13SQ" urn="urn:adsk.eagle:footprint:27930/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<smd name="TP" x="0" y="0" dx="1.3" dy="1.3" layer="1" cream="no"/>
+<text x="-0.65" y="0.7" size="1.27" layer="25">&gt;NAME</text>
+<text x="-0.635" y="-0.762" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="0" y="-2.54" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+<package name="TP14SQ" urn="urn:adsk.eagle:footprint:27931/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<smd name="TP" x="0" y="0" dx="1.4" dy="1.4" layer="1" cream="no"/>
+<text x="-0.7" y="0.7501" size="1.27" layer="25">&gt;NAME</text>
+<text x="-0.635" y="-0.762" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="0" y="-2.54" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+<package name="TP15SQ" urn="urn:adsk.eagle:footprint:27932/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<smd name="TP" x="0" y="0" dx="1.5" dy="1.5" layer="1" cream="no"/>
+<text x="-0.7501" y="0.8001" size="1.27" layer="25">&gt;NAME</text>
+<text x="-0.762" y="-0.889" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="0" y="-2.54" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+<package name="TP16SQ" urn="urn:adsk.eagle:footprint:27933/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<smd name="TP" x="0" y="0" dx="1.5996" dy="1.5996" layer="1" cream="no"/>
+<text x="-0.8001" y="0.8499" size="1.27" layer="25">&gt;NAME</text>
+<text x="-0.762" y="-0.889" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="0" y="-2.54" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+<package name="TP17SQ" urn="urn:adsk.eagle:footprint:27934/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<smd name="TP" x="0" y="0" dx="1.7" dy="1.7" layer="1" cream="no"/>
+<text x="-0.8499" y="0.8999" size="1.27" layer="25">&gt;NAME</text>
+<text x="-0.762" y="-0.889" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="0" y="-2.54" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+<package name="TP18SQ" urn="urn:adsk.eagle:footprint:27935/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<smd name="TP" x="0" y="0" dx="1.8" dy="1.8" layer="1" cream="no"/>
+<text x="-0.8999" y="0.95" size="1.27" layer="25">&gt;NAME</text>
+<text x="-0.889" y="-1.016" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="0" y="-2.54" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+<package name="TP19SQ" urn="urn:adsk.eagle:footprint:27936/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<smd name="TP" x="0" y="0" dx="1.8998" dy="1.8998" layer="1" cream="no"/>
+<text x="-0.95" y="1" size="1.27" layer="25">&gt;NAME</text>
+<text x="-0.889" y="-1.016" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="0" y="-2.54" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+<package name="TP20SQ" urn="urn:adsk.eagle:footprint:27937/1" library_version="3">
+<description>&lt;b&gt;TEST PAD&lt;/b&gt;</description>
+<smd name="TP" x="0" y="0" dx="2" dy="2" layer="1" cream="no"/>
+<text x="-1" y="1.05" size="1.27" layer="25">&gt;NAME</text>
+<text x="-1.016" y="-1.143" size="0.0254" layer="27">&gt;VALUE</text>
+<text x="0" y="-2.54" size="1" layer="37">&gt;TP_SIGNAL_NAME</text>
+</package>
+</packages>
+<packages3d>
+<package3d name="B1,27" urn="urn:adsk.eagle:package:27944/2" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="B1,27"/>
+</packageinstances>
+</package3d>
+<package3d name="B2,54" urn="urn:adsk.eagle:package:27948/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="B2,54"/>
+</packageinstances>
+</package3d>
+<package3d name="P1-13" urn="urn:adsk.eagle:package:27946/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="P1-13"/>
+</packageinstances>
+</package3d>
+<package3d name="P1-13Y" urn="urn:adsk.eagle:package:27947/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="P1-13Y"/>
+</packageinstances>
+</package3d>
+<package3d name="P1-17" urn="urn:adsk.eagle:package:27949/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="P1-17"/>
+</packageinstances>
+</package3d>
+<package3d name="P1-17Y" urn="urn:adsk.eagle:package:27953/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="P1-17Y"/>
+</packageinstances>
+</package3d>
+<package3d name="P1-20" urn="urn:adsk.eagle:package:27950/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="P1-20"/>
+</packageinstances>
+</package3d>
+<package3d name="P1-20Y" urn="urn:adsk.eagle:package:27951/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="P1-20Y"/>
+</packageinstances>
+</package3d>
+<package3d name="TP06R" urn="urn:adsk.eagle:package:27954/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="TP06R"/>
+</packageinstances>
+</package3d>
+<package3d name="TP06SQ" urn="urn:adsk.eagle:package:27952/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="TP06SQ"/>
+</packageinstances>
+</package3d>
+<package3d name="TP07R" urn="urn:adsk.eagle:package:27970/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="TP07R"/>
+</packageinstances>
+</package3d>
+<package3d name="TP07SQ" urn="urn:adsk.eagle:package:27955/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="TP07SQ"/>
+</packageinstances>
+</package3d>
+<package3d name="TP08R" urn="urn:adsk.eagle:package:27956/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="TP08R"/>
+</packageinstances>
+</package3d>
+<package3d name="TP08SQ" urn="urn:adsk.eagle:package:27960/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="TP08SQ"/>
+</packageinstances>
+</package3d>
+<package3d name="TP09R" urn="urn:adsk.eagle:package:27958/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="TP09R"/>
+</packageinstances>
+</package3d>
+<package3d name="TP09SQ" urn="urn:adsk.eagle:package:27957/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="TP09SQ"/>
+</packageinstances>
+</package3d>
+<package3d name="TP10R" urn="urn:adsk.eagle:package:27959/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="TP10R"/>
+</packageinstances>
+</package3d>
+<package3d name="TP10SQ" urn="urn:adsk.eagle:package:27962/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="TP10SQ"/>
+</packageinstances>
+</package3d>
+<package3d name="TP11R" urn="urn:adsk.eagle:package:27961/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="TP11R"/>
+</packageinstances>
+</package3d>
+<package3d name="TP11SQ" urn="urn:adsk.eagle:package:27965/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="TP11SQ"/>
+</packageinstances>
+</package3d>
+<package3d name="TP12SQ" urn="urn:adsk.eagle:package:27964/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="TP12SQ"/>
+</packageinstances>
+</package3d>
+<package3d name="TP12R" urn="urn:adsk.eagle:package:27963/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="TP12R"/>
+</packageinstances>
+</package3d>
+<package3d name="TP13R" urn="urn:adsk.eagle:package:27967/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="TP13R"/>
+</packageinstances>
+</package3d>
+<package3d name="TP14R" urn="urn:adsk.eagle:package:27966/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="TP14R"/>
+</packageinstances>
+</package3d>
+<package3d name="TP15R" urn="urn:adsk.eagle:package:27968/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="TP15R"/>
+</packageinstances>
+</package3d>
+<package3d name="TP16R" urn="urn:adsk.eagle:package:27969/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="TP16R"/>
+</packageinstances>
+</package3d>
+<package3d name="TP17R" urn="urn:adsk.eagle:package:27971/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="TP17R"/>
+</packageinstances>
+</package3d>
+<package3d name="TP18R" urn="urn:adsk.eagle:package:27981/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="TP18R"/>
+</packageinstances>
+</package3d>
+<package3d name="TP19R" urn="urn:adsk.eagle:package:27972/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="TP19R"/>
+</packageinstances>
+</package3d>
+<package3d name="TP20R" urn="urn:adsk.eagle:package:27973/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="TP20R"/>
+</packageinstances>
+</package3d>
+<package3d name="TP13SQ" urn="urn:adsk.eagle:package:27974/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="TP13SQ"/>
+</packageinstances>
+</package3d>
+<package3d name="TP14SQ" urn="urn:adsk.eagle:package:27984/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="TP14SQ"/>
+</packageinstances>
+</package3d>
+<package3d name="TP15SQ" urn="urn:adsk.eagle:package:27975/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="TP15SQ"/>
+</packageinstances>
+</package3d>
+<package3d name="TP16SQ" urn="urn:adsk.eagle:package:27976/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="TP16SQ"/>
+</packageinstances>
+</package3d>
+<package3d name="TP17SQ" urn="urn:adsk.eagle:package:27977/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="TP17SQ"/>
+</packageinstances>
+</package3d>
+<package3d name="TP18SQ" urn="urn:adsk.eagle:package:27979/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="TP18SQ"/>
+</packageinstances>
+</package3d>
+<package3d name="TP19SQ" urn="urn:adsk.eagle:package:27978/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="TP19SQ"/>
+</packageinstances>
+</package3d>
+<package3d name="TP20SQ" urn="urn:adsk.eagle:package:27980/1" type="box" library_version="3">
+<description>TEST PAD</description>
+<packageinstances>
+<packageinstance name="TP20SQ"/>
+</packageinstances>
+</package3d>
+</packages3d>
+<symbols>
+<symbol name="TP" urn="urn:adsk.eagle:symbol:27940/1" library_version="3">
+<wire x1="-0.762" y1="-0.762" x2="0" y2="0" width="0.254" layer="94"/>
+<wire x1="0" y1="0" x2="0.762" y2="-0.762" width="0.254" layer="94"/>
+<wire x1="0.762" y1="-0.762" x2="0" y2="-1.524" width="0.254" layer="94"/>
+<wire x1="0" y1="-1.524" x2="-0.762" y2="-0.762" width="0.254" layer="94"/>
+<text x="-1.27" y="1.27" size="1.778" layer="95">&gt;NAME</text>
+<text x="1.27" y="-1.27" size="1.778" layer="97">&gt;TP_SIGNAL_NAME</text>
+<pin name="TP" x="0" y="-2.54" visible="off" length="short" direction="in" rot="R90"/>
+</symbol>
+</symbols>
+<devicesets>
+<deviceset name="TP" urn="urn:adsk.eagle:component:27992/3" prefix="TP" library_version="3">
+<description>&lt;b&gt;Test pad&lt;/b&gt;</description>
+<gates>
+<gate name="G$1" symbol="TP" x="0" y="0"/>
+</gates>
+<devices>
+<device name="B1,27" package="B1,27">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27944/2"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="19" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="B2,54" package="B2,54">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27948/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="3" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="PAD1-13" package="P1-13">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27946/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="12" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="PAD1-13Y" package="P1-13Y">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27947/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="0" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="PAD1-17" package="P1-17">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27949/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="0" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="PAD1-17Y" package="P1-17Y">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27953/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="3" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="PAD1-20" package="P1-20">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27950/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="0" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="PAD1-20Y" package="P1-20Y">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27951/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="0" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="TP06R" package="TP06R">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27954/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="1" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="TP06SQ" package="TP06SQ">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27952/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="0" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="TP07R" package="TP07R">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27970/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="0" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="TP07SQ" package="TP07SQ">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27955/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="0" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="TP08R" package="TP08R">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27956/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="0" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="TP08SQ" package="TP08SQ">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27960/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="0" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="TP09R" package="TP09R">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27958/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="0" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="TP09SQ" package="TP09SQ">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27957/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="0" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="TP10R" package="TP10R">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27959/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="3" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="TP10SQ" package="TP10SQ">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27962/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="4" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="TP11R" package="TP11R">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27961/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="1" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="TP11SQ" package="TP11SQ">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27965/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="0" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="TP12SQ" package="TP12SQ">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27964/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="0" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="TP12R" package="TP12R">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27963/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="1" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="TP13R" package="TP13R">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27967/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="0" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="TP14R" package="TP14R">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27966/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="0" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="TP15R" package="TP15R">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27968/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="0" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="TP16R" package="TP16R">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27969/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="0" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="TP17R" package="TP17R">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27971/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="0" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="TP18R" package="TP18R">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27981/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="0" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="TP19R" package="TP19R">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27972/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="0" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="TP20R" package="TP20R">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27973/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="1" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="TP13SQ" package="TP13SQ">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27974/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="0" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="TP14SQ" package="TP14SQ">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27984/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="0" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="TP15SQ" package="TP15SQ">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27975/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="0" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="TP16SQ" package="TP16SQ">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27976/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="0" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="TP17SQ" package="TP17SQ">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27977/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="0" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="TP18SQ" package="TP18SQ">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27979/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="0" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="TP19SQ" package="TP19SQ">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27978/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="0" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+<device name="TP20SQ" package="TP20SQ">
+<connects>
+<connect gate="G$1" pin="TP" pad="TP"/>
+</connects>
+<package3dinstances>
+<package3dinstance package3d_urn="urn:adsk.eagle:package:27980/1"/>
+</package3dinstances>
+<technologies>
+<technology name="">
+<attribute name="POPULARITY" value="2" constant="no"/>
+<attribute name="TP_SIGNAL_NAME" value="" constant="no"/>
+</technology>
+</technologies>
+</device>
+</devices>
+</deviceset>
+</devicesets>
+</library>
+</libraries>
+<attributes>
+</attributes>
+<variantdefs>
+</variantdefs>
+<classes>
+<class number="0" name="default" width="0.2032" drill="0">
+</class>
+<class number="1" name="power" width="0.2032" drill="0">
+</class>
+<class number="2" name="gnd" width="0.2032" drill="0">
+</class>
+</classes>
+<parts>
+<part name="FRAME1" library="My Stuff" deviceset="A4L-LOC" device=""/>
+<part name="U$3" library="FH19C-9S-0.5SH" deviceset="FH19C-9S-0.5SH_10-FFC" device=""/>
+<part name="GND1" library="supply1" library_urn="urn:adsk.eagle:library:371" deviceset="GND" device=""/>
+<part name="P+1" library="supply1" library_urn="urn:adsk.eagle:library:371" deviceset="VCC" device=""/>
+<part name="VCC" library="testpad" library_urn="urn:adsk.eagle:library:385" deviceset="TP" device="B2,54" package3d_urn="urn:adsk.eagle:package:27948/1" value="TPB2,54"/>
+<part name="GND" library="testpad" library_urn="urn:adsk.eagle:library:385" deviceset="TP" device="B2,54" package3d_urn="urn:adsk.eagle:package:27948/1" value="TPB2,54"/>
+</parts>
+<sheets>
+<sheet>
+<plain>
+</plain>
+<instances>
+<instance part="FRAME1" gate="G$1" x="0" y="0" smashed="yes">
+<attribute name="DRAWING_NAME" x="217.17" y="15.24" size="2.54" layer="94"/>
+<attribute name="LAST_DATE_TIME" x="217.17" y="10.16" size="2.286" layer="94"/>
+<attribute name="SHEET" x="228.473" y="5.08" size="2.54" layer="94"/>
+</instance>
+<instance part="U$3" gate="G$1" x="20.32" y="86.36" smashed="yes">
+<attribute name="NAME" x="29.21" y="104.14" size="1.778" layer="95" align="center-left"/>
+<attribute name="VALUE" x="29.21" y="101.6" size="1.778" layer="96" align="center-left"/>
+</instance>
+<instance part="GND1" gate="1" x="68.58" y="88.9" smashed="yes">
+<attribute name="VALUE" x="66.04" y="86.36" size="1.778" layer="96"/>
+</instance>
+<instance part="P+1" gate="VCC" x="68.58" y="101.6" smashed="yes">
+<attribute name="VALUE" x="66.04" y="99.06" size="1.778" layer="96" rot="R90"/>
+</instance>
+<instance part="VCC" gate="G$1" x="73.66" y="96.52" smashed="yes" rot="R270">
+<attribute name="NAME" x="74.93" y="97.79" size="1.778" layer="95" rot="R270"/>
+<attribute name="TP_SIGNAL_NAME" x="72.39" y="95.25" size="1.778" layer="97" rot="R270"/>
+</instance>
+<instance part="GND" gate="G$1" x="73.66" y="93.98" smashed="yes" rot="R270">
+<attribute name="NAME" x="74.93" y="95.25" size="1.778" layer="95" rot="R270"/>
+<attribute name="TP_SIGNAL_NAME" x="72.39" y="92.71" size="1.778" layer="97" rot="R270"/>
+</instance>
+</instances>
+<busses>
+</busses>
+<nets>
+<net name="GND" class="2">
+<segment>
+<pinref part="U$3" gate="G$1" pin="2"/>
+<wire x1="68.58" y1="93.98" x2="33.02" y2="93.98" width="0.1524" layer="91"/>
+<label x="35.56" y="93.98" size="1.778" layer="95"/>
+<pinref part="GND1" gate="1" pin="GND"/>
+<wire x1="68.58" y1="93.98" x2="68.58" y2="91.44" width="0.1524" layer="91"/>
+<wire x1="71.12" y1="93.98" x2="68.58" y2="93.98" width="0.1524" layer="91"/>
+<junction x="68.58" y="93.98"/>
+<pinref part="GND" gate="G$1" pin="TP"/>
+</segment>
+</net>
+<net name="VCC" class="1">
+<segment>
+<pinref part="U$3" gate="G$1" pin="1"/>
+<wire x1="68.58" y1="96.52" x2="33.02" y2="96.52" width="0.1524" layer="91"/>
+<label x="35.56" y="96.52" size="1.778" layer="95"/>
+<wire x1="68.58" y1="96.52" x2="68.58" y2="99.06" width="0.1524" layer="91"/>
+<pinref part="P+1" gate="VCC" pin="VCC"/>
+<wire x1="71.12" y1="96.52" x2="68.58" y2="96.52" width="0.1524" layer="91"/>
+<junction x="68.58" y="96.52"/>
+<pinref part="VCC" gate="G$1" pin="TP"/>
+</segment>
+</net>
+</nets>
+</sheet>
+</sheets>
+<errors>
+<approved hash="102,1,124.46,66.04,OUT,3.3V,,,,"/>
+<approved hash="104,1,320.04,111.76,IC3,VDDA,3.3V,,,"/>
+<approved hash="104,1,320.04,106.68,IC3,VDDIN,3.3V,,,"/>
+<approved hash="104,1,320.04,45.72,IC3,GNDA,GND,,,"/>
+<approved hash="104,1,406.4,162.56,LED1,VDD,3.3V,,,"/>
+<approved hash="104,1,104.14,66.04,U1,IN,VOUT,,,"/>
+<approved hash="113,1,139.596,107.846,FRAME1,,,,,"/>
+<approved hash="113,1,129.777,128.401,JP3,,,,,"/>
+<approved hash="113,1,167.403,125.599,JP4,,,,,"/>
+</errors>
+</schematic>
+</drawing>
+<compatibility>
+<note version="6.3" minversion="6.2.2" severity="warning">
+Since Version 6.2.2 text objects can contain more than one line,
+which will not be processed correctly with this version.
+</note>
+<note version="8.2" severity="warning">
+Since Version 8.2, EAGLE supports online libraries. The ids
+of those online libraries will not be understood (or retained)
+with this version.
+</note>
+<note version="8.3" severity="warning">
+Since Version 8.3, EAGLE supports URNs for individual library
+assets (packages, symbols, and devices). The URNs of those assets
+will not be understood (or retained) with this version.
+</note>
+<note version="8.3" severity="warning">
+Since Version 8.3, EAGLE supports the association of 3D packages
+with devices in libraries, schematics, and board files. Those 3D
+packages will not be understood (or retained) with this version.
+</note>
+</compatibility>
+</eagle>
diff --git a/PCB/Sensor Boards/OSO-MISC-21-017 Sensor Watch Flash.brd b/PCB/Sensor Boards/OSO-MISC-21-017 Sensor Watch Flash.brd
new file mode 100644
index 00000000..28ebaf47
--- /dev/null
+++ b/PCB/Sensor Boards/OSO-MISC-21-017 Sensor Watch Flash.brd
@@ -0,0 +1,576 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE eagle SYSTEM "eagle.dtd">
+<eagle version="9.6.2">
+<drawing>
+<settings>
+<setting alwaysvectorfont="yes"/>
+<setting keepoldvectorfont="yes"/>
+<setting verticaltext="up"/>
+</settings>
+<grid distance="0.005" unitdist="inch" unit="inch" style="lines" multiple="1" display="no" altdistance="0.001" altunitdist="inch" altunit="inch"/>
+<layers>
+<layer number="1" name="Top" color="4" fill="1" visible="yes" active="yes"/>
+<layer number="2" name="Route2" color="1" fill="3" visible="no" active="no"/>
+<layer number="3" name="Route3" color="4" fill="3" visible="no" active="no"/>
+<layer number="4" name="Route4" color="1" fill="4" visible="no" active="no"/>
+<layer number="5" name="Route5" color="4" fill="4" visible="no" active="no"/>
+<layer number="6" name="Route6" color="1" fill="8" visible="no" active="no"/>
+<layer number="7" name="Route7" color="4" fill="8" visible="no" active="no"/>
+<layer number="8" name="Route8" color="1" fill="2" visible="no" active="no"/>
+<layer number="9" name="Route9" color="4" fill="2" visible="no" active="no"/>
+<layer number="10" name="Route10" color="1" fill="7" visible="no" active="no"/>
+<layer number="11" name="Route11" color="4" fill="7" visible="no" active="no"/>
+<layer number="12" name="Route12" color="1" fill="5" visible="no" active="no"/>
+<layer number="13" name="Route13" color="4" fill="5" visible="no" active="no"/>
+<layer number="14" name="Route14" color="1" fill="6" visible="no" active="no"/>
+<layer number="15" name="Route15" color="4" fill="6" visible="no" active="no"/>
+<layer number="16" name="Bottom" color="1" fill="1" visible="yes" active="yes"/>
+<layer number="17" name="Pads" color="2" fill="1" visible="yes" active="yes"/>
+<layer number="18" name="Vias" color="2" fill="1" visible="yes" active="yes"/>
+<layer number="19" name="Unrouted" color="6" fill="1" visible="yes" active="yes"/>
+<layer number="20" name="Dimension" color="15" fill="1" visible="yes" active="yes"/>
+<layer number="21" name="tPlace" color="14" fill="1" visible="yes" active="yes"/>
+<layer number="22" name="bPlace" color="13" fill="1" visible="yes" active="yes"/>
+<layer number="23" name="tOrigins" color="15" fill="1" visible="yes" active="yes"/>
+<layer number="24" name="bOrigins" color="15" fill="1" visible="yes" active="yes"/>
+<layer number="25" name="tNames" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="26" name="bNames" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="27" name="tValues" color="7" fill="1" visible="no" active="yes"/>
+<layer number="28" name="bValues" color="7" fill="1" visible="no" active="yes"/>
+<layer number="29" name="tStop" color="7" fill="3" visible="no" active="yes"/>
+<layer number="30" name="bStop" color="7" fill="6" visible="no" active="yes"/>
+<layer number="31" name="tCream" color="7" fill="4" visible="no" active="yes"/>
+<layer number="32" name="bCream" color="7" fill="5" visible="no" active="yes"/>
+<layer number="33" name="tFinish" color="6" fill="3" visible="no" active="yes"/>
+<layer number="34" name="bFinish" color="6" fill="6" visible="no" active="yes"/>
+<layer number="35" name="tGlue" color="7" fill="4" visible="no" active="yes"/>
+<layer number="36" name="bGlue" color="7" fill="5" visible="no" active="yes"/>
+<layer number="37" name="tTest" color="7" fill="1" visible="no" active="yes"/>
+<layer number="38" name="bTest" color="7" fill="1" visible="no" active="yes"/>
+<layer number="39" name="tKeepout" color="4" fill="11" visible="yes" active="yes"/>
+<layer number="40" name="bKeepout" color="1" fill="11" visible="yes" active="yes"/>
+<layer number="41" name="tRestrict" color="4" fill="10" visible="yes" active="yes"/>
+<layer number="42" name="bRestrict" color="1" fill="10" visible="yes" active="yes"/>
+<layer number="43" name="vRestrict" color="2" fill="10" visible="no" active="yes"/>
+<layer number="44" name="Drills" color="7" fill="1" visible="no" active="yes"/>
+<layer number="45" name="Holes" color="7" fill="1" visible="no" active="yes"/>
+<layer number="46" name="Milling" color="3" fill="1" visible="no" active="yes"/>
+<layer number="47" name="Measures" color="7" fill="1" visible="no" active="yes"/>
+<layer number="48" name="Document" color="7" fill="1" visible="no" active="yes"/>
+<layer number="49" name="Reference" color="7" fill="1" visible="no" active="yes"/>
+<layer number="50" name="dxf" color="7" fill="1" visible="no" active="yes"/>
+<layer number="51" name="tDocu" color="15" fill="1" visible="yes" active="yes"/>
+<layer number="52" name="bDocu" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="53" name="tGND_GNDA" color="7" fill="9" visible="no" active="no"/>
+<layer number="54" name="bGND_GNDA" color="1" fill="9" visible="no" active="no"/>
+<layer number="56" name="wert" color="7" fill="1" visible="no" active="yes"/>
+<layer number="57" name="tCAD" color="7" fill="1" visible="no" active="no"/>
+<layer number="58" name="b3D" color="7" fill="1" visible="no" active="no"/>
+<layer number="59" name="tCarbon" color="7" fill="1" visible="no" active="no"/>
+<layer number="60" name="bCarbon" color="7" fill="1" visible="no" active="no"/>
+<layer number="61" name="stand" color="7" fill="1" visible="no" active="no"/>
+<layer number="88" name="SimResults" color="9" fill="1" visible="no" active="no"/>
+<layer number="89" name="SimProbes" color="9" fill="1" visible="no" active="no"/>
+<layer number="90" name="Modules" color="7" fill="1" visible="no" active="no"/>
+<layer number="91" name="Nets" color="2" fill="1" visible="no" active="no"/>
+<layer number="92" name="Busses" color="1" fill="1" visible="no" active="no"/>
+<layer number="93" name="Pins" color="2" fill="1" visible="no" active="no"/>
+<layer number="94" name="Symbols" color="4" fill="1" visible="no" active="no"/>
+<layer number="95" name="Names" color="7" fill="1" visible="no" active="no"/>
+<layer number="96" name="Values" color="7" fill="1" visible="no" active="no"/>
+<layer number="97" name="Info" color="7" fill="1" visible="no" active="no"/>
+<layer number="98" name="Guide" color="6" fill="1" visible="no" active="no"/>
+<layer number="99" name="SpiceOrder" color="7" fill="1" visible="no" active="no"/>
+<layer number="100" name="Muster" color="7" fill="1" visible="no" active="no"/>
+<layer number="101" name="Patch_Top" color="12" fill="4" visible="no" active="yes"/>
+<layer number="102" name="Vscore" color="7" fill="1" visible="no" active="yes"/>
+<layer number="103" name="fp3" color="7" fill="1" visible="no" active="yes"/>
+<layer number="104" name="Name" color="7" fill="1" visible="no" active="yes"/>
+<layer number="105" name="Beschreib" color="9" fill="1" visible="no" active="yes"/>
+<layer number="106" name="BGA-Top" color="4" fill="1" visible="no" active="yes"/>
+<layer number="107" name="BD-Top" color="5" fill="1" visible="no" active="yes"/>
+<layer number="108" name="fp8" color="7" fill="1" visible="no" active="yes"/>
+<layer number="109" name="fp9" color="7" fill="1" visible="no" active="yes"/>
+<layer number="110" name="fp0" color="7" fill="1" visible="no" active="yes"/>
+<layer number="111" name="LPC17xx" color="7" fill="1" visible="no" active="yes"/>
+<layer number="112" name="tSilk" color="7" fill="1" visible="no" active="yes"/>
+<layer number="113" name="ReferenceLS" color="7" fill="1" visible="no" active="no"/>
+<layer number="114" name="tPlaceRed" color="7" fill="1" visible="no" active="yes"/>
+<layer number="115" name="FRNTMAAT2" color="7" fill="1" visible="no" active="yes"/>
+<layer number="116" name="Patch_BOT" color="9" fill="4" visible="no" active="yes"/>
+<layer number="117" name="BACKMAAT1" color="7" fill="1" visible="no" active="yes"/>
+<layer number="118" name="Rect_Pads" color="7" fill="1" visible="no" active="no"/>
+<layer number="119" name="KAP_TEKEN" color="7" fill="1" visible="no" active="yes"/>
+<layer number="120" name="KAP_MAAT1" color="7" fill="1" visible="no" active="yes"/>
+<layer number="121" name="_tsilk" color="7" fill="1" visible="no" active="yes"/>
+<layer number="122" name="_bsilk" color="7" fill="1" visible="no" active="yes"/>
+<layer number="123" name="tTestmark" color="7" fill="1" visible="no" active="yes"/>
+<layer number="124" name="bTestmark" color="7" fill="1" visible="no" active="yes"/>
+<layer number="125" name="_tNames" color="7" fill="1" visible="no" active="yes"/>
+<layer number="126" name="_bNames" color="7" fill="1" visible="no" active="yes"/>
+<layer number="127" name="_tValues" color="7" fill="1" visible="no" active="yes"/>
+<layer number="128" name="_bValues" color="7" fill="1" visible="no" active="yes"/>
+<layer number="129" name="Mask" color="7" fill="1" visible="no" active="yes"/>
+<layer number="130" name="SMDSTROOK" color="7" fill="1" visible="no" active="yes"/>
+<layer number="131" name="tAdjust" color="7" fill="1" visible="no" active="yes"/>
+<layer number="132" name="bAdjust" color="7" fill="1" visible="no" active="yes"/>
+<layer number="133" name="bottom_silk" color="7" fill="1" visible="no" active="yes"/>
+<layer number="134" name="silk_top" color="7" fill="1" visible="no" active="yes"/>
+<layer number="135" name="silk_bottom" color="7" fill="1" visible="no" active="yes"/>
+<layer number="136" name="silktop" color="7" fill="1" visible="no" active="yes"/>
+<layer number="137" name="silkbottom" color="7" fill="1" visible="no" active="yes"/>
+<layer number="138" name="EEE" color="7" fill="1" visible="no" active="yes"/>
+<layer number="139" name="_tKeepout" color="7" fill="1" visible="no" active="yes"/>
+<layer number="140" name="mbKeepout" color="7" fill="1" visible="no" active="yes"/>
+<layer number="141" name="ASSEMBLY_TOP" color="7" fill="1" visible="no" active="yes"/>
+<layer number="142" name="mbRestrict" color="7" fill="1" visible="no" active="yes"/>
+<layer number="143" name="PLACE_BOUND_TOP" color="7" fill="1" visible="no" active="yes"/>
+<layer number="144" name="Drill_legend" color="7" fill="1" visible="no" active="yes"/>
+<layer number="145" name="DrillLegend_01-16" color="7" fill="1" visible="no" active="yes"/>
+<layer number="146" name="DrillLegend_01-20" color="7" fill="1" visible="no" active="yes"/>
+<layer number="147" name="PIN_NUMBER" color="7" fill="1" visible="no" active="yes"/>
+<layer number="148" name="mDocument" color="7" fill="1" visible="no" active="yes"/>
+<layer number="149" name="DrillLegend_02-15" color="7" fill="1" visible="no" active="yes"/>
+<layer number="150" name="Notes" color="7" fill="1" visible="no" active="yes"/>
+<layer number="151" name="HeatSink" color="7" fill="1" visible="no" active="yes"/>
+<layer number="152" name="_bDocu" color="7" fill="1" visible="no" active="yes"/>
+<layer number="153" name="FabDoc1" color="6" fill="1" visible="no" active="no"/>
+<layer number="154" name="FabDoc2" color="2" fill="1" visible="no" active="no"/>
+<layer number="155" name="FabDoc3" color="7" fill="15" visible="no" active="no"/>
+<layer number="166" name="AntennaArea" color="7" fill="1" visible="no" active="yes"/>
+<layer number="168" name="4mmHeightArea" color="7" fill="1" visible="no" active="yes"/>
+<layer number="191" name="mNets" color="7" fill="1" visible="no" active="yes"/>
+<layer number="192" name="mBusses" color="7" fill="1" visible="no" active="yes"/>
+<layer number="193" name="mPins" color="7" fill="1" visible="no" active="yes"/>
+<layer number="194" name="mSymbols" color="7" fill="1" visible="no" active="yes"/>
+<layer number="195" name="mNames" color="7" fill="1" visible="no" active="yes"/>
+<layer number="196" name="mValues" color="7" fill="1" visible="no" active="yes"/>
+<layer number="199" name="Contour" color="7" fill="1" visible="no" active="yes"/>
+<layer number="200" name="200bmp" color="14" fill="10" visible="no" active="yes"/>
+<layer number="201" name="201bmp" color="13" fill="1" visible="no" active="yes"/>
+<layer number="202" name="202bmp" color="3" fill="1" visible="no" active="yes"/>
+<layer number="203" name="203bmp" color="4" fill="10" visible="no" active="yes"/>
+<layer number="204" name="204bmp" color="5" fill="10" visible="no" active="yes"/>
+<layer number="205" name="205bmp" color="6" fill="10" visible="no" active="yes"/>
+<layer number="206" name="206bmp" color="7" fill="10" visible="no" active="yes"/>
+<layer number="207" name="207bmp" color="8" fill="10" visible="no" active="yes"/>
+<layer number="208" name="208bmp" color="9" fill="10" visible="no" active="yes"/>
+<layer number="209" name="209bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="210" name="210bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="211" name="211bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="212" name="212bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="213" name="213bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="214" name="214bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="215" name="215bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="216" name="216bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="217" name="217bmp" color="18" fill="1" visible="no" active="no"/>
+<layer number="218" name="218bmp" color="19" fill="1" visible="no" active="no"/>
+<layer number="219" name="219bmp" color="20" fill="1" visible="no" active="no"/>
+<layer number="220" name="220bmp" color="21" fill="1" visible="no" active="no"/>
+<layer number="221" name="221bmp" color="22" fill="1" visible="no" active="no"/>
+<layer number="222" name="222bmp" color="23" fill="1" visible="no" active="no"/>
+<layer number="223" name="223bmp" color="24" fill="1" visible="no" active="no"/>
+<layer number="224" name="224bmp" color="25" fill="1" visible="no" active="no"/>
+<layer number="225" name="225bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="226" name="226bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="227" name="227bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="228" name="228bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="229" name="229bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="230" name="230bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="231" name="Eagle3D_PG1" color="7" fill="1" visible="no" active="no"/>
+<layer number="232" name="Eagle3D_PG2" color="7" fill="1" visible="no" active="no"/>
+<layer number="233" name="Eagle3D_PG3" color="7" fill="1" visible="no" active="no"/>
+<layer number="248" name="Housing" color="7" fill="1" visible="no" active="yes"/>
+<layer number="249" name="Edge" color="7" fill="1" visible="no" active="yes"/>
+<layer number="250" name="Descript" color="7" fill="1" visible="no" active="no"/>
+<layer number="251" name="SMDround" color="7" fill="1" visible="no" active="no"/>
+<layer number="254" name="cooling" color="7" fill="1" visible="no" active="yes"/>
+<layer number="255" name="routoute" color="7" fill="1" visible="no" active="yes"/>
+</layers>
+<board>
+<plain>
+<wire x1="-2.4892" y1="-2.794" x2="-2.7432" y2="-2.54" width="0" layer="20" curve="90"/>
+<wire x1="-2.7432" y1="-2.54" x2="-7.493" y2="-2.54" width="0" layer="20"/>
+<wire x1="-8.128" y1="-1.905" x2="-11.049" y2="-1.905" width="0" layer="20"/>
+<wire x1="-11.049" y1="-1.905" x2="-11.938" y2="-1.016" width="0" layer="20" curve="-90"/>
+<wire x1="-11.938" y1="-1.016" x2="-11.938" y2="2.921" width="0" layer="20"/>
+<wire x1="-11.938" y1="2.921" x2="-11.049" y2="3.81" width="0" layer="20" curve="-90"/>
+<wire x1="-11.049" y1="3.81" x2="2.1082" y2="3.81" width="0" layer="20"/>
+<wire x1="2.1082" y1="3.81" x2="2.4892" y2="3.429" width="0" layer="20" curve="-90"/>
+<wire x1="2.4892" y1="3.429" x2="2.4892" y2="-2.794" width="0" layer="20"/>
+<wire x1="-7.493" y1="-2.54" x2="-8.128" y2="-1.905" width="0" layer="20" curve="90"/>
+<text x="-1.778" y="3.556" size="0.6096" layer="21" font="vector" ratio="18" align="top-center">OSO-MISC-21-017
+SPI Flash Chip</text>
+<wire x1="2.4892" y1="-1.524" x2="-5.715" y2="-1.524" width="0.127" layer="21" style="shortdash"/>
+<wire x1="-6.223" y1="3.048" x2="-6.223" y2="-1.016" width="0.127" layer="21" style="shortdash"/>
+<wire x1="-6.223" y1="-1.016" x2="-5.715" y2="-1.524" width="0.127" layer="21" style="shortdash" curve="90"/>
+<wire x1="-6.223" y1="3.048" x2="-6.985" y2="3.81" width="0.127" layer="21" style="shortdash" curve="90"/>
+<text x="-1.778" y="1.651" size="0.508" layer="21" font="vector" ratio="12" align="top-center">A1: SPI Clock (SCK)
+A2: Watch SDO (MOSI)
+A3: Chip Select (CS)
+A4: Watch SDI (MISO)</text>
+</plain>
+<libraries>
+<library name="FH19C-9S-0.5SH">
+<description>&lt;b&gt;https://componentsearchengine.com&lt;/b&gt;&lt;p&gt;
+&lt;author&gt;Created by SamacSys&lt;/author&gt;</description>
+<packages>
+<package name="FH19C9S05SH10-FFC">
+<description>&lt;b&gt;FH19C-9S-0.5SH(10)-1&lt;/b&gt;&lt;br&gt;
+</description>
+<smd name="1" x="2" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="2" x="1.5" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="3" x="1" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="4" x="0.5" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="5" x="0" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="6" x="-0.5" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="7" x="-1" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="8" x="-1.5" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="9" x="-2" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<wire x1="-2.4892" y1="0" x2="-2.4892" y2="-3.35" width="0" layer="20"/>
+<wire x1="-2.3392" y1="-3.5" x2="2.3392" y2="-3.5" width="0" layer="20"/>
+<wire x1="2.4892" y1="0" x2="2.4892" y2="-3.35" width="0" layer="20"/>
+<wire x1="-2.3392" y1="-3.5" x2="-2.4892" y2="-3.35" width="0" layer="20" curve="-90"/>
+<wire x1="2.3392" y1="-3.5" x2="2.4892" y2="-3.35" width="0" layer="20" curve="90"/>
+<polygon width="0.1524" layer="30">
+<vertex x="-2.4902" y="-0.9742"/>
+<vertex x="2.4882" y="-0.9742"/>
+<vertex x="2.4892" y="-3.4798"/>
+<vertex x="-2.4892" y="-3.4798"/>
+</polygon>
+</package>
+</packages>
+</library>
+<library name="microbuilder">
+<packages>
+<package name="_0603MP">
+<description>&lt;b&gt;0603 MicroPitch&lt;/b&gt;</description>
+<wire x1="-0.432" y1="-0.306" x2="0.432" y2="-0.306" width="0.1016" layer="51"/>
+<wire x1="0.432" y1="0.306" x2="-0.432" y2="0.306" width="0.1016" layer="51"/>
+<wire x1="0" y1="0.254" x2="0" y2="-0.254" width="0.2032" layer="21"/>
+<smd name="1" x="-0.762" y="0" dx="0.8" dy="0.8" layer="1"/>
+<smd name="2" x="0.762" y="0" dx="0.8" dy="0.8" layer="1"/>
+<text x="-0.9525" y="0.635" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-0.9525" y="-0.9525" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="0.4318" y1="-0.4" x2="0.8" y2="0.4" layer="51"/>
+<rectangle x1="-0.8" y1="-0.4" x2="-0.4318" y2="0.4" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.25" x2="0.1999" y2="0.25" layer="35"/>
+</package>
+<package name="USON8">
+<wire x1="-1.6" y1="1" x2="1.6" y2="1" width="0.127" layer="21"/>
+<wire x1="1.6" y1="1" x2="1.6" y2="-1" width="0.127" layer="21"/>
+<wire x1="1.6" y1="-1" x2="-1.6" y2="-1" width="0.127" layer="21"/>
+<wire x1="-1.6" y1="-1" x2="-1.6" y2="1" width="0.127" layer="21"/>
+<circle x="-1.5" y="1" radius="0.22360625" width="0.127" layer="21"/>
+<smd name="1" x="-1.2" y="0.75" dx="0.275" dy="0.5" layer="1" rot="R90"/>
+<smd name="2" x="-1.2" y="0.25" dx="0.275" dy="0.5" layer="1" rot="R90"/>
+<smd name="3" x="-1.2" y="-0.25" dx="0.275" dy="0.5" layer="1" rot="R90"/>
+<smd name="4" x="-1.2" y="-0.75" dx="0.275" dy="0.5" layer="1" rot="R90"/>
+<smd name="8" x="1.2" y="0.75" dx="0.275" dy="0.5" layer="1" rot="R90"/>
+<smd name="7" x="1.2" y="0.25" dx="0.275" dy="0.5" layer="1" rot="R90"/>
+<smd name="6" x="1.2" y="-0.25" dx="0.275" dy="0.5" layer="1" rot="R90"/>
+<smd name="5" x="1.2" y="-0.75" dx="0.275" dy="0.5" layer="1" rot="R90"/>
+</package>
+</packages>
+</library>
+</libraries>
+<attributes>
+<attribute name="REV" value="D"/>
+</attributes>
+<variantdefs>
+</variantdefs>
+<classes>
+<class number="0" name="default" width="0.2032" drill="0">
+</class>
+<class number="1" name="power" width="0.2032" drill="0">
+</class>
+<class number="2" name="gnd" width="0.2032" drill="0">
+</class>
+</classes>
+<designrules name="oshpark-2layer *">
+<description language="en">&lt;b&gt;OSH Park Design Rules&lt;/b&gt;
+&lt;p&gt;
+Please make sure your boards conform to these design rules.
+&lt;/p&gt;
+&lt;p&gt;
+Note, that not all DRC settings must be set by the manufacturer. Several can be adjusted for the design, including those listed on our docs page here.
+&lt;a href=&quot;http://docs.oshpark.com/design-tools/eagle/design-rules-files/&quot;&gt;Adjustable Settings&lt;/a&gt;
+&lt;/p&gt;</description>
+<param name="layerSetup" value="(1*16)"/>
+<param name="mtCopper" value="0.035559375mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.035559375mm"/>
+<param name="mtIsolate" value="1.6mm 0.1499mm 0.2007mm 0.1499mm 0.2007mm 0.1499mm 0.2007mm 0.1499mm 0.2007mm 0.1499mm 0.2007mm 0.1499mm 0.2007mm 0.1499mm 0.2007mm"/>
+<param name="mdWireWire" value="6mil"/>
+<param name="mdWirePad" value="6mil"/>
+<param name="mdWireVia" value="6mil"/>
+<param name="mdPadPad" value="6mil"/>
+<param name="mdPadVia" value="6mil"/>
+<param name="mdViaVia" value="6mil"/>
+<param name="mdSmdPad" value="6mil"/>
+<param name="mdSmdVia" value="6mil"/>
+<param name="mdSmdSmd" value="6mil"/>
+<param name="mdViaViaSameLayer" value="8mil"/>
+<param name="mnLayersViaInSmd" value="2"/>
+<param name="mdCopperDimension" value="15mil"/>
+<param name="mdDrill" value="6mil"/>
+<param name="mdSmdStop" value="0mil"/>
+<param name="msWidth" value="6mil"/>
+<param name="msDrill" value="10mil"/>
+<param name="msMicroVia" value="10mil"/>
+<param name="msBlindViaRatio" value="0.5"/>
+<param name="rvPadTop" value="0.25"/>
+<param name="rvPadInner" value="0.25"/>
+<param name="rvPadBottom" value="0.25"/>
+<param name="rvViaOuter" value="0.25"/>
+<param name="rvViaInner" value="0.25"/>
+<param name="rvMicroViaOuter" value="0.25"/>
+<param name="rvMicroViaInner" value="0.25"/>
+<param name="rlMinPadTop" value="5mil"/>
+<param name="rlMaxPadTop" value="20mil"/>
+<param name="rlMinPadInner" value="5mil"/>
+<param name="rlMaxPadInner" value="20mil"/>
+<param name="rlMinPadBottom" value="5mil"/>
+<param name="rlMaxPadBottom" value="20mil"/>
+<param name="rlMinViaOuter" value="5mil"/>
+<param name="rlMaxViaOuter" value="20mil"/>
+<param name="rlMinViaInner" value="5mil"/>
+<param name="rlMaxViaInner" value="20mil"/>
+<param name="rlMinMicroViaOuter" value="5mil"/>
+<param name="rlMaxMicroViaOuter" value="20mil"/>
+<param name="rlMinMicroViaInner" value="5mil"/>
+<param name="rlMaxMicroViaInner" value="20mil"/>
+<param name="psTop" value="-1"/>
+<param name="psBottom" value="-1"/>
+<param name="psFirst" value="-1"/>
+<param name="psElongationLong" value="100"/>
+<param name="psElongationOffset" value="100"/>
+<param name="mvStopFrame" value="1"/>
+<param name="mvCreamFrame" value="0"/>
+<param name="mlMinStopFrame" value="2.5mil"/>
+<param name="mlMaxStopFrame" value="2.5mil"/>
+<param name="mlMinCreamFrame" value="0mil"/>
+<param name="mlMaxCreamFrame" value="0mil"/>
+<param name="mlViaStopLimit" value="12mil"/>
+<param name="srRoundness" value="0"/>
+<param name="srMinRoundness" value="0mil"/>
+<param name="srMaxRoundness" value="0mil"/>
+<param name="slThermalIsolate" value="10mil"/>
+<param name="slThermalsForVias" value="0"/>
+<param name="dpMaxLengthDifference" value="10mm"/>
+<param name="dpGapFactor" value="2.5"/>
+<param name="checkAngle" value="0"/>
+<param name="checkFont" value="1"/>
+<param name="checkRestrict" value="1"/>
+<param name="checkStop" value="0"/>
+<param name="checkValues" value="0"/>
+<param name="checkNames" value="1"/>
+<param name="checkWireStubs" value="1"/>
+<param name="checkPolygonWidth" value="0"/>
+<param name="useDiameter" value="13"/>
+<param name="maxErrors" value="50"/>
+</designrules>
+<autorouter>
+<pass name="Default">
+<param name="RoutingGrid" value="50mil"/>
+<param name="AutoGrid" value="1"/>
+<param name="Efforts" value="0"/>
+<param name="TopRouterVariant" value="1"/>
+<param name="tpViaShape" value="round"/>
+<param name="PrefDir.1" value="|"/>
+<param name="PrefDir.2" value="0"/>
+<param name="PrefDir.3" value="0"/>
+<param name="PrefDir.4" value="0"/>
+<param name="PrefDir.5" value="0"/>
+<param name="PrefDir.6" value="0"/>
+<param name="PrefDir.7" value="0"/>
+<param name="PrefDir.8" value="0"/>
+<param name="PrefDir.9" value="0"/>
+<param name="PrefDir.10" value="0"/>
+<param name="PrefDir.11" value="0"/>
+<param name="PrefDir.12" value="0"/>
+<param name="PrefDir.13" value="0"/>
+<param name="PrefDir.14" value="0"/>
+<param name="PrefDir.15" value="0"/>
+<param name="PrefDir.16" value="-"/>
+<param name="cfVia" value="8"/>
+<param name="cfNonPref" value="5"/>
+<param name="cfChangeDir" value="2"/>
+<param name="cfOrthStep" value="2"/>
+<param name="cfDiagStep" value="3"/>
+<param name="cfExtdStep" value="0"/>
+<param name="cfBonusStep" value="1"/>
+<param name="cfMalusStep" value="1"/>
+<param name="cfPadImpact" value="4"/>
+<param name="cfSmdImpact" value="4"/>
+<param name="cfBusImpact" value="0"/>
+<param name="cfHugging" value="3"/>
+<param name="cfAvoid" value="4"/>
+<param name="cfPolygon" value="10"/>
+<param name="cfBase.1" value="0"/>
+<param name="cfBase.2" value="1"/>
+<param name="cfBase.3" value="1"/>
+<param name="cfBase.4" value="1"/>
+<param name="cfBase.5" value="1"/>
+<param name="cfBase.6" value="1"/>
+<param name="cfBase.7" value="1"/>
+<param name="cfBase.8" value="1"/>
+<param name="cfBase.9" value="1"/>
+<param name="cfBase.10" value="1"/>
+<param name="cfBase.11" value="1"/>
+<param name="cfBase.12" value="1"/>
+<param name="cfBase.13" value="1"/>
+<param name="cfBase.14" value="1"/>
+<param name="cfBase.15" value="1"/>
+<param name="cfBase.16" value="0"/>
+<param name="mnVias" value="20"/>
+<param name="mnSegments" value="9999"/>
+<param name="mnExtdSteps" value="9999"/>
+<param name="mnRipupLevel" value="10"/>
+<param name="mnRipupSteps" value="100"/>
+<param name="mnRipupTotal" value="100"/>
+</pass>
+<pass name="Follow-me" refer="Default" active="yes">
+</pass>
+<pass name="Busses" refer="Default" active="yes">
+<param name="cfNonPref" value="4"/>
+<param name="cfBusImpact" value="4"/>
+<param name="cfHugging" value="0"/>
+<param name="mnVias" value="0"/>
+</pass>
+<pass name="Route" refer="Default" active="yes">
+</pass>
+</autorouter>
+<elements>
+<element name="U$3" library="FH19C-9S-0.5SH" package="FH19C9S05SH10-FFC" value="FH19C-9S-0.5SH_10-FFC" x="0" y="-2.794" smashed="yes"/>
+<element name="C1" library="microbuilder" package="_0603MP" value="1uF" x="-11.1506" y="1.016" smashed="yes" rot="MR90">
+<attribute name="NAME" x="-11.1506" y="-0.8255" size="0.8128" layer="26" font="vector" ratio="18" rot="MR90" align="center"/>
+<attribute name="VALUE" x="-12.1031" y="0.0635" size="0.8128" layer="28" font="vector" ratio="18" rot="MR90" align="center"/>
+</element>
+<element name="U1" library="microbuilder" package="USON8" value="2MB Flash" x="-8.89" y="0.635" smashed="yes" rot="MR270"/>
+<element name="R1" library="microbuilder" package="_0603MP" value="10K" x="-8.89" y="3.0226" smashed="yes" rot="MR0">
+<attribute name="NAME" x="-11.1125" y="3.0226" size="0.8128" layer="26" font="vector" ratio="18" rot="MR0" align="center"/>
+<attribute name="VALUE" x="-7.9375" y="2.0701" size="0.8128" layer="28" font="vector" ratio="18" rot="MR0" align="center"/>
+</element>
+</elements>
+<signals>
+<signal name="GND" class="2">
+<contactref element="U$3" pad="2"/>
+<contactref element="U1" pad="4"/>
+<contactref element="C1" pad="2"/>
+<wire x1="1.5" y1="-5.044" x2="1.5" y2="-3.2047875" width="0.254" layer="16"/>
+<wire x1="-2.4819875" y1="0.7772" x2="-7.6962" y2="0.7772" width="0.254" layer="16"/>
+<wire x1="-7.6962" y1="0.7772" x2="-7.8232" y2="0.9042" width="0.254" layer="16"/>
+<via x="-7.8232" y="0.9042" extent="1-16" drill="0.254"/>
+<wire x1="-7.8232" y1="0.9042" x2="-10.3022" y2="0.9042" width="0.254" layer="1"/>
+<wire x1="1.5" y1="-3.2047875" x2="-2.4819875" y2="0.7772" width="0.254" layer="16"/>
+<wire x1="-8.14" y1="1.835" x2="-8.14" y2="1.221" width="0.254" layer="16"/>
+<wire x1="-8.14" y1="1.221" x2="-7.8232" y2="0.9042" width="0.254" layer="16"/>
+<wire x1="-11.1506" y1="1.778" x2="-11.1506" y2="1.7526" width="0.254" layer="16"/>
+<wire x1="-10.3022" y1="0.9042" x2="-11.1506" y2="1.7526" width="0.254" layer="16"/>
+<via x="-10.3022" y="0.9042" extent="1-16" drill="0.254"/>
+</signal>
+<signal name="VCC" class="1">
+<contactref element="U$3" pad="1"/>
+<contactref element="U1" pad="3"/>
+<contactref element="U1" pad="7"/>
+<contactref element="R1" pad="1"/>
+<contactref element="U1" pad="8"/>
+<contactref element="C1" pad="1"/>
+<wire x1="-8.128" y1="3.0226" x2="-8.64" y2="2.5106" width="0.254" layer="16"/>
+<wire x1="-8.64" y1="2.5106" x2="-8.64" y2="1.835" width="0.254" layer="16"/>
+<wire x1="2" y1="-5.044" x2="2" y2="-3.13005" width="0.254" layer="16"/>
+<wire x1="-9.14" y1="-0.565" x2="-9.14" y2="0.123" width="0.254" layer="16"/>
+<wire x1="-9.14" y1="0.123" x2="-9.3726" y2="0.3556" width="0.254" layer="16"/>
+<via x="-9.3726" y="0.3556" extent="1-16" drill="0.254"/>
+<wire x1="-9.64" y1="-0.565" x2="-9.64" y2="0.0882" width="0.254" layer="16"/>
+<wire x1="-9.64" y1="0.0882" x2="-9.3726" y2="0.3556" width="0.254" layer="16"/>
+<wire x1="2" y1="-3.13005" x2="-4.15265" y2="3.0226" width="0.254" layer="16"/>
+<wire x1="-4.15265" y1="3.0226" x2="-7.2898" y2="3.0226" width="0.254" layer="16"/>
+<wire x1="-7.2898" y1="3.0226" x2="-8.128" y2="3.0226" width="0.254" layer="16"/>
+<wire x1="-9.64" y1="-0.565" x2="-10.3316" y2="-0.565" width="0.254" layer="16"/>
+<wire x1="-10.3316" y1="-0.565" x2="-11.1506" y2="0.254" width="0.254" layer="16"/>
+<wire x1="-9.3726" y1="0.3556" x2="-7.61745625" y2="0.3556" width="0.254" layer="1"/>
+<wire x1="-7.61745625" y1="0.3556" x2="-7.2898" y2="0.68325625" width="0.254" layer="1"/>
+<via x="-7.2898" y="3.0226" extent="1-16" drill="0.254"/>
+<wire x1="-7.2898" y1="0.68325625" x2="-7.2898" y2="3.0226" width="0.254" layer="1"/>
+</signal>
+<signal name="A2_MOSI">
+<contactref element="U1" pad="5"/>
+<contactref element="U$3" pad="5"/>
+<wire x1="0" y1="-5.044" x2="0" y2="-3.429" width="0.254" layer="16"/>
+<wire x1="0" y1="-3.429" x2="-2.864" y2="-0.565" width="0.254" layer="16"/>
+<wire x1="-2.864" y1="-0.565" x2="-8.14" y2="-0.565" width="0.254" layer="16"/>
+</signal>
+<signal name="A1_SCK">
+<contactref element="U1" pad="6"/>
+<contactref element="U$3" pad="6"/>
+<wire x1="-8.64" y1="-0.565" x2="-8.64" y2="-0.84763125" width="0.254" layer="16"/>
+<wire x1="-8.64" y1="-0.84763125" x2="-8.39323125" y2="-1.0944" width="0.254" layer="16"/>
+<wire x1="-0.5" y1="-3.5037375" x2="-0.5" y2="-5.044" width="0.254" layer="16"/>
+<wire x1="-8.39323125" y1="-1.0944" x2="-2.9093375" y2="-1.0944" width="0.254" layer="16"/>
+<wire x1="-2.9093375" y1="-1.0944" x2="-0.5" y2="-3.5037375" width="0.254" layer="16"/>
+</signal>
+<signal name="A3_CS">
+<contactref element="U1" pad="1"/>
+<contactref element="R1" pad="2"/>
+<contactref element="U$3" pad="4"/>
+<wire x1="0.5" y1="-5.044" x2="0.5" y2="-3.3542625" width="0.254" layer="16"/>
+<wire x1="0.5" y1="-3.3542625" x2="-2.8186625" y2="-0.0356" width="0.254" layer="16"/>
+<wire x1="-9.64" y1="1.385" x2="-9.64" y2="1.835" width="0.254" layer="16"/>
+<wire x1="-2.8186625" y1="-0.0356" x2="-8.2194" y2="-0.0356" width="0.254" layer="16"/>
+<wire x1="-8.2194" y1="-0.0356" x2="-9.64" y2="1.385" width="0.254" layer="16"/>
+<wire x1="-9.64" y1="1.835" x2="-9.64" y2="3.0106" width="0.254" layer="16"/>
+<wire x1="-9.64" y1="3.0106" x2="-9.652" y2="3.0226" width="0.254" layer="16"/>
+</signal>
+<signal name="A4_MISO">
+<contactref element="U$3" pad="3"/>
+<contactref element="U1" pad="2"/>
+<wire x1="1" y1="-5.044" x2="1" y2="-3.279525" width="0.254" layer="16"/>
+<wire x1="1" y1="-3.279525" x2="-2.650325" y2="0.3708" width="0.254" layer="16"/>
+<wire x1="-9.14" y1="1.4597375" x2="-9.14" y2="1.835" width="0.254" layer="16"/>
+<wire x1="-2.650325" y1="0.3708" x2="-8.0510625" y2="0.3708" width="0.254" layer="16"/>
+<wire x1="-8.0510625" y1="0.3708" x2="-9.14" y2="1.4597375" width="0.254" layer="16"/>
+</signal>
+</signals>
+<mfgpreviewcolors>
+<mfgpreviewcolor name="soldermaskcolor" color="0x64F0A000"/>
+<mfgpreviewcolor name="silkscreencolor" color="0xFFFEFEFE"/>
+<mfgpreviewcolor name="backgroundcolor" color="0xFF282828"/>
+<mfgpreviewcolor name="coppercolor" color="0xFFFFBF00"/>
+<mfgpreviewcolor name="substratecolor" color="0xFF786E46"/>
+</mfgpreviewcolors>
+<errors>
+<approved hash="4,16,9cc8a33735273f8c"/>
+<approved hash="4,16,75bf1b02d58151c8"/>
+<approved hash="4,16,70b4dd0ea9337bbd"/>
+<approved hash="4,16,42aacdba90153b82"/>
+<approved hash="4,16,c73eee013d8a7d31"/>
+<approved hash="4,16,9200d5cd109a9664"/>
+<approved hash="4,16,ad53f5b81819b47d"/>
+<approved hash="4,16,654600ffa8c2724f"/>
+<approved hash="4,16,1449b5f307c1274b"/>
+<approved hash="4,16,cb4ee6f31ac3d04e"/>
+<approved hash="4,16,85b313f6e9c5f2b6"/>
+<approved hash="4,16,d6b5b30f0b3fc9b5"/>
+<approved hash="4,16,27b00e0dbc3f14b2"/>
+<approved hash="4,16,2e147eaf8f3151ee"/>
+<approved hash="4,16,21a281a70cd6e8f0"/>
+<approved hash="4,16,698c9ef176a9cf60"/>
+<approved hash="4,16,c7ad4523f108e472"/>
+<approved hash="4,16,c43f11e108460bf1"/>
+<approved hash="4,16,85286978ed28c133"/>
+<approved hash="4,16,65bbe50a131d2975"/>
+<approved hash="4,16,d10cba08f42d4940"/>
+<approved hash="4,16,ba4bf49845b2c390"/>
+<approved hash="4,16,c7cd3c33c3d1aa5d"/>
+<approved hash="4,16,e30cbf5a20926eae"/>
+<approved hash="4,16,e30cb60601d26eae"/>
+</errors>
+</board>
+</drawing>
+<compatibility>
+<note version="6.3" minversion="6.2.2" severity="warning">
+Since Version 6.2.2 text objects can contain more than one line,
+which will not be processed correctly with this version.
+</note>
+</compatibility>
+</eagle>
diff --git a/PCB/Sensor Boards/OSO-MISC-21-017 Sensor Watch Flash.sch b/PCB/Sensor Boards/OSO-MISC-21-017 Sensor Watch Flash.sch
new file mode 100644
index 00000000..c3fedd1f
--- /dev/null
+++ b/PCB/Sensor Boards/OSO-MISC-21-017 Sensor Watch Flash.sch
@@ -0,0 +1,1324 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE eagle SYSTEM "eagle.dtd">
+<eagle version="9.6.2">
+<drawing>
+<settings>
+<setting alwaysvectorfont="no"/>
+<setting keepoldvectorfont="yes"/>
+<setting verticaltext="up"/>
+</settings>
+<grid distance="0.1" unitdist="inch" unit="inch" style="lines" multiple="1" display="no" altdistance="0.01" altunitdist="inch" altunit="inch"/>
+<layers>
+<layer number="1" name="Top" color="4" fill="1" visible="no" active="no"/>
+<layer number="2" name="Route2" color="1" fill="3" visible="no" active="no"/>
+<layer number="3" name="Route3" color="4" fill="3" visible="no" active="no"/>
+<layer number="4" name="Route4" color="1" fill="4" visible="no" active="no"/>
+<layer number="5" name="Route5" color="4" fill="4" visible="no" active="no"/>
+<layer number="6" name="Route6" color="1" fill="8" visible="no" active="no"/>
+<layer number="7" name="Route7" color="4" fill="8" visible="no" active="no"/>
+<layer number="8" name="Route8" color="1" fill="2" visible="no" active="no"/>
+<layer number="9" name="Route9" color="4" fill="2" visible="no" active="no"/>
+<layer number="10" name="Route10" color="1" fill="7" visible="no" active="no"/>
+<layer number="11" name="Route11" color="4" fill="7" visible="no" active="no"/>
+<layer number="12" name="Route12" color="1" fill="5" visible="no" active="no"/>
+<layer number="13" name="Route13" color="4" fill="5" visible="no" active="no"/>
+<layer number="14" name="Route14" color="1" fill="6" visible="no" active="no"/>
+<layer number="15" name="Route15" color="4" fill="6" visible="no" active="no"/>
+<layer number="16" name="Bottom" color="1" fill="1" visible="no" active="no"/>
+<layer number="17" name="Pads" color="2" fill="1" visible="no" active="no"/>
+<layer number="18" name="Vias" color="2" fill="1" visible="no" active="no"/>
+<layer number="19" name="Unrouted" color="6" fill="1" visible="no" active="no"/>
+<layer number="20" name="Dimension" color="15" fill="1" visible="no" active="no"/>
+<layer number="21" name="tPlace" color="14" fill="1" visible="no" active="no"/>
+<layer number="22" name="bPlace" color="13" fill="1" visible="no" active="no"/>
+<layer number="23" name="tOrigins" color="15" fill="1" visible="no" active="no"/>
+<layer number="24" name="bOrigins" color="15" fill="1" visible="no" active="no"/>
+<layer number="25" name="tNames" color="7" fill="1" visible="no" active="no"/>
+<layer number="26" name="bNames" color="7" fill="1" visible="no" active="no"/>
+<layer number="27" name="tValues" color="7" fill="1" visible="no" active="no"/>
+<layer number="28" name="bValues" color="7" fill="1" visible="no" active="no"/>
+<layer number="29" name="tStop" color="7" fill="3" visible="no" active="no"/>
+<layer number="30" name="bStop" color="7" fill="6" visible="no" active="no"/>
+<layer number="31" name="tCream" color="7" fill="4" visible="no" active="no"/>
+<layer number="32" name="bCream" color="7" fill="5" visible="no" active="no"/>
+<layer number="33" name="tFinish" color="6" fill="3" visible="no" active="no"/>
+<layer number="34" name="bFinish" color="6" fill="6" visible="no" active="no"/>
+<layer number="35" name="tGlue" color="7" fill="4" visible="no" active="no"/>
+<layer number="36" name="bGlue" color="7" fill="5" visible="no" active="no"/>
+<layer number="37" name="tTest" color="7" fill="1" visible="no" active="no"/>
+<layer number="38" name="bTest" color="7" fill="1" visible="no" active="no"/>
+<layer number="39" name="tKeepout" color="4" fill="11" visible="no" active="no"/>
+<layer number="40" name="bKeepout" color="1" fill="11" visible="no" active="no"/>
+<layer number="41" name="tRestrict" color="4" fill="10" visible="no" active="no"/>
+<layer number="42" name="bRestrict" color="1" fill="10" visible="no" active="no"/>
+<layer number="43" name="vRestrict" color="2" fill="10" visible="no" active="no"/>
+<layer number="44" name="Drills" color="7" fill="1" visible="no" active="no"/>
+<layer number="45" name="Holes" color="7" fill="1" visible="no" active="no"/>
+<layer number="46" name="Milling" color="3" fill="1" visible="no" active="no"/>
+<layer number="47" name="Measures" color="7" fill="1" visible="no" active="no"/>
+<layer number="48" name="Document" color="7" fill="1" visible="no" active="no"/>
+<layer number="49" name="Reference" color="7" fill="1" visible="no" active="no"/>
+<layer number="50" name="dxf" color="7" fill="1" visible="no" active="no"/>
+<layer number="51" name="tDocu" color="15" fill="1" visible="no" active="no"/>
+<layer number="52" name="bDocu" color="7" fill="1" visible="no" active="no"/>
+<layer number="53" name="tGND_GNDA" color="7" fill="9" visible="no" active="no"/>
+<layer number="54" name="bGND_GNDA" color="1" fill="9" visible="no" active="no"/>
+<layer number="56" name="wert" color="7" fill="1" visible="no" active="no"/>
+<layer number="57" name="tCAD" color="7" fill="1" visible="no" active="no"/>
+<layer number="58" name="b3D" color="7" fill="1" visible="no" active="no"/>
+<layer number="59" name="tCarbon" color="7" fill="1" visible="no" active="no"/>
+<layer number="60" name="bCarbon" color="7" fill="1" visible="no" active="no"/>
+<layer number="61" name="stand" color="7" fill="1" visible="no" active="no"/>
+<layer number="88" name="SimResults" color="9" fill="1" visible="yes" active="yes"/>
+<layer number="89" name="SimProbes" color="9" fill="1" visible="yes" active="yes"/>
+<layer number="90" name="Modules" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="91" name="Nets" color="2" fill="1" visible="yes" active="yes"/>
+<layer number="92" name="Busses" color="1" fill="1" visible="yes" active="yes"/>
+<layer number="93" name="Pins" color="2" fill="1" visible="no" active="yes"/>
+<layer number="94" name="Symbols" color="4" fill="1" visible="yes" active="yes"/>
+<layer number="95" name="Names" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="96" name="Values" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="97" name="Info" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="98" name="Guide" color="6" fill="1" visible="yes" active="yes"/>
+<layer number="99" name="SpiceOrder" color="7" fill="1" visible="no" active="no"/>
+<layer number="100" name="Muster" color="7" fill="1" visible="no" active="no"/>
+<layer number="101" name="Patch_Top" color="12" fill="4" visible="yes" active="yes"/>
+<layer number="102" name="Vscore" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="103" name="fp3" color="7" fill="1" visible="no" active="yes"/>
+<layer number="104" name="Name" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="105" name="Beschreib" color="9" fill="1" visible="yes" active="yes"/>
+<layer number="106" name="BGA-Top" color="4" fill="1" visible="yes" active="yes"/>
+<layer number="107" name="BD-Top" color="5" fill="1" visible="yes" active="yes"/>
+<layer number="108" name="fp8" color="7" fill="1" visible="no" active="yes"/>
+<layer number="109" name="fp9" color="7" fill="1" visible="no" active="yes"/>
+<layer number="110" name="fp0" color="7" fill="1" visible="no" active="yes"/>
+<layer number="111" name="LPC17xx" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="112" name="tSilk" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="113" name="ReferenceLS" color="7" fill="1" visible="no" active="no"/>
+<layer number="114" name="tPlaceRed" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="115" name="FRNTMAAT2" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="116" name="Patch_BOT" color="9" fill="4" visible="yes" active="yes"/>
+<layer number="117" name="BACKMAAT1" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="118" name="Rect_Pads" color="7" fill="1" visible="no" active="no"/>
+<layer number="119" name="KAP_TEKEN" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="120" name="KAP_MAAT1" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="121" name="_tsilk" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="122" name="_bsilk" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="123" name="tTestmark" color="7" fill="1" visible="no" active="yes"/>
+<layer number="124" name="bTestmark" color="7" fill="1" visible="no" active="yes"/>
+<layer number="125" name="_tNames" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="126" name="_bNames" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="127" name="_tValues" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="128" name="_bValues" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="129" name="Mask" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="130" name="SMDSTROOK" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="131" name="tAdjust" color="7" fill="1" visible="no" active="yes"/>
+<layer number="132" name="bAdjust" color="7" fill="1" visible="no" active="yes"/>
+<layer number="133" name="bottom_silk" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="134" name="silk_top" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="135" name="silk_bottom" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="136" name="silktop" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="137" name="silkbottom" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="138" name="EEE" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="139" name="_tKeepout" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="140" name="mbKeepout" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="141" name="ASSEMBLY_TOP" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="142" name="mbRestrict" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="143" name="PLACE_BOUND_TOP" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="144" name="Drill_legend" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="145" name="DrillLegend_01-16" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="146" name="DrillLegend_01-20" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="147" name="PIN_NUMBER" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="148" name="mDocument" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="149" name="DrillLegend_02-15" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="150" name="Notes" color="7" fill="1" visible="no" active="yes"/>
+<layer number="151" name="HeatSink" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="152" name="_bDocu" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="153" name="FabDoc1" color="6" fill="1" visible="no" active="no"/>
+<layer number="154" name="FabDoc2" color="2" fill="1" visible="no" active="no"/>
+<layer number="155" name="FabDoc3" color="7" fill="15" visible="no" active="no"/>
+<layer number="166" name="AntennaArea" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="168" name="4mmHeightArea" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="191" name="mNets" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="192" name="mBusses" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="193" name="mPins" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="194" name="mSymbols" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="195" name="mNames" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="196" name="mValues" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="199" name="Contour" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="200" name="200bmp" color="1" fill="10" visible="no" active="no"/>
+<layer number="201" name="201bmp" color="2" fill="1" visible="no" active="no"/>
+<layer number="202" name="202bmp" color="3" fill="1" visible="no" active="no"/>
+<layer number="203" name="203bmp" color="4" fill="10" visible="yes" active="yes"/>
+<layer number="204" name="204bmp" color="5" fill="10" visible="yes" active="yes"/>
+<layer number="205" name="205bmp" color="6" fill="10" visible="yes" active="yes"/>
+<layer number="206" name="206bmp" color="7" fill="10" visible="yes" active="yes"/>
+<layer number="207" name="207bmp" color="8" fill="10" visible="yes" active="yes"/>
+<layer number="208" name="208bmp" color="9" fill="10" visible="yes" active="yes"/>
+<layer number="209" name="209bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="210" name="210bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="211" name="211bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="212" name="212bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="213" name="213bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="214" name="214bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="215" name="215bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="216" name="216bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="217" name="217bmp" color="18" fill="1" visible="no" active="no"/>
+<layer number="218" name="218bmp" color="19" fill="1" visible="no" active="no"/>
+<layer number="219" name="219bmp" color="20" fill="1" visible="no" active="no"/>
+<layer number="220" name="220bmp" color="21" fill="1" visible="no" active="no"/>
+<layer number="221" name="221bmp" color="22" fill="1" visible="no" active="no"/>
+<layer number="222" name="222bmp" color="23" fill="1" visible="no" active="no"/>
+<layer number="223" name="223bmp" color="24" fill="1" visible="no" active="no"/>
+<layer number="224" name="224bmp" color="25" fill="1" visible="no" active="no"/>
+<layer number="225" name="225bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="226" name="226bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="227" name="227bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="228" name="228bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="229" name="229bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="230" name="230bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="231" name="Eagle3D_PG1" color="7" fill="1" visible="no" active="no"/>
+<layer number="232" name="Eagle3D_PG2" color="7" fill="1" visible="no" active="no"/>
+<layer number="233" name="Eagle3D_PG3" color="7" fill="1" visible="no" active="no"/>
+<layer number="248" name="Housing" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="249" name="Edge" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="250" name="Descript" color="7" fill="1" visible="no" active="no"/>
+<layer number="251" name="SMDround" color="7" fill="1" visible="no" active="no"/>
+<layer number="254" name="cooling" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="255" name="routoute" color="7" fill="1" visible="yes" active="yes"/>
+</layers>
+<schematic>
+<libraries>
+<library name="My Stuff">
+<description>Generated from &lt;b&gt;Hiking Log FeatherWing.brd&lt;/b&gt;&lt;p&gt;
+by exp-lbrs.ulp</description>
+<packages>
+</packages>
+<symbols>
+<symbol name="A4L-LOC">
+<wire x1="256.54" y1="3.81" x2="256.54" y2="8.89" width="0.1016" layer="94"/>
+<wire x1="256.54" y1="8.89" x2="256.54" y2="13.97" width="0.1016" layer="94"/>
+<wire x1="256.54" y1="13.97" x2="256.54" y2="19.05" width="0.1016" layer="94"/>
+<wire x1="256.54" y1="19.05" x2="256.54" y2="24.13" width="0.1016" layer="94"/>
+<wire x1="184.15" y1="3.81" x2="184.15" y2="24.13" width="0.1016" layer="94"/>
+<wire x1="184.15" y1="24.13" x2="215.265" y2="24.13" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="24.13" x2="256.54" y2="24.13" width="0.1016" layer="94"/>
+<wire x1="234.95" y1="3.81" x2="234.95" y2="8.89" width="0.1016" layer="94"/>
+<wire x1="234.95" y1="8.89" x2="256.54" y2="8.89" width="0.1016" layer="94"/>
+<wire x1="234.95" y1="8.89" x2="215.265" y2="8.89" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="8.89" x2="215.265" y2="3.81" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="8.89" x2="215.265" y2="13.97" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="13.97" x2="256.54" y2="13.97" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="13.97" x2="215.265" y2="19.05" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="19.05" x2="256.54" y2="19.05" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="19.05" x2="215.265" y2="24.13" width="0.1016" layer="94"/>
+<text x="217.17" y="15.24" size="2.54" layer="94">&gt;DRAWING_NAME</text>
+<text x="217.17" y="10.16" size="2.286" layer="94">&gt;LAST_DATE_TIME</text>
+<text x="228.473" y="5.08" size="2.54" layer="94">&gt;SHEET</text>
+<text x="216.916" y="4.953" size="2.54" layer="94">Sheet:</text>
+<frame x1="0" y1="0" x2="260.35" y2="179.07" columns="6" rows="4" layer="94"/>
+<text x="185.42" y="5.08" size="4.572" layer="94" font="vector" ratio="10">oddly
+specific
+objects</text>
+<text x="217.17" y="20.32" size="2.54" layer="94">by joey castillo</text>
+<text x="236.22" y="5.08" size="2.54" layer="94">cc-by-sa 4.0</text>
+</symbol>
+</symbols>
+<devicesets>
+<deviceset name="A4L-LOC" prefix="FRAME" uservalue="yes">
+<description>&lt;b&gt;FRAME&lt;/b&gt;&lt;p&gt;
+DIN A4, landscape with location and doc. field</description>
+<gates>
+<gate name="G$1" symbol="A4L-LOC" x="0" y="0"/>
+</gates>
+<devices>
+<device name="">
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+</devicesets>
+</library>
+<library name="FH19C-9S-0.5SH">
+<description>&lt;b&gt;https://componentsearchengine.com&lt;/b&gt;&lt;p&gt;
+&lt;author&gt;Created by SamacSys&lt;/author&gt;</description>
+<packages>
+<package name="FH19C9S05SH10-FFC">
+<description>&lt;b&gt;FH19C-9S-0.5SH(10)-1&lt;/b&gt;&lt;br&gt;
+</description>
+<smd name="1" x="2" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="2" x="1.5" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="3" x="1" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="4" x="0.5" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="5" x="0" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="6" x="-0.5" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="7" x="-1" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="8" x="-1.5" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="9" x="-2" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<wire x1="-2.4892" y1="0" x2="-2.4892" y2="-3.35" width="0" layer="20"/>
+<wire x1="-2.3392" y1="-3.5" x2="2.3392" y2="-3.5" width="0" layer="20"/>
+<wire x1="2.4892" y1="0" x2="2.4892" y2="-3.35" width="0" layer="20"/>
+<wire x1="-2.3392" y1="-3.5" x2="-2.4892" y2="-3.35" width="0" layer="20" curve="-90"/>
+<wire x1="2.3392" y1="-3.5" x2="2.4892" y2="-3.35" width="0" layer="20" curve="90"/>
+<polygon width="0.1524" layer="30">
+<vertex x="-2.4902" y="-0.9742"/>
+<vertex x="2.4882" y="-0.9742"/>
+<vertex x="2.4892" y="-3.4798"/>
+<vertex x="-2.4892" y="-3.4798"/>
+</polygon>
+</package>
+</packages>
+<symbols>
+<symbol name="FH19C-9S-0.5SH_10-FFC">
+<wire x1="-5.08" y1="12.7" x2="7.62" y2="12.7" width="0.254" layer="94"/>
+<wire x1="7.62" y1="-12.7" x2="7.62" y2="12.7" width="0.254" layer="94"/>
+<wire x1="7.62" y1="-12.7" x2="-5.08" y2="-12.7" width="0.254" layer="94"/>
+<wire x1="-5.08" y1="12.7" x2="-5.08" y2="-12.7" width="0.254" layer="94"/>
+<text x="8.89" y="17.78" size="1.778" layer="95" align="center-left">&gt;NAME</text>
+<text x="8.89" y="15.24" size="1.778" layer="96" align="center-left">&gt;VALUE</text>
+<pin name="1" x="12.7" y="10.16" length="middle" rot="R180"/>
+<pin name="2" x="12.7" y="7.62" length="middle" rot="R180"/>
+<pin name="3" x="12.7" y="5.08" length="middle" rot="R180"/>
+<pin name="4" x="12.7" y="2.54" length="middle" rot="R180"/>
+<pin name="5" x="12.7" y="0" length="middle" rot="R180"/>
+<pin name="6" x="12.7" y="-2.54" length="middle" rot="R180"/>
+<pin name="7" x="12.7" y="-5.08" length="middle" rot="R180"/>
+<pin name="8" x="12.7" y="-7.62" length="middle" rot="R180"/>
+<pin name="9" x="12.7" y="-10.16" length="middle" rot="R180"/>
+</symbol>
+</symbols>
+<devicesets>
+<deviceset name="FH19C-9S-0.5SH_10-FFC">
+<gates>
+<gate name="G$1" symbol="FH19C-9S-0.5SH_10-FFC" x="0" y="0"/>
+</gates>
+<devices>
+<device name="" package="FH19C9S05SH10-FFC">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+<connect gate="G$1" pin="3" pad="3"/>
+<connect gate="G$1" pin="4" pad="4"/>
+<connect gate="G$1" pin="5" pad="5"/>
+<connect gate="G$1" pin="6" pad="6"/>
+<connect gate="G$1" pin="7" pad="7"/>
+<connect gate="G$1" pin="8" pad="8"/>
+<connect gate="G$1" pin="9" pad="9"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+</devicesets>
+</library>
+<library name="supply1" urn="urn:adsk.eagle:library:371">
+<description>&lt;b&gt;Supply Symbols&lt;/b&gt;&lt;p&gt;
+ GND, VCC, 0V, +5V, -5V, etc.&lt;p&gt;
+ Please keep in mind, that these devices are necessary for the
+ automatic wiring of the supply signals.&lt;p&gt;
+ The pin name defined in the symbol is identical to the net which is to be wired automatically.&lt;p&gt;
+ In this library the device names are the same as the pin names of the symbols, therefore the correct signal names appear next to the supply symbols in the schematic.&lt;p&gt;
+ &lt;author&gt;Created by librarian@cadsoft.de&lt;/author&gt;</description>
+<packages>
+</packages>
+<symbols>
+<symbol name="GND" urn="urn:adsk.eagle:symbol:26925/1" library_version="1">
+<wire x1="-1.905" y1="0" x2="1.905" y2="0" width="0.254" layer="94"/>
+<text x="-2.54" y="-2.54" size="1.778" layer="96">&gt;VALUE</text>
+<pin name="GND" x="0" y="2.54" visible="off" length="short" direction="sup" rot="R270"/>
+</symbol>
+<symbol name="VCC" urn="urn:adsk.eagle:symbol:26928/1" library_version="1">
+<wire x1="1.27" y1="-1.905" x2="0" y2="0" width="0.254" layer="94"/>
+<wire x1="0" y1="0" x2="-1.27" y2="-1.905" width="0.254" layer="94"/>
+<text x="-2.54" y="-2.54" size="1.778" layer="96" rot="R90">&gt;VALUE</text>
+<pin name="VCC" x="0" y="-2.54" visible="off" length="short" direction="sup" rot="R90"/>
+</symbol>
+</symbols>
+<devicesets>
+<deviceset name="GND" urn="urn:adsk.eagle:component:26954/1" prefix="GND" library_version="1">
+<description>&lt;b&gt;SUPPLY SYMBOL&lt;/b&gt;</description>
+<gates>
+<gate name="1" symbol="GND" x="0" y="0"/>
+</gates>
+<devices>
+<device name="">
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+<deviceset name="VCC" urn="urn:adsk.eagle:component:26957/1" prefix="P+" library_version="1">
+<description>&lt;b&gt;SUPPLY SYMBOL&lt;/b&gt;</description>
+<gates>
+<gate name="VCC" symbol="VCC" x="0" y="0"/>
+</gates>
+<devices>
+<device name="">
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+</devicesets>
+</library>
+<library name="microbuilder">
+<packages>
+<package name="0603-MINI">
+<description>0603-Mini
+&lt;p&gt;Mini footprint for dense boards&lt;/p&gt;</description>
+<wire x1="-1.346" y1="0.583" x2="1.346" y2="0.583" width="0.0508" layer="39"/>
+<wire x1="1.346" y1="0.583" x2="1.346" y2="-0.583" width="0.0508" layer="39"/>
+<wire x1="1.346" y1="-0.583" x2="-1.346" y2="-0.583" width="0.0508" layer="39"/>
+<wire x1="-1.346" y1="-0.583" x2="-1.346" y2="0.583" width="0.0508" layer="39"/>
+<wire x1="-1.45" y1="-0.7" x2="-1.45" y2="0.7" width="0.2032" layer="21"/>
+<wire x1="-1.45" y1="0.7" x2="1.45" y2="0.7" width="0.2032" layer="21"/>
+<wire x1="1.45" y1="0.7" x2="1.45" y2="-0.7" width="0.2032" layer="21"/>
+<wire x1="1.45" y1="-0.7" x2="-1.45" y2="-0.7" width="0.2032" layer="21"/>
+<wire x1="-0.356" y1="0.432" x2="0.356" y2="0.432" width="0.1016" layer="51"/>
+<wire x1="-0.356" y1="-0.419" x2="0.356" y2="-0.419" width="0.1016" layer="51"/>
+<smd name="1" x="-0.75" y="0" dx="0.9" dy="0.9" layer="1"/>
+<smd name="2" x="0.75" y="0" dx="0.9" dy="0.9" layer="1"/>
+<text x="1.524" y="-0.0635" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="1.524" y="-0.635" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-0.8382" y1="-0.4699" x2="-0.3381" y2="0.4801" layer="51"/>
+<rectangle x1="0.3302" y1="-0.4699" x2="0.8303" y2="0.4801" layer="51"/>
+</package>
+<package name="0805_NOTHERMALS">
+<wire x1="-1.873" y1="0.883" x2="1.873" y2="0.883" width="0.0508" layer="39"/>
+<wire x1="1.873" y1="-0.883" x2="-1.873" y2="-0.883" width="0.0508" layer="39"/>
+<wire x1="-1.873" y1="-0.883" x2="-1.873" y2="0.883" width="0.0508" layer="39"/>
+<wire x1="-0.381" y1="0.66" x2="0.381" y2="0.66" width="0.1016" layer="51"/>
+<wire x1="-0.356" y1="-0.66" x2="0.381" y2="-0.66" width="0.1016" layer="51"/>
+<wire x1="1.873" y1="0.883" x2="1.873" y2="-0.883" width="0.0508" layer="39"/>
+<wire x1="1.85" y1="1" x2="1.85" y2="-1" width="0.2032" layer="21"/>
+<wire x1="1.85" y1="-1" x2="-1.85" y2="-1" width="0.2032" layer="21"/>
+<wire x1="-1.85" y1="-1" x2="-1.85" y2="1" width="0.2032" layer="21"/>
+<wire x1="-1.85" y1="1" x2="1.85" y2="1" width="0.2032" layer="21"/>
+<smd name="1" x="-0.95" y="0" dx="1.3" dy="1.5" layer="1" thermals="no"/>
+<smd name="2" x="0.95" y="0" dx="1.3" dy="1.5" layer="1" thermals="no"/>
+<text x="2.032" y="-0.127" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="2.032" y="-0.762" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-1.0922" y1="-0.7239" x2="-0.3421" y2="0.7262" layer="51"/>
+<rectangle x1="0.3556" y1="-0.7239" x2="1.1057" y2="0.7262" layer="51"/>
+</package>
+<package name="_0402">
+<description>&lt;b&gt; 0402&lt;/b&gt;</description>
+<wire x1="-0.245" y1="0.174" x2="0.245" y2="0.174" width="0.1016" layer="51"/>
+<wire x1="0.245" y1="-0.174" x2="-0.245" y2="-0.174" width="0.1016" layer="51"/>
+<wire x1="-1.0573" y1="0.5557" x2="1.0573" y2="0.5557" width="0.2032" layer="21"/>
+<wire x1="1.0573" y1="0.5557" x2="1.0573" y2="-0.5556" width="0.2032" layer="21"/>
+<wire x1="1.0573" y1="-0.5556" x2="-1.0573" y2="-0.5557" width="0.2032" layer="21"/>
+<wire x1="-1.0573" y1="-0.5557" x2="-1.0573" y2="0.5557" width="0.2032" layer="21"/>
+<smd name="1" x="-0.508" y="0" dx="0.6" dy="0.6" layer="1"/>
+<smd name="2" x="0.508" y="0" dx="0.6" dy="0.6" layer="1"/>
+<text x="-0.9525" y="0.7939" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-0.9525" y="-1.3336" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-0.0794" y1="-0.2381" x2="0.0794" y2="0.2381" layer="35"/>
+<rectangle x1="0.25" y1="-0.25" x2="0.5" y2="0.25" layer="51"/>
+<rectangle x1="-0.5" y1="-0.25" x2="-0.25" y2="0.25" layer="51"/>
+</package>
+<package name="_0402MP">
+<description>&lt;b&gt;0402 MicroPitch&lt;p&gt;</description>
+<wire x1="-0.245" y1="0.174" x2="0.245" y2="0.174" width="0.1016" layer="51"/>
+<wire x1="0.245" y1="-0.174" x2="-0.245" y2="-0.174" width="0.1016" layer="51"/>
+<wire x1="0" y1="0.127" x2="0" y2="-0.127" width="0.2032" layer="21"/>
+<smd name="1" x="-0.508" y="0" dx="0.5" dy="0.5" layer="1"/>
+<smd name="2" x="0.508" y="0" dx="0.5" dy="0.5" layer="1"/>
+<text x="-0.635" y="0.4763" size="0.6096" layer="25" ratio="18">&gt;NAME</text>
+<text x="-0.635" y="-0.7938" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-0.1" y1="-0.2" x2="0.1" y2="0.2" layer="35"/>
+<rectangle x1="-0.5" y1="-0.25" x2="-0.254" y2="0.25" layer="51"/>
+<rectangle x1="0.2588" y1="-0.25" x2="0.5" y2="0.25" layer="51"/>
+</package>
+<package name="_0603">
+<description>&lt;b&gt;0603&lt;/b&gt;</description>
+<wire x1="-0.432" y1="-0.306" x2="0.432" y2="-0.306" width="0.1016" layer="51"/>
+<wire x1="0.432" y1="0.306" x2="-0.432" y2="0.306" width="0.1016" layer="51"/>
+<wire x1="-1.4605" y1="0.635" x2="1.4605" y2="0.635" width="0.2032" layer="21"/>
+<wire x1="1.4605" y1="0.635" x2="1.4605" y2="-0.635" width="0.2032" layer="21"/>
+<wire x1="1.4605" y1="-0.635" x2="-1.4605" y2="-0.635" width="0.2032" layer="21"/>
+<wire x1="-1.4605" y1="-0.635" x2="-1.4605" y2="0.635" width="0.2032" layer="21"/>
+<smd name="1" x="-0.762" y="0" dx="0.9" dy="0.8" layer="1"/>
+<smd name="2" x="0.762" y="0" dx="0.9" dy="0.8" layer="1"/>
+<text x="-1.27" y="0.9525" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.27" y="-1.4923" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="0.4318" y1="-0.4" x2="0.8382" y2="0.4" layer="51"/>
+<rectangle x1="-0.8382" y1="-0.4" x2="-0.4318" y2="0.4" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.4001" x2="0.1999" y2="0.4001" layer="35"/>
+</package>
+<package name="_0603MP">
+<description>&lt;b&gt;0603 MicroPitch&lt;/b&gt;</description>
+<wire x1="-0.432" y1="-0.306" x2="0.432" y2="-0.306" width="0.1016" layer="51"/>
+<wire x1="0.432" y1="0.306" x2="-0.432" y2="0.306" width="0.1016" layer="51"/>
+<wire x1="0" y1="0.254" x2="0" y2="-0.254" width="0.2032" layer="21"/>
+<smd name="1" x="-0.762" y="0" dx="0.8" dy="0.8" layer="1"/>
+<smd name="2" x="0.762" y="0" dx="0.8" dy="0.8" layer="1"/>
+<text x="-0.9525" y="0.635" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-0.9525" y="-0.9525" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="0.4318" y1="-0.4" x2="0.8" y2="0.4" layer="51"/>
+<rectangle x1="-0.8" y1="-0.4" x2="-0.4318" y2="0.4" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.25" x2="0.1999" y2="0.25" layer="35"/>
+</package>
+<package name="_0805">
+<description>&lt;b&gt;0805&lt;/b&gt;</description>
+<wire x1="-0.41" y1="0.585" x2="0.41" y2="0.585" width="0.1016" layer="51"/>
+<wire x1="-0.41" y1="-0.585" x2="0.41" y2="-0.585" width="0.1016" layer="51"/>
+<wire x1="-1.905" y1="0.889" x2="1.905" y2="0.889" width="0.2032" layer="21"/>
+<wire x1="1.905" y1="0.889" x2="1.905" y2="-0.889" width="0.2032" layer="21"/>
+<wire x1="1.905" y1="-0.889" x2="-1.905" y2="-0.889" width="0.2032" layer="21"/>
+<wire x1="-1.905" y1="-0.889" x2="-1.905" y2="0.889" width="0.2032" layer="21"/>
+<smd name="1" x="-1.016" y="0" dx="1.2" dy="1.3" layer="1"/>
+<smd name="2" x="1.016" y="0" dx="1.2" dy="1.3" layer="1"/>
+<text x="-1.5875" y="1.27" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.5874" y="-1.651" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="0.4064" y1="-0.65" x2="1.0564" y2="0.65" layer="51"/>
+<rectangle x1="-1.0668" y1="-0.65" x2="-0.4168" y2="0.65" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.5001" x2="0.1999" y2="0.5001" layer="35"/>
+</package>
+<package name="_0805MP">
+<description>&lt;b&gt;0805 MicroPitch&lt;/b&gt;</description>
+<wire x1="-0.51" y1="0.535" x2="0.51" y2="0.535" width="0.1016" layer="51"/>
+<wire x1="-0.51" y1="-0.535" x2="0.51" y2="-0.535" width="0.1016" layer="51"/>
+<wire x1="0" y1="0.508" x2="0" y2="-0.508" width="0.2032" layer="21"/>
+<smd name="1" x="-1.016" y="0" dx="1.2" dy="1.3" layer="1"/>
+<smd name="2" x="1.016" y="0" dx="1.2" dy="1.3" layer="1"/>
+<text x="-1.5875" y="0.9525" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.5875" y="-1.27" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="0.4064" y1="-0.65" x2="1" y2="0.65" layer="51"/>
+<rectangle x1="-1" y1="-0.65" x2="-0.4168" y2="0.65" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.5001" x2="0.1999" y2="0.5001" layer="35"/>
+</package>
+<package name="0805-NO">
+<wire x1="-0.381" y1="0.66" x2="0.381" y2="0.66" width="0.1016" layer="51"/>
+<wire x1="-0.356" y1="-0.66" x2="0.381" y2="-0.66" width="0.1016" layer="51"/>
+<smd name="1" x="-0.95" y="0" dx="1.24" dy="1.5" layer="1"/>
+<smd name="2" x="0.95" y="0" dx="1.24" dy="1.5" layer="1"/>
+<text x="2.032" y="-0.127" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="2.032" y="-0.762" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-1.0922" y1="-0.7239" x2="-0.3421" y2="0.7262" layer="51"/>
+<rectangle x1="0.3556" y1="-0.7239" x2="1.1057" y2="0.7262" layer="51"/>
+<wire x1="0" y1="0.508" x2="0" y2="-0.508" width="0.3048" layer="21"/>
+</package>
+<package name="0805_10MGAP">
+<wire x1="-0.381" y1="0.66" x2="0.381" y2="0.66" width="0.1016" layer="51"/>
+<wire x1="-0.356" y1="-0.66" x2="0.381" y2="-0.66" width="0.1016" layer="51"/>
+<smd name="1" x="-1.05" y="0" dx="1.2" dy="1.5" layer="1"/>
+<smd name="2" x="1.05" y="0" dx="1.2" dy="1.5" layer="1"/>
+<text x="2.032" y="-0.127" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="2.032" y="-0.762" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-1.0922" y1="-0.7239" x2="-0.3421" y2="0.7262" layer="51"/>
+<rectangle x1="0.3556" y1="-0.7239" x2="1.1057" y2="0.7262" layer="51"/>
+<wire x1="0" y1="0.508" x2="0" y2="-0.508" width="0.3048" layer="21"/>
+</package>
+<package name="0603-NO@1">
+<wire x1="-1.473" y1="0.729" x2="1.473" y2="0.729" width="0.0508" layer="39"/>
+<wire x1="1.473" y1="0.729" x2="1.473" y2="-0.729" width="0.0508" layer="39"/>
+<wire x1="1.473" y1="-0.729" x2="-1.473" y2="-0.729" width="0.0508" layer="39"/>
+<wire x1="-1.473" y1="-0.729" x2="-1.473" y2="0.729" width="0.0508" layer="39"/>
+<wire x1="-0.356" y1="0.432" x2="0.356" y2="0.432" width="0.1016" layer="51"/>
+<wire x1="-0.356" y1="-0.419" x2="0.356" y2="-0.419" width="0.1016" layer="51"/>
+<smd name="1" x="-0.85" y="0" dx="1.1" dy="1" layer="1"/>
+<smd name="2" x="0.85" y="0" dx="1.1" dy="1" layer="1"/>
+<text x="1.778" y="-0.127" size="0.8128" layer="25" font="vector" ratio="18">&gt;NAME</text>
+<text x="1.778" y="-0.762" size="0.4064" layer="27" font="vector" ratio="10">&gt;VALUE</text>
+<rectangle x1="-0.8382" y1="-0.4699" x2="-0.3381" y2="0.4801" layer="51"/>
+<rectangle x1="0.3302" y1="-0.4699" x2="0.8303" y2="0.4801" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.3" x2="0.1999" y2="0.3" layer="35"/>
+</package>
+<package name="_1206">
+<wire x1="0.9525" y1="-0.8128" x2="-0.9652" y2="-0.8128" width="0.1016" layer="51"/>
+<wire x1="0.9525" y1="0.8128" x2="-0.9652" y2="0.8128" width="0.1016" layer="51"/>
+<wire x1="-2.286" y1="1.143" x2="2.286" y2="1.143" width="0.2032" layer="21"/>
+<wire x1="2.286" y1="1.143" x2="2.286" y2="-1.143" width="0.2032" layer="21"/>
+<wire x1="2.286" y1="-1.143" x2="-2.286" y2="-1.143" width="0.2032" layer="21"/>
+<wire x1="-2.286" y1="-1.143" x2="-2.286" y2="1.143" width="0.2032" layer="21"/>
+<smd name="2" x="1.27" y="0" dx="1.4" dy="1.8" layer="1"/>
+<smd name="1" x="-1.27" y="0" dx="1.4" dy="1.8" layer="1"/>
+<rectangle x1="-1.6891" y1="-0.8763" x2="-0.9525" y2="0.8763" layer="51"/>
+<rectangle x1="0.9525" y1="-0.8763" x2="1.6891" y2="0.8763" layer="51"/>
+<rectangle x1="-0.3" y1="-0.7" x2="0.3" y2="0.7" layer="35"/>
+<text x="-2.2225" y="1.5113" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-2.2225" y="-1.8288" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="_1206MP">
+<wire x1="1.0525" y1="-0.7128" x2="-1.0652" y2="-0.7128" width="0.1016" layer="51"/>
+<wire x1="1.0525" y1="0.7128" x2="-1.0652" y2="0.7128" width="0.1016" layer="51"/>
+<wire x1="-0.635" y1="0.635" x2="0.635" y2="0.635" width="0.2032" layer="21"/>
+<wire x1="-0.635" y1="-0.635" x2="0.635" y2="-0.635" width="0.2032" layer="21"/>
+<smd name="2" x="1.524" y="0" dx="1.3" dy="1.6" layer="1"/>
+<smd name="1" x="-1.524" y="0" dx="1.3" dy="1.6" layer="1"/>
+<text x="-2.2225" y="1.1113" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-2.2225" y="-1.4288" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-1.6" y1="-0.8" x2="-0.9" y2="0.8" layer="51"/>
+<rectangle x1="-0.3" y1="-0.7" x2="0.3" y2="0.7" layer="35"/>
+<rectangle x1="0.9001" y1="-0.8" x2="1.6" y2="0.8" layer="51" rot="R180"/>
+</package>
+<package name="SOIC8_150MIL">
+<description>&lt;b&gt;Small Outline IC - 150mil Wide&lt;/b&gt;</description>
+<wire x1="2.4" y1="1.9" x2="2.4" y2="-1.4" width="0.2032" layer="51"/>
+<wire x1="2.4" y1="-1.4" x2="2.4" y2="-1.9" width="0.2032" layer="51"/>
+<wire x1="2.4" y1="-1.9" x2="-2.4" y2="-1.9" width="0.2032" layer="51"/>
+<wire x1="-2.4" y1="-1.9" x2="-2.4" y2="-1.4" width="0.2032" layer="51"/>
+<wire x1="-2.4" y1="-1.4" x2="-2.4" y2="1.9" width="0.2032" layer="51"/>
+<wire x1="2.4" y1="-1.4" x2="-2.4" y2="-1.4" width="0.2032" layer="51"/>
+<wire x1="-2.4" y1="1.9" x2="2.4" y2="1.9" width="0.2032" layer="51"/>
+<wire x1="-2.4" y1="-1.9" x2="-2.4" y2="1.9" width="0.2032" layer="21"/>
+<wire x1="2.4" y1="1.9" x2="2.4" y2="-1.9" width="0.2032" layer="21"/>
+<circle x="-1.9304" y="-0.889" radius="0.254" width="0.2032" layer="21"/>
+<smd name="2" x="-0.635" y="-2.6" dx="0.6" dy="2.2" layer="1"/>
+<smd name="7" x="-0.635" y="2.6" dx="0.6" dy="2.2" layer="1"/>
+<smd name="1" x="-1.905" y="-2.6" dx="0.6" dy="2.2" layer="1"/>
+<smd name="3" x="0.635" y="-2.6" dx="0.6" dy="2.2" layer="1"/>
+<smd name="4" x="1.905" y="-2.6" dx="0.6" dy="2.2" layer="1"/>
+<smd name="8" x="-1.905" y="2.6" dx="0.6" dy="2.2" layer="1"/>
+<smd name="6" x="0.635" y="2.6" dx="0.6" dy="2.2" layer="1"/>
+<smd name="5" x="1.905" y="2.6" dx="0.6" dy="2.2" layer="1"/>
+<text x="-1.905" y="0.381" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.905" y="-0.381" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-2.15" y1="-3.1" x2="-1.66" y2="-2" layer="51"/>
+<rectangle x1="-0.88" y1="-3.1" x2="-0.39" y2="-2" layer="51"/>
+<rectangle x1="0.39" y1="-3.1" x2="0.88" y2="-2" layer="51"/>
+<rectangle x1="1.66" y1="-3.1" x2="2.15" y2="-2" layer="51"/>
+<rectangle x1="1.66" y1="2" x2="2.15" y2="3.1" layer="51"/>
+<rectangle x1="0.39" y1="2" x2="0.88" y2="3.1" layer="51"/>
+<rectangle x1="-0.88" y1="2" x2="-0.39" y2="3.1" layer="51"/>
+<rectangle x1="-2.15" y1="2" x2="-1.66" y2="3.1" layer="51"/>
+</package>
+<package name="SOIC8_208MIL">
+<description>&lt;b&gt;Small Outline IC - 208mil Wide&lt;/b&gt;</description>
+<wire x1="2.4" y1="2.615" x2="2.4" y2="-2.615" width="0.2032" layer="51"/>
+<wire x1="2.4" y1="-2.615" x2="-2.4" y2="-2.615" width="0.2032" layer="51"/>
+<wire x1="-2.4" y1="-2.615" x2="-2.4" y2="2.615" width="0.2032" layer="51"/>
+<wire x1="-2.4" y1="2.615" x2="2.4" y2="2.615" width="0.2032" layer="51"/>
+<wire x1="-2.4" y1="-1.9" x2="-2.4" y2="1.9" width="0.2032" layer="21"/>
+<wire x1="2.4" y1="1.9" x2="2.4" y2="-1.9" width="0.2032" layer="21"/>
+<circle x="-1.9304" y="-0.889" radius="0.254" width="0.2032" layer="21"/>
+<smd name="2" x="-0.635" y="-3.315" dx="0.6" dy="2.2" layer="1"/>
+<smd name="7" x="-0.635" y="3.315" dx="0.6" dy="2.2" layer="1"/>
+<smd name="1" x="-1.905" y="-3.315" dx="0.6" dy="2.2" layer="1"/>
+<smd name="3" x="0.635" y="-3.315" dx="0.6" dy="2.2" layer="1"/>
+<smd name="4" x="1.905" y="-3.315" dx="0.6" dy="2.2" layer="1"/>
+<smd name="8" x="-1.905" y="3.315" dx="0.6" dy="2.2" layer="1"/>
+<smd name="6" x="0.635" y="3.315" dx="0.6" dy="2.2" layer="1"/>
+<smd name="5" x="1.905" y="3.315" dx="0.6" dy="2.2" layer="1"/>
+<text x="-1.905" y="0.635" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.905" y="-0.381" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-2.15" y1="-3.815" x2="-1.66" y2="-2.715" layer="51"/>
+<rectangle x1="-0.88" y1="-3.815" x2="-0.39" y2="-2.715" layer="51"/>
+<rectangle x1="0.39" y1="-3.815" x2="0.88" y2="-2.715" layer="51"/>
+<rectangle x1="1.66" y1="-3.815" x2="2.15" y2="-2.715" layer="51"/>
+<rectangle x1="1.66" y1="2.715" x2="2.15" y2="3.815" layer="51"/>
+<rectangle x1="0.39" y1="2.715" x2="0.88" y2="3.815" layer="51"/>
+<rectangle x1="-0.88" y1="2.715" x2="-0.39" y2="3.815" layer="51"/>
+<rectangle x1="-2.15" y1="2.715" x2="-1.66" y2="3.815" layer="51"/>
+</package>
+<package name="USON8">
+<wire x1="-1.6" y1="1" x2="1.6" y2="1" width="0.127" layer="21"/>
+<wire x1="1.6" y1="1" x2="1.6" y2="-1" width="0.127" layer="21"/>
+<wire x1="1.6" y1="-1" x2="-1.6" y2="-1" width="0.127" layer="21"/>
+<wire x1="-1.6" y1="-1" x2="-1.6" y2="1" width="0.127" layer="21"/>
+<circle x="-1.5" y="1" radius="0.22360625" width="0.127" layer="21"/>
+<smd name="1" x="-1.2" y="0.75" dx="0.275" dy="0.5" layer="1" rot="R90"/>
+<smd name="2" x="-1.2" y="0.25" dx="0.275" dy="0.5" layer="1" rot="R90"/>
+<smd name="3" x="-1.2" y="-0.25" dx="0.275" dy="0.5" layer="1" rot="R90"/>
+<smd name="4" x="-1.2" y="-0.75" dx="0.275" dy="0.5" layer="1" rot="R90"/>
+<smd name="8" x="1.2" y="0.75" dx="0.275" dy="0.5" layer="1" rot="R90"/>
+<smd name="7" x="1.2" y="0.25" dx="0.275" dy="0.5" layer="1" rot="R90"/>
+<smd name="6" x="1.2" y="-0.25" dx="0.275" dy="0.5" layer="1" rot="R90"/>
+<smd name="5" x="1.2" y="-0.75" dx="0.275" dy="0.5" layer="1" rot="R90"/>
+</package>
+<package name="2012">
+<wire x1="-1.662" y1="1.245" x2="1.662" y2="1.245" width="0.2032" layer="51"/>
+<wire x1="-1.637" y1="-1.245" x2="1.687" y2="-1.245" width="0.2032" layer="51"/>
+<wire x1="-3.473" y1="1.483" x2="3.473" y2="1.483" width="0.0508" layer="39"/>
+<wire x1="3.473" y1="1.483" x2="3.473" y2="-1.483" width="0.0508" layer="39"/>
+<wire x1="3.473" y1="-1.483" x2="-3.473" y2="-1.483" width="0.0508" layer="39"/>
+<wire x1="-3.473" y1="-1.483" x2="-3.473" y2="1.483" width="0.0508" layer="39"/>
+<wire x1="-3.302" y1="1.524" x2="3.302" y2="1.524" width="0.2032" layer="21"/>
+<wire x1="3.302" y1="1.524" x2="3.302" y2="-1.524" width="0.2032" layer="21"/>
+<wire x1="3.302" y1="-1.524" x2="-3.302" y2="-1.524" width="0.2032" layer="21"/>
+<wire x1="-3.302" y1="-1.524" x2="-3.302" y2="1.524" width="0.2032" layer="21"/>
+<smd name="1" x="-2.2" y="0" dx="1.8" dy="2.7" layer="1"/>
+<smd name="2" x="2.2" y="0" dx="1.8" dy="2.7" layer="1"/>
+<text x="-2.54" y="1.8415" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-2.667" y="-2.159" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-2.4892" y1="-1.3208" x2="-1.6393" y2="1.3292" layer="51"/>
+<rectangle x1="1.651" y1="-1.3208" x2="2.5009" y2="1.3292" layer="51"/>
+</package>
+<package name="2512">
+<description>&lt;b&gt;RESISTOR 2512 (Metric 6432)&lt;/b&gt;</description>
+<wire x1="-2.362" y1="1.473" x2="2.387" y2="1.473" width="0.2032" layer="51"/>
+<wire x1="-2.362" y1="-1.473" x2="2.387" y2="-1.473" width="0.2032" layer="51"/>
+<wire x1="-3.973" y1="1.983" x2="3.973" y2="1.983" width="0.0508" layer="39"/>
+<wire x1="3.973" y1="1.983" x2="3.973" y2="-1.983" width="0.0508" layer="39"/>
+<wire x1="3.973" y1="-1.983" x2="-3.973" y2="-1.983" width="0.0508" layer="39"/>
+<wire x1="-3.973" y1="-1.983" x2="-3.973" y2="1.983" width="0.0508" layer="39"/>
+<smd name="1" x="-2.8" y="0" dx="1.8" dy="3.2" layer="1"/>
+<smd name="2" x="2.8" y="0" dx="1.8" dy="3.2" layer="1"/>
+<text x="-3.683" y="1.905" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-3.556" y="-2.286" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-3.2004" y1="-1.5494" x2="-2.3505" y2="1.5507" layer="51"/>
+<rectangle x1="2.3622" y1="-1.5494" x2="3.2121" y2="1.5507" layer="51"/>
+<rectangle x1="-0.5001" y1="-1" x2="0.5001" y2="1" layer="35"/>
+</package>
+<package name="0603-NO">
+<wire x1="-1.473" y1="0.729" x2="1.473" y2="0.729" width="0.0508" layer="39"/>
+<wire x1="1.473" y1="0.729" x2="1.473" y2="-0.729" width="0.0508" layer="39"/>
+<wire x1="1.473" y1="-0.729" x2="-1.473" y2="-0.729" width="0.0508" layer="39"/>
+<wire x1="-1.473" y1="-0.729" x2="-1.473" y2="0.729" width="0.0508" layer="39"/>
+<wire x1="-0.356" y1="0.432" x2="0.356" y2="0.432" width="0.1016" layer="51"/>
+<wire x1="-0.356" y1="-0.419" x2="0.356" y2="-0.419" width="0.1016" layer="51"/>
+<smd name="1" x="-0.85" y="0" dx="1.075" dy="1" layer="1"/>
+<smd name="2" x="0.85" y="0" dx="1.075" dy="1" layer="1"/>
+<text x="1.778" y="-0.127" size="0.8128" layer="25" font="vector" ratio="18">&gt;NAME</text>
+<text x="1.778" y="-0.762" size="0.4064" layer="27" font="vector" ratio="10">&gt;VALUE</text>
+<rectangle x1="-0.8382" y1="-0.4699" x2="-0.3381" y2="0.4801" layer="51"/>
+<rectangle x1="0.3302" y1="-0.4699" x2="0.8303" y2="0.4801" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.3" x2="0.1999" y2="0.3" layer="35"/>
+<wire x1="0" y1="0.4" x2="0" y2="-0.4" width="0.3048" layer="21"/>
+</package>
+</packages>
+<symbols>
+<symbol name="CAPACITOR">
+<wire x1="0" y1="0.762" x2="0" y2="0" width="0.1524" layer="94"/>
+<wire x1="0" y1="2.54" x2="0" y2="1.778" width="0.1524" layer="94"/>
+<text x="-2.29" y="1.25" size="1.27" layer="95" font="vector" rot="R90" align="center">&gt;NAME</text>
+<text x="2.3" y="1.25" size="1.27" layer="96" font="vector" rot="R90" align="center">&gt;VALUE</text>
+<rectangle x1="-1.27" y1="0.508" x2="1.27" y2="1.016" layer="94"/>
+<rectangle x1="-1.27" y1="1.524" x2="1.27" y2="2.032" layer="94"/>
+<pin name="1" x="0" y="5.08" visible="off" length="short" direction="pas" swaplevel="1" rot="R270"/>
+<pin name="2" x="0" y="-2.54" visible="off" length="short" direction="pas" swaplevel="1" rot="R90"/>
+</symbol>
+<symbol name="M25P16">
+<wire x1="-12.7" y1="10.16" x2="12.7" y2="10.16" width="0.254" layer="94"/>
+<wire x1="12.7" y1="10.16" x2="12.7" y2="-7.62" width="0.254" layer="94"/>
+<wire x1="12.7" y1="-7.62" x2="-12.7" y2="-7.62" width="0.254" layer="94"/>
+<wire x1="-12.7" y1="-7.62" x2="-12.7" y2="10.16" width="0.254" layer="94"/>
+<text x="-12.7" y="12.7" size="1.778" layer="95">&gt;NAME</text>
+<text x="-12.7" y="-10.16" size="1.778" layer="95">&gt;VALUE</text>
+<pin name="SCK" x="-15.24" y="7.62" length="short"/>
+<pin name="MOSI" x="-15.24" y="5.08" length="short"/>
+<pin name="MISO" x="-15.24" y="2.54" length="short"/>
+<pin name="SSEL" x="-15.24" y="0" length="short"/>
+<pin name="WP#/IO2" x="-15.24" y="-2.54" length="short"/>
+<pin name="HOLD#/IO3" x="-15.24" y="-5.08" length="short"/>
+<pin name="VCC" x="15.24" y="7.62" length="short" rot="R180"/>
+<pin name="VSS" x="15.24" y="-5.08" length="short" rot="R180"/>
+</symbol>
+<symbol name="RESISTOR">
+<wire x1="-2.54" y1="1.27" x2="2.54" y2="1.27" width="0.254" layer="94"/>
+<wire x1="2.54" y1="1.27" x2="2.54" y2="-1.27" width="0.254" layer="94"/>
+<wire x1="2.54" y1="-1.27" x2="-2.54" y2="-1.27" width="0.254" layer="94"/>
+<wire x1="-2.54" y1="-1.27" x2="-2.54" y2="1.27" width="0.254" layer="94"/>
+<text x="0" y="2.54" size="1.27" layer="95" font="vector" align="center">&gt;NAME</text>
+<text x="0" y="0" size="1.016" layer="96" font="vector" ratio="15" align="center">&gt;VALUE</text>
+<pin name="1" x="-5.08" y="0" visible="off" length="short" direction="pas" swaplevel="1"/>
+<pin name="2" x="5.08" y="0" visible="off" length="short" direction="pas" swaplevel="1" rot="R180"/>
+</symbol>
+</symbols>
+<devicesets>
+<deviceset name="CAP_CERAMIC" prefix="C" uservalue="yes">
+<description>&lt;p&gt;&lt;b&gt;Ceramic Capacitors&lt;/b&gt;&lt;/p&gt;
+&lt;p&gt;For new designs, use the packages preceded by an '_' character since they are more reliable:&lt;/p&gt;
+&lt;p&gt;The following footprints should be used on most boards:&lt;/p&gt;
+&lt;ul&gt;
+&lt;li&gt;&lt;b&gt;_0402&lt;/b&gt; - Standard footprint for regular board layouts&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_0603&lt;/b&gt; - Standard footprint for regular board layouts&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_0805&lt;/b&gt; - Standard footprint for regular board layouts&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_1206&lt;/b&gt; - Standard footprint for regular board layouts&lt;/li&gt;
+&lt;/ul&gt;
+&lt;p&gt;For extremely tight-pitch boards where space is at a premium, the following 'micro-pitch' footprints can be used (smaller pads, no silkscreen outline, etc.):&lt;/p&gt;
+&lt;ul&gt;
+&lt;li&gt;&lt;b&gt;_0402MP&lt;/b&gt; - Micro-pitch footprint for very dense/compact boards&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_0603MP&lt;/b&gt; - Micro-pitch footprint for very dense/compact boards&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_0805MP&lt;/b&gt; - Micro-pitch footprint for very dense/compact boards&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_1206MP&lt;/b&gt; - Micro-pitch footprint for very dense/compact boards&lt;/li&gt;
+&lt;/ul&gt;</description>
+<gates>
+<gate name="G$1" symbol="CAPACITOR" x="0" y="-2.54"/>
+</gates>
+<devices>
+<device name="0603MINI" package="0603-MINI">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="0805-NOTHERMALS" package="0805_NOTHERMALS">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0402" package="_0402">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0402MP" package="_0402MP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0603" package="_0603">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0603MP" package="_0603MP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0805" package="_0805">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0805MP" package="_0805MP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="0805-NOOUTLINE" package="0805-NO">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="0805_10MGAP" package="0805_10MGAP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="0603_NO" package="0603-NO@1">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_1206" package="_1206">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_1206MP" package="_1206MP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+<deviceset name="SPIFLASH_8PIN" prefix="U" uservalue="yes">
+<description>&lt;b&gt;SOIC8 SPI Flash&lt;/b&gt;
+&lt;p&gt;Be careful with the size since SOIC8 flash comes in several 'widths'&lt;/p&gt;
+&lt;p&gt;&lt;b&gt;SOIC8 150 mil&lt;/b&gt;
+&lt;ul&gt;
+&lt;li&gt;&lt;b&gt;M25P16&lt;/b&gt; - 16Mbit (2Mbit x 8) Serial Flash (75MHz SPI Bus), Supply: 2.7-3.6V &lt;br/&gt;&lt;b&gt;Digikey: &lt;/b&gt; SOIC8 - M25P16-VMN6P-ND&lt;/li&gt;
+&lt;/ul&gt;
+&lt;/p&gt;
+
+&lt;p&gt;&lt;b&gt;SOIC8 208 mil&lt;/b&gt;
+&lt;ul&gt;
+&lt;li&gt;&lt;b&gt;W25Q16BVSSIG&lt;/b&gt; - 16Mbit (2Mbit x 8) Serial Flash (104MHz SPI Bus), Supply: 2.7-3.6V &lt;br/&gt;&lt;b&gt;Digikey: &lt;/b&gt; SOIC8 - W25Q16BVSSIG-ND&lt;/li&gt;
+&lt;/ul&gt;
+&lt;/p&gt;</description>
+<gates>
+<gate name="G$1" symbol="M25P16" x="0" y="0"/>
+</gates>
+<devices>
+<device name="" package="SOIC8_150MIL">
+<connects>
+<connect gate="G$1" pin="HOLD#/IO3" pad="7"/>
+<connect gate="G$1" pin="MISO" pad="2"/>
+<connect gate="G$1" pin="MOSI" pad="5"/>
+<connect gate="G$1" pin="SCK" pad="6"/>
+<connect gate="G$1" pin="SSEL" pad="1"/>
+<connect gate="G$1" pin="VCC" pad="8"/>
+<connect gate="G$1" pin="VSS" pad="4"/>
+<connect gate="G$1" pin="WP#/IO2" pad="3"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="208MIL" package="SOIC8_208MIL">
+<connects>
+<connect gate="G$1" pin="HOLD#/IO3" pad="7"/>
+<connect gate="G$1" pin="MISO" pad="2"/>
+<connect gate="G$1" pin="MOSI" pad="5"/>
+<connect gate="G$1" pin="SCK" pad="6"/>
+<connect gate="G$1" pin="SSEL" pad="1"/>
+<connect gate="G$1" pin="VCC" pad="8"/>
+<connect gate="G$1" pin="VSS" pad="4"/>
+<connect gate="G$1" pin="WP#/IO2" pad="3"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="UX" package="USON8">
+<connects>
+<connect gate="G$1" pin="HOLD#/IO3" pad="7"/>
+<connect gate="G$1" pin="MISO" pad="2"/>
+<connect gate="G$1" pin="MOSI" pad="5"/>
+<connect gate="G$1" pin="SCK" pad="6"/>
+<connect gate="G$1" pin="SSEL" pad="1"/>
+<connect gate="G$1" pin="VCC" pad="8"/>
+<connect gate="G$1" pin="VSS" pad="4"/>
+<connect gate="G$1" pin="WP#/IO2" pad="3"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+<deviceset name="RESISTOR" prefix="R" uservalue="yes">
+<description>&lt;p&gt;&lt;b&gt;Resistors&lt;/b&gt;&lt;/p&gt;
+&lt;p&gt;For new designs, use the packages preceded by an '_' character since they are more reliable:&lt;/p&gt;
+&lt;p&gt;The following footprints should be used on most boards:&lt;/p&gt;
+&lt;ul&gt;
+&lt;li&gt;&lt;b&gt;_0402&lt;/b&gt; - Standard footprint for regular board layouts&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_0603&lt;/b&gt; - Standard footprint for regular board layouts&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_0805&lt;/b&gt; - Standard footprint for regular board layouts&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_1206&lt;/b&gt; - Standard footprint for regular board layouts&lt;/li&gt;
+&lt;/ul&gt;
+&lt;p&gt;For extremely tight-pitch boards where space is at a premium, the following 'micro-pitch' footprints can be used (smaller pads, no silkscreen outline, etc.):&lt;/p&gt;
+&lt;ul&gt;
+&lt;li&gt;&lt;b&gt;_0402MP&lt;/b&gt; - Micro-pitch footprint for very dense/compact boards&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_0603MP&lt;/b&gt; - Micro-pitch footprint for very dense/compact boards&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_0805MP&lt;/b&gt; - Micro-pitch footprint for very dense/compact boards&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_1206MP&lt;/b&gt; - Micro-pitch footprint for very dense/compact boards&lt;/li&gt;
+&lt;/ul&gt;</description>
+<gates>
+<gate name="G$1" symbol="RESISTOR" x="0" y="0"/>
+</gates>
+<devices>
+<device name="0603MINI" package="0603-MINI">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="2012" package="2012">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="0805_NOTHERMALS" package="0805_NOTHERMALS">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="2512" package="2512">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0402" package="_0402">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0402MP" package="_0402MP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0603" package="_0603">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0603MP" package="_0603MP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0805" package="_0805">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0805MP" package="_0805MP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="0805_NOOUTLINE" package="0805-NO">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0603_NOOUT" package="0603-NO">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_1206" package="_1206">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_1206MP" package="_1206MP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="0805_10MGAP" package="0805_10MGAP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+</devicesets>
+</library>
+<library name="supply1">
+<packages>
+</packages>
+<symbols>
+<symbol name="GND">
+<wire x1="-1.905" y1="0" x2="1.905" y2="0" width="0.254" layer="94"/>
+<text x="-2.54" y="-2.54" size="1.778" layer="96">&gt;VALUE</text>
+<pin name="GND" x="0" y="2.54" visible="off" length="short" direction="sup" rot="R270"/>
+</symbol>
+</symbols>
+<devicesets>
+<deviceset name="GND" prefix="GND">
+<description>&lt;b&gt;SUPPLY SYMBOL&lt;/b&gt;</description>
+<gates>
+<gate name="1" symbol="GND" x="0" y="0"/>
+</gates>
+<devices>
+<device name="">
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+</devicesets>
+</library>
+</libraries>
+<attributes>
+</attributes>
+<variantdefs>
+</variantdefs>
+<classes>
+<class number="0" name="default" width="0.2032" drill="0">
+</class>
+<class number="1" name="power" width="0.2032" drill="0">
+</class>
+<class number="2" name="gnd" width="0.2032" drill="0">
+</class>
+</classes>
+<parts>
+<part name="FRAME1" library="My Stuff" deviceset="A4L-LOC" device=""/>
+<part name="U$3" library="FH19C-9S-0.5SH" deviceset="FH19C-9S-0.5SH_10-FFC" device=""/>
+<part name="GND1" library="supply1" library_urn="urn:adsk.eagle:library:371" deviceset="GND" device=""/>
+<part name="P+1" library="supply1" library_urn="urn:adsk.eagle:library:371" deviceset="VCC" device=""/>
+<part name="C1" library="microbuilder" deviceset="CAP_CERAMIC" device="_0603MP" value="1uF"/>
+<part name="U1" library="microbuilder" deviceset="SPIFLASH_8PIN" device="UX" value="2MB Flash"/>
+<part name="GND8" library="supply1" deviceset="GND" device=""/>
+<part name="R1" library="microbuilder" deviceset="RESISTOR" device="_0603MP" value="10K"/>
+<part name="P+2" library="supply1" library_urn="urn:adsk.eagle:library:371" deviceset="VCC" device=""/>
+<part name="P+3" library="supply1" library_urn="urn:adsk.eagle:library:371" deviceset="VCC" device=""/>
+<part name="P+4" library="supply1" library_urn="urn:adsk.eagle:library:371" deviceset="VCC" device=""/>
+</parts>
+<sheets>
+<sheet>
+<plain>
+</plain>
+<instances>
+<instance part="FRAME1" gate="G$1" x="0" y="0" smashed="yes">
+<attribute name="DRAWING_NAME" x="217.17" y="15.24" size="2.54" layer="94"/>
+<attribute name="LAST_DATE_TIME" x="217.17" y="10.16" size="2.286" layer="94"/>
+<attribute name="SHEET" x="228.473" y="5.08" size="2.54" layer="94"/>
+</instance>
+<instance part="U$3" gate="G$1" x="20.32" y="86.36" smashed="yes">
+<attribute name="NAME" x="29.21" y="104.14" size="1.778" layer="95" align="center-left"/>
+<attribute name="VALUE" x="29.21" y="101.6" size="1.778" layer="96" align="center-left"/>
+</instance>
+<instance part="GND1" gate="1" x="68.58" y="88.9" smashed="yes">
+<attribute name="VALUE" x="66.04" y="86.36" size="1.778" layer="96"/>
+</instance>
+<instance part="P+1" gate="VCC" x="68.58" y="101.6" smashed="yes">
+<attribute name="VALUE" x="66.04" y="99.06" size="1.778" layer="96" rot="R90"/>
+</instance>
+<instance part="C1" gate="G$1" x="177.8" y="91.44" smashed="yes">
+<attribute name="NAME" x="175.51" y="92.69" size="1.27" layer="95" font="vector" rot="R90" align="center"/>
+<attribute name="VALUE" x="180.1" y="92.69" size="1.27" layer="96" font="vector" rot="R90" align="center"/>
+</instance>
+<instance part="U1" gate="G$1" x="160.02" y="91.44" smashed="yes">
+<attribute name="NAME" x="147.32" y="104.14" size="1.778" layer="95"/>
+<attribute name="VALUE" x="147.32" y="81.28" size="1.778" layer="95"/>
+</instance>
+<instance part="GND8" gate="1" x="177.8" y="81.28" smashed="yes">
+<attribute name="VALUE" x="175.26" y="78.74" size="1.778" layer="96"/>
+</instance>
+<instance part="R1" gate="G$1" x="124.46" y="99.06" smashed="yes" rot="R270">
+<attribute name="NAME" x="125.9586" y="102.87" size="1.778" layer="95" rot="R270"/>
+<attribute name="VALUE" x="121.158" y="100.33" size="1.778" layer="96" rot="R270"/>
+</instance>
+<instance part="P+2" gate="VCC" x="119.38" y="109.22" smashed="yes">
+<attribute name="VALUE" x="116.84" y="106.68" size="1.778" layer="96" rot="R90"/>
+</instance>
+<instance part="P+3" gate="VCC" x="124.46" y="109.22" smashed="yes">
+<attribute name="VALUE" x="121.92" y="106.68" size="1.778" layer="96" rot="R90"/>
+</instance>
+<instance part="P+4" gate="VCC" x="177.8" y="109.22" smashed="yes">
+<attribute name="VALUE" x="175.26" y="106.68" size="1.778" layer="96" rot="R90"/>
+</instance>
+</instances>
+<busses>
+</busses>
+<nets>
+<net name="GND" class="2">
+<segment>
+<pinref part="U$3" gate="G$1" pin="2"/>
+<wire x1="68.58" y1="93.98" x2="33.02" y2="93.98" width="0.1524" layer="91"/>
+<label x="35.56" y="93.98" size="1.778" layer="95"/>
+<pinref part="GND1" gate="1" pin="GND"/>
+<wire x1="68.58" y1="93.98" x2="68.58" y2="91.44" width="0.1524" layer="91"/>
+</segment>
+<segment>
+<pinref part="U1" gate="G$1" pin="VSS"/>
+<pinref part="GND8" gate="1" pin="GND"/>
+<wire x1="175.26" y1="86.36" x2="177.8" y2="86.36" width="0.1524" layer="91"/>
+<wire x1="177.8" y1="86.36" x2="177.8" y2="83.82" width="0.1524" layer="91"/>
+<pinref part="C1" gate="G$1" pin="2"/>
+<wire x1="177.8" y1="86.36" x2="177.8" y2="88.9" width="0.1524" layer="91"/>
+<junction x="177.8" y="86.36"/>
+</segment>
+</net>
+<net name="VCC" class="1">
+<segment>
+<pinref part="U$3" gate="G$1" pin="1"/>
+<wire x1="68.58" y1="96.52" x2="33.02" y2="96.52" width="0.1524" layer="91"/>
+<label x="35.56" y="96.52" size="1.778" layer="95"/>
+<wire x1="68.58" y1="96.52" x2="68.58" y2="99.06" width="0.1524" layer="91"/>
+<pinref part="P+1" gate="VCC" pin="VCC"/>
+</segment>
+<segment>
+<pinref part="U1" gate="G$1" pin="WP#/IO2"/>
+<wire x1="119.38" y1="106.68" x2="119.38" y2="88.9" width="0.1524" layer="91"/>
+<wire x1="119.38" y1="88.9" x2="144.78" y2="88.9" width="0.1524" layer="91"/>
+<pinref part="U1" gate="G$1" pin="HOLD#/IO3"/>
+<wire x1="144.78" y1="86.36" x2="119.38" y2="86.36" width="0.1524" layer="91"/>
+<wire x1="119.38" y1="86.36" x2="119.38" y2="88.9" width="0.1524" layer="91"/>
+<junction x="119.38" y="88.9"/>
+<pinref part="P+2" gate="VCC" pin="VCC"/>
+</segment>
+<segment>
+<wire x1="124.46" y1="106.68" x2="124.46" y2="104.14" width="0.1524" layer="91"/>
+<pinref part="R1" gate="G$1" pin="1"/>
+<pinref part="P+3" gate="VCC" pin="VCC"/>
+</segment>
+<segment>
+<pinref part="U1" gate="G$1" pin="VCC"/>
+<wire x1="175.26" y1="99.06" x2="177.8" y2="99.06" width="0.1524" layer="91"/>
+<wire x1="177.8" y1="99.06" x2="177.8" y2="106.68" width="0.1524" layer="91"/>
+<pinref part="C1" gate="G$1" pin="1"/>
+<wire x1="177.8" y1="99.06" x2="177.8" y2="96.52" width="0.1524" layer="91"/>
+<junction x="177.8" y="99.06"/>
+<pinref part="P+4" gate="VCC" pin="VCC"/>
+</segment>
+</net>
+<net name="A2_MOSI" class="0">
+<segment>
+<wire x1="144.78" y1="96.52" x2="129.54" y2="96.52" width="0.1524" layer="91"/>
+<label x="132.08" y="96.52" size="1.778" layer="95"/>
+<pinref part="U1" gate="G$1" pin="MOSI"/>
+</segment>
+<segment>
+<wire x1="50.8" y1="86.36" x2="33.02" y2="86.36" width="0.1524" layer="91"/>
+<label x="35.56" y="86.36" size="1.778" layer="95"/>
+<pinref part="U$3" gate="G$1" pin="5"/>
+</segment>
+</net>
+<net name="A1_SCK" class="0">
+<segment>
+<wire x1="129.54" y1="99.06" x2="144.78" y2="99.06" width="0.1524" layer="91"/>
+<label x="132.08" y="99.06" size="1.778" layer="95"/>
+<pinref part="U1" gate="G$1" pin="SCK"/>
+</segment>
+<segment>
+<wire x1="33.02" y1="83.82" x2="50.8" y2="83.82" width="0.1524" layer="91"/>
+<label x="35.56" y="83.82" size="1.778" layer="95"/>
+<pinref part="U$3" gate="G$1" pin="6"/>
+</segment>
+</net>
+<net name="A3_CS" class="0">
+<segment>
+<label x="132.08" y="91.44" size="1.778" layer="95"/>
+<pinref part="U1" gate="G$1" pin="SSEL"/>
+<wire x1="144.78" y1="91.44" x2="124.46" y2="91.44" width="0.1524" layer="91"/>
+<pinref part="R1" gate="G$1" pin="2"/>
+<wire x1="124.46" y1="91.44" x2="124.46" y2="93.98" width="0.1524" layer="91"/>
+</segment>
+<segment>
+<wire x1="50.8" y1="88.9" x2="33.02" y2="88.9" width="0.1524" layer="91"/>
+<label x="35.56" y="88.9" size="1.778" layer="95"/>
+<pinref part="U$3" gate="G$1" pin="4"/>
+</segment>
+</net>
+<net name="A4_MISO" class="0">
+<segment>
+<wire x1="50.8" y1="91.44" x2="33.02" y2="91.44" width="0.1524" layer="91"/>
+<label x="35.56" y="91.44" size="1.778" layer="95"/>
+<pinref part="U$3" gate="G$1" pin="3"/>
+</segment>
+<segment>
+<wire x1="144.78" y1="93.98" x2="129.54" y2="93.98" width="0.1524" layer="91"/>
+<label x="132.08" y="93.98" size="1.778" layer="95"/>
+<pinref part="U1" gate="G$1" pin="MISO"/>
+</segment>
+</net>
+</nets>
+</sheet>
+</sheets>
+<errors>
+<approved hash="102,1,124.46,66.04,OUT,3.3V,,,,"/>
+<approved hash="104,1,320.04,111.76,IC3,VDDA,3.3V,,,"/>
+<approved hash="104,1,320.04,106.68,IC3,VDDIN,3.3V,,,"/>
+<approved hash="104,1,320.04,45.72,IC3,GNDA,GND,,,"/>
+<approved hash="104,1,406.4,162.56,LED1,VDD,3.3V,,,"/>
+<approved hash="104,1,104.14,66.04,U1,IN,VOUT,,,"/>
+<approved hash="113,1,139.596,107.846,FRAME1,,,,,"/>
+<approved hash="113,1,129.777,128.401,JP3,,,,,"/>
+<approved hash="113,1,167.403,125.599,JP4,,,,,"/>
+</errors>
+</schematic>
+</drawing>
+<compatibility>
+<note version="6.3" minversion="6.2.2" severity="warning">
+Since Version 6.2.2 text objects can contain more than one line,
+which will not be processed correctly with this version.
+</note>
+<note version="8.2" severity="warning">
+Since Version 8.2, EAGLE supports online libraries. The ids
+of those online libraries will not be understood (or retained)
+with this version.
+</note>
+<note version="8.3" severity="warning">
+Since Version 8.3, EAGLE supports URNs for individual library
+assets (packages, symbols, and devices). The URNs of those assets
+will not be understood (or retained) with this version.
+</note>
+</compatibility>
+</eagle>
diff --git a/PCB/Sensor Boards/OSO-MISC-21-018 Temperature Board.brd b/PCB/Sensor Boards/OSO-MISC-21-018 Temperature Board.brd
new file mode 100644
index 00000000..24ed4ce9
--- /dev/null
+++ b/PCB/Sensor Boards/OSO-MISC-21-018 Temperature Board.brd
@@ -0,0 +1,541 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE eagle SYSTEM "eagle.dtd">
+<eagle version="9.6.2">
+<drawing>
+<settings>
+<setting alwaysvectorfont="yes"/>
+<setting keepoldvectorfont="yes"/>
+<setting verticaltext="up"/>
+</settings>
+<grid distance="0.01" unitdist="inch" unit="inch" style="lines" multiple="1" display="no" altdistance="0.001" altunitdist="inch" altunit="inch"/>
+<layers>
+<layer number="1" name="Top" color="4" fill="1" visible="yes" active="yes"/>
+<layer number="2" name="Route2" color="1" fill="3" visible="no" active="no"/>
+<layer number="3" name="Route3" color="4" fill="3" visible="no" active="no"/>
+<layer number="4" name="Route4" color="1" fill="4" visible="no" active="no"/>
+<layer number="5" name="Route5" color="4" fill="4" visible="no" active="no"/>
+<layer number="6" name="Route6" color="1" fill="8" visible="no" active="no"/>
+<layer number="7" name="Route7" color="4" fill="8" visible="no" active="no"/>
+<layer number="8" name="Route8" color="1" fill="2" visible="no" active="no"/>
+<layer number="9" name="Route9" color="4" fill="2" visible="no" active="no"/>
+<layer number="10" name="Route10" color="1" fill="7" visible="no" active="no"/>
+<layer number="11" name="Route11" color="4" fill="7" visible="no" active="no"/>
+<layer number="12" name="Route12" color="1" fill="5" visible="no" active="no"/>
+<layer number="13" name="Route13" color="4" fill="5" visible="no" active="no"/>
+<layer number="14" name="Route14" color="1" fill="6" visible="no" active="no"/>
+<layer number="15" name="Route15" color="4" fill="6" visible="no" active="no"/>
+<layer number="16" name="Bottom" color="1" fill="1" visible="yes" active="yes"/>
+<layer number="17" name="Pads" color="2" fill="1" visible="yes" active="yes"/>
+<layer number="18" name="Vias" color="2" fill="1" visible="yes" active="yes"/>
+<layer number="19" name="Unrouted" color="6" fill="1" visible="yes" active="yes"/>
+<layer number="20" name="Dimension" color="15" fill="1" visible="yes" active="yes"/>
+<layer number="21" name="tPlace" color="14" fill="1" visible="yes" active="yes"/>
+<layer number="22" name="bPlace" color="13" fill="1" visible="yes" active="yes"/>
+<layer number="23" name="tOrigins" color="15" fill="1" visible="yes" active="yes"/>
+<layer number="24" name="bOrigins" color="15" fill="1" visible="yes" active="yes"/>
+<layer number="25" name="tNames" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="26" name="bNames" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="27" name="tValues" color="7" fill="1" visible="no" active="yes"/>
+<layer number="28" name="bValues" color="7" fill="1" visible="no" active="yes"/>
+<layer number="29" name="tStop" color="7" fill="3" visible="no" active="yes"/>
+<layer number="30" name="bStop" color="7" fill="6" visible="no" active="yes"/>
+<layer number="31" name="tCream" color="7" fill="4" visible="no" active="yes"/>
+<layer number="32" name="bCream" color="7" fill="5" visible="no" active="yes"/>
+<layer number="33" name="tFinish" color="6" fill="3" visible="no" active="yes"/>
+<layer number="34" name="bFinish" color="6" fill="6" visible="no" active="yes"/>
+<layer number="35" name="tGlue" color="7" fill="4" visible="no" active="yes"/>
+<layer number="36" name="bGlue" color="7" fill="5" visible="no" active="yes"/>
+<layer number="37" name="tTest" color="7" fill="1" visible="no" active="yes"/>
+<layer number="38" name="bTest" color="7" fill="1" visible="no" active="yes"/>
+<layer number="39" name="tKeepout" color="4" fill="11" visible="yes" active="yes"/>
+<layer number="40" name="bKeepout" color="1" fill="11" visible="yes" active="yes"/>
+<layer number="41" name="tRestrict" color="4" fill="10" visible="yes" active="yes"/>
+<layer number="42" name="bRestrict" color="1" fill="10" visible="yes" active="yes"/>
+<layer number="43" name="vRestrict" color="2" fill="10" visible="no" active="yes"/>
+<layer number="44" name="Drills" color="7" fill="1" visible="no" active="yes"/>
+<layer number="45" name="Holes" color="7" fill="1" visible="no" active="yes"/>
+<layer number="46" name="Milling" color="3" fill="1" visible="no" active="yes"/>
+<layer number="47" name="Measures" color="7" fill="1" visible="no" active="yes"/>
+<layer number="48" name="Document" color="7" fill="1" visible="no" active="yes"/>
+<layer number="49" name="Reference" color="7" fill="1" visible="no" active="yes"/>
+<layer number="50" name="dxf" color="7" fill="1" visible="no" active="yes"/>
+<layer number="51" name="tDocu" color="15" fill="1" visible="yes" active="yes"/>
+<layer number="52" name="bDocu" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="53" name="tGND_GNDA" color="7" fill="9" visible="no" active="no"/>
+<layer number="54" name="bGND_GNDA" color="1" fill="9" visible="no" active="no"/>
+<layer number="56" name="wert" color="7" fill="1" visible="no" active="yes"/>
+<layer number="57" name="tCAD" color="7" fill="1" visible="no" active="no"/>
+<layer number="58" name="b3D" color="7" fill="1" visible="no" active="no"/>
+<layer number="59" name="tCarbon" color="7" fill="1" visible="no" active="no"/>
+<layer number="60" name="bCarbon" color="7" fill="1" visible="no" active="no"/>
+<layer number="61" name="stand" color="7" fill="1" visible="no" active="no"/>
+<layer number="88" name="SimResults" color="9" fill="1" visible="no" active="no"/>
+<layer number="89" name="SimProbes" color="9" fill="1" visible="no" active="no"/>
+<layer number="90" name="Modules" color="7" fill="1" visible="no" active="no"/>
+<layer number="91" name="Nets" color="2" fill="1" visible="no" active="no"/>
+<layer number="92" name="Busses" color="1" fill="1" visible="no" active="no"/>
+<layer number="93" name="Pins" color="2" fill="1" visible="no" active="no"/>
+<layer number="94" name="Symbols" color="4" fill="1" visible="no" active="no"/>
+<layer number="95" name="Names" color="7" fill="1" visible="no" active="no"/>
+<layer number="96" name="Values" color="7" fill="1" visible="no" active="no"/>
+<layer number="97" name="Info" color="7" fill="1" visible="no" active="no"/>
+<layer number="98" name="Guide" color="6" fill="1" visible="no" active="no"/>
+<layer number="99" name="SpiceOrder" color="7" fill="1" visible="no" active="no"/>
+<layer number="100" name="Muster" color="7" fill="1" visible="no" active="no"/>
+<layer number="101" name="Patch_Top" color="12" fill="4" visible="no" active="yes"/>
+<layer number="102" name="Vscore" color="7" fill="1" visible="no" active="yes"/>
+<layer number="103" name="fp3" color="7" fill="1" visible="no" active="yes"/>
+<layer number="104" name="Name" color="7" fill="1" visible="no" active="yes"/>
+<layer number="105" name="Beschreib" color="9" fill="1" visible="no" active="yes"/>
+<layer number="106" name="BGA-Top" color="4" fill="1" visible="no" active="yes"/>
+<layer number="107" name="BD-Top" color="5" fill="1" visible="no" active="yes"/>
+<layer number="108" name="fp8" color="7" fill="1" visible="no" active="yes"/>
+<layer number="109" name="fp9" color="7" fill="1" visible="no" active="yes"/>
+<layer number="110" name="fp0" color="7" fill="1" visible="no" active="yes"/>
+<layer number="111" name="LPC17xx" color="7" fill="1" visible="no" active="yes"/>
+<layer number="112" name="tSilk" color="7" fill="1" visible="no" active="yes"/>
+<layer number="113" name="ReferenceLS" color="7" fill="1" visible="no" active="no"/>
+<layer number="114" name="tPlaceRed" color="7" fill="1" visible="no" active="yes"/>
+<layer number="115" name="FRNTMAAT2" color="7" fill="1" visible="no" active="yes"/>
+<layer number="116" name="Patch_BOT" color="9" fill="4" visible="no" active="yes"/>
+<layer number="117" name="BACKMAAT1" color="7" fill="1" visible="no" active="yes"/>
+<layer number="118" name="Rect_Pads" color="7" fill="1" visible="no" active="no"/>
+<layer number="119" name="KAP_TEKEN" color="7" fill="1" visible="no" active="yes"/>
+<layer number="120" name="KAP_MAAT1" color="7" fill="1" visible="no" active="yes"/>
+<layer number="121" name="_tsilk" color="7" fill="1" visible="no" active="yes"/>
+<layer number="122" name="_bsilk" color="7" fill="1" visible="no" active="yes"/>
+<layer number="123" name="tTestmark" color="7" fill="1" visible="no" active="yes"/>
+<layer number="124" name="bTestmark" color="7" fill="1" visible="no" active="yes"/>
+<layer number="125" name="_tNames" color="7" fill="1" visible="no" active="yes"/>
+<layer number="126" name="_bNames" color="7" fill="1" visible="no" active="yes"/>
+<layer number="127" name="_tValues" color="7" fill="1" visible="no" active="yes"/>
+<layer number="128" name="_bValues" color="7" fill="1" visible="no" active="yes"/>
+<layer number="129" name="Mask" color="7" fill="1" visible="no" active="yes"/>
+<layer number="130" name="SMDSTROOK" color="7" fill="1" visible="no" active="yes"/>
+<layer number="131" name="tAdjust" color="7" fill="1" visible="no" active="yes"/>
+<layer number="132" name="bAdjust" color="7" fill="1" visible="no" active="yes"/>
+<layer number="133" name="bottom_silk" color="7" fill="1" visible="no" active="yes"/>
+<layer number="134" name="silk_top" color="7" fill="1" visible="no" active="yes"/>
+<layer number="135" name="silk_bottom" color="7" fill="1" visible="no" active="yes"/>
+<layer number="136" name="silktop" color="7" fill="1" visible="no" active="yes"/>
+<layer number="137" name="silkbottom" color="7" fill="1" visible="no" active="yes"/>
+<layer number="138" name="EEE" color="7" fill="1" visible="no" active="yes"/>
+<layer number="139" name="_tKeepout" color="7" fill="1" visible="no" active="yes"/>
+<layer number="140" name="mbKeepout" color="7" fill="1" visible="no" active="yes"/>
+<layer number="141" name="ASSEMBLY_TOP" color="7" fill="1" visible="no" active="yes"/>
+<layer number="142" name="mbRestrict" color="7" fill="1" visible="no" active="yes"/>
+<layer number="143" name="PLACE_BOUND_TOP" color="7" fill="1" visible="no" active="yes"/>
+<layer number="144" name="Drill_legend" color="7" fill="1" visible="no" active="yes"/>
+<layer number="145" name="DrillLegend_01-16" color="7" fill="1" visible="no" active="yes"/>
+<layer number="146" name="DrillLegend_01-20" color="7" fill="1" visible="no" active="yes"/>
+<layer number="147" name="PIN_NUMBER" color="7" fill="1" visible="no" active="yes"/>
+<layer number="148" name="mDocument" color="7" fill="1" visible="no" active="yes"/>
+<layer number="149" name="DrillLegend_02-15" color="7" fill="1" visible="no" active="yes"/>
+<layer number="150" name="Notes" color="7" fill="1" visible="no" active="yes"/>
+<layer number="151" name="HeatSink" color="7" fill="1" visible="no" active="yes"/>
+<layer number="152" name="_bDocu" color="7" fill="1" visible="no" active="yes"/>
+<layer number="153" name="FabDoc1" color="6" fill="1" visible="no" active="no"/>
+<layer number="154" name="FabDoc2" color="2" fill="1" visible="no" active="no"/>
+<layer number="155" name="FabDoc3" color="7" fill="15" visible="no" active="no"/>
+<layer number="166" name="AntennaArea" color="7" fill="1" visible="no" active="yes"/>
+<layer number="168" name="4mmHeightArea" color="7" fill="1" visible="no" active="yes"/>
+<layer number="191" name="mNets" color="7" fill="1" visible="no" active="yes"/>
+<layer number="192" name="mBusses" color="7" fill="1" visible="no" active="yes"/>
+<layer number="193" name="mPins" color="7" fill="1" visible="no" active="yes"/>
+<layer number="194" name="mSymbols" color="7" fill="1" visible="no" active="yes"/>
+<layer number="195" name="mNames" color="7" fill="1" visible="no" active="yes"/>
+<layer number="196" name="mValues" color="7" fill="1" visible="no" active="yes"/>
+<layer number="199" name="Contour" color="7" fill="1" visible="no" active="yes"/>
+<layer number="200" name="200bmp" color="14" fill="10" visible="no" active="yes"/>
+<layer number="201" name="201bmp" color="13" fill="1" visible="no" active="yes"/>
+<layer number="202" name="202bmp" color="3" fill="1" visible="no" active="yes"/>
+<layer number="203" name="203bmp" color="4" fill="10" visible="no" active="yes"/>
+<layer number="204" name="204bmp" color="5" fill="10" visible="no" active="yes"/>
+<layer number="205" name="205bmp" color="6" fill="10" visible="no" active="yes"/>
+<layer number="206" name="206bmp" color="7" fill="10" visible="no" active="yes"/>
+<layer number="207" name="207bmp" color="8" fill="10" visible="no" active="yes"/>
+<layer number="208" name="208bmp" color="9" fill="10" visible="no" active="yes"/>
+<layer number="209" name="209bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="210" name="210bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="211" name="211bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="212" name="212bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="213" name="213bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="214" name="214bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="215" name="215bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="216" name="216bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="217" name="217bmp" color="18" fill="1" visible="no" active="no"/>
+<layer number="218" name="218bmp" color="19" fill="1" visible="no" active="no"/>
+<layer number="219" name="219bmp" color="20" fill="1" visible="no" active="no"/>
+<layer number="220" name="220bmp" color="21" fill="1" visible="no" active="no"/>
+<layer number="221" name="221bmp" color="22" fill="1" visible="no" active="no"/>
+<layer number="222" name="222bmp" color="23" fill="1" visible="no" active="no"/>
+<layer number="223" name="223bmp" color="24" fill="1" visible="no" active="no"/>
+<layer number="224" name="224bmp" color="25" fill="1" visible="no" active="no"/>
+<layer number="225" name="225bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="226" name="226bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="227" name="227bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="228" name="228bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="229" name="229bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="230" name="230bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="231" name="Eagle3D_PG1" color="7" fill="1" visible="no" active="no"/>
+<layer number="232" name="Eagle3D_PG2" color="7" fill="1" visible="no" active="no"/>
+<layer number="233" name="Eagle3D_PG3" color="7" fill="1" visible="no" active="no"/>
+<layer number="248" name="Housing" color="7" fill="1" visible="no" active="yes"/>
+<layer number="249" name="Edge" color="7" fill="1" visible="no" active="yes"/>
+<layer number="250" name="Descript" color="7" fill="1" visible="no" active="no"/>
+<layer number="251" name="SMDround" color="7" fill="1" visible="no" active="no"/>
+<layer number="254" name="cooling" color="7" fill="1" visible="no" active="yes"/>
+<layer number="255" name="routoute" color="7" fill="1" visible="no" active="yes"/>
+</layers>
+<board>
+<plain>
+<wire x1="-2.4892" y1="-2.794" x2="-2.7432" y2="-2.54" width="0" layer="20" curve="90"/>
+<wire x1="-2.7432" y1="-2.54" x2="-7.493" y2="-2.54" width="0" layer="20"/>
+<wire x1="-8.128" y1="-1.905" x2="-11.049" y2="-1.905" width="0" layer="20"/>
+<wire x1="-11.049" y1="-1.905" x2="-11.938" y2="-1.016" width="0" layer="20" curve="-90"/>
+<wire x1="-11.938" y1="-1.016" x2="-11.938" y2="2.921" width="0" layer="20"/>
+<wire x1="-11.938" y1="2.921" x2="-11.049" y2="3.81" width="0" layer="20" curve="-90"/>
+<wire x1="-11.049" y1="3.81" x2="2.1082" y2="3.81" width="0" layer="20"/>
+<wire x1="2.1082" y1="3.81" x2="2.4892" y2="3.429" width="0" layer="20" curve="-90"/>
+<wire x1="2.4892" y1="3.429" x2="2.4892" y2="-2.794" width="0" layer="20"/>
+<wire x1="-7.493" y1="-2.54" x2="-8.128" y2="-1.905" width="0" layer="20" curve="90"/>
+<text x="-1.778" y="3.556" size="0.6096" layer="21" font="vector" ratio="18" align="top-center">OSO-MISC-21-018
+Simple Thermistor
+Sensor Board</text>
+<wire x1="2.4892" y1="-1.524" x2="-5.715" y2="-1.524" width="0.127" layer="21" style="shortdash"/>
+<wire x1="-6.223" y1="3.048" x2="-6.223" y2="-1.016" width="0.127" layer="21" style="shortdash"/>
+<wire x1="-6.223" y1="-1.016" x2="-5.715" y2="-1.524" width="0.127" layer="21" style="shortdash" curve="90"/>
+<wire x1="-6.223" y1="3.048" x2="-6.985" y2="3.81" width="0.127" layer="21" style="shortdash" curve="90"/>
+<text x="-1.778" y="0.381" size="0.508" layer="21" font="vector" ratio="12" align="top-center">A0: Thermistor !EN
+A2: Temp. Sense</text>
+</plain>
+<libraries>
+<library name="FH19C-9S-0.5SH">
+<description>&lt;b&gt;https://componentsearchengine.com&lt;/b&gt;&lt;p&gt;
+&lt;author&gt;Created by SamacSys&lt;/author&gt;</description>
+<packages>
+<package name="FH19C9S05SH10-FFC">
+<description>&lt;b&gt;FH19C-9S-0.5SH(10)-1&lt;/b&gt;&lt;br&gt;
+</description>
+<smd name="1" x="2" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="2" x="1.5" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="3" x="1" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="4" x="0.5" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="5" x="0" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="6" x="-0.5" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="7" x="-1" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="8" x="-1.5" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="9" x="-2" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<wire x1="-2.4892" y1="0" x2="-2.4892" y2="-3.35" width="0" layer="20"/>
+<wire x1="-2.3392" y1="-3.5" x2="2.3392" y2="-3.5" width="0" layer="20"/>
+<wire x1="2.4892" y1="0" x2="2.4892" y2="-3.35" width="0" layer="20"/>
+<wire x1="-2.3392" y1="-3.5" x2="-2.4892" y2="-3.35" width="0" layer="20" curve="-90"/>
+<wire x1="2.3392" y1="-3.5" x2="2.4892" y2="-3.35" width="0" layer="20" curve="90"/>
+<polygon width="0.1524" layer="30">
+<vertex x="-2.4902" y="-0.9742"/>
+<vertex x="2.4882" y="-0.9742"/>
+<vertex x="2.4892" y="-3.4798"/>
+<vertex x="-2.4892" y="-3.4798"/>
+</polygon>
+</package>
+</packages>
+</library>
+<library name="microbuilder">
+<description>&lt;h2&gt;&lt;b&gt;microBuilder.eu&lt;/b&gt; Eagle Footprint Library&lt;/h2&gt;
+
+&lt;p&gt;Footprints for common components used in our projects and products. This is the same library that we use internally, and it is regularly updated. The newest version can always be found at &lt;b&gt;www.microBuilder.eu&lt;/b&gt;. If you find this library useful, please feel free to purchase something from our online store. Please also note that all holes are optimised for metric drill bits!&lt;/p&gt;
+
+&lt;h3&gt;Obligatory Warning&lt;/h3&gt;
+&lt;p&gt;While it probably goes without saying, there are no guarantees that the footprints or schematic symbols in this library are flawless, and we make no promises of fitness for production, prototyping or any other purpose. These libraries are provided for information puposes only, and are used at your own discretion. While we make every effort to produce accurate footprints, and many of the items found in this library have be proven in production, we can't make any promises of suitability for a specific purpose. If you do find any errors, though, please feel free to contact us at www.microbuilder.eu to let us know about it so that we can update the library accordingly!&lt;/p&gt;
+
+&lt;h3&gt;License&lt;/h3&gt;
+&lt;p&gt;This work is placed in the public domain, and may be freely used for commercial and non-commercial work with the following conditions:&lt;/p&gt;
+&lt;p&gt;THIS SOFTWARE IS PROVIDED ''AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+&lt;/p&gt;</description>
+<packages>
+<package name="_0603">
+<description>&lt;b&gt;0603&lt;/b&gt;</description>
+<wire x1="-0.432" y1="-0.306" x2="0.432" y2="-0.306" width="0.1016" layer="51"/>
+<wire x1="0.432" y1="0.306" x2="-0.432" y2="0.306" width="0.1016" layer="51"/>
+<wire x1="-1.4605" y1="0.635" x2="1.4605" y2="0.635" width="0.2032" layer="21"/>
+<wire x1="1.4605" y1="0.635" x2="1.4605" y2="-0.635" width="0.2032" layer="21"/>
+<wire x1="1.4605" y1="-0.635" x2="-1.4605" y2="-0.635" width="0.2032" layer="21"/>
+<wire x1="-1.4605" y1="-0.635" x2="-1.4605" y2="0.635" width="0.2032" layer="21"/>
+<smd name="1" x="-0.762" y="0" dx="0.9" dy="0.8" layer="1"/>
+<smd name="2" x="0.762" y="0" dx="0.9" dy="0.8" layer="1"/>
+<text x="-1.27" y="0.9525" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.27" y="-1.4923" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="0.4318" y1="-0.4" x2="0.8382" y2="0.4" layer="51"/>
+<rectangle x1="-0.8382" y1="-0.4" x2="-0.4318" y2="0.4" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.4001" x2="0.1999" y2="0.4001" layer="35"/>
+</package>
+<package name="_0603MP">
+<description>&lt;b&gt;0603 MicroPitch&lt;/b&gt;</description>
+<wire x1="-0.432" y1="-0.306" x2="0.432" y2="-0.306" width="0.1016" layer="51"/>
+<wire x1="0.432" y1="0.306" x2="-0.432" y2="0.306" width="0.1016" layer="51"/>
+<wire x1="0" y1="0.254" x2="0" y2="-0.254" width="0.2032" layer="21"/>
+<smd name="1" x="-0.762" y="0" dx="0.8" dy="0.8" layer="1"/>
+<smd name="2" x="0.762" y="0" dx="0.8" dy="0.8" layer="1"/>
+<text x="-0.9525" y="0.635" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-0.9525" y="-0.9525" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="0.4318" y1="-0.4" x2="0.8" y2="0.4" layer="51"/>
+<rectangle x1="-0.8" y1="-0.4" x2="-0.4318" y2="0.4" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.25" x2="0.1999" y2="0.25" layer="35"/>
+</package>
+</packages>
+</library>
+</libraries>
+<attributes>
+<attribute name="REV" value="D"/>
+</attributes>
+<variantdefs>
+</variantdefs>
+<classes>
+<class number="0" name="default" width="0.2032" drill="0">
+</class>
+<class number="1" name="power" width="0.2032" drill="0">
+</class>
+<class number="2" name="gnd" width="0.2032" drill="0">
+</class>
+</classes>
+<designrules name="oshpark-2layer *">
+<description language="en">&lt;b&gt;OSH Park Design Rules&lt;/b&gt;
+&lt;p&gt;
+Please make sure your boards conform to these design rules.
+&lt;/p&gt;
+&lt;p&gt;
+Note, that not all DRC settings must be set by the manufacturer. Several can be adjusted for the design, including those listed on our docs page here.
+&lt;a href=&quot;http://docs.oshpark.com/design-tools/eagle/design-rules-files/&quot;&gt;Adjustable Settings&lt;/a&gt;
+&lt;/p&gt;</description>
+<param name="layerSetup" value="(1*16)"/>
+<param name="mtCopper" value="0.035559375mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.0356mm 0.035559375mm"/>
+<param name="mtIsolate" value="1.6mm 0.1499mm 0.2007mm 0.1499mm 0.2007mm 0.1499mm 0.2007mm 0.1499mm 0.2007mm 0.1499mm 0.2007mm 0.1499mm 0.2007mm 0.1499mm 0.2007mm"/>
+<param name="mdWireWire" value="6mil"/>
+<param name="mdWirePad" value="6mil"/>
+<param name="mdWireVia" value="6mil"/>
+<param name="mdPadPad" value="6mil"/>
+<param name="mdPadVia" value="6mil"/>
+<param name="mdViaVia" value="6mil"/>
+<param name="mdSmdPad" value="6mil"/>
+<param name="mdSmdVia" value="6mil"/>
+<param name="mdSmdSmd" value="6mil"/>
+<param name="mdViaViaSameLayer" value="8mil"/>
+<param name="mnLayersViaInSmd" value="2"/>
+<param name="mdCopperDimension" value="15mil"/>
+<param name="mdDrill" value="6mil"/>
+<param name="mdSmdStop" value="0mil"/>
+<param name="msWidth" value="6mil"/>
+<param name="msDrill" value="10mil"/>
+<param name="msMicroVia" value="10mil"/>
+<param name="msBlindViaRatio" value="0.5"/>
+<param name="rvPadTop" value="0.25"/>
+<param name="rvPadInner" value="0.25"/>
+<param name="rvPadBottom" value="0.25"/>
+<param name="rvViaOuter" value="0.25"/>
+<param name="rvViaInner" value="0.25"/>
+<param name="rvMicroViaOuter" value="0.25"/>
+<param name="rvMicroViaInner" value="0.25"/>
+<param name="rlMinPadTop" value="5mil"/>
+<param name="rlMaxPadTop" value="20mil"/>
+<param name="rlMinPadInner" value="5mil"/>
+<param name="rlMaxPadInner" value="20mil"/>
+<param name="rlMinPadBottom" value="5mil"/>
+<param name="rlMaxPadBottom" value="20mil"/>
+<param name="rlMinViaOuter" value="5mil"/>
+<param name="rlMaxViaOuter" value="20mil"/>
+<param name="rlMinViaInner" value="5mil"/>
+<param name="rlMaxViaInner" value="20mil"/>
+<param name="rlMinMicroViaOuter" value="5mil"/>
+<param name="rlMaxMicroViaOuter" value="20mil"/>
+<param name="rlMinMicroViaInner" value="5mil"/>
+<param name="rlMaxMicroViaInner" value="20mil"/>
+<param name="psTop" value="-1"/>
+<param name="psBottom" value="-1"/>
+<param name="psFirst" value="-1"/>
+<param name="psElongationLong" value="100"/>
+<param name="psElongationOffset" value="100"/>
+<param name="mvStopFrame" value="1"/>
+<param name="mvCreamFrame" value="0"/>
+<param name="mlMinStopFrame" value="2.5mil"/>
+<param name="mlMaxStopFrame" value="2.5mil"/>
+<param name="mlMinCreamFrame" value="0mil"/>
+<param name="mlMaxCreamFrame" value="0mil"/>
+<param name="mlViaStopLimit" value="12mil"/>
+<param name="srRoundness" value="0"/>
+<param name="srMinRoundness" value="0mil"/>
+<param name="srMaxRoundness" value="0mil"/>
+<param name="slThermalIsolate" value="10mil"/>
+<param name="slThermalsForVias" value="0"/>
+<param name="dpMaxLengthDifference" value="10mm"/>
+<param name="dpGapFactor" value="2.5"/>
+<param name="checkAngle" value="0"/>
+<param name="checkFont" value="1"/>
+<param name="checkRestrict" value="1"/>
+<param name="checkStop" value="0"/>
+<param name="checkValues" value="0"/>
+<param name="checkNames" value="1"/>
+<param name="checkWireStubs" value="1"/>
+<param name="checkPolygonWidth" value="0"/>
+<param name="useDiameter" value="13"/>
+<param name="maxErrors" value="50"/>
+</designrules>
+<autorouter>
+<pass name="Default">
+<param name="RoutingGrid" value="50mil"/>
+<param name="AutoGrid" value="1"/>
+<param name="Efforts" value="0"/>
+<param name="TopRouterVariant" value="1"/>
+<param name="tpViaShape" value="round"/>
+<param name="PrefDir.1" value="|"/>
+<param name="PrefDir.2" value="0"/>
+<param name="PrefDir.3" value="0"/>
+<param name="PrefDir.4" value="0"/>
+<param name="PrefDir.5" value="0"/>
+<param name="PrefDir.6" value="0"/>
+<param name="PrefDir.7" value="0"/>
+<param name="PrefDir.8" value="0"/>
+<param name="PrefDir.9" value="0"/>
+<param name="PrefDir.10" value="0"/>
+<param name="PrefDir.11" value="0"/>
+<param name="PrefDir.12" value="0"/>
+<param name="PrefDir.13" value="0"/>
+<param name="PrefDir.14" value="0"/>
+<param name="PrefDir.15" value="0"/>
+<param name="PrefDir.16" value="-"/>
+<param name="cfVia" value="8"/>
+<param name="cfNonPref" value="5"/>
+<param name="cfChangeDir" value="2"/>
+<param name="cfOrthStep" value="2"/>
+<param name="cfDiagStep" value="3"/>
+<param name="cfExtdStep" value="0"/>
+<param name="cfBonusStep" value="1"/>
+<param name="cfMalusStep" value="1"/>
+<param name="cfPadImpact" value="4"/>
+<param name="cfSmdImpact" value="4"/>
+<param name="cfBusImpact" value="0"/>
+<param name="cfHugging" value="3"/>
+<param name="cfAvoid" value="4"/>
+<param name="cfPolygon" value="10"/>
+<param name="cfBase.1" value="0"/>
+<param name="cfBase.2" value="1"/>
+<param name="cfBase.3" value="1"/>
+<param name="cfBase.4" value="1"/>
+<param name="cfBase.5" value="1"/>
+<param name="cfBase.6" value="1"/>
+<param name="cfBase.7" value="1"/>
+<param name="cfBase.8" value="1"/>
+<param name="cfBase.9" value="1"/>
+<param name="cfBase.10" value="1"/>
+<param name="cfBase.11" value="1"/>
+<param name="cfBase.12" value="1"/>
+<param name="cfBase.13" value="1"/>
+<param name="cfBase.14" value="1"/>
+<param name="cfBase.15" value="1"/>
+<param name="cfBase.16" value="0"/>
+<param name="mnVias" value="20"/>
+<param name="mnSegments" value="9999"/>
+<param name="mnExtdSteps" value="9999"/>
+<param name="mnRipupLevel" value="10"/>
+<param name="mnRipupSteps" value="100"/>
+<param name="mnRipupTotal" value="100"/>
+</pass>
+<pass name="Follow-me" refer="Default" active="yes">
+</pass>
+<pass name="Busses" refer="Default" active="yes">
+<param name="cfNonPref" value="4"/>
+<param name="cfBusImpact" value="4"/>
+<param name="cfHugging" value="0"/>
+<param name="mnVias" value="0"/>
+</pass>
+<pass name="Route" refer="Default" active="yes">
+</pass>
+</autorouter>
+<elements>
+<element name="U$3" library="FH19C-9S-0.5SH" package="FH19C9S05SH10-FFC" value="FH19C-9S-0.5SH_10-FFC" x="0" y="-2.794" smashed="yes"/>
+<element name="RT" library="microbuilder" package="_0603" value="NTC 10K" x="-8.7884" y="1.7272" smashed="yes" rot="MR0">
+<attribute name="NAME" x="-11.2522" y="1.7399" size="0.8128" layer="26" font="vector" ratio="18" rot="MR0" align="center"/>
+<attribute name="VALUE" x="-7.5184" y="0.2349" size="0.8128" layer="28" font="vector" ratio="18" rot="MR0" align="center"/>
+</element>
+<element name="R1" library="microbuilder" package="_0603MP" value="1% 10K" x="-8.7376" y="-0.1778" smashed="yes" rot="MR0">
+<attribute name="NAME" x="-11.2522" y="-0.1778" size="0.8128" layer="26" font="vector" ratio="18" rot="MR180" align="center"/>
+<attribute name="VALUE" x="-7.7851" y="-1.1303" size="0.8128" layer="28" font="vector" ratio="18" rot="MR0" align="center"/>
+</element>
+</elements>
+<signals>
+<signal name="SCL">
+<contactref element="U$3" pad="8"/>
+</signal>
+<signal name="SDA">
+<contactref element="U$3" pad="7"/>
+</signal>
+<signal name="GND" class="2">
+<contactref element="U$3" pad="2"/>
+</signal>
+<signal name="A0_TEMP_ENABLE">
+<contactref element="U$3" pad="9"/>
+<contactref element="R1" pad="2"/>
+<wire x1="-2" y1="-5.044" x2="-2" y2="-2.318" width="0.254" layer="16"/>
+<wire x1="-8.4074" y1="-1.27" x2="-9.4996" y2="-0.1778" width="0.254" layer="16"/>
+<wire x1="-2" y1="-2.318" x2="-3.048" y2="-1.27" width="0.254" layer="16"/>
+<wire x1="-3.048" y1="-1.27" x2="-8.4074" y2="-1.27" width="0.254" layer="16"/>
+</signal>
+<signal name="A4_LIGHT_SENSE">
+<contactref element="U$3" pad="3"/>
+</signal>
+<signal name="A3_LIGHT_ENABLE">
+<contactref element="U$3" pad="4"/>
+</signal>
+<signal name="A2_TEMP_SENSE">
+<contactref element="U$3" pad="5"/>
+<contactref element="RT" pad="2"/>
+<contactref element="R1" pad="1"/>
+<wire x1="0" y1="-5.044" x2="0" y2="-2.96336875" width="0.254" layer="16"/>
+<wire x1="0" y1="-2.96336875" x2="-2.78556875" y2="-0.1778" width="0.254" layer="16"/>
+<wire x1="-2.78556875" y1="-0.1778" x2="-7.9756" y2="-0.1778" width="0.254" layer="16"/>
+<wire x1="-7.9756" y1="-0.1778" x2="-7.9756" y2="0" width="0.254" layer="16"/>
+<wire x1="-7.9756" y1="0" x2="-9.5504" y2="1.5748" width="0.254" layer="16"/>
+<wire x1="-9.5504" y1="1.5748" x2="-9.5504" y2="1.7272" width="0.254" layer="16"/>
+</signal>
+<signal name="VCC" class="1">
+<contactref element="U$3" pad="1"/>
+<contactref element="RT" pad="1"/>
+<wire x1="2" y1="-5.044" x2="2" y2="-3.524" width="0.254" layer="16"/>
+<wire x1="-3.2512" y1="1.7272" x2="-8.0264" y2="1.7272" width="0.254" layer="16"/>
+<wire x1="2" y1="-3.524" x2="-3.2512" y2="1.7272" width="0.254" layer="16"/>
+</signal>
+</signals>
+<mfgpreviewcolors>
+<mfgpreviewcolor name="soldermaskcolor" color="0x64F0A000"/>
+<mfgpreviewcolor name="silkscreencolor" color="0xFFFEFEFE"/>
+<mfgpreviewcolor name="backgroundcolor" color="0xFF282828"/>
+<mfgpreviewcolor name="coppercolor" color="0xFFFFBF00"/>
+<mfgpreviewcolor name="substratecolor" color="0xFF786E46"/>
+</mfgpreviewcolors>
+<errors>
+<approved hash="4,16,9cc8a33735273f8c"/>
+<approved hash="4,16,75bf1b02d58151c8"/>
+<approved hash="4,16,70b4dd0ea9337bbd"/>
+<approved hash="4,16,42aacdba90153b82"/>
+<approved hash="4,16,c73eee013d8a7d31"/>
+<approved hash="4,16,9200d5cd109a9664"/>
+<approved hash="4,16,ad53f5b81819b47d"/>
+<approved hash="4,16,654600ffa8c2724f"/>
+<approved hash="4,16,1449b5f307c1274b"/>
+<approved hash="4,16,cb4ee6f31ac3d04e"/>
+<approved hash="4,16,85b313f6e9c5f2b6"/>
+<approved hash="4,16,d6b5b30f0b3fc9b5"/>
+<approved hash="4,16,27b00e0dbc3f14b2"/>
+<approved hash="4,16,2e147eaf8f3151ee"/>
+<approved hash="4,16,21a281a70cd6e8f0"/>
+<approved hash="4,16,8333562641926e9e"/>
+<approved hash="4,16,83335f4a40926e9e"/>
+</errors>
+</board>
+</drawing>
+<compatibility>
+<note version="6.3" minversion="6.2.2" severity="warning">
+Since Version 6.2.2 text objects can contain more than one line,
+which will not be processed correctly with this version.
+</note>
+</compatibility>
+</eagle>
diff --git a/PCB/Sensor Boards/OSO-MISC-21-018 Temperature Board.sch b/PCB/Sensor Boards/OSO-MISC-21-018 Temperature Board.sch
new file mode 100644
index 00000000..030bf2b4
--- /dev/null
+++ b/PCB/Sensor Boards/OSO-MISC-21-018 Temperature Board.sch
@@ -0,0 +1,947 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE eagle SYSTEM "eagle.dtd">
+<eagle version="9.6.2">
+<drawing>
+<settings>
+<setting alwaysvectorfont="no"/>
+<setting keepoldvectorfont="yes"/>
+<setting verticaltext="up"/>
+</settings>
+<grid distance="0.1" unitdist="inch" unit="inch" style="lines" multiple="1" display="no" altdistance="0.01" altunitdist="inch" altunit="inch"/>
+<layers>
+<layer number="1" name="Top" color="4" fill="1" visible="no" active="no"/>
+<layer number="2" name="Route2" color="1" fill="3" visible="no" active="no"/>
+<layer number="3" name="Route3" color="4" fill="3" visible="no" active="no"/>
+<layer number="4" name="Route4" color="1" fill="4" visible="no" active="no"/>
+<layer number="5" name="Route5" color="4" fill="4" visible="no" active="no"/>
+<layer number="6" name="Route6" color="1" fill="8" visible="no" active="no"/>
+<layer number="7" name="Route7" color="4" fill="8" visible="no" active="no"/>
+<layer number="8" name="Route8" color="1" fill="2" visible="no" active="no"/>
+<layer number="9" name="Route9" color="4" fill="2" visible="no" active="no"/>
+<layer number="10" name="Route10" color="1" fill="7" visible="no" active="no"/>
+<layer number="11" name="Route11" color="4" fill="7" visible="no" active="no"/>
+<layer number="12" name="Route12" color="1" fill="5" visible="no" active="no"/>
+<layer number="13" name="Route13" color="4" fill="5" visible="no" active="no"/>
+<layer number="14" name="Route14" color="1" fill="6" visible="no" active="no"/>
+<layer number="15" name="Route15" color="4" fill="6" visible="no" active="no"/>
+<layer number="16" name="Bottom" color="1" fill="1" visible="no" active="no"/>
+<layer number="17" name="Pads" color="2" fill="1" visible="no" active="no"/>
+<layer number="18" name="Vias" color="2" fill="1" visible="no" active="no"/>
+<layer number="19" name="Unrouted" color="6" fill="1" visible="no" active="no"/>
+<layer number="20" name="Dimension" color="15" fill="1" visible="no" active="no"/>
+<layer number="21" name="tPlace" color="14" fill="1" visible="no" active="no"/>
+<layer number="22" name="bPlace" color="13" fill="1" visible="no" active="no"/>
+<layer number="23" name="tOrigins" color="15" fill="1" visible="no" active="no"/>
+<layer number="24" name="bOrigins" color="15" fill="1" visible="no" active="no"/>
+<layer number="25" name="tNames" color="7" fill="1" visible="no" active="no"/>
+<layer number="26" name="bNames" color="7" fill="1" visible="no" active="no"/>
+<layer number="27" name="tValues" color="7" fill="1" visible="no" active="no"/>
+<layer number="28" name="bValues" color="7" fill="1" visible="no" active="no"/>
+<layer number="29" name="tStop" color="7" fill="3" visible="no" active="no"/>
+<layer number="30" name="bStop" color="7" fill="6" visible="no" active="no"/>
+<layer number="31" name="tCream" color="7" fill="4" visible="no" active="no"/>
+<layer number="32" name="bCream" color="7" fill="5" visible="no" active="no"/>
+<layer number="33" name="tFinish" color="6" fill="3" visible="no" active="no"/>
+<layer number="34" name="bFinish" color="6" fill="6" visible="no" active="no"/>
+<layer number="35" name="tGlue" color="7" fill="4" visible="no" active="no"/>
+<layer number="36" name="bGlue" color="7" fill="5" visible="no" active="no"/>
+<layer number="37" name="tTest" color="7" fill="1" visible="no" active="no"/>
+<layer number="38" name="bTest" color="7" fill="1" visible="no" active="no"/>
+<layer number="39" name="tKeepout" color="4" fill="11" visible="no" active="no"/>
+<layer number="40" name="bKeepout" color="1" fill="11" visible="no" active="no"/>
+<layer number="41" name="tRestrict" color="4" fill="10" visible="no" active="no"/>
+<layer number="42" name="bRestrict" color="1" fill="10" visible="no" active="no"/>
+<layer number="43" name="vRestrict" color="2" fill="10" visible="no" active="no"/>
+<layer number="44" name="Drills" color="7" fill="1" visible="no" active="no"/>
+<layer number="45" name="Holes" color="7" fill="1" visible="no" active="no"/>
+<layer number="46" name="Milling" color="3" fill="1" visible="no" active="no"/>
+<layer number="47" name="Measures" color="7" fill="1" visible="no" active="no"/>
+<layer number="48" name="Document" color="7" fill="1" visible="no" active="no"/>
+<layer number="49" name="Reference" color="7" fill="1" visible="no" active="no"/>
+<layer number="50" name="dxf" color="7" fill="1" visible="no" active="no"/>
+<layer number="51" name="tDocu" color="15" fill="1" visible="no" active="no"/>
+<layer number="52" name="bDocu" color="7" fill="1" visible="no" active="no"/>
+<layer number="53" name="tGND_GNDA" color="7" fill="9" visible="no" active="no"/>
+<layer number="54" name="bGND_GNDA" color="1" fill="9" visible="no" active="no"/>
+<layer number="56" name="wert" color="7" fill="1" visible="no" active="no"/>
+<layer number="57" name="tCAD" color="7" fill="1" visible="no" active="no"/>
+<layer number="58" name="b3D" color="7" fill="1" visible="no" active="no"/>
+<layer number="59" name="tCarbon" color="7" fill="1" visible="no" active="no"/>
+<layer number="60" name="bCarbon" color="7" fill="1" visible="no" active="no"/>
+<layer number="61" name="stand" color="7" fill="1" visible="no" active="no"/>
+<layer number="88" name="SimResults" color="9" fill="1" visible="yes" active="yes"/>
+<layer number="89" name="SimProbes" color="9" fill="1" visible="yes" active="yes"/>
+<layer number="90" name="Modules" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="91" name="Nets" color="2" fill="1" visible="yes" active="yes"/>
+<layer number="92" name="Busses" color="1" fill="1" visible="yes" active="yes"/>
+<layer number="93" name="Pins" color="2" fill="1" visible="no" active="yes"/>
+<layer number="94" name="Symbols" color="4" fill="1" visible="yes" active="yes"/>
+<layer number="95" name="Names" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="96" name="Values" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="97" name="Info" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="98" name="Guide" color="6" fill="1" visible="yes" active="yes"/>
+<layer number="99" name="SpiceOrder" color="7" fill="1" visible="no" active="no"/>
+<layer number="100" name="Muster" color="7" fill="1" visible="no" active="no"/>
+<layer number="101" name="Patch_Top" color="12" fill="4" visible="yes" active="yes"/>
+<layer number="102" name="Vscore" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="103" name="fp3" color="7" fill="1" visible="no" active="yes"/>
+<layer number="104" name="Name" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="105" name="Beschreib" color="9" fill="1" visible="yes" active="yes"/>
+<layer number="106" name="BGA-Top" color="4" fill="1" visible="yes" active="yes"/>
+<layer number="107" name="BD-Top" color="5" fill="1" visible="yes" active="yes"/>
+<layer number="108" name="fp8" color="7" fill="1" visible="no" active="yes"/>
+<layer number="109" name="fp9" color="7" fill="1" visible="no" active="yes"/>
+<layer number="110" name="fp0" color="7" fill="1" visible="no" active="yes"/>
+<layer number="111" name="LPC17xx" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="112" name="tSilk" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="113" name="ReferenceLS" color="7" fill="1" visible="no" active="no"/>
+<layer number="114" name="tPlaceRed" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="115" name="FRNTMAAT2" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="116" name="Patch_BOT" color="9" fill="4" visible="yes" active="yes"/>
+<layer number="117" name="BACKMAAT1" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="118" name="Rect_Pads" color="7" fill="1" visible="no" active="no"/>
+<layer number="119" name="KAP_TEKEN" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="120" name="KAP_MAAT1" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="121" name="_tsilk" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="122" name="_bsilk" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="123" name="tTestmark" color="7" fill="1" visible="no" active="yes"/>
+<layer number="124" name="bTestmark" color="7" fill="1" visible="no" active="yes"/>
+<layer number="125" name="_tNames" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="126" name="_bNames" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="127" name="_tValues" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="128" name="_bValues" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="129" name="Mask" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="130" name="SMDSTROOK" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="131" name="tAdjust" color="7" fill="1" visible="no" active="yes"/>
+<layer number="132" name="bAdjust" color="7" fill="1" visible="no" active="yes"/>
+<layer number="133" name="bottom_silk" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="134" name="silk_top" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="135" name="silk_bottom" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="136" name="silktop" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="137" name="silkbottom" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="138" name="EEE" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="139" name="_tKeepout" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="140" name="mbKeepout" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="141" name="ASSEMBLY_TOP" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="142" name="mbRestrict" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="143" name="PLACE_BOUND_TOP" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="144" name="Drill_legend" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="145" name="DrillLegend_01-16" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="146" name="DrillLegend_01-20" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="147" name="PIN_NUMBER" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="148" name="mDocument" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="149" name="DrillLegend_02-15" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="150" name="Notes" color="7" fill="1" visible="no" active="yes"/>
+<layer number="151" name="HeatSink" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="152" name="_bDocu" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="153" name="FabDoc1" color="6" fill="1" visible="no" active="no"/>
+<layer number="154" name="FabDoc2" color="2" fill="1" visible="no" active="no"/>
+<layer number="155" name="FabDoc3" color="7" fill="15" visible="no" active="no"/>
+<layer number="166" name="AntennaArea" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="168" name="4mmHeightArea" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="191" name="mNets" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="192" name="mBusses" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="193" name="mPins" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="194" name="mSymbols" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="195" name="mNames" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="196" name="mValues" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="199" name="Contour" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="200" name="200bmp" color="1" fill="10" visible="no" active="no"/>
+<layer number="201" name="201bmp" color="2" fill="1" visible="no" active="no"/>
+<layer number="202" name="202bmp" color="3" fill="1" visible="no" active="no"/>
+<layer number="203" name="203bmp" color="4" fill="10" visible="yes" active="yes"/>
+<layer number="204" name="204bmp" color="5" fill="10" visible="yes" active="yes"/>
+<layer number="205" name="205bmp" color="6" fill="10" visible="yes" active="yes"/>
+<layer number="206" name="206bmp" color="7" fill="10" visible="yes" active="yes"/>
+<layer number="207" name="207bmp" color="8" fill="10" visible="yes" active="yes"/>
+<layer number="208" name="208bmp" color="9" fill="10" visible="yes" active="yes"/>
+<layer number="209" name="209bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="210" name="210bmp" color="7" fill="1" visible="no" active="yes"/>
+<layer number="211" name="211bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="212" name="212bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="213" name="213bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="214" name="214bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="215" name="215bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="216" name="216bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="217" name="217bmp" color="18" fill="1" visible="no" active="no"/>
+<layer number="218" name="218bmp" color="19" fill="1" visible="no" active="no"/>
+<layer number="219" name="219bmp" color="20" fill="1" visible="no" active="no"/>
+<layer number="220" name="220bmp" color="21" fill="1" visible="no" active="no"/>
+<layer number="221" name="221bmp" color="22" fill="1" visible="no" active="no"/>
+<layer number="222" name="222bmp" color="23" fill="1" visible="no" active="no"/>
+<layer number="223" name="223bmp" color="24" fill="1" visible="no" active="no"/>
+<layer number="224" name="224bmp" color="25" fill="1" visible="no" active="no"/>
+<layer number="225" name="225bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="226" name="226bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="227" name="227bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="228" name="228bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="229" name="229bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="230" name="230bmp" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="231" name="Eagle3D_PG1" color="7" fill="1" visible="no" active="no"/>
+<layer number="232" name="Eagle3D_PG2" color="7" fill="1" visible="no" active="no"/>
+<layer number="233" name="Eagle3D_PG3" color="7" fill="1" visible="no" active="no"/>
+<layer number="248" name="Housing" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="249" name="Edge" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="250" name="Descript" color="7" fill="1" visible="no" active="no"/>
+<layer number="251" name="SMDround" color="7" fill="1" visible="no" active="no"/>
+<layer number="254" name="cooling" color="7" fill="1" visible="yes" active="yes"/>
+<layer number="255" name="routoute" color="7" fill="1" visible="yes" active="yes"/>
+</layers>
+<schematic>
+<libraries>
+<library name="My Stuff">
+<description>Generated from &lt;b&gt;Hiking Log FeatherWing.brd&lt;/b&gt;&lt;p&gt;
+by exp-lbrs.ulp</description>
+<packages>
+</packages>
+<symbols>
+<symbol name="A4L-LOC">
+<wire x1="256.54" y1="3.81" x2="256.54" y2="8.89" width="0.1016" layer="94"/>
+<wire x1="256.54" y1="8.89" x2="256.54" y2="13.97" width="0.1016" layer="94"/>
+<wire x1="256.54" y1="13.97" x2="256.54" y2="19.05" width="0.1016" layer="94"/>
+<wire x1="256.54" y1="19.05" x2="256.54" y2="24.13" width="0.1016" layer="94"/>
+<wire x1="184.15" y1="3.81" x2="184.15" y2="24.13" width="0.1016" layer="94"/>
+<wire x1="184.15" y1="24.13" x2="215.265" y2="24.13" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="24.13" x2="256.54" y2="24.13" width="0.1016" layer="94"/>
+<wire x1="234.95" y1="3.81" x2="234.95" y2="8.89" width="0.1016" layer="94"/>
+<wire x1="234.95" y1="8.89" x2="256.54" y2="8.89" width="0.1016" layer="94"/>
+<wire x1="234.95" y1="8.89" x2="215.265" y2="8.89" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="8.89" x2="215.265" y2="3.81" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="8.89" x2="215.265" y2="13.97" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="13.97" x2="256.54" y2="13.97" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="13.97" x2="215.265" y2="19.05" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="19.05" x2="256.54" y2="19.05" width="0.1016" layer="94"/>
+<wire x1="215.265" y1="19.05" x2="215.265" y2="24.13" width="0.1016" layer="94"/>
+<text x="217.17" y="15.24" size="2.54" layer="94">&gt;DRAWING_NAME</text>
+<text x="217.17" y="10.16" size="2.286" layer="94">&gt;LAST_DATE_TIME</text>
+<text x="228.473" y="5.08" size="2.54" layer="94">&gt;SHEET</text>
+<text x="216.916" y="4.953" size="2.54" layer="94">Sheet:</text>
+<frame x1="0" y1="0" x2="260.35" y2="179.07" columns="6" rows="4" layer="94"/>
+<text x="185.42" y="5.08" size="4.572" layer="94" font="vector" ratio="10">oddly
+specific
+objects</text>
+<text x="217.17" y="20.32" size="2.54" layer="94">by joey castillo</text>
+<text x="236.22" y="5.08" size="2.54" layer="94">cc-by-sa 4.0</text>
+</symbol>
+</symbols>
+<devicesets>
+<deviceset name="A4L-LOC" prefix="FRAME" uservalue="yes">
+<description>&lt;b&gt;FRAME&lt;/b&gt;&lt;p&gt;
+DIN A4, landscape with location and doc. field</description>
+<gates>
+<gate name="G$1" symbol="A4L-LOC" x="0" y="0"/>
+</gates>
+<devices>
+<device name="">
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+</devicesets>
+</library>
+<library name="FH19C-9S-0.5SH">
+<description>&lt;b&gt;https://componentsearchengine.com&lt;/b&gt;&lt;p&gt;
+&lt;author&gt;Created by SamacSys&lt;/author&gt;</description>
+<packages>
+<package name="FH19C9S05SH10-FFC">
+<description>&lt;b&gt;FH19C-9S-0.5SH(10)-1&lt;/b&gt;&lt;br&gt;
+</description>
+<smd name="1" x="2" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="2" x="1.5" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="3" x="1" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="4" x="0.5" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="5" x="0" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="6" x="-0.5" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="7" x="-1" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="8" x="-1.5" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<smd name="9" x="-2" y="-2.25" dx="2.5" dy="0.347" layer="16" rot="R90"/>
+<wire x1="-2.4892" y1="0" x2="-2.4892" y2="-3.35" width="0" layer="20"/>
+<wire x1="-2.3392" y1="-3.5" x2="2.3392" y2="-3.5" width="0" layer="20"/>
+<wire x1="2.4892" y1="0" x2="2.4892" y2="-3.35" width="0" layer="20"/>
+<wire x1="-2.3392" y1="-3.5" x2="-2.4892" y2="-3.35" width="0" layer="20" curve="-90"/>
+<wire x1="2.3392" y1="-3.5" x2="2.4892" y2="-3.35" width="0" layer="20" curve="90"/>
+<polygon width="0.1524" layer="30">
+<vertex x="-2.4902" y="-0.9742"/>
+<vertex x="2.4882" y="-0.9742"/>
+<vertex x="2.4892" y="-3.4798"/>
+<vertex x="-2.4892" y="-3.4798"/>
+</polygon>
+</package>
+</packages>
+<symbols>
+<symbol name="FH19C-9S-0.5SH_10-FFC">
+<wire x1="-5.08" y1="12.7" x2="7.62" y2="12.7" width="0.254" layer="94"/>
+<wire x1="7.62" y1="-12.7" x2="7.62" y2="12.7" width="0.254" layer="94"/>
+<wire x1="7.62" y1="-12.7" x2="-5.08" y2="-12.7" width="0.254" layer="94"/>
+<wire x1="-5.08" y1="12.7" x2="-5.08" y2="-12.7" width="0.254" layer="94"/>
+<text x="8.89" y="17.78" size="1.778" layer="95" align="center-left">&gt;NAME</text>
+<text x="8.89" y="15.24" size="1.778" layer="96" align="center-left">&gt;VALUE</text>
+<pin name="1" x="12.7" y="10.16" length="middle" rot="R180"/>
+<pin name="2" x="12.7" y="7.62" length="middle" rot="R180"/>
+<pin name="3" x="12.7" y="5.08" length="middle" rot="R180"/>
+<pin name="4" x="12.7" y="2.54" length="middle" rot="R180"/>
+<pin name="5" x="12.7" y="0" length="middle" rot="R180"/>
+<pin name="6" x="12.7" y="-2.54" length="middle" rot="R180"/>
+<pin name="7" x="12.7" y="-5.08" length="middle" rot="R180"/>
+<pin name="8" x="12.7" y="-7.62" length="middle" rot="R180"/>
+<pin name="9" x="12.7" y="-10.16" length="middle" rot="R180"/>
+</symbol>
+</symbols>
+<devicesets>
+<deviceset name="FH19C-9S-0.5SH_10-FFC">
+<gates>
+<gate name="G$1" symbol="FH19C-9S-0.5SH_10-FFC" x="0" y="0"/>
+</gates>
+<devices>
+<device name="" package="FH19C9S05SH10-FFC">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+<connect gate="G$1" pin="3" pad="3"/>
+<connect gate="G$1" pin="4" pad="4"/>
+<connect gate="G$1" pin="5" pad="5"/>
+<connect gate="G$1" pin="6" pad="6"/>
+<connect gate="G$1" pin="7" pad="7"/>
+<connect gate="G$1" pin="8" pad="8"/>
+<connect gate="G$1" pin="9" pad="9"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+</devicesets>
+</library>
+<library name="microbuilder">
+<description>&lt;h2&gt;&lt;b&gt;microBuilder.eu&lt;/b&gt; Eagle Footprint Library&lt;/h2&gt;
+
+&lt;p&gt;Footprints for common components used in our projects and products. This is the same library that we use internally, and it is regularly updated. The newest version can always be found at &lt;b&gt;www.microBuilder.eu&lt;/b&gt;. If you find this library useful, please feel free to purchase something from our online store. Please also note that all holes are optimised for metric drill bits!&lt;/p&gt;
+
+&lt;h3&gt;Obligatory Warning&lt;/h3&gt;
+&lt;p&gt;While it probably goes without saying, there are no guarantees that the footprints or schematic symbols in this library are flawless, and we make no promises of fitness for production, prototyping or any other purpose. These libraries are provided for information puposes only, and are used at your own discretion. While we make every effort to produce accurate footprints, and many of the items found in this library have be proven in production, we can't make any promises of suitability for a specific purpose. If you do find any errors, though, please feel free to contact us at www.microbuilder.eu to let us know about it so that we can update the library accordingly!&lt;/p&gt;
+
+&lt;h3&gt;License&lt;/h3&gt;
+&lt;p&gt;This work is placed in the public domain, and may be freely used for commercial and non-commercial work with the following conditions:&lt;/p&gt;
+&lt;p&gt;THIS SOFTWARE IS PROVIDED ''AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+&lt;/p&gt;</description>
+<packages>
+<package name="0603-MINI">
+<description>0603-Mini
+&lt;p&gt;Mini footprint for dense boards&lt;/p&gt;</description>
+<wire x1="-1.346" y1="0.583" x2="1.346" y2="0.583" width="0.0508" layer="39"/>
+<wire x1="1.346" y1="0.583" x2="1.346" y2="-0.583" width="0.0508" layer="39"/>
+<wire x1="1.346" y1="-0.583" x2="-1.346" y2="-0.583" width="0.0508" layer="39"/>
+<wire x1="-1.346" y1="-0.583" x2="-1.346" y2="0.583" width="0.0508" layer="39"/>
+<wire x1="-1.45" y1="-0.7" x2="-1.45" y2="0.7" width="0.2032" layer="21"/>
+<wire x1="-1.45" y1="0.7" x2="1.45" y2="0.7" width="0.2032" layer="21"/>
+<wire x1="1.45" y1="0.7" x2="1.45" y2="-0.7" width="0.2032" layer="21"/>
+<wire x1="1.45" y1="-0.7" x2="-1.45" y2="-0.7" width="0.2032" layer="21"/>
+<wire x1="-0.356" y1="0.432" x2="0.356" y2="0.432" width="0.1016" layer="51"/>
+<wire x1="-0.356" y1="-0.419" x2="0.356" y2="-0.419" width="0.1016" layer="51"/>
+<smd name="1" x="-0.75" y="0" dx="0.9" dy="0.9" layer="1"/>
+<smd name="2" x="0.75" y="0" dx="0.9" dy="0.9" layer="1"/>
+<text x="1.524" y="-0.0635" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="1.524" y="-0.635" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-0.8382" y1="-0.4699" x2="-0.3381" y2="0.4801" layer="51"/>
+<rectangle x1="0.3302" y1="-0.4699" x2="0.8303" y2="0.4801" layer="51"/>
+</package>
+<package name="0805_NOTHERMALS">
+<wire x1="-1.873" y1="0.883" x2="1.873" y2="0.883" width="0.0508" layer="39"/>
+<wire x1="1.873" y1="-0.883" x2="-1.873" y2="-0.883" width="0.0508" layer="39"/>
+<wire x1="-1.873" y1="-0.883" x2="-1.873" y2="0.883" width="0.0508" layer="39"/>
+<wire x1="-0.381" y1="0.66" x2="0.381" y2="0.66" width="0.1016" layer="51"/>
+<wire x1="-0.356" y1="-0.66" x2="0.381" y2="-0.66" width="0.1016" layer="51"/>
+<wire x1="1.873" y1="0.883" x2="1.873" y2="-0.883" width="0.0508" layer="39"/>
+<wire x1="1.85" y1="1" x2="1.85" y2="-1" width="0.2032" layer="21"/>
+<wire x1="1.85" y1="-1" x2="-1.85" y2="-1" width="0.2032" layer="21"/>
+<wire x1="-1.85" y1="-1" x2="-1.85" y2="1" width="0.2032" layer="21"/>
+<wire x1="-1.85" y1="1" x2="1.85" y2="1" width="0.2032" layer="21"/>
+<smd name="1" x="-0.95" y="0" dx="1.3" dy="1.5" layer="1" thermals="no"/>
+<smd name="2" x="0.95" y="0" dx="1.3" dy="1.5" layer="1" thermals="no"/>
+<text x="2.032" y="-0.127" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="2.032" y="-0.762" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-1.0922" y1="-0.7239" x2="-0.3421" y2="0.7262" layer="51"/>
+<rectangle x1="0.3556" y1="-0.7239" x2="1.1057" y2="0.7262" layer="51"/>
+</package>
+<package name="_0402">
+<description>&lt;b&gt; 0402&lt;/b&gt;</description>
+<wire x1="-0.245" y1="0.174" x2="0.245" y2="0.174" width="0.1016" layer="51"/>
+<wire x1="0.245" y1="-0.174" x2="-0.245" y2="-0.174" width="0.1016" layer="51"/>
+<wire x1="-1.0573" y1="0.5557" x2="1.0573" y2="0.5557" width="0.2032" layer="21"/>
+<wire x1="1.0573" y1="0.5557" x2="1.0573" y2="-0.5556" width="0.2032" layer="21"/>
+<wire x1="1.0573" y1="-0.5556" x2="-1.0573" y2="-0.5557" width="0.2032" layer="21"/>
+<wire x1="-1.0573" y1="-0.5557" x2="-1.0573" y2="0.5557" width="0.2032" layer="21"/>
+<smd name="1" x="-0.508" y="0" dx="0.6" dy="0.6" layer="1"/>
+<smd name="2" x="0.508" y="0" dx="0.6" dy="0.6" layer="1"/>
+<text x="-0.9525" y="0.7939" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-0.9525" y="-1.3336" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-0.0794" y1="-0.2381" x2="0.0794" y2="0.2381" layer="35"/>
+<rectangle x1="0.25" y1="-0.25" x2="0.5" y2="0.25" layer="51"/>
+<rectangle x1="-0.5" y1="-0.25" x2="-0.25" y2="0.25" layer="51"/>
+</package>
+<package name="_0402MP">
+<description>&lt;b&gt;0402 MicroPitch&lt;p&gt;</description>
+<wire x1="-0.245" y1="0.174" x2="0.245" y2="0.174" width="0.1016" layer="51"/>
+<wire x1="0.245" y1="-0.174" x2="-0.245" y2="-0.174" width="0.1016" layer="51"/>
+<wire x1="0" y1="0.127" x2="0" y2="-0.127" width="0.2032" layer="21"/>
+<smd name="1" x="-0.508" y="0" dx="0.5" dy="0.5" layer="1"/>
+<smd name="2" x="0.508" y="0" dx="0.5" dy="0.5" layer="1"/>
+<text x="-0.635" y="0.4763" size="0.6096" layer="25" ratio="18">&gt;NAME</text>
+<text x="-0.635" y="-0.7938" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-0.1" y1="-0.2" x2="0.1" y2="0.2" layer="35"/>
+<rectangle x1="-0.5" y1="-0.25" x2="-0.254" y2="0.25" layer="51"/>
+<rectangle x1="0.2588" y1="-0.25" x2="0.5" y2="0.25" layer="51"/>
+</package>
+<package name="_0603">
+<description>&lt;b&gt;0603&lt;/b&gt;</description>
+<wire x1="-0.432" y1="-0.306" x2="0.432" y2="-0.306" width="0.1016" layer="51"/>
+<wire x1="0.432" y1="0.306" x2="-0.432" y2="0.306" width="0.1016" layer="51"/>
+<wire x1="-1.4605" y1="0.635" x2="1.4605" y2="0.635" width="0.2032" layer="21"/>
+<wire x1="1.4605" y1="0.635" x2="1.4605" y2="-0.635" width="0.2032" layer="21"/>
+<wire x1="1.4605" y1="-0.635" x2="-1.4605" y2="-0.635" width="0.2032" layer="21"/>
+<wire x1="-1.4605" y1="-0.635" x2="-1.4605" y2="0.635" width="0.2032" layer="21"/>
+<smd name="1" x="-0.762" y="0" dx="0.9" dy="0.8" layer="1"/>
+<smd name="2" x="0.762" y="0" dx="0.9" dy="0.8" layer="1"/>
+<text x="-1.27" y="0.9525" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.27" y="-1.4923" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="0.4318" y1="-0.4" x2="0.8382" y2="0.4" layer="51"/>
+<rectangle x1="-0.8382" y1="-0.4" x2="-0.4318" y2="0.4" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.4001" x2="0.1999" y2="0.4001" layer="35"/>
+</package>
+<package name="_0603MP">
+<description>&lt;b&gt;0603 MicroPitch&lt;/b&gt;</description>
+<wire x1="-0.432" y1="-0.306" x2="0.432" y2="-0.306" width="0.1016" layer="51"/>
+<wire x1="0.432" y1="0.306" x2="-0.432" y2="0.306" width="0.1016" layer="51"/>
+<wire x1="0" y1="0.254" x2="0" y2="-0.254" width="0.2032" layer="21"/>
+<smd name="1" x="-0.762" y="0" dx="0.8" dy="0.8" layer="1"/>
+<smd name="2" x="0.762" y="0" dx="0.8" dy="0.8" layer="1"/>
+<text x="-0.9525" y="0.635" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-0.9525" y="-0.9525" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="0.4318" y1="-0.4" x2="0.8" y2="0.4" layer="51"/>
+<rectangle x1="-0.8" y1="-0.4" x2="-0.4318" y2="0.4" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.25" x2="0.1999" y2="0.25" layer="35"/>
+</package>
+<package name="_0805">
+<description>&lt;b&gt;0805&lt;/b&gt;</description>
+<wire x1="-0.41" y1="0.585" x2="0.41" y2="0.585" width="0.1016" layer="51"/>
+<wire x1="-0.41" y1="-0.585" x2="0.41" y2="-0.585" width="0.1016" layer="51"/>
+<wire x1="-1.905" y1="0.889" x2="1.905" y2="0.889" width="0.2032" layer="21"/>
+<wire x1="1.905" y1="0.889" x2="1.905" y2="-0.889" width="0.2032" layer="21"/>
+<wire x1="1.905" y1="-0.889" x2="-1.905" y2="-0.889" width="0.2032" layer="21"/>
+<wire x1="-1.905" y1="-0.889" x2="-1.905" y2="0.889" width="0.2032" layer="21"/>
+<smd name="1" x="-1.016" y="0" dx="1.2" dy="1.3" layer="1"/>
+<smd name="2" x="1.016" y="0" dx="1.2" dy="1.3" layer="1"/>
+<text x="-1.5875" y="1.27" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.5874" y="-1.651" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="0.4064" y1="-0.65" x2="1.0564" y2="0.65" layer="51"/>
+<rectangle x1="-1.0668" y1="-0.65" x2="-0.4168" y2="0.65" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.5001" x2="0.1999" y2="0.5001" layer="35"/>
+</package>
+<package name="_0805MP">
+<description>&lt;b&gt;0805 MicroPitch&lt;/b&gt;</description>
+<wire x1="-0.51" y1="0.535" x2="0.51" y2="0.535" width="0.1016" layer="51"/>
+<wire x1="-0.51" y1="-0.535" x2="0.51" y2="-0.535" width="0.1016" layer="51"/>
+<wire x1="0" y1="0.508" x2="0" y2="-0.508" width="0.2032" layer="21"/>
+<smd name="1" x="-1.016" y="0" dx="1.2" dy="1.3" layer="1"/>
+<smd name="2" x="1.016" y="0" dx="1.2" dy="1.3" layer="1"/>
+<text x="-1.5875" y="0.9525" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-1.5875" y="-1.27" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="0.4064" y1="-0.65" x2="1" y2="0.65" layer="51"/>
+<rectangle x1="-1" y1="-0.65" x2="-0.4168" y2="0.65" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.5001" x2="0.1999" y2="0.5001" layer="35"/>
+</package>
+<package name="0805-NO">
+<wire x1="-0.381" y1="0.66" x2="0.381" y2="0.66" width="0.1016" layer="51"/>
+<wire x1="-0.356" y1="-0.66" x2="0.381" y2="-0.66" width="0.1016" layer="51"/>
+<smd name="1" x="-0.95" y="0" dx="1.24" dy="1.5" layer="1"/>
+<smd name="2" x="0.95" y="0" dx="1.24" dy="1.5" layer="1"/>
+<text x="2.032" y="-0.127" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="2.032" y="-0.762" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-1.0922" y1="-0.7239" x2="-0.3421" y2="0.7262" layer="51"/>
+<rectangle x1="0.3556" y1="-0.7239" x2="1.1057" y2="0.7262" layer="51"/>
+<wire x1="0" y1="0.508" x2="0" y2="-0.508" width="0.3048" layer="21"/>
+</package>
+<package name="0805_10MGAP">
+<wire x1="-0.381" y1="0.66" x2="0.381" y2="0.66" width="0.1016" layer="51"/>
+<wire x1="-0.356" y1="-0.66" x2="0.381" y2="-0.66" width="0.1016" layer="51"/>
+<smd name="1" x="-1.05" y="0" dx="1.2" dy="1.5" layer="1"/>
+<smd name="2" x="1.05" y="0" dx="1.2" dy="1.5" layer="1"/>
+<text x="2.032" y="-0.127" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="2.032" y="-0.762" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-1.0922" y1="-0.7239" x2="-0.3421" y2="0.7262" layer="51"/>
+<rectangle x1="0.3556" y1="-0.7239" x2="1.1057" y2="0.7262" layer="51"/>
+<wire x1="0" y1="0.508" x2="0" y2="-0.508" width="0.3048" layer="21"/>
+</package>
+<package name="0603-NO">
+<wire x1="-1.473" y1="0.729" x2="1.473" y2="0.729" width="0.0508" layer="39"/>
+<wire x1="1.473" y1="0.729" x2="1.473" y2="-0.729" width="0.0508" layer="39"/>
+<wire x1="1.473" y1="-0.729" x2="-1.473" y2="-0.729" width="0.0508" layer="39"/>
+<wire x1="-1.473" y1="-0.729" x2="-1.473" y2="0.729" width="0.0508" layer="39"/>
+<wire x1="-0.356" y1="0.432" x2="0.356" y2="0.432" width="0.1016" layer="51"/>
+<wire x1="-0.356" y1="-0.419" x2="0.356" y2="-0.419" width="0.1016" layer="51"/>
+<smd name="1" x="-0.85" y="0" dx="1.075" dy="1" layer="1"/>
+<smd name="2" x="0.85" y="0" dx="1.075" dy="1" layer="1"/>
+<text x="1.778" y="-0.127" size="0.8128" layer="25" font="vector" ratio="18">&gt;NAME</text>
+<text x="1.778" y="-0.762" size="0.4064" layer="27" font="vector" ratio="10">&gt;VALUE</text>
+<rectangle x1="-0.8382" y1="-0.4699" x2="-0.3381" y2="0.4801" layer="51"/>
+<rectangle x1="0.3302" y1="-0.4699" x2="0.8303" y2="0.4801" layer="51"/>
+<rectangle x1="-0.1999" y1="-0.3" x2="0.1999" y2="0.3" layer="35"/>
+<wire x1="0" y1="0.4" x2="0" y2="-0.4" width="0.3048" layer="21"/>
+</package>
+<package name="_1206">
+<wire x1="0.9525" y1="-0.8128" x2="-0.9652" y2="-0.8128" width="0.1016" layer="51"/>
+<wire x1="0.9525" y1="0.8128" x2="-0.9652" y2="0.8128" width="0.1016" layer="51"/>
+<wire x1="-2.286" y1="1.143" x2="2.286" y2="1.143" width="0.2032" layer="21"/>
+<wire x1="2.286" y1="1.143" x2="2.286" y2="-1.143" width="0.2032" layer="21"/>
+<wire x1="2.286" y1="-1.143" x2="-2.286" y2="-1.143" width="0.2032" layer="21"/>
+<wire x1="-2.286" y1="-1.143" x2="-2.286" y2="1.143" width="0.2032" layer="21"/>
+<smd name="2" x="1.27" y="0" dx="1.4" dy="1.8" layer="1"/>
+<smd name="1" x="-1.27" y="0" dx="1.4" dy="1.8" layer="1"/>
+<rectangle x1="-1.6891" y1="-0.8763" x2="-0.9525" y2="0.8763" layer="51"/>
+<rectangle x1="0.9525" y1="-0.8763" x2="1.6891" y2="0.8763" layer="51"/>
+<rectangle x1="-0.3" y1="-0.7" x2="0.3" y2="0.7" layer="35"/>
+<text x="-2.2225" y="1.5113" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-2.2225" y="-1.8288" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+</package>
+<package name="_1206MP">
+<wire x1="1.0525" y1="-0.7128" x2="-1.0652" y2="-0.7128" width="0.1016" layer="51"/>
+<wire x1="1.0525" y1="0.7128" x2="-1.0652" y2="0.7128" width="0.1016" layer="51"/>
+<wire x1="-0.635" y1="0.635" x2="0.635" y2="0.635" width="0.2032" layer="21"/>
+<wire x1="-0.635" y1="-0.635" x2="0.635" y2="-0.635" width="0.2032" layer="21"/>
+<smd name="2" x="1.524" y="0" dx="1.3" dy="1.6" layer="1"/>
+<smd name="1" x="-1.524" y="0" dx="1.3" dy="1.6" layer="1"/>
+<text x="-2.2225" y="1.1113" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-2.2225" y="-1.4288" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-1.6" y1="-0.8" x2="-0.9" y2="0.8" layer="51"/>
+<rectangle x1="-0.3" y1="-0.7" x2="0.3" y2="0.7" layer="35"/>
+<rectangle x1="0.9001" y1="-0.8" x2="1.6" y2="0.8" layer="51" rot="R180"/>
+</package>
+<package name="2012">
+<wire x1="-1.662" y1="1.245" x2="1.662" y2="1.245" width="0.2032" layer="51"/>
+<wire x1="-1.637" y1="-1.245" x2="1.687" y2="-1.245" width="0.2032" layer="51"/>
+<wire x1="-3.473" y1="1.483" x2="3.473" y2="1.483" width="0.0508" layer="39"/>
+<wire x1="3.473" y1="1.483" x2="3.473" y2="-1.483" width="0.0508" layer="39"/>
+<wire x1="3.473" y1="-1.483" x2="-3.473" y2="-1.483" width="0.0508" layer="39"/>
+<wire x1="-3.473" y1="-1.483" x2="-3.473" y2="1.483" width="0.0508" layer="39"/>
+<wire x1="-3.302" y1="1.524" x2="3.302" y2="1.524" width="0.2032" layer="21"/>
+<wire x1="3.302" y1="1.524" x2="3.302" y2="-1.524" width="0.2032" layer="21"/>
+<wire x1="3.302" y1="-1.524" x2="-3.302" y2="-1.524" width="0.2032" layer="21"/>
+<wire x1="-3.302" y1="-1.524" x2="-3.302" y2="1.524" width="0.2032" layer="21"/>
+<smd name="1" x="-2.2" y="0" dx="1.8" dy="2.7" layer="1"/>
+<smd name="2" x="2.2" y="0" dx="1.8" dy="2.7" layer="1"/>
+<text x="-2.54" y="1.8415" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-2.667" y="-2.159" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-2.4892" y1="-1.3208" x2="-1.6393" y2="1.3292" layer="51"/>
+<rectangle x1="1.651" y1="-1.3208" x2="2.5009" y2="1.3292" layer="51"/>
+</package>
+<package name="2512">
+<description>&lt;b&gt;RESISTOR 2512 (Metric 6432)&lt;/b&gt;</description>
+<wire x1="-2.362" y1="1.473" x2="2.387" y2="1.473" width="0.2032" layer="51"/>
+<wire x1="-2.362" y1="-1.473" x2="2.387" y2="-1.473" width="0.2032" layer="51"/>
+<wire x1="-3.973" y1="1.983" x2="3.973" y2="1.983" width="0.0508" layer="39"/>
+<wire x1="3.973" y1="1.983" x2="3.973" y2="-1.983" width="0.0508" layer="39"/>
+<wire x1="3.973" y1="-1.983" x2="-3.973" y2="-1.983" width="0.0508" layer="39"/>
+<wire x1="-3.973" y1="-1.983" x2="-3.973" y2="1.983" width="0.0508" layer="39"/>
+<smd name="1" x="-2.8" y="0" dx="1.8" dy="3.2" layer="1"/>
+<smd name="2" x="2.8" y="0" dx="1.8" dy="3.2" layer="1"/>
+<text x="-3.683" y="1.905" size="0.8128" layer="25" ratio="18">&gt;NAME</text>
+<text x="-3.556" y="-2.286" size="0.4064" layer="27" ratio="10">&gt;VALUE</text>
+<rectangle x1="-3.2004" y1="-1.5494" x2="-2.3505" y2="1.5507" layer="51"/>
+<rectangle x1="2.3622" y1="-1.5494" x2="3.2121" y2="1.5507" layer="51"/>
+<rectangle x1="-0.5001" y1="-1" x2="0.5001" y2="1" layer="35"/>
+</package>
+</packages>
+<symbols>
+<symbol name="RESISTOR">
+<wire x1="-2.54" y1="1.27" x2="2.54" y2="1.27" width="0.254" layer="94"/>
+<wire x1="2.54" y1="1.27" x2="2.54" y2="-1.27" width="0.254" layer="94"/>
+<wire x1="2.54" y1="-1.27" x2="-2.54" y2="-1.27" width="0.254" layer="94"/>
+<wire x1="-2.54" y1="-1.27" x2="-2.54" y2="1.27" width="0.254" layer="94"/>
+<text x="0" y="2.54" size="1.27" layer="95" font="vector" align="center">&gt;NAME</text>
+<text x="0" y="0" size="1.016" layer="96" font="vector" ratio="15" align="center">&gt;VALUE</text>
+<pin name="1" x="-5.08" y="0" visible="off" length="short" direction="pas" swaplevel="1"/>
+<pin name="2" x="5.08" y="0" visible="off" length="short" direction="pas" swaplevel="1" rot="R180"/>
+</symbol>
+</symbols>
+<devicesets>
+<deviceset name="RESISTOR" prefix="R" uservalue="yes">
+<description>&lt;p&gt;&lt;b&gt;Resistors&lt;/b&gt;&lt;/p&gt;
+&lt;p&gt;For new designs, use the packages preceded by an '_' character since they are more reliable:&lt;/p&gt;
+&lt;p&gt;The following footprints should be used on most boards:&lt;/p&gt;
+&lt;ul&gt;
+&lt;li&gt;&lt;b&gt;_0402&lt;/b&gt; - Standard footprint for regular board layouts&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_0603&lt;/b&gt; - Standard footprint for regular board layouts&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_0805&lt;/b&gt; - Standard footprint for regular board layouts&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_1206&lt;/b&gt; - Standard footprint for regular board layouts&lt;/li&gt;
+&lt;/ul&gt;
+&lt;p&gt;For extremely tight-pitch boards where space is at a premium, the following 'micro-pitch' footprints can be used (smaller pads, no silkscreen outline, etc.):&lt;/p&gt;
+&lt;ul&gt;
+&lt;li&gt;&lt;b&gt;_0402MP&lt;/b&gt; - Micro-pitch footprint for very dense/compact boards&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_0603MP&lt;/b&gt; - Micro-pitch footprint for very dense/compact boards&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_0805MP&lt;/b&gt; - Micro-pitch footprint for very dense/compact boards&lt;/li&gt;
+&lt;li&gt;&lt;b&gt;_1206MP&lt;/b&gt; - Micro-pitch footprint for very dense/compact boards&lt;/li&gt;
+&lt;/ul&gt;</description>
+<gates>
+<gate name="G$1" symbol="RESISTOR" x="0" y="0"/>
+</gates>
+<devices>
+<device name="0603MINI" package="0603-MINI">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="2012" package="2012">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="0805_NOTHERMALS" package="0805_NOTHERMALS">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="2512" package="2512">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0402" package="_0402">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0402MP" package="_0402MP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0603" package="_0603">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0603MP" package="_0603MP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0805" package="_0805">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0805MP" package="_0805MP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="0805_NOOUTLINE" package="0805-NO">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_0603_NOOUT" package="0603-NO">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_1206" package="_1206">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="_1206MP" package="_1206MP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+<device name="0805_10MGAP" package="0805_10MGAP">
+<connects>
+<connect gate="G$1" pin="1" pad="1"/>
+<connect gate="G$1" pin="2" pad="2"/>
+</connects>
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+</devicesets>
+</library>
+<library name="supply1" urn="urn:adsk.eagle:library:371">
+<description>&lt;b&gt;Supply Symbols&lt;/b&gt;&lt;p&gt;
+ GND, VCC, 0V, +5V, -5V, etc.&lt;p&gt;
+ Please keep in mind, that these devices are necessary for the
+ automatic wiring of the supply signals.&lt;p&gt;
+ The pin name defined in the symbol is identical to the net which is to be wired automatically.&lt;p&gt;
+ In this library the device names are the same as the pin names of the symbols, therefore the correct signal names appear next to the supply symbols in the schematic.&lt;p&gt;
+ &lt;author&gt;Created by librarian@cadsoft.de&lt;/author&gt;</description>
+<packages>
+</packages>
+<symbols>
+<symbol name="GND" urn="urn:adsk.eagle:symbol:26925/1" library_version="1">
+<wire x1="-1.905" y1="0" x2="1.905" y2="0" width="0.254" layer="94"/>
+<text x="-2.54" y="-2.54" size="1.778" layer="96">&gt;VALUE</text>
+<pin name="GND" x="0" y="2.54" visible="off" length="short" direction="sup" rot="R270"/>
+</symbol>
+<symbol name="VCC" urn="urn:adsk.eagle:symbol:26928/1" library_version="1">
+<wire x1="1.27" y1="-1.905" x2="0" y2="0" width="0.254" layer="94"/>
+<wire x1="0" y1="0" x2="-1.27" y2="-1.905" width="0.254" layer="94"/>
+<text x="-2.54" y="-2.54" size="1.778" layer="96" rot="R90">&gt;VALUE</text>
+<pin name="VCC" x="0" y="-2.54" visible="off" length="short" direction="sup" rot="R90"/>
+</symbol>
+</symbols>
+<devicesets>
+<deviceset name="GND" urn="urn:adsk.eagle:component:26954/1" prefix="GND" library_version="1">
+<description>&lt;b&gt;SUPPLY SYMBOL&lt;/b&gt;</description>
+<gates>
+<gate name="1" symbol="GND" x="0" y="0"/>
+</gates>
+<devices>
+<device name="">
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+<deviceset name="VCC" urn="urn:adsk.eagle:component:26957/1" prefix="P+" library_version="1">
+<description>&lt;b&gt;SUPPLY SYMBOL&lt;/b&gt;</description>
+<gates>
+<gate name="VCC" symbol="VCC" x="0" y="0"/>
+</gates>
+<devices>
+<device name="">
+<technologies>
+<technology name=""/>
+</technologies>
+</device>
+</devices>
+</deviceset>
+</devicesets>
+</library>
+</libraries>
+<attributes>
+</attributes>
+<variantdefs>
+</variantdefs>
+<classes>
+<class number="0" name="default" width="0.2032" drill="0">
+</class>
+<class number="1" name="power" width="0.2032" drill="0">
+</class>
+<class number="2" name="gnd" width="0.2032" drill="0">
+</class>
+</classes>
+<parts>
+<part name="FRAME1" library="My Stuff" deviceset="A4L-LOC" device=""/>
+<part name="U$3" library="FH19C-9S-0.5SH" deviceset="FH19C-9S-0.5SH_10-FFC" device=""/>
+<part name="RT" library="microbuilder" deviceset="RESISTOR" device="_0603" value="NTC 10K"/>
+<part name="R1" library="microbuilder" deviceset="RESISTOR" device="_0603MP" value="1% 10K"/>
+<part name="GND1" library="supply1" library_urn="urn:adsk.eagle:library:371" deviceset="GND" device=""/>
+<part name="P+1" library="supply1" library_urn="urn:adsk.eagle:library:371" deviceset="VCC" device=""/>
+<part name="P+2" library="supply1" library_urn="urn:adsk.eagle:library:371" deviceset="VCC" device=""/>
+</parts>
+<sheets>
+<sheet>
+<plain>
+</plain>
+<instances>
+<instance part="FRAME1" gate="G$1" x="0" y="0" smashed="yes">
+<attribute name="DRAWING_NAME" x="217.17" y="15.24" size="2.54" layer="94"/>
+<attribute name="LAST_DATE_TIME" x="217.17" y="10.16" size="2.286" layer="94"/>
+<attribute name="SHEET" x="228.473" y="5.08" size="2.54" layer="94"/>
+</instance>
+<instance part="U$3" gate="G$1" x="20.32" y="86.36" smashed="yes">
+<attribute name="NAME" x="29.21" y="104.14" size="1.778" layer="95" align="center-left"/>
+<attribute name="VALUE" x="29.21" y="101.6" size="1.778" layer="96" align="center-left"/>
+</instance>
+<instance part="RT" gate="G$1" x="127" y="91.44" smashed="yes" rot="R270">
+<attribute name="NAME" x="129.54" y="91.44" size="1.27" layer="95" font="vector" rot="R270" align="center"/>
+<attribute name="VALUE" x="124.46" y="91.44" size="1.016" layer="96" font="vector" ratio="15" rot="R270" align="center"/>
+</instance>
+<instance part="R1" gate="G$1" x="127" y="81.28" smashed="yes" rot="R270">
+<attribute name="NAME" x="129.54" y="81.28" size="1.27" layer="95" font="vector" rot="R270" align="center"/>
+<attribute name="VALUE" x="124.46" y="81.28" size="1.016" layer="96" font="vector" ratio="15" rot="R270" align="center"/>
+</instance>
+<instance part="GND1" gate="1" x="68.58" y="88.9" smashed="yes">
+<attribute name="VALUE" x="66.04" y="86.36" size="1.778" layer="96"/>
+</instance>
+<instance part="P+1" gate="VCC" x="68.58" y="101.6" smashed="yes">
+<attribute name="VALUE" x="66.04" y="99.06" size="1.778" layer="96" rot="R90"/>
+</instance>
+<instance part="P+2" gate="VCC" x="127" y="99.06" smashed="yes">
+<attribute name="VALUE" x="124.46" y="96.52" size="1.778" layer="96" rot="R90"/>
+</instance>
+</instances>
+<busses>
+</busses>
+<nets>
+<net name="SCL" class="0">
+<segment>
+<pinref part="U$3" gate="G$1" pin="8"/>
+<wire x1="60.96" y1="78.74" x2="33.02" y2="78.74" width="0.1524" layer="91"/>
+<label x="35.56" y="78.74" size="1.778" layer="95"/>
+</segment>
+</net>
+<net name="SDA" class="0">
+<segment>
+<pinref part="U$3" gate="G$1" pin="7"/>
+<wire x1="60.96" y1="81.28" x2="33.02" y2="81.28" width="0.1524" layer="91"/>
+<label x="35.56" y="81.28" size="1.778" layer="95"/>
+</segment>
+</net>
+<net name="GND" class="2">
+<segment>
+<pinref part="U$3" gate="G$1" pin="2"/>
+<wire x1="68.58" y1="93.98" x2="33.02" y2="93.98" width="0.1524" layer="91"/>
+<label x="35.56" y="93.98" size="1.778" layer="95"/>
+<pinref part="GND1" gate="1" pin="GND"/>
+<wire x1="68.58" y1="93.98" x2="68.58" y2="91.44" width="0.1524" layer="91"/>
+</segment>
+</net>
+<net name="A0_TEMP_ENABLE" class="0">
+<segment>
+<pinref part="U$3" gate="G$1" pin="9"/>
+<wire x1="33.02" y1="76.2" x2="60.96" y2="76.2" width="0.1524" layer="91"/>
+<label x="35.56" y="76.2" size="1.778" layer="95"/>
+</segment>
+<segment>
+<wire x1="99.06" y1="76.2" x2="127" y2="76.2" width="0.1524" layer="91"/>
+<label x="101.6" y="76.2" size="1.778" layer="95"/>
+<pinref part="R1" gate="G$1" pin="2"/>
+</segment>
+</net>
+<net name="A4_LIGHT_SENSE" class="0">
+<segment>
+<pinref part="U$3" gate="G$1" pin="3"/>
+<wire x1="60.96" y1="91.44" x2="33.02" y2="91.44" width="0.1524" layer="91"/>
+<label x="35.56" y="91.44" size="1.778" layer="95"/>
+</segment>
+</net>
+<net name="A3_LIGHT_ENABLE" class="0">
+<segment>
+<pinref part="U$3" gate="G$1" pin="4"/>
+<wire x1="60.96" y1="88.9" x2="33.02" y2="88.9" width="0.1524" layer="91"/>
+<label x="35.56" y="88.9" size="1.778" layer="95"/>
+</segment>
+</net>
+<net name="A2_TEMP_SENSE" class="0">
+<segment>
+<wire x1="60.96" y1="86.36" x2="33.02" y2="86.36" width="0.1524" layer="91"/>
+<label x="35.56" y="86.36" size="1.778" layer="95"/>
+<pinref part="U$3" gate="G$1" pin="5"/>
+</segment>
+<segment>
+<pinref part="RT" gate="G$1" pin="2"/>
+<pinref part="R1" gate="G$1" pin="1"/>
+<wire x1="127" y1="86.36" x2="99.06" y2="86.36" width="0.1524" layer="91"/>
+<junction x="127" y="86.36"/>
+<label x="101.6" y="86.36" size="1.778" layer="95"/>
+</segment>
+</net>
+<net name="VCC" class="1">
+<segment>
+<pinref part="U$3" gate="G$1" pin="1"/>
+<wire x1="68.58" y1="96.52" x2="33.02" y2="96.52" width="0.1524" layer="91"/>
+<label x="35.56" y="96.52" size="1.778" layer="95"/>
+<wire x1="68.58" y1="96.52" x2="68.58" y2="99.06" width="0.1524" layer="91"/>
+<pinref part="P+1" gate="VCC" pin="VCC"/>
+</segment>
+<segment>
+<pinref part="RT" gate="G$1" pin="1"/>
+<pinref part="P+2" gate="VCC" pin="VCC"/>
+</segment>
+</net>
+</nets>
+</sheet>
+</sheets>
+<errors>
+<approved hash="102,1,124.46,66.04,OUT,3.3V,,,,"/>
+<approved hash="104,1,320.04,111.76,IC3,VDDA,3.3V,,,"/>
+<approved hash="104,1,320.04,106.68,IC3,VDDIN,3.3V,,,"/>
+<approved hash="104,1,320.04,45.72,IC3,GNDA,GND,,,"/>
+<approved hash="104,1,406.4,162.56,LED1,VDD,3.3V,,,"/>
+<approved hash="104,1,104.14,66.04,U1,IN,VOUT,,,"/>
+<approved hash="113,1,139.596,107.846,FRAME1,,,,,"/>
+<approved hash="113,1,129.777,128.401,JP3,,,,,"/>
+<approved hash="113,1,167.403,125.599,JP4,,,,,"/>
+</errors>
+</schematic>
+</drawing>
+<compatibility>
+<note version="6.3" minversion="6.2.2" severity="warning">
+Since Version 6.2.2 text objects can contain more than one line,
+which will not be processed correctly with this version.
+</note>
+<note version="8.2" severity="warning">
+Since Version 8.2, EAGLE supports online libraries. The ids
+of those online libraries will not be understood (or retained)
+with this version.
+</note>
+<note version="8.3" severity="warning">
+Since Version 8.3, EAGLE supports URNs for individual library
+assets (packages, symbols, and devices). The URNs of those assets
+will not be understood (or retained) with this version.
+</note>
+</compatibility>
+</eagle>
diff --git a/apps/Sensor Watch BME280 Project/app.c b/apps/Sensor Watch BME280 Project/app.c
index e07b35f8..85439d9b 100644
--- a/apps/Sensor Watch BME280 Project/app.c
+++ b/apps/Sensor Watch BME280 Project/app.c
@@ -16,18 +16,11 @@ void app_init() {
memset(&application_state, 0, sizeof(application_state));
}
-void app_wake_from_deep_sleep() {
- // This app does not support deep sleep mode.
+void app_wake_from_backup() {
+ // This app does not support BACKUP mode.
}
void app_setup() {
- struct calendar_date_time date_time;
- watch_get_date_time(&date_time);
- if (date_time.date.year < 2020) {
- date_time.date.year = 2020;
- watch_set_date_time(date_time);
- }
-
watch_enable_external_interrupts();
watch_register_interrupt_callback(BTN_MODE, cb_mode_pressed, INTERRUPT_TRIGGER_RISING);
watch_register_interrupt_callback(BTN_LIGHT, cb_light_pressed, INTERRUPT_TRIGGER_RISING);
@@ -64,19 +57,19 @@ void app_setup() {
watch_enable_display();
- watch_register_tick_callback(cb_tick);
+ watch_rtc_register_tick_callback(cb_tick);
}
/**
* Nothing to do here.
*/
-void app_prepare_for_sleep() {
+void app_prepare_for_standby() {
}
/**
* @todo restore the BME280's calibration values from backup memory
*/
-void app_wake_from_sleep() {
+void app_wake_from_standby() {
}
/**
@@ -191,9 +184,8 @@ float read_humidity(int32_t t_fine) {
}
void log_data() {
- struct calendar_date_time date_time;
- watch_get_date_time(&date_time);
- uint8_t hour = date_time.time.hour;
+ watch_date_time date_time = watch_rtc_get_date_time();
+ uint8_t hour = date_time.unit.hour;
int8_t temperature = read_temperature(NULL);
for(int i = 0; i < MAX_DATA_POINTS - 1; i++) {
@@ -205,12 +197,11 @@ void log_data() {
}
void do_clock_mode() {
- struct calendar_date_time date_time;
+ watch_date_time date_time = watch_rtc_get_date_time();
const char months[12][3] = {"JA", "FE", "MR", "AR", "MA", "JN", "JL", "AU", "SE", "OC", "NO", "dE"};
- watch_get_date_time(&date_time);
- watch_display_string((char *)months[date_time.date.month - 1], 0);
- sprintf(buf, "%2d%2d%02d%02d", date_time.date.day, date_time.time.hour, date_time.time.min, date_time.time.sec);
+ watch_display_string((char *)months[date_time.unit.month - 1], 0);
+ sprintf(buf, "%2d%2d%02d%02d", date_time.unit.day, date_time.unit.hour, date_time.unit.minute, date_time.unit.second);
watch_display_string(buf, 2);
watch_set_colon();
}
@@ -271,28 +262,27 @@ void prefs_mode_handle_secondary_button() {
}
void do_set_time_mode() {
- struct calendar_date_time date_time;
+ watch_date_time date_time = watch_rtc_get_date_time();
- watch_get_date_time(&date_time);
watch_display_string(" ", 0);
switch (application_state.page) {
case 0: // hour
- sprintf(buf, "ST t%2d", date_time.time.hour);
+ sprintf(buf, "ST t%2d", date_time.unit.hour);
break;
case 1: // minute
- sprintf(buf, "ST t %02d", date_time.time.min);
+ sprintf(buf, "ST t %02d", date_time.unit.minute);
break;
case 2: // second
- sprintf(buf, "ST t %02d", date_time.time.sec);
+ sprintf(buf, "ST t %02d", date_time.unit.second);
break;
case 3: // year
- sprintf(buf, "ST d%2d", date_time.date.year - 2000);
+ sprintf(buf, "ST d%2d", date_time.unit.year + 20);
break;
case 4: // month
- sprintf(buf, "ST d %02d", date_time.date.month);
+ sprintf(buf, "ST d %02d", date_time.unit.month);
break;
case 5: // day
- sprintf(buf, "ST d %02d", date_time.date.day);
+ sprintf(buf, "ST d %02d", date_time.unit.day);
break;
}
watch_display_string(buf, 0);
@@ -305,37 +295,36 @@ void set_time_mode_handle_primary_button() {
}
void set_time_mode_handle_secondary_button() {
- struct calendar_date_time date_time;
- watch_get_date_time(&date_time);
+ watch_date_time date_time = watch_rtc_get_date_time();
const uint8_t days_in_month[12] = {31, 28, 31, 30, 31, 30, 30, 31, 30, 31, 30, 31};
switch (application_state.page) {
case 0: // hour
- date_time.time.hour = (date_time.time.hour + 1) % 24;
+ date_time.unit.hour = (date_time.unit.hour + 1) % 24;
break;
case 1: // minute
- date_time.time.min = (date_time.time.min + 1) % 60;
+ date_time.unit.minute = (date_time.unit.minute + 1) % 60;
break;
case 2: // second
- date_time.time.sec = 0;
+ date_time.unit.second = 0;
break;
case 3: // year
// only allow 2021-2030. fix this sometime next decade
- date_time.date.year = ((date_time.date.year % 10) + 1) + 2020;
+ date_time.unit.year = ((date_time.unit.year % 10) + 1);
break;
case 4: // month
- date_time.date.month = ((date_time.date.month + 1) % 12);
+ date_time.unit.month = ((date_time.unit.month + 1) % 12);
break;
case 5: // day
- date_time.date.day = date_time.date.day + 1;
+ date_time.unit.day = date_time.unit.day + 1;
// can't set to the 29th on a leap year. if it's february 29, set to 11:59 on the 28th.
// and it should roll over.
- if (date_time.date.day > days_in_month[date_time.date.month - 1]) {
- date_time.date.day = 1;
+ if (date_time.unit.day > days_in_month[date_time.unit.month - 1]) {
+ date_time.unit.day = 1;
}
break;
}
- watch_set_date_time(date_time);
+ watch_rtc_set_date_time(date_time);
}
void cb_mode_pressed() {
@@ -377,9 +366,8 @@ void cb_alarm_pressed() {
void cb_tick() {
// TODO: use alarm interrupt to trigger data acquisition.
- struct calendar_date_time date_time;
- watch_get_date_time(&date_time);
- if (date_time.time.min == 0 && date_time.time.sec == 0) {
+ watch_date_time date_time = watch_rtc_get_date_time();
+ if (date_time.unit.minute == 0 && date_time.unit.second == 0) {
log_data();
}
diff --git a/apps/Sensor Watch Buzzer Demo/app.c b/apps/Sensor Watch Buzzer Demo/app.c
index 74777fcc..58158dff 100644
--- a/apps/Sensor Watch Buzzer Demo/app.c
+++ b/apps/Sensor Watch Buzzer Demo/app.c
@@ -17,7 +17,7 @@ void app_init() {
memset(&application_state, 0, sizeof(application_state));
}
-void app_wake_from_deep_sleep() {
+void app_wake_from_backup() {
}
void app_setup() {
@@ -28,11 +28,11 @@ void app_setup() {
watch_enable_buzzer();
}
-void app_prepare_for_sleep() {
+void app_prepare_for_standby() {
watch_display_string(" rains ", 2);
}
-void app_wake_from_sleep() {
+void app_wake_from_standby() {
}
bool app_loop() {
diff --git a/apps/Sensor Watch Starter Project/app.c b/apps/Sensor Watch Starter Project/app.c
index d2ddd6a6..fa887bae 100644
--- a/apps/Sensor Watch Starter Project/app.c
+++ b/apps/Sensor Watch Starter Project/app.c
@@ -20,8 +20,9 @@ typedef struct ApplicationState {
ApplicationMode mode;
LightColor color;
bool light_on;
+ bool beep;
uint8_t wake_count;
- bool enter_deep_sleep;
+ bool enter_sleep_mode;
} ApplicationState;
ApplicationState application_state;
@@ -50,20 +51,14 @@ void app_init() {
}
/**
- * @brief the app_wake_from_deep_sleep function is only called if your app is waking from
+ * @brief the app_wake_from_backup function is only called if your app is waking from
* the ultra-low power BACKUP sleep mode. You may have chosen to store some state in the
* RTC's backup registers prior to entering this mode. You may restore that state here.
*
* @see watch_enter_deep_sleep()
*/
-void app_wake_from_deep_sleep() {
- // retrieve our application state from the backup registers
- application_state.mode = (ApplicationMode)watch_get_backup_data(0);
- application_state.color = (LightColor)watch_get_backup_data(1);
- application_state.wake_count = (uint8_t)watch_get_backup_data(2) + 1;
-
- // wait a moment for the user's finger to be off the button
- delay_ms(250);
+void app_wake_from_backup() {
+ // This app does not support BACKUP mode.
}
/**
@@ -74,12 +69,16 @@ void app_wake_from_deep_sleep() {
* accelerometer that will run at all times should be configured here, whereas you may
* want to enable a more power-hungry environmental sensor only when you need it.
*
- * @note If your app enters the ultra-low power BACKUP sleep mode, this function will
- * be called again when it wakes from that deep sleep state. In this state, the RTC will
- * still be configured with the correct date and time.
+ * @note If your app enters the Sleep or Deep Sleep modes, this function will be called
+ * again on wake, since those modes will have disabled all pins and peripherals; you'll
+ * likely need to set them up again. This function will also be called again if your app
+ * entered the ultra-low power BACKUP mode, since BACKUP mode will have done all that and
+ * also wiped out the system RAM. Note that when this is called after waking from sleep,
+ * the RTC will still be configured with the correct date and time.
*/
void app_setup() {
watch_enable_leds();
+ watch_enable_buzzer();
watch_enable_external_interrupts();
// This starter app demonstrates three different ways of using the button interrupts.
@@ -98,27 +97,31 @@ void app_setup() {
}
/**
- * @brief the app_prepare_for_sleep function is called before the watch goes into the
- * STANDBY sleep mode. In STANDBY mode, most peripherals are shut down, and no code
- * will run until the watch receives an interrupt (generally either the 1Hz tick or
- * a press on one of the buttons).
+ * @brief the app_prepare_for_standby function is called before the watch goes into STANDBY mode.
+ * In STANDBY mode, most peripherals are shut down, and no code will run until the watch receives
+ * an interrupt (generally either the 1Hz tick or a press on one of the buttons).
*/
-void app_prepare_for_sleep() {
+void app_prepare_for_standby() {
}
/**
- * @brief the app_wake_from_sleep function is called after the watch wakes from the
- * STANDBY sleep mode.
+ * @brief the app_wake_from_standby function is called after the watch wakes from STANDBY mode,
+ * but before your main app_loop.
*/
-void app_wake_from_sleep() {
+void app_wake_from_standby() {
application_state.wake_count++;
}
/**
- * @brief the app_loop function is called once on app startup and then again each time
- * the watch STANDBY sleep mode.
+ * @brief the app_loop function is called once on app startup and then again each time the
+ * watch exits STANDBY mode.
*/
bool app_loop() {
+ if (application_state.beep) {
+ watch_buzzer_play_note(BUZZER_NOTE_C7, 50);
+ application_state.beep = false;
+ }
+
// set the LED to a color
if (application_state.light_on) {
switch (application_state.color) {
@@ -151,22 +154,21 @@ bool app_loop() {
break;
}
- if (application_state.enter_deep_sleep) {
- application_state.enter_deep_sleep = false;
-
- // stash our application state in the backup registers
- watch_store_backup_data((uint32_t)application_state.mode, 0);
- watch_store_backup_data((uint32_t)application_state.color, 1);
- watch_store_backup_data((uint32_t)application_state.wake_count, 2);
-
- // turn off the LED
- watch_set_led_off();
-
+ if (application_state.enter_sleep_mode) {
// wait a moment for the user's finger to be off the button
delay_ms(250);
// nap time :)
- watch_enter_deep_sleep(NULL);
+ watch_enter_deep_sleep_mode();
+
+ // we just woke up; wait a moment again for the user's finger to be off the button...
+ delay_ms(250);
+
+ // and prevent ourselves from going right back to sleep.
+ application_state.enter_sleep_mode = false;
+
+ // finally, after sleep, return false so that our app loop runs again and updates the display.
+ return false;
}
return true;
@@ -188,8 +190,9 @@ void cb_light_pressed() {
void cb_mode_pressed() {
application_state.mode = (application_state.mode + 1) % 2;
+ application_state.beep = true;
}
void cb_alarm_pressed() {
- application_state.enter_deep_sleep = true;
+ application_state.enter_sleep_mode = true;
}
diff --git a/apps/beats-time/app.c b/apps/beats-time/app.c
new file mode 100644
index 00000000..5c68a3e8
--- /dev/null
+++ b/apps/beats-time/app.c
@@ -0,0 +1,282 @@
+#include <stdio.h>
+#include <string.h>
+#include <math.h>
+#include "watch.h"
+
+const uint8_t UTC_OFFSET = 4; // set to your current UTC offset to see correct beats time
+const uint8_t BEAT_REFRESH_FREQUENCY = 8;
+
+typedef enum ApplicationMode {
+ MODE_CLOCK = 0, // Displays month, day and current time.
+ MODE_BEATS,
+ MODE_SET, // (ST) Set time and date
+ NUM_MODES // Last item in the enum, it's the number of cases.
+} ApplicationMode;
+
+
+typedef struct ApplicationState {
+ // Internal application state
+ ApplicationMode mode; // Current mode
+ bool mode_changed; // Lets us perform one-time setup for a given mode
+ uint16_t mode_ticks; // Timeout for the mode (returns to clock after timeout expires)
+ uint8_t light_ticks; // Timeout for the light
+ bool led_on; // Indicates that the LED is on
+ uint8_t page; // Tracks the current page in log, prefs or settings.
+ uint8_t last_second; // lets us see when the second changed, for subsecond timing
+ uint8_t subsecond; // a value from 0 to (BEAT_REFRESH_FREQUENCY - 1) indicating the fractional second
+} ApplicationState;
+
+void do_clock_mode();
+void do_beats_mode();
+void do_set_time_mode();
+void set_time_mode_handle_primary_button();
+void set_time_mode_handle_secondary_button();
+
+float clock2beats(uint16_t, uint16_t, uint16_t, int16_t);
+
+void cb_light_pressed();
+void cb_mode_pressed();
+void cb_alarm_pressed();
+void cb_tick();
+void cb_fast_tick();
+
+ApplicationState application_state;
+char buf[16] = {0};
+
+/**
+ * @brief Zeroes out the application state struct.
+ */
+void app_init() {
+ memset(&application_state, 0, sizeof(application_state));
+}
+
+void app_wake_from_backup() {
+ // This app does not support BACKUP mode.
+}
+
+void app_setup() {
+ watch_enable_external_interrupts();
+ watch_register_interrupt_callback(BTN_MODE, cb_mode_pressed, INTERRUPT_TRIGGER_RISING);
+ watch_register_interrupt_callback(BTN_LIGHT, cb_light_pressed, INTERRUPT_TRIGGER_RISING);
+ watch_register_extwake_callback(BTN_ALARM, cb_alarm_pressed, true);
+
+ watch_enable_buzzer();
+ watch_enable_leds();
+ watch_enable_display();
+
+ watch_rtc_register_tick_callback(cb_tick);
+}
+
+void app_prepare_for_standby() {
+}
+
+void app_wake_from_standby() {
+}
+
+void update_tick_frequency() {
+ watch_rtc_disable_all_periodic_callbacks();
+ if (application_state.mode == MODE_BEATS) {
+ watch_rtc_register_periodic_callback(cb_fast_tick, BEAT_REFRESH_FREQUENCY);
+ } else {
+ watch_rtc_register_tick_callback(cb_tick);
+ }
+}
+
+bool app_loop() {
+ // play a beep if the mode has changed in response to a user's press of the MODE button
+ if (application_state.mode_changed) {
+ // low note for nonzero case, high note for return to clock
+ watch_buzzer_play_note(application_state.mode ? BUZZER_NOTE_C7 : BUZZER_NOTE_C8, 100);
+ update_tick_frequency();
+ application_state.mode_changed = false;
+ }
+
+ // If the user is not in clock mode and the mode timeout has expired, return them to clock mode
+ if (application_state.mode != MODE_CLOCK && application_state.mode_ticks == 0) {
+ application_state.mode = MODE_CLOCK;
+ application_state.mode_changed = true;
+ update_tick_frequency();
+ }
+
+ // If the LED is off and should be on, turn it on
+ if (application_state.light_ticks > 0 && !application_state.led_on) {
+ watch_set_led_green();
+ application_state.led_on = true;
+ }
+
+ // if the LED is on and should be off, turn it off
+ if (application_state.led_on && application_state.light_ticks == 0) {
+ // unless the user is holding down the LIGHT button, in which case, give them more time.
+ if (watch_get_pin_level(BTN_LIGHT)) {
+ application_state.light_ticks = 3;
+ } else {
+ watch_set_led_off();
+ application_state.led_on = false;
+ }
+ }
+
+ switch (application_state.mode) {
+ case MODE_CLOCK:
+ do_clock_mode();
+ break;
+ case MODE_BEATS:
+ do_beats_mode();
+ break;
+ case MODE_SET:
+ do_set_time_mode();
+ break;
+ case NUM_MODES:
+ // dummy case, just silences a warning
+ break;
+ }
+
+ application_state.mode_changed = false;
+
+ return true;
+}
+
+void do_clock_mode() {
+ watch_date_time date_time = watch_rtc_get_date_time();
+ const char months[12][3] = {"JA", "FE", "MR", "AR", "MA", "JN", "JL", "AU", "SE", "OC", "NO", "dE"};
+
+ watch_display_string((char *)months[date_time.unit.month - 1], 0);
+ sprintf(buf, "%2d%2d%02d%02d", date_time.unit.day, date_time.unit.hour, date_time.unit.minute, date_time.unit.second);
+ watch_display_string(buf, 2);
+ watch_set_colon();
+
+}
+
+void do_beats_mode() {
+ watch_clear_colon();
+
+ watch_date_time date_time = watch_rtc_get_date_time();
+ float beats = clock2beats(date_time.unit.hour, date_time.unit.minute, date_time.unit.second, UTC_OFFSET);
+ sprintf(buf, "bt %6.0f", beats * 100);
+
+ watch_display_string(buf, 0);
+}
+
+float clock2beats(uint16_t hours, uint16_t minutes, uint16_t seconds, int16_t utc_offset) {
+ float beats = seconds + ((float)application_state.subsecond / (float)BEAT_REFRESH_FREQUENCY);
+ beats += 60 * minutes;
+ beats += (float)hours * 60 * 60;
+ beats += (utc_offset + 1) * 60 * 60; // offset from utc + 1 since beats in in UTC+1
+
+ beats /= 86.4; // convert to beats
+ while(beats > 1000) beats -= 1000; // beats %= 1000 but for a float
+
+ return beats;
+}
+
+void do_set_time_mode() {
+ watch_date_time date_time = watch_rtc_get_date_time();
+
+ watch_display_string(" ", 0);
+ switch (application_state.page) {
+ case 0: // hour
+ sprintf(buf, "ST t%2d", date_time.unit.hour);
+ break;
+ case 1: // minute
+ sprintf(buf, "ST t %02d", date_time.unit.minute);
+ break;
+ case 2: // second
+ sprintf(buf, "ST t %02d", date_time.unit.second);
+ break;
+ case 3: // year
+ sprintf(buf, "ST d%2d", date_time.unit.year + 20);
+ break;
+ case 4: // month
+ sprintf(buf, "ST d %02d", date_time.unit.month);
+ break;
+ case 5: // day
+ sprintf(buf, "ST d %02d", date_time.unit.day);
+ break;
+ }
+ watch_display_string(buf, 0);
+ watch_set_pixel(1, 12); // required for T in position 1
+}
+
+void set_time_mode_handle_primary_button() {
+ application_state.page++;
+ if (application_state.page == 6) application_state.page = 0;
+}
+
+void set_time_mode_handle_secondary_button() {
+ watch_date_time date_time = watch_rtc_get_date_time();
+ const uint8_t days_in_month[12] = {31, 28, 31, 30, 31, 30, 30, 31, 30, 31, 30, 31};
+
+ switch (application_state.page) {
+ case 0: // hour
+ date_time.unit.hour = (date_time.unit.hour + 1) % 24;
+ break;
+ case 1: // minute
+ date_time.unit.minute = (date_time.unit.minute + 1) % 60;
+ break;
+ case 2: // second
+ date_time.unit.second = 0;
+ break;
+ case 3: // year
+ // only allow 2021-2030. fix this sometime next decade
+ date_time.unit.year = ((date_time.unit.year % 10) + 1);
+ break;
+ case 4: // month
+ date_time.unit.month = ((date_time.unit.month + 1) % 12);
+ break;
+ case 5: // day
+ date_time.unit.day = date_time.unit.day + 1;
+ // can't set to the 29th on a leap year. if it's february 29, set to 11:59 on the 28th.
+ // and it should roll over.
+ if (date_time.unit.day > days_in_month[date_time.unit.month - 1]) {
+ date_time.unit.day = 1;
+ }
+ break;
+ }
+ watch_rtc_set_date_time(date_time);
+}
+
+void cb_mode_pressed() {
+ application_state.mode = (application_state.mode + 1) % NUM_MODES;
+ application_state.mode_changed = true;
+ application_state.mode_ticks = 300;
+ application_state.page = 0;
+}
+
+void cb_light_pressed() {
+ switch (application_state.mode) {
+ case MODE_SET:
+ set_time_mode_handle_secondary_button();
+ break;
+ default:
+ application_state.light_ticks = 3;
+ break;
+ }
+}
+
+void cb_alarm_pressed() {
+ switch (application_state.mode) {
+ case MODE_SET:
+ set_time_mode_handle_primary_button();
+ break;
+ default:
+ break;
+ }
+}
+
+void cb_tick() {
+ if (application_state.light_ticks > 0) {
+ application_state.light_ticks--;
+ }
+ if (application_state.mode_ticks > 0) {
+ application_state.mode_ticks--;
+ }
+}
+
+void cb_fast_tick() {
+ watch_date_time date_time = watch_rtc_get_date_time();
+ if (date_time.unit.second != application_state.last_second) {
+ application_state.last_second = date_time.unit.second;
+ application_state.subsecond = 0;
+ } else {
+ application_state.subsecond++;
+ }
+}
diff --git a/apps/beats-time/make/.gitignore b/apps/beats-time/make/.gitignore
new file mode 100755
index 00000000..3722ac63
--- /dev/null
+++ b/apps/beats-time/make/.gitignore
@@ -0,0 +1 @@
+build/
diff --git a/apps/beats-time/make/Makefile b/apps/beats-time/make/Makefile
new file mode 100755
index 00000000..112d8e50
--- /dev/null
+++ b/apps/beats-time/make/Makefile
@@ -0,0 +1,24 @@
+# Leave this line at the top of the file; it has all the watch library sources and includes.
+TOP = ../../..
+include $(TOP)/make.mk
+
+# If you add any other subdirectories with header files you wish to include, add them after ../
+# Note that you will need to add a backslash at the end of any line you wish to continue, i.e.
+# INCLUDES += \
+# -I../ \
+# -I../drivers/ \
+# -I../utils/
+INCLUDES += \
+ -I../ \
+
+# If you add any other source files you wish to compile, add them after ../app.c
+# Note that you will need to add a backslash at the end of any line you wish to continue, i.e.
+# SRCS += \
+# ../app.c \
+# ../drivers/bmp280.c \
+# ../utils/temperature.c
+SRCS += \
+ ../app.c \
+
+# Leave this line at the bottom of the file; it has all the targets for making your project.
+include $(TOP)/rules.mk
diff --git a/boards/OSO-MISC-21-013/pins.h b/boards/OSO-FEAL-A1-00/pins.h
index 66e4bdc2..c860911f 100644
--- a/boards/OSO-MISC-21-013/pins.h
+++ b/boards/OSO-FEAL-A1-00/pins.h
@@ -19,14 +19,14 @@
// LEDs
#define WATCH_INVERT_LED_POLARITY
-#define RED GPIO(GPIO_PORTB, 22)
-#define WATCH_RED_TCC_PINMUX PINMUX_PB22F_TCC0_WO2
-#define WATCH_RED_TCC_CHANNEL 2
+#define RED GPIO(GPIO_PORTA, 4)
+#define WATCH_RED_TCC_CHANNEL 0
+#define WATCH_RED_TCC_PINMUX PINMUX_PA04E_TCC0_WO0
#ifdef WATCH_SWAP_LED_PINS
- #define GREEN GPIO(GPIO_PORTA, 4)
- #define WATCH_GREEN_TCC_CHANNEL 0
- #define WATCH_GREEN_TCC_PINMUX PINMUX_PA04E_TCC0_WO0
+ #define GREEN GPIO(GPIO_PORTB, 22)
+ #define WATCH_GREEN_TCC_CHANNEL 2
+ #define WATCH_GREEN_TCC_PINMUX PINMUX_PB22F_TCC0_WO2
#else
#define GREEN GPIO(GPIO_PORTB, 23)
#define WATCH_GREEN_TCC_CHANNEL 3
@@ -62,6 +62,42 @@
#define SLCD24 GPIO(GPIO_PORTA, 21)
#define SLCD25 GPIO(GPIO_PORTA, 22)
#define SLCD26 GPIO(GPIO_PORTA, 23)
+// This board uses a slightly different pin mapping from the standard watch, and it's not enough to
+// just declare the pins. We also have to set the LCD Pin Enable register with the SLCD pins we're
+// using. These numbers are not port/pin numbers, but the "SLCD/LP[x]" numbers in the pinmux table.
+// If not defined in pins.h, the LCD driver will fall back to the pin mapping in hpl_slcd_config.h.
+// LPENL is for pins SLCD/LP[0..31].
+#define CONF_SLCD_LPENL (\
+ (uint32_t)1 << 0 | \
+ (uint32_t)1 << 1 | \
+ (uint32_t)1 << 2 | \
+ (uint32_t)1 << 3 | \
+ (uint32_t)1 << 5 | \
+ (uint32_t)1 << 6 | \
+ (uint32_t)1 << 11 | \
+ (uint32_t)1 << 12 | \
+ (uint32_t)1 << 13 | \
+ (uint32_t)1 << 14 | \
+ (uint32_t)1 << 21 | \
+ (uint32_t)1 << 22 | \
+ (uint32_t)1 << 23 | \
+ (uint32_t)1 << 24 | \
+ (uint32_t)1 << 25 | \
+ (uint32_t)1 << 30 | \
+ (uint32_t)1 << 31 | 0)
+// LPENH is for pins SLCD/LP[32..51], where bit 0 represents pin 32.
+#define CONF_SLCD_LPENH (\
+ (uint32_t)1 << (32 - 32) | \
+ (uint32_t)1 << (33 - 32) | \
+ (uint32_t)1 << (34 - 32) | \
+ (uint32_t)1 << (35 - 32) | \
+ (uint32_t)1 << (42 - 32) | \
+ (uint32_t)1 << (43 - 32) | \
+ (uint32_t)1 << (48 - 32) | \
+ (uint32_t)1 << (49 - 32) | \
+ (uint32_t)1 << (50 - 32) | \
+ (uint32_t)1 << (51 - 32) | 0)
+
// 9-pin connector
#define A0 GPIO(GPIO_PORTB, 4)
diff --git a/make.mk b/make.mk
index 461bef79..c9ef6534 100644
--- a/make.mk
+++ b/make.mk
@@ -31,8 +31,6 @@ LDFLAGS += -mcpu=cortex-m0plus -mthumb
LDFLAGS += -Wl,--gc-sections
LDFLAGS += -Wl,--script=$(TOP)//watch-library/linker/saml22j18.ld
-# If you add any additional directories with headers, add them to this list, e.g.
-# ../drivers/
INCLUDES += \
-I$(TOP)/tinyusb/src \
-I$(TOP)/boards/$(BOARD) \
@@ -54,7 +52,6 @@ INCLUDES += \
-I$(TOP)/watch-library/hpl/oscctrl/ \
-I$(TOP)/watch-library/hpl/pm/ \
-I$(TOP)/watch-library/hpl/port/ \
- -I$(TOP)/watch-library/hpl/rtc/ \
-I$(TOP)/watch-library/hpl/sercom/ \
-I$(TOP)/watch-library/hpl/slcd/ \
-I$(TOP)/watch-library/hpl/systick/ \
@@ -64,8 +61,6 @@ INCLUDES += \
-I$(TOP)/watch-library/watch/ \
-I$(TOP)/watch-library
-# If you add any additional C files to your project, add them each to this list, e.g.
-# ../drivers/st25dv.c
SRCS += \
$(TOP)/tinyusb/src/tusb.c \
$(TOP)/tinyusb/src/common/tusb_fifo.c \
@@ -76,9 +71,20 @@ SRCS += \
$(TOP)/watch-library/main.c \
$(TOP)/watch-library/startup_saml22.c \
$(TOP)/watch-library/hw/driver_init.c \
+ $(TOP)/watch-library/watch/watch_rtc.c \
+ $(TOP)/watch-library/watch/watch_slcd.c \
+ $(TOP)/watch-library/watch/watch_extint.c \
+ $(TOP)/watch-library/watch/watch_led.c \
+ $(TOP)/watch-library/watch/watch_buzzer.c \
+ $(TOP)/watch-library/watch/watch_adc.c \
+ $(TOP)/watch-library/watch/watch_gpio.c \
+ $(TOP)/watch-library/watch/watch_i2c.c \
+ $(TOP)/watch-library/watch/watch_uart.c \
+ $(TOP)/watch-library/watch/watch_deepsleep.c \
+ $(TOP)/watch-library/watch/watch_utility.c \
+ $(TOP)/watch-library/watch/watch_private.c \
$(TOP)/watch-library/watch/watch.c \
$(TOP)/watch-library/hal/src/hal_atomic.c \
- $(TOP)/watch-library/hal/src/hal_calendar.c \
$(TOP)/watch-library/hal/src/hal_delay.c \
$(TOP)/watch-library/hal/src/hal_ext_irq.c \
$(TOP)/watch-library/hal/src/hal_gpio.c \
@@ -100,7 +106,6 @@ SRCS += \
$(TOP)/watch-library/hpl/osc32kctrl/hpl_osc32kctrl.c \
$(TOP)/watch-library/hpl/oscctrl/hpl_oscctrl.c \
$(TOP)/watch-library/hpl/pm/hpl_pm.c \
- $(TOP)/watch-library/hpl/rtc/hpl_rtc.c \
$(TOP)/watch-library/hpl/sercom/hpl_sercom.c \
$(TOP)/watch-library/hpl/slcd/hpl_slcd.c \
$(TOP)/watch-library/hpl/systick/hpl_systick.c \
@@ -112,3 +117,7 @@ DEFINES += \
ifeq ($(LED), BLUE)
CFLAGS += -DWATCH_SWAP_LED_PINS
endif
+
+ifeq ($(BOARD), OSO-FEAL-A1-00)
+CFLAGS += -DCRYSTALLESS
+endif
diff --git a/movement/README.md b/movement/README.md
new file mode 100644
index 00000000..009234f8
--- /dev/null
+++ b/movement/README.md
@@ -0,0 +1,297 @@
+Movement: the community watch face app
+======================================
+
+The Sensor Watch Library allows you to write your own bare-metal applications for the Sensor Watch. This is great if you want full control over the code running on the device, but it also means that you may have to implement your own UI for many common tasks like setting the time or illuminating the screen.
+
+**Movement** is an application that manages the display of different screens of content on the watch. These screens are called **watch faces**. Watch faces can be passive displays of information like a clock or a calendar, or they can be fully interactive user interfaces like the Preferences face, which allows the user to customize Movement's behavior. Movement handles the instantiation of your watch face and manages transitions between screens. It also provides a low-power sleep mode, triggered after a period of inactivity, to preserve the watch battery.
+
+Several faces are provided that offer baseline functionality like a clock, a settings screen and an interface for setting the time. You can change and reorder the watch faces that Movement displays by editing `movement_config.h`, and you can write your own watch face using the guidance in this document.
+
+Watch Face API
+--------------
+
+You can implement a watch face using just four functions:
+
+* `watch_face_setup`
+* `watch_face_activate`
+* `watch_face_loop`
+* `watch_face_resign`
+
+A fifth optional function, `watch_face_wants_background_task`, has not yet had its implementation ironed out, but it will be added to the guide at a later date.
+
+To create a new watch face, you should create a new C header and source file in the watch-faces folder (i.e. for a watch face that displays moon phases: `moon_phase_face.h`, `moon_phase_face.c`), and implement these functions with your own unique prefix (i.e. `moon_phase_face_setup`). Then declare your watch face in your header file as follows:
+
+```c
+static const watch_face_t moon_phase_face = {
+ moon_phase_face_setup,
+ moon_phase_face_activate,
+ moon_phase_face_loop,
+ moon_phase_face_resign,
+ NULL // or moon_phase_face_wants_background_task, if you implemented this function
+};
+```
+
+This section will go over how each function works. The section headings use the watch_face prefix, but know that you should implement each function with your own prefix as described above.
+
+### watch_face_setup
+
+If you have worked with Arduino, this function is similar to setup() in that it is called at first boot. In our case, it is also called when waking from sleep mode. You will be passed three parameters:
+
+* `settings` - a pointer to the global Movement settings. You can use this to inform how you present your display to the user (i.e. taking into account whether they have silenced the buttons, or if they prefer 12 or 24-hour mode). You can also change these settings if you like.
+* `position` - The 0-indexed position of your watch face in the list of faces.
+* `context_ptr` - A pointer to a pointer. On first run, the pointee will be NULL. If you need to keep track of any state within your watch face, you should check if it is NULL, and if so, set its value to a pointer to some value or struct that will keep track of that state. For example, the Preferences face needs to keep track of which page the user is viewing (just an integer), whereas the Pulsometer face needs to track several different properties in a struct.
+
+Beyond setting up the context pointer, you may want to configure any peripherals that your watch face requires; for example, a temperature watch face that reads a thermistor output may want to configure the ADC here. Still, to save power, you should avoid leaving the peripheral enabled, and wait to set pin function in the activate function.
+
+It was mentioned above but it's worth mentioning again: this function will be called again after waking from sleep mode, since sleep mode disables all of the device's pins and peripherals. This would give the temperature watch face a chance to re-configure the ADC.
+
+### watch_face_activate
+
+This function is called just before your watch enters the foreground. If your watch face has any segments or text that is always displayed, you may want to set that here. In addition, if your watch face depends on data from a peripheral (like that temperature watch face), you will likely want to enable that peripheral and set any required pin modes here. This function is also passed a pointer to the settings and your application context.
+
+### watch_face_loop
+
+This is a lot like your loop() function in Arduinoland in that it is called repeatedly whenever your watch face is on screen. There is one crucial difference though: it is called less often. By default, this function is called once per second, and in response to events like button presses. You can request a more frequent tick interval by calling `movement_request_tick_frequency` with any power of 2 from 1 to 128.
+
+In addition to the settings and context, this function receives another parameter: an `event`. This is a struct containing information about the event that triggered the update. You mostly need to check the `event_type` to determine what kind of event triggered the loop. A detailed list of all events is provided at the bottom of this document.
+
+There is also a `subsecond` property on the event that contains the fractional second of the event. If you are using 1 Hz updates, subsecond will always be 0.
+
+You should set up a switch statement that handles, at the very least, the `EVENT_TICK` and `EVENT_MODE_BUTTON_UP` event types. The mode button up event occurs when the user presses the MODE button. **Your loop function SHOULD call the movement_move_to_next_face function in response to this event.** If you have a good reason to override this behavior (e.g. your user interface requires all three buttons), your watch face MUST call the movement_move_to_next_face function in response to the EVENT_MODE_LONG_PRESS event. If you fail to do this, the user will become stuck on your watch face.
+
+### watch_face_resign
+
+This function is called just before your watch face goes off screen. You should disable any peripherals you enabled in `watch_face_activate`. If you requested a tick frequency other than 1 Hz at any point in your code, **you must reset it to 1 Hz when you resign**. The watch_face_resign function is passed the same settings and context as the other functions.
+
+Putting it into practice: the Pulsometer watch face
+---------------------------------------------------
+
+Let's take a look at a watch face to see how these pieces fit together. A *pulsometer* is [a mechanical watch complication designed to determine someone's pulse](https://www.ablogtowatch.com/longines-pulsometer-chronograph-watch/) by counting their heartbeats: you start the pulsometer, count heartbeats, and stop it when you reach the specified number. The needle will point to the pulse rate.
+
+Let's implement a pulsometer for the Sensor Watch. These files are in the repository as `pulsometer_face.h` and `pulsometer_face.c`, but we'll walk through them inline here.
+
+### pulsometer_face.h
+
+First, let's take a look at the header file. First we include the Movement header file, which defines the various types we need to build a watch face:
+
+```c
+#include "movement.h"
+```
+
+The pulsometer needs to track certain state to do its job, so we define a struct to contain our watch face's context:
+
+```c
+typedef struct {
+ bool measuring;
+ int16_t pulse;
+ int16_t ticks;
+} pulsometer_state_t;
+```
+
+Finally, we define the four required functions, and define the watch face struct that users will use to add the face to their watch:
+
+```c
+void pulsometer_face_setup(movement_settings_t *settings, void ** context_ptr);
+void pulsometer_face_activate(movement_settings_t *settings, void *context);
+bool pulsometer_face_loop(movement_event_t event, movement_settings_t *settings, void *context);
+void pulsometer_face_resign(movement_settings_t *settings, void *context);
+
+static const watch_face_t pulsometer_face = {
+ pulsometer_face_setup,
+ pulsometer_face_activate,
+ pulsometer_face_loop,
+ pulsometer_face_resign,
+ NULL
+};
+```
+
+### pulsometer_face.c
+
+Now let's look at the implementation of the Pulsometer face. First up, we have a couple of definitions that we'll reference in the code:
+
+```c
+#define PULSOMETER_FACE_FREQUENCY_FACTOR (4ul) // refresh rate will be 2 to this power Hz (0 for 1 Hz, 2 for 4 Hz, etc.)
+#define PULSOMETER_FACE_FREQUENCY (1 << PULSOMETER_FACE_FREQUENCY_FACTOR)
+```
+
+These define the tick frequency: when the pulsometer widget is updating the screen, it will request 16 Hz updates (2^4).
+
+#### Watch Face Setup
+
+```c
+void pulsometer_face_setup(movement_settings_t *settings, void ** context_ptr) {
+ (void) settings;
+ if (*context_ptr == NULL) *context_ptr = malloc(sizeof(pulsometer_state_t));
+}
+```
+
+The `(void) settings;` line just silences a compiler warning about the unused parameter. The next line checks if the context pointer is NULL, and if so, allocates a `pulsometer_state_t`-sized chunk of memory to hold our state.
+
+#### Watch Face Activation
+
+```c
+void pulsometer_face_activate(movement_settings_t *settings, void *context) {
+ (void) settings;
+ memset(context, 0, sizeof(pulsometer_state_t));
+}
+```
+
+The pulsometer face doesn't need to keep track of context in between appearances; there's no need to keep displaying an old pulse reading hours or days after it was taken. So this line just sets the context to all zeroes before the watch face goes on screen.
+
+#### Watch Face Loop
+
+Next we have the loop function. First things first: it fetches our application context, and casts it to a `pulsometer_state_t` type so we can make use of it. It also creates a buffer for any text we plan to put on screen, and declares a switch statement for handling events:
+
+```c
+bool pulsometer_face_loop(movement_event_t event, movement_settings_t *settings, void *context) {
+ (void) settings;
+ pulsometer_state_t *pulsometer_state = (pulsometer_state_t *)context;
+ char buf[14];
+ switch (event.event_type) {
+```
+
+Let's go through each case one by one. In response to the user releasing the MODE button, we tell Movement to move to the next watch face.
+
+```c
+case EVENT_MODE_BUTTON_UP:
+ movement_move_to_next_face();
+ break;
+```
+
+Similarly in response to the user pressing the LIGHT button, we tell Movement to illuminate the LED. Movement does not do this automatically, in case your watch face UI has another use for the LIGHT button.
+
+```c
+case EVENT_LIGHT_BUTTON_DOWN:
+ movement_illuminate_led();
+ break;
+```
+
+The ALARM button is the main button the user will use to interact with the pulsometer. In response to the user pressing the ALARM button, we begin a measurement. We also request a faster tick frequency, so that we can update the display at 16 Hz.
+
+```c
+case EVENT_ALARM_BUTTON_DOWN:
+ pulsometer_state->measuring = true;
+ pulsometer_state->pulse = 0xFFFF;
+ pulsometer_state->ticks = 0;
+ movement_request_tick_frequency(PULSOMETER_FACE_FREQUENCY);
+ break;
+```
+
+When the user releases the ALARM button, we finish the measurement. We also scale the update frequency back down to 1 Hz.
+
+```c
+case EVENT_ALARM_BUTTON_UP:
+case EVENT_ALARM_LONG_PRESS:
+ pulsometer_state->measuring = false;
+ movement_request_tick_frequency(1);
+ break;
+```
+
+The tick event handler is long, but handles all display updates. The first half of this conditional handles the case where we haven't yet measured anything: it just loops through five screens with instructions, and increments the tick count.
+
+```c
+case EVENT_TICK:
+ if (pulsometer_state->pulse == 0 && !pulsometer_state->measuring) {
+ switch (pulsometer_state->ticks % 5) {
+ case 0:
+ watch_display_string(" Hold ", 2);
+ break;
+ case 1:
+ watch_display_string(" Alarn", 4);
+ break;
+ case 2:
+ watch_display_string("+ Count ", 0);
+ break;
+ case 3:
+ watch_display_string(" 30Beats ", 0);
+ break;
+ case 4:
+ watch_clear_display();
+ break;
+ }
+ pulsometer_state->ticks = (pulsometer_state->ticks + 1) % 5;
+```
+
+The second half of the conditional handles the case where we are measuring or have a measurement to display. It does the math, updates the screen, and increments the tick count if needed.
+
+```c
+ } else {
+ if (pulsometer_state->measuring && pulsometer_state->ticks) {
+ pulsometer_state->pulse = (int16_t)((30.0 * ((float)(60 << PULSOMETER_FACE_FREQUENCY_FACTOR) / (float)pulsometer_state->ticks)) + 0.5);
+ }
+ if (pulsometer_state->pulse > 240) {
+ watch_display_string(" Hi", 0);
+ } else if (pulsometer_state->pulse < 40) {
+ watch_display_string(" Lo", 0);
+ } else {
+ sprintf(buf, " %-3dbpn", pulsometer_state->pulse);
+ watch_display_string(buf, 0);
+ }
+ if (pulsometer_state->measuring) pulsometer_state->ticks++;
+ }
+ break;
+```
+
+Finally, the timeout event. After a period of inactivity (configurable from one to thirty minutes), Movement will send this event to indicate that the user has not interacted with your watch face in some time. Watch faces do not need to resign when they receive the timeout event, but depending on what kind of information your watch face displays, you may want to resign by asking Movement to return to the first watch face (usually a clock). The pulsometer widget has no need to remain on screen, so it opts to return to the clock when it receives the timeout event.
+
+```c
+case EVENT_TIMEOUT:
+ movement_move_to_face(0);
+ break;
+```
+
+#### Watch Face Resignation
+
+The resign function doesn't have to do much here; it just resets the tick frequency to 1 Hz.
+
+```c
+void pulsometer_face_resign(movement_settings_t *settings, void *context) {
+ (void) settings;
+ (void) context;
+ movement_request_tick_frequency(1);
+}
+```
+
+And that's that!
+
+Low Energy Mode
+---------------
+
+To save energy, the watch enters a low energy mode after a timeout period (confugurable from 1 hour to 7 days). In this mode, the watch will turn off all pins and peripherals except for the screen and real-time clock, and will wake up once a minute to allow the current watch face to update its display.
+
+Movement Event Types
+--------------------
+
+### EVENT_ACTIVATE
+
+You will receive this event when your watch face is entering the foreground. You can treat it like a tick event and just update the display.
+
+### EVENT_TICK
+
+This is the most common event type. Your watch face is being called as a result of the real-time clock ticking. By default this tick occurs once per second, but you can request more frequent updates.
+
+### EVENT_LIGHT_BUTTON_DOWN, EVENT_MODE_BUTTON_DOWN, EVENT_ALARM_BUTTON_DOWN
+
+Your watch face receives these events when one of the buttons is initially depressed, but before it is released.
+
+### EVENT_LIGHT_BUTTON_UP, EVENT_MODE_BUTTON_UP, EVENT_ALARM_BUTTON_UP
+
+Your watch face receives these events when one of these buttons is released quickly after being depressed (i.e. held for less than one second).
+
+### EVENT_LIGHT_LONG_PRESS, EVENT_MODE_LONG_PRESS, EVENT_ALARM_LONG_PRESS
+
+Your watch face receives these events when one of these buttons is released after having been held down for more than two seconds.
+
+### EVENT_TIMEOUT
+
+Your watch face receives this event after it has has been inactive for a while. You may want to resign here, depending on your watch face's intended use case.
+
+### EVENT_LOW_ENERGY_UPDATE
+
+If your watch face is in the foreground when the watch goes into low energy mode, you will receive an `EVENT_LOW_ENERGY_UPDATE` event once a minute (at the top of the minute) so that you can update the screen. Note however that when you receive this event, all pins and peripherals other than the RTC will have been disabled to save energy. If your display is clock or calendar oriented, this is fine. But if your display requires polling an I2C sensor or reading a value with the ADC, you won't be able to do this. You should either display the name of the watch face in response to the low power tick, or ensure that you resign before low power mode triggers (you can do this by calling `movement_move_to_face(0)` in your `EVENT_TIMEOUT` handler).
+
+**Your watch face MUST NOT wake up peripherals in response to a low energy update event.** The purpose of this mode is to consume as little energy as possible during the (potentially long) intervals when it's unlikely the user is wearing or looking at the watch.
+
+### EVENT_BACKGROUND_TASK
+
+The `EVENT_BACKGROUND_TASK` event is not yet implemented, but the plan is for this event type to allow waking peripherals even in low power mode. More information will be added in a future version of this guide.
diff --git a/movement/make/.gitignore b/movement/make/.gitignore
new file mode 100755
index 00000000..3722ac63
--- /dev/null
+++ b/movement/make/.gitignore
@@ -0,0 +1 @@
+build/
diff --git a/movement/make/Makefile b/movement/make/Makefile
new file mode 100755
index 00000000..a937222b
--- /dev/null
+++ b/movement/make/Makefile
@@ -0,0 +1,39 @@
+# Leave this line at the top of the file; it has all the watch library sources and includes.
+TOP = ../..
+include $(TOP)/make.mk
+
+# If you add any other subdirectories with header files you wish to include, add them after ../
+# Note that you will need to add a backslash at the end of any line you wish to continue, i.e.
+# INCLUDES += \
+# -I../ \
+# -I../drivers/ \
+# -I../watch_faces/fitness/
+INCLUDES += \
+ -I../ \
+ -I../watch_faces/ \
+ -I../watch_faces/clock/ \
+ -I../watch_faces/settings/ \
+ -I../watch_faces/complications/ \
+ -I../watch_faces/thermistor/ \
+ -I../watch_faces/demos/ \
+
+# If you add any other source files you wish to compile, add them after ../app.c
+# Note that you will need to add a backslash at the end of any line you wish to continue, i.e.
+# SRCS += \
+# ../movement.c \
+# ../drivers/lis2dh.c \
+# ../watch_faces/fitness/step_count_face.c
+SRCS += \
+ ../movement.c \
+ ../watch_faces/clock/simple_clock_face.c \
+ ../watch_faces/settings/preferences_face.c \
+ ../watch_faces/settings/set_time_face.c \
+ ../watch_faces/complications/pulsometer_face.c \
+ ../watch_faces/thermistor/thermistor_driver.c \
+ ../watch_faces/thermistor/thermistor_readout_face.c \
+ ../watch_faces/thermistor/thermistor_logging_face.c \
+ ../watch_faces/demos/character_set_face.c \
+ ../watch_faces/complications/beats_face.c \
+
+# Leave this line at the bottom of the file; it has all the targets for making your project.
+include $(TOP)/rules.mk
diff --git a/movement/movement.c b/movement/movement.c
new file mode 100644
index 00000000..5622f17f
--- /dev/null
+++ b/movement/movement.c
@@ -0,0 +1,244 @@
+#include <stdio.h>
+#include <string.h>
+#include <limits.h>
+#include "watch.h"
+#include "movement.h"
+#include "movement_config.h"
+
+movement_state_t movement_state;
+void * watch_face_contexts[MOVEMENT_NUM_FACES];
+const int32_t movement_le_inactivity_deadlines[8] = {INT_MAX, 3600, 7200, 21600, 43200, 86400, 172800, 604800};
+const int32_t movement_timeout_inactivity_deadlines[4] = {60, 120, 300, 1800};
+movement_event_t event;
+
+void cb_mode_btn_interrupt();
+void cb_light_btn_interrupt();
+void cb_alarm_btn_interrupt();
+void cb_alarm_btn_extwake();
+void cb_alarm_fired();
+void cb_tick();
+
+static inline void _movement_reset_inactivity_countdown() {
+ movement_state.le_mode_ticks = movement_le_inactivity_deadlines[movement_state.settings.bit.le_interval];
+ movement_state.timeout_ticks = movement_timeout_inactivity_deadlines[movement_state.settings.bit.to_interval];
+}
+
+void _movement_handle_background_tasks() {
+ for(uint8_t i = 0; i < MOVEMENT_NUM_FACES; i++) {
+ // For each face, if the watch face wants a background task...
+ if (watch_faces[i].wants_background_task != NULL && watch_faces[i].wants_background_task(&movement_state.settings, watch_face_contexts[i])) {
+ // ...we give it one. pretty straightforward!
+ movement_event_t background_event = { EVENT_BACKGROUND_TASK, 0 };
+ watch_faces[i].loop(background_event, &movement_state.settings, watch_face_contexts[i]);
+ }
+ }
+ movement_state.needs_background_tasks_handled = false;
+}
+
+void movement_request_tick_frequency(uint8_t freq) {
+ watch_rtc_disable_all_periodic_callbacks();
+ movement_state.subsecond = 0;
+ movement_state.tick_frequency = freq;
+ watch_rtc_register_periodic_callback(cb_tick, freq);
+}
+
+void movement_illuminate_led() {
+ watch_set_led_color(movement_state.settings.bit.led_red_color ? (0xF | movement_state.settings.bit.led_red_color << 4) : 0,
+ movement_state.settings.bit.led_green_color ? (0xF | movement_state.settings.bit.led_green_color << 4) : 0);
+ movement_state.led_on = true;
+ movement_state.light_ticks = movement_state.settings.bit.led_duration * 2;
+}
+
+void movement_move_to_face(uint8_t watch_face_index) {
+ movement_state.watch_face_changed = true;
+ movement_state.next_watch_face = watch_face_index;
+}
+
+void movement_move_to_next_face() {
+ movement_move_to_face((movement_state.current_watch_face + 1) % MOVEMENT_NUM_FACES);
+}
+
+void app_init() {
+ memset(&movement_state, 0, sizeof(movement_state));
+
+ movement_state.settings.bit.led_green_color = 0xF;
+ movement_state.settings.bit.button_should_sound = true;
+ movement_state.settings.bit.le_interval = 1;
+ movement_state.settings.bit.led_duration = 1;
+ _movement_reset_inactivity_countdown();
+}
+
+void app_wake_from_backup() {
+ // This app does not support BACKUP mode.
+}
+
+void app_setup() {
+ static bool is_first_launch = true;
+
+ if (is_first_launch) {
+ for(uint8_t i = 0; i < MOVEMENT_NUM_FACES; i++) {
+ watch_face_contexts[i] = NULL;
+ is_first_launch = false;
+ }
+
+ // set up the 1 minute alarm (for background tasks and low power updates)
+ watch_date_time alarm_time;
+ alarm_time.reg = 0;
+ alarm_time.unit.second = 59; // after a match, the alarm fires at the next rising edge of CLK_RTC_CNT, so 59 seconds lets us update at :00
+ watch_rtc_register_alarm_callback(cb_alarm_fired, alarm_time, ALARM_MATCH_SS);
+ }
+ if (movement_state.le_mode_ticks != -1) {
+ watch_disable_extwake_interrupt(BTN_ALARM);
+
+ watch_enable_external_interrupts();
+ watch_register_interrupt_callback(BTN_MODE, cb_mode_btn_interrupt, INTERRUPT_TRIGGER_BOTH);
+ watch_register_interrupt_callback(BTN_LIGHT, cb_light_btn_interrupt, INTERRUPT_TRIGGER_BOTH);
+ watch_register_interrupt_callback(BTN_ALARM, cb_alarm_btn_interrupt, INTERRUPT_TRIGGER_BOTH);
+
+ watch_enable_buzzer();
+ watch_enable_leds();
+ watch_enable_display();
+
+ movement_request_tick_frequency(1);
+
+ for(uint8_t i = 0; i < MOVEMENT_NUM_FACES; i++) {
+ watch_faces[i].setup(&movement_state.settings, &watch_face_contexts[i]);
+ }
+
+ watch_faces[0].activate(&movement_state.settings, watch_face_contexts[0]);
+ event.subsecond = 0;
+ event.event_type = EVENT_ACTIVATE;
+ }
+}
+
+void app_prepare_for_standby() {
+}
+
+void app_wake_from_standby() {
+}
+
+bool app_loop() {
+ if (movement_state.watch_face_changed) {
+ if (movement_state.settings.bit.button_should_sound) {
+ // low note for nonzero case, high note for return to watch_face 0
+ watch_buzzer_play_note(movement_state.next_watch_face ? BUZZER_NOTE_C7 : BUZZER_NOTE_C8, 50);
+ }
+ watch_faces[movement_state.current_watch_face].resign(&movement_state.settings, watch_face_contexts[movement_state.current_watch_face]);
+ movement_state.current_watch_face = movement_state.next_watch_face;
+ watch_clear_display();
+ watch_faces[movement_state.current_watch_face].activate(&movement_state.settings, watch_face_contexts[movement_state.current_watch_face]);
+ event.subsecond = 0;
+ event.event_type = EVENT_ACTIVATE;
+ movement_state.watch_face_changed = false;
+ }
+
+ // if the LED is on and should be off, turn it off
+ if (movement_state.led_on && movement_state.light_ticks == 0) {
+ // unless the user is holding down the LIGHT button, in which case, give them more time.
+ if (watch_get_pin_level(BTN_LIGHT)) {
+ movement_state.light_ticks = 3;
+ } else {
+ watch_set_led_off();
+ movement_state.led_on = false;
+ }
+ }
+
+ // if we have timed out of our timeout countdown, give the app a hint that they can resign.
+ if (movement_state.timeout_ticks == 0) {
+ event.event_type = EVENT_TIMEOUT;
+ }
+
+ // handle background tasks, if the alarm handler told us we need to
+ if (movement_state.needs_background_tasks_handled) _movement_handle_background_tasks();
+
+ // if we have timed out of our low energy mode countdown, enter low energy mode.
+ if (movement_state.le_mode_ticks == 0) {
+ movement_state.le_mode_ticks = -1;
+ watch_register_extwake_callback(BTN_ALARM, cb_alarm_btn_extwake, true);
+ event.event_type = EVENT_NONE;
+ event.subsecond = 0;
+
+ // this is a little mini-runloop.
+ // as long as le_mode_ticks is -1 (i.e. we are in low energy mode), we wake up here, update the screen, and go right back to sleep.
+ while (movement_state.le_mode_ticks == -1) {
+ // we also have to handle background tasks here in the mini-runloop
+ if (movement_state.needs_background_tasks_handled) _movement_handle_background_tasks();
+
+ event.event_type = EVENT_LOW_ENERGY_UPDATE;
+ watch_faces[movement_state.current_watch_face].loop(event, &movement_state.settings, watch_face_contexts[movement_state.current_watch_face]);
+ watch_enter_sleep_mode();
+ }
+ // as soon as le_mode_ticks is reset by the extwake handler, we bail out of the loop and reactivate ourselves.
+ event.event_type = EVENT_ACTIVATE;
+ // this is a hack tho: waking from sleep mode, app_setup does get called, but it happens before we have reset our ticks.
+ // need to figure out if there's a better heuristic for determining how we woke up.
+ app_setup();
+ }
+
+ static bool can_sleep = true;
+
+ if (event.event_type) {
+ event.subsecond = movement_state.subsecond;
+ can_sleep = watch_faces[movement_state.current_watch_face].loop(event, &movement_state.settings, watch_face_contexts[movement_state.current_watch_face]);
+ event.event_type = EVENT_NONE;
+ event.subsecond = 0;
+ }
+
+ return can_sleep && !movement_state.led_on;
+}
+
+movement_event_type_t _figure_out_button_event(movement_event_type_t button_down_event_type, uint8_t *down_timestamp) {
+ watch_date_time date_time = watch_rtc_get_date_time();
+ if (*down_timestamp) {
+ uint8_t diff = ((61 + date_time.unit.second) - *down_timestamp) % 60;
+ *down_timestamp = 0;
+ if (diff > 1) return button_down_event_type + 2;
+ else return button_down_event_type + 1;
+ } else {
+ *down_timestamp = date_time.unit.second + 1;
+ return button_down_event_type;
+ }
+}
+
+void cb_light_btn_interrupt() {
+ _movement_reset_inactivity_countdown();
+ event.event_type = _figure_out_button_event(EVENT_LIGHT_BUTTON_DOWN, &movement_state.light_down_timestamp);
+}
+
+void cb_mode_btn_interrupt() {
+ _movement_reset_inactivity_countdown();
+ event.event_type = _figure_out_button_event(EVENT_MODE_BUTTON_DOWN, &movement_state.mode_down_timestamp);
+}
+
+void cb_alarm_btn_interrupt() {
+ _movement_reset_inactivity_countdown();
+ event.event_type = _figure_out_button_event(EVENT_ALARM_BUTTON_DOWN, &movement_state.alarm_down_timestamp);
+}
+
+void cb_alarm_btn_extwake() {
+ // wake up!
+ _movement_reset_inactivity_countdown();
+}
+
+void cb_alarm_fired() {
+ movement_state.needs_background_tasks_handled = true;
+}
+
+void cb_tick() {
+ event.event_type = EVENT_TICK;
+ watch_date_time date_time = watch_rtc_get_date_time();
+ if (date_time.unit.second != movement_state.last_second) {
+ // TODO: since we time the LED with the 1 Hz tick, the actual time lit can vary depending on whether the
+ // user hit it just before or just after a tick. If we time this with the system tick we can do better.
+ if (movement_state.light_ticks) movement_state.light_ticks--;
+
+ // TODO: can we consolidate these two ticks?
+ if (movement_state.settings.bit.le_interval && movement_state.le_mode_ticks > 0) movement_state.le_mode_ticks--;
+ if (movement_state.timeout_ticks > 0) movement_state.timeout_ticks--;
+
+ movement_state.last_second = date_time.unit.second;
+ movement_state.subsecond = 0;
+ } else {
+ movement_state.subsecond++;
+ }
+}
diff --git a/movement/movement.h b/movement/movement.h
new file mode 100644
index 00000000..cb162b95
--- /dev/null
+++ b/movement/movement.h
@@ -0,0 +1,190 @@
+#ifndef MOVEMENT_H_
+#define MOVEMENT_H_
+#include <stdio.h>
+#include <stdbool.h>
+
+// TODO: none of this is implemented
+typedef union {
+ struct {
+ uint32_t reserved : 14;
+ uint32_t button_should_sound : 1; // if true, pressing a button emits a sound.
+ uint32_t to_interval : 2; // an inactivity interval for asking the active face to resign.
+ uint32_t le_interval : 3; // 0 to disable low energy mode, or an inactivity interval for going into low energy mode.
+ uint32_t led_duration : 2; // how many seconds to shine the LED for (x2), or 0 to disable it.
+ uint32_t led_red_color : 4; // for general purpose illumination, the red LED value (0-15)
+ uint32_t led_green_color : 4; // for general purpose illumination, the green LED value (0-15)
+
+ // while Movement itself doesn't implement a clock or display units, it may make sense to include some
+ // global settings for watch faces to check. The 12/24 hour preference could inform a clock or a
+ // time-oriented complication like a sunrise/sunset timer, and a simple locale preference could tell an
+ // altimeter to display feet or meters as easily as it tells a thermometer to display degrees in F or C.
+ uint32_t clock_mode_24h : 1; // indicates whether clock should use 12 or 24 hour mode.
+ uint32_t use_imperial_units : 1; // indicates whether to use metric units (the default) or imperial.
+ } bit;
+ uint32_t value;
+} movement_settings_t;
+
+typedef enum {
+ EVENT_NONE = 0, // There is no event to report.
+ EVENT_ACTIVATE, // Your watch face is entering the foreground.
+ EVENT_TICK, // Most common event type. Your watch face is being called from the tick callback.
+ EVENT_LOW_ENERGY_UPDATE, // If the watch is in low energy mode and you are in the foreground, you will get a chance to update the display once per minute.
+ EVENT_BACKGROUND_TASK, // Your watch face is being invoked to perform a background task. Don't update the display here; you may not be in the foreground.
+ EVENT_TIMEOUT, // Your watch face has been inactive for a while. You may want to resign, depending on your watch face's intended use case.
+ EVENT_LIGHT_BUTTON_DOWN, // The light button has been pressed, but not yet released.
+ EVENT_LIGHT_BUTTON_UP, // The light button was pressed and released.
+ EVENT_LIGHT_LONG_PRESS, // The light button was held for >2 seconds, and released.
+ EVENT_MODE_BUTTON_DOWN, // The mode button has been pressed, but not yet released.
+ EVENT_MODE_BUTTON_UP, // The mode button was pressed and released.
+ EVENT_MODE_LONG_PRESS, // The mode button was held for >2 seconds, and released.
+ EVENT_ALARM_BUTTON_DOWN, // The alarm button has been pressed, but not yet released.
+ EVENT_ALARM_BUTTON_UP, // The alarm button was pressed and released.
+ EVENT_ALARM_LONG_PRESS, // The alarm button was held for >2 seconds, and released.
+} movement_event_type_t;
+
+typedef struct {
+ uint8_t event_type;
+ uint8_t subsecond;
+} movement_event_t;
+
+/** @brief Perform setup for your watch face.
+ * @details It's tempting to say this is 'one-time' setup, but technically this function is called more than
+ * once. When the watch first boots, this function is called with a NULL context_ptr, indicating
+ * that it is the first run. At this time you should set context_ptr to something non-NULL if you
+ * need to keep track of any state in your watch face. If your watch face requires any other setup,
+ * like configuring a pin mode or a peripheral, you may want to do that here too.
+ * This function will be called again after waking from sleep mode, since sleep mode disables all
+ * of the device's pins and peripherals.
+ * @param settings A pointer to the global Movement settings. You can use this to inform how you present your
+ * display to the user (i.e. taking into account whether they have silenced the buttons, or if
+ * they prefer 12 or 24-hour mode). You can also change these settings if you like.
+ * @param context_ptr A pointer to a pointer; at first invocation, this value will be NULL, and you can set it
+ * to any value you like. Subsequent invocations will pass in whatever value you previously
+ * set. You may want to check if this is NULL and if so, allocate some space to store any
+ * data required for your watch face.
+ *
+ */
+typedef void (*watch_face_setup)(movement_settings_t *settings, void ** context_ptr);
+
+/** @brief Prepare to go on-screen.
+ * @details This function is called just before your watch enters the foreground. If your watch face has any
+ * segments or text that is always displayed, you may want to set that here. In addition, if your
+ * watch face depends on data from a peripheral (like an I2C sensor), you will likely want to enable
+ * that peripheral here. In addition, if your watch face requires an update frequncy other than 1 Hz,
+ * you may want to request that here using the movement_request_tick_frequency function.
+ * @param settings A pointer to the global Movement settings. @see watch_face_setup.
+ * @param context A pointer to your watch face's context. @see watch_face_setup.
+ *
+ */
+typedef void (*watch_face_activate)(movement_settings_t *settings, void *context);
+
+/** @brief Handle events and update the display.
+ * @details This function is called in response to an event. You should set up a switch statement that handles,
+ * at the very least, the EVENT_TICK and EVENT_MODE_BUTTON_UP event types. The tick event happens once
+ * per second (or more frequently if you asked for a faster tick with movement_request_tick_frequency).
+ * The mode button up event occurs when the user presses the MODE button. **Your loop function SHOULD
+ * call the movement_move_to_next_face function in response to this event.** If you have a good reason
+ * to override this behavior (e.g. your user interface requires all three buttons), your watch face MUST
+ * call the movement_move_to_next_face function in response to the EVENT_MODE_LONG_PRESS event. If you
+ * fail to do this, the user will become stuck on your watch face.
+ * @param event A struct containing information about the event, including its type. @see movement_event_type_t
+ * for a list of all possible event types.
+ * @param settings A pointer to the global Movement settings. @see watch_face_setup.
+ * @param context A pointer to your application's context. @see watch_face_setup.
+ * @return true if Movement can enter STANDBY mode; false to keep it awake. You should almost always return true.
+ * @note There are two event types that require some extra thought:
+ The EVENT_LOW_ENERGY_UPDATE event type is a special case. If you are in the foreground when the watch
+ goes into low energy mode, you will receive this tick once a minute (at the top of the minute) so that
+ you can update the screen. Great! But! When you receive this event, all pins and peripherals other than
+ the RTC will have been disabled to save energy. If your display is clock or calendar oriented, this is
+ fine. But if your display requires polling an I2C sensor or reading a value with the ADC, you won't be
+ able to do this. You should either display the name of the watch face in response to the low power tick,
+ or ensure that you resign before low power mode triggers, (e.g. by calling movement_move_to_face(0)).
+ **Your watch face MUST NOT wake up peripherals in response to a low power tick.** The purpose of this
+ mode is to consume as little energy as possible during the (potentially long) intervals when it's
+ unlikely the user is wearing or looking at the watch.
+ EVENT_BACKGROUND_TASK is also a special case. @see watch_face_wants_background_task for details.
+ */
+typedef bool (*watch_face_loop)(movement_event_t event, movement_settings_t *settings, void *context);
+
+/** @brief Prepare to go off-screen.
+ * @details This function is called before your watch face enters the background. If you requested a tick
+ * frequency other than the standard 1 Hz, **you must call movement_request_tick_frequency(1) here**
+ * to reset to 1 Hz. You should also disable any peripherals you enabled when you entered the foreground.
+ * @param settings A pointer to the global Movement settings. @see watch_face_setup.
+ * @param context A pointer to your application's context. @see watch_face_setup.
+ */
+typedef void (*watch_face_resign)(movement_settings_t *settings, void *context);
+
+/** @brief OPTIONAL. Request an opportunity to run a background task.
+ * @warning NOT YET IMPLEMENTED.
+ * @details Most apps will not need this function, but if you provide it, Movement will call it once per minute in
+ * both active and low power modes, regardless of whether your app is in the foreground. You can check the
+ * current time to determine whether you require a background task. If you return true here, Movement will
+ * immediately call your loop function with an EVENT_BACKGROUND_TASK event. Note that it will not call your
+ * activate or deactivate functions, since you are not going on screen.
+ *
+ * Examples of background tasks:
+ * - Wake and play a sound when an alarm or timer has been triggered.
+ * - Check the state of an RTC interrupt pin or the timestamp of an RTC interrupt event.
+ * - Log a data point from a sensor, and then return to sleep mode.
+ *
+ * Guidelines for background tasks:
+ * - Assume all peripherals and pins other than the RTC will be disabled when you get an EVENT_BACKGROUND_TASK.
+ * - Even if your background task involves only the RTC peripheral, try to request background tasks sparingly.
+ * - If your background task involves an external pin or peripheral, request background tasks no more than once per hour.
+ * - If you need to enable a pin or a peripheral to perform your task, return it to its original state afterwards.
+ *
+ * @param settings A pointer to the global Movement settings. @see watch_face_setup.
+ * @param context A pointer to your application's context. @see watch_face_setup.
+ * @return true to request a background task; false otherwise.
+ */
+typedef bool (*watch_face_wants_background_task)(movement_settings_t *settings, void *context);
+
+typedef struct {
+ watch_face_setup setup;
+ watch_face_activate activate;
+ watch_face_loop loop;
+ watch_face_resign resign;
+ watch_face_wants_background_task wants_background_task;
+} watch_face_t;
+
+typedef struct {
+ // properties stored in BACKUP register
+ movement_settings_t settings;
+
+ // transient properties
+ int16_t current_watch_face;
+ int16_t next_watch_face;
+ bool watch_face_changed;
+
+ // LED stuff
+ uint8_t light_ticks;
+ bool led_on;
+
+ // button tracking for long press
+ uint8_t light_down_timestamp;
+ uint8_t mode_down_timestamp;
+ uint8_t alarm_down_timestamp;
+
+ // background task handling
+ bool needs_background_tasks_handled;
+
+ // low energy mode countdown
+ int32_t le_mode_ticks;
+
+ // app resignation countdown (TODO: consolidate with LE countdown?)
+ int16_t timeout_ticks;
+
+ // stuff for subsecond tracking
+ uint8_t tick_frequency;
+ uint8_t last_second;
+ uint8_t subsecond;
+} movement_state_t;
+
+void movement_move_to_face(uint8_t watch_face_index);
+void movement_move_to_next_face();
+void movement_illuminate_led();
+void movement_request_tick_frequency(uint8_t freq);
+
+#endif // MOVEMENT_H_
diff --git a/movement/movement_config.h b/movement/movement_config.h
new file mode 100644
index 00000000..3e911477
--- /dev/null
+++ b/movement/movement_config.h
@@ -0,0 +1,21 @@
+#ifndef MOVEMENT_CONFIG_H_
+#define MOVEMENT_CONFIG_H_
+
+#include "simple_clock_face.h"
+#include "preferences_face.h"
+#include "set_time_face.h"
+#include "pulsometer_face.h"
+#include "thermistor_readout_face.h"
+#include "thermistor_logging_face.h"
+#include "character_set_face.h"
+#include "beats_face.h"
+
+const watch_face_t watch_faces[] = {
+ simple_clock_face,
+ preferences_face,
+ set_time_face,
+};
+
+#define MOVEMENT_NUM_FACES (sizeof(watch_faces) / sizeof(watch_face_t))
+
+#endif // MOVEMENT_CONFIG_H_
diff --git a/movement/watch_faces/clock/simple_clock_face.c b/movement/watch_faces/clock/simple_clock_face.c
new file mode 100644
index 00000000..9e279d95
--- /dev/null
+++ b/movement/watch_faces/clock/simple_clock_face.c
@@ -0,0 +1,85 @@
+#include <stdlib.h>
+#include "simple_clock_face.h"
+#include "watch.h"
+#include "watch_utility.h"
+
+void simple_clock_face_setup(movement_settings_t *settings, void ** context_ptr) {
+ (void) settings;
+ // the only context we need is the timestamp of the previous tick.
+ if (*context_ptr == NULL) *context_ptr = malloc(sizeof(uint32_t));
+}
+
+void simple_clock_face_activate(movement_settings_t *settings, void *context) {
+ if (watch_tick_animation_is_running()) watch_stop_tick_animation();
+
+ if (settings->bit.clock_mode_24h) watch_set_indicator(WATCH_INDICATOR_24H);
+
+ watch_set_colon();
+ // this ensures that none of the timestamp fields will match, so we can re-render them all.
+ *((uint32_t *)context) = 0xFFFFFFFF;
+}
+
+bool simple_clock_face_loop(movement_event_t event, movement_settings_t *settings, void *context) {
+ char buf[11];
+ uint8_t pos;
+
+ watch_date_time date_time;
+ uint32_t previous_date_time;
+ switch (event.event_type) {
+ case EVENT_ACTIVATE:
+ case EVENT_TICK:
+ case EVENT_TIMEOUT:
+ case EVENT_LOW_ENERGY_UPDATE:
+ date_time = watch_rtc_get_date_time();
+ previous_date_time = *((uint32_t *)context);
+ *((uint32_t *)context) = date_time.reg;
+
+ if (date_time.reg >> 6 == previous_date_time >> 6 && event.event_type != EVENT_LOW_ENERGY_UPDATE) {
+ // everything before seconds is the same, don't waste cycles setting those segments.
+ pos = 8;
+ sprintf(buf, "%02d", date_time.unit.second);
+ } else if (date_time.reg >> 12 == previous_date_time >> 12 && event.event_type != EVENT_LOW_ENERGY_UPDATE) {
+ // everything before minutes is the same.
+ pos = 6;
+ sprintf(buf, "%02d%02d", date_time.unit.minute, date_time.unit.second);
+ } else {
+ // other stuff changed; let's do it all.
+ if (!settings->bit.clock_mode_24h) {
+ // if we are in 12 hour mode, do some cleanup.
+ if (date_time.unit.hour < 12) {
+ watch_clear_indicator(WATCH_INDICATOR_PM);
+ } else {
+ watch_set_indicator(WATCH_INDICATOR_PM);
+ }
+ date_time.unit.hour %= 12;
+ if (date_time.unit.hour == 0) date_time.unit.hour = 12;
+ }
+ pos = 0;
+ if (event.event_type == EVENT_LOW_ENERGY_UPDATE) {
+ if (!watch_tick_animation_is_running()) watch_start_tick_animation(500);
+ sprintf(buf, "%s%2d%2d%02d ", watch_utility_get_weekday(date_time), date_time.unit.day, date_time.unit.hour, date_time.unit.minute);
+ } else {
+ sprintf(buf, "%s%2d%2d%02d%02d", watch_utility_get_weekday(date_time), date_time.unit.day, date_time.unit.hour, date_time.unit.minute, date_time.unit.second);
+ }
+ }
+ watch_display_string(buf, pos);
+ break;
+ case EVENT_MODE_BUTTON_UP:
+ movement_move_to_next_face();
+ return false;
+ case EVENT_LIGHT_BUTTON_DOWN:
+ movement_illuminate_led();
+ break;
+ case EVENT_ALARM_BUTTON_UP:
+ break;
+ default:
+ break;
+ }
+
+ return true;
+}
+
+void simple_clock_face_resign(movement_settings_t *settings, void *context) {
+ (void) settings;
+ (void) context;
+}
diff --git a/movement/watch_faces/clock/simple_clock_face.h b/movement/watch_faces/clock/simple_clock_face.h
new file mode 100644
index 00000000..3db894d2
--- /dev/null
+++ b/movement/watch_faces/clock/simple_clock_face.h
@@ -0,0 +1,21 @@
+#ifndef SIMPLE_CLOCK_FACE_H_
+#define SIMPLE_CLOCK_FACE_H_
+
+#include "movement.h"
+
+void simple_clock_face_setup(movement_settings_t *settings, void ** context_ptr);
+void simple_clock_face_activate(movement_settings_t *settings, void *context);
+bool simple_clock_face_loop(movement_event_t event, movement_settings_t *settings, void *context);
+void simple_clock_face_resign(movement_settings_t *settings, void *context);
+
+uint8_t simple_clock_face_get_weekday(uint16_t day, uint16_t month, uint16_t year);
+
+static const watch_face_t simple_clock_face = {
+ simple_clock_face_setup,
+ simple_clock_face_activate,
+ simple_clock_face_loop,
+ simple_clock_face_resign,
+ NULL
+};
+
+#endif // SIMPLE_CLOCK_FACE_H_ \ No newline at end of file
diff --git a/movement/watch_faces/complications/beats_face.c b/movement/watch_faces/complications/beats_face.c
new file mode 100644
index 00000000..73a82719
--- /dev/null
+++ b/movement/watch_faces/complications/beats_face.c
@@ -0,0 +1,75 @@
+#include <stdlib.h>
+#include <string.h>
+#include "beats_face.h"
+#include "watch.h"
+
+const uint8_t UTC_OFFSET = 4; // set to your current UTC offset to see correct beats time
+const uint8_t BEAT_REFRESH_FREQUENCY = 8;
+
+void beats_face_setup(movement_settings_t *settings, void ** context_ptr) {
+ (void) settings;
+ (void) context_ptr;
+}
+
+void beats_face_activate(movement_settings_t *settings, void *context) {
+ (void) settings;
+ (void) context;
+ movement_request_tick_frequency(BEAT_REFRESH_FREQUENCY);
+}
+
+bool beats_face_loop(movement_event_t event, movement_settings_t *settings, void *context) {
+ (void) settings;
+ (void) context;
+
+ char buf[14];
+ float beats;
+
+ watch_date_time date_time;
+ switch (event.event_type) {
+ case EVENT_TICK:
+ date_time = watch_rtc_get_date_time();
+ beats = clock2beats(date_time.unit.hour, date_time.unit.minute, date_time.unit.second, event.subsecond, UTC_OFFSET);
+ sprintf(buf, "bt %6.0f", beats * 100);
+
+ watch_display_string(buf, 0);
+ break;
+ case EVENT_LOW_ENERGY_UPDATE:
+ date_time = watch_rtc_get_date_time();
+ beats = clock2beats(date_time.unit.hour, date_time.unit.minute, date_time.unit.second, event.subsecond, UTC_OFFSET);
+ sprintf(buf, "bt %4d ", (int)beats);
+
+ watch_display_string(buf, 0);
+ break;
+ case EVENT_MODE_BUTTON_UP:
+ movement_move_to_next_face();
+ break;
+ case EVENT_LIGHT_BUTTON_DOWN:
+ movement_illuminate_led();
+ break;
+ case EVENT_ALARM_BUTTON_DOWN:
+ case EVENT_ALARM_BUTTON_UP:
+ case EVENT_ALARM_LONG_PRESS:
+ default:
+ break;
+ }
+
+ return true;
+}
+
+void beats_face_resign(movement_settings_t *settings, void *context) {
+ (void) settings;
+ (void) context;
+ movement_request_tick_frequency(1);
+}
+
+float clock2beats(uint16_t hours, uint16_t minutes, uint16_t seconds, uint16_t subseconds, int16_t utc_offset) {
+ float beats = seconds + ((float)subseconds / (float)BEAT_REFRESH_FREQUENCY);
+ beats += 60 * minutes;
+ beats += (float)hours * 60 * 60;
+ beats += (utc_offset + 1) * 60 * 60; // offset from utc + 1 since beats in in UTC+1
+
+ beats /= 86.4; // convert to beats
+ while(beats > 1000) beats -= 1000; // beats %= 1000 but for a float
+
+ return beats;
+} \ No newline at end of file
diff --git a/movement/watch_faces/complications/beats_face.h b/movement/watch_faces/complications/beats_face.h
new file mode 100644
index 00000000..fe34f5aa
--- /dev/null
+++ b/movement/watch_faces/complications/beats_face.h
@@ -0,0 +1,20 @@
+#ifndef BEATS_FACE_H_
+#define BEATS_FACE_H_
+
+#include "movement.h"
+
+float clock2beats(uint16_t, uint16_t, uint16_t, uint16_t, int16_t);
+void beats_face_setup(movement_settings_t *settings, void ** context_ptr);
+void beats_face_activate(movement_settings_t *settings, void *context);
+bool beats_face_loop(movement_event_t event, movement_settings_t *settings, void *context);
+void beats_face_resign(movement_settings_t *settings, void *context);
+
+static const watch_face_t beats_face = {
+ beats_face_setup,
+ beats_face_activate,
+ beats_face_loop,
+ beats_face_resign,
+ NULL
+};
+
+#endif // BEATS_FACE_H_ \ No newline at end of file
diff --git a/movement/watch_faces/complications/pulsometer_face.c b/movement/watch_faces/complications/pulsometer_face.c
new file mode 100644
index 00000000..d54d8ddf
--- /dev/null
+++ b/movement/watch_faces/complications/pulsometer_face.c
@@ -0,0 +1,90 @@
+#include <stdlib.h>
+#include <string.h>
+#include "pulsometer_face.h"
+#include "watch.h"
+
+#define PULSOMETER_FACE_FREQUENCY_FACTOR (4ul) // refresh rate will be 2 to this power Hz (0 for 1 Hz, 2 for 4 Hz, etc.)
+#define PULSOMETER_FACE_FREQUENCY (1 << PULSOMETER_FACE_FREQUENCY_FACTOR)
+
+void pulsometer_face_setup(movement_settings_t *settings, void ** context_ptr) {
+ (void) settings;
+ if (*context_ptr == NULL) *context_ptr = malloc(sizeof(pulsometer_state_t));
+}
+
+void pulsometer_face_activate(movement_settings_t *settings, void *context) {
+ (void) settings;
+ memset(context, 0, sizeof(pulsometer_state_t));
+}
+
+bool pulsometer_face_loop(movement_event_t event, movement_settings_t *settings, void *context) {
+ (void) settings;
+ pulsometer_state_t *pulsometer_state = (pulsometer_state_t *)context;
+ char buf[14];
+ switch (event.event_type) {
+ case EVENT_MODE_BUTTON_UP:
+ movement_move_to_next_face();
+ break;
+ case EVENT_LIGHT_BUTTON_DOWN:
+ movement_illuminate_led();
+ break;
+ case EVENT_ALARM_BUTTON_DOWN:
+ pulsometer_state->measuring = true;
+ pulsometer_state->pulse = 0xFFFF;
+ pulsometer_state->ticks = 0;
+ movement_request_tick_frequency(PULSOMETER_FACE_FREQUENCY);
+ break;
+ case EVENT_ALARM_BUTTON_UP:
+ case EVENT_ALARM_LONG_PRESS:
+ pulsometer_state->measuring = false;
+ movement_request_tick_frequency(1);
+ break;
+ case EVENT_TICK:
+ if (pulsometer_state->pulse == 0 && !pulsometer_state->measuring) {
+ switch (pulsometer_state->ticks % 5) {
+ case 0:
+ watch_display_string(" Hold ", 2);
+ break;
+ case 1:
+ watch_display_string(" Alarn", 4);
+ break;
+ case 2:
+ watch_display_string("+ Count ", 0);
+ break;
+ case 3:
+ watch_display_string(" 30Beats ", 0);
+ break;
+ case 4:
+ watch_clear_display();
+ break;
+ }
+ pulsometer_state->ticks = (pulsometer_state->ticks + 1) % 5;
+ } else {
+ if (pulsometer_state->measuring && pulsometer_state->ticks) {
+ pulsometer_state->pulse = (int16_t)((30.0 * ((float)(60 << PULSOMETER_FACE_FREQUENCY_FACTOR) / (float)pulsometer_state->ticks)) + 0.5);
+ }
+ if (pulsometer_state->pulse > 240) {
+ watch_display_string(" Hi", 0);
+ } else if (pulsometer_state->pulse < 40) {
+ watch_display_string(" Lo", 0);
+ } else {
+ sprintf(buf, " %-3dbpn", pulsometer_state->pulse);
+ watch_display_string(buf, 0);
+ }
+ if (pulsometer_state->measuring) pulsometer_state->ticks++;
+ }
+ break;
+ case EVENT_TIMEOUT:
+ movement_move_to_face(0);
+ break;
+ default:
+ break;
+ }
+
+ return true;
+}
+
+void pulsometer_face_resign(movement_settings_t *settings, void *context) {
+ (void) settings;
+ (void) context;
+ movement_request_tick_frequency(1);
+}
diff --git a/movement/watch_faces/complications/pulsometer_face.h b/movement/watch_faces/complications/pulsometer_face.h
new file mode 100644
index 00000000..cdb5b977
--- /dev/null
+++ b/movement/watch_faces/complications/pulsometer_face.h
@@ -0,0 +1,25 @@
+#ifndef PULSOMETER_FACE_H_
+#define PULSOMETER_FACE_H_
+
+#include "movement.h"
+
+typedef struct {
+ bool measuring;
+ int16_t pulse;
+ int16_t ticks;
+} pulsometer_state_t;
+
+void pulsometer_face_setup(movement_settings_t *settings, void ** context_ptr);
+void pulsometer_face_activate(movement_settings_t *settings, void *context);
+bool pulsometer_face_loop(movement_event_t event, movement_settings_t *settings, void *context);
+void pulsometer_face_resign(movement_settings_t *settings, void *context);
+
+static const watch_face_t pulsometer_face = {
+ pulsometer_face_setup,
+ pulsometer_face_activate,
+ pulsometer_face_loop,
+ pulsometer_face_resign,
+ NULL
+};
+
+#endif // PULSOMETER_FACE_H_ \ No newline at end of file
diff --git a/movement/watch_faces/demos/character_set_face.c b/movement/watch_faces/demos/character_set_face.c
new file mode 100644
index 00000000..7daea5a9
--- /dev/null
+++ b/movement/watch_faces/demos/character_set_face.c
@@ -0,0 +1,51 @@
+#include <stdlib.h>
+#include <string.h>
+#include "character_set_face.h"
+#include "watch.h"
+
+void character_set_face_setup(movement_settings_t *settings, void ** context_ptr) {
+ (void) settings;
+ if (*context_ptr == NULL) *context_ptr = malloc(sizeof(char));
+}
+
+void character_set_face_activate(movement_settings_t *settings, void *context) {
+ (void) settings;
+ char *c = (char *)context;
+ *c = '@';
+}
+
+bool character_set_face_loop(movement_event_t event, movement_settings_t *settings, void *context) {
+ (void) settings;
+ char *c = (char *)context;
+ char buf[11];
+ switch (event.event_type) {
+ case EVENT_MODE_BUTTON_UP:
+ movement_move_to_next_face();
+ break;
+ case EVENT_LIGHT_BUTTON_DOWN:
+ movement_illuminate_led();
+ break;
+ case EVENT_ALARM_BUTTON_UP:
+ *c = (*c) + 1;
+ if (*c & 0x80) *c = ' ';
+ // fall through
+ case EVENT_ACTIVATE:
+ sprintf(buf, "%c%c%c%c%c%c%c%c%c%c", *c, *c, *c, *c, *c, *c, *c, *c, *c, *c);
+ watch_display_string(buf, 0);
+ break;
+ case EVENT_TICK:
+ break;
+ case EVENT_TIMEOUT:
+ movement_move_to_face(0);
+ break;
+ default:
+ break;
+ }
+
+ return true;
+}
+
+void character_set_face_resign(movement_settings_t *settings, void *context) {
+ (void) settings;
+ (void) context;
+}
diff --git a/movement/watch_faces/demos/character_set_face.h b/movement/watch_faces/demos/character_set_face.h
new file mode 100644
index 00000000..b27a8359
--- /dev/null
+++ b/movement/watch_faces/demos/character_set_face.h
@@ -0,0 +1,19 @@
+#ifndef CHARACTER_SET_FACE_H_
+#define CHARACTER_SET_FACE_H_
+
+#include "movement.h"
+
+void character_set_face_setup(movement_settings_t *settings, void ** context_ptr);
+void character_set_face_activate(movement_settings_t *settings, void *context);
+bool character_set_face_loop(movement_event_t event, movement_settings_t *settings, void *context);
+void character_set_face_resign(movement_settings_t *settings, void *context);
+
+static const watch_face_t character_set_face = {
+ character_set_face_setup,
+ character_set_face_activate,
+ character_set_face_loop,
+ character_set_face_resign,
+ NULL
+};
+
+#endif // CHARACTER_SET_FACE_H_ \ No newline at end of file
diff --git a/movement/watch_faces/settings/preferences_face.c b/movement/watch_faces/settings/preferences_face.c
new file mode 100644
index 00000000..afe71034
--- /dev/null
+++ b/movement/watch_faces/settings/preferences_face.c
@@ -0,0 +1,168 @@
+#include <stdlib.h>
+#include "preferences_face.h"
+#include "watch.h"
+
+#define PREFERENCES_FACE_NUM_PREFEFENCES (7)
+const char preferences_face_titles[PREFERENCES_FACE_NUM_PREFEFENCES][11] = {
+ "CL ", // Clock: 12 or 24 hour
+ "BT Beep ", // Buttons: should they beep?
+ "TO ", // Timeout: how long before we snap back to the clock face?
+ "LE ", // Low Energy mode: how long before it engages?
+ "LT ", // Light: duration
+ "LT grn ", // Light: green component
+ "LT red ", // Light: red component
+};
+
+void preferences_face_setup(movement_settings_t *settings, void ** context_ptr) {
+ (void) settings;
+ if (*context_ptr == NULL) *context_ptr = malloc(sizeof(uint8_t));
+}
+
+void preferences_face_activate(movement_settings_t *settings, void *context) {
+ (void) settings;
+ *((uint8_t *)context) = 0;
+ movement_request_tick_frequency(4); // we need to manually blink some pixels
+}
+
+bool preferences_face_loop(movement_event_t event, movement_settings_t *settings, void *context) {
+ uint8_t current_page = *((uint8_t *)context);
+ switch (event.event_type) {
+ case EVENT_MODE_BUTTON_UP:
+ watch_set_led_off();
+ movement_move_to_next_face();
+ return false;
+ case EVENT_LIGHT_BUTTON_UP:
+ current_page = (current_page + 1) % PREFERENCES_FACE_NUM_PREFEFENCES;
+ *((uint8_t *)context) = current_page;
+ break;
+ case EVENT_ALARM_BUTTON_UP:
+ switch (current_page) {
+ case 0:
+ settings->bit.clock_mode_24h = !(settings->bit.clock_mode_24h);
+ break;
+ case 1:
+ settings->bit.button_should_sound = !(settings->bit.button_should_sound);
+ break;
+ case 2:
+ settings->bit.to_interval = settings->bit.to_interval + 1;
+ break;
+ case 3:
+ settings->bit.le_interval = settings->bit.le_interval + 1;
+ break;
+ case 4:
+ settings->bit.led_duration = settings->bit.led_duration + 1;
+ break;
+ case 5:
+ settings->bit.led_green_color = settings->bit.led_green_color + 1;
+ break;
+ case 6:
+ settings->bit.led_red_color = settings->bit.led_red_color + 1;
+ break;
+ }
+ break;
+ case EVENT_TIMEOUT:
+ movement_move_to_face(0);
+ break;
+ default:
+ break;
+ }
+
+ watch_display_string((char *)preferences_face_titles[current_page], 0);
+
+ // blink active setting on even-numbered quarter-seconds
+ if (event.subsecond % 2) {
+ char buf[8];
+ switch (current_page) {
+ case 0:
+ if (settings->bit.clock_mode_24h) watch_display_string("24h", 4);
+ else watch_display_string("12h", 4);
+ break;
+ case 1:
+ if (settings->bit.button_should_sound) watch_display_string("y", 9);
+ else watch_display_string("n", 9);
+ break;
+ case 2:
+ switch (settings->bit.to_interval) {
+ case 0:
+ watch_display_string("60 sec", 4);
+ break;
+ case 1:
+ watch_display_string("2 n&in", 4);
+ break;
+ case 2:
+ watch_display_string("5 n&in", 4);
+ break;
+ case 3:
+ watch_display_string("30n&in", 4);
+ break;
+ }
+ break;
+ case 3:
+ switch (settings->bit.le_interval) {
+ case 0:
+ watch_display_string(" never", 4);
+ break;
+ case 1:
+ watch_display_string("1 hour", 4);
+ break;
+ case 2:
+ watch_display_string("2 hour", 4);
+ break;
+ case 3:
+ watch_display_string("6 hour", 4);
+ break;
+ case 4:
+ watch_display_string("12 hr", 4);
+ break;
+ case 5:
+ watch_display_string(" 1 day", 4);
+ break;
+ case 6:
+ watch_display_string(" 2 day", 4);
+ break;
+ case 7:
+ watch_display_string(" 7 day", 4);
+ break;
+ }
+ break;
+ case 4:
+ if (settings->bit.led_duration) {
+ // TODO: since we time the LED with the 1 Hz tick, the actual time lit can vary depending
+ // on whether the user hit it just before or just after a tick. so the setting is "1-2 s",
+ // "3-4 s", or "5-6 s". If we time this with the system tick we can do better.
+ // see also cb_tick at the bottom of movement.c
+ sprintf(buf, " %1d-%1d s", settings->bit.led_duration * 2 - 1, settings->bit.led_duration * 2);
+ watch_display_string(buf, 4);
+ } else {
+ watch_display_string("no LEd", 4);
+ }
+ break;
+ case 5:
+ sprintf(buf, "%2d", settings->bit.led_green_color);
+ watch_display_string(buf, 8);
+ break;
+ case 6:
+ sprintf(buf, "%2d", settings->bit.led_red_color);
+ watch_display_string(buf, 8);
+ break;
+ }
+ }
+
+ // on LED color select screns, preview the color.
+ if (current_page >= 5) {
+ watch_set_led_color(settings->bit.led_red_color ? (0xF | settings->bit.led_red_color << 4) : 0,
+ settings->bit.led_green_color ? (0xF | settings->bit.led_green_color << 4) : 0);
+ // return false so the watch stays awake (needed for the PWM driver to function).
+ return false;
+ }
+
+ watch_set_led_off();
+ return true;
+}
+
+void preferences_face_resign(movement_settings_t *settings, void *context) {
+ (void) settings;
+ (void) context;
+ watch_set_led_off();
+ movement_request_tick_frequency(1);
+}
diff --git a/movement/watch_faces/settings/preferences_face.h b/movement/watch_faces/settings/preferences_face.h
new file mode 100644
index 00000000..af628ba3
--- /dev/null
+++ b/movement/watch_faces/settings/preferences_face.h
@@ -0,0 +1,19 @@
+#ifndef PREFERENCES_FACE_H_
+#define PREFERENCES_FACE_H_
+
+#include "movement.h"
+
+void preferences_face_setup(movement_settings_t *settings, void ** context_ptr);
+void preferences_face_activate(movement_settings_t *settings, void *context);
+bool preferences_face_loop(movement_event_t event, movement_settings_t *settings, void *context);
+void preferences_face_resign(movement_settings_t *settings, void *context);
+
+static const watch_face_t preferences_face = {
+ preferences_face_setup,
+ preferences_face_activate,
+ preferences_face_loop,
+ preferences_face_resign,
+ NULL
+};
+
+#endif // PREFERENCES_FACE_H_ \ No newline at end of file
diff --git a/movement/watch_faces/settings/set_time_face.c b/movement/watch_faces/settings/set_time_face.c
new file mode 100644
index 00000000..6b82c68b
--- /dev/null
+++ b/movement/watch_faces/settings/set_time_face.c
@@ -0,0 +1,112 @@
+#include <stdlib.h>
+#include "set_time_face.h"
+#include "watch.h"
+
+#define SET_TIME_FACE_NUM_SETTINGS (6)
+const char set_time_face_titles[SET_TIME_FACE_NUM_SETTINGS][3] = {"HR", "MN", "SE", "YR", "MO", "DA"};
+
+void set_time_face_setup(movement_settings_t *settings, void ** context_ptr) {
+ (void) settings;
+ if (*context_ptr == NULL) *context_ptr = malloc(sizeof(uint8_t));
+}
+
+void set_time_face_activate(movement_settings_t *settings, void *context) {
+ (void) settings;
+ *((uint8_t *)context) = 0;
+ movement_request_tick_frequency(4);
+}
+
+bool set_time_face_loop(movement_event_t event, movement_settings_t *settings, void *context) {
+ uint8_t current_page = *((uint8_t *)context);
+ const uint8_t days_in_month[12] = {31, 28, 31, 30, 31, 30, 30, 31, 30, 31, 30, 31};
+ watch_date_time date_time = watch_rtc_get_date_time();
+
+ switch (event.event_type) {
+ case EVENT_MODE_BUTTON_UP:
+ movement_move_to_next_face();
+ return false;
+ case EVENT_LIGHT_BUTTON_UP:
+ current_page = (current_page + 1) % SET_TIME_FACE_NUM_SETTINGS;
+ *((uint8_t *)context) = current_page;
+ break;
+ case EVENT_ALARM_BUTTON_UP:
+ switch (current_page) {
+ case 0: // hour
+ date_time.unit.hour = (date_time.unit.hour + 1) % 24;
+ break;
+ case 1: // minute
+ date_time.unit.minute = (date_time.unit.minute + 1) % 60;
+ break;
+ case 2: // second
+ date_time.unit.second = 0;
+ break;
+ case 3: // year
+ // only allow 2021-2030. fix this sometime next decade
+ date_time.unit.year = ((date_time.unit.year % 10) + 1);
+ break;
+ case 4: // month
+ date_time.unit.month = (date_time.unit.month % 12) + 1;
+ break;
+ case 5: // day
+ date_time.unit.day = date_time.unit.day + 1;
+ // can't set to the 29th on a leap year. if it's february 29, set to 11:59 on the 28th.
+ // and it should roll over.
+ if (date_time.unit.day > days_in_month[date_time.unit.month - 1]) {
+ date_time.unit.day = 1;
+ }
+ break;
+ }
+ watch_rtc_set_date_time(date_time);
+ break;
+ case EVENT_TIMEOUT:
+ movement_move_to_face(0);
+ break;
+ default:
+ break;
+ }
+
+ char buf[11];
+ if (current_page < 3) {
+ watch_set_colon();
+ if (settings->bit.clock_mode_24h) {
+ watch_set_indicator(WATCH_INDICATOR_24H);
+ sprintf(buf, "%s %2d%02d%02d", set_time_face_titles[current_page], date_time.unit.hour, date_time.unit.minute, date_time.unit.second);
+ } else {
+ sprintf(buf, "%s %2d%02d%02d", set_time_face_titles[current_page], (date_time.unit.hour % 12) ? (date_time.unit.hour % 12) : 12, date_time.unit.minute, date_time.unit.second);
+ if (date_time.unit.hour > 12) watch_set_indicator(WATCH_INDICATOR_PM);
+ else watch_clear_indicator(WATCH_INDICATOR_PM);
+ }
+ } else {
+ watch_clear_colon();
+ watch_clear_indicator(WATCH_INDICATOR_24H);
+ watch_clear_indicator(WATCH_INDICATOR_PM);
+ sprintf(buf, "%s %2d%02d%02d", set_time_face_titles[current_page], date_time.unit.year + 20, date_time.unit.month, date_time.unit.day);
+ }
+ if (event.subsecond % 2) {
+ switch (current_page) {
+ case 0:
+ case 3:
+ buf[4] = buf[5] = ' ';
+ break;
+ case 1:
+ case 4:
+ buf[6] = buf[7] = ' ';
+ break;
+ case 2:
+ case 5:
+ buf[8] = buf[9] = ' ';
+ break;
+ }
+ }
+
+ watch_display_string(buf, 0);
+
+ return true;
+}
+
+void set_time_face_resign(movement_settings_t *settings, void *context) {
+ (void) settings;
+ (void) context;
+ watch_set_led_off();
+ movement_request_tick_frequency(1);
+}
diff --git a/movement/watch_faces/settings/set_time_face.h b/movement/watch_faces/settings/set_time_face.h
new file mode 100644
index 00000000..21fb1e44
--- /dev/null
+++ b/movement/watch_faces/settings/set_time_face.h
@@ -0,0 +1,19 @@
+#ifndef SET_TIME_FACE_H_
+#define SET_TIME_FACE_H_
+
+#include "movement.h"
+
+void set_time_face_setup(movement_settings_t *settings, void ** context_ptr);
+void set_time_face_activate(movement_settings_t *settings, void *context);
+bool set_time_face_loop(movement_event_t event, movement_settings_t *settings, void *context);
+void set_time_face_resign(movement_settings_t *settings, void *context);
+
+static const watch_face_t set_time_face = {
+ set_time_face_setup,
+ set_time_face_activate,
+ set_time_face_loop,
+ set_time_face_resign,
+ NULL
+};
+
+#endif // SET_TIME_FACE_H_
diff --git a/movement/watch_faces/thermistor/thermistor_driver.c b/movement/watch_faces/thermistor/thermistor_driver.c
new file mode 100644
index 00000000..9e5d6fd7
--- /dev/null
+++ b/movement/watch_faces/thermistor/thermistor_driver.c
@@ -0,0 +1,76 @@
+#include "thermistor_driver.h"
+#include "watch.h"
+
+#define THERMISTOR_B_COEFFICIENT (3950.0)
+#define THERMISTOR_NOMINAL_TEMPERATURE (25.0)
+#define THERMISTOR_NOMINAL_RESISTANCE (10000.0)
+#define THERMISTOR_SERIES_RESISTANCE (10000.0)
+
+// TODO: we really need a math library.
+uint32_t msb(uint32_t v);
+double ln(double y);
+
+void thermistor_driver_enable() {
+ // Enable the ADC peripheral, which we'll use to read the thermistor value.
+ watch_enable_adc();
+ // Enable analog circuitry on pin A1, which is tied to the thermistor resistor divider.
+ watch_enable_analog_input(A1);
+ // Enable digital output on A0, which is the power to the thermistor circuit.
+ watch_enable_digital_output(A0);
+}
+
+void thermistor_driver_disable() {
+ // Enable the ADC peripheral, which we'll use to read the thermistor value.
+ watch_disable_adc();
+ // Disable analog circuitry on pin A1 to save power.
+ watch_disable_analog_input(A1);
+ // Disable A0's output circuitry.
+ watch_disable_digital_output(A0);
+}
+
+float thermistor_driver_get_temperature() {
+ // set A0 high to power the thermistor circuit.
+ watch_set_pin_level(A0, true);
+ // get the pin level
+ uint16_t val = watch_get_analog_pin_level(A1);
+ // and then set A0 low to power down the thermistor circuit.
+ watch_set_pin_level(A0, false);
+
+ double reading = (double)val;
+ reading = (1023.0 * THERMISTOR_SERIES_RESISTANCE) / (reading / 64.0);
+ reading -= THERMISTOR_SERIES_RESISTANCE;
+ reading = reading / THERMISTOR_NOMINAL_RESISTANCE;
+ reading = ln(reading);
+ reading /= THERMISTOR_B_COEFFICIENT;
+ reading += 1.0 / (THERMISTOR_NOMINAL_TEMPERATURE + 273.15);
+ reading = 1.0 / reading;
+ reading -= 273.15;
+
+ return reading;
+}
+
+uint32_t msb(uint32_t v) {
+ static const int pos[32] = {0, 1, 28, 2, 29, 14, 24, 3, 30, 22, 20, 15, 25, 17, 4, 8, 31, 27, 13, 23, 21, 19, 16, 7, 26, 12, 18, 6, 11, 5, 10, 9};
+ v |= v >> 1;
+ v |= v >> 2;
+ v |= v >> 4;
+ v |= v >> 8;
+ v |= v >> 16;
+ v = (v >> 1) + 1;
+ return pos[(v * 0x077CB531UL) >> 27];
+}
+
+double ln(double y) {
+ int log2;
+ double divisor, x, result;
+
+ log2 = msb((int)y); // See: https://stackoverflow.com/a/4970859/6630230
+ divisor = (double)(1 << log2);
+ x = y / divisor; // normalized value between [1.0, 2.0]
+
+ result = -1.7417939 + (2.8212026 + (-1.4699568 + (0.44717955 - 0.056570851 * x) * x) * x) * x;
+ result += ((double)log2) * 0.69314718; // ln(2) = 0.69314718
+
+ return result;
+}
+
diff --git a/movement/watch_faces/thermistor/thermistor_driver.h b/movement/watch_faces/thermistor/thermistor_driver.h
new file mode 100644
index 00000000..837eb15b
--- /dev/null
+++ b/movement/watch_faces/thermistor/thermistor_driver.h
@@ -0,0 +1,13 @@
+#ifndef THERMISTOR_DRIVER_H_
+#define THERMISTOR_DRIVER_H_
+
+// NOTE: This implementation is specific to one prototype sensor board, OSO-MISC-21-009, but both
+// the sensor board design and this implementation are likely to change. Thermistor functionality
+// may even end up being baked into the Sensor Watch library. This is all by way of saying this
+// code is very temporary and the thermistor screens will likely get a rewrite in the future.
+
+void thermistor_driver_enable();
+void thermistor_driver_disable();
+float thermistor_driver_get_temperature();
+
+#endif // THERMISTOR_DRIVER_H_
diff --git a/movement/watch_faces/thermistor/thermistor_logging_face.c b/movement/watch_faces/thermistor/thermistor_logging_face.c
new file mode 100644
index 00000000..5351ce88
--- /dev/null
+++ b/movement/watch_faces/thermistor/thermistor_logging_face.c
@@ -0,0 +1,114 @@
+#include <stdlib.h>
+#include <string.h>
+#include "thermistor_logging_face.h"
+#include "thermistor_driver.h"
+#include "watch.h"
+
+void _thermistor_logging_face_log_data(thermistor_logger_state_t *logger_state) {
+ thermistor_driver_enable();
+ watch_date_time date_time = watch_rtc_get_date_time();
+ size_t pos = logger_state->data_points % THERMISTOR_LOGGING_NUM_DATA_POINTS;
+
+ logger_state->data[pos].timestamp.reg = date_time.reg;
+ logger_state->data[pos].temperature_c = thermistor_driver_get_temperature();
+ logger_state->data_points++;
+
+ thermistor_driver_disable();
+}
+
+void _thermistor_logging_face_update_display(thermistor_logger_state_t *logger_state, bool in_fahrenheit, bool clock_mode_24h) {
+ int8_t pos = (logger_state->data_points - 1 - logger_state->display_index) % THERMISTOR_LOGGING_NUM_DATA_POINTS;
+ char buf[14];
+
+ watch_clear_indicator(WATCH_INDICATOR_24H);
+ watch_clear_indicator(WATCH_INDICATOR_PM);
+ watch_clear_colon();
+
+ if (pos < 0) {
+ sprintf(buf, "TL%2dno dat", logger_state->display_index);
+ } else if (logger_state->ts_ticks) {
+ watch_date_time date_time = logger_state->data[pos].timestamp;
+ watch_set_colon();
+ if (clock_mode_24h) {
+ watch_set_indicator(WATCH_INDICATOR_24H);
+ } else {
+ if (date_time.unit.hour > 11) watch_set_indicator(WATCH_INDICATOR_PM);
+ date_time.unit.hour %= 12;
+ if (date_time.unit.hour == 0) date_time.unit.hour = 12;
+ }
+ sprintf(buf, "AT%2d%2d%02d%02d", date_time.unit.day, date_time.unit.hour, date_time.unit.minute, date_time.unit.second);
+ } else {
+ if (in_fahrenheit) {
+ sprintf(buf, "TL%2d%4.1f#F", logger_state->display_index, logger_state->data[pos].temperature_c * 1.8 + 32.0);
+ } else {
+ sprintf(buf, "TL%2d%4.1f#C", logger_state->display_index, logger_state->data[pos].temperature_c);
+ }
+ }
+
+ watch_display_string(buf, 0);
+}
+
+void thermistor_logging_face_setup(movement_settings_t *settings, void ** context_ptr) {
+ (void) settings;
+ if (*context_ptr == NULL) *context_ptr = malloc(sizeof(thermistor_logger_state_t));
+ memset(*context_ptr, 0, sizeof(thermistor_logger_state_t));
+}
+
+void thermistor_logging_face_activate(movement_settings_t *settings, void *context) {
+ (void) settings;
+ thermistor_logger_state_t *logger_state = (thermistor_logger_state_t *)context;
+ logger_state->display_index = 0;
+ logger_state->ts_ticks = 0;
+}
+
+bool thermistor_logging_face_loop(movement_event_t event, movement_settings_t *settings, void *context) {
+ thermistor_logger_state_t *logger_state = (thermistor_logger_state_t *)context;
+ switch (event.event_type) {
+ case EVENT_TIMEOUT:
+ movement_move_to_face(0);
+ break;
+ case EVENT_MODE_BUTTON_UP:
+ movement_move_to_next_face();
+ break;
+ case EVENT_LIGHT_LONG_PRESS:
+ // light button shows the timestamp, but if you need the light, long press it.
+ movement_illuminate_led();
+ break;
+ case EVENT_LIGHT_BUTTON_DOWN:
+ logger_state->ts_ticks = 2;
+ _thermistor_logging_face_update_display(logger_state, settings->bit.use_imperial_units, settings->bit.clock_mode_24h);
+ break;
+ case EVENT_ALARM_BUTTON_DOWN:
+ logger_state->display_index = (logger_state->display_index + 1) % THERMISTOR_LOGGING_NUM_DATA_POINTS;
+ logger_state->ts_ticks = 0;
+ // fall through
+ case EVENT_ACTIVATE:
+ _thermistor_logging_face_update_display(logger_state, settings->bit.use_imperial_units, settings->bit.clock_mode_24h);
+ break;
+ case EVENT_TICK:
+ if (logger_state->ts_ticks && --logger_state->ts_ticks == 0) {
+ _thermistor_logging_face_update_display(logger_state, settings->bit.use_imperial_units, settings->bit.clock_mode_24h);
+ }
+ break;
+ case EVENT_BACKGROUND_TASK:
+ _thermistor_logging_face_log_data(logger_state);
+ break;
+ default:
+ break;
+ }
+
+ return true;
+}
+
+void thermistor_logging_face_resign(movement_settings_t *settings, void *context) {
+ (void) settings;
+ (void) context;
+}
+
+bool thermistor_logging_face_wants_background_task(movement_settings_t *settings, void *context) {
+ (void) settings;
+ (void) context;
+ // this will get called at the top of each minute, so all we check is if we're at the top of the hour as well.
+ // if we are, we ask for a background task.
+ return watch_rtc_get_date_time().unit.minute == 0;
+}
diff --git a/movement/watch_faces/thermistor/thermistor_logging_face.h b/movement/watch_faces/thermistor/thermistor_logging_face.h
new file mode 100644
index 00000000..ece89396
--- /dev/null
+++ b/movement/watch_faces/thermistor/thermistor_logging_face.h
@@ -0,0 +1,35 @@
+#ifndef THERMISTOR_LOGGING_FACE_H_
+#define THERMISTOR_LOGGING_FACE_H_
+
+#include "movement.h"
+#include "watch.h"
+
+#define THERMISTOR_LOGGING_NUM_DATA_POINTS (36)
+
+typedef struct {
+ watch_date_time timestamp;
+ float temperature_c;
+} thermistor_logger_data_point_t;
+
+typedef struct {
+ uint8_t display_index; // the index we are displaying on screen
+ uint8_t ts_ticks; // when the user taps the LIGHT button, we show the timestamp for a few ticks.
+ int32_t data_points; // the absolute number of data points logged
+ thermistor_logger_data_point_t data[THERMISTOR_LOGGING_NUM_DATA_POINTS];
+} thermistor_logger_state_t;
+
+void thermistor_logging_face_setup(movement_settings_t *settings, void ** context_ptr);
+void thermistor_logging_face_activate(movement_settings_t *settings, void *context);
+bool thermistor_logging_face_loop(movement_event_t event, movement_settings_t *settings, void *context);
+void thermistor_logging_face_resign(movement_settings_t *settings, void *context);
+bool thermistor_logging_face_wants_background_task(movement_settings_t *settings, void *context);
+
+static const watch_face_t thermistor_logging_face = {
+ thermistor_logging_face_setup,
+ thermistor_logging_face_activate,
+ thermistor_logging_face_loop,
+ thermistor_logging_face_resign,
+ thermistor_logging_face_wants_background_task
+};
+
+#endif // THERMISTOR_LOGGING_FACE_H_
diff --git a/movement/watch_faces/thermistor/thermistor_readout_face.c b/movement/watch_faces/thermistor/thermistor_readout_face.c
new file mode 100644
index 00000000..5cee2e96
--- /dev/null
+++ b/movement/watch_faces/thermistor/thermistor_readout_face.c
@@ -0,0 +1,73 @@
+#include <stdlib.h>
+#include <string.h>
+#include "thermistor_readout_face.h"
+#include "thermistor_driver.h"
+#include "watch.h"
+
+void _thermistor_readout_face_update_display(bool in_fahrenheit) {
+ thermistor_driver_enable();
+ float temperature_c = thermistor_driver_get_temperature();
+ char buf[14];
+ if (in_fahrenheit) {
+ sprintf(buf, "%4.1f#F", temperature_c * 1.8 + 32.0);
+ } else {
+ sprintf(buf, "%4.1f#C", temperature_c);
+ }
+ watch_display_string(buf, 4);
+ thermistor_driver_disable();
+}
+
+void thermistor_readout_face_setup(movement_settings_t *settings, void ** context_ptr) {
+ (void) settings;
+ (void) context_ptr;
+}
+
+void thermistor_readout_face_activate(movement_settings_t *settings, void *context) {
+ (void) settings;
+ (void) context;
+ watch_display_string("TE", 0);
+}
+
+bool thermistor_readout_face_loop(movement_event_t event, movement_settings_t *settings, void *context) {
+ (void) context;
+ watch_date_time date_time = watch_rtc_get_date_time();
+ switch (event.event_type) {
+ case EVENT_MODE_BUTTON_UP:
+ movement_move_to_next_face();
+ break;
+ case EVENT_LIGHT_BUTTON_DOWN:
+ movement_illuminate_led();
+ break;
+ case EVENT_ALARM_BUTTON_UP:
+ settings->bit.use_imperial_units = !settings->bit.use_imperial_units;
+ _thermistor_readout_face_update_display(settings->bit.use_imperial_units);
+ break;
+ case EVENT_ACTIVATE:
+ // force a measurement to be taken immediately.
+ date_time.unit.second = 0;
+ // fall through
+ case EVENT_TICK:
+ if (date_time.unit.second % 5 == 4) {
+ // Not 100% on this, but I like the idea of using the signal indicator to indicate that we're sensing data.
+ // In this case we turn the indicator on a second before the reading is taken, and clear it when we're done.
+ // In reality the measurement takes a fraction of a second, but this is just to show something is happening.
+ watch_set_indicator(WATCH_INDICATOR_SIGNAL);
+ } else if (date_time.unit.second % 5 == 0) {
+ _thermistor_readout_face_update_display(settings->bit.use_imperial_units);
+ watch_clear_indicator(WATCH_INDICATOR_SIGNAL);
+ }
+ break;
+ case EVENT_TIMEOUT:
+ movement_move_to_face(0);
+ break;
+ default:
+ break;
+ }
+
+ return true;
+}
+
+void thermistor_readout_face_resign(movement_settings_t *settings, void *context) {
+ (void) settings;
+ (void) context;
+}
diff --git a/movement/watch_faces/thermistor/thermistor_readout_face.h b/movement/watch_faces/thermistor/thermistor_readout_face.h
new file mode 100644
index 00000000..71d15427
--- /dev/null
+++ b/movement/watch_faces/thermistor/thermistor_readout_face.h
@@ -0,0 +1,19 @@
+#ifndef THERMISTOR_READOUT_FACE_H_
+#define THERMISTOR_READOUT_FACE_H_
+
+#include "movement.h"
+
+void thermistor_readout_face_setup(movement_settings_t *settings, void ** context_ptr);
+void thermistor_readout_face_activate(movement_settings_t *settings, void *context);
+bool thermistor_readout_face_loop(movement_event_t event, movement_settings_t *settings, void *context);
+void thermistor_readout_face_resign(movement_settings_t *settings, void *context);
+
+static const watch_face_t thermistor_readout_face = {
+ thermistor_readout_face_setup,
+ thermistor_readout_face_activate,
+ thermistor_readout_face_loop,
+ thermistor_readout_face_resign,
+ NULL
+};
+
+#endif // THERMISTOR_READOUT_FACE_H_
diff --git a/watch-library/config/hpl_eic_config.h b/watch-library/config/hpl_eic_config.h
index 46aba150..53fee6cf 100644
--- a/watch-library/config/hpl_eic_config.h
+++ b/watch-library/config/hpl_eic_config.h
@@ -271,7 +271,7 @@
// <i> Indicates whether the external interrupt 5 filter is enabled or not
// <id> eic_arch_filten5
#ifndef CONF_EIC_FILTEN5
-#define CONF_EIC_FILTEN5 0
+#define CONF_EIC_FILTEN5 1
#endif
// <q> External Interrupt 5 Event Output Enable
@@ -723,7 +723,12 @@
// </e>
+// my god this is a hack. need to refactor this out of ASF and into our driver. - joey 10/19
+#ifdef CRYSTALLESS
+#define CONFIG_EIC_EXTINT_MAP {2, PIN_PA02}, {5, PIN_PB05}, {7, PIN_PA07},
+#else
#define CONFIG_EIC_EXTINT_MAP {2, PIN_PA02}, {6, PIN_PA22}, {7, PIN_PA23},
+#endif
// <<< end of configuration section >>>
diff --git a/watch-library/config/hpl_gclk_config.h b/watch-library/config/hpl_gclk_config.h
index c56e2816..ee7aace3 100644
--- a/watch-library/config/hpl_gclk_config.h
+++ b/watch-library/config/hpl_gclk_config.h
@@ -248,9 +248,14 @@
// <i> This defines the clock source for generic clock generator 3
// <id> gclk_gen_3_oscillator
#ifndef CONF_GCLK_GEN_3_SOURCE
+#ifdef CRYSTALLESS
+#define CONF_GCLK_GEN_3_SOURCE GCLK_GENCTRL_SRC_OSCULP32K
+#else
#define CONF_GCLK_GEN_3_SOURCE GCLK_GENCTRL_SRC_XOSC32K
#endif
+#endif
+
// <q> Run in Standby
// <i> Indicates whether Run in Standby is enabled or not
// <id> gclk_arch_gen_3_runstdby
diff --git a/watch-library/config/hpl_osc32kctrl_config.h b/watch-library/config/hpl_osc32kctrl_config.h
index 94b46617..540f1c60 100644
--- a/watch-library/config/hpl_osc32kctrl_config.h
+++ b/watch-library/config/hpl_osc32kctrl_config.h
@@ -17,8 +17,12 @@
// <i> This defines the clock source for RTC
// <id> rtc_source_oscillator
#ifndef CONF_RTCCTRL_SRC
+#ifdef CRYSTALLESS
+#define CONF_RTCCTRL_SRC GCLK_GENCTRL_SRC_OSCULP32K
+#else
#define CONF_RTCCTRL_SRC GCLK_GENCTRL_SRC_XOSC32K
#endif
+#endif
// <q> Use 1 kHz output
// <id> rtc_1khz_selection
diff --git a/watch-library/config/hpl_slcd_config.h b/watch-library/config/hpl_slcd_config.h
index 72213432..33b6a817 100644
--- a/watch-library/config/hpl_slcd_config.h
+++ b/watch-library/config/hpl_slcd_config.h
@@ -6,6 +6,7 @@
#include <hpl_slcd_cm.h>
#include <peripheral_clk_config.h>
+#include "pins.h"
// <h> Standard configuration
@@ -79,7 +80,7 @@
// <3=>128
// <id> slcd_arch_presc
#ifndef CONF_SLCD_PRESC
-#define CONF_SLCD_PRESC 2
+#define CONF_SLCD_PRESC 1
#endif
// <o> Clock Divider
@@ -94,7 +95,7 @@
// <7=>8
// <id> slcd_arch_ckdiv
#ifndef CONF_SLCD_CKDIV
-#define CONF_SLCD_CKDIV 3
+#define CONF_SLCD_CKDIV 5
#endif
/* TODO add frame frequency check */
@@ -2729,15 +2730,40 @@
} \
}
-#define CONF_SLCD_LPENL \
- ((uint32_t)1 << 0 | (uint32_t)1 << 1 | (uint32_t)1 << 2 | (uint32_t)1 << 3 | (uint32_t)1 << 4 | (uint32_t)1 << 5 \
- | (uint32_t)1 << 6 | (uint32_t)1 << 7 | (uint32_t)1 << 11 | (uint32_t)1 << 12 | (uint32_t)1 << 13 \
- | (uint32_t)1 << 14 | (uint32_t)1 << 21 | (uint32_t)1 << 22 | (uint32_t)1 << 23 | (uint32_t)1 << 24 \
- | (uint32_t)1 << 25 | (uint32_t)1 << 28 | (uint32_t)1 << 29 | (uint32_t)1 << 30 | (uint32_t)1 << 31 | 0)
-
-#define CONF_SLCD_LPENH \
- ((uint32_t)1 << 0 | (uint32_t)1 << 1 | (uint32_t)1 << 2 | (uint32_t)1 << 3 | (uint32_t)1 << 10 | (uint32_t)1 << 11 \
- | 0) // </e>
+#ifndef CONF_SLCD_LPENL
+#define CONF_SLCD_LPENL (\
+ (uint32_t)1 << 0 | \
+ (uint32_t)1 << 1 | \
+ (uint32_t)1 << 2 | \
+ (uint32_t)1 << 3 | \
+ (uint32_t)1 << 4 | \
+ (uint32_t)1 << 5 | \
+ (uint32_t)1 << 6 | \
+ (uint32_t)1 << 7 | \
+ (uint32_t)1 << 11 | \
+ (uint32_t)1 << 12 | \
+ (uint32_t)1 << 13 | \
+ (uint32_t)1 << 14 | \
+ (uint32_t)1 << 21 | \
+ (uint32_t)1 << 22 | \
+ (uint32_t)1 << 23 | \
+ (uint32_t)1 << 24 | \
+ (uint32_t)1 << 25 | \
+ (uint32_t)1 << 28 | \
+ (uint32_t)1 << 29 | \
+ (uint32_t)1 << 30 | \
+ (uint32_t)1 << 31 | 0)
+#endif // CONF_SLCD_LPENL
+
+#ifndef CONF_SLCD_LPENH
+#define CONF_SLCD_LPENH (\
+ (uint32_t)1 << (32 - 32) | \
+ (uint32_t)1 << (33 - 32) | \
+ (uint32_t)1 << (34 - 32) | \
+ (uint32_t)1 << (35 - 32) | \
+ (uint32_t)1 << (42 - 32) | \
+ (uint32_t)1 << (43 - 32) | 0)
+#endif // CONF_SLCD_LPENH
// <<< end of configuration section >>>
diff --git a/watch-library/hal/documentation/calendar.rst b/watch-library/hal/documentation/calendar.rst
deleted file mode 100644
index 8a3de6e8..00000000
--- a/watch-library/hal/documentation/calendar.rst
+++ /dev/null
@@ -1,72 +0,0 @@
-===============================
-The Calendar driver (bare-bone)
-===============================
-
-The Calendar driver provides means to set and get current date and time.
-After enabling, an instance of the driver starts counting time from the base date with
-the resolution of one second. The default base date is 00:00:00 1st of January 1970.
-Only the base year of the base date can be changed via the driver API.
-
-The current date and time is kept internally in a relative form as the difference between
-current date and time and the base date and time. This means that changing the base year changes
-current date.
-
-The base date and time defines time "zero" or the earliest possible point in time that the calender driver can describe,
-this means that current time and alarms can not be set to anything earlier than this time.
-
-The Calendar driver provides alarm functionality.
-An alarm is a software trigger which fires on particular date and time with particular periodicity.
-Upon firing the given callback function is called.
-
-An alarm can be in single-shot mode, firing only once at matching time; or in repeating mode, meaning that it will
-reschedule a new alarm automatically based on repeating mode configuration.
-In single-shot mode an alarm is removed from the alarm queue before its callback is called. It allows an application to
-reuse the memory of expired alarm in the callback.
-
-An alarm can be triggered on the following events: match on second, minute, hour, day, month or year.
-Matching on second means that the alarm is triggered when the value of seconds of the current time is equal to
-the alarm's value of seconds. This means repeating alarm with match on seconds is triggered with the period of a minute.
-Matching on minute means that the calendars minute and seconds values has to match the alarms, the rest of the date-time
-value is ignored. In repeating mode this means a new alarm every hour.
-The same logic is applied to match on hour, day, month and year.
-
-Each instance of the Calendar driver supports infinite amount of software alarms, only limited by the amount of RAM available.
-
-Features
---------
-* Initialization and de-initialization
-* Enabling and disabling
-* Date and time operations
-* Software alarms
-
-Applications
-------------
-* A source of current date and time for an embedded system.
-* Periodical functionality in low-power applications since the driver is designed to use 1Hz clock.
-* Periodical function calls in case if it is more convenient to operate with absolute time.
-
-Dependencies
-------------
-* This driver expects a counter to be increased by one every second to count date and time correctly.
-* Each instance of the driver requires separate hardware timer.
-
-Concurrency
------------
-The Calendar driver is an interrupt driven driver.This means that the interrupt that triggers an alarm may occur during
-the process of adding or removing an alarm via the driver's API. In such case the interrupt processing is postponed
-until the alarm adding or removing is complete.
-
-The alarm queue is not protected from the access by interrupts not used by the driver. Due to this
-it is not recommended to add or remove an alarm from such interrupts: in case if a higher priority interrupt supersedes
-the driver's interrupt, adding or removing an alarm may cause unpredictable behavior of the driver.
-
-Limitations
------------
-* Only years divisible by 4 are deemed a leap year, this gives a correct result between the years 1901 to 2099.
-* The driver is designed to work outside of an operating system environment, the software alarm queue is therefore processed in interrupt context which may delay execution of other interrupts.
-* If there are a lot of frequently called interrupts with the priority higher than the driver's one, it may cause delay in alarm's triggering.
-* Changing the base year or setting current date or time does not shift alarms' date and time accordingly or expires alarms.
-
-Knows issues and workarounds
-----------------------------
-Not applicable
diff --git a/watch-library/hal/include/hal_calendar.h b/watch-library/hal/include/hal_calendar.h
index 26949a57..e69de29b 100644
--- a/watch-library/hal/include/hal_calendar.h
+++ b/watch-library/hal/include/hal_calendar.h
@@ -1,159 +0,0 @@
-/**
- * \file
- *
- * \brief Generic CALENDAR functionality declaration.
- *
- * Copyright (c) 2014-2018 Microchip Technology Inc. and its subsidiaries.
- *
- * \asf_license_start
- *
- * \page License
- *
- * Subject to your compliance with these terms, you may use Microchip
- * software and any derivatives exclusively with Microchip products.
- * It is your responsibility to comply with third party license terms applicable
- * to your use of third party software (including open source software) that
- * may accompany Microchip software.
- *
- * THIS SOFTWARE IS SUPPLIED BY MICROCHIP "AS IS". NO WARRANTIES,
- * WHETHER EXPRESS, IMPLIED OR STATUTORY, APPLY TO THIS SOFTWARE,
- * INCLUDING ANY IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY,
- * AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT WILL MICROCHIP BE
- * LIABLE FOR ANY INDIRECT, SPECIAL, PUNITIVE, INCIDENTAL OR CONSEQUENTIAL
- * LOSS, DAMAGE, COST OR EXPENSE OF ANY KIND WHATSOEVER RELATED TO THE
- * SOFTWARE, HOWEVER CAUSED, EVEN IF MICROCHIP HAS BEEN ADVISED OF THE
- * POSSIBILITY OR THE DAMAGES ARE FORESEEABLE. TO THE FULLEST EXTENT
- * ALLOWED BY LAW, MICROCHIP'S TOTAL LIABILITY ON ALL CLAIMS IN ANY WAY
- * RELATED TO THIS SOFTWARE WILL NOT EXCEED THE AMOUNT OF FEES, IF ANY,
- * THAT YOU HAVE PAID DIRECTLY TO MICROCHIP FOR THIS SOFTWARE.
- *
- * \asf_license_stop
- *
- */
-
-#ifndef _HAL_CALENDER_H_INCLUDED
-#define _HAL_CALENDER_H_INCLUDED
-
-#include "hpl_calendar.h"
-#include <utils_list.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/**
- * \addtogroup doc_driver_hal_calendar_async
- *
- *@{
- */
-
-/** \brief Prototype of callback on alarm match
- * \param calendar Pointer to the HAL Calendar instance.
- */
-typedef void (*calendar_cb_alarm_t)(struct calendar_descriptor *const calendar);
-
-/** \brief Struct for alarm time
- */
-struct calendar_alarm {
- struct list_element elem;
- struct _calendar_alarm cal_alarm;
- calendar_cb_alarm_t callback;
-};
-
-/** \brief Initialize the Calendar HAL instance and hardware
- *
- * \param calendar Pointer to the HAL Calendar instance.
- * \param hw Pointer to the hardware instance.
- * \return Operation status of init
- * \retval 0 Completed successfully.
- */
-int32_t calendar_init(struct calendar_descriptor *const calendar, const void *hw);
-
-/** \brief Reset the Calendar HAL instance and hardware
- *
- * Reset Calendar instance to hardware defaults.
- *
- * \param calendar Pointer to the HAL Calendar instance.
- * \return Operation status of reset.
- * \retval 0 Completed successfully.
- */
-int32_t calendar_deinit(struct calendar_descriptor *const calendar);
-
-/** \brief Enable the Calendar HAL instance and hardware
- *
- * \param calendar Pointer to the HAL Calendar instance.
- * \return Operation status of init
- * \retval 0 Completed successfully.
- */
-int32_t calendar_enable(struct calendar_descriptor *const calendar);
-
-/** \brief Disable the Calendar HAL instance and hardware
- *
- * Disable Calendar instance to hardware defaults.
- *
- * \param calendar Pointer to the HAL Calendar instance.
- * \return Operation status of reset.
- * \retval 0 Completed successfully.
- */
-int32_t calendar_disable(struct calendar_descriptor *const calendar);
-
-/** \brief Configure the base year for calendar HAL instance and hardware
- *
- * \param calendar Pointer to the HAL Calendar instance.
- * \param p_base_year The desired base year.
- * \retval 0 Completed successfully.
- */
-int32_t calendar_set_baseyear(struct calendar_descriptor *const calendar, const uint32_t p_base_year);
-
-/** \brief Configure the time for calendar HAL instance and hardware
- *
- * \param calendar Pointer to the HAL Calendar instance.
- * \param p_calendar_time Pointer to the time configuration.
- * \retval 0 Completed successfully.
- */
-int32_t calendar_set_time(struct calendar_descriptor *const calendar, struct calendar_time *const p_calendar_time);
-
-/** \brief Configure the date for calendar HAL instance and hardware
- *
- * \param calendar Pointer to the HAL Calendar instance.
- * \param p_calendar_date Pointer to the date configuration.
- * \return Operation status of time set.
- * \retval 0 Completed successfully.
- */
-int32_t calendar_set_date(struct calendar_descriptor *const calendar, struct calendar_date *const p_calendar_date);
-
-/** \brief Get the time for calendar HAL instance and hardware
- *
- * \param calendar Pointer to the HAL Calendar instance.
- * \param date_time Pointer to the value that will be filled with the current time.
- * \return Operation status of time retrieve.
- * \retval 0 Completed successfully.
- */
-int32_t calendar_get_date_time(struct calendar_descriptor *const calendar, struct calendar_date_time *const date_time);
-
-/** \brief Config the alarm time for calendar HAL instance and hardware
- *
- * Set the alarm time to calendar instance. If the callback is NULL, remove
- * the alarm if the alarm is already added, otherwise, ignore the alarm.
- *
- * \param calendar Pointer to the HAL Calendar instance.
- * \param alarm Pointer to the configuration.
- * \param callback Pointer to the callback function.
- * \return Operation status of alarm time set.
- * \retval 0 Completed successfully.
- */
-int32_t calendar_set_alarm(struct calendar_descriptor *const calendar, struct calendar_alarm *const alarm,
- calendar_cb_alarm_t callback);
-
-/** \brief Retrieve the current driver version
- * \return Current driver version.
- */
-uint32_t calendar_get_version(void);
-
-/**@}*/
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* _HAL_CALENDER_H_INCLUDED */
diff --git a/watch-library/hal/include/hpl_calendar.h b/watch-library/hal/include/hpl_calendar.h
index f94249b9..0dce40fd 100644
--- a/watch-library/hal/include/hpl_calendar.h
+++ b/watch-library/hal/include/hpl_calendar.h
@@ -33,69 +33,11 @@
#ifndef _HPL_CALENDER_H_INCLUDED
#define _HPL_CALENDER_H_INCLUDED
-#include <compiler.h>
-#include <utils_list.h>
-#include "hpl_irq.h"
-
#ifdef __cplusplus
extern "C" {
#endif
/**
- * \brief Calendar structure
- *
- * The Calendar structure forward declaration.
- */
-struct calendar_dev;
-
-/**
- * \brief Available mask options for alarms.
- *
- * Available mask options for alarms.
- */
-enum calendar_alarm_option {
- /** Alarm disabled. */
- CALENDAR_ALARM_MATCH_DISABLED = 0,
- /** Alarm match on second. */
- CALENDAR_ALARM_MATCH_SEC,
- /** Alarm match on second and minute. */
- CALENDAR_ALARM_MATCH_MIN,
- /** Alarm match on second, minute, and hour. */
- CALENDAR_ALARM_MATCH_HOUR,
- /** Alarm match on second, minute, hour, and day. */
- CALENDAR_ALARM_MATCH_DAY,
- /** Alarm match on second, minute, hour, day, and month. */
- CALENDAR_ALARM_MATCH_MONTH,
- /** Alarm match on second, minute, hour, day, month and year. */
- CALENDAR_ALARM_MATCH_YEAR
-};
-
-/**
- * \brief Available mode for alarms.
- */
-enum calendar_alarm_mode { ONESHOT = 1, REPEAT };
-/**
- * \brief Prototype of callback on alarm match
- */
-typedef void (*calendar_drv_cb_t)();
-typedef void (*calendar_drv_extwake_cb_t)(uint8_t reason);
-
-/**
- * \brief Structure of Calendar instance
- */
-struct calendar_dev {
- /** Pointer to the hardware base */
- void *hw;
- /** Alarm match callback */
- calendar_drv_cb_t callback_alarm;
- /** Tamper callback */
- calendar_drv_extwake_cb_t callback_tamper;
- /** Tick callback */
- calendar_drv_cb_t callback_tick;
- /** IRQ struct */
- struct _irq_descriptor irq;
-};
-/**
* \brief Time struct for calendar
*/
struct calendar_time {
@@ -119,17 +61,6 @@ struct calendar_date {
uint16_t year;
};
-/** \brief Calendar driver struct
- *
- */
-struct calendar_descriptor {
- struct calendar_dev device;
- struct list_descriptor alarms;
- /*base date/time = base_year/1/1/0/0/0(year/month/day/hour/min/sec)*/
- uint32_t base_year;
- uint8_t flags;
-};
-
/** \brief Date&Time struct for calendar
*/
struct calendar_date_time {
@@ -137,188 +68,6 @@ struct calendar_date_time {
struct calendar_date date;
};
-/** \brief struct for alarm time
- */
-struct _calendar_alarm {
- struct calendar_date_time datetime;
- uint32_t timestamp;
- enum calendar_alarm_option option;
- enum calendar_alarm_mode mode;
-};
-
-/** \enum for tamper detection mode
- */
-enum tamper_detection_mode { TAMPER_MODE_OFF = 0U, TAMPER_MODE_WAKE, TAMPER_MODE_CAPTURE, TAMPER_MODE_ACTL };
-
-/** \enum for tamper detection mode
- */
-enum tamper_id { TAMPID0 = 0U, TAMPID1, TAMPID2, TAMPID3, TAMPID4 };
-/**
- * \brief Initialize Calendar instance
- *
- * \param[in] dev The pointer to calendar device struct
- *
- * \return ERR_NONE on success, or an error code on failure.
- */
-int32_t _calendar_init(struct calendar_dev *const dev);
-
-/**
- * \brief Deinitialize Calendar instance
- *
- * \param[in] dev The pointer to calendar device struct
- *
- * \return ERR_NONE on success, or an error code on failure.
- */
-int32_t _calendar_deinit(struct calendar_dev *const dev);
-
-/**
- * \brief Enable Calendar instance
- *
- * \param[in] dev The pointer to calendar device struct
- *
- * \return ERR_NONE on success, or an error code on failure.
- */
-int32_t _calendar_enable(struct calendar_dev *const dev);
-
-/**
- * \brief Disable Calendar instance
- *
- * \param[in] dev The pointer to calendar device struct
- *
- * \return ERR_NONE on success, or an error code on failure.
- */
-int32_t _calendar_disable(struct calendar_dev *const dev);
-/**
- * \brief Set counter for calendar
- *
- * \param[in] dev The pointer to calendar device struct
- * \param[in] counter The counter for set
- *
- * \return ERR_NONE on success, or an error code on failure.
- */
-int32_t _calendar_set_counter(struct calendar_dev *const dev, const uint32_t counter);
-
-/**
- * \brief Get counter for calendar
- *
- * \param[in] dev The pointer to calendar device struct
- *
- * \return return current counter value
- */
-uint32_t _calendar_get_counter(struct calendar_dev *const dev);
-
-/**
- * \brief Set compare value for calendar
- *
- * \param[in] dev The pointer to calendar device struct
- * \param[in] comp The compare value for set
- *
- * \return ERR_NONE on success, or an error code on failure.
- */
-int32_t _calendar_set_comp(struct calendar_dev *const dev, const uint32_t comp);
-
-/**
- * \brief Get compare value for calendar
- *
- * \param[in] dev The pointer to calendar device struct
- *
- * \return return current compare value
- */
-uint32_t _calendar_get_comp(struct calendar_dev *const dev);
-
-/**
- * \brief Register callback for calendar alarm
- *
- * \param[in] dev The pointer to calendar device struct
- * \param[in] callback The pointer to callback function
- *
- * \return ERR_NONE on success, or an error code on failure.
- */
-int32_t _calendar_register_callback(struct calendar_dev *const dev, calendar_drv_cb_t callback);
-
-/**
- * \brief Set calendar IRQ
- *
- * \param[in] dev The pointer to calendar device struct
- */
-void _calendar_set_irq(struct calendar_dev *const dev);
-
-/**
- * \brief Register callback for 1Hz tick from prescaler
- *
- * \param[in] dev The pointer to calendar device struct
- * \param[in] callback The pointer to callback function
- *
- * \return ERR_NONE on success, or an error code on failure.
- */
-int32_t _prescaler_register_callback(struct calendar_dev *const dev, calendar_drv_cb_t callback);
-
-/**
- * \brief Register callback for tamper detection
- *
- * \param[in] dev The pointer to calendar device struct
- * \param[in] callback The pointer to callback function
- *
- * \return ERR_NONE on success, or an error code on failure.
- */
-int32_t _extwake_register_callback(struct calendar_dev *const dev, calendar_drv_extwake_cb_t callback);
-
-/**
- * \brief Find tamper is detected on specified pin
- *
- * \param[in] dev The pointer to calendar device struct
- * \param[in] enum Tamper ID number
- *
- * \return true on detection success and false on failure.
- */
-bool _is_tamper_detected(struct calendar_dev *const dev, enum tamper_id tamper_id_pin);
-
-/**
- * \brief brief Clear the Tamper ID flag
- *
- * \param[in] dev The pointer to calendar device struct
- * \param[in] enum Tamper ID number
- *
- * \return ERR_NONE
- */
-int32_t _tamper_clear_tampid_flag(struct calendar_dev *const dev, enum tamper_id tamper_id_pin);
-
-/**
- * \brief Enable Debounce Asynchronous Feature
- *
- * \param[in] dev The pointer to calendar device struct
- *
- * \return ERR_NONE on success, or an error code on failure.
- */
-int32_t _tamper_enable_debounce_asynchronous(struct calendar_dev *const dev);
-
-/**
- * \brief Disable Tamper Debounce Asynchronous Feature
- *
- * \param[in] dev The pointer to calendar device struct
- *
- * \return ERR_NONE on success, or an error code on failure.
- */
-int32_t _tamper_disable_debounce_asynchronous(struct calendar_dev *const dev);
-
-/**
- * \brief Enable Tamper Debounce Majority Feature
- *
- * \param[in] dev The pointer to calendar device struct
- *
- * \return ERR_NONE on success, or an error code on failure.
- */
-int32_t _tamper_enable_debounce_majority(struct calendar_dev *const dev);
-
-/**
- * \brief Enable Tamper Debounce Majority Feature
- *
- * \param[in] dev The pointer to calendar device struct
- *
- * \return ERR_NONE on success, or an error code on failure.
- */
-int32_t _tamper_disable_debounce_majority(struct calendar_dev *const dev);
-
#ifdef __cplusplus
}
#endif
diff --git a/watch-library/hal/src/hal_calendar.c b/watch-library/hal/src/hal_calendar.c
index 68cb7286..e69de29b 100644
--- a/watch-library/hal/src/hal_calendar.c
+++ b/watch-library/hal/src/hal_calendar.c
@@ -1,645 +0,0 @@
-/**
- * \file
- *
- * \brief Generic CALENDAR functionality implementation.
- *
- * Copyright (c) 2014-2018 Microchip Technology Inc. and its subsidiaries.
- *
- * \asf_license_start
- *
- * \page License
- *
- * Subject to your compliance with these terms, you may use Microchip
- * software and any derivatives exclusively with Microchip products.
- * It is your responsibility to comply with third party license terms applicable
- * to your use of third party software (including open source software) that
- * may accompany Microchip software.
- *
- * THIS SOFTWARE IS SUPPLIED BY MICROCHIP "AS IS". NO WARRANTIES,
- * WHETHER EXPRESS, IMPLIED OR STATUTORY, APPLY TO THIS SOFTWARE,
- * INCLUDING ANY IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY,
- * AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT WILL MICROCHIP BE
- * LIABLE FOR ANY INDIRECT, SPECIAL, PUNITIVE, INCIDENTAL OR CONSEQUENTIAL
- * LOSS, DAMAGE, COST OR EXPENSE OF ANY KIND WHATSOEVER RELATED TO THE
- * SOFTWARE, HOWEVER CAUSED, EVEN IF MICROCHIP HAS BEEN ADVISED OF THE
- * POSSIBILITY OR THE DAMAGES ARE FORESEEABLE. TO THE FULLEST EXTENT
- * ALLOWED BY LAW, MICROCHIP'S TOTAL LIABILITY ON ALL CLAIMS IN ANY WAY
- * RELATED TO THIS SOFTWARE WILL NOT EXCEED THE AMOUNT OF FEES, IF ANY,
- * THAT YOU HAVE PAID DIRECTLY TO MICROCHIP FOR THIS SOFTWARE.
- *
- * \asf_license_stop
- *
- */
-
-#include "hal_calendar.h"
-#include <utils.h>
-#include <utils_assert.h>
-#include <hal_atomic.h>
-
-#define CALENDAR_VERSION 0x00000001u
-#define SECS_IN_LEAP_YEAR 31622400
-#define SECS_IN_NON_LEAP_YEAR 31536000
-#define SECS_IN_31DAYS 2678400
-#define SECS_IN_30DAYS 2592000
-#define SECS_IN_29DAYS 2505600
-#define SECS_IN_28DAYS 2419200
-#define SECS_IN_DAY 86400
-#define SECS_IN_HOUR 3600
-#define SECS_IN_MINUTE 60
-#define DEFAULT_BASE_YEAR 1970
-
-#define SET_ALARM_BUSY 1
-#define PROCESS_ALARM_BUSY 2
-
-/** \brief leap year check
- * \retval false not leap year.
- * \retval true leap year.
- */
-static bool leap_year(uint16_t year)
-{
- if (year & 3) {
- return false;
- } else {
- return true;
- }
-}
-
-/** \brief calculate the seconds in specified year/month
- * \retval 0 month error.
- */
-static uint32_t get_secs_in_month(uint32_t year, uint8_t month)
-{
- uint32_t sec_in_month = 0;
-
- if (leap_year(year)) {
- switch (month) {
- case 1:
- case 3:
- case 5:
- case 7:
- case 8:
- case 10:
- case 12:
- sec_in_month = SECS_IN_31DAYS;
- break;
- case 2:
- sec_in_month = SECS_IN_29DAYS;
- break;
- case 4:
- case 6:
- case 9:
- case 11:
- sec_in_month = SECS_IN_30DAYS;
- break;
- default:
- break;
- }
- } else {
- switch (month) {
- case 1:
- case 3:
- case 5:
- case 7:
- case 8:
- case 10:
- case 12:
- sec_in_month = SECS_IN_31DAYS;
- break;
- case 2:
- sec_in_month = SECS_IN_28DAYS;
- break;
- case 4:
- case 6:
- case 9:
- case 11:
- sec_in_month = SECS_IN_30DAYS;
- break;
- default:
- break;
- }
- }
-
- return sec_in_month;
-}
-
-/** \brief convert timestamp to date/time
- */
-static int32_t convert_timestamp_to_datetime(struct calendar_descriptor *const calendar, uint32_t ts,
- struct calendar_date_time *dt)
-{
- uint32_t tmp, sec_in_year, sec_in_month;
- uint32_t tmp_year = calendar->base_year;
- uint8_t tmp_month = 1;
- uint8_t tmp_day = 1;
- uint8_t tmp_hour = 0;
- uint8_t tmp_minutes = 0;
-
- tmp = ts;
-
- /* Find year */
- while (true) {
- sec_in_year = leap_year(tmp_year) ? SECS_IN_LEAP_YEAR : SECS_IN_NON_LEAP_YEAR;
-
- if (tmp >= sec_in_year) {
- tmp -= sec_in_year;
- tmp_year++;
- } else {
- break;
- }
- }
- /* Find month of year */
- while (true) {
- sec_in_month = get_secs_in_month(tmp_year, tmp_month);
-
- if (tmp >= sec_in_month) {
- tmp -= sec_in_month;
- tmp_month++;
- } else {
- break;
- }
- }
- /* Find day of month */
- while (true) {
- if (tmp >= SECS_IN_DAY) {
- tmp -= SECS_IN_DAY;
- tmp_day++;
- } else {
- break;
- }
- }
- /* Find hour of day */
- while (true) {
- if (tmp >= SECS_IN_HOUR) {
- tmp -= SECS_IN_HOUR;
- tmp_hour++;
- } else {
- break;
- }
- }
- /* Find minute in hour */
- while (true) {
- if (tmp >= SECS_IN_MINUTE) {
- tmp -= SECS_IN_MINUTE;
- tmp_minutes++;
- } else {
- break;
- }
- }
-
- dt->date.year = tmp_year;
- dt->date.month = tmp_month;
- dt->date.day = tmp_day;
- dt->time.hour = tmp_hour;
- dt->time.min = tmp_minutes;
- dt->time.sec = tmp;
-
- return ERR_NONE;
-}
-
-/** \brief convert date/time to timestamp
- * \return timestamp
- */
-static uint32_t convert_datetime_to_timestamp(struct calendar_descriptor *const calendar, struct calendar_date_time *dt)
-{
- uint32_t tmp = 0;
- uint32_t i = 0;
- uint8_t year, month, day, hour, minutes, seconds;
-
- year = dt->date.year - calendar->base_year;
- month = dt->date.month;
- day = dt->date.day;
- hour = dt->time.hour;
- minutes = dt->time.min;
- seconds = dt->time.sec;
-
- /* tot up year field */
- for (i = 0; i < year; ++i) {
- if (leap_year(calendar->base_year + i)) {
- tmp += SECS_IN_LEAP_YEAR;
- } else {
- tmp += SECS_IN_NON_LEAP_YEAR;
- }
- }
-
- /* tot up month field */
- for (i = 1; i < month; ++i) {
- tmp += get_secs_in_month(dt->date.year, i);
- }
-
- /* tot up day/hour/minute/second fields */
- tmp += (day - 1) * SECS_IN_DAY;
- tmp += hour * SECS_IN_HOUR;
- tmp += minutes * SECS_IN_MINUTE;
- tmp += seconds;
-
- return tmp;
-}
-
-/** \brief calibrate timestamp to make desired timestamp ahead of current timestamp
- */
-static void calibrate_timestamp(struct calendar_descriptor *const calendar, struct calendar_alarm *alarm,
- struct calendar_alarm *current_dt)
-{
- uint32_t alarm_ts;
- uint32_t current_ts = current_dt->cal_alarm.timestamp;
-
- (void)calendar;
-
- alarm_ts = alarm->cal_alarm.timestamp;
-
- /* calibrate timestamp */
- switch (alarm->cal_alarm.option) {
- case CALENDAR_ALARM_MATCH_SEC:
-
- if (alarm_ts <= current_ts) {
- alarm_ts += SECS_IN_MINUTE;
- }
-
- break;
- case CALENDAR_ALARM_MATCH_MIN:
-
- if (alarm_ts <= current_ts) {
- alarm_ts += SECS_IN_HOUR;
- }
-
- break;
- case CALENDAR_ALARM_MATCH_HOUR:
-
- if (alarm_ts <= current_ts) {
- alarm_ts += SECS_IN_DAY;
- }
-
- break;
- case CALENDAR_ALARM_MATCH_DAY:
-
- if (alarm_ts <= current_ts) {
- alarm_ts += get_secs_in_month(current_dt->cal_alarm.datetime.date.year,
- current_dt->cal_alarm.datetime.date.month);
- }
-
- break;
- case CALENDAR_ALARM_MATCH_MONTH:
-
- if (alarm_ts <= current_ts) {
- if (leap_year(current_dt->cal_alarm.datetime.date.year)) {
- alarm_ts += SECS_IN_LEAP_YEAR;
- } else {
- alarm_ts += SECS_IN_NON_LEAP_YEAR;
- }
- }
-
- break;
- /* do nothing for year match */
- case CALENDAR_ALARM_MATCH_YEAR:
- default:
- break;
- }
-
- /* desired timestamp after calibration */
- alarm->cal_alarm.timestamp = alarm_ts;
-}
-
-/** \brief complete alarm to absolute date/time, then fill up the timestamp
- */
-static void fill_alarm(struct calendar_descriptor *const calendar, struct calendar_alarm *alarm)
-{
- struct calendar_alarm current_dt;
- uint32_t tmp, current_ts;
-
- /* get current date/time */
- current_ts = _calendar_get_counter(&calendar->device);
- convert_timestamp_to_datetime(calendar, current_ts, &current_dt.cal_alarm.datetime);
-
- current_dt.cal_alarm.timestamp = current_ts;
-
- /* complete alarm */
- switch (alarm->cal_alarm.option) {
- case CALENDAR_ALARM_MATCH_SEC:
- alarm->cal_alarm.datetime.date.year = current_dt.cal_alarm.datetime.date.year;
- alarm->cal_alarm.datetime.date.month = current_dt.cal_alarm.datetime.date.month;
- alarm->cal_alarm.datetime.date.day = current_dt.cal_alarm.datetime.date.day;
- alarm->cal_alarm.datetime.time.hour = current_dt.cal_alarm.datetime.time.hour;
- alarm->cal_alarm.datetime.time.min = current_dt.cal_alarm.datetime.time.min;
- break;
- case CALENDAR_ALARM_MATCH_MIN:
- alarm->cal_alarm.datetime.date.year = current_dt.cal_alarm.datetime.date.year;
- alarm->cal_alarm.datetime.date.month = current_dt.cal_alarm.datetime.date.month;
- alarm->cal_alarm.datetime.date.day = current_dt.cal_alarm.datetime.date.day;
- alarm->cal_alarm.datetime.time.hour = current_dt.cal_alarm.datetime.time.hour;
- break;
- case CALENDAR_ALARM_MATCH_HOUR:
- alarm->cal_alarm.datetime.date.year = current_dt.cal_alarm.datetime.date.year;
- alarm->cal_alarm.datetime.date.month = current_dt.cal_alarm.datetime.date.month;
- alarm->cal_alarm.datetime.date.day = current_dt.cal_alarm.datetime.date.day;
- break;
- case CALENDAR_ALARM_MATCH_DAY:
- alarm->cal_alarm.datetime.date.year = current_dt.cal_alarm.datetime.date.year;
- alarm->cal_alarm.datetime.date.month = current_dt.cal_alarm.datetime.date.month;
- break;
- case CALENDAR_ALARM_MATCH_MONTH:
- alarm->cal_alarm.datetime.date.year = current_dt.cal_alarm.datetime.date.year;
- break;
- case CALENDAR_ALARM_MATCH_YEAR:
- break;
- default:
- break;
- }
-
- /* fill up the timestamp */
- tmp = convert_datetime_to_timestamp(calendar, &alarm->cal_alarm.datetime);
- alarm->cal_alarm.timestamp = tmp;
-
- /* calibrate the timestamp */
- calibrate_timestamp(calendar, alarm, &current_dt);
- convert_timestamp_to_datetime(calendar, alarm->cal_alarm.timestamp, &alarm->cal_alarm.datetime);
-}
-
-/** \brief add new alarm into the list in ascending order
- */
-static int32_t calendar_add_new_alarm(struct list_descriptor *list, struct calendar_alarm *alarm)
-{
- struct calendar_descriptor *calendar = CONTAINER_OF(list, struct calendar_descriptor, alarms);
- struct calendar_alarm * head, *it, *prev = NULL;
-
- /*get the head of alarms list*/
- head = (struct calendar_alarm *)list_get_head(list);
-
- /*if head is null, insert new alarm as head*/
- if (!head) {
- list_insert_as_head(list, alarm);
- _calendar_set_comp(&calendar->device, alarm->cal_alarm.timestamp);
- return ERR_NONE;
- }
-
- /*insert the new alarm in accending order, the head will be invoked firstly */
- for (it = head; it; it = (struct calendar_alarm *)list_get_next_element(it)) {
- if (alarm->cal_alarm.timestamp <= it->cal_alarm.timestamp) {
- break;
- }
-
- prev = it;
- }
-
- /*insert new alarm into the list */
- if (it == head) {
- list_insert_as_head(list, alarm);
- /*get the head and set it into register*/
- _calendar_set_comp(&calendar->device, alarm->cal_alarm.timestamp);
-
- } else {
- list_insert_after(prev, alarm);
- }
-
- return ERR_NONE;
-}
-
-/** \brief callback for alarm
- */
-static void calendar_alarm(struct calendar_dev *const dev)
-{
- struct calendar_descriptor *calendar = CONTAINER_OF(dev, struct calendar_descriptor, device);
-
- struct calendar_alarm *head, *it, current_dt;
-
- if ((calendar->flags & SET_ALARM_BUSY) || (calendar->flags & PROCESS_ALARM_BUSY)) {
- calendar->flags |= PROCESS_ALARM_BUSY;
- return;
- }
-
- /* get current timestamp */
- current_dt.cal_alarm.timestamp = _calendar_get_counter(dev);
-
- /* get the head */
- head = (struct calendar_alarm *)list_get_head(&calendar->alarms);
- ASSERT(head);
-
- /* remove all alarms and invoke them*/
- for (it = head; it; it = (struct calendar_alarm *)list_get_head(&calendar->alarms)) {
- /* check the timestamp with current timestamp*/
- if (it->cal_alarm.timestamp <= current_dt.cal_alarm.timestamp) {
- list_remove_head(&calendar->alarms);
- it->callback(calendar);
-
- if (it->cal_alarm.mode == REPEAT) {
- calibrate_timestamp(calendar, it, &current_dt);
- convert_timestamp_to_datetime(calendar, it->cal_alarm.timestamp, &it->cal_alarm.datetime);
- calendar_add_new_alarm(&calendar->alarms, it);
- }
- } else {
- break;
- }
- }
-
- /*if no alarm in the list, register null */
- if (!it) {
- _calendar_register_callback(&calendar->device, NULL);
- return;
- }
-
- /*put the new head into register */
- _calendar_set_comp(&calendar->device, it->cal_alarm.timestamp);
-}
-
-/** \brief Initialize Calendar
- */
-int32_t calendar_init(struct calendar_descriptor *const calendar, const void *hw)
-{
- int32_t ret = 0;
-
- /* Sanity check arguments */
- ASSERT(calendar);
-
- if (calendar->device.hw == hw) {
- /* Already initialized with current configuration */
- return ERR_NONE;
- } else if (calendar->device.hw != NULL) {
- /* Initialized with another configuration */
- return ERR_ALREADY_INITIALIZED;
- }
- calendar->device.hw = (void *)hw;
- ret = _calendar_init(&calendar->device);
- calendar->base_year = DEFAULT_BASE_YEAR;
-
- return ret;
-}
-
-/** \brief Reset the Calendar
- */
-int32_t calendar_deinit(struct calendar_descriptor *const calendar)
-{
- /* Sanity check arguments */
- ASSERT(calendar);
-
- if (calendar->device.hw == NULL) {
- return ERR_NOT_INITIALIZED;
- }
- _calendar_deinit(&calendar->device);
- calendar->device.hw = NULL;
-
- return ERR_NONE;
-}
-
-/** \brief Enable the Calendar
- */
-int32_t calendar_enable(struct calendar_descriptor *const calendar)
-{
- /* Sanity check arguments */
- ASSERT(calendar);
-
- _calendar_enable(&calendar->device);
-
- return ERR_NONE;
-}
-
-/** \brief Disable the Calendar
- */
-int32_t calendar_disable(struct calendar_descriptor *const calendar)
-{
- /* Sanity check arguments */
- ASSERT(calendar);
-
- _calendar_disable(&calendar->device);
-
- return ERR_NONE;
-}
-
-/** \brief Set base year for calendar
- */
-int32_t calendar_set_baseyear(struct calendar_descriptor *const calendar, const uint32_t p_base_year)
-{
- /* Sanity check arguments */
- ASSERT(calendar);
-
- calendar->base_year = p_base_year;
-
- return ERR_NONE;
-}
-
-/** \brief Set time for calendar
- */
-int32_t calendar_set_time(struct calendar_descriptor *const calendar, struct calendar_time *const p_calendar_time)
-{
- struct calendar_date_time dt;
- uint32_t current_ts, new_ts;
-
- /* Sanity check arguments */
- ASSERT(calendar);
-
- /* convert time to timestamp */
- current_ts = _calendar_get_counter(&calendar->device);
- convert_timestamp_to_datetime(calendar, current_ts, &dt);
- dt.time.sec = p_calendar_time->sec;
- dt.time.min = p_calendar_time->min;
- dt.time.hour = p_calendar_time->hour;
-
- new_ts = convert_datetime_to_timestamp(calendar, &dt);
-
- _calendar_set_counter(&calendar->device, new_ts);
-
- return ERR_NONE;
-}
-
-/** \brief Set date for calendar
- */
-int32_t calendar_set_date(struct calendar_descriptor *const calendar, struct calendar_date *const p_calendar_date)
-{
- struct calendar_date_time dt;
- uint32_t current_ts, new_ts;
-
- /* Sanity check arguments */
- ASSERT(calendar);
-
- /* convert date to timestamp */
- current_ts = _calendar_get_counter(&calendar->device);
- convert_timestamp_to_datetime(calendar, current_ts, &dt);
- dt.date.day = p_calendar_date->day;
- dt.date.month = p_calendar_date->month;
- dt.date.year = p_calendar_date->year;
-
- new_ts = convert_datetime_to_timestamp(calendar, &dt);
-
- _calendar_set_counter(&calendar->device, new_ts);
-
- return ERR_NONE;
-}
-
-/** \brief Get date/time for calendar
- */
-int32_t calendar_get_date_time(struct calendar_descriptor *const calendar, struct calendar_date_time *const date_time)
-{
- uint32_t current_ts;
-
- /* Sanity check arguments */
- ASSERT(calendar);
-
- /* convert current timestamp to date/time */
- current_ts = _calendar_get_counter(&calendar->device);
- convert_timestamp_to_datetime(calendar, current_ts, date_time);
-
- return ERR_NONE;
-}
-
-/** \brief Set alarm for calendar
- */
-int32_t calendar_set_alarm(struct calendar_descriptor *const calendar, struct calendar_alarm *const alarm,
- calendar_cb_alarm_t callback)
-{
- struct calendar_alarm *head;
-
- /* Sanity check arguments */
- ASSERT(calendar);
- ASSERT(alarm);
-
- alarm->callback = callback;
-
- fill_alarm(calendar, alarm);
-
- calendar->flags |= SET_ALARM_BUSY;
-
- head = (struct calendar_alarm *)list_get_head(&calendar->alarms);
-
- if (head != NULL) {
- /* already added */
- if (is_list_element(&calendar->alarms, alarm)) {
- if (callback == NULL) {
- /* remove alarm */
- list_delete_element(&calendar->alarms, alarm);
-
- if (!list_get_head(&calendar->alarms)) {
- _calendar_register_callback(&calendar->device, NULL);
- }
- } else {
- /* re-add */
- list_delete_element(&calendar->alarms, alarm);
- calendar_add_new_alarm(&calendar->alarms, alarm);
- }
- } else if (callback != NULL) {
- calendar_add_new_alarm(&calendar->alarms, alarm);
- }
-
- calendar->flags &= ~SET_ALARM_BUSY;
-
- if (calendar->flags & PROCESS_ALARM_BUSY) {
- CRITICAL_SECTION_ENTER()
- calendar->flags &= ~PROCESS_ALARM_BUSY;
- _calendar_set_irq(&calendar->device);
- CRITICAL_SECTION_LEAVE()
- }
- } else if (callback != NULL) {
- /* if head is NULL, Register callback*/
- _calendar_register_callback(&calendar->device, calendar_alarm);
- calendar_add_new_alarm(&calendar->alarms, alarm);
- }
-
- calendar->flags &= ~SET_ALARM_BUSY;
-
- return ERR_NONE;
-}
-
-/** \brief Retrieve driver version
- * \return Current driver version
- */
-uint32_t calendar_get_version(void)
-{
- return CALENDAR_VERSION;
-}
diff --git a/watch-library/hpl/rtc/hpl_rtc.c b/watch-library/hpl/rtc/hpl_rtc.c
deleted file mode 100644
index e580fa78..00000000
--- a/watch-library/hpl/rtc/hpl_rtc.c
+++ /dev/null
@@ -1,430 +0,0 @@
-
-/**
- * \file
- *
- * \brief RTC Driver
- *
- * Copyright (c) 2014-2018 Microchip Technology Inc. and its subsidiaries.
- *
- * \asf_license_start
- *
- * \page License
- *
- * Subject to your compliance with these terms, you may use Microchip
- * software and any derivatives exclusively with Microchip products.
- * It is your responsibility to comply with third party license terms applicable
- * to your use of third party software (including open source software) that
- * may accompany Microchip software.
- *
- * THIS SOFTWARE IS SUPPLIED BY MICROCHIP "AS IS". NO WARRANTIES,
- * WHETHER EXPRESS, IMPLIED OR STATUTORY, APPLY TO THIS SOFTWARE,
- * INCLUDING ANY IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY,
- * AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT WILL MICROCHIP BE
- * LIABLE FOR ANY INDIRECT, SPECIAL, PUNITIVE, INCIDENTAL OR CONSEQUENTIAL
- * LOSS, DAMAGE, COST OR EXPENSE OF ANY KIND WHATSOEVER RELATED TO THE
- * SOFTWARE, HOWEVER CAUSED, EVEN IF MICROCHIP HAS BEEN ADVISED OF THE
- * POSSIBILITY OR THE DAMAGES ARE FORESEEABLE. TO THE FULLEST EXTENT
- * ALLOWED BY LAW, MICROCHIP'S TOTAL LIABILITY ON ALL CLAIMS IN ANY WAY
- * RELATED TO THIS SOFTWARE WILL NOT EXCEED THE AMOUNT OF FEES, IF ANY,
- * THAT YOU HAVE PAID DIRECTLY TO MICROCHIP FOR THIS SOFTWARE.
- *
- * \asf_license_stop
- *
- */
-
-#include <hpl_calendar.h>
-#include <utils_assert.h>
-#include <hpl_rtc_config.h>
-
-/*!< Pointer to hpl device */
-static struct calendar_dev *_rtc_dev = NULL;
-
-/**
- * \brief Initializes the RTC module with given configurations.
- */
-int32_t _calendar_init(struct calendar_dev *const dev)
-{
- ASSERT(dev && dev->hw);
-
- _rtc_dev = dev;
-
- if (hri_rtcmode0_get_CTRLA_ENABLE_bit(dev->hw)) {
-#if !CONF_RTC_INIT_RESET
- return ERR_DENIED;
-#else
- hri_rtcmode0_clear_CTRLA_ENABLE_bit(dev->hw);
- hri_rtcmode0_wait_for_sync(dev->hw, RTC_MODE0_SYNCBUSY_ENABLE);
-#endif
- }
- hri_rtcmode0_set_CTRLA_SWRST_bit(dev->hw);
- hri_rtcmode0_wait_for_sync(dev->hw, RTC_MODE0_SYNCBUSY_SWRST);
-
-#if CONF_RTC_EVENT_CONTROL_ENABLE == 1
- hri_rtcmode0_write_EVCTRL_reg(
- dev->hw,
- (CONF_RTC_PEREO0 << RTC_MODE0_EVCTRL_PEREO0_Pos) | (CONF_RTC_PEREO1 << RTC_MODE0_EVCTRL_PEREO1_Pos)
- | (CONF_RTC_PEREO2 << RTC_MODE0_EVCTRL_PEREO2_Pos) | (CONF_RTC_PEREO3 << RTC_MODE0_EVCTRL_PEREO3_Pos)
- | (CONF_RTC_PEREO4 << RTC_MODE0_EVCTRL_PEREO4_Pos) | (CONF_RTC_PEREO5 << RTC_MODE0_EVCTRL_PEREO5_Pos)
- | (CONF_RTC_PEREO6 << RTC_MODE0_EVCTRL_PEREO6_Pos) | (CONF_RTC_PEREO7 << RTC_MODE0_EVCTRL_PEREO7_Pos)
- | (CONF_RTC_COMPE0 << RTC_MODE0_EVCTRL_CMPEO_Pos) | (CONF_RTC_OVFEO << RTC_MODE0_EVCTRL_OVFEO_Pos));
-#endif
-
- hri_rtcmode0_write_CTRLA_reg(dev->hw, RTC_MODE0_CTRLA_PRESCALER(CONF_RTC_PRESCALER) | RTC_MODE0_CTRLA_COUNTSYNC);
-
- hri_rtc_write_TAMPCTRL_reg(
- dev->hw,
- (CONF_RTC_TAMPER_INACT_0 << RTC_TAMPCTRL_IN0ACT_Pos) | (CONF_RTC_TAMPER_INACT_1 << RTC_TAMPCTRL_IN1ACT_Pos)
- | (CONF_RTC_TAMPER_INACT_2 << RTC_TAMPCTRL_IN2ACT_Pos)
- | (CONF_RTC_TAMPER_INACT_3 << RTC_TAMPCTRL_IN3ACT_Pos)
- | (CONF_RTC_TAMPER_INACT_4 << RTC_TAMPCTRL_IN4ACT_Pos) | (CONF_RTC_TAMP_LVL_0 << RTC_TAMPCTRL_TAMLVL0_Pos)
- | (CONF_RTC_TAMP_LVL_1 << RTC_TAMPCTRL_TAMLVL1_Pos) | (CONF_RTC_TAMP_LVL_2 << RTC_TAMPCTRL_TAMLVL2_Pos)
- | (CONF_RTC_TAMP_LVL_3 << RTC_TAMPCTRL_TAMLVL3_Pos) | (CONF_RTC_TAMP_LVL_4 << RTC_TAMPCTRL_TAMLVL4_Pos)
- | (CONF_RTC_TAMP_DEBNC_0 << RTC_TAMPCTRL_DEBNC0_Pos) | (CONF_RTC_TAMP_DEBNC_1 << RTC_TAMPCTRL_DEBNC1_Pos)
- | (CONF_RTC_TAMP_DEBNC_2 << RTC_TAMPCTRL_DEBNC2_Pos) | (CONF_RTC_TAMP_DEBNC_3 << RTC_TAMPCTRL_DEBNC3_Pos)
- | (CONF_RTC_TAMP_DEBNC_4 << RTC_TAMPCTRL_DEBNC4_Pos));
-
- if ((CONF_RTC_TAMPER_INACT_0 == TAMPER_MODE_ACTL) | (CONF_RTC_TAMPER_INACT_1 == TAMPER_MODE_ACTL)
- | (CONF_RTC_TAMPER_INACT_2 == TAMPER_MODE_ACTL) | (CONF_RTC_TAMPER_INACT_3 == TAMPER_MODE_ACTL)
- | (CONF_RTC_TAMPER_INACT_4 == TAMPER_MODE_ACTL)) {
- hri_rtcmode0_set_CTRLB_RTCOUT_bit(dev->hw);
- }
- return ERR_NONE;
-}
-
-/**
- * \brief Deinit the RTC module
- */
-int32_t _calendar_deinit(struct calendar_dev *const dev)
-{
- ASSERT(dev && dev->hw);
-
- NVIC_DisableIRQ(RTC_IRQn);
- dev->callback_alarm = NULL;
- dev->callback_tick = NULL;
- dev->callback_tamper = NULL;
-
- hri_rtcmode0_clear_CTRLA_ENABLE_bit(dev->hw);
- hri_rtcmode0_set_CTRLA_SWRST_bit(dev->hw);
-
- return ERR_NONE;
-}
-
-/**
- * \brief Enable the RTC module
- */
-int32_t _calendar_enable(struct calendar_dev *const dev)
-{
- ASSERT(dev && dev->hw);
-
- hri_rtcmode0_set_CTRLA_ENABLE_bit(dev->hw);
-
- return ERR_NONE;
-}
-
-/**
- * \brief Disable the RTC module
- */
-int32_t _calendar_disable(struct calendar_dev *const dev)
-{
- ASSERT(dev && dev->hw);
-
- hri_rtcmode0_clear_CTRLA_ENABLE_bit(dev->hw);
-
- return ERR_NONE;
-}
-
-/**
- * \brief Set the current calendar time to desired time.
- */
-int32_t _calendar_set_counter(struct calendar_dev *const dev, const uint32_t counter)
-{
- ASSERT(dev && dev->hw);
-
- hri_rtcmode0_write_COUNT_reg(dev->hw, counter);
-
- return ERR_NONE;
-}
-
-/**
- * \brief Get current counter
- */
-uint32_t _calendar_get_counter(struct calendar_dev *const dev)
-{
- ASSERT(dev && dev->hw);
-
- return hri_rtcmode0_read_COUNT_reg(dev->hw);
-}
-
-/**
- * \brief Set the compare for the specified value.
- */
-int32_t _calendar_set_comp(struct calendar_dev *const dev, const uint32_t comp)
-{
- ASSERT(dev && dev->hw);
-
- hri_rtcmode0_write_COMP_reg(dev->hw, 0, comp);
-
- return ERR_NONE;
-}
-
-/**
- * \brief Get the compare value
- */
-uint32_t _calendar_get_comp(struct calendar_dev *const dev)
-{
- ASSERT(dev && dev->hw);
-
- return hri_rtcmode0_read_COMP_reg(dev->hw, 0);
-}
-
-/**
- * \brief Find tamper is detected on specified pin
- */
-bool _is_tamper_detected(struct calendar_dev *const dev, enum tamper_id tamper_id_pin)
-{
- bool value;
-
- ASSERT(dev && dev->hw);
-
- value = ((hri_rtc_read_TAMPID_reg(dev->hw) >> tamper_id_pin) & 0x01);
- return value;
-}
-
-/**
- * \brief Clear the Tamper ID flag
- */
-int32_t _tamper_clear_tampid_flag(struct calendar_dev *const dev, enum tamper_id tamper_id_pin)
-{
- ASSERT(dev && dev->hw);
-
- hri_rtc_write_TAMPID_reg(dev->hw, (true << tamper_id_pin));
-
- return ERR_NONE;
-}
-
-/**
- * \brief Enable Tamper Debounce Asynchronous Feature
- */
-int32_t _tamper_enable_debounce_asynchronous(struct calendar_dev *const dev)
-{
- int32_t return_value;
-
- hri_rtcmode0_write_CTRLA_ENABLE_bit(dev->hw, false);
-
- while (hri_rtcmode0_read_SYNCBUSY_reg(dev->hw) & RTC_MODE2_CTRLA_ENABLE) {
- }
-
- if (hri_rtcmode0_read_CTRLA_reg(dev->hw) & RTC_MODE2_CTRLA_ENABLE) {
- return_value = ERR_FAILURE;
- } else {
- hri_rtcmode0_write_CTRLB_DEBASYNC_bit(dev->hw, true);
- return_value = ERR_NONE;
- while (hri_rtcmode0_read_SYNCBUSY_reg(dev->hw) & RTC_MODE2_CTRLA_ENABLE) {
- }
- hri_rtcmode0_write_CTRLA_ENABLE_bit(dev->hw, true);
- }
-
- return return_value;
-}
-
-/**
- * \brief Disable Tamper Debounce Asynchronous Feature
- */
-int32_t _tamper_disable_debounce_asynchronous(struct calendar_dev *const dev)
-{
- int32_t return_value;
-
- hri_rtcmode0_write_CTRLA_ENABLE_bit(dev->hw, false);
-
- while (hri_rtcmode0_read_SYNCBUSY_reg(dev->hw) & RTC_MODE2_CTRLA_ENABLE) {
- }
-
- if (hri_rtcmode0_read_CTRLA_reg(dev->hw) & RTC_MODE2_CTRLA_ENABLE) {
- return_value = ERR_FAILURE;
- } else {
- hri_rtcmode0_write_CTRLB_DEBASYNC_bit(dev->hw, false);
- return_value = ERR_NONE;
- while (hri_rtcmode0_read_SYNCBUSY_reg(dev->hw) & RTC_MODE2_CTRLA_ENABLE) {
- }
- hri_rtcmode0_write_CTRLA_ENABLE_bit(dev->hw, true);
- }
-
- return return_value;
-}
-
-/**
- * \brief Enable Tamper Debounce Majority Feature
- */
-int32_t _tamper_enable_debounce_majority(struct calendar_dev *const dev)
-{
- int32_t return_value;
-
- hri_rtcmode0_write_CTRLA_ENABLE_bit(dev->hw, false);
-
- while (hri_rtcmode0_read_SYNCBUSY_reg(dev->hw) & RTC_MODE2_CTRLA_ENABLE) {
- }
-
- if (hri_rtcmode0_read_CTRLA_reg(dev->hw) & RTC_MODE2_CTRLA_ENABLE) {
- return_value = ERR_FAILURE;
- } else {
- hri_rtcmode0_write_CTRLB_DEBMAJ_bit(dev->hw, true);
- return_value = ERR_NONE;
-
- while (hri_rtcmode0_read_SYNCBUSY_reg(dev->hw) & RTC_MODE2_CTRLA_ENABLE) {
- }
- hri_rtcmode0_write_CTRLA_ENABLE_bit(dev->hw, true);
- }
-
- return return_value;
-}
-
-/**
- * \brief Disable Tamper Debounce Majority Feature
- */
-int32_t _tamper_disable_debounce_majority(struct calendar_dev *const dev)
-{
- int32_t return_value;
-
- hri_rtcmode0_write_CTRLA_ENABLE_bit(dev->hw, false);
-
- while (hri_rtcmode0_read_SYNCBUSY_reg(dev->hw) & RTC_MODE2_CTRLA_ENABLE) {
- }
-
- if (hri_rtcmode0_read_CTRLA_reg(dev->hw) & RTC_MODE2_CTRLA_ENABLE) {
- return_value = ERR_FAILURE;
- } else {
- hri_rtcmode0_write_CTRLB_DEBMAJ_bit(dev->hw, false);
- return_value = ERR_NONE;
-
- while (hri_rtcmode0_read_SYNCBUSY_reg(dev->hw) & RTC_MODE2_CTRLA_ENABLE) {
- }
- hri_rtcmode0_write_CTRLA_ENABLE_bit(dev->hw, true);
- }
-
- return return_value;
-}
-
-int32_t _prescaler_register_callback(struct calendar_dev *const dev, calendar_drv_cb_t callback)
-{
- ASSERT(dev && dev->hw);
-
- /* Check callback */
- if (callback != NULL) {
- /* register the callback */
- dev->callback_tick = callback;
-
- /* enable RTC_IRQn */
- NVIC_ClearPendingIRQ(RTC_IRQn);
- NVIC_EnableIRQ(RTC_IRQn);
-
- /* enable periodic interrupt */
- hri_rtcmode0_set_INTEN_PER7_bit(dev->hw);
- } else {
- /* disable periodic interrupt */
- hri_rtcmode0_clear_INTEN_PER7_bit(dev->hw);
- }
-
- return ERR_NONE;
-}
-
-int32_t _extwake_register_callback(struct calendar_dev *const dev, calendar_drv_extwake_cb_t callback)
-{
- ASSERT(dev && dev->hw);
-
- /* Check callback */
- if (callback != NULL) {
- /* register the callback */
- dev->callback_tamper = callback;
-
- /* enable RTC_IRQn */
- NVIC_ClearPendingIRQ(RTC_IRQn);
- NVIC_EnableIRQ(RTC_IRQn);
-
- hri_rtcmode0_clear_interrupt_TAMPER_bit(dev->hw);
- /* enable tamper interrupt */
- hri_rtcmode0_set_INTEN_TAMPER_bit(dev->hw);
- } else {
- /* disable tamper interrupt */
- hri_rtcmode0_clear_INTEN_TAMPER_bit(dev->hw);
- }
-
- return ERR_NONE;
-}
-/**
- * \brief Registers callback for the specified callback type
- */
-int32_t _calendar_register_callback(struct calendar_dev *const dev, calendar_drv_cb_t callback)
-{
- ASSERT(dev && dev->hw);
-
- /* Check callback */
- if (callback != NULL) {
- /* register the callback */
- dev->callback_alarm = callback;
-
- /* enable RTC_IRQn */
- NVIC_ClearPendingIRQ(RTC_IRQn);
- NVIC_EnableIRQ(RTC_IRQn);
-
- /* enable cmp */
- hri_rtcmode0_set_INTEN_CMP0_bit(dev->hw);
- } else {
- /* disable cmp */
- hri_rtcmode0_clear_INTEN_CMP0_bit(dev->hw);
- }
-
- return ERR_NONE;
-}
-
-/**
- * \brief RTC interrupt handler
- *
- * \param[in] dev The pointer to calendar device struct
- */
-static void _rtc_interrupt_handler(struct calendar_dev *dev)
-{
- /* Read and mask interrupt flag register */
- uint16_t interrupt_status = hri_rtcmode0_read_INTFLAG_reg(dev->hw);
- uint16_t interrupt_enabled = hri_rtcmode0_read_INTEN_reg(dev->hw);
-
- if ((interrupt_status & interrupt_enabled) & RTC_MODE2_INTFLAG_ALARM0) {
- if (dev->callback_alarm != NULL) {
- dev->callback_alarm();
- }
-
- /* Clear interrupt flag */
- hri_rtcmode0_clear_interrupt_CMP0_bit(dev->hw);
- } else if ((interrupt_status & interrupt_enabled) & RTC_MODE2_INTFLAG_PER7) {
- if (dev->callback_tick != NULL) {
- dev->callback_tick();
- }
-
- /* Clear interrupt flag */
- hri_rtcmode0_clear_interrupt_PER7_bit(dev->hw);
- } else if ((interrupt_status & interrupt_enabled) & RTC_MODE2_INTFLAG_TAMPER) {
- uint8_t reason = hri_rtc_get_TAMPID_reg(dev->hw, 0x1F);
- if (dev->callback_tamper != NULL) {
- dev->callback_tamper(reason);
- }
- hri_rtc_write_TAMPID_reg(dev->hw, reason);
-
- /* Clear interrupt flag */
- hri_rtcmode0_clear_interrupt_TAMPER_bit(dev->hw);
- }
-}
-/**
- * \brief Set calendar IRQ
- */
-void _calendar_set_irq(struct calendar_dev *const dev)
-{
- (void)dev;
- NVIC_SetPendingIRQ(RTC_IRQn);
-}
-
-/**
- * \brief Rtc interrupt handler
- */
-void RTC_Handler(void)
-{
- _rtc_interrupt_handler(_rtc_dev);
-}
diff --git a/watch-library/hpl/rtc/hpl_rtc_base.h b/watch-library/hpl/rtc/hpl_rtc_base.h
deleted file mode 100644
index 06e3bd79..00000000
--- a/watch-library/hpl/rtc/hpl_rtc_base.h
+++ /dev/null
@@ -1,52 +0,0 @@
-/**
- * \file
- *
- * \brief RTC
- *
- * Copyright (c) 2016-2018 Microchip Technology Inc. and its subsidiaries.
- *
- * \asf_license_start
- *
- * \page License
- *
- * Subject to your compliance with these terms, you may use Microchip
- * software and any derivatives exclusively with Microchip products.
- * It is your responsibility to comply with third party license terms applicable
- * to your use of third party software (including open source software) that
- * may accompany Microchip software.
- *
- * THIS SOFTWARE IS SUPPLIED BY MICROCHIP "AS IS". NO WARRANTIES,
- * WHETHER EXPRESS, IMPLIED OR STATUTORY, APPLY TO THIS SOFTWARE,
- * INCLUDING ANY IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY,
- * AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT WILL MICROCHIP BE
- * LIABLE FOR ANY INDIRECT, SPECIAL, PUNITIVE, INCIDENTAL OR CONSEQUENTIAL
- * LOSS, DAMAGE, COST OR EXPENSE OF ANY KIND WHATSOEVER RELATED TO THE
- * SOFTWARE, HOWEVER CAUSED, EVEN IF MICROCHIP HAS BEEN ADVISED OF THE
- * POSSIBILITY OR THE DAMAGES ARE FORESEEABLE. TO THE FULLEST EXTENT
- * ALLOWED BY LAW, MICROCHIP'S TOTAL LIABILITY ON ALL CLAIMS IN ANY WAY
- * RELATED TO THIS SOFTWARE WILL NOT EXCEED THE AMOUNT OF FEES, IF ANY,
- * THAT YOU HAVE PAID DIRECTLY TO MICROCHIP FOR THIS SOFTWARE.
- *
- * \asf_license_stop
- */
-
-#ifndef _HPL_RTC2_V200_H_INCLUDED
-#define _HPL_RTC2_V200_H_INCLUDED
-
-#include <hpl_timer.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/**
- * \brief Retrieve timer helper functions
- *
- * \return A pointer to set of timer helper functions
- */
-struct _timer_hpl_interface *_rtc_get_timer(void);
-
-#ifdef __cplusplus
-}
-#endif
-#endif /* _HPL_RTC2_V200_H_INCLUDED */
diff --git a/watch-library/hw/driver_init.c b/watch-library/hw/driver_init.c
index 2cfdced7..09723bec 100644
--- a/watch-library/hw/driver_init.c
+++ b/watch-library/hw/driver_init.c
@@ -13,19 +13,8 @@
struct slcd_sync_descriptor SEGMENT_LCD_0;
-struct calendar_descriptor CALENDAR_0;
-
struct i2c_m_sync_desc I2C_0;
-void CALENDAR_0_CLOCK_init(void) {
- hri_mclk_set_APBAMASK_RTC_bit(MCLK);
-}
-
-void CALENDAR_0_init(void) {
- CALENDAR_0_CLOCK_init();
- calendar_init(&CALENDAR_0, RTC);
-}
-
void I2C_0_PORT_init(void) {
gpio_set_pin_pull_mode(SDA,
diff --git a/watch-library/hw/driver_init.h b/watch-library/hw/driver_init.h
index 019a0b56..002f07aa 100644
--- a/watch-library/hw/driver_init.h
+++ b/watch-library/hw/driver_init.h
@@ -31,43 +31,22 @@ extern "C" {
#include <hal_io.h>
#include <hal_sleep.h>
#include <hal_ext_irq.h>
-#include <hal_calendar.h>
#include <hal_i2c_m_sync.h>
#include <hal_delay.h>
#include <hal_slcd_sync.h>
extern struct adc_sync_descriptor ADC_0;
-extern struct calendar_descriptor CALENDAR_0;
-
extern struct i2c_m_sync_desc I2C_0;
-extern struct pwm_descriptor PWM_0;
-
-extern struct pwm_descriptor PWM_1;
extern struct slcd_sync_descriptor SEGMENT_LCD_0;
-void ADC_0_PORT_init(void);
-void ADC_0_CLOCK_init(void);
-void ADC_0_init(void);
-
-void CALENDAR_0_CLOCK_init(void);
-void CALENDAR_0_init(void);
-
void I2C_0_CLOCK_init(void);
void I2C_0_init(void);
void I2C_0_PORT_init(void);
void delay_driver_init(void);
-void PWM_0_PORT_init(void);
-void PWM_0_CLOCK_init(void);
-void PWM_0_init(void);
-
-void PWM_1_PORT_init(void);
-void PWM_1_CLOCK_init(void);
-void PWM_1_init(void);
-
void EXTERNAL_IRQ_0_init(void);
void SEGMENT_LCD_0_init(void);
diff --git a/watch-library/main.c b/watch-library/main.c
index db602a34..1fe751ef 100755
--- a/watch-library/main.c
+++ b/watch-library/main.c
@@ -57,7 +57,7 @@ int main(void) {
// Ideally we should check if the TAMPER or CMP0 (alarm) flags are set.
if (_watch_rtc_is_enabled()) {
// User code. Give the application a chance to restore state from backup registers.
- app_wake_from_deep_sleep();
+ app_wake_from_backup();
// disable the tamper interrupt and clear the tamper bit
hri_rtcmode0_clear_INTEN_TAMPER_bit(RTC);
@@ -75,9 +75,9 @@ int main(void) {
bool can_sleep = app_loop();
if (can_sleep && !usb_enabled) {
- app_prepare_for_sleep();
+ app_prepare_for_standby();
sleep(4);
- app_wake_from_sleep();
+ app_wake_from_standby();
}
}
diff --git a/watch-library/watch/watch.c b/watch-library/watch/watch.c
index 6196b1f3..de7160c5 100644
--- a/watch-library/watch/watch.c
+++ b/watch-library/watch/watch.c
@@ -24,18 +24,6 @@
#include "watch.h"
-#include "watch_rtc.c"
-#include "watch_slcd.c"
-#include "watch_extint.c"
-#include "watch_led.c"
-#include "watch_buzzer.c"
-#include "watch_adc.c"
-#include "watch_gpio.c"
-#include "watch_i2c.c"
-#include "watch_uart.c"
-#include "watch_deepsleep.c"
-#include "watch_private.c"
-
bool battery_is_low = false;
// receives interrupts from MCLK, OSC32KCTRL, OSCCTRL, PAC, PM, SUPC and TAL, whatever that is.
diff --git a/watch-library/watch/watch.h b/watch-library/watch/watch.h
index 5cd45a6c..fee8f4ea 100644
--- a/watch-library/watch/watch.h
+++ b/watch-library/watch/watch.h
@@ -42,7 +42,7 @@
- @ref led - This section covers functions related to the bi-color red/green LED mounted behind the LCD.
- @ref buzzer - This section covers functions related to the piezo buzzer.
- @ref adc - This section covers functions related to the SAM L22's analog-to-digital converter, as well as
- configuring and reading values from the three analog-capable pins on the 9-pin connector.
+ configuring and reading values from the five analog-capable pins on the 9-pin connector.
- @ref gpio - This section covers functions related to general-purpose input and output signals.
- @ref i2c - This section covers functions related to the SAM L22's built-I2C driver, including configuring
the I2C bus, putting values directly on the bus and reading data from registers on I2C devices.
diff --git a/watch-library/watch/watch_adc.c b/watch-library/watch/watch_adc.c
index 490a49b1..90980a88 100644
--- a/watch-library/watch/watch_adc.c
+++ b/watch-library/watch/watch_adc.c
@@ -22,6 +22,8 @@
* SOFTWARE.
*/
+#include "watch_adc.h"
+
void _watch_sync_adc() {
while (ADC->SYNCBUSY.reg);
}
diff --git a/watch-library/watch/watch_adc.h b/watch-library/watch/watch_adc.h
index b49f1301..c9b6ad2a 100644
--- a/watch-library/watch/watch_adc.h
+++ b/watch-library/watch/watch_adc.h
@@ -21,8 +21,12 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
+#ifndef _WATCH_ADC_H_INCLUDED
+#define _WATCH_ADC_H_INCLUDED
////< @file watch_adc.h
+#include "watch.h"
+
/** @addtogroup adc Analog Input
* @brief This section covers functions related to the SAM L22's analog-to-digital converter,
* as well as configuring and reading values from the five analog-capable pins on the
@@ -103,3 +107,4 @@ void watch_disable_analog_input(const uint8_t pin);
void watch_disable_adc();
/// @}
+#endif
diff --git a/watch-library/watch/watch_app.h b/watch-library/watch/watch_app.h
index fd7ea706..56b9bfd3 100644
--- a/watch-library/watch/watch_app.h
+++ b/watch-library/watch/watch_app.h
@@ -21,6 +21,8 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
+#ifndef _WATCH_APP_H_INCLUDED
+#define _WATCH_APP_H_INCLUDED
////< @file watch_app.h
/** @addtogroup app Application Framework
@@ -31,7 +33,7 @@
*
* 1. Your app_init() function is called.
* - This method should only be used to set your initial application state.
- * 2. If your app is waking from BACKUP, app_wake_from_deep_sleep() is called.
+ * 2. If your app is waking from BACKUP, app_wake_from_backup() is called.
* - If you saved state in the RTC's backup registers, you can restore it here.
* 3. Your app_setup() method is called.
* - You may wish to enable some functionality and peripherals here.
@@ -41,11 +43,11 @@
* - Return true if your app is prepared to enter STANDBY mode.
* 5. This step differs depending on the value returned by app_loop:
* - If you returned false, execution resumes at (4).
- * - If you returned true, app_prepare_for_sleep() is called; execution moves on to (6).
- * 6. The microcontroller enters the STANDBY sleep mode.
+ * - If you returned true, app_prepare_for_standby() is called; execution moves on to (6).
+ * 6. The microcontroller enters STANDBY mode.
* - No user code will run, and the watch will enter a low power mode.
* - The watch will remain in this state until an interrupt wakes it.
- * 7. Once woken from STANDBY, your app_wake_from_sleep() function is called.
+ * 7. Once woken from STANDBY, your app_wake_from_standby() function is called.
* - After this, execution resumes at (4).
*/
/// @{
@@ -55,11 +57,11 @@
*/
void app_init();
-/** @brief A function you will implement to wake from deep sleep mode. The app_wake_from_deep_sleep function is only
- * called if your app is waking from the ultra-low power BACKUP sleep mode. You may have chosen to store some
- * state in the RTC's backup registers prior to entering this mode. You may restore that state here.
+/** @brief A function you will implement to wake from BACKUP mode, which wipes the system's RAM, and with it, your
+ * application's state. You may have chosen to store some important application state in the RTC's backup
+ * registers prior to entering this mode. You may restore that state here.
*/
-void app_wake_from_deep_sleep();
+void app_wake_from_backup();
/** @brief A function you will implement to set up your application. The app_setup function is like setup() in Arduino.
* It is called once when the program begins. You should set pin modes and enable any peripherals you want to
@@ -72,12 +74,12 @@ void app_wake_from_deep_sleep();
void app_setup();
/** @brief A function you will implement to serve as the app's main run loop. This method will be called repeatedly,
- or if you enter STANDBY sleep mode, as soon as the device wakes from sleep.
- * @return You should return true if your app is prepared to enter STANDBY sleep mode. If you return false, your
- * app's app_loop method will be called again immediately. Note that in STANDBY mode, the watch will consume
- * only about 95 microamperes of power, whereas if you return false and keep the app awake, it will consume
- * about 355 microamperes. This is the difference between months of battery life and days. As much as
- * possible, you should limit the amount of time your app spends awake.
+ or if you enter STANDBY mode, as soon as the device wakes from sleep.
+ * @return You should return true if your app is prepared to enter STANDBY mode. If you return false, your app's
+ * app_loop method will be called again immediately. Note that in STANDBY mode, the watch will consume only
+ * about 95 microamperes of power, whereas if you return false and keep the app awake, it will consume about
+ * 355 microamperes. This is the difference between months of battery life and days. As much as possible,
+ * you should limit the amount of time your app spends awake.
* @note Only the RTC, the segment LCD controller and the external interrupt controller run in STANDBY mode. If you
* are using, e.g. the PWM function to set a custom LED color, you should return false here until you are
* finished with that operation. Note however that the peripherals will continue running after waking up,
@@ -86,20 +88,21 @@ void app_setup();
*/
bool app_loop();
-/** @brief A function you will implement to prepare to enter STANDBY sleep mode. The app_prepare_for_sleep function is
- * called before the watch goes into the STANDBY sleep mode. In STANDBY mode, most peripherals are shut down,
- * and no code will run until the watch receives an interrupt (generally either the 1Hz tick or a press on one
- * of the buttons).
+/** @brief A function you will implement to prepare to enter STANDBY mode. The app_prepare_for_standby function is
+ * called after your app_loop function returns true, and just before the watch enters STANDBY mode. In this
+ * mode most peripherals are shut down, and no code will run until the watch receives an interrupt (generally
+ * either the 1Hz tick or a press on one of the buttons).
* @note If you are PWM'ing the LED or playing a sound on the buzzer, the TC/TCC peripherals that drive those operations
* will not run in STANDBY. BUT! the output pins will retain the state they had when entering standby. This means
* you could end up entering standby with an LED on and draining power, or with a DC potential across the piezo
* buzzer that could damage it if left in this state. If your app_loop does not prevent sleep during these
- * activities, you should make sure to disable these outputs in app_prepare_for_sleep.
+ * activities, you should make sure to disable these outputs in app_prepare_for_standby.
*/
-void app_prepare_for_sleep();
+void app_prepare_for_standby();
-/** @brief A method you will implement to configure the app after waking from STANDBY sleep mode.
+/** @brief A method you will implement to configure the app after waking from STANDBY mode.
*/
-void app_wake_from_sleep();
+void app_wake_from_standby();
/// @}
+#endif
diff --git a/watch-library/watch/watch_buzzer.c b/watch-library/watch/watch_buzzer.c
index 9cb37393..007a44ca 100644
--- a/watch-library/watch/watch_buzzer.c
+++ b/watch-library/watch/watch_buzzer.c
@@ -22,6 +22,8 @@
* SOFTWARE.
*/
+#include "watch_buzzer.h"
+
inline void watch_enable_buzzer() {
if (!hri_tcc_get_CTRLA_reg(TCC0, TCC_CTRLA_ENABLE)) {
_watch_enable_tcc();
diff --git a/watch-library/watch/watch_buzzer.h b/watch-library/watch/watch_buzzer.h
index 995e059a..e15657be 100644
--- a/watch-library/watch/watch_buzzer.h
+++ b/watch-library/watch/watch_buzzer.h
@@ -21,8 +21,12 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
+#ifndef _WATCH_BUZZER_H_INCLUDED
+#define _WATCH_BUZZER_H_INCLUDED
////< @file watch_buzzer.h
+#include "watch.h"
+
/** @addtogroup buzzer Buzzer
* @brief This section covers functions related to the piezo buzzer embedded in the F-91W's back plate.
*/
@@ -157,3 +161,4 @@ void watch_buzzer_play_note(BuzzerNote note, uint16_t duration_ms);
extern const uint16_t NotePeriods[108];
/// @}
+#endif
diff --git a/watch-library/watch/watch_deepsleep.c b/watch-library/watch/watch_deepsleep.c
index e5494e79..8120617b 100644
--- a/watch-library/watch/watch_deepsleep.c
+++ b/watch-library/watch/watch_deepsleep.c
@@ -22,24 +22,18 @@
* SOFTWARE.
*/
-static void extwake_callback(uint8_t reason);
-ext_irq_cb_t btn_alarm_callback;
-ext_irq_cb_t a2_callback;
-ext_irq_cb_t a4_callback;
-
- static void extwake_callback(uint8_t reason) {
- if (reason & RTC_TAMPID_TAMPID2) {
- if (btn_alarm_callback != NULL) btn_alarm_callback();
- } else if (reason & RTC_TAMPID_TAMPID1) {
- if (a2_callback != NULL) a2_callback();
- } else if (reason & RTC_TAMPID_TAMPID0) {
- if (a4_callback != NULL) a4_callback();
- }
-}
+#include "watch_extint.h"
+
+// this warning only appears when you `make BOARD=OSO-SWAT-A1-02`. it's annoying,
+// but i'd rather have it warn us at build-time than fail silently at run-time.
+// besides, no one but me really has any of these boards anyway.
+#if BTN_ALARM != GPIO(GPIO_PORTA, 2)
+#warning This board revision does not support external wake on BTN_ALARM, so watch_register_extwake_callback will not work with it. Use watch_register_interrupt_callback instead.
+#endif
void watch_register_extwake_callback(uint8_t pin, ext_irq_cb_t callback, bool level) {
uint32_t pinmux;
- hri_rtc_tampctrl_reg_t config = hri_rtc_get_TAMPCTRL_reg(RTC, 0xFFFFFFFF);
+ hri_rtc_tampctrl_reg_t config = RTC->MODE2.TAMPCTRL.reg;
switch (pin) {
case A4:
@@ -77,16 +71,45 @@ void watch_register_extwake_callback(uint8_t pin, ext_irq_cb_t callback, bool le
gpio_set_pin_function(pin, pinmux);
// disable the RTC
+ RTC->MODE2.CTRLA.bit.ENABLE = 0;
+ while (RTC->MODE2.SYNCBUSY.bit.ENABLE);
+
+ // update the configuration
+ RTC->MODE2.TAMPCTRL.reg = config;
+ // re-enable the RTC
+ RTC->MODE2.CTRLA.bit.ENABLE = 1;
+
+ NVIC_ClearPendingIRQ(RTC_IRQn);
+ NVIC_EnableIRQ(RTC_IRQn);
+ RTC->MODE2.INTENSET.reg = RTC_MODE2_INTENSET_TAMPER;
+}
+
+void watch_disable_extwake_interrupt(uint8_t pin) {
+ hri_rtc_tampctrl_reg_t config = hri_rtc_get_TAMPCTRL_reg(RTC, 0xFFFFFFFF);
+
+ switch (pin) {
+ case A4:
+ a4_callback = NULL;
+ config &= ~(3 << RTC_TAMPCTRL_IN0ACT_Pos);
+ break;
+ case A2:
+ a2_callback = NULL;
+ config &= ~(3 << RTC_TAMPCTRL_IN1ACT_Pos);
+ break;
+ case BTN_ALARM:
+ btn_alarm_callback = NULL;
+ config &= ~(3 << RTC_TAMPCTRL_IN2ACT_Pos);
+ break;
+ default:
+ return;
+ }
+
if (hri_rtcmode0_get_CTRLA_ENABLE_bit(RTC)) {
hri_rtcmode0_clear_CTRLA_ENABLE_bit(RTC);
hri_rtcmode0_wait_for_sync(RTC, RTC_MODE0_SYNCBUSY_ENABLE);
}
- // update the configuration
hri_rtc_write_TAMPCTRL_reg(RTC, config);
- // re-enable the RTC
hri_rtcmode0_set_CTRLA_ENABLE_bit(RTC);
-
- _extwake_register_callback(&CALENDAR_0.device, extwake_callback);
}
void watch_store_backup_data(uint32_t data, uint8_t reg) {
@@ -128,23 +151,12 @@ void _watch_disable_all_peripherals_except_slcd() {
MCLK->APBCMASK.reg &= ~MCLK_APBCMASK_SERCOM3;
}
-void watch_enter_deep_sleep(char *message) {
- // configure the ALARM interrupt (the callback doesn't matter)
- watch_register_extwake_callback(BTN_ALARM, NULL, true);
-
- if (message != NULL) {
- watch_display_string(" ", 0);
- watch_display_string(message, 0);
- } else {
- slcd_sync_deinit(&SEGMENT_LCD_0);
- hri_mclk_clear_APBCMASK_SLCD_bit(SLCD);
- }
-
+void watch_enter_sleep_mode() {
// disable all other peripherals
_watch_disable_all_peripherals_except_slcd();
// disable tick interrupt
- watch_register_tick_callback(NULL);
+ watch_rtc_disable_all_periodic_callbacks();
// disable brownout detector interrupt, which could inadvertently wake us up.
SUPC->INTENCLR.bit.BOD33DET = 1;
@@ -152,21 +164,29 @@ void watch_enter_deep_sleep(char *message) {
// disable all pins
_watch_disable_all_pins_except_rtc();
- // turn off RAM completely.
- PM->STDBYCFG.bit.BBIASHS = 3;
-
- // enter standby (4); we basically hang out here until an interrupt forces us to reset.
+ // enter standby (4); we basically hang out here until an interrupt wakes us.
sleep(4);
- NVIC_SystemReset();
+ // and we awake! re-enable the brownout detector
+ SUPC->INTENSET.bit.BOD33DET = 1;
+
+ // call app_setup so the app can re-enable everything we disabled.
+ app_setup();
+
+ // and call app_wake_from_standby (since main won't have a chance to do it)
+ app_wake_from_standby();
}
-void watch_enter_backup_mode() {
- // this will not work on the current silicon revision, but I said in the documentation that we do it.
- // so let's do it!
- watch_register_extwake_callback(BTN_ALARM, NULL, true);
+void watch_enter_deep_sleep_mode() {
+ // identical to sleep mode except we disable the LCD first.
+ slcd_sync_deinit(&SEGMENT_LCD_0);
+ hri_mclk_clear_APBCMASK_SLCD_bit(SLCD);
+
+ watch_enter_sleep_mode();
+}
- watch_register_tick_callback(NULL);
+void watch_enter_backup_mode() {
+ watch_rtc_disable_all_periodic_callbacks();
_watch_disable_all_peripherals_except_slcd();
slcd_sync_deinit(&SEGMENT_LCD_0);
hri_mclk_clear_APBCMASK_SLCD_bit(SLCD);
@@ -175,3 +195,15 @@ void watch_enter_backup_mode() {
// go into backup sleep mode (5). when we exit, the reset controller will take over.
sleep(5);
}
+
+// deprecated
+void watch_enter_shallow_sleep(bool display_on) {
+ if (display_on) watch_enter_sleep_mode();
+ else watch_enter_deep_sleep_mode();
+}
+
+// deprecated
+void watch_enter_deep_sleep() {
+ watch_register_extwake_callback(BTN_ALARM, NULL, true);
+ watch_enter_backup_mode();
+}
diff --git a/watch-library/watch/watch_deepsleep.h b/watch-library/watch/watch_deepsleep.h
index 3dadd663..a453e763 100644
--- a/watch-library/watch/watch_deepsleep.h
+++ b/watch-library/watch/watch_deepsleep.h
@@ -21,92 +21,127 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
+#ifndef _WATCH_DEEPSLEEP_H_INCLUDED
+#define _WATCH_DEEPSLEEP_H_INCLUDED
////< @file watch_deepsleep.h
-/** @addtogroup deepsleep Deep Sleep Control
- * @brief This section covers functions related to preparing for and entering BACKUP mode, the
- * deepest sleep mode available on the SAM L22
+#include "watch.h"
+
+// These are declared in watch_rtc.c.
+extern ext_irq_cb_t btn_alarm_callback;
+extern ext_irq_cb_t a2_callback;
+extern ext_irq_cb_t a4_callback;
+
+/** @addtogroup deepsleep Sleep Control
+ * @brief This section covers functions related to the various sleep modes available to the watch,
+ * including Sleep, Deep Sleep, and BACKUP mode.
+ * @details These terms changed meaning a bit over the course of development; if you are coming
+ * to this documentation after having worked with an earlier version of the library,
+ * these definitions should clarify the terminology. Terms in all caps are modes of the
+ * SAM L22; terms in Title Case are specific implementations in this library.
+ * - ACTIVE mode is the mode the SAM L22 is in when both the main clock and the CPU are
+ * running. It is the most power-hungry mode. If you ever call delay_ms to wait a beat,
+ * the watch will remain in ACTIVE mode while taking that delay. In addition, whenever
+ * your `app_loop` function returns false, the device will remain in ACTIVE mode and
+ * call your `app_loop` function again.
+ * - STANDBY mode turns off the main clock and halts the CPU. Since the PWM driver is
+ * run from the main clock, it also stops the buzzer and any dimming of the LEDs.
+ * In this mode, the watch can wake from any interrupt source. Whenever your `app_loop`
+ * function returns true, the watch enters STANDBY mode until the next tick or other
+ * interrupt. This mode uses much less power than ACTIVE mode.
+ * - Sleep Mode is a special case of STANDBY mode. In this mode, the watch turns off
+ * almost all peripherals (including the external interrupt controller), and disables
+ * all pins except for the external wake pins. In this mode the watch can only wake
+ * from the RTC alarm interrupt or an external wake pin (A2, A4 or the alarm button),
+ * but the display remains on and your app's state is retained. You can enter this
+ * mode by calling `watch_enter_sleep_mode`. It consumes an order of magnitude less
+ * power than STANDBY mode.
+ * - Deep Sleep Mode is identical to sleep mode, but it also turns off the LCD to save
+ * a bit more power. You can enter this mode by calling `watch_enter_deep_sleep_mode`.
+ * - BACKUP mode is the lowest possible power mode on the SAM L22. It turns off all pins
+ * and peripherals except for the RTC. It also turns off the RAM, obliterating your
+ * application's state. The only way to wake from this mode is by setting an external
+ * wake interrupt on pin A2 or pin A4, and when you do wake it will be much like a
+ * wake from reset. You can enter this mode by calling `watch_enter_backup_mode`.
*/
/// @{
/** @brief Registers a callback on one of the RTC's external wake pins, which can wake the device
- * from deep sleep (aka BACKUP) mode.
+ * from Sleep, Deep Sleep and BACKUP modes (but see warning re: BACKUP mode).
* @param pin Either pin BTN_ALARM, A2, or A4. These are the three external wake pins. If the pin
* is BTN_ALARM, this function also enables an internal pull down on that pin.
- * @param callback The callback to be called if this pin triggers outside of deep sleep mode. If
- * this is NULL, no callback will be called even in normal mode, but the interrupt
- * will still be enabled so that it can wake from deep sleep or backup mode.
+ * @param callback The callback to be called if this pin triggers outside of BACKUP mode. If this is
+ * NULL, no callback will be called even in normal modes, but the interrupt will
+ * still be enabled so that it can wake the device.
* @param level The level you wish to scan for: true for rising, false for falling. Note that you
* cannot scan for both rising and falling edges like you can with the external interrupt
* pins; with the external wake interrupt, you can only get one or the other.
- * @note When in normal or STANDBY mode, this will function much like a standard external interrupt
- * situation: these pins will wake from standby, and your callback will be called. However,
- * if the device enters deep sleep and one of these pins wakes the device, your callback
- * WILL NOT be called, as the device is basically waking from reset at that point.
+ * @note When in ACTIVE, STANDBY and Sleep / Deep sleep modes, this will function much like a standard
+ * external interrupt situation: these pins will wake the device, and your callback will be
+ * called. However, if the device enters BACKUP mode and one of these pins wakes the device, your
+ * callback WILL NOT be called, as the device is basically waking from reset at that point.
* @warning As of the current SAM L22 silicon revision (rev B), the BTN_ALARM pin cannot wake the
* device from BACKUP mode. You can still use this function to register a BTN_ALARM interrupt
* in normal or deep sleep mode, but to wake from BACKUP, you will need to use pin A2 or A4.
*/
void watch_register_extwake_callback(uint8_t pin, ext_irq_cb_t callback, bool level);
-/** @brief Unregisters the interrupt on one of the EXTWAKE pins. This will prevent a value change on
- * one of these pins from waking the device from deep sleep or BACKUP modes.
+/** @brief Unregisters the RTC interrupt on one of the EXTWAKE pins. This will prevent a value change on
+ * one of these pins from waking the device.
* @param pin Either pin BTN_ALARM, A2, or A4. If the pin is BTN_ALARM, this function DOES NOT disable
* the internal pull down on that pin.
*/
-void watch_disable_extwake_interrupt(uint8_t pin, ext_irq_cb_t callback, bool level);
+void watch_disable_extwake_interrupt(uint8_t pin);
-/** @brief Stores data in one of the RTC's backup registers, which retain their data in the deep sleep
- and backup modes.
+/** @brief Stores data in one of the RTC's backup registers, which retain their data in BACKUP mode.
* @param data An unsigned 32 bit integer with the data you wish to store.
* @param reg A register from 0-7.
*/
void watch_store_backup_data(uint32_t data, uint8_t reg);
-/** @brief Gets 32 bits of data from the RTC's backup register.
+/** @brief Gets 32 bits of data from the RTC's BACKUP register.
* @param reg A register from 0-7.
* @return An unsigned 32 bit integer with the from the backup register.
*/
uint32_t watch_get_backup_data(uint8_t reg);
-/** @brief Enters a deep sleep mode by disabling RAM retention and all peripherals except the RTC and
- * (optionally) the LCD. You can wake from this mode by pressing the ALARM button.
- * @param message Either NULL, or a string representing a message to display while in deep sleep mode. The
- * message will be displayed at position 0, so you should pad out the beginning of the string
- * with spaces if you wish for the message to appear on line 2, i.e. " SLEEP". If this
- * parameter is NULL, the screen will be blanked, and this function will disable the SLCD
- * peripheral for additional power savings. (also note that while the message will replace any
- * text on the display, this function will not clear any indicators you have set. This is by
- * design, in case you wish to leave an indicator lit in sleep mode.)
- * @details This deep sleep mode is not the lowest power mode available (see watch_enter_backup_mode), but
- * it has the benefit of being able to wake with a press of the ALARM button, and provides an option
- * for displaying a message to the user when asleep. The only way to wake from this mode is by
- * pressing the ALARM button, or receiving an interrupt on pin A2 or A4 of the nine-pin connector.
- * (An alarm interrupt would also work, but this has not yet been implemented.) This function enables
- * the ALARM button interrupt for you, but if you wish to wake from the A2 or A4 RTC interrupt, you
- * must configure them by calling watch_register_extwake_callback. Note however that your callback
- * will not be called in this case.
- * Power consumption in deep sleep mode varies a bit with the battery voltage and the temperature,
- * but at 3 V and ~25° C you can eoughly estimate:
- * * ~12µA current draw with the LCD controller on (message != NULL)
- * * ~6.5µA current draw with the LCD controller off (message == NULL)
- * @note With RAM powered off, your application state will be cleared as soon as you call this function, and
- * when the user wakes up the watch, your app will effectively be waking from reset. Your app's @ref
- * app_wake_from_deep_sleep function will be called to give your app a chance to restore any state that
- * you stored using @ref watch_store_backup_data.
+/** @brief enters Sleep Mode by disabling all pins and peripherals except the RTC and the LCD.
+ * @details This sleep mode is not the lowest power mode available, but it has the benefit of allowing you
+ * to display a message to the user while asleep. You can also set an alarm interrupt to wake at a
+ * configfurable interval (every minute, hour or day) to update the display. You can wake from this
+ * mode by pressing the ALARM button, if you registered an extwake callback on the ALARM button.
+ * Also note that when your app wakes from this sleep mode, your app_setup method will be called
+ * again, since this function will have disabled things you set up there.
+ *
+ * Note that to wake from either the ALARM button, the A2 interrupt or the A4 interrupt, you
+ * must first configure this by calling watch_register_extwake_callback.
+ *
+ * You can estimate the power consumption of this mode to be on the order of 30 microwatts
+ * (about 10 µA at 3 V).
+ */
+void watch_enter_sleep_mode();
+
+/** @brief enters Deep Sleep Mode by disabling all pins and peripherals except the RTC.
+ * @details Short of BACKUP mode, this is the lowest power mode you can enter while retaining your
+ * application state (and the ability to wake with the alarm button). Just note that the display
+ * will be completely off, so you should document to the user of your application that they will
+ * need to press the alarm button to wake the device, or use a sensor board with support for
+ * an external wake pin.
+ *
+ * All notes from watch_enter_sleep_mode apply here, except for power consumption. You can estimate
+ * the power consumption of this mode to be on the order of 12 microwatts (about 4µA at 3 V).
*/
-void watch_enter_deep_sleep(char *message);
+void watch_enter_deep_sleep_mode();
/** @brief Enters the SAM L22's lowest-power mode, BACKUP.
- * @details This function does some housekeeping before entering BACKUP mode. It first disables all
- * peripherals except for the RTC, and disables the tick interrupt (since that would wake
- * us up from deep sleep). It also sets an external wake source on the ALARM button, if one
- * was not already set. If you wish to wake from another source, such as one of the external
- * wake interrupt pins on the 9-pin connector, set that up prior to calling this function.
+ * @details This function does some housekeeping before entering BACKUP mode. It first disables all pins
+ * and peripherals except for the RTC, and disables the tick interrupt (since that would wake
+ * us up from BACKUP mode). Once again, if you wish to wake from the A2 or the A4 interrupt,
+ * you must first configure this by calling watch_register_extwake_callback.
* @note If you have a callback set for an external wake interrupt, it will be called if triggered while
- * in ACTIVE, IDLE or STANDBY modes, but it *will not be called* when waking from BACKUP.
- * Waking from backup is effectively like waking from reset, except that your @ref
- * app_wake_from_deep_sleep function will be called.
+ * in ACTIVE, STANDBY, Sleep and Deep Sleep modes, but it *will not be called* when waking from
+ * BACKUP mode. Waking from backup is effectively like waking from reset, except that your
+ * @ref app_wake_from_backup function will be called.
* @warning On current revisions of the SAM L22 silicon, the ALARM_BTN pin (PA02 RTC/IN2) cannot wake
* the device from deep sleep mode. There is an errata note (Reference: 15010) that says that
* due to a silicon bug, RTC/IN2 is not functional in BACKUP. As a result, you should not call
@@ -114,4 +149,11 @@ void watch_enter_deep_sleep(char *message);
* on pin A2 or A4 (i.e. an accelerometer with an interrupt pin).
*/
void watch_enter_backup_mode();
+
+__attribute__((deprecated("Use watch_enter_sleep_mode or watch_enter_deep_sleep_mode instead")))
+void watch_enter_shallow_sleep(bool display_on);
+
+__attribute__((deprecated("Use watch_enter_backup_mode instead")))
+void watch_enter_deep_sleep();
/// @}
+#endif
diff --git a/watch-library/watch/watch_extint.c b/watch-library/watch/watch_extint.c
index f2bad949..d6ad5b60 100644
--- a/watch-library/watch/watch_extint.c
+++ b/watch-library/watch/watch_extint.c
@@ -22,6 +22,8 @@
* SOFTWARE.
*/
+#include "watch_extint.h"
+
void watch_enable_external_interrupts() {
// Configure EIC to use GCLK3 (the 32.768 kHz crystal)
hri_gclk_write_PCHCTRL_reg(GCLK, EIC_GCLK_ID, GCLK_PCHCTRL_GEN_GCLK3_Val | (1 << GCLK_PCHCTRL_CHEN_Pos));
@@ -63,18 +65,14 @@ void watch_register_interrupt_callback(const uint8_t pin, ext_irq_cb_t callback,
sense_pos = 4 * (WATCH_A4_EIC_CHANNEL % 8);
break;
case BTN_ALARM:
- // for the buttons, we need an internal pull-down.
- gpio_set_pin_pull_mode(pin, GPIO_PULL_DOWN);
config_index = (WATCH_BTN_ALARM_EIC_CHANNEL > 7) ? 1 : 0;
sense_pos = 4 * (WATCH_BTN_ALARM_EIC_CHANNEL % 8);
break;
case BTN_LIGHT:
- gpio_set_pin_pull_mode(pin, GPIO_PULL_DOWN);
config_index = (WATCH_BTN_LIGHT_EIC_CHANNEL > 7) ? 1 : 0;
sense_pos = 4 * (WATCH_BTN_LIGHT_EIC_CHANNEL % 8);
break;
case BTN_MODE:
- gpio_set_pin_pull_mode(pin, GPIO_PULL_DOWN);
config_index = (WATCH_BTN_MODE_EIC_CHANNEL > 7) ? 1 : 0;
sense_pos = 4 * (WATCH_BTN_MODE_EIC_CHANNEL % 8);
break;
@@ -83,7 +81,6 @@ void watch_register_interrupt_callback(const uint8_t pin, ext_irq_cb_t callback,
}
gpio_set_pin_direction(pin, GPIO_DIRECTION_IN);
- gpio_set_pin_function(pin, GPIO_PIN_FUNCTION_A);
// EIC configuration register is enable-protected, so we have to disable it first...
if (hri_eic_get_CTRLA_reg(EIC, EIC_CTRLA_ENABLE)) {
@@ -96,6 +93,9 @@ void watch_register_interrupt_callback(const uint8_t pin, ext_irq_cb_t callback,
config &= ~(7 << sense_pos);
config |= trigger << (sense_pos);
hri_eic_write_CONFIG_reg(EIC, config_index, config);
+ // ...set the pin mode...
+ gpio_set_pin_function(pin, GPIO_PIN_FUNCTION_A);
+ if (pin == BTN_ALARM || pin == BTN_LIGHT || pin == BTN_MODE) gpio_set_pin_pull_mode(pin, GPIO_PULL_DOWN);
// ...and re-enable the EIC
hri_eic_set_CTRLA_ENABLE_bit(EIC);
diff --git a/watch-library/watch/watch_extint.h b/watch-library/watch/watch_extint.h
index 9c810534..758fe8bc 100644
--- a/watch-library/watch/watch_extint.h
+++ b/watch-library/watch/watch_extint.h
@@ -21,8 +21,11 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
+#ifndef _WATCH_EXTINT_H_INCLUDED
+#define _WATCH_EXTINT_H_INCLUDED
////< @file watch_extint.h
+#include "watch.h"
#include "hal_ext_irq.h"
/** @addtogroup buttons Buttons & External Interrupts
@@ -78,3 +81,4 @@ void watch_register_button_callback(const uint8_t pin, ext_irq_cb_t callback);
__attribute__((deprecated("Use watch_enable_external_interrupts instead")))
void watch_enable_buttons();
/// @}
+#endif
diff --git a/watch-library/watch/watch_gpio.c b/watch-library/watch/watch_gpio.c
index a9bc139d..b37d009f 100644
--- a/watch-library/watch/watch_gpio.c
+++ b/watch-library/watch/watch_gpio.c
@@ -22,6 +22,8 @@
* SOFTWARE.
*/
+#include "watch_gpio.h"
+
void watch_enable_digital_input(const uint8_t pin) {
gpio_set_pin_direction(pin, GPIO_DIRECTION_IN);
gpio_set_pin_function(pin, GPIO_PIN_FUNCTION_OFF);
diff --git a/watch-library/watch/watch_gpio.h b/watch-library/watch/watch_gpio.h
index 640686e0..fc43642c 100644
--- a/watch-library/watch/watch_gpio.h
+++ b/watch-library/watch/watch_gpio.h
@@ -21,8 +21,12 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
+#ifndef _WATCH_GPIO_H_INCLUDED
+#define _WATCH_GPIO_H_INCLUDED
////< @file watch_gpio.h
+#include "watch.h"
+
/** @addtogroup gpio Digital Input and Output
* @brief This section covers functions related to general-purpose input and output signals.
*/
@@ -69,3 +73,4 @@ void watch_disable_digital_output(const uint8_t pin);
*/
void watch_set_pin_level(const uint8_t pin, const bool level);
/// @}
+#endif
diff --git a/watch-library/watch/watch_i2c.c b/watch-library/watch/watch_i2c.c
index 385d9d08..d2cf474b 100644
--- a/watch-library/watch/watch_i2c.c
+++ b/watch-library/watch/watch_i2c.c
@@ -22,7 +22,9 @@
* SOFTWARE.
*/
- struct io_descriptor *I2C_0_io;
+#include "watch_i2c.h"
+
+struct io_descriptor *I2C_0_io;
void watch_enable_i2c() {
I2C_0_init();
diff --git a/watch-library/watch/watch_i2c.h b/watch-library/watch/watch_i2c.h
index 7ac05c13..65df49b4 100644
--- a/watch-library/watch/watch_i2c.h
+++ b/watch-library/watch/watch_i2c.h
@@ -21,8 +21,12 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
+#ifndef _WATCH_I2C_H_INCLUDED
+#define _WATCH_I2C_H_INCLUDED
////< @file watch_i2c.h
+#include "watch.h"
+
/** @addtogroup i2c I2C Controller Driver
* @brief This section covers functions related to the SAM L22's built-I2C driver, including
* configuring the I2C bus, putting values directly on the bus and reading data from
@@ -99,3 +103,4 @@ uint32_t watch_i2c_read24(int16_t addr, uint8_t reg);
*/
uint32_t watch_i2c_read32(int16_t addr, uint8_t reg);
/// @}
+#endif
diff --git a/watch-library/watch/watch_led.c b/watch-library/watch/watch_led.c
index 7b189452..1348c977 100644
--- a/watch-library/watch/watch_led.c
+++ b/watch-library/watch/watch_led.c
@@ -22,6 +22,8 @@
* SOFTWARE.
*/
+#include "watch_led.h"
+
void watch_enable_leds() {
if (!hri_tcc_get_CTRLA_reg(TCC0, TCC_CTRLA_ENABLE)) {
_watch_enable_tcc();
diff --git a/watch-library/watch/watch_led.h b/watch-library/watch/watch_led.h
index 0927e716..2b9dead0 100644
--- a/watch-library/watch/watch_led.h
+++ b/watch-library/watch/watch_led.h
@@ -21,8 +21,12 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
+#ifndef _WATCH_LED_H_INCLUDED
+#define _WATCH_LED_H_INCLUDED
////< @file watch_led.h
+#include "watch.h"
+
/** @addtogroup led LED Control
* @brief This section covers functions related to the bi-color red/green LED mounted behind the LCD.
* @details The SAM L22 is an exceedingly power efficient chip, whereas the LED's are relatively power-
@@ -86,3 +90,4 @@ void watch_enable_led(bool unused);
__attribute__((deprecated("Use watch_disable_leds instead")))
void watch_disable_led(bool unused);
/// @}
+#endif
diff --git a/watch-library/watch/watch_private.c b/watch-library/watch/watch_private.c
index bdf6b78a..270208dc 100644
--- a/watch-library/watch/watch_private.c
+++ b/watch-library/watch/watch_private.c
@@ -22,6 +22,7 @@
* SOFTWARE.
*/
+#include "watch_private.h"
#include "tusb.h"
void _watch_init() {
@@ -56,8 +57,7 @@ void _watch_init() {
SUPC->BOD33.bit.ENABLE = 1;
// External wake depends on RTC; calendar is a required module.
- CALENDAR_0_init();
- calendar_enable(&CALENDAR_0);
+ _watch_rtc_init();
// set up state
btn_alarm_callback = NULL;
diff --git a/watch-library/watch/watch_private.h b/watch-library/watch/watch_private.h
index abee085a..8045e438 100644
--- a/watch-library/watch/watch_private.h
+++ b/watch-library/watch/watch_private.h
@@ -21,10 +21,17 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
+#ifndef _WATCH_PRIVATE_H_INCLUDED
+#define _WATCH_PRIVATE_H_INCLUDED
+
+#include "watch.h"
/// Called by main.c while setting up the app. You should not call this from your app.
void _watch_init();
+/// Initializes the real-time clock peripheral.
+void _watch_rtc_init();
+
/// Called by buzzer and LED setup functions. You should not call this from your app.
void _watch_enable_tcc();
@@ -33,3 +40,4 @@ void _watch_disable_tcc();
/// Called by main.c if plugged in to USB. You should not call this from your app.
void _watch_enable_usb();
+#endif
diff --git a/watch-library/watch/watch_rtc.c b/watch-library/watch/watch_rtc.c
index 2d6d598f..a50da7c4 100644
--- a/watch-library/watch/watch_rtc.c
+++ b/watch-library/watch/watch_rtc.c
@@ -22,19 +22,174 @@
* SOFTWARE.
*/
- bool _watch_rtc_is_enabled() {
- return RTC->MODE0.CTRLA.bit.ENABLE;
+#include "watch_rtc.h"
+
+ext_irq_cb_t tick_callbacks[8];
+ext_irq_cb_t alarm_callback;
+ext_irq_cb_t btn_alarm_callback;
+ext_irq_cb_t a2_callback;
+ext_irq_cb_t a4_callback;
+
+bool _watch_rtc_is_enabled() {
+ return RTC->MODE2.CTRLA.bit.ENABLE;
+}
+
+void _sync_rtc() {
+ while (RTC->MODE2.SYNCBUSY.reg);
}
+void _watch_rtc_init() {
+ MCLK->APBAMASK.reg |= MCLK_APBAMASK_RTC;
+
+ if (_watch_rtc_is_enabled()) return; // don't reset the RTC if it's already set up.
+
+ RTC->MODE2.CTRLA.bit.ENABLE = 0;
+ _sync_rtc();
+
+ RTC->MODE2.CTRLA.bit.SWRST = 1;
+ _sync_rtc();
+
+ RTC->MODE2.CTRLA.bit.MODE = RTC_MODE2_CTRLA_MODE_CLOCK_Val;
+ RTC->MODE2.CTRLA.bit.PRESCALER = RTC_MODE2_CTRLA_PRESCALER_DIV1024_Val;
+ RTC->MODE2.CTRLA.bit.CLOCKSYNC = 1;
+ RTC->MODE2.CTRLA.bit.ENABLE = 1;
+ _sync_rtc();
+}
+
+void watch_rtc_set_date_time(watch_date_time date_time) {
+ RTC->MODE2.CLOCK.reg = date_time.reg;
+ _sync_rtc();
+}
+
+watch_date_time watch_rtc_get_date_time() {
+ watch_date_time retval;
+
+ _sync_rtc();
+ retval.reg = RTC->MODE2.CLOCK.reg;
+
+ return retval;
+}
+
+void watch_rtc_register_tick_callback(ext_irq_cb_t callback) {
+ watch_rtc_register_periodic_callback(callback, 1);
+}
+
+void watch_rtc_disable_tick_callback() {
+ watch_rtc_disable_periodic_callback(1);
+}
+
+void watch_rtc_register_periodic_callback(ext_irq_cb_t callback, uint8_t frequency) {
+ // we told them, it has to be a power of 2.
+ if (__builtin_popcount(frequency) != 1) return;
+
+ // this left-justifies the period in a 32-bit integer.
+ uint32_t tmp = frequency << 24;
+ // now we can count the leading zeroes to get the value we need.
+ // 0x01 (1 Hz) will have 7 leading zeros for PER7. 0xF0 (128 Hz) will have no leading zeroes for PER0.
+ uint8_t per_n = __builtin_clz(tmp);
+
+ // this also maps nicely to an index for our list of tick callbacks.
+ tick_callbacks[per_n] = callback;
+
+ NVIC_ClearPendingIRQ(RTC_IRQn);
+ NVIC_EnableIRQ(RTC_IRQn);
+ RTC->MODE2.INTENSET.reg = 1 << per_n;
+}
+
+void watch_rtc_disable_periodic_callback(uint8_t frequency) {
+ if (__builtin_popcount(frequency) != 1) return;
+ uint8_t per_n = __builtin_clz(frequency << 24);
+ RTC->MODE2.INTENCLR.reg = 1 << per_n;
+}
+
+void watch_rtc_disable_all_periodic_callbacks() {
+ RTC->MODE2.INTENCLR.reg = 0xFF;
+}
+
+void watch_rtc_register_alarm_callback(ext_irq_cb_t callback, watch_date_time alarm_time, watch_rtc_alarm_match mask) {
+ RTC->MODE2.Mode2Alarm[0].ALARM.reg = alarm_time.reg;
+ RTC->MODE2.Mode2Alarm[0].MASK.reg = mask;
+ RTC->MODE2.INTENSET.reg = RTC_MODE2_INTENSET_ALARM0;
+ alarm_callback = callback;
+ NVIC_ClearPendingIRQ(RTC_IRQn);
+ NVIC_EnableIRQ(RTC_IRQn);
+ RTC->MODE2.INTENSET.reg = RTC_MODE2_INTENSET_ALARM0;
+}
+
+void watch_rtc_disable_alarm_callback() {
+ RTC->MODE2.INTENCLR.reg = RTC_MODE2_INTENCLR_ALARM0;
+}
+
+void RTC_Handler(void) {
+ uint16_t interrupt_status = RTC->MODE2.INTFLAG.reg;
+ uint16_t interrupt_enabled = RTC->MODE2.INTENSET.reg;
+
+ if ((interrupt_status & interrupt_enabled) & RTC_MODE2_INTFLAG_PER_Msk) {
+ // handle the tick callback first, it's what we do the most.
+ // start from PER7, the 1 Hz tick.
+ for(int8_t i = 7; i >= 0; i--) {
+ if ((interrupt_status & interrupt_enabled) & (1 << i)) {
+ if (tick_callbacks[i] != NULL) {
+ tick_callbacks[i]();
+ }
+ RTC->MODE2.INTFLAG.reg = 1 << i;
+ break;
+ }
+ }
+ } else if ((interrupt_status & interrupt_enabled) & RTC_MODE2_INTFLAG_TAMPER) {
+ // handle the extwake interrupts next.
+ uint8_t reason = RTC->MODE2.TAMPID.reg;
+ if (reason & RTC_TAMPID_TAMPID2) {
+ if (btn_alarm_callback != NULL) btn_alarm_callback();
+ } else if (reason & RTC_TAMPID_TAMPID1) {
+ if (a2_callback != NULL) a2_callback();
+ } else if (reason & RTC_TAMPID_TAMPID0) {
+ if (a4_callback != NULL) a4_callback();
+ }
+ RTC->MODE2.TAMPID.reg = reason;
+ RTC->MODE2.INTFLAG.reg = RTC_MODE2_INTFLAG_TAMPER;
+ } else if ((interrupt_status & interrupt_enabled) & RTC_MODE2_INTFLAG_ALARM0) {
+ // finally handle the alarm.
+ if (alarm_callback != NULL) {
+ alarm_callback();
+ }
+ RTC->MODE2.INTFLAG.reg = RTC_MODE2_INTFLAG_ALARM0;
+ }
+}
+
+///////////////////////
+// Deprecated functions
+
void watch_set_date_time(struct calendar_date_time date_time) {
- calendar_set_date(&CALENDAR_0, &date_time.date);
- calendar_set_time(&CALENDAR_0, &date_time.time);
+ RTC_MODE2_CLOCK_Type val;
+
+ val.bit.SECOND = date_time.time.sec;
+ val.bit.MINUTE = date_time.time.min;
+ val.bit.HOUR = date_time.time.hour;
+ val.bit.DAY = date_time.date.day;
+ val.bit.MONTH = date_time.date.month;
+ val.bit.YEAR = (uint8_t)(date_time.date.year - WATCH_RTC_REFERENCE_YEAR);
+
+ RTC->MODE2.CLOCK.reg = val.reg;
+
+ _sync_rtc();
}
void watch_get_date_time(struct calendar_date_time *date_time) {
- calendar_get_date_time(&CALENDAR_0, date_time);
+ _sync_rtc();
+ RTC_MODE2_CLOCK_Type val = RTC->MODE2.CLOCK;
+
+ date_time->time.sec = val.bit.SECOND;
+ date_time->time.min = val.bit.MINUTE;
+ date_time->time.hour = val.bit.HOUR;
+ date_time->date.day = val.bit.DAY;
+ date_time->date.month = val.bit.MONTH;
+ date_time->date.year = val.bit.YEAR + WATCH_RTC_REFERENCE_YEAR;
}
void watch_register_tick_callback(ext_irq_cb_t callback) {
- _prescaler_register_callback(&CALENDAR_0.device, callback);
+ tick_callbacks[7] = callback;
+ NVIC_ClearPendingIRQ(RTC_IRQn);
+ NVIC_EnableIRQ(RTC_IRQn);
+ RTC->MODE2.INTENSET.reg = RTC_MODE2_INTENSET_PER7;
}
diff --git a/watch-library/watch/watch_rtc.h b/watch-library/watch/watch_rtc.h
index c685ac26..7ddd7483 100644
--- a/watch-library/watch/watch_rtc.h
+++ b/watch-library/watch/watch_rtc.h
@@ -21,8 +21,11 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
+#ifndef _WATCH_RTC_H_INCLUDED
+#define _WATCH_RTC_H_INCLUDED
////< @file watch_rtc.h
+#include "watch.h"
#include "hpl_calendar.h"
/** @addtogroup rtc Real-Time Clock
@@ -35,24 +38,127 @@
* to wake from STANDBY mode.
*/
/// @{
+
+#define WATCH_RTC_REFERENCE_YEAR (2020)
+
+typedef union {
+ struct {
+ uint32_t second : 6; // 0-59
+ uint32_t minute : 6; // 0-59
+ uint32_t hour : 5; // 0-23
+ uint32_t day : 5; // 1-31
+ uint32_t month : 4; // 1-12
+ uint32_t year : 6; // 0-63 (representing 2020-2083)
+ } unit;
+ uint32_t reg; // the bit-packed value as expected by the RTC peripheral's CLOCK register.
+} watch_date_time;
+
+typedef enum watch_rtc_alarm_match {
+ ALARM_MATCH_DISABLED = 0,
+ ALARM_MATCH_SS,
+ ALARM_MATCH_MMSS,
+ ALARM_MATCH_HHMMSS,
+} watch_rtc_alarm_match;
+
/** @brief Called by main.c to check if the RTC is enabled.
- * You may call this function, but outside of app_init, it sbould always return true.
+ * You may call this function, but outside of app_init, it should always return true.
*/
bool _watch_rtc_is_enabled();
+/** @brief Sets the date and time.
+ * @param date_time The date and time you wish to set, with a year value from 0-63 representing 2020-2083.
+ * @note The SAM L22 stores the year as six bits representing a value from 0 to 63. It treats this as a year
+ * offset from a reference year, which must be a leap year. Since 2020 was a leap year, and it allows
+ * useful dates through 2083, it is assumed that watch apps will use 2020 as the reference year; thus
+ * 1 means 2021, 2 means 2022, etc. **You will be responsible for handling this offset in your code**,
+ * if the calendar year is needed for timestamp calculation logic or display purposes.
+ */
+void watch_rtc_set_date_time(watch_date_time date_time);
+
+/** @brief Returns the date and time.
+ * @return A watch_date_time with the current date and time, with a year value from 0-63 representing 2020-2083.
+ * @see watch_rtc_set_date_time for notes about how the year is stored.
+ */
+watch_date_time watch_rtc_get_date_time();
+
+/** @brief Registers an alarm callback that will be called when the RTC time matches the target time, as masked
+ * by the provided mask.
+ * @param callback The function you wish to have called when the alarm fires. If this value is NULL, the alarm
+ * interrupt will still be enabled, but no callback function will be called.
+ * @param alarm_time The time that you wish to match. The date is currently ignored.
+ * @param mask One of the values in watch_rtc_alarm_match indicating which values to check.
+ * @details The alarm interrupt is a versatile tool for scheduling events in the future, especially since it can
+ * wake the device from all sleep modes. The key to its versatility is the mask parameter.
+ * Suppose we set an alarm for midnight, 00:00:00.
+ * * if mask is ALARM_MATCH_SS, the alarm will fire every minute when the clock ticks to seconds == 0.
+ * * with ALARM_MATCH_MMSS, the alarm will once an hour, at the top of each hour.
+ * * with ALARM_MATCH_HHMMSS, the alarm will fire at midnight every day.
+ * In theory the SAM L22's alarm function can match on days, months and even years, but I have not had
+ * success with this yet; as such, I am omitting these options for now.
+ */
+void watch_rtc_register_alarm_callback(ext_irq_cb_t callback, watch_date_time alarm_time, watch_rtc_alarm_match mask);
+
+/** @brief Disables the alarm callback.
+ */
+void watch_rtc_disable_alarm_callback();
+
+/** @brief Registers a "tick" callback that will be called once per second.
+ * @param callback The function you wish to have called when the clock ticks. If you pass in NULL, the tick
+ * interrupt will still be enabled, but no callback function will be called.
+ * @note this is equivalent to calling watch_rtc_register_periodic_callback with a frequency of 1. It can be
+ * disabled with either watch_rtc_disable_tick_callback() or watch_rtc_disable_periodic_callback(1),
+ * and will also be disabled when watch_rtc_disable_all_periodic_callbacks is called.
+ */
+void watch_rtc_register_tick_callback(ext_irq_cb_t callback);
+
+/** @brief Disables the tick callback for the given period.
+ */
+void watch_rtc_disable_tick_callback();
+
+/** @brief Registers a callback that will be called at a configurable period.
+ * @param callback The function you wish to have called at the specified period. If you pass in NULL, the periodic
+ * interrupt will still be enabled, but no callback function will be called.
+ * @param frequency The frequency of the tick in Hz. **Must be a power of 2**, from 1 to 128 inclusive.
+ * @note A 1 Hz tick (@see watch_rtc_register_tick_callback) is suitable for most applications, in that it gives you a
+ * chance to update the display once a second — an ideal update rate for a watch! If however you are displaying
+ * a value (such as an accelerometer output) that updates more frequently than once per second, you may want to
+ * tick at 16 or 32 Hz to update the screen more quickly. Just remember that the more frequent the tick, the more
+ * power your app will consume. Ideally you should enable the fast tick only when the user requires it (i.e. in
+ * response to an input event), and move back to the slow tick after some time.
+ *
+ * Also note that the RTC peripheral does not have sub-second resolution, so even if you set a 2 or 4 Hz interval,
+ * the system will not have any way of telling you where you are within a given second; watch_rtc_get_date_time
+ * will return the exact same timestamp until the second ticks over.
+ */
+void watch_rtc_register_periodic_callback(ext_irq_cb_t callback, uint8_t frequency);
+
+/** @brief Disables the tick callback for the given period.
+ * @param frequency The frequency of the tick you wish to disable, in Hz. **Must be a power of 2**, from 1 to 128.
+ */
+void watch_rtc_disable_periodic_callback(uint8_t frequency);
+
+/** @brief Disables all periodic callbacks, including the once-per-second tick callback.
+ */
+void watch_rtc_disable_all_periodic_callbacks();
+
/** @brief Sets the system date and time.
* @param date_time A struct representing the date and time you wish to set.
*/
+__attribute__((deprecated("Use watch_rtc_set_date_time function instead")))
void watch_set_date_time(struct calendar_date_time date_time);
/** @brief Returns the system date and time in the provided struct.
- * @param date_time A pointer to a calendar_date_time struct.
- It will be populated with the correct date and time on return.
+ * @param date_time A pointer to a calendar_date_time struct. It will have with the correct date and time on return.
*/
+__attribute__((deprecated("Use the watch_rtc_get_date_time function instead")))
void watch_get_date_time(struct calendar_date_time *date_time);
/** @brief Registers a "tick" callback that will be called once per second.
- * @param callback The function you wish to have called when the clock ticks.
+ * @param callback The function you wish to have called when the clock ticks. If you pass in NULL, the tick
+ * interrupt will still be enabled, but no callback function will be called.
*/
+__attribute__((deprecated("Use the watch_rtc_register_tick_callback function instead")))
void watch_register_tick_callback(ext_irq_cb_t callback);
+
/// @}
+#endif
diff --git a/watch-library/watch/watch_slcd.c b/watch-library/watch/watch_slcd.c
index 7210713a..63ba7988 100644
--- a/watch-library/watch/watch_slcd.c
+++ b/watch-library/watch/watch_slcd.c
@@ -22,6 +22,9 @@
* SOFTWARE.
*/
+#include "watch_slcd.h"
+#include "hpl_slcd_config.h"
+
//////////////////////////////////////////////////////////////////////////////////////////
// Segmented Display
@@ -112,8 +115,8 @@ static const uint8_t Character_Set[] =
0b01010000, // r
0b01101101, // s
0b01111000, // t
- 0b01100010, // u (appears as superscript to work in more positions)
- 0b01100010, // v (appears as superscript to work in more positions)
+ 0b01100010, // u (appears in (u)pper half to work in more positions)
+ 0b00011100, // v (looks like u but in the lower half)
0b10111110, // w (only works in position 0)
0b01111110, // x
0b01101110, // y
@@ -147,6 +150,10 @@ static const uint32_t IndicatorSegments[6] = {
SLCD_SEGID(1, 10), // WATCH_INDICATOR_LAP
};
+void _sync_slcd() {
+ while (SLCD->SYNCBUSY.reg);
+}
+
void watch_enable_display() {
SEGMENT_LCD_0_init();
slcd_sync_enable(&SEGMENT_LCD_0);
@@ -160,9 +167,23 @@ inline void watch_clear_pixel(uint8_t com, uint8_t seg) {
slcd_sync_seg_off(&SEGMENT_LCD_0, SLCD_SEGID(com, seg));
}
+void watch_clear_display() {
+ SLCD->SDATAL0.reg = 0;
+ SLCD->SDATAL1.reg = 0;
+ SLCD->SDATAL2.reg = 0;
+}
+
void watch_display_character(uint8_t character, uint8_t position) {
- // handle lowercase 7 if needed
- if (character == '7' && (position == 4 || position == 6)) character = '&';
+ // special cases for positions 4 and 6
+ if (position == 4 || position == 6) {
+ if (character == '7') character = '&'; // "lowercase" 7
+ if (character == 'v') character = 'u'; // bottom segment duplicated, so show in top half
+ if (character == 'J') character = 'j'; // same
+ } else if (position != 4 && position != 6) {
+ if (character == 'u') character = 'v'; // we can use the bottom segment; move to lower half
+ if (character == 'j') character = 'J'; // same but just display a normal J
+ }
+ if (position == 0) slcd_sync_seg_off(&SEGMENT_LCD_0, SLCD_SEGID(0, 15)); // clear funky ninth segment
uint64_t segmap = Segment_Map[position];
uint64_t segdata = Character_Set[character - 0x20];
@@ -181,7 +202,9 @@ void watch_display_character(uint8_t character, uint8_t position) {
segmap = segmap >> 8;
segdata = segdata >> 1;
}
- if (character == 'T' && position == 1) slcd_sync_seg_on(&SEGMENT_LCD_0, SLCD_SEGID(1, 12));
+ if (character == 'T' && position == 1) slcd_sync_seg_on(&SEGMENT_LCD_0, SLCD_SEGID(1, 12)); // add descender
+ else if (position == 0 && (character == 'B' || character == 'D')) slcd_sync_seg_on(&SEGMENT_LCD_0, SLCD_SEGID(0, 15)); // add funky ninth segment
+ else if (position == 0 && (character == 'B' || character == 'D' || character == '@')) slcd_sync_seg_on(&SEGMENT_LCD_0, SLCD_SEGID(0, 15)); // add funky ninth segment
}
void watch_display_string(char *string, uint8_t position) {
@@ -216,3 +239,51 @@ void watch_clear_all_indicators() {
slcd_sync_seg_off(&SEGMENT_LCD_0, SLCD_SEGID(0, 16));
slcd_sync_seg_off(&SEGMENT_LCD_0, SLCD_SEGID(1, 10));
}
+
+void watch_start_character_blink(char character, uint32_t duration) {
+ SLCD->CTRLD.bit.FC0EN = 0;
+ _sync_slcd();
+
+ if (duration <= SLCD_FC_BYPASS_MAX_MS) {
+ SLCD->FC0.reg = SLCD_FC0_PB | ((duration / (1000 / SLCD_FRAME_FREQUENCY)) - 1);
+ } else {
+ SLCD->FC0.reg = (((duration / (1000 / SLCD_FRAME_FREQUENCY)) / 8 - 1));
+ }
+ SLCD->CTRLD.bit.FC0EN = 1;
+
+ watch_display_character(character, 7);
+ watch_clear_pixel(2, 10); // clear segment B of position 7 since it can't blink
+
+ SLCD->CTRLD.bit.BLINK = 0;
+ SLCD->CTRLA.bit.ENABLE = 0;
+ _sync_slcd();
+
+ SLCD->BCFG.bit.BSS0 = 0x07;
+ SLCD->BCFG.bit.BSS1 = 0x07;
+
+ SLCD->CTRLD.bit.BLINK = 1;
+ _sync_slcd();
+ SLCD->CTRLA.bit.ENABLE = 1;
+ _sync_slcd();
+}
+
+void watch_stop_blink() {
+ SLCD->CTRLD.bit.FC0EN = 0;
+ SLCD->CTRLD.bit.BLINK = 0;
+}
+
+void watch_start_tick_animation(uint32_t duration) {
+ watch_display_character(' ', 8);
+ const uint32_t segs[] = { SLCD_SEGID(0, 2)};
+ slcd_sync_start_animation(&SEGMENT_LCD_0, segs, 1, duration);
+}
+
+bool watch_tick_animation_is_running() {
+ return hri_slcd_get_CTRLD_CSREN_bit(SLCD);
+}
+
+void watch_stop_tick_animation() {
+ const uint32_t segs[] = { SLCD_SEGID(0, 2)};
+ slcd_sync_stop_animation(&SEGMENT_LCD_0, segs, 1);
+ watch_display_character(' ', 8);
+}
diff --git a/watch-library/watch/watch_slcd.h b/watch-library/watch/watch_slcd.h
index efef99ac..abe4d744 100644
--- a/watch-library/watch/watch_slcd.h
+++ b/watch-library/watch/watch_slcd.h
@@ -21,8 +21,12 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
+#ifndef _WATCH_SLCD_H_INCLUDED
+#define _WATCH_SLCD_H_INCLUDED
////< @file watch_slcd.h
+#include "watch.h"
+
/** @addtogroup slcd Segment LCD Display
* @brief This section covers functions related to the Segment LCD display driver, which is responsible
* for displaying strings of characters and indicators on the main watch display.
@@ -65,6 +69,10 @@ void watch_set_pixel(uint8_t com, uint8_t seg);
*/
void watch_clear_pixel(uint8_t com, uint8_t seg);
+/** @brief Clears all segments of the display, including incicators and the colon.
+ */
+void watch_clear_display();
+
/** @brief Displays a string at the given position, starting from the top left. There are ten digits.
A space in any position will clear that digit.
* @param string A null-terminated string.
@@ -99,4 +107,45 @@ void watch_clear_indicator(WatchIndicatorSegment indicator);
*/
void watch_clear_all_indicators();
+/** @brief Blinks a single character in position 7. Does not affect other positions.
+ * @details Six of the seven segments in position 7 (and only position 7) are capable of autonomous
+ * blinking. This blinking does not require any CPU resources, and will continue even in
+ * STANDBY and Sleep mode (but not Deep Sleep mode, since that mode turns off the LCD).
+ * @param character The character you wish to blink.
+ * @param duration The duration of the on/off cycle in milliseconds, from 50 to ~4250 ms.
+ * @note Segment B of position 7 cannot blink autonomously, so not all characters will work well.
+ * Supported characters for blinking:
+ * * Punctuation: underscore, apostrophe, comma, hyphen, equals sign, tilde (top segment only)
+ * * Numbers: 5, 6, ampersand (lowercase 7)
+ * * Letters: b, C, c, E, F, h, i, L, l, n, o, S, t
+ */
+void watch_start_character_blink(char character, uint32_t duration);
+
+/** @brief Stops and clears all blinking segments.
+ * @details This will stop all blinking in position 7, and clear all segments in that digit.
+ */
+void watch_stop_blink();
+
+/** @brief Begins a two-segment "tick-tock" animation in position 8.
+ * @details Six of the seven segments in position 8 (and only position 8) are capable of autonomous
+ * animation. This animation is very basic, and consists of moving a bit pattern forward
+ * or backward in a shift register whose positions map to fixed segments on the LCD. Given
+ * this constraint, an animation across all six segments does not make sense; so the watch
+ * library offers only a simple "tick/tock" in segments D and E. This animation does not
+ * require any CPU resources, and will continue even in STANDBY and Sleep mode (but not Deep
+ * Sleep mode, since that mode turns off the LCD).
+ * @param duration The duration of each frame in ms. 500 milliseconds produces a classic tick/tock.
+ */
+void watch_start_tick_animation(uint32_t duration);
+
+/** @brief Checks if the tick animation is currently running.
+ * @return true if the animation is running; false otherwise.
+ */
+bool watch_tick_animation_is_running();
+
+/** @brief Stops the tick/tock animation and clears all animating segments.
+ * @details This will stop the animation and clear all segments in position 8.
+ */
+void watch_stop_tick_animation();
/// @}
+#endif
diff --git a/watch-library/watch/watch_uart.c b/watch-library/watch/watch_uart.c
index 3d97803d..d35533d0 100644
--- a/watch-library/watch/watch_uart.c
+++ b/watch-library/watch/watch_uart.c
@@ -50,6 +50,7 @@
* POSSIBILITY OF SUCH DAMAGE.
*/
+#include "watch_uart.h"
#include "peripheral_clk_config.h"
void watch_enable_debug_uart(uint32_t baud) {
diff --git a/watch-library/watch/watch_uart.h b/watch-library/watch/watch_uart.h
index 3c4f7aef..3e98bd35 100644
--- a/watch-library/watch/watch_uart.h
+++ b/watch-library/watch/watch_uart.h
@@ -21,8 +21,12 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
+#ifndef _WATCH_UART_H_INCLUDED
+#define _WATCH_UART_H_INCLUDED
////< @file watch_uart.h
+#include "watch.h"
+
/** @addtogroup debug Debug UART
* @brief This section covers functions related to the debug UART, available on
* pin D1 of the 9-pin connector.
@@ -51,3 +55,4 @@ void watch_debug_putc(char c);
__attribute__((deprecated("Use printf to log debug messages over USB.")))
void watch_debug_puts(char *s);
/// @}
+#endif
diff --git a/watch-library/watch/watch_utility.c b/watch-library/watch/watch_utility.c
new file mode 100644
index 00000000..a0f361b4
--- /dev/null
+++ b/watch-library/watch/watch_utility.c
@@ -0,0 +1,35 @@
+/*
+ * MIT License
+ *
+ * Copyright (c) 2021 Joey Castillo
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in all
+ * copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+
+#include "watch_utility.h"
+
+const char * watch_utility_get_weekday(watch_date_time date_time) {
+ static const char weekdays[7][3] = {"SA", "SU", "MO", "TU", "WE", "TH", "FR"};
+ date_time.unit.year += 20;
+ if (date_time.unit.month <= 2) {
+ date_time.unit.month += 12;
+ date_time.unit.year--;
+ }
+ return weekdays[(date_time.unit.day + 13 * (date_time.unit.month + 1) / 5 + date_time.unit.year + date_time.unit.year / 4 + 525) % 7];
+}
diff --git a/watch-library/watch/watch_utility.h b/watch-library/watch/watch_utility.h
new file mode 100644
index 00000000..e8808923
--- /dev/null
+++ b/watch-library/watch/watch_utility.h
@@ -0,0 +1,41 @@
+/*
+ * MIT License
+ *
+ * Copyright (c) 2021 Joey Castillo
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in all
+ * copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+
+#ifndef _WATCH_UTILITY_H_INCLUDED
+#define _WATCH_UTILITY_H_INCLUDED
+////< @file watch_utility.h
+
+#include "watch.h"
+
+/** @addtogroup utility Utility Functions
+ * @brief This section covers various useful functions that don't fit anywhere else.
+ **/
+/// @{
+/** @brief Returns a two-letter weekday for the given timestamp, suitable for display
+ * in positions 0-1 of the watch face
+ * @param date_time The watch_date_time whose weekday you want.
+ */
+const char * watch_utility_get_weekday(watch_date_time date_time);
+
+#endif