$fn = 100; scale(v = [10, 10, 10]) { difference() { union() { translate(v = [0, 13.9, 0]) { rotate(a = [180, 0, 0]) { union() { difference() { union() { difference() { union() { translate(v = [1.25, 1.25, 0]) { cube(size = [33, 11.4, 1.25]); } translate(v = [0, 0, 2.3]) { translate(v = [1.25, 1.25, 0]) { cube(size = [33, 11.4, 1.25]); } } } translate(v = [1.25, 2, 2.3]) { cube(size = [33, 9.9, 1.25]); } } translate(v = [1.25, 0, 0]) { cube(size = [33, 1.25, 3.55]); } translate(v = [0, 12.65, 0]) { translate(v = [1.25, 0, 0]) { cube(size = [33, 1.25, 3.55]); } } cube(size = [1.25, 13.9, 3.55]); } translate(v = [16.4, 11.5, 1.75]) { cube(size = [1.75, 2.5, 2.5]); } } translate(v = [1.25, 3.5, 1.25]) { cube(size = [1, 6.85, 2.3]); } } } } translate(v = [-2.78, 0, 0]) { cube(size = [39.81, 13.9, 22]); } } rotate(a = [0, -8, 0]) { translate(v = [-2.78, 0, 0]) { cube(size = [2.78, 20, 50]); } } union() { translate(v = [34.25, 0, 0]) { rotate(a = [0, -8, 0]) { cube(size = [10, 20, 50]); } } translate(v = [34.25, 0, 0]) { cube(size = [10, 20, 50]); } } union() { translate(v = [3.78, -5, 10]) { rotate(a = [-90, 0, 0]) { cylinder(d = 7, h = 50); } } translate(v = [11.7025, 0, 0]) { translate(v = [3.78, -5, 10]) { rotate(a = [-90, 0, 0]) { cylinder(d = 7, h = 50); } } } translate(v = [11.7025, 0, 0]) { union() { translate(v = [3.78, -5, 10]) { rotate(a = [-90, 0, 0]) { cylinder(d = 7, h = 50); } } translate(v = [11.7025, 0, 0]) { translate(v = [3.78, -5, 10]) { rotate(a = [-90, 0, 0]) { cylinder(d = 7, h = 50); } } } } } } translate(v = [-2.78, 21.9, 10]) { rotate(a = [0, 90, 0]) { cylinder(h = 40, r = 13); } } translate(v = [-2.78, -8, 10]) { rotate(a = [0, 90, 0]) { cylinder(h = 40, r = 13); } } } }