1multmatrix([[1, 0, 0, -20], [0, 1, 0, 5], [0, 0, 1, 0], [0, 0, 0, 1]]) {
2	group() {
3		minkowski(convexity = 0) {
4			difference() {
5				square(size = [10, 10], center = true);
6				square(size = [8, 8], center = true);
7			}
8			circle($fn = 0, $fa = 12, $fs = 2, r = 2);
9		}
10	}
11}
12multmatrix([[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1]]) {
13	group() {
14		minkowski(convexity = 0) {
15			difference() {
16				square(size = [10, 10], center = false);
17				square(size = [5, 5], center = false);
18			}
19			circle($fn = 0, $fa = 12, $fs = 2, r = 5);
20		}
21	}
22}
23multmatrix([[1, 0, 0, 25], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1]]) {
24	group() {
25		minkowski(convexity = 0) {
26			square(size = [10, 10], center = false);
27			circle($fn = 0, $fa = 12, $fs = 2, r = 5);
28		}
29	}
30}
31multmatrix([[1, 0, 0, 0], [0, 1, 0, -20], [0, 0, 1, 0], [0, 0, 0, 1]]) {
32	minkowski(convexity = 0) {
33		square(size = [10, 10], center = false);
34	}
35}
36multmatrix([[1, 0, 0, -20], [0, 1, 0, -20], [0, 0, 1, 0], [0, 0, 0, 1]]) {
37	minkowski(convexity = 0) {
38		square(size = [10, 10], center = false);
39		square(size = [2, 2], center = true);
40		circle($fn = 0, $fa = 12, $fs = 2, r = 1);
41	}
42}
43multmatrix([[1, 0, 0, -5], [0, 1, 0, -45], [0, 0, 1, 0], [0, 0, 0, 1]]) {
44	multmatrix([[4, 0, 0, 0], [0, 4, 0, 0], [0, 0, 4, 0], [0, 0, 0, 1]]) {
45		group() {
46			group() {
47				render(convexity = 1) {
48					difference() {
49						square(size = [1e+06, 1e+06], center = true);
50						minkowski(convexity = 0) {
51							circle($fn = 0, $fa = 12, $fs = 2, r = 0.3);
52							group() {
53								render(convexity = 1) {
54									difference() {
55										square(size = [1e+06, 1e+06], center = true);
56										minkowski(convexity = 0) {
57											circle($fn = 0, $fa = 12, $fs = 2, r = 0.4);
58											circle($fn = 0, $fa = 12, $fs = 2, r = 4);
59										}
60									}
61								}
62							}
63						}
64					}
65				}
66			}
67		}
68	}
69}
70multmatrix([[1, 0, 0, 30], [0, 1, 0, -30], [0, 0, 1, 0], [0, 0, 0, 1]]) {
71	multmatrix([[4, 0, 0, 0], [0, 4, 0, 0], [0, 0, 4, 0], [0, 0, 0, 1]]) {
72		group() {
73			group() {
74				render(convexity = 1) {
75					difference() {
76						square(size = [1e+06, 1e+06], center = true);
77						minkowski(convexity = 0) {
78							circle($fn = 0, $fa = 12, $fs = 2, r = 0.3);
79							group() {
80								render(convexity = 1) {
81									difference() {
82										square(size = [1e+06, 1e+06], center = true);
83										minkowski(convexity = 0) {
84											difference() {
85												circle($fn = 0, $fa = 12, $fs = 2, r = 0.4);
86												circle($fn = 0, $fa = 12, $fs = 2, r = 0.399);
87											}
88											circle($fn = 0, $fa = 12, $fs = 2, r = 4);
89										}
90									}
91								}
92							}
93						}
94					}
95				}
96			}
97		}
98	}
99}
100multmatrix([[1, 0, 0, 30], [0, 1, 0, -45], [0, 0, 1, 0], [0, 0, 0, 1]]) {
101	minkowski(convexity = 0) {
102		circle($fn = 0, $fa = 12, $fs = 2, r = 1);
103		circle($fn = 0, $fa = 12, $fs = 2, r = 0);
104	}
105}
106multmatrix([[1, 0, 0, 30], [0, 1, 0, 30], [0, 0, 1, 0], [0, 0, 0, 1]]) {
107	minkowski(convexity = 0) {
108		circle($fn = 0, $fa = 12, $fs = 2, r = 0);
109		circle($fn = 0, $fa = 12, $fs = 2, r = 5);
110	}
111}
112multmatrix([[1, 0, 0, -30], [0, 1, 0, 30], [0, 0, 1, 0], [0, 0, 0, 1]]) {
113	minkowski(convexity = 0) {
114		circle($fn = 0, $fa = 12, $fs = 2, r = 0);
115	}
116}
117
118