O = Intersect(xAxis, yAxis)
A = Point(xAxis)
B = Mirror(A, O)
c = Circle(O, A)
a = Segment(A, B)
C = Point(a)
K = Rotate(A, 90*°, O)
b = Ray(K, C)
d = OrthogonalLine(O, b)
D = Mirror(K, d)
A' = Rotate(A, 10*°, K)
B' = Rotate(B, -10*°, K)
e = CircleArc(K, B', A')
C_1 = Midpoint(A, C)
C_2 = Midpoint(C, B)
h = Line(C_1, K)
i = Line(K, C_2)
M = Mirror(A, h)
N = Mirror(B, i)
g = Circle(C_2, C)
f = Circle(C_1, C)
j = Segment(D, A)
k = Segment(D, B)
l = Line(A, M)
m = Line(B, N)
G = Intersect(m, j)
H = Intersect(l, k)
n = Segment(G, B)
p = Segment(A, H)
Ω = Midpoint(G, H)
q = Circle(Ω, G)
r = Segment(G, H)
s = OrthogonalLine(C_1, j)
t = OrthogonalLine(C_2, k)
E = Mirror(A, s)
F = Mirror(B, t)
a_1 = Segment(C, F)
b_1 = Segment(E, C)
c_1 = Segment(G, C)
d_1 = Segment(H, C)
e_1 = OrthogonalLine(G, a)
f_1 = OrthogonalLine(H, a)
I = Intersect(e_1, a)
J = Intersect(f_1, a)
g_1 = Segment(G, I)
h_1 = Segment(H, J)
B'_1 = Rotate(B, 90*°, C_2)
k_1 = Circle(B'_1, C)