diff --git a/README.md b/README.md
index 5efa0a5..6ac7442 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,6 @@
# PCB Design for ARM Cortex-M3
-This project involves the schematic and PCB design of an Arduino like PCB for ARM Cortex-M3 MCU.
+This project involves the schematic and PCB design of an Arduino like PCB for ARM Cortex-M3 MCU (32-bit MCU, 64 KB Flash, 20 KB Internal RAM, 37 I/Os, 48-pin LQFP, -40 to 85 degC, Tray)
A 9V Battery connector and a Voltage Regulator were used from the side of the Power Supply.
@@ -20,16 +20,12 @@ For the MCU, several circuits were designed, such as Bypass Capacitors for the A
-
-
### PCB before Polygons
-
-
@@ -62,6 +58,36 @@ For the MCU, several circuits were designed, such as Bypass Capacitors for the A
+# Tiny Arduino PCB
+
+This project involves the schematic and PCB design of a small PCB containing a tiny Arduino MCU, defined by the component ATtiny85-20SU. Specifically, it contains an 8-bit AVR Microcontroller with In-System Programmable Flash, 2.7 to 5.5 V, 20 MHz, 8 KB Flash, 0.5 KB EEPROM, 0.5 KB SRAM, -40 to 85 degC, 8-Pin SOIC (8S2).
+
+
+
+### Schematic
+
+
+
+
+
+### PCB
+
+
+
+
+
+
+
+
+
+
+
+
+
+------
+
+
+
# Altium 5V Regulator PCB design
This project involves the schematic and PCB design of a 5V Voltage Regulator using commercial components and the add-on Altium Library Loader.
@@ -92,8 +118,6 @@ For the design I used capacitors, LM7805 regulator and a Schottky diode.
-
-
# Buck Converter with Altium
This project involves the schematic design and Simulation of a Buck converter of a Buck Converter with Altium, as it was assigned for my Power Electronic courses.
@@ -152,7 +176,7 @@ The Silicon Labs' CP2102 is a small module designed to convert interfaces betwee
### Schematic
-The PCB design will consist of a two-layer configuration where all the components will be placed on the top layer.
+The schematic contains CP2102-GM (Single-Chip USB to UART Bridge, 1024 Bytes EEPROM, -40 to 85 degC, 28-pin QFN, Tube)
@@ -160,9 +184,12 @@ The PCB design will consist of a two-layer configuration where all the component
-### PCB 2D
+### PCB
+
+The PCB design will consist of a two-layer configuration where all the components will be placed on the top layer.
+
\ No newline at end of file
diff --git a/TinyArduino/Images/PCB_2D.png b/TinyArduino/Images/PCB_2D.png
new file mode 100644
index 0000000..a96593f
Binary files /dev/null and b/TinyArduino/Images/PCB_2D.png differ
diff --git a/TinyArduino/Images/PCB_3D.png b/TinyArduino/Images/PCB_3D.png
new file mode 100644
index 0000000..3ddef79
Binary files /dev/null and b/TinyArduino/Images/PCB_3D.png differ
diff --git a/TinyArduino/Images/PCB_3D_back.png b/TinyArduino/Images/PCB_3D_back.png
new file mode 100644
index 0000000..cd983ac
Binary files /dev/null and b/TinyArduino/Images/PCB_3D_back.png differ
diff --git a/TinyArduino/Images/Schematic.png b/TinyArduino/Images/Schematic.png
new file mode 100644
index 0000000..c3eb224
Binary files /dev/null and b/TinyArduino/Images/Schematic.png differ
diff --git a/TinyArduino/Libraries/2023-04-07_17-07-05/STEP/SOD323_DIO.step b/TinyArduino/Libraries/2023-04-07_17-07-05/STEP/SOD323_DIO.step
new file mode 100644
index 0000000..9160b86
--- /dev/null
+++ b/TinyArduino/Libraries/2023-04-07_17-07-05/STEP/SOD323_DIO.step
@@ -0,0 +1,1170 @@
+ISO-10303-21;
+HEADER;
+FILE_DESCRIPTION(('STEP AP214'),'1');
+FILE_NAME('SOD323_DIO','2023-04-07T17:07:05',(''),(''),'','','');
+FILE_SCHEMA(('AUTOMOTIVE_DESIGN'));
+ENDSEC;
+DATA;
+#1=SHAPE_DEFINITION_REPRESENTATION(#2,#3);
+#2=PRODUCT_DEFINITION_SHAPE('',$,#4);
+#3=SHAPE_REPRESENTATION('',(#71,#127,#816,#1686,#19),#11);
+#4=PRODUCT_DEFINITION('design','example product_definition',#6,#5);
+#5=PRODUCT_DEFINITION_CONTEXT('3D Mechanical Parts',#10,'design');
+#6=PRODUCT_DEFINITION_FORMATION('1.0','first version',#8);
+#7=APPLICATION_PROTOCOL_DEFINITION('international standard','automotive_design',2003,#10);
+#8=PRODUCT('product','part','',(#9));
+#9=PRODUCT_CONTEXT('3D Mechanical Parts',#10,'mechanical');
+#10=APPLICATION_CONTEXT('Core Data for Automotive Mechanical Design Process');
+#11=(GEOMETRIC_REPRESENTATION_CONTEXT(3) GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#12)) GLOBAL_UNIT_ASSIGNED_CONTEXT((#13,#14,#18)) REPRESENTATION_CONTEXT('ID1','3D'));
+#12=UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(1.E-005),#13,'DISTANCE_ACCURACY_VALUE','Maximum model space distance between geometric entities at asserted connectivities');
+#13=(LENGTH_UNIT() NAMED_UNIT(*) SI_UNIT(.MILLI.,.METRE.));
+#14=(CONVERSION_BASED_UNIT('degree',#16) NAMED_UNIT(#15) PLANE_ANGLE_UNIT());
+#15=DIMENSIONAL_EXPONENTS(0.,0.,0.,0.,0.,0.,0.);
+#16=MEASURE_WITH_UNIT(PLANE_ANGLE_MEASURE(0.01745329252),#17);
+#17=(NAMED_UNIT(*) PLANE_ANGLE_UNIT() SI_UNIT($,.RADIAN.));
+#18=(NAMED_UNIT(*) SI_UNIT($,.STERADIAN.) SOLID_ANGLE_UNIT());
+#19=AXIS2_PLACEMENT_3D('',#20,#21,#22);
+#20=CARTESIAN_POINT('',(0.0,0.0,0.0));
+#21=DIRECTION('',(0.0,0.0,1.0));
+#22=DIRECTION('',(1.0,0.0,0.0));
+#25=MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION($,(#123,#124,#125,#129,#178,#227,#276,#325,#374,#423,#472,#521,#570,#818,#867,#916,#965,#1014,#1063,#1112,#1161,#1210,#1261,#1312,#1363,#1414,#1550,#1688,#1737,#1786,#1835,#1884,#1933,#1982,#2031,#2080,#2131,#2182,#2233,#2284,#2420),#11);
+#26=PRODUCT_CATEGORY_RELATIONSHIP('','',#27,#28);
+#27=PRODUCT_CATEGORY('part','');
+#28=PRODUCT_RELATED_PRODUCT_CATEGORY('','',(#8));
+#34=PRESENTATION_STYLE_ASSIGNMENT((#35,#40));
+#35=SURFACE_STYLE_USAGE(.BOTH.,#36);
+#36=SURFACE_SIDE_STYLE('',(#37));
+#37=SURFACE_STYLE_FILL_AREA(#38);
+#38=FILL_AREA_STYLE('',(#39));
+#39=FILL_AREA_STYLE_COLOUR('',#41);
+#40=CURVE_STYLE('',#42,POSITIVE_LENGTH_MEASURE(0.1),#41);
+#41=COLOUR_RGB('Aluminum',0.725,0.725,0.725);
+#42=DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
+#43=PRESENTATION_STYLE_ASSIGNMENT((#44,#49));
+#44=SURFACE_STYLE_USAGE(.BOTH.,#45);
+#45=SURFACE_SIDE_STYLE('',(#46));
+#46=SURFACE_STYLE_FILL_AREA(#47);
+#47=FILL_AREA_STYLE('',(#48));
+#48=FILL_AREA_STYLE_COLOUR('',#50);
+#49=CURVE_STYLE('',#51,POSITIVE_LENGTH_MEASURE(0.1),#50);
+#50=COLOUR_RGB('Black',0.196,0.196,0.196);
+#51=DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
+#52=PRESENTATION_STYLE_ASSIGNMENT((#53,#58));
+#53=SURFACE_STYLE_USAGE(.BOTH.,#54);
+#54=SURFACE_SIDE_STYLE('',(#55));
+#55=SURFACE_STYLE_FILL_AREA(#56);
+#56=FILL_AREA_STYLE('',(#57));
+#57=FILL_AREA_STYLE_COLOUR('',#59);
+#58=CURVE_STYLE('',#60,POSITIVE_LENGTH_MEASURE(0.1),#59);
+#59=COLOUR_RGB('Pin1',0.588,0.588,0.588);
+#60=DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
+#61=PRESENTATION_STYLE_ASSIGNMENT((#62,#67));
+#62=SURFACE_STYLE_USAGE(.BOTH.,#63);
+#63=SURFACE_SIDE_STYLE('',(#64));
+#64=SURFACE_STYLE_FILL_AREA(#65);
+#65=FILL_AREA_STYLE('',(#66));
+#66=FILL_AREA_STYLE_COLOUR('',#68);
+#67=CURVE_STYLE('',#69,POSITIVE_LENGTH_MEASURE(0.1),#68);
+#68=COLOUR_RGB('HeatTab',0.588,0.588,0.588);
+#69=DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
+#71=MANIFOLD_SOLID_BREP($,#72);
+#72=CLOSED_SHELL('',(#73,#74,#75));
+#73=ADVANCED_FACE($,(#79,#78),#96,.T.);
+#74=ADVANCED_FACE($,(#80),#76,.F.);
+#75=ADVANCED_FACE($,(#81),#77,.T.);
+#76=PLANE($,#101);
+#77=PLANE($,#102);
+#78=FACE_BOUND($,#83,.T.);
+#79=FACE_OUTER_BOUND($,#82,.T.);
+#80=FACE_OUTER_BOUND($,#84,.T.);
+#81=FACE_OUTER_BOUND($,#85,.T.);
+#82=EDGE_LOOP($,(#92));
+#83=EDGE_LOOP($,(#93));
+#84=EDGE_LOOP($,(#94));
+#85=EDGE_LOOP($,(#95));
+#86=CIRCLE($,#99,0.045085);
+#87=CIRCLE($,#100,0.045085);
+#88=VERTEX_POINT('',#117);
+#89=VERTEX_POINT('',#119);
+#90=EDGE_CURVE($,#88,#88,#86,.T.);
+#91=EDGE_CURVE($,#89,#89,#87,.T.);
+#92=ORIENTED_EDGE($,*,*,#90,.F.);
+#93=ORIENTED_EDGE($,*,*,#91,.F.);
+#94=ORIENTED_EDGE($,*,*,#91,.T.);
+#95=ORIENTED_EDGE($,*,*,#90,.T.);
+#96=CYLINDRICAL_SURFACE($,#98,0.045085);
+#97=AXIS2_PLACEMENT_3D('placement',#115,#103,#104);
+#98=AXIS2_PLACEMENT_3D($,#116,#105,#106);
+#99=AXIS2_PLACEMENT_3D($,#118,#107,#108);
+#100=AXIS2_PLACEMENT_3D($,#120,#109,#110);
+#101=AXIS2_PLACEMENT_3D($,#121,#111,#112);
+#102=AXIS2_PLACEMENT_3D($,#122,#113,#114);
+#103=DIRECTION('axis',(0.,1.,0.));
+#104=DIRECTION('refdir',(1.,0.,0.));
+#105=DIRECTION('',(0.,0.,1.));
+#106=DIRECTION('',(1.,0.,0.));
+#107=DIRECTION('',(0.,0.,1.));
+#108=DIRECTION('',(1.,0.,0.));
+#109=DIRECTION('',(0.,0.,-1.));
+#110=DIRECTION('',(1.,0.,0.));
+#111=DIRECTION('',(0.,0.,1.));
+#112=DIRECTION('',(0.,1.,0.));
+#113=DIRECTION('',(0.,0.,1.));
+#114=DIRECTION('',(0.,1.,0.));
+#115=CARTESIAN_POINT('',(0.,0.,0.));
+#116=CARTESIAN_POINT('',(-0.721,0.0,1.194));
+#117=CARTESIAN_POINT('',(-0.766,0.0,1.196));
+#118=CARTESIAN_POINT('',(-0.721,0.0,1.196));
+#119=CARTESIAN_POINT('',(-0.766,0.0,1.194));
+#120=CARTESIAN_POINT('',(-0.721,0.0,1.194));
+#121=CARTESIAN_POINT('',(-0.721,0.0,1.194));
+#122=CARTESIAN_POINT('',(-0.721,0.0,1.196));
+#123=STYLED_ITEM('color',(#52),#73);
+#124=STYLED_ITEM('color',(#52),#74);
+#125=STYLED_ITEM('color',(#52),#75);
+#127=MANIFOLD_SOLID_BREP($,#128);
+#128=CLOSED_SHELL('',(#130,#179,#228,#277,#326,#375,#424,#473,#522,#571));
+#129=STYLED_ITEM('',(#43),#130);
+#130=ADVANCED_FACE('',(#136),#131,.T.);
+#131=PLANE('',#132);
+#132=AXIS2_PLACEMENT_3D('',#133,#134,#135);
+#133=CARTESIAN_POINT('',(-0.902,-0.698,1.194));
+#134=DIRECTION('',(0.0,0.0,1.0));
+#135=DIRECTION('',(0.,1.,0.));
+#136=FACE_OUTER_BOUND('',#137,.T.);
+#137=EDGE_LOOP('',(#138,#148,#158,#168));
+#141=CARTESIAN_POINT('',(0.902,-0.698,1.194));
+#140=VERTEX_POINT('',#141);
+#143=CARTESIAN_POINT('',(-0.902,-0.698,1.194));
+#142=VERTEX_POINT('',#143);
+#139=EDGE_CURVE('',#140,#142,#144,.T.);
+#144=LINE('',#141,#146);
+#146=VECTOR('',#147,1.8034);
+#147=DIRECTION('',(-1.0,0.0,0.0));
+#138=ORIENTED_EDGE('',*,*,#139,.F.);
+#151=CARTESIAN_POINT('',(0.902,0.698,1.194));
+#150=VERTEX_POINT('',#151);
+#149=EDGE_CURVE('',#150,#140,#154,.T.);
+#154=LINE('',#151,#156);
+#156=VECTOR('',#157,1.397);
+#157=DIRECTION('',(0.0,-1.0,0.0));
+#148=ORIENTED_EDGE('',*,*,#149,.F.);
+#161=CARTESIAN_POINT('',(-0.902,0.698,1.194));
+#160=VERTEX_POINT('',#161);
+#159=EDGE_CURVE('',#160,#150,#164,.T.);
+#164=LINE('',#161,#166);
+#166=VECTOR('',#167,1.8034);
+#167=DIRECTION('',(1.0,0.0,0.0));
+#158=ORIENTED_EDGE('',*,*,#159,.F.);
+#169=EDGE_CURVE('',#142,#160,#174,.T.);
+#174=LINE('',#143,#176);
+#176=VECTOR('',#177,1.397);
+#177=DIRECTION('',(0.0,1.0,0.0));
+#168=ORIENTED_EDGE('',*,*,#169,.F.);
+#178=STYLED_ITEM('',(#43),#179);
+#179=ADVANCED_FACE('',(#185),#180,.T.);
+#180=PLANE('',#181);
+#181=AXIS2_PLACEMENT_3D('',#182,#183,#184);
+#182=CARTESIAN_POINT('',(-0.8,0.597,0.0));
+#183=DIRECTION('',(0.0,0.0,-1.0));
+#184=DIRECTION('',(0.,1.,0.));
+#185=FACE_OUTER_BOUND('',#186,.T.);
+#186=EDGE_LOOP('',(#187,#197,#207,#217));
+#190=CARTESIAN_POINT('',(0.8,0.597,0.0));
+#189=VERTEX_POINT('',#190);
+#192=CARTESIAN_POINT('',(-0.8,0.597,0.0));
+#191=VERTEX_POINT('',#192);
+#188=EDGE_CURVE('',#189,#191,#193,.T.);
+#193=LINE('',#190,#195);
+#195=VECTOR('',#196,1.6002);
+#196=DIRECTION('',(-1.0,0.0,0.0));
+#187=ORIENTED_EDGE('',*,*,#188,.F.);
+#200=CARTESIAN_POINT('',(0.8,-0.597,0.0));
+#199=VERTEX_POINT('',#200);
+#198=EDGE_CURVE('',#199,#189,#203,.T.);
+#203=LINE('',#200,#205);
+#205=VECTOR('',#206,1.1938);
+#206=DIRECTION('',(0.0,1.0,0.0));
+#197=ORIENTED_EDGE('',*,*,#198,.F.);
+#210=CARTESIAN_POINT('',(-0.8,-0.597,0.0));
+#209=VERTEX_POINT('',#210);
+#208=EDGE_CURVE('',#209,#199,#213,.T.);
+#213=LINE('',#210,#215);
+#215=VECTOR('',#216,1.6002);
+#216=DIRECTION('',(1.0,0.0,0.0));
+#207=ORIENTED_EDGE('',*,*,#208,.F.);
+#218=EDGE_CURVE('',#191,#209,#223,.T.);
+#223=LINE('',#192,#225);
+#225=VECTOR('',#226,1.1938);
+#226=DIRECTION('',(0.0,-1.0,0.0));
+#217=ORIENTED_EDGE('',*,*,#218,.F.);
+#227=STYLED_ITEM('',(#43),#228);
+#228=ADVANCED_FACE('',(#234),#229,.T.);
+#229=PLANE('',#230);
+#230=AXIS2_PLACEMENT_3D('',#231,#232,#233);
+#231=CARTESIAN_POINT('',(-0.902,-0.698,0.761));
+#232=DIRECTION('',(0.0,-1.0,0.0));
+#233=DIRECTION('',(0.,0.,1.));
+#234=FACE_OUTER_BOUND('',#235,.T.);
+#235=EDGE_LOOP('',(#236,#246,#256,#266));
+#239=CARTESIAN_POINT('',(0.902,-0.698,0.761));
+#238=VERTEX_POINT('',#239);
+#241=CARTESIAN_POINT('',(-0.902,-0.698,0.761));
+#240=VERTEX_POINT('',#241);
+#237=EDGE_CURVE('',#238,#240,#242,.T.);
+#242=LINE('',#239,#244);
+#244=VECTOR('',#245,1.8034);
+#245=DIRECTION('',(-1.0,0.0,0.0));
+#236=ORIENTED_EDGE('',*,*,#237,.F.);
+#247=EDGE_CURVE('',#140,#238,#252,.T.);
+#252=LINE('',#141,#254);
+#254=VECTOR('',#255,0.432525714285714);
+#255=DIRECTION('',(0.0,0.0,-1.0));
+#246=ORIENTED_EDGE('',*,*,#247,.F.);
+#256=ORIENTED_EDGE('',*,*,#139,.T.);
+#267=EDGE_CURVE('',#240,#142,#272,.T.);
+#272=LINE('',#241,#274);
+#274=VECTOR('',#275,0.432525714285714);
+#275=DIRECTION('',(0.0,0.0,1.0));
+#266=ORIENTED_EDGE('',*,*,#267,.F.);
+#276=STYLED_ITEM('',(#43),#277);
+#277=ADVANCED_FACE('',(#283),#278,.T.);
+#278=PLANE('',#279);
+#279=AXIS2_PLACEMENT_3D('',#280,#281,#282);
+#280=CARTESIAN_POINT('',(0.902,-0.698,0.761));
+#281=DIRECTION('',(1.0,0.0,0.0));
+#282=DIRECTION('',(0.,0.,1.));
+#283=FACE_OUTER_BOUND('',#284,.T.);
+#284=EDGE_LOOP('',(#285,#295,#305,#315));
+#288=CARTESIAN_POINT('',(0.902,0.698,0.761));
+#287=VERTEX_POINT('',#288);
+#286=EDGE_CURVE('',#287,#238,#291,.T.);
+#291=LINE('',#288,#293);
+#293=VECTOR('',#294,1.397);
+#294=DIRECTION('',(0.0,-1.0,0.0));
+#285=ORIENTED_EDGE('',*,*,#286,.F.);
+#296=EDGE_CURVE('',#150,#287,#301,.T.);
+#301=LINE('',#151,#303);
+#303=VECTOR('',#304,0.432525714285714);
+#304=DIRECTION('',(0.0,0.0,-1.0));
+#295=ORIENTED_EDGE('',*,*,#296,.F.);
+#305=ORIENTED_EDGE('',*,*,#149,.T.);
+#315=ORIENTED_EDGE('',*,*,#247,.T.);
+#325=STYLED_ITEM('',(#43),#326);
+#326=ADVANCED_FACE('',(#332),#327,.T.);
+#327=PLANE('',#328);
+#328=AXIS2_PLACEMENT_3D('',#329,#330,#331);
+#329=CARTESIAN_POINT('',(0.902,0.698,0.761));
+#330=DIRECTION('',(0.0,1.0,0.0));
+#331=DIRECTION('',(0.,0.,1.));
+#332=FACE_OUTER_BOUND('',#333,.T.);
+#333=EDGE_LOOP('',(#334,#344,#354,#364));
+#337=CARTESIAN_POINT('',(-0.902,0.698,0.761));
+#336=VERTEX_POINT('',#337);
+#335=EDGE_CURVE('',#336,#287,#340,.T.);
+#340=LINE('',#337,#342);
+#342=VECTOR('',#343,1.8034);
+#343=DIRECTION('',(1.0,0.0,0.0));
+#334=ORIENTED_EDGE('',*,*,#335,.F.);
+#345=EDGE_CURVE('',#160,#336,#350,.T.);
+#350=LINE('',#161,#352);
+#352=VECTOR('',#353,0.432525714285714);
+#353=DIRECTION('',(0.0,0.0,-1.0));
+#344=ORIENTED_EDGE('',*,*,#345,.F.);
+#354=ORIENTED_EDGE('',*,*,#159,.T.);
+#364=ORIENTED_EDGE('',*,*,#296,.T.);
+#374=STYLED_ITEM('',(#43),#375);
+#375=ADVANCED_FACE('',(#381),#376,.T.);
+#376=PLANE('',#377);
+#377=AXIS2_PLACEMENT_3D('',#378,#379,#380);
+#378=CARTESIAN_POINT('',(-0.902,0.698,0.761));
+#379=DIRECTION('',(-1.0,0.0,0.0));
+#380=DIRECTION('',(0.,0.,1.));
+#381=FACE_OUTER_BOUND('',#382,.T.);
+#382=EDGE_LOOP('',(#383,#393,#403,#413));
+#384=EDGE_CURVE('',#240,#336,#389,.T.);
+#389=LINE('',#241,#391);
+#391=VECTOR('',#392,1.397);
+#392=DIRECTION('',(0.0,1.0,0.0));
+#383=ORIENTED_EDGE('',*,*,#384,.F.);
+#393=ORIENTED_EDGE('',*,*,#267,.T.);
+#403=ORIENTED_EDGE('',*,*,#169,.T.);
+#413=ORIENTED_EDGE('',*,*,#345,.T.);
+#423=STYLED_ITEM('',(#43),#424);
+#424=ADVANCED_FACE('',(#430),#425,.T.);
+#425=PLANE('',#426);
+#426=AXIS2_PLACEMENT_3D('',#427,#428,#429);
+#427=CARTESIAN_POINT('',(-0.8,-0.597,0.0));
+#428=DIRECTION('',(0.0,-0.991,-0.132));
+#429=DIRECTION('',(0.,0.,1.));
+#430=FACE_OUTER_BOUND('',#431,.T.);
+#431=EDGE_LOOP('',(#432,#442,#452,#462));
+#432=ORIENTED_EDGE('',*,*,#208,.T.);
+#443=EDGE_CURVE('',#238,#199,#448,.T.);
+#448=LINE('',#239,#450);
+#450=VECTOR('',#451,0.774715210958064);
+#451=DIRECTION('',(-0.131,0.131,-0.983));
+#442=ORIENTED_EDGE('',*,*,#443,.F.);
+#452=ORIENTED_EDGE('',*,*,#237,.T.);
+#463=EDGE_CURVE('',#209,#240,#468,.T.);
+#468=LINE('',#210,#470);
+#470=VECTOR('',#471,0.774715210958064);
+#471=DIRECTION('',(-0.131,-0.131,0.983));
+#462=ORIENTED_EDGE('',*,*,#463,.F.);
+#472=STYLED_ITEM('',(#43),#473);
+#473=ADVANCED_FACE('',(#479),#474,.T.);
+#474=PLANE('',#475);
+#475=AXIS2_PLACEMENT_3D('',#476,#477,#478);
+#476=CARTESIAN_POINT('',(0.8,-0.597,0.0));
+#477=DIRECTION('',(0.991,0.0,-0.132));
+#478=DIRECTION('',(0.,0.,1.));
+#479=FACE_OUTER_BOUND('',#480,.T.);
+#480=EDGE_LOOP('',(#481,#491,#501,#511));
+#481=ORIENTED_EDGE('',*,*,#198,.T.);
+#492=EDGE_CURVE('',#287,#189,#497,.T.);
+#497=LINE('',#288,#499);
+#499=VECTOR('',#500,0.774715210958064);
+#500=DIRECTION('',(-0.131,-0.131,-0.983));
+#491=ORIENTED_EDGE('',*,*,#492,.F.);
+#501=ORIENTED_EDGE('',*,*,#286,.T.);
+#511=ORIENTED_EDGE('',*,*,#443,.T.);
+#521=STYLED_ITEM('',(#43),#522);
+#522=ADVANCED_FACE('',(#528),#523,.T.);
+#523=PLANE('',#524);
+#524=AXIS2_PLACEMENT_3D('',#525,#526,#527);
+#525=CARTESIAN_POINT('',(0.8,0.597,0.0));
+#526=DIRECTION('',(0.0,0.991,-0.132));
+#527=DIRECTION('',(0.,0.,1.));
+#528=FACE_OUTER_BOUND('',#529,.T.);
+#529=EDGE_LOOP('',(#530,#540,#550,#560));
+#530=ORIENTED_EDGE('',*,*,#188,.T.);
+#541=EDGE_CURVE('',#336,#191,#546,.T.);
+#546=LINE('',#337,#548);
+#548=VECTOR('',#549,0.774715210958064);
+#549=DIRECTION('',(0.131,-0.131,-0.983));
+#540=ORIENTED_EDGE('',*,*,#541,.F.);
+#550=ORIENTED_EDGE('',*,*,#335,.T.);
+#560=ORIENTED_EDGE('',*,*,#492,.T.);
+#570=STYLED_ITEM('',(#43),#571);
+#571=ADVANCED_FACE('',(#577),#572,.T.);
+#572=PLANE('',#573);
+#573=AXIS2_PLACEMENT_3D('',#574,#575,#576);
+#574=CARTESIAN_POINT('',(-0.8,0.597,0.0));
+#575=DIRECTION('',(-0.991,0.0,-0.132));
+#576=DIRECTION('',(0.,0.,1.));
+#577=FACE_OUTER_BOUND('',#578,.T.);
+#578=EDGE_LOOP('',(#579,#589,#599,#609));
+#579=ORIENTED_EDGE('',*,*,#218,.T.);
+#589=ORIENTED_EDGE('',*,*,#463,.T.);
+#599=ORIENTED_EDGE('',*,*,#384,.T.);
+#609=ORIENTED_EDGE('',*,*,#541,.T.);
+#816=MANIFOLD_SOLID_BREP($,#817);
+#817=CLOSED_SHELL('',(#819,#868,#917,#966,#1015,#1064,#1113,#1162,#1211,#1262,#1313,#1364,#1415,#1551));
+#818=STYLED_ITEM('',(#34),#819);
+#819=ADVANCED_FACE('',(#825),#820,.T.);
+#820=PLANE('',#821);
+#821=AXIS2_PLACEMENT_3D('',#822,#823,#824);
+#822=CARTESIAN_POINT('',(-0.902,-0.178,0.84));
+#823=DIRECTION('',(1.0,0.0,0.0));
+#824=DIRECTION('',(0.,0.,1.));
+#825=FACE_OUTER_BOUND('',#826,.T.);
+#826=EDGE_LOOP('',(#827,#837,#847,#857));
+#830=CARTESIAN_POINT('',(-0.902,0.178,0.84));
+#829=VERTEX_POINT('',#830);
+#832=CARTESIAN_POINT('',(-0.902,-0.178,0.84));
+#831=VERTEX_POINT('',#832);
+#828=EDGE_CURVE('',#829,#831,#833,.T.);
+#833=LINE('',#830,#835);
+#835=VECTOR('',#836,0.355599994235095);
+#836=DIRECTION('',(0.0,-1.0,0.0));
+#827=ORIENTED_EDGE('',*,*,#828,.F.);
+#840=CARTESIAN_POINT('',(-0.902,0.178,0.929));
+#839=VERTEX_POINT('',#840);
+#838=EDGE_CURVE('',#839,#829,#843,.T.);
+#843=LINE('',#840,#845);
+#845=VECTOR('',#846,0.0889);
+#846=DIRECTION('',(0.0,0.0,-1.0));
+#837=ORIENTED_EDGE('',*,*,#838,.F.);
+#850=CARTESIAN_POINT('',(-0.902,-0.178,0.929));
+#849=VERTEX_POINT('',#850);
+#848=EDGE_CURVE('',#849,#839,#853,.T.);
+#853=LINE('',#850,#855);
+#855=VECTOR('',#856,0.355599994235095);
+#856=DIRECTION('',(0.0,1.0,0.0));
+#847=ORIENTED_EDGE('',*,*,#848,.F.);
+#858=EDGE_CURVE('',#831,#849,#863,.T.);
+#863=LINE('',#832,#865);
+#865=VECTOR('',#866,0.0889);
+#866=DIRECTION('',(0.0,0.0,1.0));
+#857=ORIENTED_EDGE('',*,*,#858,.F.);
+#867=STYLED_ITEM('',(#34),#868);
+#868=ADVANCED_FACE('',(#874),#869,.T.);
+#869=PLANE('',#870);
+#870=AXIS2_PLACEMENT_3D('',#871,#872,#873);
+#871=CARTESIAN_POINT('',(-0.902,-0.178,0.929));
+#872=DIRECTION('',(0.0,0.0,1.0));
+#873=DIRECTION('',(0.,1.,0.));
+#874=FACE_OUTER_BOUND('',#875,.T.);
+#875=EDGE_LOOP('',(#876,#886,#896,#906));
+#876=ORIENTED_EDGE('',*,*,#848,.T.);
+#889=CARTESIAN_POINT('',(-0.909,0.178,0.929));
+#888=VERTEX_POINT('',#889);
+#887=EDGE_CURVE('',#888,#839,#892,.T.);
+#892=LINE('',#889,#894);
+#894=VECTOR('',#895,7.38742507851252E-03);
+#895=DIRECTION('',(1.0,0.0,0.0));
+#886=ORIENTED_EDGE('',*,*,#887,.F.);
+#899=CARTESIAN_POINT('',(-0.909,-0.178,0.929));
+#898=VERTEX_POINT('',#899);
+#897=EDGE_CURVE('',#898,#888,#902,.T.);
+#902=LINE('',#899,#904);
+#904=VECTOR('',#905,0.355599994244281);
+#905=DIRECTION('',(0.0,1.0,0.0));
+#896=ORIENTED_EDGE('',*,*,#897,.F.);
+#907=EDGE_CURVE('',#849,#898,#912,.T.);
+#912=LINE('',#850,#914);
+#914=VECTOR('',#915,7.3874250785127E-03);
+#915=DIRECTION('',(-1.0,0.0,0.0));
+#906=ORIENTED_EDGE('',*,*,#907,.F.);
+#916=STYLED_ITEM('',(#34),#917);
+#917=ADVANCED_FACE('',(#923),#918,.T.);
+#918=PLANE('',#919);
+#919=AXIS2_PLACEMENT_3D('',#920,#921,#922);
+#920=CARTESIAN_POINT('',(-0.902,0.178,0.84));
+#921=DIRECTION('',(0.0,0.0,-1.0));
+#922=DIRECTION('',(0.,1.,0.));
+#923=FACE_OUTER_BOUND('',#924,.T.);
+#924=EDGE_LOOP('',(#925,#935,#945,#955));
+#925=ORIENTED_EDGE('',*,*,#828,.T.);
+#938=CARTESIAN_POINT('',(-0.909,-0.178,0.84));
+#937=VERTEX_POINT('',#938);
+#936=EDGE_CURVE('',#937,#831,#941,.T.);
+#941=LINE('',#938,#943);
+#943=VECTOR('',#944,7.3874250785127E-03);
+#944=DIRECTION('',(1.0,0.0,0.0));
+#935=ORIENTED_EDGE('',*,*,#936,.F.);
+#948=CARTESIAN_POINT('',(-0.909,0.178,0.84));
+#947=VERTEX_POINT('',#948);
+#946=EDGE_CURVE('',#947,#937,#951,.T.);
+#951=LINE('',#948,#953);
+#953=VECTOR('',#954,0.355599994244281);
+#954=DIRECTION('',(0.0,-1.0,0.0));
+#945=ORIENTED_EDGE('',*,*,#946,.F.);
+#956=EDGE_CURVE('',#829,#947,#961,.T.);
+#961=LINE('',#830,#963);
+#963=VECTOR('',#964,7.38742507851252E-03);
+#964=DIRECTION('',(-1.0,0.0,0.0));
+#955=ORIENTED_EDGE('',*,*,#956,.F.);
+#965=STYLED_ITEM('',(#34),#966);
+#966=ADVANCED_FACE('',(#972),#967,.T.);
+#967=PLANE('',#968);
+#968=AXIS2_PLACEMENT_3D('',#969,#970,#971);
+#969=CARTESIAN_POINT('',(-1.253,0.178,0.155));
+#970=DIRECTION('',(-0.966,0.0,0.259));
+#971=DIRECTION('',(0.,0.,1.));
+#972=FACE_OUTER_BOUND('',#973,.T.);
+#973=EDGE_LOOP('',(#974,#984,#994,#1004));
+#977=CARTESIAN_POINT('',(-1.253,-0.178,0.155));
+#976=VERTEX_POINT('',#977);
+#979=CARTESIAN_POINT('',(-1.253,0.178,0.155));
+#978=VERTEX_POINT('',#979);
+#975=EDGE_CURVE('',#976,#978,#980,.T.);
+#980=LINE('',#977,#982);
+#982=VECTOR('',#983,0.355599996542456);
+#983=DIRECTION('',(0.0,1.0,0.0));
+#974=ORIENTED_EDGE('',*,*,#975,.F.);
+#987=CARTESIAN_POINT('',(-1.081,-0.178,0.797));
+#986=VERTEX_POINT('',#987);
+#985=EDGE_CURVE('',#986,#976,#990,.T.);
+#990=LINE('',#987,#992);
+#992=VECTOR('',#993,0.664999311324858);
+#993=DIRECTION('',(-0.259,0.0,-0.966));
+#984=ORIENTED_EDGE('',*,*,#985,.F.);
+#997=CARTESIAN_POINT('',(-1.081,0.178,0.797));
+#996=VERTEX_POINT('',#997);
+#995=EDGE_CURVE('',#996,#986,#1000,.T.);
+#1000=LINE('',#997,#1002);
+#1002=VECTOR('',#1003,0.355599994660601);
+#1003=DIRECTION('',(0.0,-1.0,0.0));
+#994=ORIENTED_EDGE('',*,*,#995,.F.);
+#1005=EDGE_CURVE('',#978,#996,#1010,.T.);
+#1010=LINE('',#979,#1012);
+#1012=VECTOR('',#1013,0.664999311324857);
+#1013=DIRECTION('',(0.259,0.0,0.966));
+#1004=ORIENTED_EDGE('',*,*,#1005,.F.);
+#1014=STYLED_ITEM('',(#34),#1015);
+#1015=ADVANCED_FACE('',(#1021),#1016,.T.);
+#1016=PLANE('',#1017);
+#1017=AXIS2_PLACEMENT_3D('',#1018,#1019,#1020);
+#1018=CARTESIAN_POINT('',(-1.167,-0.178,0.132));
+#1019=DIRECTION('',(0.966,0.0,-0.259));
+#1020=DIRECTION('',(0.,0.,1.));
+#1021=FACE_OUTER_BOUND('',#1022,.T.);
+#1022=EDGE_LOOP('',(#1023,#1033,#1043,#1053));
+#1026=CARTESIAN_POINT('',(-1.167,0.178,0.132));
+#1025=VERTEX_POINT('',#1026);
+#1028=CARTESIAN_POINT('',(-1.167,-0.178,0.132));
+#1027=VERTEX_POINT('',#1028);
+#1024=EDGE_CURVE('',#1025,#1027,#1029,.T.);
+#1029=LINE('',#1026,#1031);
+#1031=VECTOR('',#1032,0.355599995227448);
+#1032=DIRECTION('',(0.0,-1.0,0.0));
+#1023=ORIENTED_EDGE('',*,*,#1024,.F.);
+#1036=CARTESIAN_POINT('',(-0.995,0.178,0.774));
+#1035=VERTEX_POINT('',#1036);
+#1034=EDGE_CURVE('',#1035,#1025,#1039,.T.);
+#1039=LINE('',#1036,#1041);
+#1041=VECTOR('',#1042,0.664999311469429);
+#1042=DIRECTION('',(-0.259,0.0,-0.966));
+#1033=ORIENTED_EDGE('',*,*,#1034,.F.);
+#1046=CARTESIAN_POINT('',(-0.995,-0.178,0.774));
+#1045=VERTEX_POINT('',#1046);
+#1044=EDGE_CURVE('',#1045,#1035,#1049,.T.);
+#1049=LINE('',#1046,#1051);
+#1051=VECTOR('',#1052,0.355599994389966);
+#1052=DIRECTION('',(0.0,1.0,0.0));
+#1043=ORIENTED_EDGE('',*,*,#1044,.F.);
+#1054=EDGE_CURVE('',#1027,#1045,#1059,.T.);
+#1059=LINE('',#1028,#1061);
+#1061=VECTOR('',#1062,0.664999311469429);
+#1062=DIRECTION('',(0.259,0.0,0.966));
+#1053=ORIENTED_EDGE('',*,*,#1054,.F.);
+#1063=STYLED_ITEM('',(#34),#1064);
+#1064=ADVANCED_FACE('',(#1070),#1065,.T.);
+#1065=PLANE('',#1066);
+#1066=AXIS2_PLACEMENT_3D('',#1067,#1068,#1069);
+#1067=CARTESIAN_POINT('',(-1.346,0.178,0.089));
+#1068=DIRECTION('',(0.0,0.0,1.0));
+#1069=DIRECTION('',(0.,1.,0.));
+#1070=FACE_OUTER_BOUND('',#1071,.T.);
+#1071=EDGE_LOOP('',(#1072,#1082,#1092,#1102));
+#1075=CARTESIAN_POINT('',(-1.346,-0.178,0.089));
+#1074=VERTEX_POINT('',#1075);
+#1077=CARTESIAN_POINT('',(-1.346,0.178,0.089));
+#1076=VERTEX_POINT('',#1077);
+#1073=EDGE_CURVE('',#1074,#1076,#1078,.T.);
+#1078=LINE('',#1075,#1080);
+#1080=VECTOR('',#1081,0.3556);
+#1081=DIRECTION('',(0.0,1.0,0.0));
+#1072=ORIENTED_EDGE('',*,*,#1073,.F.);
+#1085=CARTESIAN_POINT('',(-1.339,-0.178,0.089));
+#1084=VERTEX_POINT('',#1085);
+#1083=EDGE_CURVE('',#1084,#1074,#1088,.T.);
+#1088=LINE('',#1085,#1090);
+#1090=VECTOR('',#1091,0.007387424965877);
+#1091=DIRECTION('',(-1.0,0.0,0.0));
+#1082=ORIENTED_EDGE('',*,*,#1083,.F.);
+#1095=CARTESIAN_POINT('',(-1.339,0.178,0.089));
+#1094=VERTEX_POINT('',#1095);
+#1093=EDGE_CURVE('',#1094,#1084,#1098,.T.);
+#1098=LINE('',#1095,#1100);
+#1100=VECTOR('',#1101,0.355599999614933);
+#1101=DIRECTION('',(0.0,-1.0,0.0));
+#1092=ORIENTED_EDGE('',*,*,#1093,.F.);
+#1103=EDGE_CURVE('',#1076,#1094,#1108,.T.);
+#1108=LINE('',#1077,#1110);
+#1110=VECTOR('',#1111,7.38742496587704E-03);
+#1111=DIRECTION('',(1.0,0.0,0.0));
+#1102=ORIENTED_EDGE('',*,*,#1103,.F.);
+#1112=STYLED_ITEM('',(#34),#1113);
+#1113=ADVANCED_FACE('',(#1119),#1114,.T.);
+#1114=PLANE('',#1115);
+#1115=AXIS2_PLACEMENT_3D('',#1116,#1117,#1118);
+#1116=CARTESIAN_POINT('',(-1.339,0.178,0.0));
+#1117=DIRECTION('',(0.0,0.0,-1.0));
+#1118=DIRECTION('',(0.,1.,0.));
+#1119=FACE_OUTER_BOUND('',#1120,.T.);
+#1120=EDGE_LOOP('',(#1121,#1131,#1141,#1151));
+#1124=CARTESIAN_POINT('',(-1.339,-0.178,0.0));
+#1123=VERTEX_POINT('',#1124);
+#1126=CARTESIAN_POINT('',(-1.339,0.178,0.0));
+#1125=VERTEX_POINT('',#1126);
+#1122=EDGE_CURVE('',#1123,#1125,#1127,.T.);
+#1127=LINE('',#1124,#1129);
+#1129=VECTOR('',#1130,0.355599999614933);
+#1130=DIRECTION('',(0.0,1.0,0.0));
+#1121=ORIENTED_EDGE('',*,*,#1122,.F.);
+#1134=CARTESIAN_POINT('',(-1.346,-0.178,0.0));
+#1133=VERTEX_POINT('',#1134);
+#1132=EDGE_CURVE('',#1133,#1123,#1137,.T.);
+#1137=LINE('',#1134,#1139);
+#1139=VECTOR('',#1140,0.007387424965877);
+#1140=DIRECTION('',(1.0,0.0,0.0));
+#1131=ORIENTED_EDGE('',*,*,#1132,.F.);
+#1144=CARTESIAN_POINT('',(-1.346,0.178,0.0));
+#1143=VERTEX_POINT('',#1144);
+#1142=EDGE_CURVE('',#1143,#1133,#1147,.T.);
+#1147=LINE('',#1144,#1149);
+#1149=VECTOR('',#1150,0.3556);
+#1150=DIRECTION('',(0.0,-1.0,0.0));
+#1141=ORIENTED_EDGE('',*,*,#1142,.F.);
+#1152=EDGE_CURVE('',#1125,#1143,#1157,.T.);
+#1157=LINE('',#1126,#1159);
+#1159=VECTOR('',#1160,7.38742496587704E-03);
+#1160=DIRECTION('',(-1.0,0.0,0.0));
+#1151=ORIENTED_EDGE('',*,*,#1152,.F.);
+#1161=STYLED_ITEM('',(#34),#1162);
+#1162=ADVANCED_FACE('',(#1168),#1163,.T.);
+#1163=PLANE('',#1164);
+#1164=AXIS2_PLACEMENT_3D('',#1165,#1166,#1167);
+#1165=CARTESIAN_POINT('',(-1.346,0.178,0.0));
+#1166=DIRECTION('',(-1.0,0.0,0.0));
+#1167=DIRECTION('',(0.,0.,1.));
+#1168=FACE_OUTER_BOUND('',#1169,.T.);
+#1169=EDGE_LOOP('',(#1170,#1180,#1190,#1200));
+#1170=ORIENTED_EDGE('',*,*,#1142,.T.);
+#1181=EDGE_CURVE('',#1074,#1133,#1186,.T.);
+#1186=LINE('',#1075,#1188);
+#1188=VECTOR('',#1189,0.0889);
+#1189=DIRECTION('',(0.0,0.0,-1.0));
+#1180=ORIENTED_EDGE('',*,*,#1181,.F.);
+#1190=ORIENTED_EDGE('',*,*,#1073,.T.);
+#1201=EDGE_CURVE('',#1143,#1076,#1206,.T.);
+#1206=LINE('',#1144,#1208);
+#1208=VECTOR('',#1209,0.0889);
+#1209=DIRECTION('',(0.0,0.0,1.0));
+#1200=ORIENTED_EDGE('',*,*,#1201,.F.);
+#1210=STYLED_ITEM($,(#34),#1211);
+#1211=ADVANCED_FACE($,(#1217),#1212,.T.);
+#1212=CYLINDRICAL_SURFACE($,#1213,0.1778);
+#1213=AXIS2_PLACEMENT_3D($,#1214,#1215,#1216);
+#1214=CARTESIAN_POINT('',(-0.909,-0.178,0.751));
+#1215=DIRECTION('',(0.0,-1.0,0.0));
+#1216=DIRECTION('',(0.,0.,1.));
+#1217=FACE_OUTER_BOUND($,#1218,.T.);
+#1218=EDGE_LOOP($,(#1230,#1240,#1251,#1219));
+#1230=ORIENTED_EDGE('',*,*,#897,.T.);
+#1241=EDGE_CURVE($,#996,#888,#1246,.T.);
+#1246=CIRCLE($,#1247,0.1778);
+#1248=CARTESIAN_POINT('',(-0.909,0.178,0.751));
+#1247=AXIS2_PLACEMENT_3D($,#1248,#1249,#1250);
+#1249=DIRECTION('',(0.0,1.0,0.0));
+#1250=DIRECTION('',(0.793,0.0,0.609));
+#1240=ORIENTED_EDGE('',*,*,#1241,.F.);
+#1251=ORIENTED_EDGE('',*,*,#995,.T.);
+#1220=EDGE_CURVE($,#898,#986,#1225,.T.);
+#1225=CIRCLE($,#1226,0.1778);
+#1227=CARTESIAN_POINT('',(-0.909,-0.178,0.751));
+#1226=AXIS2_PLACEMENT_3D($,#1227,#1228,#1229);
+#1228=DIRECTION('',(0.0,-1.0,0.0));
+#1229=DIRECTION('',(-0.793,0.0,-0.609));
+#1219=ORIENTED_EDGE('',*,*,#1220,.F.);
+#1261=STYLED_ITEM($,(#34),#1262);
+#1262=ADVANCED_FACE($,(#1268),#1263,.F.);
+#1263=CYLINDRICAL_SURFACE($,#1264,0.0889);
+#1264=AXIS2_PLACEMENT_3D($,#1265,#1266,#1267);
+#1265=CARTESIAN_POINT('',(-0.909,0.178,0.751));
+#1266=DIRECTION('',(0.0,-1.0,0.0));
+#1267=DIRECTION('',(0.,0.,-1.));
+#1268=FACE_OUTER_BOUND($,#1269,.T.);
+#1269=EDGE_LOOP($,(#1281,#1291,#1302,#1270));
+#1281=ORIENTED_EDGE('',*,*,#946,.T.);
+#1292=EDGE_CURVE($,#1045,#937,#1297,.T.);
+#1297=CIRCLE($,#1298,0.0889);
+#1298=AXIS2_PLACEMENT_3D($,#1227,#1300,#1301);
+#1300=DIRECTION('',(0.0,1.0,0.0));
+#1301=DIRECTION('',(0.793,0.0,0.609));
+#1291=ORIENTED_EDGE('',*,*,#1292,.F.);
+#1302=ORIENTED_EDGE('',*,*,#1044,.T.);
+#1271=EDGE_CURVE($,#947,#1035,#1276,.T.);
+#1276=CIRCLE($,#1277,0.0889);
+#1277=AXIS2_PLACEMENT_3D($,#1248,#1279,#1280);
+#1279=DIRECTION('',(0.0,-1.0,0.0));
+#1280=DIRECTION('',(-0.793,0.0,-0.609));
+#1270=ORIENTED_EDGE('',*,*,#1271,.F.);
+#1312=STYLED_ITEM($,(#34),#1313);
+#1313=ADVANCED_FACE($,(#1319),#1314,.F.);
+#1314=CYLINDRICAL_SURFACE($,#1315,0.0889);
+#1315=AXIS2_PLACEMENT_3D($,#1316,#1317,#1318);
+#1316=CARTESIAN_POINT('',(-1.339,0.178,0.178));
+#1317=DIRECTION('',(0.0,-1.0,0.0));
+#1318=DIRECTION('',(0.,0.,1.));
+#1319=FACE_OUTER_BOUND($,#1320,.T.);
+#1320=EDGE_LOOP($,(#1332,#1342,#1353,#1321));
+#1332=ORIENTED_EDGE('',*,*,#1093,.T.);
+#1343=EDGE_CURVE($,#976,#1084,#1348,.T.);
+#1348=CIRCLE($,#1349,0.0889);
+#1350=CARTESIAN_POINT('',(-1.339,-0.178,0.178));
+#1349=AXIS2_PLACEMENT_3D($,#1350,#1351,#1352);
+#1351=DIRECTION('',(0.0,1.0,0.0));
+#1352=DIRECTION('',(-0.793,0.0,-0.609));
+#1342=ORIENTED_EDGE('',*,*,#1343,.F.);
+#1353=ORIENTED_EDGE('',*,*,#975,.T.);
+#1322=EDGE_CURVE($,#1094,#978,#1327,.T.);
+#1327=CIRCLE($,#1328,0.0889);
+#1329=CARTESIAN_POINT('',(-1.339,0.178,0.178));
+#1328=AXIS2_PLACEMENT_3D($,#1329,#1330,#1331);
+#1330=DIRECTION('',(0.0,-1.0,0.0));
+#1331=DIRECTION('',(0.793,0.0,0.609));
+#1321=ORIENTED_EDGE('',*,*,#1322,.F.);
+#1363=STYLED_ITEM($,(#34),#1364);
+#1364=ADVANCED_FACE($,(#1370),#1365,.T.);
+#1365=CYLINDRICAL_SURFACE($,#1366,0.1778);
+#1366=AXIS2_PLACEMENT_3D($,#1367,#1368,#1369);
+#1367=CARTESIAN_POINT('',(-1.339,0.178,0.178));
+#1368=DIRECTION('',(0.0,-1.0,0.0));
+#1369=DIRECTION('',(0.,0.,-1.));
+#1370=FACE_OUTER_BOUND($,#1371,.T.);
+#1371=EDGE_LOOP($,(#1383,#1393,#1404,#1372));
+#1383=ORIENTED_EDGE('',*,*,#1122,.T.);
+#1394=EDGE_CURVE($,#1025,#1125,#1399,.T.);
+#1399=CIRCLE($,#1400,0.1778);
+#1400=AXIS2_PLACEMENT_3D($,#1329,#1402,#1403);
+#1402=DIRECTION('',(0.0,1.0,0.0));
+#1403=DIRECTION('',(-0.793,0.0,-0.609));
+#1393=ORIENTED_EDGE('',*,*,#1394,.F.);
+#1404=ORIENTED_EDGE('',*,*,#1024,.T.);
+#1373=EDGE_CURVE($,#1123,#1027,#1378,.T.);
+#1378=CIRCLE($,#1379,0.1778);
+#1379=AXIS2_PLACEMENT_3D($,#1350,#1381,#1382);
+#1381=DIRECTION('',(0.0,-1.0,0.0));
+#1382=DIRECTION('',(0.793,0.0,0.609));
+#1372=ORIENTED_EDGE('',*,*,#1373,.F.);
+#1414=STYLED_ITEM('color',(#34),#1415);
+#1415=ADVANCED_FACE($,(#1421),#1416,.T.);
+#1416=PLANE($,#1417);
+#1417=AXIS2_PLACEMENT_3D($,#1418,#1419,#1420);
+#1418=CARTESIAN_POINT('',(-0.902,0.178,0.84));
+#1419=DIRECTION('',(0.0,1.0,0.0));
+#1420=DIRECTION('',(1.,0.,0.));
+#1421=FACE_OUTER_BOUND($,#1422,.T.);
+#1422=EDGE_LOOP($,(#1425, #1435, #1445, #1508, #1519, #1455, #1466, #1476, #1486, #1496, #1529, #1539));
+#1425=ORIENTED_EDGE('',*,*,#887,.T.);
+#1435=ORIENTED_EDGE('',*,*,#838,.T.);
+#1445=ORIENTED_EDGE('',*,*,#956,.T.);
+#1508=ORIENTED_EDGE('',*,*,#1271,.T.);
+#1519=ORIENTED_EDGE('',*,*,#1034,.T.);
+#1455=ORIENTED_EDGE('',*,*,#1394,.T.);
+#1466=ORIENTED_EDGE('',*,*,#1152,.T.);
+#1476=ORIENTED_EDGE('',*,*,#1201,.T.);
+#1486=ORIENTED_EDGE('',*,*,#1103,.T.);
+#1496=ORIENTED_EDGE('',*,*,#1322,.T.);
+#1529=ORIENTED_EDGE('',*,*,#1005,.T.);
+#1539=ORIENTED_EDGE('',*,*,#1241,.T.);
+#1550=STYLED_ITEM('color',(#34),#1551);
+#1551=ADVANCED_FACE($,(#1557),#1552,.T.);
+#1552=PLANE($,#1553);
+#1553=AXIS2_PLACEMENT_3D($,#1554,#1555,#1556);
+#1554=CARTESIAN_POINT('',(-1.339,-0.178,0.089));
+#1555=DIRECTION('',(0.0,-1.0,0.0));
+#1556=DIRECTION('',(1.,0.,0.));
+#1557=FACE_OUTER_BOUND($,#1558,.T.);
+#1558=EDGE_LOOP($,(#1561, #1571, #1581, #1644, #1655, #1591, #1602, #1612, #1622, #1632, #1665, #1675));
+#1561=ORIENTED_EDGE('',*,*,#936,.T.);
+#1571=ORIENTED_EDGE('',*,*,#858,.T.);
+#1581=ORIENTED_EDGE('',*,*,#907,.T.);
+#1644=ORIENTED_EDGE('',*,*,#1220,.T.);
+#1655=ORIENTED_EDGE('',*,*,#985,.T.);
+#1591=ORIENTED_EDGE('',*,*,#1343,.T.);
+#1602=ORIENTED_EDGE('',*,*,#1083,.T.);
+#1612=ORIENTED_EDGE('',*,*,#1181,.T.);
+#1622=ORIENTED_EDGE('',*,*,#1132,.T.);
+#1632=ORIENTED_EDGE('',*,*,#1373,.T.);
+#1665=ORIENTED_EDGE('',*,*,#1054,.T.);
+#1675=ORIENTED_EDGE('',*,*,#1292,.T.);
+#1686=MANIFOLD_SOLID_BREP($,#1687);
+#1687=CLOSED_SHELL('',(#1689,#1738,#1787,#1836,#1885,#1934,#1983,#2032,#2081,#2132,#2183,#2234,#2285,#2421));
+#1688=STYLED_ITEM('',(#34),#1689);
+#1689=ADVANCED_FACE('',(#1695),#1690,.T.);
+#1690=PLANE('',#1691);
+#1691=AXIS2_PLACEMENT_3D('',#1692,#1693,#1694);
+#1692=CARTESIAN_POINT('',(0.902,0.178,0.84));
+#1693=DIRECTION('',(-1.0,0.0,0.0));
+#1694=DIRECTION('',(0.,0.,1.));
+#1695=FACE_OUTER_BOUND('',#1696,.T.);
+#1696=EDGE_LOOP('',(#1697,#1707,#1717,#1727));
+#1700=CARTESIAN_POINT('',(0.902,-0.178,0.84));
+#1699=VERTEX_POINT('',#1700);
+#1702=CARTESIAN_POINT('',(0.902,0.178,0.84));
+#1701=VERTEX_POINT('',#1702);
+#1698=EDGE_CURVE('',#1699,#1701,#1703,.T.);
+#1703=LINE('',#1700,#1705);
+#1705=VECTOR('',#1706,0.355599994235095);
+#1706=DIRECTION('',(0.0,1.0,0.0));
+#1697=ORIENTED_EDGE('',*,*,#1698,.F.);
+#1710=CARTESIAN_POINT('',(0.902,-0.178,0.929));
+#1709=VERTEX_POINT('',#1710);
+#1708=EDGE_CURVE('',#1709,#1699,#1713,.T.);
+#1713=LINE('',#1710,#1715);
+#1715=VECTOR('',#1716,0.0889);
+#1716=DIRECTION('',(0.0,0.0,-1.0));
+#1707=ORIENTED_EDGE('',*,*,#1708,.F.);
+#1720=CARTESIAN_POINT('',(0.902,0.178,0.929));
+#1719=VERTEX_POINT('',#1720);
+#1718=EDGE_CURVE('',#1719,#1709,#1723,.T.);
+#1723=LINE('',#1720,#1725);
+#1725=VECTOR('',#1726,0.355599994235095);
+#1726=DIRECTION('',(0.0,-1.0,0.0));
+#1717=ORIENTED_EDGE('',*,*,#1718,.F.);
+#1728=EDGE_CURVE('',#1701,#1719,#1733,.T.);
+#1733=LINE('',#1702,#1735);
+#1735=VECTOR('',#1736,0.0889);
+#1736=DIRECTION('',(0.0,0.0,1.0));
+#1727=ORIENTED_EDGE('',*,*,#1728,.F.);
+#1737=STYLED_ITEM('',(#34),#1738);
+#1738=ADVANCED_FACE('',(#1744),#1739,.T.);
+#1739=PLANE('',#1740);
+#1740=AXIS2_PLACEMENT_3D('',#1741,#1742,#1743);
+#1741=CARTESIAN_POINT('',(0.902,0.178,0.929));
+#1742=DIRECTION('',(0.0,0.0,1.0));
+#1743=DIRECTION('',(0.,1.,0.));
+#1744=FACE_OUTER_BOUND('',#1745,.T.);
+#1745=EDGE_LOOP('',(#1746,#1756,#1766,#1776));
+#1746=ORIENTED_EDGE('',*,*,#1718,.T.);
+#1759=CARTESIAN_POINT('',(0.909,-0.178,0.929));
+#1758=VERTEX_POINT('',#1759);
+#1757=EDGE_CURVE('',#1758,#1709,#1762,.T.);
+#1762=LINE('',#1759,#1764);
+#1764=VECTOR('',#1765,7.38742507851249E-03);
+#1765=DIRECTION('',(-1.0,0.0,0.0));
+#1756=ORIENTED_EDGE('',*,*,#1757,.F.);
+#1769=CARTESIAN_POINT('',(0.909,0.178,0.929));
+#1768=VERTEX_POINT('',#1769);
+#1767=EDGE_CURVE('',#1768,#1758,#1772,.T.);
+#1772=LINE('',#1769,#1774);
+#1774=VECTOR('',#1775,0.355599994244281);
+#1775=DIRECTION('',(0.0,-1.0,0.0));
+#1766=ORIENTED_EDGE('',*,*,#1767,.F.);
+#1777=EDGE_CURVE('',#1719,#1768,#1782,.T.);
+#1782=LINE('',#1720,#1784);
+#1784=VECTOR('',#1785,7.38742507851267E-03);
+#1785=DIRECTION('',(1.0,0.0,0.0));
+#1776=ORIENTED_EDGE('',*,*,#1777,.F.);
+#1786=STYLED_ITEM('',(#34),#1787);
+#1787=ADVANCED_FACE('',(#1793),#1788,.T.);
+#1788=PLANE('',#1789);
+#1789=AXIS2_PLACEMENT_3D('',#1790,#1791,#1792);
+#1790=CARTESIAN_POINT('',(0.902,-0.178,0.84));
+#1791=DIRECTION('',(0.0,0.0,-1.0));
+#1792=DIRECTION('',(0.,1.,0.));
+#1793=FACE_OUTER_BOUND('',#1794,.T.);
+#1794=EDGE_LOOP('',(#1795,#1805,#1815,#1825));
+#1795=ORIENTED_EDGE('',*,*,#1698,.T.);
+#1808=CARTESIAN_POINT('',(0.909,0.178,0.84));
+#1807=VERTEX_POINT('',#1808);
+#1806=EDGE_CURVE('',#1807,#1701,#1811,.T.);
+#1811=LINE('',#1808,#1813);
+#1813=VECTOR('',#1814,7.38742507851267E-03);
+#1814=DIRECTION('',(-1.0,0.0,0.0));
+#1805=ORIENTED_EDGE('',*,*,#1806,.F.);
+#1818=CARTESIAN_POINT('',(0.909,-0.178,0.84));
+#1817=VERTEX_POINT('',#1818);
+#1816=EDGE_CURVE('',#1817,#1807,#1821,.T.);
+#1821=LINE('',#1818,#1823);
+#1823=VECTOR('',#1824,0.355599994244281);
+#1824=DIRECTION('',(0.0,1.0,0.0));
+#1815=ORIENTED_EDGE('',*,*,#1816,.F.);
+#1826=EDGE_CURVE('',#1699,#1817,#1831,.T.);
+#1831=LINE('',#1700,#1833);
+#1833=VECTOR('',#1834,7.38742507851249E-03);
+#1834=DIRECTION('',(1.0,0.0,0.0));
+#1825=ORIENTED_EDGE('',*,*,#1826,.F.);
+#1835=STYLED_ITEM('',(#34),#1836);
+#1836=ADVANCED_FACE('',(#1842),#1837,.T.);
+#1837=PLANE('',#1838);
+#1838=AXIS2_PLACEMENT_3D('',#1839,#1840,#1841);
+#1839=CARTESIAN_POINT('',(1.253,-0.178,0.155));
+#1840=DIRECTION('',(0.966,0.0,0.259));
+#1841=DIRECTION('',(0.,0.,1.));
+#1842=FACE_OUTER_BOUND('',#1843,.T.);
+#1843=EDGE_LOOP('',(#1844,#1854,#1864,#1874));
+#1847=CARTESIAN_POINT('',(1.253,0.178,0.155));
+#1846=VERTEX_POINT('',#1847);
+#1849=CARTESIAN_POINT('',(1.253,-0.178,0.155));
+#1848=VERTEX_POINT('',#1849);
+#1845=EDGE_CURVE('',#1846,#1848,#1850,.T.);
+#1850=LINE('',#1847,#1852);
+#1852=VECTOR('',#1853,0.355599996542456);
+#1853=DIRECTION('',(0.0,-1.0,0.0));
+#1844=ORIENTED_EDGE('',*,*,#1845,.F.);
+#1857=CARTESIAN_POINT('',(1.081,0.178,0.797));
+#1856=VERTEX_POINT('',#1857);
+#1855=EDGE_CURVE('',#1856,#1846,#1860,.T.);
+#1860=LINE('',#1857,#1862);
+#1862=VECTOR('',#1863,0.664999311324857);
+#1863=DIRECTION('',(0.259,0.0,-0.966));
+#1854=ORIENTED_EDGE('',*,*,#1855,.F.);
+#1867=CARTESIAN_POINT('',(1.081,-0.178,0.797));
+#1866=VERTEX_POINT('',#1867);
+#1865=EDGE_CURVE('',#1866,#1856,#1870,.T.);
+#1870=LINE('',#1867,#1872);
+#1872=VECTOR('',#1873,0.355599994660601);
+#1873=DIRECTION('',(0.0,1.0,0.0));
+#1864=ORIENTED_EDGE('',*,*,#1865,.F.);
+#1875=EDGE_CURVE('',#1848,#1866,#1880,.T.);
+#1880=LINE('',#1849,#1882);
+#1882=VECTOR('',#1883,0.664999311324858);
+#1883=DIRECTION('',(-0.259,0.0,0.966));
+#1874=ORIENTED_EDGE('',*,*,#1875,.F.);
+#1884=STYLED_ITEM('',(#34),#1885);
+#1885=ADVANCED_FACE('',(#1891),#1886,.T.);
+#1886=PLANE('',#1887);
+#1887=AXIS2_PLACEMENT_3D('',#1888,#1889,#1890);
+#1888=CARTESIAN_POINT('',(1.167,0.178,0.132));
+#1889=DIRECTION('',(-0.966,0.0,-0.259));
+#1890=DIRECTION('',(0.,0.,1.));
+#1891=FACE_OUTER_BOUND('',#1892,.T.);
+#1892=EDGE_LOOP('',(#1893,#1903,#1913,#1923));
+#1896=CARTESIAN_POINT('',(1.167,-0.178,0.132));
+#1895=VERTEX_POINT('',#1896);
+#1898=CARTESIAN_POINT('',(1.167,0.178,0.132));
+#1897=VERTEX_POINT('',#1898);
+#1894=EDGE_CURVE('',#1895,#1897,#1899,.T.);
+#1899=LINE('',#1896,#1901);
+#1901=VECTOR('',#1902,0.355599995227448);
+#1902=DIRECTION('',(0.0,1.0,0.0));
+#1893=ORIENTED_EDGE('',*,*,#1894,.F.);
+#1906=CARTESIAN_POINT('',(0.995,-0.178,0.774));
+#1905=VERTEX_POINT('',#1906);
+#1904=EDGE_CURVE('',#1905,#1895,#1909,.T.);
+#1909=LINE('',#1906,#1911);
+#1911=VECTOR('',#1912,0.664999311469429);
+#1912=DIRECTION('',(0.259,0.0,-0.966));
+#1903=ORIENTED_EDGE('',*,*,#1904,.F.);
+#1916=CARTESIAN_POINT('',(0.995,0.178,0.774));
+#1915=VERTEX_POINT('',#1916);
+#1914=EDGE_CURVE('',#1915,#1905,#1919,.T.);
+#1919=LINE('',#1916,#1921);
+#1921=VECTOR('',#1922,0.355599994389966);
+#1922=DIRECTION('',(0.0,-1.0,0.0));
+#1913=ORIENTED_EDGE('',*,*,#1914,.F.);
+#1924=EDGE_CURVE('',#1897,#1915,#1929,.T.);
+#1929=LINE('',#1898,#1931);
+#1931=VECTOR('',#1932,0.664999311469429);
+#1932=DIRECTION('',(-0.259,0.0,0.966));
+#1923=ORIENTED_EDGE('',*,*,#1924,.F.);
+#1933=STYLED_ITEM('',(#34),#1934);
+#1934=ADVANCED_FACE('',(#1940),#1935,.T.);
+#1935=PLANE('',#1936);
+#1936=AXIS2_PLACEMENT_3D('',#1937,#1938,#1939);
+#1937=CARTESIAN_POINT('',(1.346,-0.178,0.089));
+#1938=DIRECTION('',(0.0,0.0,1.0));
+#1939=DIRECTION('',(0.,1.,0.));
+#1940=FACE_OUTER_BOUND('',#1941,.T.);
+#1941=EDGE_LOOP('',(#1942,#1952,#1962,#1972));
+#1945=CARTESIAN_POINT('',(1.346,0.178,0.089));
+#1944=VERTEX_POINT('',#1945);
+#1947=CARTESIAN_POINT('',(1.346,-0.178,0.089));
+#1946=VERTEX_POINT('',#1947);
+#1943=EDGE_CURVE('',#1944,#1946,#1948,.T.);
+#1948=LINE('',#1945,#1950);
+#1950=VECTOR('',#1951,0.3556);
+#1951=DIRECTION('',(0.0,-1.0,0.0));
+#1942=ORIENTED_EDGE('',*,*,#1943,.F.);
+#1955=CARTESIAN_POINT('',(1.339,0.178,0.089));
+#1954=VERTEX_POINT('',#1955);
+#1953=EDGE_CURVE('',#1954,#1944,#1958,.T.);
+#1958=LINE('',#1955,#1960);
+#1960=VECTOR('',#1961,7.38742496587698E-03);
+#1961=DIRECTION('',(1.0,0.0,0.0));
+#1952=ORIENTED_EDGE('',*,*,#1953,.F.);
+#1965=CARTESIAN_POINT('',(1.339,-0.178,0.089));
+#1964=VERTEX_POINT('',#1965);
+#1963=EDGE_CURVE('',#1964,#1954,#1968,.T.);
+#1968=LINE('',#1965,#1970);
+#1970=VECTOR('',#1971,0.355599999614933);
+#1971=DIRECTION('',(0.0,1.0,0.0));
+#1962=ORIENTED_EDGE('',*,*,#1963,.F.);
+#1973=EDGE_CURVE('',#1946,#1964,#1978,.T.);
+#1978=LINE('',#1947,#1980);
+#1980=VECTOR('',#1981,7.38742496587718E-03);
+#1981=DIRECTION('',(-1.0,0.0,0.0));
+#1972=ORIENTED_EDGE('',*,*,#1973,.F.);
+#1982=STYLED_ITEM('',(#34),#1983);
+#1983=ADVANCED_FACE('',(#1989),#1984,.T.);
+#1984=PLANE('',#1985);
+#1985=AXIS2_PLACEMENT_3D('',#1986,#1987,#1988);
+#1986=CARTESIAN_POINT('',(1.339,-0.178,0.0));
+#1987=DIRECTION('',(0.0,0.0,-1.0));
+#1988=DIRECTION('',(0.,1.,0.));
+#1989=FACE_OUTER_BOUND('',#1990,.T.);
+#1990=EDGE_LOOP('',(#1991,#2001,#2011,#2021));
+#1994=CARTESIAN_POINT('',(1.339,0.178,0.0));
+#1993=VERTEX_POINT('',#1994);
+#1996=CARTESIAN_POINT('',(1.339,-0.178,0.0));
+#1995=VERTEX_POINT('',#1996);
+#1992=EDGE_CURVE('',#1993,#1995,#1997,.T.);
+#1997=LINE('',#1994,#1999);
+#1999=VECTOR('',#2000,0.355599999614933);
+#2000=DIRECTION('',(0.0,-1.0,0.0));
+#1991=ORIENTED_EDGE('',*,*,#1992,.F.);
+#2004=CARTESIAN_POINT('',(1.346,0.178,0.0));
+#2003=VERTEX_POINT('',#2004);
+#2002=EDGE_CURVE('',#2003,#1993,#2007,.T.);
+#2007=LINE('',#2004,#2009);
+#2009=VECTOR('',#2010,7.38742496587698E-03);
+#2010=DIRECTION('',(-1.0,0.0,0.0));
+#2001=ORIENTED_EDGE('',*,*,#2002,.F.);
+#2014=CARTESIAN_POINT('',(1.346,-0.178,0.0));
+#2013=VERTEX_POINT('',#2014);
+#2012=EDGE_CURVE('',#2013,#2003,#2017,.T.);
+#2017=LINE('',#2014,#2019);
+#2019=VECTOR('',#2020,0.3556);
+#2020=DIRECTION('',(0.0,1.0,0.0));
+#2011=ORIENTED_EDGE('',*,*,#2012,.F.);
+#2022=EDGE_CURVE('',#1995,#2013,#2027,.T.);
+#2027=LINE('',#1996,#2029);
+#2029=VECTOR('',#2030,7.38742496587718E-03);
+#2030=DIRECTION('',(1.0,0.0,0.0));
+#2021=ORIENTED_EDGE('',*,*,#2022,.F.);
+#2031=STYLED_ITEM('',(#34),#2032);
+#2032=ADVANCED_FACE('',(#2038),#2033,.T.);
+#2033=PLANE('',#2034);
+#2034=AXIS2_PLACEMENT_3D('',#2035,#2036,#2037);
+#2035=CARTESIAN_POINT('',(1.346,-0.178,0.0));
+#2036=DIRECTION('',(1.0,0.0,0.0));
+#2037=DIRECTION('',(0.,0.,1.));
+#2038=FACE_OUTER_BOUND('',#2039,.T.);
+#2039=EDGE_LOOP('',(#2040,#2050,#2060,#2070));
+#2040=ORIENTED_EDGE('',*,*,#2012,.T.);
+#2051=EDGE_CURVE('',#1944,#2003,#2056,.T.);
+#2056=LINE('',#1945,#2058);
+#2058=VECTOR('',#2059,0.0889);
+#2059=DIRECTION('',(0.0,0.0,-1.0));
+#2050=ORIENTED_EDGE('',*,*,#2051,.F.);
+#2060=ORIENTED_EDGE('',*,*,#1943,.T.);
+#2071=EDGE_CURVE('',#2013,#1946,#2076,.T.);
+#2076=LINE('',#2014,#2078);
+#2078=VECTOR('',#2079,0.0889);
+#2079=DIRECTION('',(0.0,0.0,1.0));
+#2070=ORIENTED_EDGE('',*,*,#2071,.F.);
+#2080=STYLED_ITEM($,(#34),#2081);
+#2081=ADVANCED_FACE($,(#2087),#2082,.T.);
+#2082=CYLINDRICAL_SURFACE($,#2083,0.1778);
+#2083=AXIS2_PLACEMENT_3D($,#2084,#2085,#2086);
+#2084=CARTESIAN_POINT('',(0.909,0.178,0.751));
+#2085=DIRECTION('',(0.0,1.0,0.0));
+#2086=DIRECTION('',(0.,0.,1.));
+#2087=FACE_OUTER_BOUND($,#2088,.T.);
+#2088=EDGE_LOOP($,(#2100,#2110,#2121,#2089));
+#2100=ORIENTED_EDGE('',*,*,#1767,.T.);
+#2111=EDGE_CURVE($,#1866,#1758,#2116,.T.);
+#2116=CIRCLE($,#2117,0.1778);
+#2118=CARTESIAN_POINT('',(0.909,-0.178,0.751));
+#2117=AXIS2_PLACEMENT_3D($,#2118,#2119,#2120);
+#2119=DIRECTION('',(0.0,-1.0,0.0));
+#2120=DIRECTION('',(-0.793,0.0,0.609));
+#2110=ORIENTED_EDGE('',*,*,#2111,.F.);
+#2121=ORIENTED_EDGE('',*,*,#1865,.T.);
+#2090=EDGE_CURVE($,#1768,#1856,#2095,.T.);
+#2095=CIRCLE($,#2096,0.1778);
+#2097=CARTESIAN_POINT('',(0.909,0.178,0.751));
+#2096=AXIS2_PLACEMENT_3D($,#2097,#2098,#2099);
+#2098=DIRECTION('',(0.0,1.0,0.0));
+#2099=DIRECTION('',(0.793,0.0,-0.609));
+#2089=ORIENTED_EDGE('',*,*,#2090,.F.);
+#2131=STYLED_ITEM($,(#34),#2132);
+#2132=ADVANCED_FACE($,(#2138),#2133,.F.);
+#2133=CYLINDRICAL_SURFACE($,#2134,0.0889);
+#2134=AXIS2_PLACEMENT_3D($,#2135,#2136,#2137);
+#2135=CARTESIAN_POINT('',(0.909,-0.178,0.751));
+#2136=DIRECTION('',(0.0,1.0,0.0));
+#2137=DIRECTION('',(0.,0.,-1.));
+#2138=FACE_OUTER_BOUND($,#2139,.T.);
+#2139=EDGE_LOOP($,(#2151,#2161,#2172,#2140));
+#2151=ORIENTED_EDGE('',*,*,#1816,.T.);
+#2162=EDGE_CURVE($,#1915,#1807,#2167,.T.);
+#2167=CIRCLE($,#2168,0.0889);
+#2168=AXIS2_PLACEMENT_3D($,#2097,#2170,#2171);
+#2170=DIRECTION('',(0.0,-1.0,0.0));
+#2171=DIRECTION('',(-0.793,0.0,0.609));
+#2161=ORIENTED_EDGE('',*,*,#2162,.F.);
+#2172=ORIENTED_EDGE('',*,*,#1914,.T.);
+#2141=EDGE_CURVE($,#1817,#1905,#2146,.T.);
+#2146=CIRCLE($,#2147,0.0889);
+#2147=AXIS2_PLACEMENT_3D($,#2118,#2149,#2150);
+#2149=DIRECTION('',(0.0,1.0,0.0));
+#2150=DIRECTION('',(0.793,0.0,-0.609));
+#2140=ORIENTED_EDGE('',*,*,#2141,.F.);
+#2182=STYLED_ITEM($,(#34),#2183);
+#2183=ADVANCED_FACE($,(#2189),#2184,.F.);
+#2184=CYLINDRICAL_SURFACE($,#2185,0.0889);
+#2185=AXIS2_PLACEMENT_3D($,#2186,#2187,#2188);
+#2186=CARTESIAN_POINT('',(1.339,-0.178,0.178));
+#2187=DIRECTION('',(0.0,1.0,0.0));
+#2188=DIRECTION('',(0.,0.,1.));
+#2189=FACE_OUTER_BOUND($,#2190,.T.);
+#2190=EDGE_LOOP($,(#2202,#2212,#2223,#2191));
+#2202=ORIENTED_EDGE('',*,*,#1963,.T.);
+#2213=EDGE_CURVE($,#1846,#1954,#2218,.T.);
+#2218=CIRCLE($,#2219,0.0889);
+#2220=CARTESIAN_POINT('',(1.339,0.178,0.178));
+#2219=AXIS2_PLACEMENT_3D($,#2220,#2221,#2222);
+#2221=DIRECTION('',(0.0,-1.0,0.0));
+#2222=DIRECTION('',(0.793,0.0,-0.609));
+#2212=ORIENTED_EDGE('',*,*,#2213,.F.);
+#2223=ORIENTED_EDGE('',*,*,#1845,.T.);
+#2192=EDGE_CURVE($,#1964,#1848,#2197,.T.);
+#2197=CIRCLE($,#2198,0.0889);
+#2199=CARTESIAN_POINT('',(1.339,-0.178,0.178));
+#2198=AXIS2_PLACEMENT_3D($,#2199,#2200,#2201);
+#2200=DIRECTION('',(0.0,1.0,0.0));
+#2201=DIRECTION('',(-0.793,0.0,0.609));
+#2191=ORIENTED_EDGE('',*,*,#2192,.F.);
+#2233=STYLED_ITEM($,(#34),#2234);
+#2234=ADVANCED_FACE($,(#2240),#2235,.T.);
+#2235=CYLINDRICAL_SURFACE($,#2236,0.1778);
+#2236=AXIS2_PLACEMENT_3D($,#2237,#2238,#2239);
+#2237=CARTESIAN_POINT('',(1.339,-0.178,0.178));
+#2238=DIRECTION('',(0.0,1.0,0.0));
+#2239=DIRECTION('',(0.,0.,-1.));
+#2240=FACE_OUTER_BOUND($,#2241,.T.);
+#2241=EDGE_LOOP($,(#2253,#2263,#2274,#2242));
+#2253=ORIENTED_EDGE('',*,*,#1992,.T.);
+#2264=EDGE_CURVE($,#1895,#1995,#2269,.T.);
+#2269=CIRCLE($,#2270,0.1778);
+#2270=AXIS2_PLACEMENT_3D($,#2199,#2272,#2273);
+#2272=DIRECTION('',(0.0,-1.0,0.0));
+#2273=DIRECTION('',(0.793,0.0,-0.609));
+#2263=ORIENTED_EDGE('',*,*,#2264,.F.);
+#2274=ORIENTED_EDGE('',*,*,#1894,.T.);
+#2243=EDGE_CURVE($,#1993,#1897,#2248,.T.);
+#2248=CIRCLE($,#2249,0.1778);
+#2249=AXIS2_PLACEMENT_3D($,#2220,#2251,#2252);
+#2251=DIRECTION('',(0.0,1.0,0.0));
+#2252=DIRECTION('',(-0.793,0.0,0.609));
+#2242=ORIENTED_EDGE('',*,*,#2243,.F.);
+#2284=STYLED_ITEM('color',(#34),#2285);
+#2285=ADVANCED_FACE($,(#2291),#2286,.T.);
+#2286=PLANE($,#2287);
+#2287=AXIS2_PLACEMENT_3D($,#2288,#2289,#2290);
+#2288=CARTESIAN_POINT('',(0.902,-0.178,0.84));
+#2289=DIRECTION('',(0.0,-1.0,0.0));
+#2290=DIRECTION('',(1.,0.,0.));
+#2291=FACE_OUTER_BOUND($,#2292,.T.);
+#2292=EDGE_LOOP($,(#2295, #2305, #2315, #2378, #2389, #2325, #2336, #2346, #2356, #2366, #2399, #2409));
+#2295=ORIENTED_EDGE('',*,*,#1757,.T.);
+#2305=ORIENTED_EDGE('',*,*,#1708,.T.);
+#2315=ORIENTED_EDGE('',*,*,#1826,.T.);
+#2378=ORIENTED_EDGE('',*,*,#2141,.T.);
+#2389=ORIENTED_EDGE('',*,*,#1904,.T.);
+#2325=ORIENTED_EDGE('',*,*,#2264,.T.);
+#2336=ORIENTED_EDGE('',*,*,#2022,.T.);
+#2346=ORIENTED_EDGE('',*,*,#2071,.T.);
+#2356=ORIENTED_EDGE('',*,*,#1973,.T.);
+#2366=ORIENTED_EDGE('',*,*,#2192,.T.);
+#2399=ORIENTED_EDGE('',*,*,#1875,.T.);
+#2409=ORIENTED_EDGE('',*,*,#2111,.T.);
+#2420=STYLED_ITEM('color',(#34),#2421);
+#2421=ADVANCED_FACE($,(#2427),#2422,.T.);
+#2422=PLANE($,#2423);
+#2423=AXIS2_PLACEMENT_3D($,#2424,#2425,#2426);
+#2424=CARTESIAN_POINT('',(1.339,0.178,0.089));
+#2425=DIRECTION('',(0.0,1.0,0.0));
+#2426=DIRECTION('',(1.,0.,0.));
+#2427=FACE_OUTER_BOUND($,#2428,.T.);
+#2428=EDGE_LOOP($,(#2431, #2441, #2451, #2514, #2525, #2461, #2472, #2482, #2492, #2502, #2535, #2545));
+#2431=ORIENTED_EDGE('',*,*,#1806,.T.);
+#2441=ORIENTED_EDGE('',*,*,#1728,.T.);
+#2451=ORIENTED_EDGE('',*,*,#1777,.T.);
+#2514=ORIENTED_EDGE('',*,*,#2090,.T.);
+#2525=ORIENTED_EDGE('',*,*,#1855,.T.);
+#2461=ORIENTED_EDGE('',*,*,#2213,.T.);
+#2472=ORIENTED_EDGE('',*,*,#1953,.T.);
+#2482=ORIENTED_EDGE('',*,*,#2051,.T.);
+#2492=ORIENTED_EDGE('',*,*,#2002,.T.);
+#2502=ORIENTED_EDGE('',*,*,#2243,.T.);
+#2535=ORIENTED_EDGE('',*,*,#1924,.T.);
+#2545=ORIENTED_EDGE('',*,*,#2162,.T.);
+ENDSEC;
+END-ISO-10303-21;
diff --git a/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/B0540WS-7.LibPkg b/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/B0540WS-7.LibPkg
new file mode 100644
index 0000000..c273b15
--- /dev/null
+++ b/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/B0540WS-7.LibPkg
@@ -0,0 +1,1061 @@
+[Design]
+Version=1.0
+HierarchyMode=0
+ChannelRoomNamingStyle=0
+ReleasesFolder=
+ChannelDesignatorFormatString=$Component_$RoomName
+ChannelRoomLevelSeperator=_
+OpenOutputs=1
+ArchiveProject=0
+TimestampOutput=0
+SeparateFolders=0
+TemplateLocationPath=
+PinSwapBy_Netlabel=1
+PinSwapBy_Pin=1
+AllowPortNetNames=0
+AllowSheetEntryNetNames=1
+AppendSheetNumberToLocalNets=0
+NetlistSinglePinNets=0
+DefaultConfiguration=Default - All Constraints
+UserID=0xFFFFFFFF
+DefaultPcbProtel=1
+DefaultPcbPcad=0
+ReorderDocumentsOnCompile=1
+NameNetsHierarchically=0
+PowerPortNamesTakePriority=0
+AutoSheetNumbering=0
+AutoCrossReferences=1
+NewIndexingOfSheetSymbols=1
+PushECOToAnnotationFile=1
+DItemRevisionGUID=
+ReportSuppressedErrorsInMessages=0
+FSMCodingStyle=eFMSDropDownList_OneProcess
+FSMEncodingStyle=eFMSDropDownList_OneHot
+IsProjectConflictPreventionWarningsEnabled=0
+IsVirtualBomDocumentRemoved=0
+OutputPath=
+LogFolderPath=
+ManagedProjectGUID=
+IncludeDesignInRelease=0
+CrossRefSheetStyle=2
+CrossRefLocationStyle=1
+CrossRefPorts=3
+CrossRefCrossSheets=1
+CrossRefSheetEntries=0
+CrossRefFollowFromMainSettings=1
+
+[Preferences]
+PrefsVaultGUID=
+PrefsRevisionGUID=
+
+[OutputGroup1]
+Name=Netlist Outputs
+Description=
+TargetPrinter=Microsoft Print to PDF
+PrinterOptions=Record=PrinterOptions|Copies=1|Duplex=1|TrueTypeOptions=3|Collate=1|PrintJobKind=1|PrintWhat=1
+OutputType1=CadnetixNetlist
+OutputName1=Cadnetix Netlist
+OutputDocumentPath1=
+OutputVariantName1=
+OutputDefault1=0
+OutputType2=CalayNetlist
+OutputName2=Calay Netlist
+OutputDocumentPath2=
+OutputVariantName2=
+OutputDefault2=0
+OutputType3=EDIF
+OutputName3=EDIF for PCB
+OutputDocumentPath3=
+OutputVariantName3=
+OutputDefault3=0
+OutputType4=EESofNetlist
+OutputName4=EESof Netlist
+OutputDocumentPath4=
+OutputVariantName4=
+OutputDefault4=0
+OutputType5=IntergraphNetlist
+OutputName5=Intergraph Netlist
+OutputDocumentPath5=
+OutputVariantName5=
+OutputDefault5=0
+OutputType6=MentorBoardStationNetlist
+OutputName6=Mentor BoardStation Netlist
+OutputDocumentPath6=
+OutputVariantName6=
+OutputDefault6=0
+OutputType7=MultiWire
+OutputName7=MultiWire
+OutputDocumentPath7=
+OutputVariantName7=
+OutputDefault7=0
+OutputType8=OrCadPCB2Netlist
+OutputName8=Orcad/PCB2 Netlist
+OutputDocumentPath8=
+OutputVariantName8=
+OutputDefault8=0
+OutputType9=PADSNetlist
+OutputName9=PADS ASCII Netlist
+OutputDocumentPath9=
+OutputVariantName9=
+OutputDefault9=0
+OutputType10=Pcad
+OutputName10=Pcad for PCB
+OutputDocumentPath10=
+OutputVariantName10=
+OutputDefault10=0
+OutputType11=PCADNetlist
+OutputName11=PCAD Netlist
+OutputDocumentPath11=
+OutputVariantName11=
+OutputDefault11=0
+OutputType12=PCADnltNetlist
+OutputName12=PCADnlt Netlist
+OutputDocumentPath12=
+OutputVariantName12=
+OutputDefault12=0
+OutputType13=Protel2Netlist
+OutputName13=Protel2 Netlist
+OutputDocumentPath13=
+OutputVariantName13=
+OutputDefault13=0
+OutputType14=ProtelNetlist
+OutputName14=Protel
+OutputDocumentPath14=
+OutputVariantName14=
+OutputDefault14=0
+OutputType15=RacalNetlist
+OutputName15=Racal Netlist
+OutputDocumentPath15=
+OutputVariantName15=
+OutputDefault15=0
+OutputType16=RINFNetlist
+OutputName16=RINF Netlist
+OutputDocumentPath16=
+OutputVariantName16=
+OutputDefault16=0
+OutputType17=SciCardsNetlist
+OutputName17=SciCards Netlist
+OutputDocumentPath17=
+OutputVariantName17=
+OutputDefault17=0
+OutputType18=TangoNetlist
+OutputName18=Tango Netlist
+OutputDocumentPath18=
+OutputVariantName18=
+OutputDefault18=0
+OutputType19=TelesisNetlist
+OutputName19=Telesis Netlist
+OutputDocumentPath19=
+OutputVariantName19=
+OutputDefault19=0
+OutputType20=WireListNetlist
+OutputName20=WireList Netlist
+OutputDocumentPath20=
+OutputVariantName20=
+OutputDefault20=0
+OutputType21=XSpiceNetlist
+OutputName21=Mixed Sim Netlist
+OutputDocumentPath21=
+OutputVariantName21=
+OutputDefault21=0
+
+[OutputGroup2]
+Name=Simulator Outputs
+Description=
+TargetPrinter=Microsoft Print to PDF
+PrinterOptions=Record=PrinterOptions|Copies=1|Duplex=1|TrueTypeOptions=3|Collate=1|PrintJobKind=1|PrintWhat=1
+OutputType1=AdvSimNetlist
+OutputName1=Mixed Sim
+OutputDocumentPath1=
+OutputVariantName1=
+OutputDefault1=0
+
+[OutputGroup3]
+Name=Documentation Outputs
+Description=
+TargetPrinter=Microsoft Print to PDF
+PrinterOptions=Record=PrinterOptions|Copies=1|Duplex=1|TrueTypeOptions=3|Collate=1|PrintJobKind=1|PrintWhat=1
+OutputType1=Composite
+OutputName1=Composite Drawing
+OutputDocumentPath1=
+OutputVariantName1=[No Variations]
+OutputDefault1=0
+PageOptions1=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType2=Harness Layout Drawing Print
+OutputName2=Harness Layout Drawing Prints
+OutputDocumentPath2=
+OutputVariantName2=
+OutputDefault2=0
+PageOptions2=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType3=Harness Wiring Diagram Print
+OutputName3=Harness Wiring Diagram Prints
+OutputDocumentPath3=
+OutputVariantName3=
+OutputDefault3=0
+PageOptions3=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType4=PCB 3D Print
+OutputName4=PCB 3D Print
+OutputDocumentPath4=
+OutputVariantName4=[No Variations]
+OutputDefault4=0
+PageOptions4=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType5=PCB 3D Video
+OutputName5=PCB 3D Video
+OutputDocumentPath5=
+OutputVariantName5=[No Variations]
+OutputDefault5=0
+PageOptions5=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType6=PCB Print
+OutputName6=PCB Prints
+OutputDocumentPath6=
+OutputVariantName6=[No Variations]
+OutputDefault6=0
+PageOptions6=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType7=PCBDrawing
+OutputName7=Draftsman
+OutputDocumentPath7=
+OutputVariantName7=[No Variations]
+OutputDefault7=0
+PageOptions7=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType8=PCBLIB Print
+OutputName8=PCBLIB Prints
+OutputDocumentPath8=
+OutputVariantName8=[No Variations]
+OutputDefault8=0
+PageOptions8=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType9=PDF3D
+OutputName9=PDF3D
+OutputDocumentPath9=
+OutputVariantName9=[No Variations]
+OutputDefault9=0
+PageOptions9=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType10=PDF3D MBA
+OutputName10=PDF3D MBA
+OutputDocumentPath10=
+OutputVariantName10=
+OutputDefault10=0
+PageOptions10=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType11=Report Print
+OutputName11=Report Prints
+OutputDocumentPath11=
+OutputVariantName11=
+OutputDefault11=0
+PageOptions11=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType12=Schematic Print
+OutputName12=Schematic Prints
+OutputDocumentPath12=
+OutputVariantName12=
+OutputDefault12=0
+PageOptions12=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType13=SimView Print
+OutputName13=SimView Prints
+OutputDocumentPath13=
+OutputVariantName13=
+OutputDefault13=0
+PageOptions13=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+
+[OutputGroup4]
+Name=Assembly Outputs
+Description=
+TargetPrinter=Microsoft Print to PDF
+PrinterOptions=Record=PrinterOptions|Copies=1|Duplex=1|TrueTypeOptions=3|Collate=1|PrintJobKind=1|PrintWhat=1
+OutputType1=Assembly
+OutputName1=Assembly Drawings
+OutputDocumentPath1=
+OutputVariantName1=[No Variations]
+OutputDefault1=0
+PageOptions1=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType2=Pick Place
+OutputName2=Generates pick and place files
+OutputDocumentPath2=
+OutputVariantName2=[No Variations]
+OutputDefault2=0
+OutputType3=Test Points For Assembly
+OutputName3=Test Point Report
+OutputDocumentPath3=
+OutputVariantName3=[No Variations]
+OutputDefault3=0
+
+[OutputGroup5]
+Name=Fabrication Outputs
+Description=
+TargetPrinter=Microsoft Print to PDF
+PrinterOptions=Record=PrinterOptions|Copies=1|Duplex=1|TrueTypeOptions=3|Collate=1|PrintJobKind=1|PrintWhat=1
+OutputType1=Board Stack Report
+OutputName1=Report Board Stack
+OutputDocumentPath1=
+OutputVariantName1=
+OutputDefault1=0
+PageOptions1=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType2=CompositeDrill
+OutputName2=Composite Drill Drawing
+OutputDocumentPath2=
+OutputVariantName2=[No Variations]
+OutputDefault2=0
+PageOptions2=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType3=Drill
+OutputName3=Drill Drawing/Guides
+OutputDocumentPath3=
+OutputVariantName3=[No Variations]
+OutputDefault3=0
+PageOptions3=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType4=Final
+OutputName4=Final Artwork Prints
+OutputDocumentPath4=
+OutputVariantName4=[No Variations]
+OutputDefault4=0
+PageOptions4=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType5=Gerber
+OutputName5=Gerber Files
+OutputDocumentPath5=
+OutputVariantName5=[No Variations]
+OutputDefault5=0
+OutputType6=Gerber X2
+OutputName6=Gerber X2 Files
+OutputDocumentPath6=
+OutputVariantName6=[No Variations]
+OutputDefault6=0
+OutputType7=IPC2581
+OutputName7=IPC-2581 Files
+OutputDocumentPath7=
+OutputVariantName7=[No Variations]
+OutputDefault7=0
+OutputType8=Mask
+OutputName8=Solder/Paste Mask Prints
+OutputDocumentPath8=
+OutputVariantName8=[No Variations]
+OutputDefault8=0
+PageOptions8=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType9=NC Drill
+OutputName9=NC Drill Files
+OutputDocumentPath9=
+OutputVariantName9=
+OutputDefault9=0
+OutputType10=ODB
+OutputName10=ODB++ Files
+OutputDocumentPath10=
+OutputVariantName10=[No Variations]
+OutputDefault10=0
+OutputType11=Plane
+OutputName11=Power-Plane Prints
+OutputDocumentPath11=
+OutputVariantName11=[No Variations]
+OutputDefault11=0
+PageOptions11=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType12=Test Points
+OutputName12=Test Point Report
+OutputDocumentPath12=
+OutputVariantName12=
+OutputDefault12=0
+
+[OutputGroup6]
+Name=Report Outputs
+Description=
+TargetPrinter=Microsoft Print to PDF
+PrinterOptions=Record=PrinterOptions|Copies=1|Duplex=1|TrueTypeOptions=3|Collate=1|PrintJobKind=1|PrintWhat=1
+OutputType1=BOM_PartType
+OutputName1=Bill of Materials
+OutputDocumentPath1=
+OutputVariantName1=[No Variations]
+OutputDefault1=0
+PageOptions1=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType2=BOM_ReportCompare
+OutputName2=BOM Compare
+OutputDocumentPath2=
+OutputVariantName2=[No Variations]
+OutputDefault2=0
+PageOptions2=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType3=ComponentCrossReference
+OutputName3=Component Cross Reference Report
+OutputDocumentPath3=
+OutputVariantName3=[No Variations]
+OutputDefault3=0
+OutputType4=Export Comments
+OutputName4=Export Comments
+OutputDocumentPath4=
+OutputVariantName4=[No Variations]
+OutputDefault4=0
+PageOptions4=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType5=Project History
+OutputName5=Project History
+OutputDocumentPath5=
+OutputVariantName5=[No Variations]
+OutputDefault5=0
+PageOptions5=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType6=ReportHierarchy
+OutputName6=Report Project Hierarchy
+OutputDocumentPath6=
+OutputVariantName6=[No Variations]
+OutputDefault6=0
+OutputType7=Script
+OutputName7=Script Output
+OutputDocumentPath7=
+OutputVariantName7=[No Variations]
+OutputDefault7=0
+OutputType8=SimpleBOM
+OutputName8=Simple BOM
+OutputDocumentPath8=
+OutputVariantName8=[No Variations]
+OutputDefault8=0
+OutputType9=SinglePinNetReporter
+OutputName9=Report Single Pin Nets
+OutputDocumentPath9=
+OutputVariantName9=[No Variations]
+OutputDefault9=0
+
+[OutputGroup7]
+Name=Other Outputs
+Description=
+TargetPrinter=Microsoft Print to PDF
+PrinterOptions=Record=PrinterOptions|Copies=1|Duplex=1|TrueTypeOptions=3|Collate=1|PrintJobKind=1|PrintWhat=1
+OutputType1=Text Print
+OutputName1=Text Print
+OutputDocumentPath1=
+OutputVariantName1=
+OutputDefault1=0
+PageOptions1=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType2=Text Print
+OutputName2=Text Print
+OutputDocumentPath2=
+OutputVariantName2=
+OutputDefault2=0
+PageOptions2=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType3=Text Print
+OutputName3=Text Print
+OutputDocumentPath3=
+OutputVariantName3=
+OutputDefault3=0
+PageOptions3=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType4=Text Print
+OutputName4=Text Print
+OutputDocumentPath4=
+OutputVariantName4=
+OutputDefault4=0
+PageOptions4=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType5=Text Print
+OutputName5=Text Print
+OutputDocumentPath5=
+OutputVariantName5=
+OutputDefault5=0
+PageOptions5=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType6=Text Print
+OutputName6=Text Print
+OutputDocumentPath6=
+OutputVariantName6=
+OutputDefault6=0
+PageOptions6=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType7=Text Print
+OutputName7=Text Print
+OutputDocumentPath7=
+OutputVariantName7=
+OutputDefault7=0
+PageOptions7=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType8=Text Print
+OutputName8=Text Print
+OutputDocumentPath8=
+OutputVariantName8=
+OutputDefault8=0
+PageOptions8=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType9=Text Print
+OutputName9=Text Print
+OutputDocumentPath9=
+OutputVariantName9=
+OutputDefault9=0
+PageOptions9=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType10=Text Print
+OutputName10=Text Print
+OutputDocumentPath10=
+OutputVariantName10=
+OutputDefault10=0
+PageOptions10=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType11=Text Print
+OutputName11=Text Print
+OutputDocumentPath11=
+OutputVariantName11=
+OutputDefault11=0
+PageOptions11=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType12=Text Print
+OutputName12=Text Print
+OutputDocumentPath12=
+OutputVariantName12=
+OutputDefault12=0
+PageOptions12=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType13=Text Print
+OutputName13=Text Print
+OutputDocumentPath13=
+OutputVariantName13=
+OutputDefault13=0
+PageOptions13=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType14=Text Print
+OutputName14=Text Print
+OutputDocumentPath14=
+OutputVariantName14=
+OutputDefault14=0
+PageOptions14=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType15=Text Print
+OutputName15=Text Print
+OutputDocumentPath15=
+OutputVariantName15=
+OutputDefault15=0
+PageOptions15=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType16=Text Print
+OutputName16=Text Print
+OutputDocumentPath16=
+OutputVariantName16=
+OutputDefault16=0
+PageOptions16=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType17=Text Print
+OutputName17=Text Print
+OutputDocumentPath17=
+OutputVariantName17=
+OutputDefault17=0
+PageOptions17=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+
+[OutputGroup8]
+Name=Validation Outputs
+Description=
+TargetPrinter=Microsoft Print to PDF
+PrinterOptions=Record=PrinterOptions|Copies=1|Duplex=1|TrueTypeOptions=3|Collate=1|PrintJobKind=1|PrintWhat=1
+OutputType1=BOM_Violations
+OutputName1=BOM Checks Report
+OutputDocumentPath1=
+OutputVariantName1=
+OutputDefault1=0
+OutputType2=Component states check
+OutputName2=Server's components states check
+OutputDocumentPath2=
+OutputVariantName2=
+OutputDefault2=0
+OutputType3=Configuration compliance
+OutputName3=Environment configuration compliance check
+OutputDocumentPath3=
+OutputVariantName3=
+OutputDefault3=0
+OutputType4=Design Rules Check
+OutputName4=Design Rules Check
+OutputDocumentPath4=
+OutputVariantName4=
+OutputDefault4=0
+PageOptions4=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType5=Differences Report
+OutputName5=Differences Report
+OutputDocumentPath5=
+OutputVariantName5=
+OutputDefault5=0
+PageOptions5=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType6=Electrical Rules Check
+OutputName6=Electrical Rules Check
+OutputDocumentPath6=
+OutputVariantName6=
+OutputDefault6=0
+PageOptions6=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=A4|PaperIndex=9
+OutputType7=Footprint Comparison Report
+OutputName7=Footprint Comparison Report
+OutputDocumentPath7=
+OutputVariantName7=
+OutputDefault7=0
+
+[OutputGroup9]
+Name=Export Outputs
+Description=
+TargetPrinter=Microsoft Print to PDF
+PrinterOptions=Record=PrinterOptions|Copies=1|Duplex=1|TrueTypeOptions=3|Collate=1|PrintJobKind=1|PrintWhat=1
+OutputType1=AutoCAD dwg/dxf PCB
+OutputName1=AutoCAD dwg/dxf File PCB
+OutputDocumentPath1=
+OutputVariantName1=
+OutputDefault1=0
+OutputType2=AutoCAD dwg/dxf Schematic
+OutputName2=AutoCAD dwg/dxf File Schematic
+OutputDocumentPath2=
+OutputVariantName2=
+OutputDefault2=0
+OutputType3=ExportIDF
+OutputName3=Export IDF
+OutputDocumentPath3=
+OutputVariantName3=
+OutputDefault3=0
+OutputType4=ExportPARASOLID
+OutputName4=Export PARASOLID
+OutputDocumentPath4=
+OutputVariantName4=[No Variations]
+OutputDefault4=0
+OutputType5=ExportSTEP
+OutputName5=Export STEP
+OutputDocumentPath5=
+OutputVariantName5=[No Variations]
+OutputDefault5=0
+OutputType6=ExportVRML
+OutputName6=Export VRML
+OutputDocumentPath6=
+OutputVariantName6=[No Variations]
+OutputDefault6=0
+OutputType7=MBAExportPARASOLID
+OutputName7=Export PARASOLID
+OutputDocumentPath7=
+OutputVariantName7=
+OutputDefault7=0
+OutputType8=MBAExportSTEP
+OutputName8=Export STEP
+OutputDocumentPath8=
+OutputVariantName8=
+OutputDefault8=0
+OutputType9=Save As/Export PCB
+OutputName9=Save As/Export PCB
+OutputDocumentPath9=
+OutputVariantName9=
+OutputDefault9=0
+OutputType10=Save As/Export Schematic
+OutputName10=Save As/Export Schematic
+OutputDocumentPath10=
+OutputVariantName10=
+OutputDefault10=0
+OutputType11=Specctra Design PCB
+OutputName11=Specctra Design PCB
+OutputDocumentPath11=
+OutputVariantName11=
+OutputDefault11=0
+OutputType12=Web ReviewOutputName
+OutputName12=Web Review Data
+OutputDocumentPath12=
+OutputVariantName12=
+OutputDefault12=0
+
+[OutputGroup10]
+Name=PostProcess Outputs
+Description=
+TargetPrinter=Microsoft Print to PDF
+PrinterOptions=Record=PrinterOptions|Copies=1|Duplex=1|TrueTypeOptions=3|Collate=1|PrintJobKind=1|PrintWhat=1
+OutputType1=Copy Files
+OutputName1=Copy Files
+OutputDocumentPath1=
+OutputVariantName1=
+OutputDefault1=0
+
+[Modification Levels]
+Type1=1
+Type2=1
+Type3=1
+Type4=1
+Type5=1
+Type6=1
+Type7=1
+Type8=1
+Type9=1
+Type10=1
+Type11=1
+Type12=1
+Type13=1
+Type14=1
+Type15=1
+Type16=1
+Type17=1
+Type18=1
+Type19=1
+Type20=1
+Type21=1
+Type22=1
+Type23=1
+Type24=1
+Type25=1
+Type26=1
+Type27=1
+Type28=1
+Type29=1
+Type30=1
+Type31=1
+Type32=1
+Type33=1
+Type34=1
+Type35=1
+Type36=1
+Type37=1
+Type38=1
+Type39=1
+Type40=1
+Type41=1
+Type42=1
+Type43=1
+Type44=1
+Type45=1
+Type46=1
+Type47=1
+Type48=1
+Type49=1
+Type50=1
+Type51=1
+Type52=1
+Type53=1
+Type54=1
+Type55=1
+Type56=1
+Type57=1
+Type58=1
+Type59=1
+Type60=1
+Type61=1
+Type62=1
+Type63=1
+Type64=1
+Type65=1
+Type66=1
+Type67=1
+Type68=1
+Type69=1
+Type70=1
+Type71=1
+Type72=1
+Type73=1
+Type74=1
+Type75=1
+Type76=1
+Type77=1
+Type78=1
+Type79=1
+Type80=1
+Type81=1
+Type82=1
+Type83=1
+Type84=1
+Type85=1
+Type86=1
+Type87=1
+Type88=1
+Type89=1
+Type90=1
+Type91=1
+Type92=1
+Type93=1
+Type94=1
+Type95=1
+Type96=1
+Type97=1
+Type98=1
+Type99=1
+Type100=1
+Type101=1
+Type102=1
+Type103=1
+Type104=1
+Type105=1
+Type106=1
+Type107=1
+Type108=1
+Type109=1
+Type110=1
+Type111=1
+Type112=1
+Type113=1
+Type114=1
+Type115=1
+Type116=1
+Type117=1
+Type118=1
+Type119=1
+Type120=1
+
+[Difference Levels]
+Type1=1
+Type2=1
+Type3=1
+Type4=1
+Type5=1
+Type6=1
+Type7=1
+Type8=1
+Type9=1
+Type10=1
+Type11=1
+Type12=1
+Type13=1
+Type14=1
+Type15=1
+Type16=1
+Type17=1
+Type18=1
+Type19=1
+Type20=1
+Type21=1
+Type22=1
+Type23=1
+Type24=1
+Type25=1
+Type26=1
+Type27=1
+Type28=1
+Type29=1
+Type30=1
+Type31=1
+Type32=1
+Type33=1
+Type34=1
+Type35=1
+Type36=1
+Type37=1
+Type38=1
+Type39=1
+Type40=1
+Type41=1
+Type42=1
+Type43=1
+Type44=1
+Type45=1
+Type46=1
+Type47=1
+Type48=1
+Type49=1
+Type50=1
+Type51=1
+Type52=1
+Type53=1
+Type54=1
+Type55=1
+Type56=1
+Type57=1
+Type58=1
+Type59=1
+Type60=1
+Type61=1
+Type62=1
+Type63=1
+Type64=1
+Type65=1
+Type66=1
+Type67=1
+Type68=1
+
+[Electrical Rules Check]
+Type1=1
+Type2=1
+Type3=2
+Type4=1
+Type5=2
+Type6=2
+Type7=0
+Type8=1
+Type9=1
+Type10=1
+Type11=2
+Type12=2
+Type13=2
+Type14=1
+Type15=1
+Type16=1
+Type17=1
+Type18=1
+Type19=1
+Type20=0
+Type21=0
+Type22=0
+Type23=0
+Type24=1
+Type25=2
+Type26=0
+Type27=2
+Type28=1
+Type29=1
+Type30=1
+Type31=1
+Type32=2
+Type33=0
+Type34=2
+Type35=1
+Type36=2
+Type37=1
+Type38=2
+Type39=2
+Type40=2
+Type41=0
+Type42=2
+Type43=1
+Type44=0
+Type45=0
+Type46=0
+Type47=0
+Type48=0
+Type49=0
+Type50=2
+Type51=0
+Type52=0
+Type53=1
+Type54=1
+Type55=1
+Type56=2
+Type57=1
+Type58=1
+Type59=2
+Type60=0
+Type61=0
+Type62=0
+Type63=0
+Type64=0
+Type65=2
+Type66=3
+Type67=2
+Type68=2
+Type69=0
+Type70=2
+Type71=2
+Type72=2
+Type73=2
+Type74=1
+Type75=2
+Type76=1
+Type77=1
+Type78=1
+Type79=1
+Type80=2
+Type81=3
+Type82=3
+Type83=3
+Type84=3
+Type85=3
+Type86=2
+Type87=2
+Type88=2
+Type89=1
+Type90=1
+Type91=3
+Type92=3
+Type93=2
+Type94=2
+Type95=2
+Type96=2
+Type97=2
+Type98=0
+Type99=1
+Type100=2
+Type101=0
+Type102=2
+Type103=2
+Type104=1
+Type105=2
+Type106=2
+Type107=2
+Type108=2
+Type109=1
+Type110=1
+Type111=1
+Type112=1
+Type113=1
+Type114=2
+Type115=2
+Type116=2
+Type117=3
+Type118=3
+Type119=3
+AlternateItemFail=3
+Type122=2
+Type123=1
+Type124=1
+Type125=1
+Type126=1
+Type127=1
+
+[ERC Connection Matrix]
+L1=NNNNNNNNNNNWNNNWW
+L2=NNWNNNNWWWNWNWNWN
+L3=NWEENEEEENEWNEEWN
+L4=NNENNNWEENNWNENWN
+L5=NNNNNNNNNNNNNNNNN
+L6=NNENNNNEENNWNENWN
+L7=NNEWNNWEENNWNENWN
+L8=NWEENEENEEENNEENN
+L9=NWEENEEEENEWNEEWW
+L10=NWNNNNNENNEWNNEWN
+L11=NNENNNNEEENWNENWN
+L12=WWWWNWWNWWWNWWWNN
+L13=NNNNNNNNNNNWNNNWW
+L14=NWEENEEEENEWNEEWW
+L15=NNENNNNEEENWNENWW
+L16=WWWWNWWNWWWNWWWNW
+L17=WNNNNNNNWNNNWWWWN
+
+[Annotate]
+SortOrder=3
+SortLocation=0
+ReplaceSubparts=0
+MatchParameter1=Comment
+MatchStrictly1=1
+MatchParameter2=Library Reference
+MatchStrictly2=1
+PhysicalNamingFormat=$Component_$RoomName
+GlobalIndexSortOrder=3
+GlobalIndexSortLocation=0
+
+[PrjClassGen]
+CompClassManualEnabled=0
+CompClassManualRoomEnabled=0
+NetClassAutoBusEnabled=1
+NetClassAutoCompEnabled=0
+NetClassAutoNamedHarnessEnabled=0
+NetClassManualEnabled=1
+NetClassSeparateForBusSections=0
+
+[Comparison Options]
+ComparisonOptions0=Kind=Net|MinPercent=75|MinMatch=3|ShowMatch=0|UseName=-1|InclAllRules=0
+ComparisonOptions1=Kind=Net Class|MinPercent=75|MinMatch=3|ShowMatch=0|UseName=-1|InclAllRules=0
+ComparisonOptions2=Kind=Component Class|MinPercent=75|MinMatch=3|ShowMatch=0|UseName=-1|InclAllRules=0
+ComparisonOptions3=Kind=Rule|MinPercent=75|MinMatch=3|ShowMatch=0|UseName=-1|InclAllRules=0
+ComparisonOptions4=Kind=Differential Pair|MinPercent=50|MinMatch=1|ShowMatch=0|UseName=0|InclAllRules=0
+ComparisonOptions5=Kind=Structure Class|MinPercent=75|MinMatch=3|ShowMatch=0|UseName=-1|InclAllRules=0
+
+[Document1]
+DocumentPath=B0540WS-7.PcbLib
+AnnotationEnabled=1
+AnnotateStartValue=1
+AnnotationIndexControlEnabled=0
+AnnotateSuffix=
+AnnotateScope=All
+AnnotateOrder=-1
+DoLibraryUpdate=1
+DoDatabaseUpdate=1
+ClassGenCCAutoEnabled=1
+ClassGenCCAutoRoomEnabled=0
+ClassGenNCAutoScope=None
+DItemRevisionGUID=
+GenerateClassCluster=0
+DocumentUniqueId=
+
+[Document2]
+DocumentPath=B0540WS-7.SchLib
+AnnotationEnabled=1
+AnnotateStartValue=1
+AnnotationIndexControlEnabled=0
+AnnotateSuffix=
+AnnotateScope=All
+AnnotateOrder=-1
+DoLibraryUpdate=1
+DoDatabaseUpdate=1
+ClassGenCCAutoEnabled=1
+ClassGenCCAutoRoomEnabled=0
+ClassGenNCAutoScope=None
+DItemRevisionGUID=
+GenerateClassCluster=0
+DocumentUniqueId=
+
+[LibraryUpdateOptions]
+SelectedOnly=0
+UpdateVariants=1
+UpdateToLatestRevision=1
+PartTypes=0
+FullReplace=1
+UpdateDesignatorLock=1
+UpdatePartIDLock=1
+PreserveParameterLocations=1
+PreserveParameterVisibility=1
+DoGraphics=1
+DoParameters=1
+DoModels=1
+AddParameters=0
+RemoveParameters=0
+AddModels=1
+RemoveModels=1
+UpdateCurrentModels=1
+
+[DatabaseUpdateOptions]
+SelectedOnly=0
+UpdateVariants=1
+UpdateToLatestRevision=1
+PartTypes=0
+
diff --git a/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/B0540WS-7.PcbLib b/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/B0540WS-7.PcbLib
new file mode 100644
index 0000000..23b02e3
Binary files /dev/null and b/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/B0540WS-7.PcbLib differ
diff --git a/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/B0540WS-7.SchLib b/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/B0540WS-7.SchLib
new file mode 100644
index 0000000..8ea4dba
Binary files /dev/null and b/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/B0540WS-7.SchLib differ
diff --git a/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/B0540WS-7.txt b/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/B0540WS-7.txt
new file mode 100644
index 0000000..fb8d339
--- /dev/null
+++ b/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/B0540WS-7.txt
@@ -0,0 +1,220 @@
+# Created by Ultra Librarian Gold 8.3.307 Copyright © 1999-2021
+# Frank Frank, Accelerated Designs
+
+StartFootprints
+
+Footprint (Name "SOD323_DIO")
+Pad (Name "1") (Location -52, 0) (Surface True) (Rotation 0) (ExpandMask 0) (ExpandPaste 0)
+PadShape (Size 30, 16) (Shape Rectangular) (Layer Top)
+EndPad
+Pad (Name "2") (Location 52, 0) (Surface True) (Rotation 0) (ExpandMask 0) (ExpandPaste 0)
+PadShape (Size 30, 16) (Shape Rectangular) (Layer Top)
+EndPad
+Line (Width 1) (Start -35.5, -7) (End -35.5, 7) (Layer Mechanical13)
+Line (Width 1) (Start -35.5, 7) (End -53, 7) (Layer Mechanical13)
+Line (Width 1) (Start -53, 7) (End -53, -7) (Layer Mechanical13)
+Line (Width 1) (Start -53, -7) (End -35.5, -7) (Layer Mechanical13)
+Line (Width 1) (Start 35.5, 7) (End 35.5, -7) (Layer Mechanical13)
+Line (Width 1) (Start 35.5, -7) (End 53, -7) (Layer Mechanical13)
+Line (Width 1) (Start 53, -7) (End 53, 7) (Layer Mechanical13)
+Line (Width 1) (Start 53, 7) (End 35.5, 7) (Layer Mechanical13)
+Line (Width 1) (Start -35.5, 13.75) (End -21.75, 27.5) (Layer Mechanical13)
+Line (Width 1) (Start -35.5, -13.75) (End -21.75, -27.5) (Layer Mechanical13)
+Line (Width 1) (Start -35.5, -27.5) (End 35.5, -27.5) (Layer Mechanical13)
+Line (Width 1) (Start 35.5, -27.5) (End 35.5, 27.5) (Layer Mechanical13)
+Line (Width 1) (Start 35.5, 27.5) (End -35.5, 27.5) (Layer Mechanical13)
+Line (Width 1) (Start -35.5, 27.5) (End -35.5, -27.5) (Layer Mechanical13)
+Text (Location -38, -25) (Height 50) (Width 3) (Rotation 0) (Layer Mechanical13) (Value "*")
+Line (Width 6) (Start -77, -18) (End -77, 18) (Layer Mechanical15)
+Line (Width 6) (Start -77, 18) (End -45.5, 18) (Layer Mechanical15)
+Line (Width 6) (Start 45.5, 18) (End 77, 18) (Layer Mechanical15)
+Line (Width 6) (Start 77, 18) (End 77, -18) (Layer Mechanical15)
+Line (Width 6) (Start 77, -18) (End 45.5, -18) (Layer Mechanical15)
+Line (Width 6) (Start -45.5, -18) (End -77, -18) (Layer Mechanical15)
+Line (Width 6) (Start -45.5, -37.5) (End -45.5, -18) (Layer Mechanical15)
+Line (Width 6) (Start -45.5, 18) (End -45.5, 37.5) (Layer Mechanical15)
+Line (Width 6) (Start -45.5, 37.5) (End 45.5, 37.5) (Layer Mechanical15)
+Line (Width 6) (Start 45.5, 37.5) (End 45.5, 18) (Layer Mechanical15)
+Line (Width 6) (Start 45.5, -18) (End 45.5, -37.5) (Layer Mechanical15)
+Line (Width 6) (Start 45.5, -37.5) (End -45.5, -37.5) (Layer Mechanical15)
+Polygon (PointCount 12) (Layer Mechanical15)
+Point (-77, -18)
+Point (-77, 18)
+Point (-45.5, 18)
+Point (-45.5, 37.5)
+Point (45.5, 37.5)
+Point (45.5, 18)
+Point (77, 18)
+Point (77, -18)
+Point (45.5, -18)
+Point (45.5, -37.5)
+Point (-45.5, -37.5)
+Point (-45.5, -18)
+EndPolygon
+Polygon (PointCount 4) (Layer Mechanical5)
+Point (-74.5, -35)
+Point (-74.5, 35)
+Point (74.5, 35)
+Point (74.5, -35)
+EndPolygon
+Line (Width 6) (Start 40.5, 21.10000038) (End 40.5, 32.5) (Layer TopOverlay)
+Line (Width 6) (Start -40.5, -32.5) (End 40.5, -32.5) (Layer TopOverlay)
+Line (Width 6) (Start 40.5, -32.5) (End 40.5, -21.10000038) (Layer TopOverlay)
+Line (Width 6) (Start 40.5, 32.5) (End -40.5, 32.5) (Layer TopOverlay)
+Line (Width 6) (Start -40.5, 32.5) (End -40.5, 21.10000038) (Layer TopOverlay)
+Line (Width 6) (Start -40.5, -21.10000038) (End -40.5, -32.5) (Layer TopOverlay)
+Text (Location -94.5, -25) (Height 50) (Width 3) (Rotation 0) (Layer TopOverlay) (Value "*")
+Step (Name SOD323_DIO.step)
+EndFootprint
+
+Footprint (Name "SOD323_DIO-M")
+Pad (Name "1") (Location -47, 0) (Surface True) (Rotation 0) (ExpandMask 0) (ExpandPaste 0)
+PadShape (Size 56, 18) (Shape Rectangular) (Layer Top)
+EndPad
+Pad (Name "2") (Location 47, 0) (Surface True) (Rotation 0) (ExpandMask 0) (ExpandPaste 0)
+PadShape (Size 56, 18) (Shape Rectangular) (Layer Top)
+EndPad
+Line (Width 1) (Start -35.5, -7) (End -35.5, 7) (Layer Mechanical13)
+Line (Width 1) (Start -35.5, 7) (End -53, 7) (Layer Mechanical13)
+Line (Width 1) (Start -53, 7) (End -53, -7) (Layer Mechanical13)
+Line (Width 1) (Start -53, -7) (End -35.5, -7) (Layer Mechanical13)
+Line (Width 1) (Start 35.5, 7) (End 35.5, -7) (Layer Mechanical13)
+Line (Width 1) (Start 35.5, -7) (End 53, -7) (Layer Mechanical13)
+Line (Width 1) (Start 53, -7) (End 53, 7) (Layer Mechanical13)
+Line (Width 1) (Start 53, 7) (End 35.5, 7) (Layer Mechanical13)
+Line (Width 1) (Start -35.5, 13.75) (End -21.75, 27.5) (Layer Mechanical13)
+Line (Width 1) (Start -35.5, -13.75) (End -21.75, -27.5) (Layer Mechanical13)
+Line (Width 1) (Start -35.5, -27.5) (End 35.5, -27.5) (Layer Mechanical13)
+Line (Width 1) (Start 35.5, -27.5) (End 35.5, 27.5) (Layer Mechanical13)
+Line (Width 1) (Start 35.5, 27.5) (End -35.5, 27.5) (Layer Mechanical13)
+Line (Width 1) (Start -35.5, 27.5) (End -35.5, -27.5) (Layer Mechanical13)
+Text (Location -38, -25) (Height 50) (Width 3) (Rotation 0) (Layer Mechanical13) (Value "*")
+Line (Width 6) (Start -95, -29) (End -95, 29) (Layer Mechanical15)
+Line (Width 6) (Start -95, 29) (End -55.5, 29) (Layer Mechanical15)
+Line (Width 6) (Start 55.5, 29) (End 95, 29) (Layer Mechanical15)
+Line (Width 6) (Start 95, 29) (End 95, -29) (Layer Mechanical15)
+Line (Width 6) (Start 95, -29) (End 55.5, -29) (Layer Mechanical15)
+Line (Width 6) (Start -55.5, -29) (End -95, -29) (Layer Mechanical15)
+Line (Width 6) (Start -55.5, -47.5) (End -55.5, -29) (Layer Mechanical15)
+Line (Width 6) (Start -55.5, 29) (End -55.5, 47.5) (Layer Mechanical15)
+Line (Width 6) (Start -55.5, 47.5) (End 55.5, 47.5) (Layer Mechanical15)
+Line (Width 6) (Start 55.5, 47.5) (End 55.5, 29) (Layer Mechanical15)
+Line (Width 6) (Start 55.5, -29) (End 55.5, -47.5) (Layer Mechanical15)
+Line (Width 6) (Start 55.5, -47.5) (End -55.5, -47.5) (Layer Mechanical15)
+Polygon (PointCount 12) (Layer Mechanical15)
+Point (-95, -29)
+Point (-95, 29)
+Point (-55.5, 29)
+Point (-55.5, 47.5)
+Point (55.5, 47.5)
+Point (55.5, 29)
+Point (95, 29)
+Point (95, -29)
+Point (55.5, -29)
+Point (55.5, -47.5)
+Point (-55.5, -47.5)
+Point (-55.5, -29)
+EndPolygon
+Polygon (PointCount 4) (Layer Mechanical5)
+Point (-82.5, -35)
+Point (-82.5, 35)
+Point (82.5, 35)
+Point (82.5, -35)
+EndPolygon
+Line (Width 6) (Start 40.5, 22.10000038) (End 40.5, 32.5) (Layer TopOverlay)
+Line (Width 6) (Start -40.5, -32.5) (End 40.5, -32.5) (Layer TopOverlay)
+Line (Width 6) (Start 40.5, -32.5) (End 40.5, -22.10000038) (Layer TopOverlay)
+Line (Width 6) (Start 40.5, 32.5) (End -40.5, 32.5) (Layer TopOverlay)
+Line (Width 6) (Start -40.5, 32.5) (End -40.5, 22.10000038) (Layer TopOverlay)
+Line (Width 6) (Start -40.5, -22.10000038) (End -40.5, -32.5) (Layer TopOverlay)
+Text (Location -102.5, -25) (Height 50) (Width 3) (Rotation 0) (Layer TopOverlay) (Value "*")
+Step (Name SOD323_DIO.step)
+EndFootprint
+
+Footprint (Name "SOD323_DIO-L")
+Pad (Name "1") (Location -43, 0) (Surface True) (Rotation 0) (ExpandMask 0) (ExpandPaste 0)
+PadShape (Size 32, 14) (Shape Rectangular) (Layer Top)
+EndPad
+Pad (Name "2") (Location 43, 0) (Surface True) (Rotation 0) (ExpandMask 0) (ExpandPaste 0)
+PadShape (Size 32, 14) (Shape Rectangular) (Layer Top)
+EndPad
+Line (Width 1) (Start -35.5, -7) (End -35.5, 7) (Layer Mechanical13)
+Line (Width 1) (Start -35.5, 7) (End -53, 7) (Layer Mechanical13)
+Line (Width 1) (Start -53, 7) (End -53, -7) (Layer Mechanical13)
+Line (Width 1) (Start -53, -7) (End -35.5, -7) (Layer Mechanical13)
+Line (Width 1) (Start 35.5, 7) (End 35.5, -7) (Layer Mechanical13)
+Line (Width 1) (Start 35.5, -7) (End 53, -7) (Layer Mechanical13)
+Line (Width 1) (Start 53, -7) (End 53, 7) (Layer Mechanical13)
+Line (Width 1) (Start 53, 7) (End 35.5, 7) (Layer Mechanical13)
+Line (Width 1) (Start -35.5, 13.75) (End -21.75, 27.5) (Layer Mechanical13)
+Line (Width 1) (Start -35.5, -13.75) (End -21.75, -27.5) (Layer Mechanical13)
+Line (Width 1) (Start -35.5, -27.5) (End 35.5, -27.5) (Layer Mechanical13)
+Line (Width 1) (Start 35.5, -27.5) (End 35.5, 27.5) (Layer Mechanical13)
+Line (Width 1) (Start 35.5, 27.5) (End -35.5, 27.5) (Layer Mechanical13)
+Line (Width 1) (Start -35.5, 27.5) (End -35.5, -27.5) (Layer Mechanical13)
+Text (Location -38, -25) (Height 50) (Width 3) (Rotation 0) (Layer Mechanical13) (Value "*")
+Line (Width 6) (Start -63, -11) (End -63, 11) (Layer Mechanical15)
+Line (Width 6) (Start -63, 11) (End -39.5, 11) (Layer Mechanical15)
+Line (Width 6) (Start 39.5, 11) (End 63, 11) (Layer Mechanical15)
+Line (Width 6) (Start 63, 11) (End 63, -11) (Layer Mechanical15)
+Line (Width 6) (Start 63, -11) (End 39.5, -11) (Layer Mechanical15)
+Line (Width 6) (Start -39.5, -11) (End -63, -11) (Layer Mechanical15)
+Line (Width 6) (Start -39.5, -31.5) (End -39.5, -11) (Layer Mechanical15)
+Line (Width 6) (Start -39.5, 11) (End -39.5, 31.5) (Layer Mechanical15)
+Line (Width 6) (Start -39.5, 31.5) (End 39.5, 31.5) (Layer Mechanical15)
+Line (Width 6) (Start 39.5, 31.5) (End 39.5, 11) (Layer Mechanical15)
+Line (Width 6) (Start 39.5, -11) (End 39.5, -31.5) (Layer Mechanical15)
+Line (Width 6) (Start 39.5, -31.5) (End -39.5, -31.5) (Layer Mechanical15)
+Polygon (PointCount 12) (Layer Mechanical15)
+Point (-63, -11)
+Point (-63, 11)
+Point (-39.5, 11)
+Point (-39.5, 31.5)
+Point (39.5, 31.5)
+Point (39.5, 11)
+Point (63, 11)
+Point (63, -11)
+Point (39.5, -11)
+Point (39.5, -31.5)
+Point (-39.5, -31.5)
+Point (-39.5, -11)
+EndPolygon
+Polygon (PointCount 4) (Layer Mechanical5)
+Point (-66.5, -35)
+Point (-66.5, 35)
+Point (66.5, 35)
+Point (66.5, -35)
+EndPolygon
+Line (Width 6) (Start 40.5, 20.10000038) (End 40.5, 32.5) (Layer TopOverlay)
+Line (Width 6) (Start -40.5, -32.5) (End 40.5, -32.5) (Layer TopOverlay)
+Line (Width 6) (Start 40.5, -32.5) (End 40.5, -20.10000038) (Layer TopOverlay)
+Line (Width 6) (Start 40.5, 32.5) (End -40.5, 32.5) (Layer TopOverlay)
+Line (Width 6) (Start -40.5, 32.5) (End -40.5, 20.10000038) (Layer TopOverlay)
+Line (Width 6) (Start -40.5, -20.10000038) (End -40.5, -32.5) (Layer TopOverlay)
+Text (Location -86.5, -25) (Height 50) (Width 3) (Rotation 0) (Layer TopOverlay) (Value "*")
+Step (Name SOD323_DIO.step)
+EndFootprint
+EndFootprints
+
+StartComponents
+
+Component (Name "B0540WS-7") (PartCount 1) (DesPrefix "CR?")
+Pin (Location 100, 0) (Rotation 180) (PinType Passive) (Length 100) (Width 0) (Designator Hidden "2") (Name Hidden "2") (PinSwap 1) (PartSwap 1) (PinSeq 2) (Part 1)
+Pin (Location 300, 0) (Rotation 0) (PinType Passive) (Length 100) (Width 0) (Designator Hidden "1") (Name Hidden "1") (PinSwap 1) (PartSwap 1) (PinSeq 1) (Part 1)
+Line (Width 8) (Start 100, 0) (End 137, 0) (Part 1)
+Line (Width 8) (Start 150, 75) (End 150, -75) (Part 1)
+Line (Width 8) (Start 125, 0) (End 150, 0) (Part 1)
+Line (Width 8) (Start 250, -75) (End 250, 75) (Part 1)
+Line (Width 8) (Start 250, 0) (End 300, 0) (Part 1)
+Line (Width 8) (Start 250, 0) (End 150, 75) (Part 1)
+Line (Width 8) (Start 150, -75) (End 250, 0) (Part 1)
+Parameter (Name "Copyright") (Location 0, 0) (Height 50) (Rotation 0) (Justification Center) (Value "Copyright (C) 2023 Ultra Librarian. All rights reserved.") (Part 1)
+Parameter (Name "Mfr_Name") (Location 0, 0) (Height 50) (Rotation 0) (Justification Center) (Value "Diodes Inc") (Part 1)
+Parameter (Name "Manufacturer_Part_Number") (Location 0, 0) (Height 50) (Rotation 0) (Justification Center) (Value "B0540WS-7") (Part 1)
+Parameter (Name "RefDes") (Location 200, 175) (Height 137) (Rotation 0) (Justification Center) (Value "RefDes") (Part 1)
+Parameter (Name "Type") (Location 200, -300) (Height 137) (Rotation 0) (Justification Center) (Value "DEV") (Part 1)
+Description (Value "No Description Available") (Part 1)
+Comment (Value "B0540WS-7") (Part 1)
+Footprint (Name "SOD323_DIO")
+EndComponent
+EndComponents
diff --git a/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/History/B0540WS-7.~(1).PcbLib.Zip b/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/History/B0540WS-7.~(1).PcbLib.Zip
new file mode 100644
index 0000000..35cf578
Binary files /dev/null and b/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/History/B0540WS-7.~(1).PcbLib.Zip differ
diff --git a/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/Project Outputs for B0540WS-7/B0540WS-7.IntLib b/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/Project Outputs for B0540WS-7/B0540WS-7.IntLib
new file mode 100644
index 0000000..1e82d3b
Binary files /dev/null and b/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/Project Outputs for B0540WS-7/B0540WS-7.IntLib differ
diff --git a/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/SOD323_DIO.step b/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/SOD323_DIO.step
new file mode 100644
index 0000000..9160b86
--- /dev/null
+++ b/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/SOD323_DIO.step
@@ -0,0 +1,1170 @@
+ISO-10303-21;
+HEADER;
+FILE_DESCRIPTION(('STEP AP214'),'1');
+FILE_NAME('SOD323_DIO','2023-04-07T17:07:05',(''),(''),'','','');
+FILE_SCHEMA(('AUTOMOTIVE_DESIGN'));
+ENDSEC;
+DATA;
+#1=SHAPE_DEFINITION_REPRESENTATION(#2,#3);
+#2=PRODUCT_DEFINITION_SHAPE('',$,#4);
+#3=SHAPE_REPRESENTATION('',(#71,#127,#816,#1686,#19),#11);
+#4=PRODUCT_DEFINITION('design','example product_definition',#6,#5);
+#5=PRODUCT_DEFINITION_CONTEXT('3D Mechanical Parts',#10,'design');
+#6=PRODUCT_DEFINITION_FORMATION('1.0','first version',#8);
+#7=APPLICATION_PROTOCOL_DEFINITION('international standard','automotive_design',2003,#10);
+#8=PRODUCT('product','part','',(#9));
+#9=PRODUCT_CONTEXT('3D Mechanical Parts',#10,'mechanical');
+#10=APPLICATION_CONTEXT('Core Data for Automotive Mechanical Design Process');
+#11=(GEOMETRIC_REPRESENTATION_CONTEXT(3) GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#12)) GLOBAL_UNIT_ASSIGNED_CONTEXT((#13,#14,#18)) REPRESENTATION_CONTEXT('ID1','3D'));
+#12=UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(1.E-005),#13,'DISTANCE_ACCURACY_VALUE','Maximum model space distance between geometric entities at asserted connectivities');
+#13=(LENGTH_UNIT() NAMED_UNIT(*) SI_UNIT(.MILLI.,.METRE.));
+#14=(CONVERSION_BASED_UNIT('degree',#16) NAMED_UNIT(#15) PLANE_ANGLE_UNIT());
+#15=DIMENSIONAL_EXPONENTS(0.,0.,0.,0.,0.,0.,0.);
+#16=MEASURE_WITH_UNIT(PLANE_ANGLE_MEASURE(0.01745329252),#17);
+#17=(NAMED_UNIT(*) PLANE_ANGLE_UNIT() SI_UNIT($,.RADIAN.));
+#18=(NAMED_UNIT(*) SI_UNIT($,.STERADIAN.) SOLID_ANGLE_UNIT());
+#19=AXIS2_PLACEMENT_3D('',#20,#21,#22);
+#20=CARTESIAN_POINT('',(0.0,0.0,0.0));
+#21=DIRECTION('',(0.0,0.0,1.0));
+#22=DIRECTION('',(1.0,0.0,0.0));
+#25=MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION($,(#123,#124,#125,#129,#178,#227,#276,#325,#374,#423,#472,#521,#570,#818,#867,#916,#965,#1014,#1063,#1112,#1161,#1210,#1261,#1312,#1363,#1414,#1550,#1688,#1737,#1786,#1835,#1884,#1933,#1982,#2031,#2080,#2131,#2182,#2233,#2284,#2420),#11);
+#26=PRODUCT_CATEGORY_RELATIONSHIP('','',#27,#28);
+#27=PRODUCT_CATEGORY('part','');
+#28=PRODUCT_RELATED_PRODUCT_CATEGORY('','',(#8));
+#34=PRESENTATION_STYLE_ASSIGNMENT((#35,#40));
+#35=SURFACE_STYLE_USAGE(.BOTH.,#36);
+#36=SURFACE_SIDE_STYLE('',(#37));
+#37=SURFACE_STYLE_FILL_AREA(#38);
+#38=FILL_AREA_STYLE('',(#39));
+#39=FILL_AREA_STYLE_COLOUR('',#41);
+#40=CURVE_STYLE('',#42,POSITIVE_LENGTH_MEASURE(0.1),#41);
+#41=COLOUR_RGB('Aluminum',0.725,0.725,0.725);
+#42=DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
+#43=PRESENTATION_STYLE_ASSIGNMENT((#44,#49));
+#44=SURFACE_STYLE_USAGE(.BOTH.,#45);
+#45=SURFACE_SIDE_STYLE('',(#46));
+#46=SURFACE_STYLE_FILL_AREA(#47);
+#47=FILL_AREA_STYLE('',(#48));
+#48=FILL_AREA_STYLE_COLOUR('',#50);
+#49=CURVE_STYLE('',#51,POSITIVE_LENGTH_MEASURE(0.1),#50);
+#50=COLOUR_RGB('Black',0.196,0.196,0.196);
+#51=DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
+#52=PRESENTATION_STYLE_ASSIGNMENT((#53,#58));
+#53=SURFACE_STYLE_USAGE(.BOTH.,#54);
+#54=SURFACE_SIDE_STYLE('',(#55));
+#55=SURFACE_STYLE_FILL_AREA(#56);
+#56=FILL_AREA_STYLE('',(#57));
+#57=FILL_AREA_STYLE_COLOUR('',#59);
+#58=CURVE_STYLE('',#60,POSITIVE_LENGTH_MEASURE(0.1),#59);
+#59=COLOUR_RGB('Pin1',0.588,0.588,0.588);
+#60=DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
+#61=PRESENTATION_STYLE_ASSIGNMENT((#62,#67));
+#62=SURFACE_STYLE_USAGE(.BOTH.,#63);
+#63=SURFACE_SIDE_STYLE('',(#64));
+#64=SURFACE_STYLE_FILL_AREA(#65);
+#65=FILL_AREA_STYLE('',(#66));
+#66=FILL_AREA_STYLE_COLOUR('',#68);
+#67=CURVE_STYLE('',#69,POSITIVE_LENGTH_MEASURE(0.1),#68);
+#68=COLOUR_RGB('HeatTab',0.588,0.588,0.588);
+#69=DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
+#71=MANIFOLD_SOLID_BREP($,#72);
+#72=CLOSED_SHELL('',(#73,#74,#75));
+#73=ADVANCED_FACE($,(#79,#78),#96,.T.);
+#74=ADVANCED_FACE($,(#80),#76,.F.);
+#75=ADVANCED_FACE($,(#81),#77,.T.);
+#76=PLANE($,#101);
+#77=PLANE($,#102);
+#78=FACE_BOUND($,#83,.T.);
+#79=FACE_OUTER_BOUND($,#82,.T.);
+#80=FACE_OUTER_BOUND($,#84,.T.);
+#81=FACE_OUTER_BOUND($,#85,.T.);
+#82=EDGE_LOOP($,(#92));
+#83=EDGE_LOOP($,(#93));
+#84=EDGE_LOOP($,(#94));
+#85=EDGE_LOOP($,(#95));
+#86=CIRCLE($,#99,0.045085);
+#87=CIRCLE($,#100,0.045085);
+#88=VERTEX_POINT('',#117);
+#89=VERTEX_POINT('',#119);
+#90=EDGE_CURVE($,#88,#88,#86,.T.);
+#91=EDGE_CURVE($,#89,#89,#87,.T.);
+#92=ORIENTED_EDGE($,*,*,#90,.F.);
+#93=ORIENTED_EDGE($,*,*,#91,.F.);
+#94=ORIENTED_EDGE($,*,*,#91,.T.);
+#95=ORIENTED_EDGE($,*,*,#90,.T.);
+#96=CYLINDRICAL_SURFACE($,#98,0.045085);
+#97=AXIS2_PLACEMENT_3D('placement',#115,#103,#104);
+#98=AXIS2_PLACEMENT_3D($,#116,#105,#106);
+#99=AXIS2_PLACEMENT_3D($,#118,#107,#108);
+#100=AXIS2_PLACEMENT_3D($,#120,#109,#110);
+#101=AXIS2_PLACEMENT_3D($,#121,#111,#112);
+#102=AXIS2_PLACEMENT_3D($,#122,#113,#114);
+#103=DIRECTION('axis',(0.,1.,0.));
+#104=DIRECTION('refdir',(1.,0.,0.));
+#105=DIRECTION('',(0.,0.,1.));
+#106=DIRECTION('',(1.,0.,0.));
+#107=DIRECTION('',(0.,0.,1.));
+#108=DIRECTION('',(1.,0.,0.));
+#109=DIRECTION('',(0.,0.,-1.));
+#110=DIRECTION('',(1.,0.,0.));
+#111=DIRECTION('',(0.,0.,1.));
+#112=DIRECTION('',(0.,1.,0.));
+#113=DIRECTION('',(0.,0.,1.));
+#114=DIRECTION('',(0.,1.,0.));
+#115=CARTESIAN_POINT('',(0.,0.,0.));
+#116=CARTESIAN_POINT('',(-0.721,0.0,1.194));
+#117=CARTESIAN_POINT('',(-0.766,0.0,1.196));
+#118=CARTESIAN_POINT('',(-0.721,0.0,1.196));
+#119=CARTESIAN_POINT('',(-0.766,0.0,1.194));
+#120=CARTESIAN_POINT('',(-0.721,0.0,1.194));
+#121=CARTESIAN_POINT('',(-0.721,0.0,1.194));
+#122=CARTESIAN_POINT('',(-0.721,0.0,1.196));
+#123=STYLED_ITEM('color',(#52),#73);
+#124=STYLED_ITEM('color',(#52),#74);
+#125=STYLED_ITEM('color',(#52),#75);
+#127=MANIFOLD_SOLID_BREP($,#128);
+#128=CLOSED_SHELL('',(#130,#179,#228,#277,#326,#375,#424,#473,#522,#571));
+#129=STYLED_ITEM('',(#43),#130);
+#130=ADVANCED_FACE('',(#136),#131,.T.);
+#131=PLANE('',#132);
+#132=AXIS2_PLACEMENT_3D('',#133,#134,#135);
+#133=CARTESIAN_POINT('',(-0.902,-0.698,1.194));
+#134=DIRECTION('',(0.0,0.0,1.0));
+#135=DIRECTION('',(0.,1.,0.));
+#136=FACE_OUTER_BOUND('',#137,.T.);
+#137=EDGE_LOOP('',(#138,#148,#158,#168));
+#141=CARTESIAN_POINT('',(0.902,-0.698,1.194));
+#140=VERTEX_POINT('',#141);
+#143=CARTESIAN_POINT('',(-0.902,-0.698,1.194));
+#142=VERTEX_POINT('',#143);
+#139=EDGE_CURVE('',#140,#142,#144,.T.);
+#144=LINE('',#141,#146);
+#146=VECTOR('',#147,1.8034);
+#147=DIRECTION('',(-1.0,0.0,0.0));
+#138=ORIENTED_EDGE('',*,*,#139,.F.);
+#151=CARTESIAN_POINT('',(0.902,0.698,1.194));
+#150=VERTEX_POINT('',#151);
+#149=EDGE_CURVE('',#150,#140,#154,.T.);
+#154=LINE('',#151,#156);
+#156=VECTOR('',#157,1.397);
+#157=DIRECTION('',(0.0,-1.0,0.0));
+#148=ORIENTED_EDGE('',*,*,#149,.F.);
+#161=CARTESIAN_POINT('',(-0.902,0.698,1.194));
+#160=VERTEX_POINT('',#161);
+#159=EDGE_CURVE('',#160,#150,#164,.T.);
+#164=LINE('',#161,#166);
+#166=VECTOR('',#167,1.8034);
+#167=DIRECTION('',(1.0,0.0,0.0));
+#158=ORIENTED_EDGE('',*,*,#159,.F.);
+#169=EDGE_CURVE('',#142,#160,#174,.T.);
+#174=LINE('',#143,#176);
+#176=VECTOR('',#177,1.397);
+#177=DIRECTION('',(0.0,1.0,0.0));
+#168=ORIENTED_EDGE('',*,*,#169,.F.);
+#178=STYLED_ITEM('',(#43),#179);
+#179=ADVANCED_FACE('',(#185),#180,.T.);
+#180=PLANE('',#181);
+#181=AXIS2_PLACEMENT_3D('',#182,#183,#184);
+#182=CARTESIAN_POINT('',(-0.8,0.597,0.0));
+#183=DIRECTION('',(0.0,0.0,-1.0));
+#184=DIRECTION('',(0.,1.,0.));
+#185=FACE_OUTER_BOUND('',#186,.T.);
+#186=EDGE_LOOP('',(#187,#197,#207,#217));
+#190=CARTESIAN_POINT('',(0.8,0.597,0.0));
+#189=VERTEX_POINT('',#190);
+#192=CARTESIAN_POINT('',(-0.8,0.597,0.0));
+#191=VERTEX_POINT('',#192);
+#188=EDGE_CURVE('',#189,#191,#193,.T.);
+#193=LINE('',#190,#195);
+#195=VECTOR('',#196,1.6002);
+#196=DIRECTION('',(-1.0,0.0,0.0));
+#187=ORIENTED_EDGE('',*,*,#188,.F.);
+#200=CARTESIAN_POINT('',(0.8,-0.597,0.0));
+#199=VERTEX_POINT('',#200);
+#198=EDGE_CURVE('',#199,#189,#203,.T.);
+#203=LINE('',#200,#205);
+#205=VECTOR('',#206,1.1938);
+#206=DIRECTION('',(0.0,1.0,0.0));
+#197=ORIENTED_EDGE('',*,*,#198,.F.);
+#210=CARTESIAN_POINT('',(-0.8,-0.597,0.0));
+#209=VERTEX_POINT('',#210);
+#208=EDGE_CURVE('',#209,#199,#213,.T.);
+#213=LINE('',#210,#215);
+#215=VECTOR('',#216,1.6002);
+#216=DIRECTION('',(1.0,0.0,0.0));
+#207=ORIENTED_EDGE('',*,*,#208,.F.);
+#218=EDGE_CURVE('',#191,#209,#223,.T.);
+#223=LINE('',#192,#225);
+#225=VECTOR('',#226,1.1938);
+#226=DIRECTION('',(0.0,-1.0,0.0));
+#217=ORIENTED_EDGE('',*,*,#218,.F.);
+#227=STYLED_ITEM('',(#43),#228);
+#228=ADVANCED_FACE('',(#234),#229,.T.);
+#229=PLANE('',#230);
+#230=AXIS2_PLACEMENT_3D('',#231,#232,#233);
+#231=CARTESIAN_POINT('',(-0.902,-0.698,0.761));
+#232=DIRECTION('',(0.0,-1.0,0.0));
+#233=DIRECTION('',(0.,0.,1.));
+#234=FACE_OUTER_BOUND('',#235,.T.);
+#235=EDGE_LOOP('',(#236,#246,#256,#266));
+#239=CARTESIAN_POINT('',(0.902,-0.698,0.761));
+#238=VERTEX_POINT('',#239);
+#241=CARTESIAN_POINT('',(-0.902,-0.698,0.761));
+#240=VERTEX_POINT('',#241);
+#237=EDGE_CURVE('',#238,#240,#242,.T.);
+#242=LINE('',#239,#244);
+#244=VECTOR('',#245,1.8034);
+#245=DIRECTION('',(-1.0,0.0,0.0));
+#236=ORIENTED_EDGE('',*,*,#237,.F.);
+#247=EDGE_CURVE('',#140,#238,#252,.T.);
+#252=LINE('',#141,#254);
+#254=VECTOR('',#255,0.432525714285714);
+#255=DIRECTION('',(0.0,0.0,-1.0));
+#246=ORIENTED_EDGE('',*,*,#247,.F.);
+#256=ORIENTED_EDGE('',*,*,#139,.T.);
+#267=EDGE_CURVE('',#240,#142,#272,.T.);
+#272=LINE('',#241,#274);
+#274=VECTOR('',#275,0.432525714285714);
+#275=DIRECTION('',(0.0,0.0,1.0));
+#266=ORIENTED_EDGE('',*,*,#267,.F.);
+#276=STYLED_ITEM('',(#43),#277);
+#277=ADVANCED_FACE('',(#283),#278,.T.);
+#278=PLANE('',#279);
+#279=AXIS2_PLACEMENT_3D('',#280,#281,#282);
+#280=CARTESIAN_POINT('',(0.902,-0.698,0.761));
+#281=DIRECTION('',(1.0,0.0,0.0));
+#282=DIRECTION('',(0.,0.,1.));
+#283=FACE_OUTER_BOUND('',#284,.T.);
+#284=EDGE_LOOP('',(#285,#295,#305,#315));
+#288=CARTESIAN_POINT('',(0.902,0.698,0.761));
+#287=VERTEX_POINT('',#288);
+#286=EDGE_CURVE('',#287,#238,#291,.T.);
+#291=LINE('',#288,#293);
+#293=VECTOR('',#294,1.397);
+#294=DIRECTION('',(0.0,-1.0,0.0));
+#285=ORIENTED_EDGE('',*,*,#286,.F.);
+#296=EDGE_CURVE('',#150,#287,#301,.T.);
+#301=LINE('',#151,#303);
+#303=VECTOR('',#304,0.432525714285714);
+#304=DIRECTION('',(0.0,0.0,-1.0));
+#295=ORIENTED_EDGE('',*,*,#296,.F.);
+#305=ORIENTED_EDGE('',*,*,#149,.T.);
+#315=ORIENTED_EDGE('',*,*,#247,.T.);
+#325=STYLED_ITEM('',(#43),#326);
+#326=ADVANCED_FACE('',(#332),#327,.T.);
+#327=PLANE('',#328);
+#328=AXIS2_PLACEMENT_3D('',#329,#330,#331);
+#329=CARTESIAN_POINT('',(0.902,0.698,0.761));
+#330=DIRECTION('',(0.0,1.0,0.0));
+#331=DIRECTION('',(0.,0.,1.));
+#332=FACE_OUTER_BOUND('',#333,.T.);
+#333=EDGE_LOOP('',(#334,#344,#354,#364));
+#337=CARTESIAN_POINT('',(-0.902,0.698,0.761));
+#336=VERTEX_POINT('',#337);
+#335=EDGE_CURVE('',#336,#287,#340,.T.);
+#340=LINE('',#337,#342);
+#342=VECTOR('',#343,1.8034);
+#343=DIRECTION('',(1.0,0.0,0.0));
+#334=ORIENTED_EDGE('',*,*,#335,.F.);
+#345=EDGE_CURVE('',#160,#336,#350,.T.);
+#350=LINE('',#161,#352);
+#352=VECTOR('',#353,0.432525714285714);
+#353=DIRECTION('',(0.0,0.0,-1.0));
+#344=ORIENTED_EDGE('',*,*,#345,.F.);
+#354=ORIENTED_EDGE('',*,*,#159,.T.);
+#364=ORIENTED_EDGE('',*,*,#296,.T.);
+#374=STYLED_ITEM('',(#43),#375);
+#375=ADVANCED_FACE('',(#381),#376,.T.);
+#376=PLANE('',#377);
+#377=AXIS2_PLACEMENT_3D('',#378,#379,#380);
+#378=CARTESIAN_POINT('',(-0.902,0.698,0.761));
+#379=DIRECTION('',(-1.0,0.0,0.0));
+#380=DIRECTION('',(0.,0.,1.));
+#381=FACE_OUTER_BOUND('',#382,.T.);
+#382=EDGE_LOOP('',(#383,#393,#403,#413));
+#384=EDGE_CURVE('',#240,#336,#389,.T.);
+#389=LINE('',#241,#391);
+#391=VECTOR('',#392,1.397);
+#392=DIRECTION('',(0.0,1.0,0.0));
+#383=ORIENTED_EDGE('',*,*,#384,.F.);
+#393=ORIENTED_EDGE('',*,*,#267,.T.);
+#403=ORIENTED_EDGE('',*,*,#169,.T.);
+#413=ORIENTED_EDGE('',*,*,#345,.T.);
+#423=STYLED_ITEM('',(#43),#424);
+#424=ADVANCED_FACE('',(#430),#425,.T.);
+#425=PLANE('',#426);
+#426=AXIS2_PLACEMENT_3D('',#427,#428,#429);
+#427=CARTESIAN_POINT('',(-0.8,-0.597,0.0));
+#428=DIRECTION('',(0.0,-0.991,-0.132));
+#429=DIRECTION('',(0.,0.,1.));
+#430=FACE_OUTER_BOUND('',#431,.T.);
+#431=EDGE_LOOP('',(#432,#442,#452,#462));
+#432=ORIENTED_EDGE('',*,*,#208,.T.);
+#443=EDGE_CURVE('',#238,#199,#448,.T.);
+#448=LINE('',#239,#450);
+#450=VECTOR('',#451,0.774715210958064);
+#451=DIRECTION('',(-0.131,0.131,-0.983));
+#442=ORIENTED_EDGE('',*,*,#443,.F.);
+#452=ORIENTED_EDGE('',*,*,#237,.T.);
+#463=EDGE_CURVE('',#209,#240,#468,.T.);
+#468=LINE('',#210,#470);
+#470=VECTOR('',#471,0.774715210958064);
+#471=DIRECTION('',(-0.131,-0.131,0.983));
+#462=ORIENTED_EDGE('',*,*,#463,.F.);
+#472=STYLED_ITEM('',(#43),#473);
+#473=ADVANCED_FACE('',(#479),#474,.T.);
+#474=PLANE('',#475);
+#475=AXIS2_PLACEMENT_3D('',#476,#477,#478);
+#476=CARTESIAN_POINT('',(0.8,-0.597,0.0));
+#477=DIRECTION('',(0.991,0.0,-0.132));
+#478=DIRECTION('',(0.,0.,1.));
+#479=FACE_OUTER_BOUND('',#480,.T.);
+#480=EDGE_LOOP('',(#481,#491,#501,#511));
+#481=ORIENTED_EDGE('',*,*,#198,.T.);
+#492=EDGE_CURVE('',#287,#189,#497,.T.);
+#497=LINE('',#288,#499);
+#499=VECTOR('',#500,0.774715210958064);
+#500=DIRECTION('',(-0.131,-0.131,-0.983));
+#491=ORIENTED_EDGE('',*,*,#492,.F.);
+#501=ORIENTED_EDGE('',*,*,#286,.T.);
+#511=ORIENTED_EDGE('',*,*,#443,.T.);
+#521=STYLED_ITEM('',(#43),#522);
+#522=ADVANCED_FACE('',(#528),#523,.T.);
+#523=PLANE('',#524);
+#524=AXIS2_PLACEMENT_3D('',#525,#526,#527);
+#525=CARTESIAN_POINT('',(0.8,0.597,0.0));
+#526=DIRECTION('',(0.0,0.991,-0.132));
+#527=DIRECTION('',(0.,0.,1.));
+#528=FACE_OUTER_BOUND('',#529,.T.);
+#529=EDGE_LOOP('',(#530,#540,#550,#560));
+#530=ORIENTED_EDGE('',*,*,#188,.T.);
+#541=EDGE_CURVE('',#336,#191,#546,.T.);
+#546=LINE('',#337,#548);
+#548=VECTOR('',#549,0.774715210958064);
+#549=DIRECTION('',(0.131,-0.131,-0.983));
+#540=ORIENTED_EDGE('',*,*,#541,.F.);
+#550=ORIENTED_EDGE('',*,*,#335,.T.);
+#560=ORIENTED_EDGE('',*,*,#492,.T.);
+#570=STYLED_ITEM('',(#43),#571);
+#571=ADVANCED_FACE('',(#577),#572,.T.);
+#572=PLANE('',#573);
+#573=AXIS2_PLACEMENT_3D('',#574,#575,#576);
+#574=CARTESIAN_POINT('',(-0.8,0.597,0.0));
+#575=DIRECTION('',(-0.991,0.0,-0.132));
+#576=DIRECTION('',(0.,0.,1.));
+#577=FACE_OUTER_BOUND('',#578,.T.);
+#578=EDGE_LOOP('',(#579,#589,#599,#609));
+#579=ORIENTED_EDGE('',*,*,#218,.T.);
+#589=ORIENTED_EDGE('',*,*,#463,.T.);
+#599=ORIENTED_EDGE('',*,*,#384,.T.);
+#609=ORIENTED_EDGE('',*,*,#541,.T.);
+#816=MANIFOLD_SOLID_BREP($,#817);
+#817=CLOSED_SHELL('',(#819,#868,#917,#966,#1015,#1064,#1113,#1162,#1211,#1262,#1313,#1364,#1415,#1551));
+#818=STYLED_ITEM('',(#34),#819);
+#819=ADVANCED_FACE('',(#825),#820,.T.);
+#820=PLANE('',#821);
+#821=AXIS2_PLACEMENT_3D('',#822,#823,#824);
+#822=CARTESIAN_POINT('',(-0.902,-0.178,0.84));
+#823=DIRECTION('',(1.0,0.0,0.0));
+#824=DIRECTION('',(0.,0.,1.));
+#825=FACE_OUTER_BOUND('',#826,.T.);
+#826=EDGE_LOOP('',(#827,#837,#847,#857));
+#830=CARTESIAN_POINT('',(-0.902,0.178,0.84));
+#829=VERTEX_POINT('',#830);
+#832=CARTESIAN_POINT('',(-0.902,-0.178,0.84));
+#831=VERTEX_POINT('',#832);
+#828=EDGE_CURVE('',#829,#831,#833,.T.);
+#833=LINE('',#830,#835);
+#835=VECTOR('',#836,0.355599994235095);
+#836=DIRECTION('',(0.0,-1.0,0.0));
+#827=ORIENTED_EDGE('',*,*,#828,.F.);
+#840=CARTESIAN_POINT('',(-0.902,0.178,0.929));
+#839=VERTEX_POINT('',#840);
+#838=EDGE_CURVE('',#839,#829,#843,.T.);
+#843=LINE('',#840,#845);
+#845=VECTOR('',#846,0.0889);
+#846=DIRECTION('',(0.0,0.0,-1.0));
+#837=ORIENTED_EDGE('',*,*,#838,.F.);
+#850=CARTESIAN_POINT('',(-0.902,-0.178,0.929));
+#849=VERTEX_POINT('',#850);
+#848=EDGE_CURVE('',#849,#839,#853,.T.);
+#853=LINE('',#850,#855);
+#855=VECTOR('',#856,0.355599994235095);
+#856=DIRECTION('',(0.0,1.0,0.0));
+#847=ORIENTED_EDGE('',*,*,#848,.F.);
+#858=EDGE_CURVE('',#831,#849,#863,.T.);
+#863=LINE('',#832,#865);
+#865=VECTOR('',#866,0.0889);
+#866=DIRECTION('',(0.0,0.0,1.0));
+#857=ORIENTED_EDGE('',*,*,#858,.F.);
+#867=STYLED_ITEM('',(#34),#868);
+#868=ADVANCED_FACE('',(#874),#869,.T.);
+#869=PLANE('',#870);
+#870=AXIS2_PLACEMENT_3D('',#871,#872,#873);
+#871=CARTESIAN_POINT('',(-0.902,-0.178,0.929));
+#872=DIRECTION('',(0.0,0.0,1.0));
+#873=DIRECTION('',(0.,1.,0.));
+#874=FACE_OUTER_BOUND('',#875,.T.);
+#875=EDGE_LOOP('',(#876,#886,#896,#906));
+#876=ORIENTED_EDGE('',*,*,#848,.T.);
+#889=CARTESIAN_POINT('',(-0.909,0.178,0.929));
+#888=VERTEX_POINT('',#889);
+#887=EDGE_CURVE('',#888,#839,#892,.T.);
+#892=LINE('',#889,#894);
+#894=VECTOR('',#895,7.38742507851252E-03);
+#895=DIRECTION('',(1.0,0.0,0.0));
+#886=ORIENTED_EDGE('',*,*,#887,.F.);
+#899=CARTESIAN_POINT('',(-0.909,-0.178,0.929));
+#898=VERTEX_POINT('',#899);
+#897=EDGE_CURVE('',#898,#888,#902,.T.);
+#902=LINE('',#899,#904);
+#904=VECTOR('',#905,0.355599994244281);
+#905=DIRECTION('',(0.0,1.0,0.0));
+#896=ORIENTED_EDGE('',*,*,#897,.F.);
+#907=EDGE_CURVE('',#849,#898,#912,.T.);
+#912=LINE('',#850,#914);
+#914=VECTOR('',#915,7.3874250785127E-03);
+#915=DIRECTION('',(-1.0,0.0,0.0));
+#906=ORIENTED_EDGE('',*,*,#907,.F.);
+#916=STYLED_ITEM('',(#34),#917);
+#917=ADVANCED_FACE('',(#923),#918,.T.);
+#918=PLANE('',#919);
+#919=AXIS2_PLACEMENT_3D('',#920,#921,#922);
+#920=CARTESIAN_POINT('',(-0.902,0.178,0.84));
+#921=DIRECTION('',(0.0,0.0,-1.0));
+#922=DIRECTION('',(0.,1.,0.));
+#923=FACE_OUTER_BOUND('',#924,.T.);
+#924=EDGE_LOOP('',(#925,#935,#945,#955));
+#925=ORIENTED_EDGE('',*,*,#828,.T.);
+#938=CARTESIAN_POINT('',(-0.909,-0.178,0.84));
+#937=VERTEX_POINT('',#938);
+#936=EDGE_CURVE('',#937,#831,#941,.T.);
+#941=LINE('',#938,#943);
+#943=VECTOR('',#944,7.3874250785127E-03);
+#944=DIRECTION('',(1.0,0.0,0.0));
+#935=ORIENTED_EDGE('',*,*,#936,.F.);
+#948=CARTESIAN_POINT('',(-0.909,0.178,0.84));
+#947=VERTEX_POINT('',#948);
+#946=EDGE_CURVE('',#947,#937,#951,.T.);
+#951=LINE('',#948,#953);
+#953=VECTOR('',#954,0.355599994244281);
+#954=DIRECTION('',(0.0,-1.0,0.0));
+#945=ORIENTED_EDGE('',*,*,#946,.F.);
+#956=EDGE_CURVE('',#829,#947,#961,.T.);
+#961=LINE('',#830,#963);
+#963=VECTOR('',#964,7.38742507851252E-03);
+#964=DIRECTION('',(-1.0,0.0,0.0));
+#955=ORIENTED_EDGE('',*,*,#956,.F.);
+#965=STYLED_ITEM('',(#34),#966);
+#966=ADVANCED_FACE('',(#972),#967,.T.);
+#967=PLANE('',#968);
+#968=AXIS2_PLACEMENT_3D('',#969,#970,#971);
+#969=CARTESIAN_POINT('',(-1.253,0.178,0.155));
+#970=DIRECTION('',(-0.966,0.0,0.259));
+#971=DIRECTION('',(0.,0.,1.));
+#972=FACE_OUTER_BOUND('',#973,.T.);
+#973=EDGE_LOOP('',(#974,#984,#994,#1004));
+#977=CARTESIAN_POINT('',(-1.253,-0.178,0.155));
+#976=VERTEX_POINT('',#977);
+#979=CARTESIAN_POINT('',(-1.253,0.178,0.155));
+#978=VERTEX_POINT('',#979);
+#975=EDGE_CURVE('',#976,#978,#980,.T.);
+#980=LINE('',#977,#982);
+#982=VECTOR('',#983,0.355599996542456);
+#983=DIRECTION('',(0.0,1.0,0.0));
+#974=ORIENTED_EDGE('',*,*,#975,.F.);
+#987=CARTESIAN_POINT('',(-1.081,-0.178,0.797));
+#986=VERTEX_POINT('',#987);
+#985=EDGE_CURVE('',#986,#976,#990,.T.);
+#990=LINE('',#987,#992);
+#992=VECTOR('',#993,0.664999311324858);
+#993=DIRECTION('',(-0.259,0.0,-0.966));
+#984=ORIENTED_EDGE('',*,*,#985,.F.);
+#997=CARTESIAN_POINT('',(-1.081,0.178,0.797));
+#996=VERTEX_POINT('',#997);
+#995=EDGE_CURVE('',#996,#986,#1000,.T.);
+#1000=LINE('',#997,#1002);
+#1002=VECTOR('',#1003,0.355599994660601);
+#1003=DIRECTION('',(0.0,-1.0,0.0));
+#994=ORIENTED_EDGE('',*,*,#995,.F.);
+#1005=EDGE_CURVE('',#978,#996,#1010,.T.);
+#1010=LINE('',#979,#1012);
+#1012=VECTOR('',#1013,0.664999311324857);
+#1013=DIRECTION('',(0.259,0.0,0.966));
+#1004=ORIENTED_EDGE('',*,*,#1005,.F.);
+#1014=STYLED_ITEM('',(#34),#1015);
+#1015=ADVANCED_FACE('',(#1021),#1016,.T.);
+#1016=PLANE('',#1017);
+#1017=AXIS2_PLACEMENT_3D('',#1018,#1019,#1020);
+#1018=CARTESIAN_POINT('',(-1.167,-0.178,0.132));
+#1019=DIRECTION('',(0.966,0.0,-0.259));
+#1020=DIRECTION('',(0.,0.,1.));
+#1021=FACE_OUTER_BOUND('',#1022,.T.);
+#1022=EDGE_LOOP('',(#1023,#1033,#1043,#1053));
+#1026=CARTESIAN_POINT('',(-1.167,0.178,0.132));
+#1025=VERTEX_POINT('',#1026);
+#1028=CARTESIAN_POINT('',(-1.167,-0.178,0.132));
+#1027=VERTEX_POINT('',#1028);
+#1024=EDGE_CURVE('',#1025,#1027,#1029,.T.);
+#1029=LINE('',#1026,#1031);
+#1031=VECTOR('',#1032,0.355599995227448);
+#1032=DIRECTION('',(0.0,-1.0,0.0));
+#1023=ORIENTED_EDGE('',*,*,#1024,.F.);
+#1036=CARTESIAN_POINT('',(-0.995,0.178,0.774));
+#1035=VERTEX_POINT('',#1036);
+#1034=EDGE_CURVE('',#1035,#1025,#1039,.T.);
+#1039=LINE('',#1036,#1041);
+#1041=VECTOR('',#1042,0.664999311469429);
+#1042=DIRECTION('',(-0.259,0.0,-0.966));
+#1033=ORIENTED_EDGE('',*,*,#1034,.F.);
+#1046=CARTESIAN_POINT('',(-0.995,-0.178,0.774));
+#1045=VERTEX_POINT('',#1046);
+#1044=EDGE_CURVE('',#1045,#1035,#1049,.T.);
+#1049=LINE('',#1046,#1051);
+#1051=VECTOR('',#1052,0.355599994389966);
+#1052=DIRECTION('',(0.0,1.0,0.0));
+#1043=ORIENTED_EDGE('',*,*,#1044,.F.);
+#1054=EDGE_CURVE('',#1027,#1045,#1059,.T.);
+#1059=LINE('',#1028,#1061);
+#1061=VECTOR('',#1062,0.664999311469429);
+#1062=DIRECTION('',(0.259,0.0,0.966));
+#1053=ORIENTED_EDGE('',*,*,#1054,.F.);
+#1063=STYLED_ITEM('',(#34),#1064);
+#1064=ADVANCED_FACE('',(#1070),#1065,.T.);
+#1065=PLANE('',#1066);
+#1066=AXIS2_PLACEMENT_3D('',#1067,#1068,#1069);
+#1067=CARTESIAN_POINT('',(-1.346,0.178,0.089));
+#1068=DIRECTION('',(0.0,0.0,1.0));
+#1069=DIRECTION('',(0.,1.,0.));
+#1070=FACE_OUTER_BOUND('',#1071,.T.);
+#1071=EDGE_LOOP('',(#1072,#1082,#1092,#1102));
+#1075=CARTESIAN_POINT('',(-1.346,-0.178,0.089));
+#1074=VERTEX_POINT('',#1075);
+#1077=CARTESIAN_POINT('',(-1.346,0.178,0.089));
+#1076=VERTEX_POINT('',#1077);
+#1073=EDGE_CURVE('',#1074,#1076,#1078,.T.);
+#1078=LINE('',#1075,#1080);
+#1080=VECTOR('',#1081,0.3556);
+#1081=DIRECTION('',(0.0,1.0,0.0));
+#1072=ORIENTED_EDGE('',*,*,#1073,.F.);
+#1085=CARTESIAN_POINT('',(-1.339,-0.178,0.089));
+#1084=VERTEX_POINT('',#1085);
+#1083=EDGE_CURVE('',#1084,#1074,#1088,.T.);
+#1088=LINE('',#1085,#1090);
+#1090=VECTOR('',#1091,0.007387424965877);
+#1091=DIRECTION('',(-1.0,0.0,0.0));
+#1082=ORIENTED_EDGE('',*,*,#1083,.F.);
+#1095=CARTESIAN_POINT('',(-1.339,0.178,0.089));
+#1094=VERTEX_POINT('',#1095);
+#1093=EDGE_CURVE('',#1094,#1084,#1098,.T.);
+#1098=LINE('',#1095,#1100);
+#1100=VECTOR('',#1101,0.355599999614933);
+#1101=DIRECTION('',(0.0,-1.0,0.0));
+#1092=ORIENTED_EDGE('',*,*,#1093,.F.);
+#1103=EDGE_CURVE('',#1076,#1094,#1108,.T.);
+#1108=LINE('',#1077,#1110);
+#1110=VECTOR('',#1111,7.38742496587704E-03);
+#1111=DIRECTION('',(1.0,0.0,0.0));
+#1102=ORIENTED_EDGE('',*,*,#1103,.F.);
+#1112=STYLED_ITEM('',(#34),#1113);
+#1113=ADVANCED_FACE('',(#1119),#1114,.T.);
+#1114=PLANE('',#1115);
+#1115=AXIS2_PLACEMENT_3D('',#1116,#1117,#1118);
+#1116=CARTESIAN_POINT('',(-1.339,0.178,0.0));
+#1117=DIRECTION('',(0.0,0.0,-1.0));
+#1118=DIRECTION('',(0.,1.,0.));
+#1119=FACE_OUTER_BOUND('',#1120,.T.);
+#1120=EDGE_LOOP('',(#1121,#1131,#1141,#1151));
+#1124=CARTESIAN_POINT('',(-1.339,-0.178,0.0));
+#1123=VERTEX_POINT('',#1124);
+#1126=CARTESIAN_POINT('',(-1.339,0.178,0.0));
+#1125=VERTEX_POINT('',#1126);
+#1122=EDGE_CURVE('',#1123,#1125,#1127,.T.);
+#1127=LINE('',#1124,#1129);
+#1129=VECTOR('',#1130,0.355599999614933);
+#1130=DIRECTION('',(0.0,1.0,0.0));
+#1121=ORIENTED_EDGE('',*,*,#1122,.F.);
+#1134=CARTESIAN_POINT('',(-1.346,-0.178,0.0));
+#1133=VERTEX_POINT('',#1134);
+#1132=EDGE_CURVE('',#1133,#1123,#1137,.T.);
+#1137=LINE('',#1134,#1139);
+#1139=VECTOR('',#1140,0.007387424965877);
+#1140=DIRECTION('',(1.0,0.0,0.0));
+#1131=ORIENTED_EDGE('',*,*,#1132,.F.);
+#1144=CARTESIAN_POINT('',(-1.346,0.178,0.0));
+#1143=VERTEX_POINT('',#1144);
+#1142=EDGE_CURVE('',#1143,#1133,#1147,.T.);
+#1147=LINE('',#1144,#1149);
+#1149=VECTOR('',#1150,0.3556);
+#1150=DIRECTION('',(0.0,-1.0,0.0));
+#1141=ORIENTED_EDGE('',*,*,#1142,.F.);
+#1152=EDGE_CURVE('',#1125,#1143,#1157,.T.);
+#1157=LINE('',#1126,#1159);
+#1159=VECTOR('',#1160,7.38742496587704E-03);
+#1160=DIRECTION('',(-1.0,0.0,0.0));
+#1151=ORIENTED_EDGE('',*,*,#1152,.F.);
+#1161=STYLED_ITEM('',(#34),#1162);
+#1162=ADVANCED_FACE('',(#1168),#1163,.T.);
+#1163=PLANE('',#1164);
+#1164=AXIS2_PLACEMENT_3D('',#1165,#1166,#1167);
+#1165=CARTESIAN_POINT('',(-1.346,0.178,0.0));
+#1166=DIRECTION('',(-1.0,0.0,0.0));
+#1167=DIRECTION('',(0.,0.,1.));
+#1168=FACE_OUTER_BOUND('',#1169,.T.);
+#1169=EDGE_LOOP('',(#1170,#1180,#1190,#1200));
+#1170=ORIENTED_EDGE('',*,*,#1142,.T.);
+#1181=EDGE_CURVE('',#1074,#1133,#1186,.T.);
+#1186=LINE('',#1075,#1188);
+#1188=VECTOR('',#1189,0.0889);
+#1189=DIRECTION('',(0.0,0.0,-1.0));
+#1180=ORIENTED_EDGE('',*,*,#1181,.F.);
+#1190=ORIENTED_EDGE('',*,*,#1073,.T.);
+#1201=EDGE_CURVE('',#1143,#1076,#1206,.T.);
+#1206=LINE('',#1144,#1208);
+#1208=VECTOR('',#1209,0.0889);
+#1209=DIRECTION('',(0.0,0.0,1.0));
+#1200=ORIENTED_EDGE('',*,*,#1201,.F.);
+#1210=STYLED_ITEM($,(#34),#1211);
+#1211=ADVANCED_FACE($,(#1217),#1212,.T.);
+#1212=CYLINDRICAL_SURFACE($,#1213,0.1778);
+#1213=AXIS2_PLACEMENT_3D($,#1214,#1215,#1216);
+#1214=CARTESIAN_POINT('',(-0.909,-0.178,0.751));
+#1215=DIRECTION('',(0.0,-1.0,0.0));
+#1216=DIRECTION('',(0.,0.,1.));
+#1217=FACE_OUTER_BOUND($,#1218,.T.);
+#1218=EDGE_LOOP($,(#1230,#1240,#1251,#1219));
+#1230=ORIENTED_EDGE('',*,*,#897,.T.);
+#1241=EDGE_CURVE($,#996,#888,#1246,.T.);
+#1246=CIRCLE($,#1247,0.1778);
+#1248=CARTESIAN_POINT('',(-0.909,0.178,0.751));
+#1247=AXIS2_PLACEMENT_3D($,#1248,#1249,#1250);
+#1249=DIRECTION('',(0.0,1.0,0.0));
+#1250=DIRECTION('',(0.793,0.0,0.609));
+#1240=ORIENTED_EDGE('',*,*,#1241,.F.);
+#1251=ORIENTED_EDGE('',*,*,#995,.T.);
+#1220=EDGE_CURVE($,#898,#986,#1225,.T.);
+#1225=CIRCLE($,#1226,0.1778);
+#1227=CARTESIAN_POINT('',(-0.909,-0.178,0.751));
+#1226=AXIS2_PLACEMENT_3D($,#1227,#1228,#1229);
+#1228=DIRECTION('',(0.0,-1.0,0.0));
+#1229=DIRECTION('',(-0.793,0.0,-0.609));
+#1219=ORIENTED_EDGE('',*,*,#1220,.F.);
+#1261=STYLED_ITEM($,(#34),#1262);
+#1262=ADVANCED_FACE($,(#1268),#1263,.F.);
+#1263=CYLINDRICAL_SURFACE($,#1264,0.0889);
+#1264=AXIS2_PLACEMENT_3D($,#1265,#1266,#1267);
+#1265=CARTESIAN_POINT('',(-0.909,0.178,0.751));
+#1266=DIRECTION('',(0.0,-1.0,0.0));
+#1267=DIRECTION('',(0.,0.,-1.));
+#1268=FACE_OUTER_BOUND($,#1269,.T.);
+#1269=EDGE_LOOP($,(#1281,#1291,#1302,#1270));
+#1281=ORIENTED_EDGE('',*,*,#946,.T.);
+#1292=EDGE_CURVE($,#1045,#937,#1297,.T.);
+#1297=CIRCLE($,#1298,0.0889);
+#1298=AXIS2_PLACEMENT_3D($,#1227,#1300,#1301);
+#1300=DIRECTION('',(0.0,1.0,0.0));
+#1301=DIRECTION('',(0.793,0.0,0.609));
+#1291=ORIENTED_EDGE('',*,*,#1292,.F.);
+#1302=ORIENTED_EDGE('',*,*,#1044,.T.);
+#1271=EDGE_CURVE($,#947,#1035,#1276,.T.);
+#1276=CIRCLE($,#1277,0.0889);
+#1277=AXIS2_PLACEMENT_3D($,#1248,#1279,#1280);
+#1279=DIRECTION('',(0.0,-1.0,0.0));
+#1280=DIRECTION('',(-0.793,0.0,-0.609));
+#1270=ORIENTED_EDGE('',*,*,#1271,.F.);
+#1312=STYLED_ITEM($,(#34),#1313);
+#1313=ADVANCED_FACE($,(#1319),#1314,.F.);
+#1314=CYLINDRICAL_SURFACE($,#1315,0.0889);
+#1315=AXIS2_PLACEMENT_3D($,#1316,#1317,#1318);
+#1316=CARTESIAN_POINT('',(-1.339,0.178,0.178));
+#1317=DIRECTION('',(0.0,-1.0,0.0));
+#1318=DIRECTION('',(0.,0.,1.));
+#1319=FACE_OUTER_BOUND($,#1320,.T.);
+#1320=EDGE_LOOP($,(#1332,#1342,#1353,#1321));
+#1332=ORIENTED_EDGE('',*,*,#1093,.T.);
+#1343=EDGE_CURVE($,#976,#1084,#1348,.T.);
+#1348=CIRCLE($,#1349,0.0889);
+#1350=CARTESIAN_POINT('',(-1.339,-0.178,0.178));
+#1349=AXIS2_PLACEMENT_3D($,#1350,#1351,#1352);
+#1351=DIRECTION('',(0.0,1.0,0.0));
+#1352=DIRECTION('',(-0.793,0.0,-0.609));
+#1342=ORIENTED_EDGE('',*,*,#1343,.F.);
+#1353=ORIENTED_EDGE('',*,*,#975,.T.);
+#1322=EDGE_CURVE($,#1094,#978,#1327,.T.);
+#1327=CIRCLE($,#1328,0.0889);
+#1329=CARTESIAN_POINT('',(-1.339,0.178,0.178));
+#1328=AXIS2_PLACEMENT_3D($,#1329,#1330,#1331);
+#1330=DIRECTION('',(0.0,-1.0,0.0));
+#1331=DIRECTION('',(0.793,0.0,0.609));
+#1321=ORIENTED_EDGE('',*,*,#1322,.F.);
+#1363=STYLED_ITEM($,(#34),#1364);
+#1364=ADVANCED_FACE($,(#1370),#1365,.T.);
+#1365=CYLINDRICAL_SURFACE($,#1366,0.1778);
+#1366=AXIS2_PLACEMENT_3D($,#1367,#1368,#1369);
+#1367=CARTESIAN_POINT('',(-1.339,0.178,0.178));
+#1368=DIRECTION('',(0.0,-1.0,0.0));
+#1369=DIRECTION('',(0.,0.,-1.));
+#1370=FACE_OUTER_BOUND($,#1371,.T.);
+#1371=EDGE_LOOP($,(#1383,#1393,#1404,#1372));
+#1383=ORIENTED_EDGE('',*,*,#1122,.T.);
+#1394=EDGE_CURVE($,#1025,#1125,#1399,.T.);
+#1399=CIRCLE($,#1400,0.1778);
+#1400=AXIS2_PLACEMENT_3D($,#1329,#1402,#1403);
+#1402=DIRECTION('',(0.0,1.0,0.0));
+#1403=DIRECTION('',(-0.793,0.0,-0.609));
+#1393=ORIENTED_EDGE('',*,*,#1394,.F.);
+#1404=ORIENTED_EDGE('',*,*,#1024,.T.);
+#1373=EDGE_CURVE($,#1123,#1027,#1378,.T.);
+#1378=CIRCLE($,#1379,0.1778);
+#1379=AXIS2_PLACEMENT_3D($,#1350,#1381,#1382);
+#1381=DIRECTION('',(0.0,-1.0,0.0));
+#1382=DIRECTION('',(0.793,0.0,0.609));
+#1372=ORIENTED_EDGE('',*,*,#1373,.F.);
+#1414=STYLED_ITEM('color',(#34),#1415);
+#1415=ADVANCED_FACE($,(#1421),#1416,.T.);
+#1416=PLANE($,#1417);
+#1417=AXIS2_PLACEMENT_3D($,#1418,#1419,#1420);
+#1418=CARTESIAN_POINT('',(-0.902,0.178,0.84));
+#1419=DIRECTION('',(0.0,1.0,0.0));
+#1420=DIRECTION('',(1.,0.,0.));
+#1421=FACE_OUTER_BOUND($,#1422,.T.);
+#1422=EDGE_LOOP($,(#1425, #1435, #1445, #1508, #1519, #1455, #1466, #1476, #1486, #1496, #1529, #1539));
+#1425=ORIENTED_EDGE('',*,*,#887,.T.);
+#1435=ORIENTED_EDGE('',*,*,#838,.T.);
+#1445=ORIENTED_EDGE('',*,*,#956,.T.);
+#1508=ORIENTED_EDGE('',*,*,#1271,.T.);
+#1519=ORIENTED_EDGE('',*,*,#1034,.T.);
+#1455=ORIENTED_EDGE('',*,*,#1394,.T.);
+#1466=ORIENTED_EDGE('',*,*,#1152,.T.);
+#1476=ORIENTED_EDGE('',*,*,#1201,.T.);
+#1486=ORIENTED_EDGE('',*,*,#1103,.T.);
+#1496=ORIENTED_EDGE('',*,*,#1322,.T.);
+#1529=ORIENTED_EDGE('',*,*,#1005,.T.);
+#1539=ORIENTED_EDGE('',*,*,#1241,.T.);
+#1550=STYLED_ITEM('color',(#34),#1551);
+#1551=ADVANCED_FACE($,(#1557),#1552,.T.);
+#1552=PLANE($,#1553);
+#1553=AXIS2_PLACEMENT_3D($,#1554,#1555,#1556);
+#1554=CARTESIAN_POINT('',(-1.339,-0.178,0.089));
+#1555=DIRECTION('',(0.0,-1.0,0.0));
+#1556=DIRECTION('',(1.,0.,0.));
+#1557=FACE_OUTER_BOUND($,#1558,.T.);
+#1558=EDGE_LOOP($,(#1561, #1571, #1581, #1644, #1655, #1591, #1602, #1612, #1622, #1632, #1665, #1675));
+#1561=ORIENTED_EDGE('',*,*,#936,.T.);
+#1571=ORIENTED_EDGE('',*,*,#858,.T.);
+#1581=ORIENTED_EDGE('',*,*,#907,.T.);
+#1644=ORIENTED_EDGE('',*,*,#1220,.T.);
+#1655=ORIENTED_EDGE('',*,*,#985,.T.);
+#1591=ORIENTED_EDGE('',*,*,#1343,.T.);
+#1602=ORIENTED_EDGE('',*,*,#1083,.T.);
+#1612=ORIENTED_EDGE('',*,*,#1181,.T.);
+#1622=ORIENTED_EDGE('',*,*,#1132,.T.);
+#1632=ORIENTED_EDGE('',*,*,#1373,.T.);
+#1665=ORIENTED_EDGE('',*,*,#1054,.T.);
+#1675=ORIENTED_EDGE('',*,*,#1292,.T.);
+#1686=MANIFOLD_SOLID_BREP($,#1687);
+#1687=CLOSED_SHELL('',(#1689,#1738,#1787,#1836,#1885,#1934,#1983,#2032,#2081,#2132,#2183,#2234,#2285,#2421));
+#1688=STYLED_ITEM('',(#34),#1689);
+#1689=ADVANCED_FACE('',(#1695),#1690,.T.);
+#1690=PLANE('',#1691);
+#1691=AXIS2_PLACEMENT_3D('',#1692,#1693,#1694);
+#1692=CARTESIAN_POINT('',(0.902,0.178,0.84));
+#1693=DIRECTION('',(-1.0,0.0,0.0));
+#1694=DIRECTION('',(0.,0.,1.));
+#1695=FACE_OUTER_BOUND('',#1696,.T.);
+#1696=EDGE_LOOP('',(#1697,#1707,#1717,#1727));
+#1700=CARTESIAN_POINT('',(0.902,-0.178,0.84));
+#1699=VERTEX_POINT('',#1700);
+#1702=CARTESIAN_POINT('',(0.902,0.178,0.84));
+#1701=VERTEX_POINT('',#1702);
+#1698=EDGE_CURVE('',#1699,#1701,#1703,.T.);
+#1703=LINE('',#1700,#1705);
+#1705=VECTOR('',#1706,0.355599994235095);
+#1706=DIRECTION('',(0.0,1.0,0.0));
+#1697=ORIENTED_EDGE('',*,*,#1698,.F.);
+#1710=CARTESIAN_POINT('',(0.902,-0.178,0.929));
+#1709=VERTEX_POINT('',#1710);
+#1708=EDGE_CURVE('',#1709,#1699,#1713,.T.);
+#1713=LINE('',#1710,#1715);
+#1715=VECTOR('',#1716,0.0889);
+#1716=DIRECTION('',(0.0,0.0,-1.0));
+#1707=ORIENTED_EDGE('',*,*,#1708,.F.);
+#1720=CARTESIAN_POINT('',(0.902,0.178,0.929));
+#1719=VERTEX_POINT('',#1720);
+#1718=EDGE_CURVE('',#1719,#1709,#1723,.T.);
+#1723=LINE('',#1720,#1725);
+#1725=VECTOR('',#1726,0.355599994235095);
+#1726=DIRECTION('',(0.0,-1.0,0.0));
+#1717=ORIENTED_EDGE('',*,*,#1718,.F.);
+#1728=EDGE_CURVE('',#1701,#1719,#1733,.T.);
+#1733=LINE('',#1702,#1735);
+#1735=VECTOR('',#1736,0.0889);
+#1736=DIRECTION('',(0.0,0.0,1.0));
+#1727=ORIENTED_EDGE('',*,*,#1728,.F.);
+#1737=STYLED_ITEM('',(#34),#1738);
+#1738=ADVANCED_FACE('',(#1744),#1739,.T.);
+#1739=PLANE('',#1740);
+#1740=AXIS2_PLACEMENT_3D('',#1741,#1742,#1743);
+#1741=CARTESIAN_POINT('',(0.902,0.178,0.929));
+#1742=DIRECTION('',(0.0,0.0,1.0));
+#1743=DIRECTION('',(0.,1.,0.));
+#1744=FACE_OUTER_BOUND('',#1745,.T.);
+#1745=EDGE_LOOP('',(#1746,#1756,#1766,#1776));
+#1746=ORIENTED_EDGE('',*,*,#1718,.T.);
+#1759=CARTESIAN_POINT('',(0.909,-0.178,0.929));
+#1758=VERTEX_POINT('',#1759);
+#1757=EDGE_CURVE('',#1758,#1709,#1762,.T.);
+#1762=LINE('',#1759,#1764);
+#1764=VECTOR('',#1765,7.38742507851249E-03);
+#1765=DIRECTION('',(-1.0,0.0,0.0));
+#1756=ORIENTED_EDGE('',*,*,#1757,.F.);
+#1769=CARTESIAN_POINT('',(0.909,0.178,0.929));
+#1768=VERTEX_POINT('',#1769);
+#1767=EDGE_CURVE('',#1768,#1758,#1772,.T.);
+#1772=LINE('',#1769,#1774);
+#1774=VECTOR('',#1775,0.355599994244281);
+#1775=DIRECTION('',(0.0,-1.0,0.0));
+#1766=ORIENTED_EDGE('',*,*,#1767,.F.);
+#1777=EDGE_CURVE('',#1719,#1768,#1782,.T.);
+#1782=LINE('',#1720,#1784);
+#1784=VECTOR('',#1785,7.38742507851267E-03);
+#1785=DIRECTION('',(1.0,0.0,0.0));
+#1776=ORIENTED_EDGE('',*,*,#1777,.F.);
+#1786=STYLED_ITEM('',(#34),#1787);
+#1787=ADVANCED_FACE('',(#1793),#1788,.T.);
+#1788=PLANE('',#1789);
+#1789=AXIS2_PLACEMENT_3D('',#1790,#1791,#1792);
+#1790=CARTESIAN_POINT('',(0.902,-0.178,0.84));
+#1791=DIRECTION('',(0.0,0.0,-1.0));
+#1792=DIRECTION('',(0.,1.,0.));
+#1793=FACE_OUTER_BOUND('',#1794,.T.);
+#1794=EDGE_LOOP('',(#1795,#1805,#1815,#1825));
+#1795=ORIENTED_EDGE('',*,*,#1698,.T.);
+#1808=CARTESIAN_POINT('',(0.909,0.178,0.84));
+#1807=VERTEX_POINT('',#1808);
+#1806=EDGE_CURVE('',#1807,#1701,#1811,.T.);
+#1811=LINE('',#1808,#1813);
+#1813=VECTOR('',#1814,7.38742507851267E-03);
+#1814=DIRECTION('',(-1.0,0.0,0.0));
+#1805=ORIENTED_EDGE('',*,*,#1806,.F.);
+#1818=CARTESIAN_POINT('',(0.909,-0.178,0.84));
+#1817=VERTEX_POINT('',#1818);
+#1816=EDGE_CURVE('',#1817,#1807,#1821,.T.);
+#1821=LINE('',#1818,#1823);
+#1823=VECTOR('',#1824,0.355599994244281);
+#1824=DIRECTION('',(0.0,1.0,0.0));
+#1815=ORIENTED_EDGE('',*,*,#1816,.F.);
+#1826=EDGE_CURVE('',#1699,#1817,#1831,.T.);
+#1831=LINE('',#1700,#1833);
+#1833=VECTOR('',#1834,7.38742507851249E-03);
+#1834=DIRECTION('',(1.0,0.0,0.0));
+#1825=ORIENTED_EDGE('',*,*,#1826,.F.);
+#1835=STYLED_ITEM('',(#34),#1836);
+#1836=ADVANCED_FACE('',(#1842),#1837,.T.);
+#1837=PLANE('',#1838);
+#1838=AXIS2_PLACEMENT_3D('',#1839,#1840,#1841);
+#1839=CARTESIAN_POINT('',(1.253,-0.178,0.155));
+#1840=DIRECTION('',(0.966,0.0,0.259));
+#1841=DIRECTION('',(0.,0.,1.));
+#1842=FACE_OUTER_BOUND('',#1843,.T.);
+#1843=EDGE_LOOP('',(#1844,#1854,#1864,#1874));
+#1847=CARTESIAN_POINT('',(1.253,0.178,0.155));
+#1846=VERTEX_POINT('',#1847);
+#1849=CARTESIAN_POINT('',(1.253,-0.178,0.155));
+#1848=VERTEX_POINT('',#1849);
+#1845=EDGE_CURVE('',#1846,#1848,#1850,.T.);
+#1850=LINE('',#1847,#1852);
+#1852=VECTOR('',#1853,0.355599996542456);
+#1853=DIRECTION('',(0.0,-1.0,0.0));
+#1844=ORIENTED_EDGE('',*,*,#1845,.F.);
+#1857=CARTESIAN_POINT('',(1.081,0.178,0.797));
+#1856=VERTEX_POINT('',#1857);
+#1855=EDGE_CURVE('',#1856,#1846,#1860,.T.);
+#1860=LINE('',#1857,#1862);
+#1862=VECTOR('',#1863,0.664999311324857);
+#1863=DIRECTION('',(0.259,0.0,-0.966));
+#1854=ORIENTED_EDGE('',*,*,#1855,.F.);
+#1867=CARTESIAN_POINT('',(1.081,-0.178,0.797));
+#1866=VERTEX_POINT('',#1867);
+#1865=EDGE_CURVE('',#1866,#1856,#1870,.T.);
+#1870=LINE('',#1867,#1872);
+#1872=VECTOR('',#1873,0.355599994660601);
+#1873=DIRECTION('',(0.0,1.0,0.0));
+#1864=ORIENTED_EDGE('',*,*,#1865,.F.);
+#1875=EDGE_CURVE('',#1848,#1866,#1880,.T.);
+#1880=LINE('',#1849,#1882);
+#1882=VECTOR('',#1883,0.664999311324858);
+#1883=DIRECTION('',(-0.259,0.0,0.966));
+#1874=ORIENTED_EDGE('',*,*,#1875,.F.);
+#1884=STYLED_ITEM('',(#34),#1885);
+#1885=ADVANCED_FACE('',(#1891),#1886,.T.);
+#1886=PLANE('',#1887);
+#1887=AXIS2_PLACEMENT_3D('',#1888,#1889,#1890);
+#1888=CARTESIAN_POINT('',(1.167,0.178,0.132));
+#1889=DIRECTION('',(-0.966,0.0,-0.259));
+#1890=DIRECTION('',(0.,0.,1.));
+#1891=FACE_OUTER_BOUND('',#1892,.T.);
+#1892=EDGE_LOOP('',(#1893,#1903,#1913,#1923));
+#1896=CARTESIAN_POINT('',(1.167,-0.178,0.132));
+#1895=VERTEX_POINT('',#1896);
+#1898=CARTESIAN_POINT('',(1.167,0.178,0.132));
+#1897=VERTEX_POINT('',#1898);
+#1894=EDGE_CURVE('',#1895,#1897,#1899,.T.);
+#1899=LINE('',#1896,#1901);
+#1901=VECTOR('',#1902,0.355599995227448);
+#1902=DIRECTION('',(0.0,1.0,0.0));
+#1893=ORIENTED_EDGE('',*,*,#1894,.F.);
+#1906=CARTESIAN_POINT('',(0.995,-0.178,0.774));
+#1905=VERTEX_POINT('',#1906);
+#1904=EDGE_CURVE('',#1905,#1895,#1909,.T.);
+#1909=LINE('',#1906,#1911);
+#1911=VECTOR('',#1912,0.664999311469429);
+#1912=DIRECTION('',(0.259,0.0,-0.966));
+#1903=ORIENTED_EDGE('',*,*,#1904,.F.);
+#1916=CARTESIAN_POINT('',(0.995,0.178,0.774));
+#1915=VERTEX_POINT('',#1916);
+#1914=EDGE_CURVE('',#1915,#1905,#1919,.T.);
+#1919=LINE('',#1916,#1921);
+#1921=VECTOR('',#1922,0.355599994389966);
+#1922=DIRECTION('',(0.0,-1.0,0.0));
+#1913=ORIENTED_EDGE('',*,*,#1914,.F.);
+#1924=EDGE_CURVE('',#1897,#1915,#1929,.T.);
+#1929=LINE('',#1898,#1931);
+#1931=VECTOR('',#1932,0.664999311469429);
+#1932=DIRECTION('',(-0.259,0.0,0.966));
+#1923=ORIENTED_EDGE('',*,*,#1924,.F.);
+#1933=STYLED_ITEM('',(#34),#1934);
+#1934=ADVANCED_FACE('',(#1940),#1935,.T.);
+#1935=PLANE('',#1936);
+#1936=AXIS2_PLACEMENT_3D('',#1937,#1938,#1939);
+#1937=CARTESIAN_POINT('',(1.346,-0.178,0.089));
+#1938=DIRECTION('',(0.0,0.0,1.0));
+#1939=DIRECTION('',(0.,1.,0.));
+#1940=FACE_OUTER_BOUND('',#1941,.T.);
+#1941=EDGE_LOOP('',(#1942,#1952,#1962,#1972));
+#1945=CARTESIAN_POINT('',(1.346,0.178,0.089));
+#1944=VERTEX_POINT('',#1945);
+#1947=CARTESIAN_POINT('',(1.346,-0.178,0.089));
+#1946=VERTEX_POINT('',#1947);
+#1943=EDGE_CURVE('',#1944,#1946,#1948,.T.);
+#1948=LINE('',#1945,#1950);
+#1950=VECTOR('',#1951,0.3556);
+#1951=DIRECTION('',(0.0,-1.0,0.0));
+#1942=ORIENTED_EDGE('',*,*,#1943,.F.);
+#1955=CARTESIAN_POINT('',(1.339,0.178,0.089));
+#1954=VERTEX_POINT('',#1955);
+#1953=EDGE_CURVE('',#1954,#1944,#1958,.T.);
+#1958=LINE('',#1955,#1960);
+#1960=VECTOR('',#1961,7.38742496587698E-03);
+#1961=DIRECTION('',(1.0,0.0,0.0));
+#1952=ORIENTED_EDGE('',*,*,#1953,.F.);
+#1965=CARTESIAN_POINT('',(1.339,-0.178,0.089));
+#1964=VERTEX_POINT('',#1965);
+#1963=EDGE_CURVE('',#1964,#1954,#1968,.T.);
+#1968=LINE('',#1965,#1970);
+#1970=VECTOR('',#1971,0.355599999614933);
+#1971=DIRECTION('',(0.0,1.0,0.0));
+#1962=ORIENTED_EDGE('',*,*,#1963,.F.);
+#1973=EDGE_CURVE('',#1946,#1964,#1978,.T.);
+#1978=LINE('',#1947,#1980);
+#1980=VECTOR('',#1981,7.38742496587718E-03);
+#1981=DIRECTION('',(-1.0,0.0,0.0));
+#1972=ORIENTED_EDGE('',*,*,#1973,.F.);
+#1982=STYLED_ITEM('',(#34),#1983);
+#1983=ADVANCED_FACE('',(#1989),#1984,.T.);
+#1984=PLANE('',#1985);
+#1985=AXIS2_PLACEMENT_3D('',#1986,#1987,#1988);
+#1986=CARTESIAN_POINT('',(1.339,-0.178,0.0));
+#1987=DIRECTION('',(0.0,0.0,-1.0));
+#1988=DIRECTION('',(0.,1.,0.));
+#1989=FACE_OUTER_BOUND('',#1990,.T.);
+#1990=EDGE_LOOP('',(#1991,#2001,#2011,#2021));
+#1994=CARTESIAN_POINT('',(1.339,0.178,0.0));
+#1993=VERTEX_POINT('',#1994);
+#1996=CARTESIAN_POINT('',(1.339,-0.178,0.0));
+#1995=VERTEX_POINT('',#1996);
+#1992=EDGE_CURVE('',#1993,#1995,#1997,.T.);
+#1997=LINE('',#1994,#1999);
+#1999=VECTOR('',#2000,0.355599999614933);
+#2000=DIRECTION('',(0.0,-1.0,0.0));
+#1991=ORIENTED_EDGE('',*,*,#1992,.F.);
+#2004=CARTESIAN_POINT('',(1.346,0.178,0.0));
+#2003=VERTEX_POINT('',#2004);
+#2002=EDGE_CURVE('',#2003,#1993,#2007,.T.);
+#2007=LINE('',#2004,#2009);
+#2009=VECTOR('',#2010,7.38742496587698E-03);
+#2010=DIRECTION('',(-1.0,0.0,0.0));
+#2001=ORIENTED_EDGE('',*,*,#2002,.F.);
+#2014=CARTESIAN_POINT('',(1.346,-0.178,0.0));
+#2013=VERTEX_POINT('',#2014);
+#2012=EDGE_CURVE('',#2013,#2003,#2017,.T.);
+#2017=LINE('',#2014,#2019);
+#2019=VECTOR('',#2020,0.3556);
+#2020=DIRECTION('',(0.0,1.0,0.0));
+#2011=ORIENTED_EDGE('',*,*,#2012,.F.);
+#2022=EDGE_CURVE('',#1995,#2013,#2027,.T.);
+#2027=LINE('',#1996,#2029);
+#2029=VECTOR('',#2030,7.38742496587718E-03);
+#2030=DIRECTION('',(1.0,0.0,0.0));
+#2021=ORIENTED_EDGE('',*,*,#2022,.F.);
+#2031=STYLED_ITEM('',(#34),#2032);
+#2032=ADVANCED_FACE('',(#2038),#2033,.T.);
+#2033=PLANE('',#2034);
+#2034=AXIS2_PLACEMENT_3D('',#2035,#2036,#2037);
+#2035=CARTESIAN_POINT('',(1.346,-0.178,0.0));
+#2036=DIRECTION('',(1.0,0.0,0.0));
+#2037=DIRECTION('',(0.,0.,1.));
+#2038=FACE_OUTER_BOUND('',#2039,.T.);
+#2039=EDGE_LOOP('',(#2040,#2050,#2060,#2070));
+#2040=ORIENTED_EDGE('',*,*,#2012,.T.);
+#2051=EDGE_CURVE('',#1944,#2003,#2056,.T.);
+#2056=LINE('',#1945,#2058);
+#2058=VECTOR('',#2059,0.0889);
+#2059=DIRECTION('',(0.0,0.0,-1.0));
+#2050=ORIENTED_EDGE('',*,*,#2051,.F.);
+#2060=ORIENTED_EDGE('',*,*,#1943,.T.);
+#2071=EDGE_CURVE('',#2013,#1946,#2076,.T.);
+#2076=LINE('',#2014,#2078);
+#2078=VECTOR('',#2079,0.0889);
+#2079=DIRECTION('',(0.0,0.0,1.0));
+#2070=ORIENTED_EDGE('',*,*,#2071,.F.);
+#2080=STYLED_ITEM($,(#34),#2081);
+#2081=ADVANCED_FACE($,(#2087),#2082,.T.);
+#2082=CYLINDRICAL_SURFACE($,#2083,0.1778);
+#2083=AXIS2_PLACEMENT_3D($,#2084,#2085,#2086);
+#2084=CARTESIAN_POINT('',(0.909,0.178,0.751));
+#2085=DIRECTION('',(0.0,1.0,0.0));
+#2086=DIRECTION('',(0.,0.,1.));
+#2087=FACE_OUTER_BOUND($,#2088,.T.);
+#2088=EDGE_LOOP($,(#2100,#2110,#2121,#2089));
+#2100=ORIENTED_EDGE('',*,*,#1767,.T.);
+#2111=EDGE_CURVE($,#1866,#1758,#2116,.T.);
+#2116=CIRCLE($,#2117,0.1778);
+#2118=CARTESIAN_POINT('',(0.909,-0.178,0.751));
+#2117=AXIS2_PLACEMENT_3D($,#2118,#2119,#2120);
+#2119=DIRECTION('',(0.0,-1.0,0.0));
+#2120=DIRECTION('',(-0.793,0.0,0.609));
+#2110=ORIENTED_EDGE('',*,*,#2111,.F.);
+#2121=ORIENTED_EDGE('',*,*,#1865,.T.);
+#2090=EDGE_CURVE($,#1768,#1856,#2095,.T.);
+#2095=CIRCLE($,#2096,0.1778);
+#2097=CARTESIAN_POINT('',(0.909,0.178,0.751));
+#2096=AXIS2_PLACEMENT_3D($,#2097,#2098,#2099);
+#2098=DIRECTION('',(0.0,1.0,0.0));
+#2099=DIRECTION('',(0.793,0.0,-0.609));
+#2089=ORIENTED_EDGE('',*,*,#2090,.F.);
+#2131=STYLED_ITEM($,(#34),#2132);
+#2132=ADVANCED_FACE($,(#2138),#2133,.F.);
+#2133=CYLINDRICAL_SURFACE($,#2134,0.0889);
+#2134=AXIS2_PLACEMENT_3D($,#2135,#2136,#2137);
+#2135=CARTESIAN_POINT('',(0.909,-0.178,0.751));
+#2136=DIRECTION('',(0.0,1.0,0.0));
+#2137=DIRECTION('',(0.,0.,-1.));
+#2138=FACE_OUTER_BOUND($,#2139,.T.);
+#2139=EDGE_LOOP($,(#2151,#2161,#2172,#2140));
+#2151=ORIENTED_EDGE('',*,*,#1816,.T.);
+#2162=EDGE_CURVE($,#1915,#1807,#2167,.T.);
+#2167=CIRCLE($,#2168,0.0889);
+#2168=AXIS2_PLACEMENT_3D($,#2097,#2170,#2171);
+#2170=DIRECTION('',(0.0,-1.0,0.0));
+#2171=DIRECTION('',(-0.793,0.0,0.609));
+#2161=ORIENTED_EDGE('',*,*,#2162,.F.);
+#2172=ORIENTED_EDGE('',*,*,#1914,.T.);
+#2141=EDGE_CURVE($,#1817,#1905,#2146,.T.);
+#2146=CIRCLE($,#2147,0.0889);
+#2147=AXIS2_PLACEMENT_3D($,#2118,#2149,#2150);
+#2149=DIRECTION('',(0.0,1.0,0.0));
+#2150=DIRECTION('',(0.793,0.0,-0.609));
+#2140=ORIENTED_EDGE('',*,*,#2141,.F.);
+#2182=STYLED_ITEM($,(#34),#2183);
+#2183=ADVANCED_FACE($,(#2189),#2184,.F.);
+#2184=CYLINDRICAL_SURFACE($,#2185,0.0889);
+#2185=AXIS2_PLACEMENT_3D($,#2186,#2187,#2188);
+#2186=CARTESIAN_POINT('',(1.339,-0.178,0.178));
+#2187=DIRECTION('',(0.0,1.0,0.0));
+#2188=DIRECTION('',(0.,0.,1.));
+#2189=FACE_OUTER_BOUND($,#2190,.T.);
+#2190=EDGE_LOOP($,(#2202,#2212,#2223,#2191));
+#2202=ORIENTED_EDGE('',*,*,#1963,.T.);
+#2213=EDGE_CURVE($,#1846,#1954,#2218,.T.);
+#2218=CIRCLE($,#2219,0.0889);
+#2220=CARTESIAN_POINT('',(1.339,0.178,0.178));
+#2219=AXIS2_PLACEMENT_3D($,#2220,#2221,#2222);
+#2221=DIRECTION('',(0.0,-1.0,0.0));
+#2222=DIRECTION('',(0.793,0.0,-0.609));
+#2212=ORIENTED_EDGE('',*,*,#2213,.F.);
+#2223=ORIENTED_EDGE('',*,*,#1845,.T.);
+#2192=EDGE_CURVE($,#1964,#1848,#2197,.T.);
+#2197=CIRCLE($,#2198,0.0889);
+#2199=CARTESIAN_POINT('',(1.339,-0.178,0.178));
+#2198=AXIS2_PLACEMENT_3D($,#2199,#2200,#2201);
+#2200=DIRECTION('',(0.0,1.0,0.0));
+#2201=DIRECTION('',(-0.793,0.0,0.609));
+#2191=ORIENTED_EDGE('',*,*,#2192,.F.);
+#2233=STYLED_ITEM($,(#34),#2234);
+#2234=ADVANCED_FACE($,(#2240),#2235,.T.);
+#2235=CYLINDRICAL_SURFACE($,#2236,0.1778);
+#2236=AXIS2_PLACEMENT_3D($,#2237,#2238,#2239);
+#2237=CARTESIAN_POINT('',(1.339,-0.178,0.178));
+#2238=DIRECTION('',(0.0,1.0,0.0));
+#2239=DIRECTION('',(0.,0.,-1.));
+#2240=FACE_OUTER_BOUND($,#2241,.T.);
+#2241=EDGE_LOOP($,(#2253,#2263,#2274,#2242));
+#2253=ORIENTED_EDGE('',*,*,#1992,.T.);
+#2264=EDGE_CURVE($,#1895,#1995,#2269,.T.);
+#2269=CIRCLE($,#2270,0.1778);
+#2270=AXIS2_PLACEMENT_3D($,#2199,#2272,#2273);
+#2272=DIRECTION('',(0.0,-1.0,0.0));
+#2273=DIRECTION('',(0.793,0.0,-0.609));
+#2263=ORIENTED_EDGE('',*,*,#2264,.F.);
+#2274=ORIENTED_EDGE('',*,*,#1894,.T.);
+#2243=EDGE_CURVE($,#1993,#1897,#2248,.T.);
+#2248=CIRCLE($,#2249,0.1778);
+#2249=AXIS2_PLACEMENT_3D($,#2220,#2251,#2252);
+#2251=DIRECTION('',(0.0,1.0,0.0));
+#2252=DIRECTION('',(-0.793,0.0,0.609));
+#2242=ORIENTED_EDGE('',*,*,#2243,.F.);
+#2284=STYLED_ITEM('color',(#34),#2285);
+#2285=ADVANCED_FACE($,(#2291),#2286,.T.);
+#2286=PLANE($,#2287);
+#2287=AXIS2_PLACEMENT_3D($,#2288,#2289,#2290);
+#2288=CARTESIAN_POINT('',(0.902,-0.178,0.84));
+#2289=DIRECTION('',(0.0,-1.0,0.0));
+#2290=DIRECTION('',(1.,0.,0.));
+#2291=FACE_OUTER_BOUND($,#2292,.T.);
+#2292=EDGE_LOOP($,(#2295, #2305, #2315, #2378, #2389, #2325, #2336, #2346, #2356, #2366, #2399, #2409));
+#2295=ORIENTED_EDGE('',*,*,#1757,.T.);
+#2305=ORIENTED_EDGE('',*,*,#1708,.T.);
+#2315=ORIENTED_EDGE('',*,*,#1826,.T.);
+#2378=ORIENTED_EDGE('',*,*,#2141,.T.);
+#2389=ORIENTED_EDGE('',*,*,#1904,.T.);
+#2325=ORIENTED_EDGE('',*,*,#2264,.T.);
+#2336=ORIENTED_EDGE('',*,*,#2022,.T.);
+#2346=ORIENTED_EDGE('',*,*,#2071,.T.);
+#2356=ORIENTED_EDGE('',*,*,#1973,.T.);
+#2366=ORIENTED_EDGE('',*,*,#2192,.T.);
+#2399=ORIENTED_EDGE('',*,*,#1875,.T.);
+#2409=ORIENTED_EDGE('',*,*,#2111,.T.);
+#2420=STYLED_ITEM('color',(#34),#2421);
+#2421=ADVANCED_FACE($,(#2427),#2422,.T.);
+#2422=PLANE($,#2423);
+#2423=AXIS2_PLACEMENT_3D($,#2424,#2425,#2426);
+#2424=CARTESIAN_POINT('',(1.339,0.178,0.089));
+#2425=DIRECTION('',(0.0,1.0,0.0));
+#2426=DIRECTION('',(1.,0.,0.));
+#2427=FACE_OUTER_BOUND($,#2428,.T.);
+#2428=EDGE_LOOP($,(#2431, #2441, #2451, #2514, #2525, #2461, #2472, #2482, #2492, #2502, #2535, #2545));
+#2431=ORIENTED_EDGE('',*,*,#1806,.T.);
+#2441=ORIENTED_EDGE('',*,*,#1728,.T.);
+#2451=ORIENTED_EDGE('',*,*,#1777,.T.);
+#2514=ORIENTED_EDGE('',*,*,#2090,.T.);
+#2525=ORIENTED_EDGE('',*,*,#1855,.T.);
+#2461=ORIENTED_EDGE('',*,*,#2213,.T.);
+#2472=ORIENTED_EDGE('',*,*,#1953,.T.);
+#2482=ORIENTED_EDGE('',*,*,#2051,.T.);
+#2492=ORIENTED_EDGE('',*,*,#2002,.T.);
+#2502=ORIENTED_EDGE('',*,*,#2243,.T.);
+#2535=ORIENTED_EDGE('',*,*,#1924,.T.);
+#2545=ORIENTED_EDGE('',*,*,#2162,.T.);
+ENDSEC;
+END-ISO-10303-21;
diff --git a/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/UL_Form.dfm b/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/UL_Form.dfm
new file mode 100644
index 0000000..2d57e92
--- /dev/null
+++ b/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/UL_Form.dfm
@@ -0,0 +1,49 @@
+object UL_Form: TUL_Form
+ Left = 0
+ Top = 0
+ BorderStyle = bsDialog
+ Caption = 'UL Import'
+ ClientHeight = 80
+ ClientWidth = 473
+ Color = clBtnFace
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ OldCreateOrder = False
+ Position = poScreenCenter
+ PixelsPerInch = 96
+ TextHeight = 13
+ object TxtFile: TEdit
+ Left = 80
+ Top = 8
+ Width = 384
+ Height = 21
+ TabOrder = 0
+ end
+ object BtnFile: TButton
+ Left = 8
+ Top = 8
+ Width = 64
+ Height = 24
+ Caption = 'File...'
+ TabOrder = 1
+ OnClick = BtnFileClick
+ end
+ object BtnImport: TButton
+ Left = 188
+ Top = 40
+ Width = 96
+ Height = 32
+ Caption = 'Start Import'
+ TabOrder = 2
+ OnClick = BtnImportClick
+ end
+ object OpenDlg: TOpenDialog
+ DefaultExt = '.txt'
+ Filter = 'UL Altium Output (*.txt)|*.txt'
+ Left = 8
+ Top = 40
+ end
+end
diff --git a/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/UL_Form.pas b/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/UL_Form.pas
new file mode 100644
index 0000000..a79f13c
--- /dev/null
+++ b/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/UL_Form.pas
@@ -0,0 +1,14 @@
+
+procedure TUL_Form.BtnFileClick(Sender: TObject);
+begin
+ If OpenDlg.Execute Then Begin
+ TxtFile.Text := OpenDlg.FileName;
+ End;
+end;
+
+procedure TUL_Form.BtnImportClick(Sender: TObject);
+begin
+ ImportAscIIData(TxtFile.Text);
+ Close;
+end;
+
diff --git a/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/UL_Import.pas b/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/UL_Import.pas
new file mode 100644
index 0000000..fd9b912
--- /dev/null
+++ b/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/UL_Import.pas
@@ -0,0 +1,1081 @@
+
+const ForceSchFontID = 1;
+
+var
+ BrokenSCHFontManager : Integer; // for Alitum 19's broken SCH FontManager
+
+{==============================================================================}
+{==== String Utility Routines ===============================================}
+{==============================================================================}
+
+Function CheckLeft(BaseStr: String, Srch: String): Boolean;
+Var
+ i : Integer;
+Begin
+ Result := False;
+ i := Length(Srch);
+ If Length(BaseStr) < i Then Exit;
+ If Copy(BaseStr, 1, i) = Srch Then Result := True;
+End;
+
+Function LeftOf(BaseStr: String, Srch: String): String;
+Var
+ i : Integer;
+Begin
+ i := Pos(Srch, BaseStr);
+ If i > 0 Then Begin
+ Result := Copy(BaseStr, 1, i - 1);
+ End Else Begin
+ Result := BaseStr;
+ End;
+End;
+
+Function LeftOfLast(BaseStr: String, Srch: String): String;
+Var
+ i, ls : Integer;
+ lft, rgt : String;
+Begin
+ rgt := BaseStr;
+ i := Pos(Srch, rgt);
+ lft := '';
+ If i > 0 Then Begin
+ ls := Length(Srch);
+ While i > 0 Do Begin
+ lft := lft + Copy(rgt, 1, i - 1);
+ rgt := Copy(rgt, i + ls, Length(rgt) - i + ls);
+ i := Pos(Srch, rgt);
+ If i > 0 then Begin
+ lft := lft + Srch;
+ End;
+ End;
+ Result := lft;
+ End Else Begin
+ Result := BaseStr;
+ End;
+End;
+
+Function RightOf(BaseStr: String, Srch: String): String;
+Var
+ i, ls : Integer;
+Begin
+ i := Pos(Srch, BaseStr);
+ If i > 0 Then Begin
+ ls := Length(Srch);
+ Result := Copy(BaseStr, i + ls, Length(BaseStr) - i + ls);
+ End Else Begin
+ Result := '';
+ End;
+End;
+
+Procedure StrChop(BaseStr: String, Srch: String, Out LeftSide: String, Out RightSide: String);
+Var
+ i, ls : Integer;
+Begin
+ i := Pos(Srch, BaseStr);
+ If i <= 0 Then Begin
+ LeftSide := BaseStr;
+ RightSide := '';
+ End Else Begin
+ ls := Length(Srch);
+ LeftSide := Copy(BaseStr, 1, i - 1);
+ RightSide := Copy(BaseStr, i + ls, Length(BaseStr) - i + ls);
+ End;
+End;
+
+Function GetBetween(BaseStr: String, StartStr: String, EndStr: String): String;
+Begin
+ Result := Leftof(RightOf(BaseStr, StartStr), EndStr);
+End;
+
+Function GetFileLocation(FilePath: String): String;
+Var
+ i : Integer;
+ filename : String;
+Begin
+ filename := RightOf(FilePath, '\');
+ i := Pos('\', filename);
+ While i > 0 Do Begin
+ filename := RightOf(filename, '\');
+ i := Pos('\', filename);
+ End;
+ Result := LeftOf(Filepath, filename);
+End;
+
+{==============================================================================}
+{==== Footprint Routines ====================================================}
+{==============================================================================}
+
+Function LayerFromString(LName: String): TLayer;
+Begin
+ Case LName Of
+ 'NoLayer': Result := eNoLayer;
+ 'TopLayer': Result := eTopLayer;
+ 'MidLayer1': Result := eMidLayer1;
+ 'MidLayer2': Result := eMidLayer2;
+ 'MidLayer3': Result := eMidLayer3;
+ 'MidLayer4': Result := eMidLayer4;
+ 'MidLayer5': Result := eMidLayer5;
+ 'MidLayer6': Result := eMidLayer6;
+ 'MidLayer7': Result := eMidLayer7;
+ 'MidLayer8': Result := eMidLayer8;
+ 'MidLayer9': Result := eMidLayer9;
+ 'MidLayer10': Result := eMidLayer10;
+ 'MidLayer11': Result := eMidLayer11;
+ 'MidLayer12': Result := eMidLayer12;
+ 'MidLayer13': Result := eMidLayer13;
+ 'MidLayer14': Result := eMidLayer14;
+ 'MidLayer15': Result := eMidLayer15;
+ 'MidLayer16': Result := eMidLayer16;
+ 'MidLayer17': Result := eMidLayer17;
+ 'MidLayer18': Result := eMidLayer18;
+ 'MidLayer19': Result := eMidLayer19;
+ 'MidLayer20': Result := eMidLayer20;
+ 'MidLayer21': Result := eMidLayer21;
+ 'MidLayer22': Result := eMidLayer22;
+ 'MidLayer23': Result := eMidLayer23;
+ 'MidLayer24': Result := eMidLayer24;
+ 'MidLayer25': Result := eMidLayer25;
+ 'MidLayer26': Result := eMidLayer26;
+ 'MidLayer27': Result := eMidLayer27;
+ 'MidLayer28': Result := eMidLayer28;
+ 'MidLayer29': Result := eMidLayer29;
+ 'MidLayer30': Result := eMidLayer30;
+ 'BottomLayer': Result := eBottomLayer;
+ 'TopOverlay': Result := eTopOverlay;
+ 'BottomOverlay': Result := eBottomOverlay;
+ 'TopPaste': Result := eTopPaste;
+ 'BottomPaste': Result := eBottomPaste;
+ 'TopSolder': Result := eTopSolder;
+ 'BottomSolder': Result := eBottomSolder;
+ 'InternalPlane1': Result := eInternalPlane1;
+ 'InternalPlane2': Result := eInternalPlane2;
+ 'InternalPlane3': Result := eInternalPlane3;
+ 'InternalPlane4': Result := eInternalPlane4;
+ 'InternalPlane5': Result := eInternalPlane5;
+ 'InternalPlane6': Result := eInternalPlane6;
+ 'InternalPlane7': Result := eInternalPlane7;
+ 'InternalPlane8': Result := eInternalPlane8;
+ 'InternalPlane9': Result := eInternalPlane9;
+ 'InternalPlane10': Result := eInternalPlane10;
+ 'InternalPlane11': Result := eInternalPlane11;
+ 'InternalPlane12': Result := eInternalPlane12;
+ 'InternalPlane13': Result := eInternalPlane13;
+ 'InternalPlane14': Result := eInternalPlane14;
+ 'InternalPlane15': Result := eInternalPlane15;
+ 'InternalPlane16': Result := eInternalPlane16;
+ 'DrillGuide': Result := eDrillGuide;
+ 'KeepOutLayer': Result := eKeepOutLayer;
+ 'Mechanical1': Result := eMechanical1;
+ 'Mechanical2': Result := eMechanical2;
+ 'Mechanical3': Result := eMechanical3;
+ 'Mechanical4': Result := eMechanical4;
+ 'Mechanical5': Result := eMechanical5;
+ 'Mechanical6': Result := eMechanical6;
+ 'Mechanical7': Result := eMechanical7;
+ 'Mechanical8': Result := eMechanical8;
+ 'Mechanical9': Result := eMechanical9;
+ 'Mechanical10': Result := eMechanical10;
+ 'Mechanical11': Result := eMechanical11;
+ 'Mechanical12': Result := eMechanical12;
+ 'Mechanical13': Result := eMechanical13;
+ 'Mechanical14': Result := eMechanical14;
+ 'Mechanical15': Result := eMechanical15;
+ 'Mechanical16': Result := eMechanical16;
+ 'DrillDrawing': Result := eDrillDrawing;
+ 'MultiLayer': Result := eMultiLayer;
+ 'ConnectLayer': Result := eConnectLayer;
+ 'BackGroundLayer': Result := eBackGroundLayer;
+ 'DRCErrorLayer': Result := eDRCErrorLayer;
+ 'HighlightLayer': Result := eHighlightLayer;
+ 'GridColor1': Result := eGridColor1;
+ 'GridColor10': Result := eGridColor10;
+ 'PadHoleLayer': Result := ePadHoleLayer;
+ 'ViaHoleLayer': Result := eViaHoleLayer;
+ Else
+ Result := eNoLayer;
+ End;
+End;
+
+
+Procedure FP_AddStep(fp: IPCB_LibComponent, Data: String, InFileName: String);
+Var
+ STEPFileName : String;
+ STEPmodel : IPCB_ComponentBody;
+ Model : IPCB_Model;
+Begin
+ STEPFileName := GetFileLocation(InFileName) + '\' + GetBetween(Data, '(Name ', ')');
+ STEPmodel := PcbServer.PCBObjectFactory(eComponentBodyObject,eNoDimension,eCreate_Default);
+ Model := STEPmodel.ModelFactory_FromFilename(STEPFileName, false);
+ STEPmodel.SetState_FromModel;
+ // Model.SetState(0,0,0,0);
+ STEPmodel.Model := Model;
+ fp.AddPCBObject(STEPmodel);
+ //PCBServer.SendMessageToRobots(fp.I_ObjectAddress, c_Broadcast, PCBM_BoardRegisteration, arc.I_ObjectAddress);
+End;
+
+Procedure FP_AddLine(fp: IPCB_Component, Data: String);
+Var
+ lin : IPCB_track;
+ s1, s2 : String;
+Begin
+ lin := PCBServer.PCBObjectFactory(eTrackObject, eNoDimension, eCreate_Default);
+ If lin = Nil Then Exit;
+ StrChop(GetBetween(Data, '(Start ', ')'), ',', s1, s2);
+ lin.X1 := MilsToCoord(Evaluate(s1));
+ lin.Y1 := MilsToCoord(Evaluate(s2));
+ StrChop(GetBetween(Data, '(End ', ')'), ',', s1, s2);
+ lin.X2 := MilsToCoord(Evaluate(s1));
+ lin.Y2 := MilsToCoord(Evaluate(s2));
+ lin.Layer := LayerFromString(GetBetween(Data, '(Layer ', ')'));
+ lin.Width := MilsToCoord(Evaluate(GetBetween(Data, '(Width ', ')')));
+ fp.AddPCBObject(lin);
+ PCBServer.SendMessageToRobots(fp.I_ObjectAddress, c_Broadcast, PCBM_BoardRegisteration, lin.I_ObjectAddress);
+End;
+
+Procedure FP_AddArc(fp: IPCB_Component, Data: String);
+Var
+ arc : IPCB_Arc;
+ s1, s2 : String;
+Begin
+ arc := PCBServer.PCBObjectFactory(eArcObject, eNoDimension, eCreate_Default);
+ If arc = Nil Then Exit;
+ StrChop(GetBetween(Data, '(Location ', ')'), ',', s1, s2);
+ arc.XCenter := MilsToCoord(Evaluate(s1));
+ arc.YCenter := MilsToCoord(Evaluate(s2));
+ arc.Radius := MilsToCoord(Evaluate(GetBetween(Data, '(Radius ', ')')));
+ arc.LineWidth := MilsToCoord(Evaluate(GetBetween(Data, '(Width ', ')')));
+ arc.StartAngle := Evaluate(GetBetween(Data, '(StartAngle ', ')'));
+ arc.EndAngle := Evaluate(GetBetween(Data, '(EndAngle ', ')'));
+ arc.Layer := LayerFromString(GetBetween(Data, '(Layer ', ')'));;
+ fp.AddPCBObject(arc);
+ PCBServer.SendMessageToRobots(fp.I_ObjectAddress, c_Broadcast, PCBM_BoardRegisteration, arc.I_ObjectAddress);
+End;
+
+Procedure FP_AddPoly(fp: IPCB_Component, Data: String, InFile: TextFile);
+Var
+ pol : IPCB_Region;
+ cont : IPCB_Contour;
+ pc: Integer;
+ s1, s2, inp, tag : String;
+Begin
+ pol := PCBServer.PCBObjectFactory(eRegionObject, eNoDimension,eCreate_Default);
+ If pol = Nil Then Exit;
+ cont := pol.MainContour.Replicate();
+ pol.Layer := LayerFromString(GetBetween(Data, '(Layer ', ')'));
+ cont.Count := Evaluate(GetBetween(Data, '(PointCount ', ')'));
+ pc := 0;
+ While Not EOF(InFile) Do Begin
+ ReadLn(InFile, inp);
+ If VarIsNull(inp) Then Continue;
+ inp := Trim(inp);
+ StrChop(inp, ' ', tag, inp);
+ tag := Trim(tag);
+ Case tag Of
+ 'Point': Begin
+ pc := pc + 1;
+ StrChop(GetBetween(inp, '(', ')'), ',', s1, s2);
+ cont.X[pc] := MilsToCoord(Evaluate(s1));
+ cont.Y[pc] := MilsToCoord(Evaluate(s2));
+ End;
+ 'EndPolygon': Break;
+ Else Begin
+ ShowMessage('Keyword Error: ' + tag);
+ End;
+ End;
+ End;
+ pol.SetOutlineContour(cont);
+ If GetBetween(Data, '(Type ', ')') = 'KeepOut' Then Begin
+ pol.IsKeepout := True;
+ End;
+ fp.AddPCBObject(pol);
+ PCBServer.SendMessageToRobots(fp.I_ObjectAddress, c_Broadcast, PCBM_BoardRegisteration, pol.I_ObjectAddress);
+End;
+
+Procedure FP_AddText(fp: IPCB_Component, Data: STring);
+Var
+ txt : IPCB_Text;
+ s1, s2 : String;
+Begin
+ txt := PCBServer.PCBObjectFactory(eTextObject, eNoDimension, eCreate_Default);
+ If txt = Nil Then Exit;
+ StrChop(GetBetween(Data, '(Location ', ')'), ',', s1, s2);
+ txt.XLocation := MilsToCoord(Evaluate(s1));
+ txt.YLocation := MilsToCoord(Evaluate(s2));
+ txt.Layer := LayerFromString(GetBetween(Data, '(Layer ', ')'));
+ txt.Size := MilsToCoord(Evaluate(GetBetween(Data, '(Height ', ')')));
+ txt.Width := MilsToCoord(Evaluate(GetBetween(Data, '(Width ', ')')));
+ If GetBetween(Data, '(Mirrored ', ')') = 'True' Then Begin
+ txt.MirrorFlag := True;
+ End;
+ txt.Rotation := Evaluate(GetBetween(Data, '(Rotation ', ')'));
+ txt.Text := GetBetween(Data, '(Value "', '")');
+ // Justification? NOTE: TODO:
+ fp.AddPCBObject(txt);
+ PCBServer.SendMessageToRobots(fp.I_ObjectAddress, c_Broadcast, PCBM_BoardRegisteration, txt.I_ObjectAddress);
+End;
+
+Procedure FP_AddPad(fp: IPCB_Component, Data: String, InFile: TextFile);
+Var
+ s1, s2, inp, tag, lay : String;
+ pad : IPCB_Pad;
+ padsh : TShape;
+ cache : TPadCache;
+Begin
+ pad := PcbServer.PCBObjectFactory(ePadObject, eNoDimension, eCreate_Default);
+ pad.Name := GetBetween(Data, '(Name "', '")');
+// pad.Layer := LayerFromString(GetBetween(Data, '(Layer ', ')'));
+ StrChop(GetBetween(Data, '(Location ', ')'), ',', s1, s2);
+ pad.X := MilsToCoord(Evaluate(s1));
+ pad.Y := MilsToCoord(Evaluate(s2));
+ pad.Rotation := Evaluate(GetBetween(Data, '(Rotation ', ')')); // 2010-07-06 gbn
+// pad.Mode := ePadMode_LocalStack; // ePadMode_Simple, ePadMode_ExternalStack
+ s1 := GetBetween(Data, '(ExpandPaste ', ')');
+ s2 := GetBetween(Data, '(ExpandMask ', ')');
+ If s1 <> '' || s2 <> '' Then Begin
+ cache := pad.Cache;
+ If s1 <> '' Then Begin
+ cache.PasteMaskExpansionValid := eCacheManual;
+ cache.PasteMaskExpansion := MilsToCoord(Evaluate(s1));
+ End;
+ If s2 <> '' Then Begin
+ cache.SolderMaskExpansionValid := eCacheManual;
+ cache.SolderMaskExpansion := MilsToCoord(Evaluate(s2));
+ End;
+ pad.Cache := cache;
+ End;
+ If GetBetween(Data, '(Surface ', ')') = 'True' Then Begin
+ pad.Mode := ePadMode_Simple;
+ pad.Layer := eTopLayer;
+ End Else Begin
+ pad.Mode := ePadMode_LocalStack;
+ End;
+ pad.Moveable := False;
+ pad.HoleType := eRoundHole; // eSquareHole, eSlotHole
+ pad.HoleSize := MilsToCoord(Evaluate(GetBetween(Data, '(HoleSize ', ')')));
+ //2020-11-18 JRR Start; Let's set the Plated value, if present
+ If GetBetween(Data, '(Plated ', ')') <> '' Then Begin
+ pad.Plated := (GetBetween(Data, '(Plated ', ')')='True');
+ End;
+ //2020-11-18 JRR End
+ While Not EOF(InFile) Do Begin
+ ReadLn(InFile, inp);
+ If VarIsNull(inp) Then Continue;
+ inp := Trim(inp);
+ StrChop(inp, ' ', tag, inp);
+ tag := Trim(tag);
+ Case tag Of
+ 'PadShape': Begin
+ padsh := eNoShape;
+ StrChop(GetBetween(inp, '(Size ', ')'), ',', s1, s2);
+ Case GetBetween(inp, '(Shape ', ')') Of
+ 'NoShape': padsh := eNoShape;
+ 'Rounded': padsh := eRounded;
+ 'Rectangular': padsh := eRectangular;
+ 'Octagonal': padsh := eOctagonal;
+ 'CircleShape': padsh := eCircleShape;
+ 'ArcShape': padsh := eArcShape;
+ 'Terminator': padsh := eTerminator;
+ 'RoundedRectangle': padsh := eRoundedRectangular;
+ 'RotatedRectangle': padsh := eRotatedRectShape;
+ Else padsh := eNoShape;
+ End;
+ lay := GetBetween(inp, '(Layer ', ')');
+ If CheckLeft(lay, 'Top') Then Begin
+ pad.TopShape := padsh;
+ pad.TopXSize := MilsToCoord(Evaluate(s1));
+ pad.TopYSize := MilsToCoord(Evaluate(s2));
+ End Else If CheckLeft(lay, 'Mid') Then Begin
+ pad.MidShape := padsh;
+ pad.MidXSize := MilsToCoord(Evaluate(s1));
+ pad.MidYSize := MilsToCoord(Evaluate(s2));
+ End Else If CheckLeft(lay, 'Bot') Then Begin
+ pad.BotShape := padsh;
+ pad.BotXSize := MilsToCoord(Evaluate(s1));
+ pad.BotYSize := MilsToCoord(Evaluate(s2));
+ End;
+ End;
+ 'EndPad': Begin
+ Break;
+ End;
+ Else Begin
+ ShowMessage('Keyword Error: ' + tag);
+ End;
+ End;
+ End;
+ fp.AddPCBObject(pad);
+ PCBServer.SendMessageToRobots(fp.I_ObjectAddress, c_Broadcast, PCBM_BoardRegisteration, pad.I_ObjectAddress);
+End;
+
+Procedure ImportFootprints(InFile: TextFile, Lib: IPCB_Library, Errors: TStringList, InFileName : String);
+Var
+ inp, tag, s, t : String;
+ fp : IPCB_Component;
+Begin
+ While Not EOF(InFile) Do Begin
+ ReadLn(InFile, inp);
+ If VarIsNull(inp) Then Continue;
+ inp := Trim(inp);
+
+ StrChop(inp, ' ', tag, inp);
+ tag := Trim(tag);
+ Case tag Of
+ 'Footprint': Begin
+ // create a footprint reference
+ fp := PCBServer.CreatePCBLibComp();
+ If fp = Nil Then Begin
+ Errors.Add('Error creating footprint.');
+ Break;
+ End;
+ // add data to it
+ fp.Name := GetBetween(inp, '(Name "', '")');
+ // assign it to library
+ Lib.RegisterComponent(fp);
+ PCBServer.PreProcess();
+ // add data to it
+ fp.BeginModify();
+ // set height
+ t := GetBetween(inp, '(Height ', ')');
+ If t <> '' Then Begin
+ fp.Height := MilsToCoord(Evaluate(t));
+ End;
+
+ While Not EOF(InFile) Do Begin
+ ReadLn(InFile, inp);
+ If VarIsNull(inp) Then Continue;
+ inp := Trim(inp);
+ If CheckLeft(inp, '#') Then Continue;
+
+ StrChop(inp, ' ', tag, inp);
+ tag := Trim(tag);
+ Case tag Of
+ 'Pad': Begin
+ FP_AddPad(fp, inp, InFile);
+ End;
+ 'Line': Begin
+ FP_AddLine(fp, inp);
+ End;
+ 'Arc': Begin
+ FP_AddArc(fp, inp);
+ End;
+ 'Polygon': Begin
+ FP_AddPoly(fp, inp, InFile);
+ End;
+ 'Text': Begin
+ FP_AddText(fp, inp);
+ End;
+ 'Step': Begin
+ FP_AddStep(fp, inp, InFileName);
+ End;
+ 'EndFootprint': Begin
+ //ShowMessage('EndFootprint');
+ Break;
+ End;
+ '': Continue;
+ Else Begin
+ ShowMessage('Keyword Error: ' + tag);
+ Break;
+ End;
+ End;
+ End; // while not eof()
+ fp.EndModify();
+ PCBServer.PostProcess();
+ // done with footprint
+ End;
+ 'EndFootprints': Begin
+ //ShowMessage('EndFootprint');
+ Break;
+ End;
+ '': Continue;
+ Else Begin
+ ShowMessage('Keyword Error: ' + tag);
+ Break;
+ End;
+ End; // case tag
+ End; // while not eof()
+ PCBServer.PostProcess();
+End;
+
+{==============================================================================}
+{==== Symbol Routines =======================================================}
+{==============================================================================}
+
+Function TextJustificationFromString(Value: String): TTextJustification;
+Begin
+ Case Value Of
+ 'BottomLeft': Result := eJustify_BottomLeft;
+ 'BottomCenter': Result := eJustify_BottomCenter;
+ 'BottomRight': Result := eJustify_BottomRight;
+ 'CenterLeft': Result := eJustify_CenterLeft;
+ 'Center': Result := eJustify_Center;
+ 'CenterRight': Result := eJustify_CenterRight;
+ 'TopLeft': Result := eJustify_TopLeft;
+ 'TopCenter': Result := eJustify_TopCenter;
+ 'TopRight': Result := eJustify_TopRight;
+ Else Result := eJustify_Center;
+ End;
+End;
+
+Function SY_GetFont(Height: Double, Angle: TRotationBy90): TFontID;
+Var
+ sz : Integer;
+Begin
+ // 2012-11-07 gbn start
+ { sz := Round(Height / 10);
+ According to this page's bugs 4604 and 5552, Altium 10.890.23450 may have this fixed.
+ http://wiki.altium.com/pages/viewpage.action?pageId=34210039
+ }
+ sz := (Height * 0.1);
+ // 2012-11-07 gbn end
+
+ // 2019-01-16 gbn start, this should hopefully be temporary until Altium fixes their FontManager
+ If BrokenSCHFontManager > 0 Then Begin
+ Result := ForceSchFontID;
+ Exit;
+ End;
+ // 2019-01-16 gbn
+
+ Result := SchServer.FontManager.GetFontID(sz, Angle, False, False, False, False, 'Courier New');
+End;
+
+Function SY_GetAngle(Angle : String): TRotationBy90;
+Begin
+ Case Angle Of
+ '90': Result := eRotate90;
+ '180': Result := eRotate180;
+ '270': Result := eRotate270;
+ Else Result := eRotate0;
+ End;
+End;
+
+Procedure SY_AddLine(sy: ISch_Component, Data: String);
+Var
+ lin : ISch_Line;
+ s1, s2 ,s3: String;
+Begin
+ lin := SchServer.SchObjectFactory(eLine, eCreate_Default);
+ If lin = Nil Then Exit;
+ StrChop(GetBetween(Data, '(Start ', ')'), ',', s1, s2);
+ lin.Location := Point(MilsToCoord(Evaluate(s1)), MilsToCoord(Evaluate(s2)));
+ StrChop(GetBetween(Data, '(End ', ')'), ',', s1, s2);
+ lin.Corner := Point(MilsToCoord(Evaluate(s1)), MilsToCoord(Evaluate(s2)));
+ GetBetween(Data, 'Width ', ')');
+ If s3 < 10 Then Begin
+ lin.LineWidth := eSmall;
+ End;
+ If s3 > 10 Then Begin
+ lin.LineWidth := eMedium;
+ End;
+ If s3 > 12 Then Begin
+ lin.LineWidth := eLarge;
+ End;
+ lin.LineStyle := eLineStyleSolid;
+ lin.Color := $000000; // NOTE: TODO:
+ lin.OwnerPartId := Evaluate(GetBetween(Data, '(Part ', ')'));
+ lin.OwnerPartDisplayMode := sy.DisplayMode;
+ sy.AddSchObject(lin);
+ SchServer.RobotManager.SendMessage(sy.I_ObjectAddress, c_BroadCast, SCHM_PrimitiveRegistration, lin.I_ObjectAddress);
+End;
+
+Procedure SY_AddRect(sy: ISch_Component, Data: String);
+Var
+ rect : ISch_Rectangle;
+ s1, s2 ,s3: String;
+Begin
+ rect := SchServer.SchObjectFactory(eRectangle, eCreate_Default);
+ If rect = Nil Then Exit;
+ StrChop(GetBetween(Data, '(Start ', ')'), ',', s1, s2);
+ rect.Location := Point(MilsToCoord(Evaluate(s1)), MilsToCoord(Evaluate(s2)));
+ StrChop(GetBetween(Data, '(End ', ')'), ',', s1, s2);
+ rect.Corner := Point(MilsToCoord(Evaluate(s1)), MilsToCoord(Evaluate(s2)));
+ GetBetween(Data, 'Width ', ')');
+ s3 := GetBetween(Data, '(Width ', ')');
+ If s3 < 10 Then Begin
+ rect.LineWidth := eSmall;
+ End;
+ If s3 > 10 Then Begin
+ rect.LineWidth := eMedium;
+ End;
+ If s3 > 12 Then Begin
+ rect.LineWidth := eLarge;
+ End;
+ rect.Transparent := True;
+ rect.Color := $000000; // NOTE: TODO:
+ rect.OwnerPartId := Evaluate(GetBetween(Data, '(Part ', ')'));
+ rect.OwnerPartDisplayMode := sy.DisplayMode;
+ sy.AddSchObject(rect);
+ SchServer.RobotManager.SendMessage(sy.I_ObjectAddress, c_BroadCast, SCHM_PrimitiveRegistration, rect.I_ObjectAddress);
+End;
+
+Procedure SY_AddArc(sy: ISch_Component, Data: String);
+Var
+ arc : ISch_Arc;
+ s1, s2, s3 : String;
+Begin
+ arc := SchServer.SchObjectFactory(eArc, eCreate_Default);
+ If arc = Nil Then Exit;
+ StrChop(GetBetween(Data, '(Location ', ')'), ',', s1, s2);
+ arc.Location := Point(MilsToCoord(Evaluate(s1)), MilsToCoord(Evaluate(s2)));
+ arc.Radius := MilsToCoord(Evaluate(GetBetween(Data, '(Radius ', ')')));
+ s3 := GetBetween(Data, '(Width ', ')');
+ If s3 < 10 Then Begin
+ arc.LineWidth := eSmall;
+ End;
+ If s3 > 10 Then Begin
+ arc.LineWidth := eMedium;
+ End;
+ If s3 > 12 Then Begin
+ arc.LineWidth := eLarge;
+ End;
+ arc.Color := $000000; // NOTE: TODO:
+ arc.StartAngle := Evaluate(GetBetween(Data, '(StartAngle ', ')'));
+ arc.EndAngle := Evaluate(GetBetween(Data, '(EndAngle ', ')'));
+ arc.OwnerPartId := Evaluate(GetBetween(Data, '(Part ', ')'));
+ arc.OwnerPartDisplayMode := sy.DisplayMode;
+ sy.AddSchObject(arc);
+ SchServer.RobotManager.SendMessage(sy.I_ObjectAddress, c_BroadCast, SCHM_PrimitiveRegistration, arc.I_ObjectAddress);
+End;
+
+Procedure SY_AddPoly(sy: ISch_Component, Data: String, InFile: TextFile);
+Var
+ pol : ISch_Polygon;
+ pc: Integer;
+ s1, s2, inp, tag : String;
+Begin
+ pol := SchServer.SchObjectFactory(ePolygon, eCreate_Default);
+ If pol = Nil Then Exit;
+
+ pol.VerticesCount := Evaluate(GetBetween(Data, '(PointCount ', ')'));
+ pc := 0;
+ While Not EOF(InFile) Do Begin
+ ReadLn(InFile, inp);
+ If VarIsNull(inp) Then Continue;
+ inp := Trim(inp);
+ StrChop(inp, ' ', tag, inp);
+ tag := Trim(tag);
+ Case tag Of
+ 'Point': Begin
+ pc := pc + 1;
+ StrChop(GetBetween(inp, '(', ')'), ',', s1, s2);
+ pol.Vertex[pc] := Point(MilsToCoord(Evaluate(s1)), MilsToCoord(Evaluate(s2)));
+ End;
+ 'EndPolygon': Break;
+ Else Begin
+ ShowMessage('Keyword Error: ' + tag);
+ End;
+ End;
+ End;
+ pol.LineWidth := eZeroSize; // NOTE: TODO:
+ pol.Color := $000000; // NOTE: TODO:
+ pol.IsSolid := True;
+ pol.OwnerPartId := Evaluate(GetBetween(Data, '(Part ', ')'));
+ pol.OwnerPartDisplayMode := sy.DisplayMode;
+ sy.AddSchObject(pol);
+ SchServer.RobotManager.SendMessage(sy.I_ObjectAddress, c_BroadCast, SCHM_PrimitiveRegistration, pol.I_ObjectAddress);
+End;
+
+Procedure SY_AddText(sy: ISch_Component, Data: String);
+Var
+ txt : ISch_Label;
+ s1, s2 : String;
+Begin
+ txt := SchServer.SchObjectFactory(eLabel, eCreate_Default);
+ If txt = Nil Then Exit;
+ StrChop(GetBetween(Data, '(Location ', ')'), ',', s1, s2);
+ txt.Location := Point(MilsToCoord(Evaluate(s1)), MilsToCoord(Evaluate(s2)));
+ If GetBetween(Data, '(Mirrored ', ')') = 'True' Then Begin
+ txt.IsMirrored := True;
+ End;
+ txt.Orientation := SY_GetAngle(GetBetween(Data, '(Rotation ', ')'));
+ txt.FontID := SY_GetFont(Evaluate(GetBetween(Data, 'Height ', ')')), txt.Orientation);
+ txt.Justification := TextJustificationFromString(GetBetween(Data, '(Justification ', ')'));
+ txt.Color := $000000; // NOTE: TODO:
+ txt.Text := GetBetween(Data, '(Value "', '")');
+ txt.OwnerPartId := Evaluate(GetBetween(Data, '(Part ', ')'));
+ txt.OwnerPartDisplayMode := sy.DisplayMode;
+ sy.AddSchObject(txt);
+ SchServer.RobotManager.SendMessage(sy.I_ObjectAddress, c_BroadCast, SCHM_PrimitiveRegistration, txt.I_ObjectAddress);
+End;
+
+Procedure SY_AddParam(sy: ISch_Component, Data: String);
+Var
+ prm : ISch_Parameter;
+ s1, s2: String;
+Begin
+ prm := SchServer.SchObjectFactory(eParameter, eCreate_Default);
+ If prm = Nil Then Exit;
+ prm.IsHidden := True;
+ If GetBetween(Data, '(Name ', '"') = 'Visible' Then Begin
+ prm.IsHidden := False;
+ End;
+ prm.Name := GetBetween(Data, '(Name "', '")');
+ StrChop(GetBetween(Data, '(Location ', ')'), ',', s1, s2);
+ prm.Location := Point(MilsToCoord(Evaluate(s1)), MilsToCoord(Evaluate(s2)));
+ If GetBetween(Data, '(Mirrored ', ')') = 'True' Then Begin
+ prm.IsMirrored := True;
+ End;
+ prm.Orientation := SY_GetAngle(GetBetween(Data, '(Rotation ', ')'));
+ prm.FontID := SY_GetFont(Evaluate(GetBetween(Data, 'Height ', ')')), prm.Orientation);
+ prm.Justification := TextJustificationFromString(GetBetween(Data, '(Justification ', ')'));
+ prm.Color := $000000; // NOTE: TODO:
+ prm.Text := GetBetween(Data, '(Value "', '")');
+ prm.OwnerPartId := Evaluate(GetBetween(Data, '(Part ', ')'));
+ prm.OwnerPartDisplayMode := sy.DisplayMode;
+ sy.AddSchObject(prm);
+ SchServer.RobotManager.SendMessage(sy.I_ObjectAddress, c_BroadCast, SCHM_PrimitiveRegistration, prm.I_ObjectAddress);
+End;
+
+Procedure SY_AddComment(sy: ISch_Component, Data: String);
+Var
+ prm : ISch_Parameter;
+ s1, s2: String;
+Begin
+ prm := SchServer.SchObjectFactory(eParameter, eCreate_Default);
+ If prm = Nil Then Exit;
+ prm.IsHidden := True;
+ If GetBetween(Data, '(Name ', '"') = 'Visible' Then Begin
+ prm.IsHidden := False;
+ End;
+ prm.Name := GetBetween(Data, '(Name "', '")');
+ StrChop(GetBetween(Data, '(Location ', ')'), ',', s1, s2);
+ prm.Location := Point(MilsToCoord(Evaluate(s1)), MilsToCoord(Evaluate(s2)));
+ If GetBetween(Data, '(Mirrored ', ')') = 'True' Then Begin
+ prm.IsMirrored := True;
+ End;
+ prm.Orientation := SY_GetAngle(GetBetween(Data, '(Rotation ', ')'));
+ prm.FontID := SY_GetFont(Evaluate(GetBetween(Data, 'Height ', ')')), prm.Orientation);
+ prm.Justification := TextJustificationFromString(GetBetween(Data, '(Justification ', ')'));
+ prm.Color := $000000; // NOTE: TODO:
+ prm.Text := GetBetween(Data, '(Value "', '")');
+ prm.OwnerPartId := Evaluate(GetBetween(Data, '(Part ', ')'));
+ prm.OwnerPartDisplayMode := sy.DisplayMode;
+ sy.Comment := prm; // crashes, as of Altium 16.0.5
+ SchServer.RobotManager.SendMessage(sy.I_ObjectAddress, c_BroadCast, SCHM_PrimitiveRegistration, prm.I_ObjectAddress);
+End;
+
+Procedure SY_AddPin(sy: ISch_Component, Data: String);
+Var
+ pin : ISch_Pin;
+ s1, s2 : String;
+Begin
+ pin := SchServer.SchObjectFactory(ePin, eCreate_Default);
+ If pin = Nil Then Exit;
+
+ // Define the pin parameters.
+ StrChop(GetBetween(Data, '(Location ', ')'), ',', s1, s2);
+ pin.Location := Point(MilsToCoord(Evaluate(s1)), MilsToCoord(Evaluate(s2)));
+ pin.Color := $000000; // NOTE: TODO:
+ pin.Orientation := SY_GetAngle(GetBetween(Data, '(Rotation ', ')'));
+ Case GetBetween(Data, '(PinType ', ')') Of
+ 'IO': pin.Electrical := eElectricIO;
+ 'Input': pin.Electrical := eElectricInput;
+ 'Output': pin.Electrical := eElectricOutput;
+ 'Passive': pin.Electrical := eElectricPassive;
+ 'OpenCollector': pin.Electrical := eElectricOpenCollector;
+ 'OpenEmitter': pin.Electrical := eElectricOpenEmitter;
+ 'HiZ': pin.Electrical := eElectricHiZ;
+ 'Power': pin.Electrical := eElectricPower;
+ Else pin.Electrical := eElectricPassive;
+ End;
+ pin.PinLength := MilsToCoord(Evaluate(GetBetween(Data, '(Length ', ')')));
+ pin.SwapId_Pin := GetBetween(Data, '(PinSwap ', ')');
+ pin.SwapId_Part := GetBetween(Data, '(PartSwap ', ')');
+ pin.SwapId_PartPin := GetBetween(Data, '(PinSeq ', ')');
+ s1 := GetBetween(Data, '(Designator ', '")');
+ pin.ShowDesignator := CheckLeft(s1, 'Visible');
+ pin.Designator := RightOf(s1, '"');
+ s1 := GetBetween(Data, '(Name ', '")');
+ pin.ShowName := CheckLeft(s1, 'Visible');
+ pin.Name := RightOf(s1, '"');
+ pin.OwnerPartId := Evaluate(GetBetween(Data, '(Part ', ')'));
+
+ pin.OwnerPartDisplayMode := sy.DisplayMode;
+ sy.AddSchObject(pin);
+ SchServer.RobotManager.SendMessage(sy.I_ObjectAddress, c_BroadCast, SCHM_PrimitiveRegistration, pin.I_ObjectAddress);
+End;
+
+Procedure ImportComponents(InFile: TextFile, Lib: ISch_Document, Errors: TStringList);
+Var
+ inp, tag, s, t : String;
+ sy : ISch_Component;
+ simp : ISch_Implementation;
+Begin
+ While Not EOF(InFile) Do Begin
+ ReadLn(InFile, inp);
+ If VarIsNull(inp) Then Continue;
+
+ StrChop(inp, ' ', tag, inp);
+ tag := Trim(tag);
+ Case tag Of
+ 'Component': Begin
+ // create a component reference
+ sy := SchServer.SchObjectFactory(eSchComponent, eCreate_Default);
+ If sy = Nil Then Begin
+ Errors.Add('Error creating component.');
+ Break;
+ End;
+ // Set up parameters for the library component.
+ SchServer.ProcessControl.PreProcess(Lib, '');
+ // Define the LibReference and add the component to the library.
+ sy.LibReference := GetBetween(inp, '(Name "', '")');
+ sy.Designator.Text := GetBetween(inp, '(DesPrefix "', '")');
+ sy.ComponentDescription := 'Imported';
+ sy.PartCount := Evaluate(GetBetween(inp, '(PartCount ', ')'));
+ sy.CurrentPartId := 1;
+
+ // add data to it
+ While Not EOF(InFile) Do Begin
+ ReadLn(InFile, inp);
+ If VarIsNull(inp) Then Continue;
+ StrChop(inp, ' ', tag, inp);
+ Case tag Of
+ 'Description': Begin
+ //sy.SourceDescription := GetBetween(inp, '(Value "', '")'); ' SourceDescription doesnt exist (as of 16.0.5)
+ sy.ComponentDescription := GetBetween(inp, '(Value "', '")');
+ End;
+ 'Comment': Begin
+ //sy.Comment.UnderlyingString := GetBetween(inp, '(Value "', '")'); ' Comment.UnderlyingString doesnt exist (as of 16.0.5)
+ //sy.Comment.DisplayString := GetBetween(inp, '(Value "', '")'); // crashes
+ //SY_AddComment(sy, inp); // crashes (see function)
+ sy.Comment.text :=getbetween(inp, '(Value "', '")');
+ End;
+ 'Parameter': Begin
+ SY_AddParam(sy, inp);
+ End;
+ 'Pin': Begin
+ SY_AddPin(sy, inp);
+ End;
+ 'Line': Begin
+ SY_AddLine(sy, inp);
+ End;
+ 'Rectangle': Begin
+ SY_AddRect(sy, inp);
+ End;
+ 'Arc': Begin
+ SY_AddArc(sy, inp);
+ End;
+ 'Polygon': Begin
+ SY_AddPoly(sy, inp, InFile);
+ End;
+ 'Text': Begin
+ SY_AddText(sy, inp);
+ End;
+ 'Footprint': Begin
+ simp := sy.AddSchImplementation();
+ simp.ModelName := GetBetween(inp, '(Name "', '")');
+ simp.ModelType := cDocKind_PcbLib;
+ simp.AddDataFileLink(simp.ModelName, '', cDocKind_PcbLib);
+ simp.MapAsString := GetBetween(inp, '(Map "', '")');
+ End;
+ 'EndComponent': Begin
+ Lib.AddSchComponent(sy);
+ // Send a system notification that a new component has been added to the library.
+ SchServer.RobotManager.SendMessage(Lib.I_ObjectAddress, c_BroadCast, SCHM_PrimitiveRegistration, sy.I_ObjectAddress);
+ Lib.CurrentSchComponent := sy;
+ Break;
+ End;
+ '': Continue;
+ Else Begin
+ ShowMessage('Keyword Error: ' + tag);
+ Break;
+ End;
+ End;
+ End; // while not eof()
+ // done with component
+ SchServer.ProcessControl.PostProcess(Lib, '');
+ End;
+ 'EndComponents': Begin
+ Break;
+ End;
+ '': Continue;
+ Else Begin
+ ShowMessage('Keyword Error: ' + tag);
+ Break;
+ End;
+ End; // case tag
+ End; // while not eof()
+End;
+
+{==============================================================================}
+{==== Main Routines =========================================================}
+{==============================================================================}
+
+Function InitLibDocs(BasePath: String,
+ Out Proj : IProject,
+ Out ProjDoc : IServerDocument,
+ Out PcbLibDoc : IServerDocument,
+ Out SchLibDoc : IServerDocument,
+ Out pLib : IPCB_Library,
+ Out sLib : ISch_Document): Boolean;
+Var
+ WorkSpace : IWorkSpace;
+Begin
+ Result := False;
+ WorkSpace := GetWorkSpace;
+ If WorkSpace = Nil Then Begin
+ ShowMessage('Nil WorkSpace');
+ Exit;
+ End;
+ // Integrated library, and the project it creates
+ ProjDoc := Client.OpenNewDocument(cDocKind_IntegratedLibrary, 'UL_Imported_Lib', 'UL_Imported_Lib', False);
+ If ProjDoc = Nil Then Begin
+ ShowMessage('Nil ProjDoc');
+ Exit;
+ End;
+ If Not ProjDoc.DoSafeChangeFileNameAndSave(BasePath + '.LibPkg', cDocKind_IntegratedLibrary) Then Begin
+ ShowMessage('ProjDoc Save failed');
+ Exit;
+ End;
+ Proj := WorkSpace.DM_GetProjectFromPath(BasePath + '.LibPkg');
+ If Proj = Nil Then Begin
+ ShowMessage('Nil Proj');
+ Exit;
+ End;
+ // Footprint library
+ PcbLibDoc := Client.OpenNewDocument(cDocKind_PcbLib, 'UL_Footprints', 'UL_Footprints', False);
+ If PcbLibDoc = Nil Then Begin
+ ShowMessage('Nil PcbLibDoc');
+ Exit;
+ End;
+ If Not PcbLibDoc.DoSafeChangeFileNameAndSave(BasePath + '.PcbLib', cDocKind_PcbLib) Then Begin
+ ShowMessage('PcbLibDoc Save failed');
+ Exit;
+ End;
+ Proj.DM_AddSourceDocument(BasePath + '.PcbLib');
+ pLib := PCBServer.GetPCBLibraryByPath(BasePath + '.PcbLib');
+ If pLib = Nil Then Begin
+ ShowMessage('Nil pLib');
+ Exit;
+ End;
+ // Symbol Library
+ SchLibDoc := Client.OpenNewDocument(cDocKind_SchLib, 'UL_Components', 'UL_Components', False);
+ If SchLibDoc = Nil Then Begin
+ ShowMessage('Nil SchLibDoc');
+ Exit;
+ End;
+ If Not SchLibDoc.DoSafeChangeFileNameAndSave(BasePath + '.SchLib', cDocKind_SchLib) Then Begin
+ ShowMessage('SchLibDoc Save failed');
+ Exit;
+ End;
+ Proj.DM_AddSourceDocument(BasePath + '.SchLib');
+ sLib := SchServer.GetSchDocumentByPath(BasePath + '.SchLib');
+ If sLib = Nil Then Begin
+ ShowMessage('Nil sLib');
+ Exit;
+ End;
+ // Done
+ Result := True;
+End;
+
+Procedure ImportAscIIData(InFileName : String);
+Var
+ WorkSpace : IWorkSpace;
+ dProj : IProject;
+
+ Proj : IProject;
+ ProjDoc : IServerDocument;
+ PcbLibDoc : IServerDocument;
+ SchLibDoc : IServerDocument;
+ pLib : IPCB_Library;
+ sLib : ISch_Document;
+
+ DefFP : IPCB_Component; // default initial blank footprint
+ DefSY : ISch_Component; // default initial blank symbol
+
+ SavePath: String;
+
+ InFile : TextFile;
+ Errors : TStringList;
+ inp, tag : String;
+Begin
+
+ // 2019-01-16 gbn start, try to detect Altium 19, so we can kludge around its broken SCH FontMangaer
+ If '19.0' < GetCurrentProductBuild Then Begin
+ ShowMessage('NOTE: This version of Altium has issues with the Schematic FontManger''s scripting interface.' +
+ ' All symbol texts and parameters will use the FontID specified by the ForceSchFontID integer at the top of UL_Import.pas.');
+ BrokenSCHFontManager := 1;
+ End;
+ // 2019-01-16 gbn end
+
+ //SavePath := LeftOf(InFileName, '.'); // 2019-10-02 gbn
+ SavePath := LeftOfLast(InFileName, '.');
+ Errors := TStringList.Create();
+
+ WorkSpace := GetWorkSpace;
+ If WorkSpace = Nil Then Begin
+ ShowMessage('Nil WorkSpace');
+ Exit;
+ End;
+ dProj := WorkSpace.DM_FocusedProject();
+
+ // create integerated library documents
+ If InitLibDocs(SavePath, Proj, ProjDoc, PcbLibDoc, SchLibDoc, pLib, sLib) = False Then Begin
+ ShowMessage('Error initializing library');
+ Exit;
+ End;
+ Proj.DM_SetAsCurrentProject();
+
+ // get the original blank footprint for later deletion when we are done
+ DefFP := pLib.CurrentComponent;
+ // get the original blank symbol for later deletion when we are done
+ DefSy := sLib.CurrentSchComponent;
+
+ // start importing data
+ AssignFile(InFile, InFileName);
+ Reset(InFile);
+
+ While Not EOF(InFile) Do Begin
+ ReadLn(InFile, inp);
+ If VarIsNull(inp) Then Continue;
+
+ StrChop(inp, ' ', tag, inp);
+ tag := Trim(tag);
+ Case tag Of
+ 'StartFootprints': Begin
+ ImportFootprints(InFile, pLib, Errors, InFileName);
+ End;
+ 'StartComponents': Begin
+ ImportComponents(InFile, sLib, Errors);
+ End;
+ '': Continue;
+ End;
+ End;
+ CloseFile(InFile);
+
+ // delete the original default blank footprint
+ If Not VarIsNull(DefFP) Then Begin
+ pLib.DeRegisterComponent(DefFP);
+ pLib.RemoveComponent(DefFP);
+ End Else Begin
+ ShowMessage('DefFP was Nil');
+ End;
+ // delete the original default blank symbol
+ // NOTE: TODO: looks broken; does nothing noticable
+ If Not VarIsNull(DefSY) Then Begin
+ //ShowMessage('trying to delete DefSym "' + DefSy.LibReference + '"');
+ sLib.UnRegisterSchObjectFromContainer(DefSY);
+ sLib.RemoveSchObject(DefSy);
+ //DefSY.Container.RemoveSchObject(DefSy);
+ End Else Begin
+ ShowMessage('DefSym was Nil');
+ End;
+
+ // update views?
+ pLib.Board.ViewManager_FullUpdate();
+ // Refresh symbol library.
+ sLib.GraphicallyInvalidate();
+
+ // save files again
+ ProjDoc.DoFileSave(cDocKind_IntegratedLibrary);
+ PcbLibDoc.DoFileSave(cDocKind_PcbLib);
+ SchLibDoc.DoFileSave(cDocKind_SchLib);
+
+ //2021-01-19 JRR Start; commenting out the below section since the autoit routine does not catch the message box frrom the script
+ //// set the original project back to its focus
+ //If dProj <> Nil Then Begin
+ // dProj.DM_SetAsCurrentProject();
+ //End;
+
+ //ShowMessage('Done with "' + SavePath + '"');
+ //2021-01-19 JRR End
+End;
+
diff --git a/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/UL_Import_B0540WS-7.PrjScr b/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/UL_Import_B0540WS-7.PrjScr
new file mode 100644
index 0000000..1238b5d
--- /dev/null
+++ b/TinyArduino/Libraries/AltiumDesigner/2023-04-07_17-07-04/UL_Import_B0540WS-7.PrjScr
@@ -0,0 +1,945 @@
+[Design]
+Version=1.0
+HierarchyMode=0
+ChannelRoomNamingStyle=0
+ReleasesFolder=
+ReleaseVaultGUID=
+ReleaseVaultName=
+ChannelDesignatorFormatString=$Component_$RoomName
+ChannelRoomLevelSeperator=_
+OpenOutputs=1
+ArchiveProject=0
+TimestampOutput=0
+SeparateFolders=0
+TemplateLocationPath=
+PinSwapBy_Netlabel=1
+PinSwapBy_Pin=1
+AllowPortNetNames=0
+AllowSheetEntryNetNames=1
+AppendSheetNumberToLocalNets=0
+NetlistSinglePinNets=0
+DefaultConfiguration=Default - All Constraints
+UserID=0xFFFFFFFF
+DefaultPcbProtel=1
+DefaultPcbPcad=0
+ReorderDocumentsOnCompile=1
+NameNetsHierarchically=0
+PowerPortNamesTakePriority=0
+PushECOToAnnotationFile=1
+DItemRevisionGUID=
+ReportSuppressedErrorsInMessages=0
+FSMCodingStyle=eFMSDropDownList_OneProcess
+FSMEncodingStyle=eFMSDropDownList_OneHot
+OutputPath=
+LogFolderPath=
+ManagedProjectGUID=
+
+[Preferences]
+PrefsVaultGUID=
+PrefsRevisionGUID=
+
+[Document1]
+DocumentPath=UL_Import.pas
+AnnotationEnabled=1
+AnnotateStartValue=1
+AnnotationIndexControlEnabled=0
+AnnotateSuffix=
+AnnotateScope=All
+AnnotateOrder=-1
+DoLibraryUpdate=1
+DoDatabaseUpdate=1
+ClassGenCCAutoEnabled=1
+ClassGenCCAutoRoomEnabled=1
+ClassGenNCAutoScope=None
+DItemRevisionGUID=
+GenerateClassCluster=0
+DocumentUniqueId=
+
+[Document2]
+DocumentPath=UL_Form.pas
+AnnotationEnabled=1
+AnnotateStartValue=1
+AnnotationIndexControlEnabled=0
+AnnotateSuffix=
+AnnotateScope=All
+AnnotateOrder=-1
+DoLibraryUpdate=1
+DoDatabaseUpdate=1
+ClassGenCCAutoEnabled=1
+ClassGenCCAutoRoomEnabled=1
+ClassGenNCAutoScope=None
+DItemRevisionGUID=
+GenerateClassCluster=0
+DocumentUniqueId=
+
+[Generic_ScriptingSystem]
+StartProcName=UL_Form.pas>
+
+[OutputGroup1]
+Name=Netlist Outputs
+Description=
+TargetPrinter=Canon MX920 series Printer
+PrinterOptions=Record=PrinterOptions|Copies=1|Duplex=1|TrueTypeOptions=3|Collate=1|PrintJobKind=1|PrintWhat=1
+OutputType1=PCADNetlist
+OutputName1=PCAD Netlist
+OutputDocumentPath1=
+OutputVariantName1=
+OutputDefault1=0
+OutputType2=SIMetrixNetlist
+OutputName2=SIMetrix
+OutputDocumentPath2=
+OutputVariantName2=
+OutputDefault2=0
+OutputType3=SIMPLISNetlist
+OutputName3=SIMPLIS
+OutputDocumentPath3=
+OutputVariantName3=
+OutputDefault3=0
+OutputType4=Verilog
+OutputName4=Verilog File
+OutputDocumentPath4=
+OutputVariantName4=
+OutputDefault4=0
+OutputType5=VHDL
+OutputName5=VHDL File
+OutputDocumentPath5=
+OutputVariantName5=
+OutputDefault5=0
+OutputType6=XSpiceNetlist
+OutputName6=XSpice Netlist
+OutputDocumentPath6=
+OutputVariantName6=
+OutputDefault6=0
+
+[OutputGroup2]
+Name=Simulator Outputs
+Description=
+TargetPrinter=Canon MX920 series Printer
+PrinterOptions=Record=PrinterOptions|Copies=1|Duplex=1|TrueTypeOptions=3|Collate=1|PrintJobKind=1|PrintWhat=1
+OutputType1=AdvSimNetlist
+OutputName1=Mixed Sim
+OutputDocumentPath1=
+OutputVariantName1=
+OutputDefault1=0
+OutputType2=SIMetrixSimulation
+OutputName2=SIMetrix
+OutputDocumentPath2=
+OutputVariantName2=
+OutputDefault2=0
+OutputType3=SIMPLISSimulation
+OutputName3=SIMPLIS
+OutputDocumentPath3=
+OutputVariantName3=
+OutputDefault3=0
+
+[OutputGroup3]
+Name=Documentation Outputs
+Description=
+TargetPrinter=Virtual Printer
+PrinterOptions=Record=PrinterOptions|Copies=1|Duplex=1|TrueTypeOptions=3|Collate=1|PrintJobKind=1|PrintWhat=1
+OutputType1=Composite
+OutputName1=Composite Drawing
+OutputDocumentPath1=
+OutputVariantName1=
+OutputDefault1=0
+PageOptions1=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-4|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter
+OutputType2=Logic Analyser Print
+OutputName2=Logic Analyser Prints
+OutputDocumentPath2=
+OutputVariantName2=
+OutputDefault2=0
+PageOptions2=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-4|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter
+OutputType3=OpenBus Print
+OutputName3=OpenBus Prints
+OutputDocumentPath3=
+OutputVariantName3=
+OutputDefault3=0
+PageOptions3=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-4|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter
+OutputType4=PCB 3D Print
+OutputName4=PCB 3D Prints
+OutputDocumentPath4=
+OutputVariantName4=[No Variations]
+OutputDefault4=0
+PageOptions4=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-4|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter
+OutputType5=PCB Print
+OutputName5=PCB Prints
+OutputDocumentPath5=
+OutputVariantName5=
+OutputDefault5=0
+PageOptions5=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-4|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter
+OutputType6=Schematic Print
+OutputName6=Schematic Prints
+OutputDocumentPath6=
+OutputVariantName6=
+OutputDefault6=0
+PageOptions6=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-4|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter
+OutputType7=SimView Print
+OutputName7=SimView Prints
+OutputDocumentPath7=
+OutputVariantName7=
+OutputDefault7=0
+PageOptions7=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-4|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter
+OutputType8=Wave Print
+OutputName8=Wave Prints
+OutputDocumentPath8=
+OutputVariantName8=
+OutputDefault8=0
+PageOptions8=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-4|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter
+OutputType9=WaveSim Print
+OutputName9=WaveSim Prints
+OutputDocumentPath9=
+OutputVariantName9=
+OutputDefault9=0
+PageOptions9=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-4|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter
+OutputType10=Assembler Source Print
+OutputName10=Assembler Source Prints
+OutputDocumentPath10=
+OutputVariantName10=
+OutputDefault10=0
+PageOptions10=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType11=C Source Print
+OutputName11=C Source Prints
+OutputDocumentPath11=
+OutputVariantName11=
+OutputDefault11=0
+PageOptions11=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType12=C/C++ Header Print
+OutputName12=C/C++ Header Prints
+OutputDocumentPath12=
+OutputVariantName12=
+OutputDefault12=0
+PageOptions12=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType13=C++ Source Print
+OutputName13=C++ Source Prints
+OutputDocumentPath13=
+OutputVariantName13=
+OutputDefault13=0
+PageOptions13=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType14=FSM Print
+OutputName14=FSM Prints
+OutputDocumentPath14=
+OutputVariantName14=
+OutputDefault14=0
+PageOptions14=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType15=PCB 3D Video
+OutputName15=PCB 3D Video
+OutputDocumentPath15=
+OutputVariantName15=[No Variations]
+OutputDefault15=0
+PageOptions15=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType16=PCBLIB Print
+OutputName16=PCBLIB Prints
+OutputDocumentPath16=
+OutputVariantName16=
+OutputDefault16=0
+PageOptions16=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType17=PDF3D
+OutputName17=PDF3D
+OutputDocumentPath17=
+OutputVariantName17=[No Variations]
+OutputDefault17=0
+PageOptions17=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType18=Report Print
+OutputName18=Report Prints
+OutputDocumentPath18=
+OutputVariantName18=
+OutputDefault18=0
+PageOptions18=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType19=VHDL Print
+OutputName19=VHDL Prints
+OutputDocumentPath19=
+OutputVariantName19=
+OutputDefault19=0
+PageOptions19=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+
+[OutputGroup4]
+Name=Assembly Outputs
+Description=
+TargetPrinter=Canon MX920 series Printer
+PrinterOptions=Record=PrinterOptions|Copies=1|Duplex=1|TrueTypeOptions=3|Collate=1|PrintJobKind=1|PrintWhat=1
+OutputType1=Assembly
+OutputName1=Assembly Drawings
+OutputDocumentPath1=
+OutputVariantName1=[No Variations]
+OutputDefault1=0
+PageOptions1=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-4|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter
+OutputType2=Pick Place
+OutputName2=Generates pick and place files
+OutputDocumentPath2=
+OutputVariantName2=[No Variations]
+OutputDefault2=0
+OutputType3=Test Points For Assembly
+OutputName3=Test Point Report
+OutputDocumentPath3=
+OutputVariantName3=[No Variations]
+OutputDefault3=0
+
+[OutputGroup5]
+Name=Fabrication Outputs
+Description=
+TargetPrinter=Canon MX920 series Printer
+PrinterOptions=Record=PrinterOptions|Copies=1|Duplex=1|TrueTypeOptions=3|Collate=1|PrintJobKind=1|PrintWhat=1
+OutputType1=CompositeDrill
+OutputName1=Composite Drill Drawing
+OutputDocumentPath1=
+OutputVariantName1=
+OutputDefault1=0
+PageOptions1=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-4|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter
+OutputType2=Drill
+OutputName2=Drill Drawing/Guides
+OutputDocumentPath2=
+OutputVariantName2=
+OutputDefault2=0
+PageOptions2=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-4|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter
+OutputType3=Final
+OutputName3=Final Artwork Prints
+OutputDocumentPath3=
+OutputVariantName3=[No Variations]
+OutputDefault3=0
+PageOptions3=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-4|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter
+OutputType4=Gerber
+OutputName4=Gerber Files
+OutputDocumentPath4=
+OutputVariantName4=[No Variations]
+OutputDefault4=0
+OutputType5=Mask
+OutputName5=Solder/Paste Mask Prints
+OutputDocumentPath5=
+OutputVariantName5=
+OutputDefault5=0
+PageOptions5=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-4|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter
+OutputType6=NC Drill
+OutputName6=NC Drill Files
+OutputDocumentPath6=
+OutputVariantName6=
+OutputDefault6=0
+OutputType7=ODB
+OutputName7=ODB++ Files
+OutputDocumentPath7=
+OutputVariantName7=[No Variations]
+OutputDefault7=0
+OutputType8=Plane
+OutputName8=Power-Plane Prints
+OutputDocumentPath8=
+OutputVariantName8=
+OutputDefault8=0
+PageOptions8=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-4|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter
+OutputType9=Test Points
+OutputName9=Test Point Report
+OutputDocumentPath9=
+OutputVariantName9=
+OutputDefault9=0
+OutputType10=Board Stack Report
+OutputName10=Report Board Stack
+OutputDocumentPath10=
+OutputVariantName10=
+OutputDefault10=0
+PageOptions10=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType11=Gerber X2
+OutputName11=Gerber X2 Files
+OutputDocumentPath11=
+OutputVariantName11=
+OutputDefault11=0
+OutputType12=IPC2581
+OutputName12=IPC-2581 Files
+OutputDocumentPath12=
+OutputVariantName12=
+OutputDefault12=0
+
+[OutputGroup6]
+Name=Report Outputs
+Description=
+TargetPrinter=Canon MX920 series Printer
+PrinterOptions=Record=PrinterOptions|Copies=1|Duplex=1|TrueTypeOptions=3|Collate=1|PrintJobKind=1|PrintWhat=1
+OutputType1=BOM_PartType
+OutputName1=Bill of Materials
+OutputDocumentPath1=
+OutputVariantName1=[No Variations]
+OutputDefault1=0
+PageOptions1=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-4|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter
+OutputType2=ComponentCrossReference
+OutputName2=Component Cross Reference Report
+OutputDocumentPath2=
+OutputVariantName2=[No Variations]
+OutputDefault2=0
+OutputType3=ReportHierarchy
+OutputName3=Report Project Hierarchy
+OutputDocumentPath3=
+OutputVariantName3=[No Variations]
+OutputDefault3=0
+OutputType4=SimpleBOM
+OutputName4=Simple BOM
+OutputDocumentPath4=
+OutputVariantName4=[No Variations]
+OutputDefault4=0
+OutputType5=SinglePinNetReporter
+OutputName5=Report Single Pin Nets
+OutputDocumentPath5=
+OutputVariantName5=[No Variations]
+OutputDefault5=0
+OutputType6=Script
+OutputName6=Script Output
+OutputDocumentPath6=
+OutputVariantName6=[No Variations]
+OutputDefault6=0
+
+[OutputGroup7]
+Name=Other Outputs
+Description=
+TargetPrinter=Canon MX920 series Printer
+PrinterOptions=Record=PrinterOptions|Copies=1|Duplex=1|TrueTypeOptions=3|Collate=1|PrintJobKind=1|PrintWhat=1
+OutputType1=Text Print
+OutputName1=Text Print
+OutputDocumentPath1=
+OutputVariantName1=
+OutputDefault1=0
+PageOptions1=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-4|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter
+OutputType2=Text Print
+OutputName2=Text Print
+OutputDocumentPath2=
+OutputVariantName2=
+OutputDefault2=0
+PageOptions2=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType3=Text Print
+OutputName3=Text Print
+OutputDocumentPath3=
+OutputVariantName3=
+OutputDefault3=0
+PageOptions3=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType4=Text Print
+OutputName4=Text Print
+OutputDocumentPath4=
+OutputVariantName4=
+OutputDefault4=0
+PageOptions4=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType5=Text Print
+OutputName5=Text Print
+OutputDocumentPath5=
+OutputVariantName5=
+OutputDefault5=0
+PageOptions5=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType6=Text Print
+OutputName6=Text Print
+OutputDocumentPath6=
+OutputVariantName6=
+OutputDefault6=0
+PageOptions6=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType7=Text Print
+OutputName7=Text Print
+OutputDocumentPath7=
+OutputVariantName7=
+OutputDefault7=0
+PageOptions7=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType8=Text Print
+OutputName8=Text Print
+OutputDocumentPath8=
+OutputVariantName8=
+OutputDefault8=0
+PageOptions8=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType9=Text Print
+OutputName9=Text Print
+OutputDocumentPath9=
+OutputVariantName9=
+OutputDefault9=0
+PageOptions9=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType10=Text Print
+OutputName10=Text Print
+OutputDocumentPath10=
+OutputVariantName10=
+OutputDefault10=0
+PageOptions10=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType11=Text Print
+OutputName11=Text Print
+OutputDocumentPath11=
+OutputVariantName11=
+OutputDefault11=0
+PageOptions11=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType12=Text Print
+OutputName12=Text Print
+OutputDocumentPath12=
+OutputVariantName12=
+OutputDefault12=0
+PageOptions12=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType13=Text Print
+OutputName13=Text Print
+OutputDocumentPath13=
+OutputVariantName13=
+OutputDefault13=0
+PageOptions13=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType14=Text Print
+OutputName14=Text Print
+OutputDocumentPath14=
+OutputVariantName14=
+OutputDefault14=0
+PageOptions14=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType15=Text Print
+OutputName15=Text Print
+OutputDocumentPath15=
+OutputVariantName15=
+OutputDefault15=0
+PageOptions15=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType16=Text Print
+OutputName16=Text Print
+OutputDocumentPath16=
+OutputVariantName16=
+OutputDefault16=0
+PageOptions16=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType17=Text Print
+OutputName17=Text Print
+OutputDocumentPath17=
+OutputVariantName17=
+OutputDefault17=0
+PageOptions17=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType18=Text Print
+OutputName18=Text Print
+OutputDocumentPath18=
+OutputVariantName18=
+OutputDefault18=0
+PageOptions18=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType19=Text Print
+OutputName19=Text Print
+OutputDocumentPath19=
+OutputVariantName19=
+OutputDefault19=0
+PageOptions19=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType20=Text Print
+OutputName20=Text Print
+OutputDocumentPath20=
+OutputVariantName20=
+OutputDefault20=0
+PageOptions20=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType21=Text Print
+OutputName21=Text Print
+OutputDocumentPath21=
+OutputVariantName21=
+OutputDefault21=0
+PageOptions21=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType22=Text Print
+OutputName22=Text Print
+OutputDocumentPath22=
+OutputVariantName22=
+OutputDefault22=0
+PageOptions22=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType23=Text Print
+OutputName23=Text Print
+OutputDocumentPath23=
+OutputVariantName23=
+OutputDefault23=0
+PageOptions23=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType24=Text Print
+OutputName24=Text Print
+OutputDocumentPath24=
+OutputVariantName24=
+OutputDefault24=0
+PageOptions24=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType25=Text Print
+OutputName25=Text Print
+OutputDocumentPath25=
+OutputVariantName25=
+OutputDefault25=0
+PageOptions25=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType26=Text Print
+OutputName26=Text Print
+OutputDocumentPath26=
+OutputVariantName26=
+OutputDefault26=0
+PageOptions26=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType27=Text Print
+OutputName27=Text Print
+OutputDocumentPath27=
+OutputVariantName27=
+OutputDefault27=0
+PageOptions27=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType28=Text Print
+OutputName28=Text Print
+OutputDocumentPath28=
+OutputVariantName28=
+OutputDefault28=0
+PageOptions28=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType29=Text Print
+OutputName29=Text Print
+OutputDocumentPath29=
+OutputVariantName29=
+OutputDefault29=0
+PageOptions29=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+
+[OutputGroup8]
+Name=Validation Outputs
+Description=
+TargetPrinter=Canon MX920 series Printer
+PrinterOptions=Record=PrinterOptions|Copies=1|Duplex=1|TrueTypeOptions=3|Collate=1|PrintJobKind=1|PrintWhat=1
+OutputType1=Design Rules Check
+OutputName1=Design Rules Check
+OutputDocumentPath1=
+OutputVariantName1=
+OutputDefault1=0
+PageOptions1=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-4|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter
+OutputType2=Electrical Rules Check
+OutputName2=Electrical Rules Check
+OutputDocumentPath2=
+OutputVariantName2=
+OutputDefault2=0
+PageOptions2=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-4|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter
+OutputType3=Component states check
+OutputName3=Vault's components states check
+OutputDocumentPath3=
+OutputVariantName3=
+OutputDefault3=0
+OutputType4=Configuration compliance
+OutputName4=Environment configuration compliance check
+OutputDocumentPath4=
+OutputVariantName4=
+OutputDefault4=0
+OutputType5=Differences Report
+OutputName5=Differences Report
+OutputDocumentPath5=
+OutputVariantName5=
+OutputDefault5=0
+PageOptions5=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-3|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter|PaperIndex=1
+OutputType6=Footprint Comparison Report
+OutputName6=Footprint Comparison Report
+OutputDocumentPath6=
+OutputVariantName6=
+OutputDefault6=0
+
+[OutputGroup9]
+Name=Export Outputs
+Description=
+TargetPrinter=Canon MX920 series Printer
+PrinterOptions=Record=PrinterOptions|Copies=1|Duplex=1|TrueTypeOptions=3|Collate=1|PrintJobKind=1|PrintWhat=1
+OutputType1=AutoCAD dwg/dxf PCB
+OutputName1=AutoCAD dwg/dxf File PCB
+OutputDocumentPath1=
+OutputVariantName1=
+OutputDefault1=0
+OutputType2=AutoCAD dwg/dxf Schematic
+OutputName2=AutoCAD dwg/dxf File Schematic
+OutputDocumentPath2=
+OutputVariantName2=
+OutputDefault2=0
+OutputType3=ExportIDF
+OutputName3=Export IDF
+OutputDocumentPath3=
+OutputVariantName3=
+OutputDefault3=0
+OutputType4=ExportSTEP
+OutputName4=Export STEP
+OutputDocumentPath4=
+OutputVariantName4=[No Variations]
+OutputDefault4=0
+
+[Modification Levels]
+Type1=1
+Type2=1
+Type3=1
+Type4=1
+Type5=1
+Type6=1
+Type7=1
+Type8=1
+Type9=1
+Type10=1
+Type11=1
+Type12=1
+Type13=1
+Type14=1
+Type15=1
+Type16=1
+Type17=1
+Type18=1
+Type19=1
+Type20=1
+Type21=1
+Type22=1
+Type23=1
+Type24=1
+Type25=1
+Type26=1
+Type27=1
+Type28=1
+Type29=1
+Type30=1
+Type31=1
+Type32=1
+Type33=1
+Type34=1
+Type35=1
+Type36=1
+Type37=1
+Type38=1
+Type39=1
+Type40=1
+Type41=1
+Type42=1
+Type43=1
+Type44=1
+Type45=1
+Type46=1
+Type47=1
+Type48=1
+Type49=1
+Type50=1
+Type51=1
+Type52=1
+Type53=1
+Type54=1
+Type55=1
+Type56=1
+Type57=1
+Type58=1
+Type59=1
+Type60=1
+Type61=1
+Type62=1
+Type63=1
+Type64=1
+Type65=1
+Type66=1
+Type67=1
+Type68=1
+Type69=1
+Type70=1
+Type71=1
+Type72=1
+Type73=1
+Type74=1
+Type75=1
+Type76=1
+Type77=1
+Type78=1
+Type79=1
+Type80=1
+
+[Difference Levels]
+Type1=1
+Type2=1
+Type3=1
+Type4=1
+Type5=1
+Type6=1
+Type7=1
+Type8=1
+Type9=1
+Type10=1
+Type11=1
+Type12=1
+Type13=1
+Type14=1
+Type15=1
+Type16=1
+Type17=1
+Type18=1
+Type19=1
+Type20=1
+Type21=1
+Type22=1
+Type23=1
+Type24=1
+Type25=1
+Type26=1
+Type27=1
+Type28=1
+Type29=1
+Type30=1
+Type31=1
+Type32=1
+Type33=1
+Type34=1
+Type35=1
+Type36=1
+Type37=1
+Type38=1
+Type39=1
+Type40=1
+Type41=1
+Type42=1
+Type43=1
+Type44=0
+Type45=1
+
+[Electrical Rules Check]
+Type1=1
+Type2=1
+Type3=2
+Type4=1
+Type5=2
+Type6=2
+Type7=1
+Type8=1
+Type9=1
+Type10=1
+Type11=2
+Type12=2
+Type13=2
+Type14=1
+Type15=1
+Type16=1
+Type17=1
+Type18=1
+Type19=1
+Type20=1
+Type21=1
+Type22=1
+Type23=1
+Type24=1
+Type25=2
+Type26=2
+Type27=2
+Type28=1
+Type29=1
+Type30=1
+Type31=1
+Type32=2
+Type33=2
+Type34=2
+Type35=1
+Type36=2
+Type37=1
+Type38=2
+Type39=2
+Type40=2
+Type41=0
+Type42=2
+Type43=1
+Type44=1
+Type45=2
+Type46=1
+Type47=2
+Type48=2
+Type49=1
+Type50=2
+Type51=1
+Type52=1
+Type53=1
+Type54=1
+Type55=1
+Type56=2
+Type57=1
+Type58=1
+Type59=0
+Type60=1
+Type61=2
+Type62=2
+Type63=1
+Type64=0
+Type65=2
+Type66=3
+Type67=2
+Type68=2
+Type69=1
+Type70=2
+Type71=2
+Type72=2
+Type73=2
+Type74=1
+Type75=2
+Type76=1
+Type77=1
+Type78=1
+Type79=1
+Type80=2
+Type81=3
+Type82=3
+Type83=3
+Type84=3
+Type85=3
+Type86=2
+Type87=2
+Type88=2
+Type89=1
+Type90=1
+Type91=3
+Type92=3
+Type93=2
+Type94=2
+Type95=2
+Type96=2
+Type97=2
+Type98=0
+Type99=1
+Type100=2
+Type101=1
+Type102=2
+Type103=2
+Type104=1
+Type105=2
+Type106=2
+Type107=2
+Type108=2
+Type109=1
+Type110=1
+Type111=1
+
+[ERC Connection Matrix]
+L1=NNNNNNNNNNNWNNNWW
+L2=NNWNNNNWWWNWNWNWN
+L3=NWEENEEEENEWNEEWN
+L4=NNENNNWEENNWNENWN
+L5=NNNNNNNNNNNNNNNNN
+L6=NNENNNNEENNWNENWN
+L7=NNEWNNWEENNWNENWN
+L8=NWEENEENEEENNEENN
+L9=NWEENEEEENEWNEEWW
+L10=NWNNNNNENNEWNNEWN
+L11=NNENNNNEEENWNENWN
+L12=WWWWNWWNWWWNWWWNN
+L13=NNNNNNNNNNNWNNNWW
+L14=NWEENEEEENEWNEEWW
+L15=NNENNNNEEENWNENWW
+L16=WWWWNWWNWWWNWWWNW
+L17=WNNNNNNNWNNNWWWWN
+
+[Annotate]
+SortOrder=3
+SortLocation=0
+MatchParameter1=Comment
+MatchStrictly1=1
+MatchParameter2=Library Reference
+MatchStrictly2=1
+PhysicalNamingFormat=$Component_$RoomName
+GlobalIndexSortOrder=3
+GlobalIndexSortLocation=0
+
+[PrjClassGen]
+CompClassManualEnabled=0
+CompClassManualRoomEnabled=0
+NetClassAutoBusEnabled=1
+NetClassAutoCompEnabled=0
+NetClassAutoNamedHarnessEnabled=0
+NetClassManualEnabled=0
+NetClassSeparateForBusSections=0
+
+[LibraryUpdateOptions]
+SelectedOnly=0
+UpdateVariants=1
+PartTypes=0
+FullReplace=1
+UpdateDesignatorLock=1
+UpdatePartIDLock=1
+PreserveParameterLocations=1
+PreserveParameterVisibility=1
+DoGraphics=1
+DoParameters=1
+DoModels=1
+AddParameters=0
+RemoveParameters=0
+AddModels=1
+RemoveModels=1
+UpdateCurrentModels=1
+
+[DatabaseUpdateOptions]
+SelectedOnly=0
+UpdateVariants=1
+PartTypes=0
+
+[Comparison Options]
+ComparisonOptions0=Kind=Net|MinPercent=75|MinMatch=3|ShowMatch=-1|Confirm=-1|UseName=-1|InclAllRules=0
+ComparisonOptions1=Kind=Net Class|MinPercent=75|MinMatch=3|ShowMatch=-1|Confirm=-1|UseName=-1|InclAllRules=0
+ComparisonOptions2=Kind=Component Class|MinPercent=75|MinMatch=3|ShowMatch=-1|Confirm=-1|UseName=-1|InclAllRules=0
+ComparisonOptions3=Kind=Rule|MinPercent=75|MinMatch=3|ShowMatch=-1|Confirm=-1|UseName=-1|InclAllRules=0
+ComparisonOptions4=Kind=Differential Pair|MinPercent=50|MinMatch=1|ShowMatch=0|Confirm=0|UseName=0|InclAllRules=0
+ComparisonOptions5=Kind=Code Memory|MinPercent=75|MinMatch=3|ShowMatch=-1|Confirm=-1|UseName=-1|InclAllRules=0
+
+[SmartPDF]
+PageOptions=Record=PageOptions|CenterHorizontal=True|CenterVertical=True|PrintScale=1.00|XCorrection=1.00|YCorrection=1.00|PrintKind=1|BorderSize=5000000|LeftOffset=0|BottomOffset=0|Orientation=2|PaperLength=1000|PaperWidth=1000|Scale=100|PaperSource=7|PrintQuality=-4|MediaType=1|DitherType=10|PrintScaleMode=1|PaperKind=Letter
+
diff --git a/TinyArduino/Libraries/AltiumDesigner/ImportGuide.html b/TinyArduino/Libraries/AltiumDesigner/ImportGuide.html
new file mode 100644
index 0000000..e9ed463
--- /dev/null
+++ b/TinyArduino/Libraries/AltiumDesigner/ImportGuide.html
@@ -0,0 +1,98 @@
+
+
+
If you are not redirected you can find detailed instructions on how to import your download by following the link for that tool found below
+https://app.ultralibrarian.com/content/help?altium_designer.htm
+You can find detailed instructions on how to import your download by following the link for that tool found below
+ +