O = Point(yAxis)
B_1 = Point(xAxis)
c = Circle(O, B_1)
C_1 = Point(c)
D = Point(c)
a = Ray(O, D)
b = Ray(O, C_1)
B = Point(b)
A = Point(a)
A'_1 = Mirror(O, A)
F'_1 = Mirror(A, A'_1)
A''_1 = Mirror(A'_1, F'_1)
D' = Mirror(D, A''_1)
A'''_1 = Mirror(A''_1, D')
D'' = Mirror(D', A'''_1)
A'_2 = Mirror(O, B)
E' = Mirror(B, A'_2)
A''_2 = Mirror(A'_2, E')
E'' = Mirror(E', A''_2)
A'''_2 = Mirror(A''_2, E'')
G = Mirror(A'''_2, E'')
H = Mirror(A'''_2, E'')
E''' = Mirror(E'', A'''_2)
I = Mirror(A'''_2, E''')
J = Mirror(E''', I)
I' = Mirror(I, J)
J' = Mirror(J, I')
J''_1 = Mirror(J', I')
J''_2 = Mirror(J', I')
I'' = Mirror(I', J')
F_1 = Mirror(J', I'')
d = Segment(F_1, A)
abstandAE = Distance(O, B)
TextAE: "\overline{" + (Name[O]) + (Name[B]) + "} \, = \, " + abstandAE
abstandAJ'' = Distance(O, F_1)
TextAJ'': "\overline{" + (Name[O]) + (Name[F_1]) + "} \, = \, " + abstandAJ''
F''_1 = Mirror(F'_1, A''_1)
K = Mirror(A''_1, F''_1)
F_2 = Mirror(F''_1, K)
e = Segment(B, F_2)
f = Segment(F_1, F_2)
C_2 = Intersect(d, e)
O'_1 = Mirror(O, C_2)
C' = Mirror(C_2, O'_1)
O''_1 = Mirror(O'_1, C')
F_3 = Mirror(C', O''_1)
g = Segment(O, F_3)
h = Segment(O, F_2)
i = Segment(F_1, O)
O'_2 = Mirror(O, A)
A' = Mirror(A, O'_2)
O''_2 = Mirror(O'_2, A')
A'' = Mirror(A', O''_2)
O'''_1 = Mirror(O''_2, A'')
A''' = Mirror(A'', O'''_1)
E = Mirror(O'''_1, A''')
F_A = Mirror(A''', E)
O'_3 = Mirror(O, B)
B' = Mirror(B, O'_3)
O''_3 = Mirror(O'_3, B')
B'' = Mirror(B', O''_3)
O''' = Mirror(O''_3, B'')
B''' = Mirror(B'', O''')
L = Mirror(O''', B''')
F_B = Mirror(B''', L)
j = Segment(O, F_A)
k = Segment(O, F_B)
l = Segment(B, F_A)
m = Segment(A, F_B)
C = Intersect(l, m)
O' = Mirror(O, C)
F' = Mirror(C, O')
O'' = Mirror(O', F')
F_C = Mirror(F', O'')
n = Segment(F_B, F_A)
p = Segment(O, F_C)
q = Segment(A, F_C)
r = Segment(B, F_C)
F = Intersect(l, q)
s = Ray(F_B, F)
M = Intersect(s, r)
N = Intersect(m, r)
t = Ray(F_A, M)
a_1 = Ray(F_A, N)
P = Intersect(p, q)
Q = Intersect(k, a_1)
R = Intersect(t, k)
S = Intersect(j, s)
b_1 = Segment(F_B, S)
c_1 = Segment(Q, F_A)
d_1 = Segment(R, F_A)
T = Intersect(m, d_1)
U = Intersect(b_1, c_1)
e_1 = Line(B, A)
f_1 = Line(Q, S)
V = (-0.4958778842916294, 1.370167994658615)
g_1 = Line(F, V)
h_1 = Line(U, n)
W = Intersect(c_1, q)
Z = Intersect(d_1, q)
A_1 = Intersect(p, d_1)
i_1 = Ray(F_B, W)
D_1 = Point(c_1)
j_1 = Ray(F_B, D_1)
E_1 = Intersect(i_1, j)
G_1 = Intersect(j_1, j)
k_1 = Segment(F_B, E_1)
l_1 = Segment(F_B, G_1)
m_1 = Line(R, E_1)