C = (-3.0385999235391887, 3.2726639187580298)
B = (-3.0385999235391887, 0.7726639187580299)
a = Segment(C, B)
b = OrthogonalLine(B, a)
c = OrthogonalLine(C, a)
D = Point(c)
d = OrthogonalLine(D, c)
A = Intersect(b, d)
poly1, a_1, c_1, d_1, b_1 = Polygon(C, D, A, B)
P = (-1.0139899371211454, 2.1542443900148065)
e = LineBisector(P, A)
F = Intersect(e, c_1)
G = Intersect(e, d_1)
poly2, g, f, d_2 = Polygon(F, A, G)
H = Intersect(e, a_1)
poly3, g_1, d_3, c_2, h = Polygon(G, A, D, H)
I = Intersect(e, b_1)
poly4, i, b_2, d_4, f_1 = Polygon(I, B, A, F)
F'_1 = Mirror(F, e)
D'_1 = Mirror(A, e)
G'_1 = Mirror(G, e)
poly2', g', f', d' = Polygon(F'_1, D'_1, G'_1)
G' = Mirror(G, e)
D'_2 = Mirror(A, e)
C' = Mirror(D, e)
H' = Mirror(H, e)
poly3', g'_1, d'_1, c', h' = Polygon(G', D'_2, C', H')
I' = Mirror(I, e)
B' = Mirror(B, e)
D' = Mirror(A, e)
F' = Mirror(F, e)
poly4', i', b', d'_2, f'_1 = Polygon(I', B', D', F')
j = Segment(F', G')
k = Segment(H', G')
A_2 = Segment(I', F')