G

O = (27.26013854396651, -0.30032162587675143)
e = Line((1, y(O)), (0, y(O)))
G = Point(Line[(0, 5.45569), (1, 5.45569)])
B = Point(e)
c = Circle(O, B)
C = Point(c)
D = Point(c)
d = CircumcircleArc(C, B, D)
F = Midpoint(B, O)
a = Ray(B, G)
G' = Mirror(G, e)
b = Line(B, G')
f = Line((x(B), y(G)), G)
H = Intersect(c, f, 1)
g = Line(H, F)
I = Intersect(b, g)
J = Intersect(e, Line[I, (x(I), y(I) - 1)])
E: (x(G), y(O))
u = Segment(E, G)
v = Segment(J, I)
k: ((x(E) - x(F)) / abs(x(E) - x(F)) * (y(G) - y(O)) / abs(y(G) - y(O)))
M: (x(J) + (v / 2.2 * k), y(J))
N: (x(J) - (v / 1.8 * k), y(J))
K: (x(E) - (u / 2.2 * (y(G) - y(O)) / abs(y(G) - y(O))), y(E))
L: (x(E) + (u / 1.8 * (y(G) - y(O)) / abs(y(G) - y(O))), y(E))