A = Point(yAxis)
B = Point(yAxis)
B' = Mirror(B, A)
u = Vector(A, B)
v = Vector(A, B')
C = Point(xAxis)
C' = Mirror(C, A)
D = Point(xAxis)
E = Point(xAxis)
D' = Mirror(D, E)
F = (22, 10)
F' = Mirror(F, E)
w = Vector(E, F)
z = Vector(E, F')
G = (18, 2)
a = Vector(D, G)
b = Line(G, E)
c = Line(G, A)
d = Line(G, C)
H = Intersect(d, yAxis)
e = OrthogonalLine(E, xAxis)
I = Intersect(d, e)
J = Intersect(c, e)
K = Intersect(b, yAxis)
f = Ray(K, E)
g = Line(F, f)
h = Line(F', f)
L = Intersect(h, yAxis)
M = Intersect(g, yAxis)
i = Ray(F', L)
j = Ray(F, M)
F'_1 = Mirror(F, F)
M' = Mirror(M, F)
j' = Ray(F'_1, M')
F'' = Mirror(F', F')
L' = Mirror(L, F')
i' = Ray(F'', L')
k = Line(A, xAxis)
l = Line(A, k)
m = Line(H, l)
N = Intersect(c, m)
n = Line(N, u)
O = Intersect(k, l)
P = Intersect(k, l)
Q = Intersect(k, l)
R = Intersect(k, l)
S = Intersect(k, l)
T = Intersect(k, l)
U = Intersect(k, l)
V = Intersect(k, l)
W = Intersect(n, k)
p = Vector(W, N)
q = Segment(N, J)
r = Segment(N, H)
s = Segment(H, I)
t = Segment(N, K)
a_1 = Line(I, j')
b_1 = Line(J, j')
A_1 = (15.567195847632995, 7.204223170376324)
B_1 = (16.480012916619486, 8.50256021512526)
D_1 = Intersect(b_1, k)
E_1 = Intersect(a_1, k)
c_1 = Ray(I, E_1)
d_1 = Ray(J, D_1)