+ slothole(wallholesz, wallholeslot, wallt, csunk=false);
+ }
+
+ translate([basel-0.01, 0, 0]) {
+ rotate([90,0,90]) {
+ linear_extrude(height=webt+0.02) {
+ polygon([[-basew, 0],
+ [-basew, baset],
+ [-webw, wallh],
+ [0, wallh],
+ [0, 0]]);
+ }
+ }
+ }
+
+ if (pad) {
+ translate([basel+webt, -padw, wallh-padt]) {
+ difference(){
+ cube([padl, padw, padt]);
+ translate([padl/2, padw/2, -1])
+ cylinder(r=padholesz/2 + holeslop, h=padt+2);
+ }
+ }
+ }
+}
+
+module BracketR(){ ////toplevel
+ rotate([-90,0,0]) Bracket();
+}
+
+module BracketL(){ ////toplevel
+ mirror([1,0,0]) BracketR();
+}
+
+protinnerh = 37.5;
+protinnerw = 53;
+protd = 45;
+protbaset = 4;
+protwallt = 2;
+protlidt = protwallt;
+protwingd = 28;
+protwingw = 23;
+
+module RearCableProtector(){
+ for (x = [-protwallt, protinnerw]) {
+ translate([x, 0, 0]) {
+ cube([protwallt, protd, protinnerh+protlidt]);
+ }