A = Intersect(xAxis, yAxis)
B = Point(xAxis)
t = 0.12 (slider from 0 to 1, step 0.005)
Vieleck1, f, g, h, i, C, D = Polygon(A, B, 4)
c = Semicircle(D, C)
J = Midpoint(B, D)
s: t - sin(((2 * π) * t)) / 2 / π
f_1 = Line(B, C)
E = Point(c)
Vieleck2, j, k, l, m, F, G = Polygon(E, C, 4)
Vieleck3, n, p, q, r, H, I = Polygon(D, E, 4)
a = Segment(I, F)
b = Ray(E, J)
K = Intersect(f, b)
d = Segment(E, K)
e = Line(B, C)
L = Intersect(e, a)
d1, l_1, c_1, f_2 = Polygon(C, F, L)
d2, e_1, c_2, l_2 = Polygon(C, L, E)
g_1 = Line(H, g)
P = Intersect(g_1, a)
Q = Intersect(h, d)
d3, h_1, p_1, e_2 = Polygon(P, E, H)
d4, h_2, i_1, p_2 = Polygon(I, P, H)
j_1 = Line(I, D)
M = Intersect(j_1, d)
u = Vector(E, M)
C' = Translate(C, Vector[(s * u)])
F' = Translate(F, Vector[(s * u)])
L' = Translate(L, Vector[(s * u)])
d1', l', c', f' = Polygon(C', F', L')
C'_1 = Translate(C, Vector[(s * u)])
L'_1 = Translate(L, Vector[(s * u)])
E' = Translate(E, Vector[(s * u)])
d2', e', c'_1, l'_1 = Polygon(C'_1, L'_1, E')
P' = Translate(P, Vector[(s * u)])
E'_1 = Translate(E, Vector[(s * u)])
H' = Translate(H, Vector[(s * u)])
d3', h', p', e'_1 = Polygon(P', E'_1, H')
I' = Translate(I, Vector[(s * u)])
P'_1 = Translate(P, Vector[(s * u)])
H'_1 = Translate(H, Vector[(s * u)])
d4', h'_1, i', p'_1 = Polygon(I', P'_1, H'_1)
I'' = Rotate(I', (((-s) * 270))°, H')
N = Rotate(P'_1, (((-s) * 270))°, H')
O = Rotate(H'_1, (((-s) * 270))°, H')
d4'', o, i'', n_1 = Polygon(I'', N, O)
R = Rotate(C'_1, (((-s) * 90))°, E')
S = Rotate(L'_1, (((-s) * 90))°, E')
E'' = Rotate(E', (((-s) * 90))°, E')
d2'', e'', r_1, s_1 = Polygon(R, S, E'')
C'' = Rotate(C', (((-s) * 90))°, E')
F'' = Rotate(F', (((-s) * 90))°, E')
L'' = Rotate(L', (((-s) * 90))°, E')
d1'', l'', c'', f'' = Polygon(C'', F'', L'')
C''' = Rotate(C'', (((-s) * 270))°, R)
F''' = Rotate(F'', (((-s) * 270))°, R)
L''' = Rotate(L'', (((-s) * 270))°, R)
d1''', l''', c''', f''' = Polygon(C''', F''', L''')
d5 = If(t < 0.5, Polygon[Rotate[C'', (((-3 * s) * 180))°, R], Rotate[F'', (((-3 * s) * 180))°, R], Rotate[L'', (((-3 * s) * 180))°, R]], Polygon[Rotate[C'', -270°, R], Rotate[F'', -270°, R], Rotate[L'', -270°, R]])