cn
Yesterday I fixed my keys’ clip in 9 lines in OpenSCAD:
difference() { union() { cylinder(d1=8,d2=10,3); translate([0,0,3]) cylinder(d=10,6); translate([0,0,9]) cylinder(d1=10,d2=8,3); } translate([0,0,-0.1]) cylinder(d=5.6,12.3,$fn=36);}