--- /dev/null
+MM = 1;
+
+CUT_WD = 10*MM;
+BORE_DIAM = 6*MM;
+SPACER_HT = 7.25*MM;
+HEIGHT = SPACER_HT + 3*MM;
+THICK = 16*MM;
+WIDTH = 18*MM;
+
+BIG = 20*MM;
+
+$fa = 0.1;
+$fs = 0.2*MM;
+
+
+difference() {
+ intersection() {
+ translate([-WIDTH/2, -THICK/2, 0])
+ cube([WIDTH, THICK, HEIGHT]);
+ cylinder(h = HEIGHT, r = norm([CUT_WD/2, WIDTH/2]));
+ rotate([0, 90, 0])
+ translate([0, 0, -BIG/2])
+ cylinder(h = BIG, r = norm([HEIGHT, CUT_WD/2]));
+ }
+ union() {
+ translate([-BIG/2, -CUT_WD/2, SPACER_HT])
+ cube([BIG, CUT_WD, BIG]);
+ translate([0, 0, -BIG/3])
+ cylinder(h = BIG, r = BORE_DIAM/2);
+ }
+}