5 points

parab

axes

foyers

C = (1.5292106286737004, -0.6397226317122887)
B = (-4.950044021830815, 0.7013757107965045)
M = Midpoint(B, C)
A = (-2.316490184241377, 3.598284932144875)
ab = Line(A, B)
ac = Line(A, C)
am = Line(A, M)
O_m, O_M = Intersect(Circle[A, 100], am)
OO = Segment(O_M, O_m)
bc = Line(B, C)
O = Point(OO)
E = Mirror(C, O)
ce = Line(E, C)
o_{BC} = Line(O, bc)
D = Mirror(B, O)
cd = Line(D, C)
bp = Line(B, ce)
I = Intersect(cd, bp)
ik = Line(I, bc)
K = Intersect(ac, ik)
ek = Line(E, K)
P = Intersect(bp, ek)
Γ = Conic(B, E, D, C, P)
Q = Midpoint(B, P)
oq = Line(Q, O)
F_P = Intersect(Mirror[Line[C, am], ac], Mirror[Line[B, am], ab])
F, F' = Focus(Γ)
lieu1 = Locus(F', O)
lieu2 = Locus(F, O)
dirP = Line(Mirror[F_P, ab], Mirror[F_P, ac])
para = Parabola(F_P, dirP)
a = false
d = false
W = Midpoint(B, O)
c_W = Circle(W, B)
A_1 = Mirror(O, OrthogonalLine[W, am])
A_2 = Mirror(O, OrthogonalLine[W, o_{BC}])
C_1 = Mirror(O, OrthogonalLine[W, ce])
C_2 = Mirror(O, OrthogonalLine[W, oq])
cc' = Line(C_2, C_1)
aa' = Line(A_1, A_2)
S = Intersect(aa', cc')
sw = Line(S, W)
Y, X = Intersect(c_W, sw)
ox = Line(O, X)
oy = Line(O, Y)
b = false
ff' = Line(F', F)
T = Intersect(ac, ff')
n_B = OrthogonalLine(C, ac)
N = Intersect(ff', n_B)
c_{TN} = Circle(Midpoint[T, N], N)
TT = Intersect(c_{TN}, Semicircle[O, Midpoint[T, N]])
OT = Segment(O, TT)
c_{OT} = Circle(O, TT)
c = false