diff --git a/Mechanical Parts/Fasteners/Washers/Metric/ISO7090_M3_flat_washer.fcstd b/Mechanical Parts/Fasteners/Washers/Metric/ISO7090_M3_flat_washer.fcstd
new file mode 100644
index 00000000..1c8eff11
Binary files /dev/null and b/Mechanical Parts/Fasteners/Washers/Metric/ISO7090_M3_flat_washer.fcstd differ
diff --git a/Mechanical Parts/Fasteners/Washers/Metric/ISO7090_M3_flat_washer.step b/Mechanical Parts/Fasteners/Washers/Metric/ISO7090_M3_flat_washer.step
new file mode 100644
index 00000000..259ce2cc
--- /dev/null
+++ b/Mechanical Parts/Fasteners/Washers/Metric/ISO7090_M3_flat_washer.step	
@@ -0,0 +1,292 @@
+ISO-10303-21;
+HEADER;
+FILE_DESCRIPTION(('FreeCAD Model'),'2;1');
+FILE_NAME(
+  '/Users/diegotrap/Dropbox/3Dprinter/ISO7090_M3_flat_washer.step',
+  '2015-05-09T18:46:38',('Author'),(''),
+  'Open CASCADE STEP processor 6.8','FreeCAD','Unknown');
+FILE_SCHEMA(('AUTOMOTIVE_DESIGN_CC2 { 1 2 10303 214 -1 1 5 4 }'));
+ENDSEC;
+DATA;
+#1 = APPLICATION_PROTOCOL_DEFINITION('committee draft',
+  'automotive_design',1997,#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('Pad','Pad','',(#8));
+#8 = MECHANICAL_CONTEXT('',#2,'mechanical');
+#9 = PRODUCT_DEFINITION_CONTEXT('part definition',#2,'design');
+#10 = ADVANCED_BREP_SHAPE_REPRESENTATION('',(#11,#15),#213);
+#11 = AXIS2_PLACEMENT_3D('',#12,#13,#14);
+#12 = CARTESIAN_POINT('',(0.,0.,0.));
+#13 = DIRECTION('',(0.,0.,1.));
+#14 = DIRECTION('',(1.,0.,-0.));
+#15 = MANIFOLD_SOLID_BREP('',#16);
+#16 = CLOSED_SHELL('',(#17,#113,#199,#206));
+#17 = ADVANCED_FACE('',(#18),#32,.T.);
+#18 = FACE_BOUND('',#19,.F.);
+#19 = EDGE_LOOP('',(#20,#50,#81,#82));
+#20 = ORIENTED_EDGE('',*,*,#21,.T.);
+#21 = EDGE_CURVE('',#22,#24,#26,.T.);
+#22 = VERTEX_POINT('',#23);
+#23 = CARTESIAN_POINT('',(3.5,0.,0.));
+#24 = VERTEX_POINT('',#25);
+#25 = CARTESIAN_POINT('',(3.5,0.,0.5));
+#26 = SEAM_CURVE('',#27,(#31,#43),.PCURVE_S1.);
+#27 = LINE('',#28,#29);
+#28 = CARTESIAN_POINT('',(3.5,0.,0.));
+#29 = VECTOR('',#30,1.);
+#30 = DIRECTION('',(0.,0.,1.));
+#31 = PCURVE('',#32,#37);
+#32 = CYLINDRICAL_SURFACE('',#33,3.5);
+#33 = AXIS2_PLACEMENT_3D('',#34,#35,#36);
+#34 = CARTESIAN_POINT('',(0.,0.,0.));
+#35 = DIRECTION('',(-0.,-0.,-1.));
+#36 = DIRECTION('',(1.,0.,0.));
+#37 = DEFINITIONAL_REPRESENTATION('',(#38),#42);
+#38 = LINE('',#39,#40);
+#39 = CARTESIAN_POINT('',(-0.,0.));
+#40 = VECTOR('',#41,1.);
+#41 = DIRECTION('',(-0.,-1.));
+#42 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#43 = PCURVE('',#32,#44);
+#44 = DEFINITIONAL_REPRESENTATION('',(#45),#49);
+#45 = LINE('',#46,#47);
+#46 = CARTESIAN_POINT('',(-6.28318530718,0.));
+#47 = VECTOR('',#48,1.);
+#48 = DIRECTION('',(-0.,-1.));
+#49 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#50 = ORIENTED_EDGE('',*,*,#51,.T.);
+#51 = EDGE_CURVE('',#24,#24,#52,.T.);
+#52 = SURFACE_CURVE('',#53,(#58,#65),.PCURVE_S1.);
+#53 = CIRCLE('',#54,3.5);
+#54 = AXIS2_PLACEMENT_3D('',#55,#56,#57);
+#55 = CARTESIAN_POINT('',(0.,0.,0.5));
+#56 = DIRECTION('',(0.,0.,1.));
+#57 = DIRECTION('',(1.,0.,0.));
+#58 = PCURVE('',#32,#59);
+#59 = DEFINITIONAL_REPRESENTATION('',(#60),#64);
+#60 = LINE('',#61,#62);
+#61 = CARTESIAN_POINT('',(-0.,-0.5));
+#62 = VECTOR('',#63,1.);
+#63 = DIRECTION('',(-1.,0.));
+#64 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#65 = PCURVE('',#66,#71);
+#66 = PLANE('',#67);
+#67 = AXIS2_PLACEMENT_3D('',#68,#69,#70);
+#68 = CARTESIAN_POINT('',(3.5,0.,0.5));
+#69 = DIRECTION('',(0.,0.,-1.));
+#70 = DIRECTION('',(-1.,0.,0.));
+#71 = DEFINITIONAL_REPRESENTATION('',(#72),#80);
+#72 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#73,#74,#75,#76,#77,#78,#79),
+.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((1,2,2,2,2,1),(
+    -2.094395102393,0.,2.094395102393,4.188790204786,6.28318530718,
+8.377580409573),.UNSPECIFIED.) CURVE() GEOMETRIC_REPRESENTATION_ITEM() 
+RATIONAL_B_SPLINE_CURVE((1.,0.5,1.,0.5,1.,0.5,1.)) REPRESENTATION_ITEM(
+  '') );
+#73 = CARTESIAN_POINT('',(0.,0.));
+#74 = CARTESIAN_POINT('',(0.,6.062177826491));
+#75 = CARTESIAN_POINT('',(5.25,3.031088913246));
+#76 = CARTESIAN_POINT('',(10.5,8.572527594031E-16));
+#77 = CARTESIAN_POINT('',(5.25,-3.031088913246));
+#78 = CARTESIAN_POINT('',(5.773159728051E-15,-6.062177826491));
+#79 = CARTESIAN_POINT('',(0.,0.));
+#80 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#81 = ORIENTED_EDGE('',*,*,#21,.F.);
+#82 = ORIENTED_EDGE('',*,*,#83,.F.);
+#83 = EDGE_CURVE('',#22,#22,#84,.T.);
+#84 = SURFACE_CURVE('',#85,(#90,#97),.PCURVE_S1.);
+#85 = CIRCLE('',#86,3.5);
+#86 = AXIS2_PLACEMENT_3D('',#87,#88,#89);
+#87 = CARTESIAN_POINT('',(0.,0.,0.));
+#88 = DIRECTION('',(0.,0.,1.));
+#89 = DIRECTION('',(1.,0.,0.));
+#90 = PCURVE('',#32,#91);
+#91 = DEFINITIONAL_REPRESENTATION('',(#92),#96);
+#92 = LINE('',#93,#94);
+#93 = CARTESIAN_POINT('',(-0.,0.));
+#94 = VECTOR('',#95,1.);
+#95 = DIRECTION('',(-1.,0.));
+#96 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#97 = PCURVE('',#98,#103);
+#98 = PLANE('',#99);
+#99 = AXIS2_PLACEMENT_3D('',#100,#101,#102);
+#100 = CARTESIAN_POINT('',(3.5,0.,0.));
+#101 = DIRECTION('',(0.,0.,-1.));
+#102 = DIRECTION('',(-1.,0.,0.));
+#103 = DEFINITIONAL_REPRESENTATION('',(#104),#112);
+#104 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#105,#106,#107,#108,#109,#110
+,#111),.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((1,2,2,2,2,1),(
+    -2.094395102393,0.,2.094395102393,4.188790204786,6.28318530718,
+8.377580409573),.UNSPECIFIED.) CURVE() GEOMETRIC_REPRESENTATION_ITEM() 
+RATIONAL_B_SPLINE_CURVE((1.,0.5,1.,0.5,1.,0.5,1.)) REPRESENTATION_ITEM(
+  '') );
+#105 = CARTESIAN_POINT('',(0.,0.));
+#106 = CARTESIAN_POINT('',(0.,6.062177826491));
+#107 = CARTESIAN_POINT('',(5.25,3.031088913246));
+#108 = CARTESIAN_POINT('',(10.5,8.572527594031E-16));
+#109 = CARTESIAN_POINT('',(5.25,-3.031088913246));
+#110 = CARTESIAN_POINT('',(5.773159728051E-15,-6.062177826491));
+#111 = CARTESIAN_POINT('',(0.,0.));
+#112 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#113 = ADVANCED_FACE('',(#114),#128,.F.);
+#114 = FACE_BOUND('',#115,.T.);
+#115 = EDGE_LOOP('',(#116,#146,#172,#173));
+#116 = ORIENTED_EDGE('',*,*,#117,.T.);
+#117 = EDGE_CURVE('',#118,#120,#122,.T.);
+#118 = VERTEX_POINT('',#119);
+#119 = CARTESIAN_POINT('',(1.6,0.,0.));
+#120 = VERTEX_POINT('',#121);
+#121 = CARTESIAN_POINT('',(1.6,0.,0.5));
+#122 = SEAM_CURVE('',#123,(#127,#139),.PCURVE_S1.);
+#123 = LINE('',#124,#125);
+#124 = CARTESIAN_POINT('',(1.6,0.,0.));
+#125 = VECTOR('',#126,1.);
+#126 = DIRECTION('',(0.,0.,1.));
+#127 = PCURVE('',#128,#133);
+#128 = CYLINDRICAL_SURFACE('',#129,1.6);
+#129 = AXIS2_PLACEMENT_3D('',#130,#131,#132);
+#130 = CARTESIAN_POINT('',(0.,0.,0.));
+#131 = DIRECTION('',(-0.,-0.,-1.));
+#132 = DIRECTION('',(1.,0.,0.));
+#133 = DEFINITIONAL_REPRESENTATION('',(#134),#138);
+#134 = LINE('',#135,#136);
+#135 = CARTESIAN_POINT('',(-0.,0.));
+#136 = VECTOR('',#137,1.);
+#137 = DIRECTION('',(-0.,-1.));
+#138 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#139 = PCURVE('',#128,#140);
+#140 = DEFINITIONAL_REPRESENTATION('',(#141),#145);
+#141 = LINE('',#142,#143);
+#142 = CARTESIAN_POINT('',(-6.28318530718,0.));
+#143 = VECTOR('',#144,1.);
+#144 = DIRECTION('',(-0.,-1.));
+#145 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#146 = ORIENTED_EDGE('',*,*,#147,.T.);
+#147 = EDGE_CURVE('',#120,#120,#148,.T.);
+#148 = SURFACE_CURVE('',#149,(#154,#161),.PCURVE_S1.);
+#149 = CIRCLE('',#150,1.6);
+#150 = AXIS2_PLACEMENT_3D('',#151,#152,#153);
+#151 = CARTESIAN_POINT('',(0.,0.,0.5));
+#152 = DIRECTION('',(0.,0.,1.));
+#153 = DIRECTION('',(1.,0.,0.));
+#154 = PCURVE('',#128,#155);
+#155 = DEFINITIONAL_REPRESENTATION('',(#156),#160);
+#156 = LINE('',#157,#158);
+#157 = CARTESIAN_POINT('',(-0.,-0.5));
+#158 = VECTOR('',#159,1.);
+#159 = DIRECTION('',(-1.,0.));
+#160 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#161 = PCURVE('',#66,#162);
+#162 = DEFINITIONAL_REPRESENTATION('',(#163),#171);
+#163 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#164,#165,#166,#167,#168,#169
+,#170),.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((1,2,2,2,2,1),(
+    -2.094395102393,0.,2.094395102393,4.188790204786,6.28318530718,
+8.377580409573),.UNSPECIFIED.) CURVE() GEOMETRIC_REPRESENTATION_ITEM() 
+RATIONAL_B_SPLINE_CURVE((1.,0.5,1.,0.5,1.,0.5,1.)) REPRESENTATION_ITEM(
+  '') );
+#164 = CARTESIAN_POINT('',(1.9,0.));
+#165 = CARTESIAN_POINT('',(1.9,2.77128129211));
+#166 = CARTESIAN_POINT('',(4.3,1.385640646055));
+#167 = CARTESIAN_POINT('',(6.7,3.918869757272E-16));
+#168 = CARTESIAN_POINT('',(4.3,-1.385640646055));
+#169 = CARTESIAN_POINT('',(1.9,-2.77128129211));
+#170 = CARTESIAN_POINT('',(1.9,0.));
+#171 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#172 = ORIENTED_EDGE('',*,*,#117,.F.);
+#173 = ORIENTED_EDGE('',*,*,#174,.F.);
+#174 = EDGE_CURVE('',#118,#118,#175,.T.);
+#175 = SURFACE_CURVE('',#176,(#181,#188),.PCURVE_S1.);
+#176 = CIRCLE('',#177,1.6);
+#177 = AXIS2_PLACEMENT_3D('',#178,#179,#180);
+#178 = CARTESIAN_POINT('',(0.,0.,0.));
+#179 = DIRECTION('',(0.,0.,1.));
+#180 = DIRECTION('',(1.,0.,0.));
+#181 = PCURVE('',#128,#182);
+#182 = DEFINITIONAL_REPRESENTATION('',(#183),#187);
+#183 = LINE('',#184,#185);
+#184 = CARTESIAN_POINT('',(-0.,0.));
+#185 = VECTOR('',#186,1.);
+#186 = DIRECTION('',(-1.,0.));
+#187 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#188 = PCURVE('',#98,#189);
+#189 = DEFINITIONAL_REPRESENTATION('',(#190),#198);
+#190 = ( BOUNDED_CURVE() B_SPLINE_CURVE(2,(#191,#192,#193,#194,#195,#196
+,#197),.UNSPECIFIED.,.F.,.F.) B_SPLINE_CURVE_WITH_KNOTS((1,2,2,2,2,1),(
+    -2.094395102393,0.,2.094395102393,4.188790204786,6.28318530718,
+8.377580409573),.UNSPECIFIED.) CURVE() GEOMETRIC_REPRESENTATION_ITEM() 
+RATIONAL_B_SPLINE_CURVE((1.,0.5,1.,0.5,1.,0.5,1.)) REPRESENTATION_ITEM(
+  '') );
+#191 = CARTESIAN_POINT('',(1.9,0.));
+#192 = CARTESIAN_POINT('',(1.9,2.77128129211));
+#193 = CARTESIAN_POINT('',(4.3,1.385640646055));
+#194 = CARTESIAN_POINT('',(6.7,3.918869757272E-16));
+#195 = CARTESIAN_POINT('',(4.3,-1.385640646055));
+#196 = CARTESIAN_POINT('',(1.9,-2.77128129211));
+#197 = CARTESIAN_POINT('',(1.9,0.));
+#198 = ( GEOMETRIC_REPRESENTATION_CONTEXT(2) 
+PARAMETRIC_REPRESENTATION_CONTEXT() REPRESENTATION_CONTEXT('2D SPACE',''
+  ) );
+#199 = ADVANCED_FACE('',(#200,#203),#98,.T.);
+#200 = FACE_BOUND('',#201,.F.);
+#201 = EDGE_LOOP('',(#202));
+#202 = ORIENTED_EDGE('',*,*,#83,.T.);
+#203 = FACE_BOUND('',#204,.T.);
+#204 = EDGE_LOOP('',(#205));
+#205 = ORIENTED_EDGE('',*,*,#174,.T.);
+#206 = ADVANCED_FACE('',(#207,#210),#66,.F.);
+#207 = FACE_BOUND('',#208,.T.);
+#208 = EDGE_LOOP('',(#209));
+#209 = ORIENTED_EDGE('',*,*,#51,.T.);
+#210 = FACE_BOUND('',#211,.F.);
+#211 = EDGE_LOOP('',(#212));
+#212 = ORIENTED_EDGE('',*,*,#147,.T.);
+#213 = ( GEOMETRIC_REPRESENTATION_CONTEXT(3) 
+GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#217)) GLOBAL_UNIT_ASSIGNED_CONTEXT
+((#214,#215,#216)) REPRESENTATION_CONTEXT('Context #1',
+  '3D Context with UNIT and UNCERTAINTY') );
+#214 = ( LENGTH_UNIT() NAMED_UNIT(*) SI_UNIT(.MILLI.,.METRE.) );
+#215 = ( NAMED_UNIT(*) PLANE_ANGLE_UNIT() SI_UNIT($,.RADIAN.) );
+#216 = ( NAMED_UNIT(*) SI_UNIT($,.STERADIAN.) SOLID_ANGLE_UNIT() );
+#217 = UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(1.E-07),#214,
+  'distance_accuracy_value','confusion accuracy');
+#218 = PRODUCT_TYPE('part',$,(#7));
+#219 = MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION('',(#220)
+  ,#213);
+#220 = STYLED_ITEM('color',(#221),#15);
+#221 = PRESENTATION_STYLE_ASSIGNMENT((#222,#228));
+#222 = SURFACE_STYLE_USAGE(.BOTH.,#223);
+#223 = SURFACE_SIDE_STYLE('',(#224));
+#224 = SURFACE_STYLE_FILL_AREA(#225);
+#225 = FILL_AREA_STYLE('',(#226));
+#226 = FILL_AREA_STYLE_COLOUR('',#227);
+#227 = COLOUR_RGB('',0.800000011921,0.800000011921,0.800000011921);
+#228 = CURVE_STYLE('',#229,POSITIVE_LENGTH_MEASURE(0.1),#227);
+#229 = DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
+ENDSEC;
+END-ISO-10303-21;
diff --git a/Mechanical Parts/Fasteners/Washers/Metric/ISO7090_M3_flat_washer.stl b/Mechanical Parts/Fasteners/Washers/Metric/ISO7090_M3_flat_washer.stl
new file mode 100644
index 00000000..fc228500
Binary files /dev/null and b/Mechanical Parts/Fasteners/Washers/Metric/ISO7090_M3_flat_washer.stl differ