diff --git a/fab.3dshapes/Mic_MEMS_TDK-ICS-43434.step b/fab.3dshapes/Mic_MEMS_TDK-ICS-43434.step
new file mode 100644
index 0000000000000000000000000000000000000000..41ed8560fb61f300618e67e70fde95467fff2103
--- /dev/null
+++ b/fab.3dshapes/Mic_MEMS_TDK-ICS-43434.step
@@ -0,0 +1,728 @@
+ISO-10303-21;
+HEADER;
+FILE_DESCRIPTION(('FreeCAD Model'),'2;1');
+FILE_NAME('Open CASCADE Shape Model','2025-02-04T20:14:25',(
+    'Krisjanis Rijnieks'),(''),'Open CASCADE STEP processor 7.7',
+  'FreeCAD','Unknown');
+FILE_SCHEMA(('AUTOMOTIVE_DESIGN { 1 0 10303 214 1 1 1 1 }'));
+ENDSEC;
+DATA;
+#1 = APPLICATION_PROTOCOL_DEFINITION('international standard',
+  'automotive_design',2000,#2);
+#2 = APPLICATION_CONTEXT(
+  'core data for automotive mechanical design processes');
+#3 = SHAPE_DEFINITION_REPRESENTATION(#4,#10);
+#4 = PRODUCT_DEFINITION_SHAPE('','',#5);
+#5 = PRODUCT_DEFINITION('design','',#6,#9);
+#6 = PRODUCT_DEFINITION_FORMATION('','',#7);
+#7 = PRODUCT('ICS-43434','ICS-43434','',(#8));
+#8 = PRODUCT_CONTEXT('',#2,'mechanical');
+#9 = PRODUCT_DEFINITION_CONTEXT('part definition',#2,'design');
+#10 = SHAPE_REPRESENTATION('',(#11,#15,#19),#23);
+#11 = AXIS2_PLACEMENT_3D('',#12,#13,#14);
+#12 = CARTESIAN_POINT('',(0.,0.,0.));
+#13 = DIRECTION('',(0.,0.,1.));
+#14 = DIRECTION('',(1.,0.,-0.));
+#15 = AXIS2_PLACEMENT_3D('',#16,#17,#18);
+#16 = CARTESIAN_POINT('',(0.,0.,0.));
+#17 = DIRECTION('',(0.,0.,1.));
+#18 = DIRECTION('',(1.,0.,0.));
+#19 = AXIS2_PLACEMENT_3D('',#20,#21,#22);
+#20 = CARTESIAN_POINT('',(0.,0.,0.));
+#21 = DIRECTION('',(0.,0.,1.));
+#22 = DIRECTION('',(1.,0.,0.));
+#23 = ( GEOMETRIC_REPRESENTATION_CONTEXT(3) 
+GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#27)) GLOBAL_UNIT_ASSIGNED_CONTEXT(
+(#24,#25,#26)) REPRESENTATION_CONTEXT('Context #1',
+  '3D Context with UNIT and UNCERTAINTY') );
+#24 = ( LENGTH_UNIT() NAMED_UNIT(*) SI_UNIT(.MILLI.,.METRE.) );
+#25 = ( NAMED_UNIT(*) PLANE_ANGLE_UNIT() SI_UNIT($,.RADIAN.) );
+#26 = ( NAMED_UNIT(*) SI_UNIT($,.STERADIAN.) SOLID_ANGLE_UNIT() );
+#27 = UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(1.E-07),#24,
+  'distance_accuracy_value','confusion accuracy');
+#28 = PRODUCT_RELATED_PRODUCT_CATEGORY('part',$,(#7));
+#29 = SHAPE_DEFINITION_REPRESENTATION(#30,#36);
+#30 = PRODUCT_DEFINITION_SHAPE('','',#31);
+#31 = PRODUCT_DEFINITION('design','',#32,#35);
+#32 = PRODUCT_DEFINITION_FORMATION('','',#33);
+#33 = PRODUCT('Body','Body','',(#34));
+#34 = PRODUCT_CONTEXT('',#2,'mechanical');
+#35 = PRODUCT_DEFINITION_CONTEXT('part definition',#2,'design');
+#36 = ADVANCED_BREP_SHAPE_REPRESENTATION('',(#11,#37),#187);
+#37 = MANIFOLD_SOLID_BREP('',#38);
+#38 = CLOSED_SHELL('',(#39,#79,#110,#141,#163,#175));
+#39 = ADVANCED_FACE('',(#40),#74,.F.);
+#40 = FACE_BOUND('',#41,.F.);
+#41 = EDGE_LOOP('',(#42,#52,#60,#68));
+#42 = ORIENTED_EDGE('',*,*,#43,.T.);
+#43 = EDGE_CURVE('',#44,#46,#48,.T.);
+#44 = VERTEX_POINT('',#45);
+#45 = CARTESIAN_POINT('',(-1.325,1.75,0.));
+#46 = VERTEX_POINT('',#47);
+#47 = CARTESIAN_POINT('',(-1.325,1.75,0.23));
+#48 = LINE('',#49,#50);
+#49 = CARTESIAN_POINT('',(-1.325,1.75,0.));
+#50 = VECTOR('',#51,1.);
+#51 = DIRECTION('',(0.,0.,1.));
+#52 = ORIENTED_EDGE('',*,*,#53,.T.);
+#53 = EDGE_CURVE('',#46,#54,#56,.T.);
+#54 = VERTEX_POINT('',#55);
+#55 = CARTESIAN_POINT('',(-1.325,-1.75,0.23));
+#56 = LINE('',#57,#58);
+#57 = CARTESIAN_POINT('',(-1.325,1.75,0.23));
+#58 = VECTOR('',#59,1.);
+#59 = DIRECTION('',(0.,-1.,0.));
+#60 = ORIENTED_EDGE('',*,*,#61,.F.);
+#61 = EDGE_CURVE('',#62,#54,#64,.T.);
+#62 = VERTEX_POINT('',#63);
+#63 = CARTESIAN_POINT('',(-1.325,-1.75,0.));
+#64 = LINE('',#65,#66);
+#65 = CARTESIAN_POINT('',(-1.325,-1.75,0.));
+#66 = VECTOR('',#67,1.);
+#67 = DIRECTION('',(0.,0.,1.));
+#68 = ORIENTED_EDGE('',*,*,#69,.F.);
+#69 = EDGE_CURVE('',#44,#62,#70,.T.);
+#70 = LINE('',#71,#72);
+#71 = CARTESIAN_POINT('',(-1.325,1.75,0.));
+#72 = VECTOR('',#73,1.);
+#73 = DIRECTION('',(0.,-1.,0.));
+#74 = PLANE('',#75);
+#75 = AXIS2_PLACEMENT_3D('',#76,#77,#78);
+#76 = CARTESIAN_POINT('',(-1.325,1.75,0.));
+#77 = DIRECTION('',(1.,0.,0.));
+#78 = DIRECTION('',(0.,-1.,0.));
+#79 = ADVANCED_FACE('',(#80),#105,.F.);
+#80 = FACE_BOUND('',#81,.F.);
+#81 = EDGE_LOOP('',(#82,#83,#91,#99));
+#82 = ORIENTED_EDGE('',*,*,#61,.T.);
+#83 = ORIENTED_EDGE('',*,*,#84,.T.);
+#84 = EDGE_CURVE('',#54,#85,#87,.T.);
+#85 = VERTEX_POINT('',#86);
+#86 = CARTESIAN_POINT('',(1.325,-1.75,0.23));
+#87 = LINE('',#88,#89);
+#88 = CARTESIAN_POINT('',(-1.325,-1.75,0.23));
+#89 = VECTOR('',#90,1.);
+#90 = DIRECTION('',(1.,0.,0.));
+#91 = ORIENTED_EDGE('',*,*,#92,.F.);
+#92 = EDGE_CURVE('',#93,#85,#95,.T.);
+#93 = VERTEX_POINT('',#94);
+#94 = CARTESIAN_POINT('',(1.325,-1.75,0.));
+#95 = LINE('',#96,#97);
+#96 = CARTESIAN_POINT('',(1.325,-1.75,0.));
+#97 = VECTOR('',#98,1.);
+#98 = DIRECTION('',(0.,0.,1.));
+#99 = ORIENTED_EDGE('',*,*,#100,.F.);
+#100 = EDGE_CURVE('',#62,#93,#101,.T.);
+#101 = LINE('',#102,#103);
+#102 = CARTESIAN_POINT('',(-1.325,-1.75,0.));
+#103 = VECTOR('',#104,1.);
+#104 = DIRECTION('',(1.,0.,0.));
+#105 = PLANE('',#106);
+#106 = AXIS2_PLACEMENT_3D('',#107,#108,#109);
+#107 = CARTESIAN_POINT('',(-1.325,-1.75,0.));
+#108 = DIRECTION('',(0.,1.,0.));
+#109 = DIRECTION('',(1.,0.,0.));
+#110 = ADVANCED_FACE('',(#111),#136,.F.);
+#111 = FACE_BOUND('',#112,.F.);
+#112 = EDGE_LOOP('',(#113,#114,#122,#130));
+#113 = ORIENTED_EDGE('',*,*,#92,.T.);
+#114 = ORIENTED_EDGE('',*,*,#115,.T.);
+#115 = EDGE_CURVE('',#85,#116,#118,.T.);
+#116 = VERTEX_POINT('',#117);
+#117 = CARTESIAN_POINT('',(1.325,1.75,0.23));
+#118 = LINE('',#119,#120);
+#119 = CARTESIAN_POINT('',(1.325,-1.75,0.23));
+#120 = VECTOR('',#121,1.);
+#121 = DIRECTION('',(0.,1.,0.));
+#122 = ORIENTED_EDGE('',*,*,#123,.F.);
+#123 = EDGE_CURVE('',#124,#116,#126,.T.);
+#124 = VERTEX_POINT('',#125);
+#125 = CARTESIAN_POINT('',(1.325,1.75,0.));
+#126 = LINE('',#127,#128);
+#127 = CARTESIAN_POINT('',(1.325,1.75,0.));
+#128 = VECTOR('',#129,1.);
+#129 = DIRECTION('',(0.,0.,1.));
+#130 = ORIENTED_EDGE('',*,*,#131,.F.);
+#131 = EDGE_CURVE('',#93,#124,#132,.T.);
+#132 = LINE('',#133,#134);
+#133 = CARTESIAN_POINT('',(1.325,-1.75,0.));
+#134 = VECTOR('',#135,1.);
+#135 = DIRECTION('',(0.,1.,0.));
+#136 = PLANE('',#137);
+#137 = AXIS2_PLACEMENT_3D('',#138,#139,#140);
+#138 = CARTESIAN_POINT('',(1.325,-1.75,0.));
+#139 = DIRECTION('',(-1.,0.,0.));
+#140 = DIRECTION('',(0.,1.,0.));
+#141 = ADVANCED_FACE('',(#142),#158,.F.);
+#142 = FACE_BOUND('',#143,.F.);
+#143 = EDGE_LOOP('',(#144,#145,#151,#152));
+#144 = ORIENTED_EDGE('',*,*,#123,.T.);
+#145 = ORIENTED_EDGE('',*,*,#146,.T.);
+#146 = EDGE_CURVE('',#116,#46,#147,.T.);
+#147 = LINE('',#148,#149);
+#148 = CARTESIAN_POINT('',(1.325,1.75,0.23));
+#149 = VECTOR('',#150,1.);
+#150 = DIRECTION('',(-1.,0.,0.));
+#151 = ORIENTED_EDGE('',*,*,#43,.F.);
+#152 = ORIENTED_EDGE('',*,*,#153,.F.);
+#153 = EDGE_CURVE('',#124,#44,#154,.T.);
+#154 = LINE('',#155,#156);
+#155 = CARTESIAN_POINT('',(1.325,1.75,0.));
+#156 = VECTOR('',#157,1.);
+#157 = DIRECTION('',(-1.,0.,0.));
+#158 = PLANE('',#159);
+#159 = AXIS2_PLACEMENT_3D('',#160,#161,#162);
+#160 = CARTESIAN_POINT('',(1.325,1.75,0.));
+#161 = DIRECTION('',(0.,-1.,0.));
+#162 = DIRECTION('',(-1.,0.,0.));
+#163 = ADVANCED_FACE('',(#164),#170,.F.);
+#164 = FACE_BOUND('',#165,.F.);
+#165 = EDGE_LOOP('',(#166,#167,#168,#169));
+#166 = ORIENTED_EDGE('',*,*,#69,.T.);
+#167 = ORIENTED_EDGE('',*,*,#100,.T.);
+#168 = ORIENTED_EDGE('',*,*,#131,.T.);
+#169 = ORIENTED_EDGE('',*,*,#153,.T.);
+#170 = PLANE('',#171);
+#171 = AXIS2_PLACEMENT_3D('',#172,#173,#174);
+#172 = CARTESIAN_POINT('',(0.,0.,0.));
+#173 = DIRECTION('',(0.,0.,1.));
+#174 = DIRECTION('',(1.,0.,0.));
+#175 = ADVANCED_FACE('',(#176),#182,.T.);
+#176 = FACE_BOUND('',#177,.T.);
+#177 = EDGE_LOOP('',(#178,#179,#180,#181));
+#178 = ORIENTED_EDGE('',*,*,#53,.T.);
+#179 = ORIENTED_EDGE('',*,*,#84,.T.);
+#180 = ORIENTED_EDGE('',*,*,#115,.T.);
+#181 = ORIENTED_EDGE('',*,*,#146,.T.);
+#182 = PLANE('',#183);
+#183 = AXIS2_PLACEMENT_3D('',#184,#185,#186);
+#184 = CARTESIAN_POINT('',(0.,0.,0.23));
+#185 = DIRECTION('',(0.,0.,1.));
+#186 = DIRECTION('',(1.,0.,0.));
+#187 = ( GEOMETRIC_REPRESENTATION_CONTEXT(3) 
+GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#191)) GLOBAL_UNIT_ASSIGNED_CONTEXT
+((#188,#189,#190)) REPRESENTATION_CONTEXT('Context #1',
+  '3D Context with UNIT and UNCERTAINTY') );
+#188 = ( LENGTH_UNIT() NAMED_UNIT(*) SI_UNIT(.MILLI.,.METRE.) );
+#189 = ( NAMED_UNIT(*) PLANE_ANGLE_UNIT() SI_UNIT($,.RADIAN.) );
+#190 = ( NAMED_UNIT(*) SI_UNIT($,.STERADIAN.) SOLID_ANGLE_UNIT() );
+#191 = UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(1.E-07),#188,
+  'distance_accuracy_value','confusion accuracy');
+#192 = CONTEXT_DEPENDENT_SHAPE_REPRESENTATION(#193,#195);
+#193 = ( REPRESENTATION_RELATIONSHIP('','',#36,#10) 
+REPRESENTATION_RELATIONSHIP_WITH_TRANSFORMATION(#194) 
+SHAPE_REPRESENTATION_RELATIONSHIP() );
+#194 = ITEM_DEFINED_TRANSFORMATION('','',#11,#15);
+#195 = PRODUCT_DEFINITION_SHAPE('Placement','Placement of an item',#196
+  );
+#196 = NEXT_ASSEMBLY_USAGE_OCCURRENCE('1','Body','',#5,#31,$);
+#197 = PRODUCT_RELATED_PRODUCT_CATEGORY('part',$,(#33));
+#198 = SHAPE_DEFINITION_REPRESENTATION(#199,#205);
+#199 = PRODUCT_DEFINITION_SHAPE('','',#200);
+#200 = PRODUCT_DEFINITION('design','',#201,#204);
+#201 = PRODUCT_DEFINITION_FORMATION('','',#202);
+#202 = PRODUCT('Body001','Body001','',(#203));
+#203 = PRODUCT_CONTEXT('',#2,'mechanical');
+#204 = PRODUCT_DEFINITION_CONTEXT('part definition',#2,'design');
+#205 = ADVANCED_BREP_SHAPE_REPRESENTATION('',(#11,#206),#660);
+#206 = MANIFOLD_SOLID_BREP('',#207);
+#207 = CLOSED_SHELL('',(#208,#248,#281,#314,#373,#398,#415,#439,#470,
+    #487,#511,#536,#561,#578,#596,#614,#638,#649));
+#208 = ADVANCED_FACE('',(#209),#243,.F.);
+#209 = FACE_BOUND('',#210,.F.);
+#210 = EDGE_LOOP('',(#211,#221,#229,#237));
+#211 = ORIENTED_EDGE('',*,*,#212,.T.);
+#212 = EDGE_CURVE('',#213,#215,#217,.T.);
+#213 = VERTEX_POINT('',#214);
+#214 = CARTESIAN_POINT('',(-1.175,1.44,0.23));
+#215 = VERTEX_POINT('',#216);
+#216 = CARTESIAN_POINT('',(-1.175,1.44,0.82));
+#217 = LINE('',#218,#219);
+#218 = CARTESIAN_POINT('',(-1.175,1.44,0.23));
+#219 = VECTOR('',#220,1.);
+#220 = DIRECTION('',(0.,0.,1.));
+#221 = ORIENTED_EDGE('',*,*,#222,.T.);
+#222 = EDGE_CURVE('',#215,#223,#225,.T.);
+#223 = VERTEX_POINT('',#224);
+#224 = CARTESIAN_POINT('',(-1.175,-1.44,0.82));
+#225 = LINE('',#226,#227);
+#226 = CARTESIAN_POINT('',(-1.175,1.44,0.82));
+#227 = VECTOR('',#228,1.);
+#228 = DIRECTION('',(0.,-1.,0.));
+#229 = ORIENTED_EDGE('',*,*,#230,.F.);
+#230 = EDGE_CURVE('',#231,#223,#233,.T.);
+#231 = VERTEX_POINT('',#232);
+#232 = CARTESIAN_POINT('',(-1.175,-1.44,0.23));
+#233 = LINE('',#234,#235);
+#234 = CARTESIAN_POINT('',(-1.175,-1.44,0.23));
+#235 = VECTOR('',#236,1.);
+#236 = DIRECTION('',(0.,0.,1.));
+#237 = ORIENTED_EDGE('',*,*,#238,.F.);
+#238 = EDGE_CURVE('',#213,#231,#239,.T.);
+#239 = LINE('',#240,#241);
+#240 = CARTESIAN_POINT('',(-1.175,1.6,0.23));
+#241 = VECTOR('',#242,1.);
+#242 = DIRECTION('',(0.,-1.,0.));
+#243 = PLANE('',#244);
+#244 = AXIS2_PLACEMENT_3D('',#245,#246,#247);
+#245 = CARTESIAN_POINT('',(-1.175,1.6,0.23));
+#246 = DIRECTION('',(1.,0.,0.));
+#247 = DIRECTION('',(0.,-1.,0.));
+#248 = ADVANCED_FACE('',(#249),#276,.T.);
+#249 = FACE_BOUND('',#250,.F.);
+#250 = EDGE_LOOP('',(#251,#252,#261,#269));
+#251 = ORIENTED_EDGE('',*,*,#212,.F.);
+#252 = ORIENTED_EDGE('',*,*,#253,.T.);
+#253 = EDGE_CURVE('',#213,#254,#256,.T.);
+#254 = VERTEX_POINT('',#255);
+#255 = CARTESIAN_POINT('',(-1.015,1.6,0.23));
+#256 = CIRCLE('',#257,0.16);
+#257 = AXIS2_PLACEMENT_3D('',#258,#259,#260);
+#258 = CARTESIAN_POINT('',(-1.015,1.44,0.23));
+#259 = DIRECTION('',(-0.,-0.,-1.));
+#260 = DIRECTION('',(0.,-1.,0.));
+#261 = ORIENTED_EDGE('',*,*,#262,.T.);
+#262 = EDGE_CURVE('',#254,#263,#265,.T.);
+#263 = VERTEX_POINT('',#264);
+#264 = CARTESIAN_POINT('',(-1.015,1.6,0.82));
+#265 = LINE('',#266,#267);
+#266 = CARTESIAN_POINT('',(-1.015,1.6,0.23));
+#267 = VECTOR('',#268,1.);
+#268 = DIRECTION('',(0.,0.,1.));
+#269 = ORIENTED_EDGE('',*,*,#270,.T.);
+#270 = EDGE_CURVE('',#263,#215,#271,.T.);
+#271 = CIRCLE('',#272,0.16);
+#272 = AXIS2_PLACEMENT_3D('',#273,#274,#275);
+#273 = CARTESIAN_POINT('',(-1.015,1.44,0.82));
+#274 = DIRECTION('',(0.,-0.,1.));
+#275 = DIRECTION('',(0.,1.,0.));
+#276 = CYLINDRICAL_SURFACE('',#277,0.16);
+#277 = AXIS2_PLACEMENT_3D('',#278,#279,#280);
+#278 = CARTESIAN_POINT('',(-1.015,1.44,0.23));
+#279 = DIRECTION('',(0.,0.,1.));
+#280 = DIRECTION('',(-1.,0.,0.));
+#281 = ADVANCED_FACE('',(#282),#309,.T.);
+#282 = FACE_BOUND('',#283,.F.);
+#283 = EDGE_LOOP('',(#284,#293,#301,#308));
+#284 = ORIENTED_EDGE('',*,*,#285,.T.);
+#285 = EDGE_CURVE('',#215,#286,#288,.T.);
+#286 = VERTEX_POINT('',#287);
+#287 = CARTESIAN_POINT('',(-1.015,1.44,0.98));
+#288 = CIRCLE('',#289,0.16);
+#289 = AXIS2_PLACEMENT_3D('',#290,#291,#292);
+#290 = CARTESIAN_POINT('',(-1.015,1.44,0.82));
+#291 = DIRECTION('',(0.,1.,-0.));
+#292 = DIRECTION('',(-1.,0.,0.));
+#293 = ORIENTED_EDGE('',*,*,#294,.T.);
+#294 = EDGE_CURVE('',#286,#295,#297,.T.);
+#295 = VERTEX_POINT('',#296);
+#296 = CARTESIAN_POINT('',(-1.015,-1.44,0.98));
+#297 = LINE('',#298,#299);
+#298 = CARTESIAN_POINT('',(-1.015,1.44,0.98));
+#299 = VECTOR('',#300,1.);
+#300 = DIRECTION('',(0.,-1.,0.));
+#301 = ORIENTED_EDGE('',*,*,#302,.F.);
+#302 = EDGE_CURVE('',#223,#295,#303,.T.);
+#303 = CIRCLE('',#304,0.16);
+#304 = AXIS2_PLACEMENT_3D('',#305,#306,#307);
+#305 = CARTESIAN_POINT('',(-1.015,-1.44,0.82));
+#306 = DIRECTION('',(0.,1.,-0.));
+#307 = DIRECTION('',(-1.,0.,0.));
+#308 = ORIENTED_EDGE('',*,*,#222,.F.);
+#309 = CYLINDRICAL_SURFACE('',#310,0.16);
+#310 = AXIS2_PLACEMENT_3D('',#311,#312,#313);
+#311 = CARTESIAN_POINT('',(-1.015,1.44,0.82));
+#312 = DIRECTION('',(0.,-1.,0.));
+#313 = DIRECTION('',(-1.,0.,0.));
+#314 = ADVANCED_FACE('',(#315),#368,.F.);
+#315 = FACE_BOUND('',#316,.F.);
+#316 = EDGE_LOOP('',(#317,#318,#327,#335,#344,#352,#361,#367));
+#317 = ORIENTED_EDGE('',*,*,#238,.T.);
+#318 = ORIENTED_EDGE('',*,*,#319,.T.);
+#319 = EDGE_CURVE('',#231,#320,#322,.T.);
+#320 = VERTEX_POINT('',#321);
+#321 = CARTESIAN_POINT('',(-1.015,-1.6,0.23));
+#322 = CIRCLE('',#323,0.16);
+#323 = AXIS2_PLACEMENT_3D('',#324,#325,#326);
+#324 = CARTESIAN_POINT('',(-1.015,-1.44,0.23));
+#325 = DIRECTION('',(-0.,0.,1.));
+#326 = DIRECTION('',(0.,-1.,0.));
+#327 = ORIENTED_EDGE('',*,*,#328,.T.);
+#328 = EDGE_CURVE('',#320,#329,#331,.T.);
+#329 = VERTEX_POINT('',#330);
+#330 = CARTESIAN_POINT('',(1.015,-1.6,0.23));
+#331 = LINE('',#332,#333);
+#332 = CARTESIAN_POINT('',(-1.175,-1.6,0.23));
+#333 = VECTOR('',#334,1.);
+#334 = DIRECTION('',(1.,0.,0.));
+#335 = ORIENTED_EDGE('',*,*,#336,.T.);
+#336 = EDGE_CURVE('',#329,#337,#339,.T.);
+#337 = VERTEX_POINT('',#338);
+#338 = CARTESIAN_POINT('',(1.175,-1.44,0.23));
+#339 = CIRCLE('',#340,0.16);
+#340 = AXIS2_PLACEMENT_3D('',#341,#342,#343);
+#341 = CARTESIAN_POINT('',(1.015,-1.44,0.23));
+#342 = DIRECTION('',(-0.,0.,1.));
+#343 = DIRECTION('',(0.,-1.,0.));
+#344 = ORIENTED_EDGE('',*,*,#345,.T.);
+#345 = EDGE_CURVE('',#337,#346,#348,.T.);
+#346 = VERTEX_POINT('',#347);
+#347 = CARTESIAN_POINT('',(1.175,1.44,0.23));
+#348 = LINE('',#349,#350);
+#349 = CARTESIAN_POINT('',(1.175,-1.6,0.23));
+#350 = VECTOR('',#351,1.);
+#351 = DIRECTION('',(0.,1.,0.));
+#352 = ORIENTED_EDGE('',*,*,#353,.T.);
+#353 = EDGE_CURVE('',#346,#354,#356,.T.);
+#354 = VERTEX_POINT('',#355);
+#355 = CARTESIAN_POINT('',(1.015,1.6,0.23));
+#356 = CIRCLE('',#357,0.16);
+#357 = AXIS2_PLACEMENT_3D('',#358,#359,#360);
+#358 = CARTESIAN_POINT('',(1.015,1.44,0.23));
+#359 = DIRECTION('',(-0.,0.,1.));
+#360 = DIRECTION('',(0.,-1.,0.));
+#361 = ORIENTED_EDGE('',*,*,#362,.T.);
+#362 = EDGE_CURVE('',#354,#254,#363,.T.);
+#363 = LINE('',#364,#365);
+#364 = CARTESIAN_POINT('',(1.175,1.6,0.23));
+#365 = VECTOR('',#366,1.);
+#366 = DIRECTION('',(-1.,0.,0.));
+#367 = ORIENTED_EDGE('',*,*,#253,.F.);
+#368 = PLANE('',#369);
+#369 = AXIS2_PLACEMENT_3D('',#370,#371,#372);
+#370 = CARTESIAN_POINT('',(4.000803692343E-17,4.000803692343E-17,0.23));
+#371 = DIRECTION('',(0.,0.,1.));
+#372 = DIRECTION('',(1.,0.,0.));
+#373 = ADVANCED_FACE('',(#374),#393,.T.);
+#374 = FACE_BOUND('',#375,.T.);
+#375 = EDGE_LOOP('',(#376,#377,#378,#386));
+#376 = ORIENTED_EDGE('',*,*,#230,.F.);
+#377 = ORIENTED_EDGE('',*,*,#319,.T.);
+#378 = ORIENTED_EDGE('',*,*,#379,.T.);
+#379 = EDGE_CURVE('',#320,#380,#382,.T.);
+#380 = VERTEX_POINT('',#381);
+#381 = CARTESIAN_POINT('',(-1.015,-1.6,0.82));
+#382 = LINE('',#383,#384);
+#383 = CARTESIAN_POINT('',(-1.015,-1.6,0.23));
+#384 = VECTOR('',#385,1.);
+#385 = DIRECTION('',(0.,0.,1.));
+#386 = ORIENTED_EDGE('',*,*,#387,.F.);
+#387 = EDGE_CURVE('',#223,#380,#388,.T.);
+#388 = CIRCLE('',#389,0.16);
+#389 = AXIS2_PLACEMENT_3D('',#390,#391,#392);
+#390 = CARTESIAN_POINT('',(-1.015,-1.44,0.82));
+#391 = DIRECTION('',(0.,0.,1.));
+#392 = DIRECTION('',(-1.,-1.387778780781E-15,0.));
+#393 = CYLINDRICAL_SURFACE('',#394,0.16);
+#394 = AXIS2_PLACEMENT_3D('',#395,#396,#397);
+#395 = CARTESIAN_POINT('',(-1.015,-1.44,0.23));
+#396 = DIRECTION('',(0.,0.,1.));
+#397 = DIRECTION('',(-1.,0.,0.));
+#398 = ADVANCED_FACE('',(#399),#410,.T.);
+#399 = FACE_BOUND('',#400,.T.);
+#400 = EDGE_LOOP('',(#401,#408,#409));
+#401 = ORIENTED_EDGE('',*,*,#402,.F.);
+#402 = EDGE_CURVE('',#263,#286,#403,.T.);
+#403 = CIRCLE('',#404,0.16);
+#404 = AXIS2_PLACEMENT_3D('',#405,#406,#407);
+#405 = CARTESIAN_POINT('',(-1.015,1.44,0.82));
+#406 = DIRECTION('',(1.,0.,0.));
+#407 = DIRECTION('',(0.,1.,0.));
+#408 = ORIENTED_EDGE('',*,*,#270,.T.);
+#409 = ORIENTED_EDGE('',*,*,#285,.T.);
+#410 = SPHERICAL_SURFACE('',#411,0.16);
+#411 = AXIS2_PLACEMENT_3D('',#412,#413,#414);
+#412 = CARTESIAN_POINT('',(-1.015,1.44,0.82));
+#413 = DIRECTION('',(0.,0.,1.));
+#414 = DIRECTION('',(0.,1.,0.));
+#415 = ADVANCED_FACE('',(#416),#434,.F.);
+#416 = FACE_BOUND('',#417,.F.);
+#417 = EDGE_LOOP('',(#418,#426,#432,#433));
+#418 = ORIENTED_EDGE('',*,*,#419,.T.);
+#419 = EDGE_CURVE('',#354,#420,#422,.T.);
+#420 = VERTEX_POINT('',#421);
+#421 = CARTESIAN_POINT('',(1.015,1.6,0.82));
+#422 = LINE('',#423,#424);
+#423 = CARTESIAN_POINT('',(1.015,1.6,0.23));
+#424 = VECTOR('',#425,1.);
+#425 = DIRECTION('',(0.,0.,1.));
+#426 = ORIENTED_EDGE('',*,*,#427,.T.);
+#427 = EDGE_CURVE('',#420,#263,#428,.T.);
+#428 = LINE('',#429,#430);
+#429 = CARTESIAN_POINT('',(1.015,1.6,0.82));
+#430 = VECTOR('',#431,1.);
+#431 = DIRECTION('',(-1.,0.,0.));
+#432 = ORIENTED_EDGE('',*,*,#262,.F.);
+#433 = ORIENTED_EDGE('',*,*,#362,.F.);
+#434 = PLANE('',#435);
+#435 = AXIS2_PLACEMENT_3D('',#436,#437,#438);
+#436 = CARTESIAN_POINT('',(1.175,1.6,0.23));
+#437 = DIRECTION('',(0.,-1.,0.));
+#438 = DIRECTION('',(-1.,0.,0.));
+#439 = ADVANCED_FACE('',(#440),#465,.T.);
+#440 = FACE_BOUND('',#441,.T.);
+#441 = EDGE_LOOP('',(#442,#443,#451,#459));
+#442 = ORIENTED_EDGE('',*,*,#294,.T.);
+#443 = ORIENTED_EDGE('',*,*,#444,.T.);
+#444 = EDGE_CURVE('',#295,#445,#447,.T.);
+#445 = VERTEX_POINT('',#446);
+#446 = CARTESIAN_POINT('',(1.015,-1.44,0.98));
+#447 = LINE('',#448,#449);
+#448 = CARTESIAN_POINT('',(-1.015,-1.44,0.98));
+#449 = VECTOR('',#450,1.);
+#450 = DIRECTION('',(1.,0.,0.));
+#451 = ORIENTED_EDGE('',*,*,#452,.T.);
+#452 = EDGE_CURVE('',#445,#453,#455,.T.);
+#453 = VERTEX_POINT('',#454);
+#454 = CARTESIAN_POINT('',(1.015,1.44,0.98));
+#455 = LINE('',#456,#457);
+#456 = CARTESIAN_POINT('',(1.015,-1.44,0.98));
+#457 = VECTOR('',#458,1.);
+#458 = DIRECTION('',(0.,1.,0.));
+#459 = ORIENTED_EDGE('',*,*,#460,.T.);
+#460 = EDGE_CURVE('',#453,#286,#461,.T.);
+#461 = LINE('',#462,#463);
+#462 = CARTESIAN_POINT('',(1.015,1.44,0.98));
+#463 = VECTOR('',#464,1.);
+#464 = DIRECTION('',(-1.,0.,0.));
+#465 = PLANE('',#466);
+#466 = AXIS2_PLACEMENT_3D('',#467,#468,#469);
+#467 = CARTESIAN_POINT('',(4.000803692343E-17,4.000803692343E-17,0.98));
+#468 = DIRECTION('',(0.,0.,1.));
+#469 = DIRECTION('',(1.,0.,0.));
+#470 = ADVANCED_FACE('',(#471),#482,.T.);
+#471 = FACE_BOUND('',#472,.T.);
+#472 = EDGE_LOOP('',(#473,#474,#475));
+#473 = ORIENTED_EDGE('',*,*,#302,.F.);
+#474 = ORIENTED_EDGE('',*,*,#387,.T.);
+#475 = ORIENTED_EDGE('',*,*,#476,.T.);
+#476 = EDGE_CURVE('',#380,#295,#477,.T.);
+#477 = CIRCLE('',#478,0.16);
+#478 = AXIS2_PLACEMENT_3D('',#479,#480,#481);
+#479 = CARTESIAN_POINT('',(-1.015,-1.44,0.82));
+#480 = DIRECTION('',(-1.,5.721188726109E-18,0.));
+#481 = DIRECTION('',(-5.721188726109E-18,-1.,0.));
+#482 = SPHERICAL_SURFACE('',#483,0.16);
+#483 = AXIS2_PLACEMENT_3D('',#484,#485,#486);
+#484 = CARTESIAN_POINT('',(-1.015,-1.44,0.82));
+#485 = DIRECTION('',(0.,0.,1.));
+#486 = DIRECTION('',(-1.,-1.387778780781E-15,0.));
+#487 = ADVANCED_FACE('',(#488),#506,.F.);
+#488 = FACE_BOUND('',#489,.F.);
+#489 = EDGE_LOOP('',(#490,#491,#499,#505));
+#490 = ORIENTED_EDGE('',*,*,#379,.T.);
+#491 = ORIENTED_EDGE('',*,*,#492,.T.);
+#492 = EDGE_CURVE('',#380,#493,#495,.T.);
+#493 = VERTEX_POINT('',#494);
+#494 = CARTESIAN_POINT('',(1.015,-1.6,0.82));
+#495 = LINE('',#496,#497);
+#496 = CARTESIAN_POINT('',(-1.015,-1.6,0.82));
+#497 = VECTOR('',#498,1.);
+#498 = DIRECTION('',(1.,0.,0.));
+#499 = ORIENTED_EDGE('',*,*,#500,.F.);
+#500 = EDGE_CURVE('',#329,#493,#501,.T.);
+#501 = LINE('',#502,#503);
+#502 = CARTESIAN_POINT('',(1.015,-1.6,0.23));
+#503 = VECTOR('',#504,1.);
+#504 = DIRECTION('',(0.,0.,1.));
+#505 = ORIENTED_EDGE('',*,*,#328,.F.);
+#506 = PLANE('',#507);
+#507 = AXIS2_PLACEMENT_3D('',#508,#509,#510);
+#508 = CARTESIAN_POINT('',(-1.175,-1.6,0.23));
+#509 = DIRECTION('',(0.,1.,0.));
+#510 = DIRECTION('',(1.,0.,0.));
+#511 = ADVANCED_FACE('',(#512),#531,.T.);
+#512 = FACE_BOUND('',#513,.T.);
+#513 = EDGE_LOOP('',(#514,#522,#523,#524));
+#514 = ORIENTED_EDGE('',*,*,#515,.F.);
+#515 = EDGE_CURVE('',#346,#516,#518,.T.);
+#516 = VERTEX_POINT('',#517);
+#517 = CARTESIAN_POINT('',(1.175,1.44,0.82));
+#518 = LINE('',#519,#520);
+#519 = CARTESIAN_POINT('',(1.175,1.44,0.23));
+#520 = VECTOR('',#521,1.);
+#521 = DIRECTION('',(0.,0.,1.));
+#522 = ORIENTED_EDGE('',*,*,#353,.T.);
+#523 = ORIENTED_EDGE('',*,*,#419,.T.);
+#524 = ORIENTED_EDGE('',*,*,#525,.F.);
+#525 = EDGE_CURVE('',#516,#420,#526,.T.);
+#526 = CIRCLE('',#527,0.16);
+#527 = AXIS2_PLACEMENT_3D('',#528,#529,#530);
+#528 = CARTESIAN_POINT('',(1.015,1.44,0.82));
+#529 = DIRECTION('',(0.,-0.,1.));
+#530 = DIRECTION('',(1.,1.387778780781E-15,0.));
+#531 = CYLINDRICAL_SURFACE('',#532,0.16);
+#532 = AXIS2_PLACEMENT_3D('',#533,#534,#535);
+#533 = CARTESIAN_POINT('',(1.015,1.44,0.23));
+#534 = DIRECTION('',(0.,0.,1.));
+#535 = DIRECTION('',(1.,0.,0.));
+#536 = ADVANCED_FACE('',(#537),#556,.T.);
+#537 = FACE_BOUND('',#538,.T.);
+#538 = EDGE_LOOP('',(#539,#540,#541,#549));
+#539 = ORIENTED_EDGE('',*,*,#500,.F.);
+#540 = ORIENTED_EDGE('',*,*,#336,.T.);
+#541 = ORIENTED_EDGE('',*,*,#542,.T.);
+#542 = EDGE_CURVE('',#337,#543,#545,.T.);
+#543 = VERTEX_POINT('',#544);
+#544 = CARTESIAN_POINT('',(1.175,-1.44,0.82));
+#545 = LINE('',#546,#547);
+#546 = CARTESIAN_POINT('',(1.175,-1.44,0.23));
+#547 = VECTOR('',#548,1.);
+#548 = DIRECTION('',(0.,0.,1.));
+#549 = ORIENTED_EDGE('',*,*,#550,.F.);
+#550 = EDGE_CURVE('',#493,#543,#551,.T.);
+#551 = CIRCLE('',#552,0.16);
+#552 = AXIS2_PLACEMENT_3D('',#553,#554,#555);
+#553 = CARTESIAN_POINT('',(1.015,-1.44,0.82));
+#554 = DIRECTION('',(-0.,0.,1.));
+#555 = DIRECTION('',(0.,-1.,0.));
+#556 = CYLINDRICAL_SURFACE('',#557,0.16);
+#557 = AXIS2_PLACEMENT_3D('',#558,#559,#560);
+#558 = CARTESIAN_POINT('',(1.015,-1.44,0.23));
+#559 = DIRECTION('',(0.,0.,1.));
+#560 = DIRECTION('',(0.,-1.,0.));
+#561 = ADVANCED_FACE('',(#562),#573,.F.);
+#562 = FACE_BOUND('',#563,.F.);
+#563 = EDGE_LOOP('',(#564,#565,#571,#572));
+#564 = ORIENTED_EDGE('',*,*,#542,.T.);
+#565 = ORIENTED_EDGE('',*,*,#566,.T.);
+#566 = EDGE_CURVE('',#543,#516,#567,.T.);
+#567 = LINE('',#568,#569);
+#568 = CARTESIAN_POINT('',(1.175,-1.44,0.82));
+#569 = VECTOR('',#570,1.);
+#570 = DIRECTION('',(0.,1.,0.));
+#571 = ORIENTED_EDGE('',*,*,#515,.F.);
+#572 = ORIENTED_EDGE('',*,*,#345,.F.);
+#573 = PLANE('',#574);
+#574 = AXIS2_PLACEMENT_3D('',#575,#576,#577);
+#575 = CARTESIAN_POINT('',(1.175,-1.6,0.23));
+#576 = DIRECTION('',(-1.,0.,0.));
+#577 = DIRECTION('',(0.,1.,0.));
+#578 = ADVANCED_FACE('',(#579),#591,.T.);
+#579 = FACE_BOUND('',#580,.F.);
+#580 = EDGE_LOOP('',(#581,#588,#589,#590));
+#581 = ORIENTED_EDGE('',*,*,#582,.T.);
+#582 = EDGE_CURVE('',#420,#453,#583,.T.);
+#583 = CIRCLE('',#584,0.16);
+#584 = AXIS2_PLACEMENT_3D('',#585,#586,#587);
+#585 = CARTESIAN_POINT('',(1.015,1.44,0.82));
+#586 = DIRECTION('',(1.,-5.721188726109E-18,0.));
+#587 = DIRECTION('',(5.721188726109E-18,1.,0.));
+#588 = ORIENTED_EDGE('',*,*,#460,.T.);
+#589 = ORIENTED_EDGE('',*,*,#402,.F.);
+#590 = ORIENTED_EDGE('',*,*,#427,.F.);
+#591 = CYLINDRICAL_SURFACE('',#592,0.16);
+#592 = AXIS2_PLACEMENT_3D('',#593,#594,#595);
+#593 = CARTESIAN_POINT('',(1.015,1.44,0.82));
+#594 = DIRECTION('',(-1.,0.,0.));
+#595 = DIRECTION('',(0.,1.,0.));
+#596 = ADVANCED_FACE('',(#597),#609,.T.);
+#597 = FACE_BOUND('',#598,.F.);
+#598 = EDGE_LOOP('',(#599,#600,#601,#608));
+#599 = ORIENTED_EDGE('',*,*,#476,.T.);
+#600 = ORIENTED_EDGE('',*,*,#444,.T.);
+#601 = ORIENTED_EDGE('',*,*,#602,.F.);
+#602 = EDGE_CURVE('',#493,#445,#603,.T.);
+#603 = CIRCLE('',#604,0.16);
+#604 = AXIS2_PLACEMENT_3D('',#605,#606,#607);
+#605 = CARTESIAN_POINT('',(1.015,-1.44,0.82));
+#606 = DIRECTION('',(-1.,0.,0.));
+#607 = DIRECTION('',(0.,-1.,0.));
+#608 = ORIENTED_EDGE('',*,*,#492,.F.);
+#609 = CYLINDRICAL_SURFACE('',#610,0.16);
+#610 = AXIS2_PLACEMENT_3D('',#611,#612,#613);
+#611 = CARTESIAN_POINT('',(-1.015,-1.44,0.82));
+#612 = DIRECTION('',(1.,0.,0.));
+#613 = DIRECTION('',(0.,-1.,0.));
+#614 = ADVANCED_FACE('',(#615),#633,.T.);
+#615 = FACE_BOUND('',#616,.F.);
+#616 = EDGE_LOOP('',(#617,#624,#625,#632));
+#617 = ORIENTED_EDGE('',*,*,#618,.T.);
+#618 = EDGE_CURVE('',#543,#445,#619,.T.);
+#619 = CIRCLE('',#620,0.16);
+#620 = AXIS2_PLACEMENT_3D('',#621,#622,#623);
+#621 = CARTESIAN_POINT('',(1.015,-1.44,0.82));
+#622 = DIRECTION('',(-6.123233995737E-17,-1.,0.));
+#623 = DIRECTION('',(1.,-6.123233995737E-17,0.));
+#624 = ORIENTED_EDGE('',*,*,#452,.T.);
+#625 = ORIENTED_EDGE('',*,*,#626,.F.);
+#626 = EDGE_CURVE('',#516,#453,#627,.T.);
+#627 = CIRCLE('',#628,0.16);
+#628 = AXIS2_PLACEMENT_3D('',#629,#630,#631);
+#629 = CARTESIAN_POINT('',(1.015,1.44,0.82));
+#630 = DIRECTION('',(0.,-1.,0.));
+#631 = DIRECTION('',(1.,0.,0.));
+#632 = ORIENTED_EDGE('',*,*,#566,.F.);
+#633 = CYLINDRICAL_SURFACE('',#634,0.16);
+#634 = AXIS2_PLACEMENT_3D('',#635,#636,#637);
+#635 = CARTESIAN_POINT('',(1.015,-1.44,0.82));
+#636 = DIRECTION('',(0.,1.,0.));
+#637 = DIRECTION('',(1.,0.,0.));
+#638 = ADVANCED_FACE('',(#639),#644,.T.);
+#639 = FACE_BOUND('',#640,.T.);
+#640 = EDGE_LOOP('',(#641,#642,#643));
+#641 = ORIENTED_EDGE('',*,*,#626,.F.);
+#642 = ORIENTED_EDGE('',*,*,#525,.T.);
+#643 = ORIENTED_EDGE('',*,*,#582,.T.);
+#644 = SPHERICAL_SURFACE('',#645,0.16);
+#645 = AXIS2_PLACEMENT_3D('',#646,#647,#648);
+#646 = CARTESIAN_POINT('',(1.015,1.44,0.82));
+#647 = DIRECTION('',(0.,0.,1.));
+#648 = DIRECTION('',(1.,1.387778780781E-15,0.));
+#649 = ADVANCED_FACE('',(#650),#655,.T.);
+#650 = FACE_BOUND('',#651,.T.);
+#651 = EDGE_LOOP('',(#652,#653,#654));
+#652 = ORIENTED_EDGE('',*,*,#602,.F.);
+#653 = ORIENTED_EDGE('',*,*,#550,.T.);
+#654 = ORIENTED_EDGE('',*,*,#618,.T.);
+#655 = SPHERICAL_SURFACE('',#656,0.16);
+#656 = AXIS2_PLACEMENT_3D('',#657,#658,#659);
+#657 = CARTESIAN_POINT('',(1.015,-1.44,0.82));
+#658 = DIRECTION('',(0.,0.,1.));
+#659 = DIRECTION('',(0.,-1.,0.));
+#660 = ( GEOMETRIC_REPRESENTATION_CONTEXT(3) 
+GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#664)) GLOBAL_UNIT_ASSIGNED_CONTEXT
+((#661,#662,#663)) REPRESENTATION_CONTEXT('Context #1',
+  '3D Context with UNIT and UNCERTAINTY') );
+#661 = ( LENGTH_UNIT() NAMED_UNIT(*) SI_UNIT(.MILLI.,.METRE.) );
+#662 = ( NAMED_UNIT(*) PLANE_ANGLE_UNIT() SI_UNIT($,.RADIAN.) );
+#663 = ( NAMED_UNIT(*) SI_UNIT($,.STERADIAN.) SOLID_ANGLE_UNIT() );
+#664 = UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(1.E-07),#661,
+  'distance_accuracy_value','confusion accuracy');
+#665 = CONTEXT_DEPENDENT_SHAPE_REPRESENTATION(#666,#668);
+#666 = ( REPRESENTATION_RELATIONSHIP('','',#205,#10) 
+REPRESENTATION_RELATIONSHIP_WITH_TRANSFORMATION(#667) 
+SHAPE_REPRESENTATION_RELATIONSHIP() );
+#667 = ITEM_DEFINED_TRANSFORMATION('','',#11,#19);
+#668 = PRODUCT_DEFINITION_SHAPE('Placement','Placement of an item',#669
+  );
+#669 = NEXT_ASSEMBLY_USAGE_OCCURRENCE('2','Body001','',#5,#200,$);
+#670 = PRODUCT_RELATED_PRODUCT_CATEGORY('part',$,(#202));
+#671 = MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION('',(#672)
+  ,#187);
+#672 = STYLED_ITEM('color',(#673),#37);
+#673 = PRESENTATION_STYLE_ASSIGNMENT((#674,#680));
+#674 = SURFACE_STYLE_USAGE(.BOTH.,#675);
+#675 = SURFACE_SIDE_STYLE('',(#676));
+#676 = SURFACE_STYLE_FILL_AREA(#677);
+#677 = FILL_AREA_STYLE('',(#678));
+#678 = FILL_AREA_STYLE_COLOUR('',#679);
+#679 = COLOUR_RGB('',0.330000010676,0.670000024756,0.);
+#680 = CURVE_STYLE('',#681,POSITIVE_LENGTH_MEASURE(0.1),#682);
+#681 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
+#682 = COLOUR_RGB('',9.803921802644E-02,9.803921802644E-02,
+  9.803921802644E-02);
+#683 = MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION('',(#684)
+  ,#660);
+#684 = STYLED_ITEM('color',(#685),#206);
+#685 = PRESENTATION_STYLE_ASSIGNMENT((#686,#692));
+#686 = SURFACE_STYLE_USAGE(.BOTH.,#687);
+#687 = SURFACE_SIDE_STYLE('',(#688));
+#688 = SURFACE_STYLE_FILL_AREA(#689);
+#689 = FILL_AREA_STYLE('',(#690));
+#690 = FILL_AREA_STYLE_COLOUR('',#691);
+#691 = COLOUR_RGB('',0.82999997502,0.82999997502,0.82999997502);
+#692 = CURVE_STYLE('',#693,POSITIVE_LENGTH_MEASURE(0.1),#682);
+#693 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
+ENDSEC;
+END-ISO-10303-21;
diff --git a/fab.3dsource/Mic_MEMS_TDK.FCStd b/fab.3dsource/Mic_MEMS_TDK.FCStd
new file mode 100644
index 0000000000000000000000000000000000000000..66152f4013e4fb93d7d5dc751995a6870ab1e6cd
Binary files /dev/null and b/fab.3dsource/Mic_MEMS_TDK.FCStd differ
diff --git a/fab.kicad_sym b/fab.kicad_sym
index 2368bbf05ebed25b68ceebf7a3f221293fe1b8c8..f79404cc815167e3c647a8753f3ff8cb895a137e 100644
--- a/fab.kicad_sym
+++ b/fab.kicad_sym
@@ -20969,6 +20969,197 @@
 			)
 		)
 	)
+	(symbol "Mic_MEMS_TDK_ICS-43434"
+		(exclude_from_sim no)
+		(in_bom yes)
+		(on_board yes)
+		(property "Reference" "MK"
+			(at 1.27 12.192 0)
+			(effects
+				(font
+					(size 1.27 1.27)
+				)
+				(justify left)
+			)
+		)
+		(property "Value" "Mic_MEMS_TDK_ICS-43434"
+			(at 1.27 9.652 0)
+			(effects
+				(font
+					(size 1.27 1.27)
+				)
+				(justify left)
+			)
+		)
+		(property "Footprint" "fab:Mic_MEMS_TDK_ICS-43434"
+			(at 0 0 0)
+			(effects
+				(font
+					(size 1.27 1.27)
+				)
+				(hide yes)
+			)
+		)
+		(property "Datasheet" "https://www.digikey.com/en/products/detail/tdk-invensense/ICS-43434/6140298"
+			(at 0 0.254 0)
+			(effects
+				(font
+					(size 1.27 1.27)
+				)
+				(hide yes)
+			)
+		)
+		(property "Description" "Digital Microphone MEMS (Silicon), 1.62V ~ 3.6V, 20Hz ~ 10kHz, Knowles SPH0645LM4H-B"
+			(at -0.254 0 0)
+			(effects
+				(font
+					(size 1.27 1.27)
+				)
+				(hide yes)
+			)
+		)
+		(property "ki_keywords" "digital mems microphone mic i2s  omnidirectional omni ICS-43434"
+			(at 0 0 0)
+			(effects
+				(font
+					(size 1.27 1.27)
+				)
+				(hide yes)
+			)
+		)
+		(property "ki_fp_filters" "*Mic*MEMS*"
+			(at 0 0 0)
+			(effects
+				(font
+					(size 1.27 1.27)
+				)
+				(hide yes)
+			)
+		)
+		(symbol "Mic_MEMS_TDK_ICS-43434_0_1"
+			(rectangle
+				(start -7.62 7.62)
+				(end 7.62 -7.62)
+				(stroke
+					(width 0.254)
+					(type default)
+				)
+				(fill
+					(type background)
+				)
+			)
+		)
+		(symbol "Mic_MEMS_TDK_ICS-43434_1_1"
+			(pin input line
+				(at -10.16 -2.54 0)
+				(length 2.54)
+				(name "WS"
+					(effects
+						(font
+							(size 1.27 1.27)
+						)
+					)
+				)
+				(number "1"
+					(effects
+						(font
+							(size 1.27 1.27)
+						)
+					)
+				)
+			)
+			(pin input line
+				(at -10.16 0 0)
+				(length 2.54)
+				(name "LR"
+					(effects
+						(font
+							(size 1.27 1.27)
+						)
+					)
+				)
+				(number "2"
+					(effects
+						(font
+							(size 1.27 1.27)
+						)
+					)
+				)
+			)
+			(pin power_in line
+				(at 0 -10.16 90)
+				(length 2.54)
+				(name "GND"
+					(effects
+						(font
+							(size 1.27 1.27)
+						)
+					)
+				)
+				(number "3"
+					(effects
+						(font
+							(size 1.27 1.27)
+						)
+					)
+				)
+			)
+			(pin input line
+				(at -10.16 2.54 0)
+				(length 2.54)
+				(name "SCK"
+					(effects
+						(font
+							(size 1.27 1.27)
+						)
+					)
+				)
+				(number "4"
+					(effects
+						(font
+							(size 1.27 1.27)
+						)
+					)
+				)
+			)
+			(pin power_in line
+				(at 0 10.16 270)
+				(length 2.54)
+				(name "VDD"
+					(effects
+						(font
+							(size 1.27 1.27)
+						)
+					)
+				)
+				(number "5"
+					(effects
+						(font
+							(size 1.27 1.27)
+						)
+					)
+				)
+			)
+			(pin output line
+				(at 10.16 0 180)
+				(length 2.54)
+				(name "SD"
+					(effects
+						(font
+							(size 1.27 1.27)
+						)
+					)
+				)
+				(number "6"
+					(effects
+						(font
+							(size 1.27 1.27)
+						)
+					)
+				)
+			)
+		)
+	)
 	(symbol "Micro_SD_Socket"
 		(exclude_from_sim no)
 		(in_bom yes)
diff --git a/fab.pretty/Mic_MEMS_TDK_ICS-43434.kicad_mod b/fab.pretty/Mic_MEMS_TDK_ICS-43434.kicad_mod
new file mode 100644
index 0000000000000000000000000000000000000000..5facd59864bfade2672460add546c1c12d6f56af
--- /dev/null
+++ b/fab.pretty/Mic_MEMS_TDK_ICS-43434.kicad_mod
@@ -0,0 +1,268 @@
+(footprint "Mic_MEMS_TDK_ICS-43434"
+	(version 20240108)
+	(generator "pcbnew")
+	(generator_version "8.0")
+	(layer "F.Cu")
+	(descr "HTTP://WWW.DIGIKEY.COM/PRODUCT-SEARCH/EN?KEYWORDS=423-1134-1-ND%09")
+	(tags "HTTP://WWW.DIGIKEY.COM/PRODUCT-SEARCH/EN?KEYWORDS=423-1134-1-ND%09")
+	(property "Reference" "REF**"
+		(at 0.45 -2.77 0)
+		(layer "F.SilkS")
+		(uuid "ce942120-8f12-49cc-b3c9-83899a2090a8")
+		(effects
+			(font
+				(size 1 1)
+				(thickness 0.15)
+			)
+		)
+	)
+	(property "Value" "REF**"
+		(at 0.49 2.96 0)
+		(layer "F.Fab")
+		(uuid "6286b0bf-1c8a-4001-9c33-bed6243ee412")
+		(effects
+			(font
+				(size 1 1)
+				(thickness 0.15)
+			)
+		)
+	)
+	(property "Footprint" ""
+		(at 0 0.8 0)
+		(layer "F.Fab")
+		(hide yes)
+		(uuid "2ee0b7c1-db90-45d8-a3d4-8e788479e6a3")
+		(effects
+			(font
+				(size 1.27 1.27)
+				(thickness 0.15)
+			)
+		)
+	)
+	(property "Datasheet" ""
+		(at 0 0.8 0)
+		(layer "F.Fab")
+		(hide yes)
+		(uuid "1e26c009-b3f3-4dd3-9e12-47e32ca6942e")
+		(effects
+			(font
+				(size 1.27 1.27)
+				(thickness 0.15)
+			)
+		)
+	)
+	(property "Description" ""
+		(at 0 0.8 0)
+		(layer "F.Fab")
+		(hide yes)
+		(uuid "aeb6e05d-6b92-4eb4-99d2-078aea79499b")
+		(effects
+			(font
+				(size 1.27 1.27)
+				(thickness 0.15)
+			)
+		)
+	)
+	(attr smd)
+	(fp_line
+		(start -1.5 -1.9)
+		(end -1.5 -1.6)
+		(stroke
+			(width 0.12)
+			(type solid)
+		)
+		(layer "F.SilkS")
+		(uuid "b6bea178-7205-4a48-8d98-f2ea23936e7a")
+	)
+	(fp_line
+		(start -1.5 -1.9)
+		(end 1.5 -1.9)
+		(stroke
+			(width 0.12)
+			(type solid)
+		)
+		(layer "F.SilkS")
+		(uuid "f34e383f-4a87-45a1-98d2-039ed6c74af9")
+	)
+	(fp_line
+		(start -1.5 2)
+		(end -1.5 1.7)
+		(stroke
+			(width 0.12)
+			(type solid)
+		)
+		(layer "F.SilkS")
+		(uuid "2dfed98b-62ab-4489-99ef-3ac75e472d19")
+	)
+	(fp_line
+		(start 1.5 -1.9)
+		(end 1.5 -1.6)
+		(stroke
+			(width 0.12)
+			(type solid)
+		)
+		(layer "F.SilkS")
+		(uuid "1cbdf7b5-1072-4be6-82d4-139c849e5e14")
+	)
+	(fp_line
+		(start 1.5 2)
+		(end -1.5 2)
+		(stroke
+			(width 0.12)
+			(type solid)
+		)
+		(layer "F.SilkS")
+		(uuid "d012a4ec-0ef2-4531-85b6-d0a0b59919e3")
+	)
+	(fp_line
+		(start 1.5 2)
+		(end 1.5 1.7)
+		(stroke
+			(width 0.12)
+			(type solid)
+		)
+		(layer "F.SilkS")
+		(uuid "8e14aa22-8315-49d0-8ef2-8db84980622e")
+	)
+	(fp_poly
+		(pts
+			(xy -1.7 -1.3) (xy -1.9 -1.5) (xy -1.9 -1.1)
+		)
+		(stroke
+			(width 0.1)
+			(type solid)
+		)
+		(fill solid)
+		(layer "F.SilkS")
+		(uuid "5d354465-c54f-4458-ac97-4f883d795c53")
+	)
+	(fp_line
+		(start -1.5 -1.9)
+		(end 1.5 -1.9)
+		(stroke
+			(width 0.05)
+			(type solid)
+		)
+		(layer "F.CrtYd")
+		(uuid "febbf7e7-98af-4772-aa2b-8c148e8d4e1a")
+	)
+	(fp_line
+		(start -1.5 2)
+		(end -1.5 -1.9)
+		(stroke
+			(width 0.05)
+			(type solid)
+		)
+		(layer "F.CrtYd")
+		(uuid "9c432d54-ebd9-45d4-b4fd-0b1fe6810d90")
+	)
+	(fp_line
+		(start 1.5 -1.9)
+		(end 1.5 2)
+		(stroke
+			(width 0.05)
+			(type solid)
+		)
+		(layer "F.CrtYd")
+		(uuid "ae99584c-dbb6-4ad6-9359-0bb76c149a55")
+	)
+	(fp_line
+		(start 1.5 2)
+		(end -1.5 2)
+		(stroke
+			(width 0.05)
+			(type solid)
+		)
+		(layer "F.CrtYd")
+		(uuid "5cd1a8d4-4003-4ca2-8e92-a7d6f2a32d0b")
+	)
+	(fp_line
+		(start -1.325 -1.7)
+		(end 1.325 -1.7)
+		(stroke
+			(width 0.05)
+			(type solid)
+		)
+		(layer "F.Fab")
+		(uuid "881fa75f-572f-4b88-a307-99641614a13a")
+	)
+	(fp_line
+		(start -1.325 1.84)
+		(end -1.325 -1.7)
+		(stroke
+			(width 0.05)
+			(type solid)
+		)
+		(layer "F.Fab")
+		(uuid "f8e21aba-edd6-46ba-96dd-adbe2ede0257")
+	)
+	(fp_line
+		(start 1.325 -1.7)
+		(end 1.325 1.84)
+		(stroke
+			(width 0.05)
+			(type solid)
+		)
+		(layer "F.Fab")
+		(uuid "f6472772-b5e1-461a-9bf6-955e010a6670")
+	)
+	(fp_line
+		(start 1.325 1.84)
+		(end -1.325 1.84)
+		(stroke
+			(width 0.05)
+			(type solid)
+		)
+		(layer "F.Fab")
+		(uuid "a3016729-ab23-48db-9074-8eccbb5ad01c")
+	)
+	(pad "1" smd rect
+		(at -0.9 -1.274)
+		(size 0.6 0.522)
+		(layers "F.Cu" "F.Paste" "F.Mask")
+		(uuid "3b3e5db6-1924-4a2b-ad53-4410e5541654")
+	)
+	(pad "2" smd rect
+		(at -0.9 -0.452)
+		(size 0.6 0.522)
+		(layers "F.Cu" "F.Paste" "F.Mask")
+		(uuid "79e5a8eb-349d-4196-a16f-7bb941f6b5b8")
+	)
+	(pad "3" thru_hole circle
+		(at 0 0.8)
+		(size 1.625 1.625)
+		(drill 1.025)
+		(layers "*.Cu" "*.Mask")
+		(remove_unused_layers no)
+		(uuid "b7a99c56-8800-43cf-a595-846e8ef20825")
+	)
+	(pad "4" smd rect
+		(at 0.9 -0.452)
+		(size 0.6 0.522)
+		(layers "F.Cu" "F.Paste" "F.Mask")
+		(uuid "ef0c7d88-3b8d-4e8e-8d2f-ee950648001b")
+	)
+	(pad "5" smd rect
+		(at 0.9 -1.274)
+		(size 0.6 0.522)
+		(layers "F.Cu" "F.Paste" "F.Mask")
+		(uuid "9ce0f294-bc27-4e8f-bb0a-d62b3f670d00")
+	)
+	(pad "6" smd rect
+		(at 0 -1.274)
+		(size 0.6 0.522)
+		(layers "F.Cu" "F.Paste" "F.Mask")
+		(uuid "d04d6e74-5461-410d-859c-c44be07479a9")
+	)
+	(model "${FAB}/fab.3dshapes/Mic_MEMS_TDK-ICS-43434.step"
+		(offset
+			(xyz 0 0 0)
+		)
+		(scale
+			(xyz 1 1 1)
+		)
+		(rotate
+			(xyz 0 0 0)
+		)
+	)
+)