group() {
	multmatrix([[1, 0, 0, -25], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1]]) {
		group() {
			minkowski(convexity = 0) {
				difference() {
					square(size = [10, 10], center = false);
					multmatrix([[1, 0, 0, 2], [0, 1, 0, 2], [0, 0, 1, 0], [0, 0, 0, 1]]) {
						square(size = [6, 6], center = false);
					}
				}
				circle($fn = 0, $fa = 12, $fs = 1, r = 2);
			}
		}
	}
	multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1]]) {
		group() {
			minkowski(convexity = 0) {
				difference() {
					square(size = [10, 10], center = false);
					square(size = [5, 5], center = false);
				}
				circle($fn = 0, $fa = 12, $fs = 1, r = 5);
			}
		}
	}
	multmatrix([[1, 0, 0, 25], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1]]) {
		group() {
			minkowski(convexity = 0) {
				square(size = [10, 10], center = false);
				circle($fn = 0, $fa = 12, $fs = 1, r = 5);
			}
		}
	}
	multmatrix([[1, 0, 0, -25], [0, 1, 0, 25], [0, 0, 1, 0], [0, 0, 0, 1]]) {
		group() {
			minkowski(convexity = 0) {
				difference() {
					cube(size = [10, 10, 5], center = false);
					multmatrix([[1, 0, 0, 2], [0, 1, 0, 2], [0, 0, 1, -2], [0, 0, 0, 1]]) {
						cube(size = [6, 6, 10], center = false);
					}
				}
				cylinder($fn = 0, $fa = 12, $fs = 1, h = 1, r1 = 2, r2 = 2, center = false);
			}
		}
	}
	multmatrix([[1, 0, 0, 0], [0, 1, 0, 25], [0, 0, 1, 0], [0, 0, 0, 1]]) {
		group() {
			minkowski(convexity = 0) {
				difference() {
					cube(size = [10, 10, 5], center = false);
					cube(size = [5, 5, 5], center = false);
				}
				cylinder($fn = 0, $fa = 12, $fs = 1, h = 5, r1 = 5, r2 = 5, center = false);
			}
		}
	}
	multmatrix([[1, 0, 0, 25], [0, 1, 0, 25], [0, 0, 1, 0], [0, 0, 0, 1]]) {
		group() {
			minkowski(convexity = 0) {
				cube(size = [10, 10, 5], center = false);
				cylinder($fn = 0, $fa = 12, $fs = 1, h = 5, r1 = 5, r2 = 5, center = false);
			}
		}
	}
}
