A = (-2.963279259235834, 2.2718738763678745)
B = (-0.8251040229492536, 2.93893600163923)
f = Line(A, B)
C = (-0.9664125487576897, 0.8392596012122417)
D = (-3.2687666690626167, 0.968605338308024)
g = Line(C, D)
O = Intersect(f, g)
l = Line(A, C)
m = Line(D, B)
G = Intersect(l, m)
q1, d, g_1, a, o = Polygon(D, G, A, O)
L = Point(q1)
P: L + (0, -0.001)
h = Line(P, C)
i = Line(A, P)
F = Intersect(g, i)
E = Intersect(f, h)
eq1: (((x(O) - x(D))^(2) + (y(O) - y(D))^(2)) * ((x - x(C))^(2) + (y - y(C))^(2))) = (((x(O) - x(C))^(2) + (y(O) - y(C))^(2)) * ((x - x(D))^(2) + (y - y(D))^(2)))
eq2: (((x(O) - x(B))^(2) + (y(O) - y(B))^(2)) * ((x - x(A))^(2) + (y - y(A))^(2))) = (((x(O) - x(A))^(2) + (y(O) - y(A))^(2)) * ((x - x(B))^(2) + (y - y(B))^(2)))
F' = Mirror(F, eq1)
E' = Mirror(E, eq2)
j = Line(E', D)
k = Line(B, F')
Q = Intersect(j, k)
H = Point(f)
I = Point(g)
J = Point(g)
K = Point(f)
poly1, h_1, b, g_2, c, i_1 = Polygon(H, B, G, C, I)
t1, k_1, o_1, j_1 = Polygon(O, J, K)
Q1 = NaN