C = (0, -3)
D: (x(C) + 100, y(C))
m = Ray(C, D)
A = Point(m)
a(x, y) = x > x(C) ∧ x < x(A) ∧ y > y(C)
E = PointIn(a)
γ = Angle(A, C, E)
k = Segment(C, A)
C' = Rotate(C, (-γ), A)
δ = Angle(C', A, C)
h = Ray(A, C')
l = Ray(C, E)
G = Intersect(h, l)
p = Circle(G, 1.5)
H, I = Intersect(p, l)
i = Segment(G, A)
B = (-1.9870202406441608, -4.825614035087686)
j = Segment(If[y(I) > y(H), H, I], A)
g = Segment(If[y(I) > y(H), H, I], C)
f = Segment(If[y(I) > y(H), H, I], G)