cylinder(r=screwcsinkdia/2 / (sqrt(3)/2), h=100, $fn=6);
 }
 
-module PegTemplate(){
+module PegTemplate(apex){
   for (mx=[0,1]) for (my=[0,1]) {
       mirror([mx,0,0]) mirror([0,my,0])
        polygon([[-0.1,      -0.1],
                 [pegstem/2, -0.1],
                 [pegstem/2, pegstemheight/2],
                 [peghead/2, pegheight    /2],
-                [-0.1,      pegheight    /2]]);
+                [-0.1,      pegheight    /2 + apex]]);
     }
 }
 
 module BlockPegSlot(){
   translate([recessblockwidth/2, pegrecess - 0.5*peglen, -height]){
     rotate([-90,0,0]) linear_extrude(height=totaldepth){
-      PegTemplate();
+      PegTemplate(peghead/2 * 1.2);
     }
   }
 }
   rotate([90,0,0]) {
     linear_extrude(height=peglen-pegslopl) {
       intersection(){
-       translate([-dx,-dy,0]) PegTemplate();
-       translate([-dx,+dy,0]) PegTemplate();
-       translate([+dx,+dy,0]) PegTemplate();
-       translate([+dx,-dy,0]) PegTemplate();
+       translate([-dx,-dy,0]) PegTemplate(0);
+       translate([-dx,+dy,0]) PegTemplate(0);
+       translate([+dx,+dy,0]) PegTemplate(0);
+       translate([+dx,-dy,0]) PegTemplate(0);
       }
     }
   }
 module CoverPegSlot(coverlen){
   translate([recessblockwidth/2, 0, -1]){
     linear_extrude(height= 1 + pegrecess + 0.5*peglen){
-      PegTemplate();
+      PegTemplate(0);
     }
   }
 }