E = Point(xAxis)
A = (-3.9250195432031245, 1.3227807478882534)
D = Intersect(Circle[E, A], Ray[E, E + (1, 0)])
f = Line(A, Line[E, D])
B = Mirror(E, f)
α = Angle(D, E, A)
C = Intersect(LineBisector[B, D], Line[D, Rotate[B, ((-α)) / 2, D]])
g = Segment(B, D)
poly1, a, b, c, d, e = Polygon(A, B, C, D, E)
M = Midpoint(C, D)
A' = Mirror(A, M)
B'_{2} = Mirror(B, M)
C' = Mirror(C, M)
D' = Mirror(D, M)
E' = Mirror(E, M)
poly1', a', b', c', d', e' = Polygon(A', B'_{2}, C', D', E')
u = Vector(A, B'_{2})
A'_{1} = Translate(A, u)
B'_{1} = Translate(B, u)
C'_{1} = Translate(C, u)
D'_{1} = Translate(D, u)
E'_{1} = Translate(E, u)
poly1'_{1}, a'_{1}, b'_{1}, c'_{1}, d'_{1}, e'_{1} = Polygon(A'_{1}, B'_{1}, C'_{1}, D'_{1}, E'_{1})
A'' = Translate(A', u)
B'' = Translate(B'_{2}, u)
C'' = Translate(C', u)
D'' = Translate(D', u)
E'' = Translate(E', u)
poly1'', a'', b'', c'', d'', e'' = Polygon(A'', B'', C'', D'', E'')
A''_{1} = Rotate(A', (-(180° - α)), D)
B' = Rotate(B'_{2}, (-(180° - α)), D)
C''_{1} = Rotate(C', (-(180° - α)), D)
D''_{1} = Rotate(D', (-(180° - α)), D)
E''_{1} = Rotate(E', (-(180° - α)), D)
poly1''_{1}, a''_{1}, b''_{1}, c''_{1}, d''_{1}, e''_{1} = Polygon(A''_{1}, B', C''_{1}, D''_{1}, E''_{1})
N = Midpoint(D, B')
G = Mirror(A''_{1}, N)
H = Mirror(B', N)
I = Mirror(C''_{1}, N)
J = Mirror(D''_{1}, N)
K = Mirror(E''_{1}, N)
poly2, g_1, h, i, j, k = Polygon(G, H, I, J, K)
L = Translate(A''_{1}, u)
N_{1} = Translate(B', u)
O = Translate(C''_{1}, u)
P = Translate(D''_{1}, u)
Q = Translate(E''_{1}, u)
poly3, l, n, o, p, q = Polygon(L, N_{1}, O, P, Q)
G' = Translate(G, u)
H' = Translate(H, u)
I' = Translate(I, u)
J' = Translate(J, u)
K' = Translate(K, u)
poly2', g', h', i', j', k' = Polygon(G', H', I', J', K')
v = Vector(E, D)
A'_{2} = Translate(A, Vector[(2 * v)])
F = Mirror(A'_{2}, A)
m = Segment(F, A'_{2})