S_1 = (5.42, 1.62)
B = (7.96, 0.84)
f = Line(S_1, B)
k_1 = Circle(S_1, B)
S_2 = Point(f)
k_2 = Circle(S_2, B)
D = (6.94, -3.22)
E = (5.56, 4.94)
g = Line(D, E)
F = (5.887200672335034, 3.2989553039430985)
ω = Circle(B, F)
d' = Mirror(k_2, ω)
c' = Mirror(k_1, ω)
g' = Mirror(g, ω)
G = Intersect(d', f, 1)
H = Intersect(c', f, 1)
h = OrthogonalLine(G, f)
i = OrthogonalLine(H, f)
a = 0 (slider from 0 to 6, step 1)
I = Midpoint(G, H)
j = Line(I, i)
J = Center(g')
K = Point(g')
k = Line(J, K)
e = Circle(K, Segment[G, I])
L = Intersect(e, k, 1)
p = Circle(J, L)
M = Intersect(e, k, 2)
q = Circle(J, M)
N, O = Intersect(p, j)
P, Q = Intersect(q, j)
r = Circle(O, Segment[G, I])
s = Circle(Q, Radius[r])
t = Circle(N, Radius[r])
c_1 = Circle(P, Radius[t])
l, m = Tangent(h, g')
k_5 = Mirror(r, ω)
k_3 = Mirror(t, ω)
k_6 = Mirror(s, ω)
k_4 = Mirror(c_1, ω)
k_7 = Mirror(l, ω)
k_8 = Mirror(m, ω)
S_3 = Center(k_3)
S_5 = Center(k_5)
S_6 = Center(k_6)
S_4 = Center(k_4)
S_7 = Center(k_7)
S_8 = Center(k_8)