O = Intersect(xAxis, yAxis)
Q = Point(l)
b = OrthogonalLine(Q, l)
c = Segment(O, Q)
d = LineBisector(O, Q)
P = Intersect(d, b)
a = OrthogonalLine(P, yAxis)
e = OrthogonalLine(P, xAxis)
D = Intersect(a, l)
f = OrthogonalLine(D, xAxis)
A = Intersect(e, xAxis)
B = Intersect(f, xAxis)
C = Intersect(l, xAxis)
g = Segment(O, P)
h = Segment(P, Q)
i = Segment(A, P)
j = Segment(P, D)
k = Segment(D, B)