a = 0.05 (slider from -0.05 to 0.2, step 0.01)
L = (-0.012018852457820244, 4.872879669716153)
f(x) = If[-15 ≤ x ≤ 15, (a * x^(2))]
gl1 = Ray(L, Vector[(1, tan(-15°))])
gl2 = Ray(L, Vector[(1, tan(-30°))])
gl3 = Ray(L, Vector[(1, tan(-45°))])
gl4: y - y(L) = (tan(-60°) * (x - x(L)))
gl5: y - y(L) = (tan(-75°) * (x - x(L)))
gl6: 0 = x - x(L)
gl7: y - y(L) = (tan(-105°) * (x - x(L)))
gl8: y - y(L) = (tan(-120°) * (x - x(L)))
gl9 = Ray(L, Vector[(-1, (-tan(-135°)))])
gl10 = Ray(L, Vector[(-1, (-tan(-150°)))])
gl11 = Ray(L, Vector[(-1, (-tan(-165°)))])
gl12: y - y(L) = 0
A, B = Intersect(f, gl12)
C, P = Intersect(f, gl11)
D, O = Intersect(f, gl10)
E = Intersect(f, gl9)
F = Intersect(f, gl8)
G = Intersect(f, gl7)
H = Intersect(f, gl6)
I = Intersect(f, gl5)
J = Intersect(f, gl4)
K = Intersect(f, gl3)
M = Intersect(f, gl2)
N_{1}, N_{2} = Intersect(f, gl1)
g = Segment(L, A)
i = Segment(L, D)
j = Segment(L, E)
k = Segment(L, F)
l = Segment(L, G)
m = Segment(L, H)
n = Segment(L, I)
p = Segment(L, J)
q = Segment(L, K)
r = Segment(L, M)
t = Segment(L, B)
b = Tangent(A, f)
d = Tangent(D, f)
e = Tangent(E, f)
f_1 = Tangent(F, f)
g_1 = Tangent(G, f)
h_1 = Tangent(G, f)
i_1 = Tangent(H, f)
j_1 = Tangent(I, f)
k_1 = Tangent(J, f)
l_1 = Tangent(K, f)
m_1 = Tangent(M, f)
p_1 = Tangent(B, f)
q_1 = OrthogonalLine(A, b)
s_1 = OrthogonalLine(D, d)
t_1 = OrthogonalLine(E, e)
a_1 = OrthogonalLine(F, f_1)
b_1 = OrthogonalLine(G, h_1)
c_1 = OrthogonalLine(H, i_1)
d_1 = OrthogonalLine(I, j_1)
e_1 = OrthogonalLine(B, p_1)
g_2 = OrthogonalLine(M, m_1)
h_2 = OrthogonalLine(K, l_1)
i_2 = OrthogonalLine(J, k_1)
L' = Mirror(L, q_1)
A' = Mirror(A, q_1)
g' = Segment(L', A')
L'_{2} = Mirror(L, s_1)
D' = Mirror(D, s_1)
i' = Segment(L'_{2}, D')
L'_{3} = Mirror(L, t_1)
E' = Mirror(E, t_1)
j' = Segment(L'_{3}, E')
L'_{4} = Mirror(L, a_1)
F' = Mirror(F, a_1)
k' = Segment(L'_{4}, F')
L'_{5} = Mirror(L, b_1)
G' = Mirror(G, b_1)
l' = Segment(L'_{5}, G')
L'_{6} = Mirror(L, d_1)
I' = Mirror(I, d_1)
n' = Segment(L'_{6}, I')
L'_{7} = Mirror(L, i_2)
J' = Mirror(J, i_2)
p' = Segment(L'_{7}, J')
L'_{8} = Mirror(L, h_2)
K' = Mirror(K, h_2)
q' = Segment(L'_{8}, K')
L'_{9} = Mirror(L, g_2)
M' = Mirror(M, g_2)
r' = Segment(L'_{9}, M')
L'_{11} = Mirror(L, e_1)
B' = Mirror(B, e_1)
t' = Segment(L'_{11}, B')
L'_{12} = Mirror(L, c_1)
H' = Mirror(H, c_1)
m' = Segment(L'_{12}, H')
j_2 = Ray(A', L')
l_2 = Ray(D', L'_{2})
m_2 = Ray(E', L'_{3})
n_2 = Ray(F', L'_{4})
p_2 = Ray(I', L'_{6})
q_2 = Ray(J', L'_{7})
r_2 = Ray(K', L'_{8})
s_2 = Ray(M', L'_{9})
a_2 = Ray(B', L'_{11})
b_2 = Ray(H', L'_{12})
c_2 = Ray(G', L'_{5})
h = Segment(L, C)
c = Segment(L, N_{1})
r_1 = Tangent(C, f)
k_2 = Tangent(N_{1}, f)
d_2 = OrthogonalLine(C, r_1)
e_2 = OrthogonalLine(N_{1}, k_2)
L'_{1} = Mirror(L, d_2)
C' = Mirror(C, d_2)
h' = Segment(L'_{1}, C')
L'_{13} = Mirror(L, e_2)
Q = Mirror(N_{1}, e_2)
c' = Segment(L'_{13}, Q)
f_3 = Ray(C, L'_{1})
g_3 = Ray(N_{1}, L'_{13})