O: (0, 0)
ap = 187.0863946778734 (slider from -5 to 500, step 1)
hp = 194.3781660481432 (slider from -5 to 200, step 1)
d = 233.238075793812 (slider from -5 to 500, step 1)
a = 140 (slider from -5 to 200, step 1)
A: ((-a), 0)
B: ((-ap), hp)
C: (0, d)
B' = Mirror(B, yAxis)
A' = Mirror(A, yAxis)
coronacion: y = 233.238075793812 - (0.00111024129302081 * x^(2))
f = Segment(B, A)
g = Segment(A, O)
B'_1 = Mirror(B, yAxis)
A'_1 = Mirror(A, yAxis)
f' = Segment(B'_1, A'_1)
A'_2 = Mirror(A, yAxis)
O' = Mirror(O, yAxis)
g' = Segment(A'_2, O')
h = Line(B, A)
α = Angle(h, yAxis)
c = CircumcircleArc(B, C, B')
dina3, i, j, k, l = Polygon((-144.2323452091741, -37.93929986108938), (275.76765479082576, -37.93929986108938), (275.76765479082576, 259.0607001389111), (-144.2323452091741, 259.0607001389111))
m = Segment(C, O)
distanceBA = Distance(B, A)
TextBA: Name[B] + (Name[A]) + " = " + distanceBA
n = OrthogonalLine(B, h)
p = OrthogonalLine(A, h)
e = Circle(A, 120)
E = Intersect(e, p, 1)
q = Line(E, h)
r = Line(O, E)
β = Angle(g, r)
b = Segment(A, E)
dina3' = Rotate(dina3, 20.41°, C)
L = Point(g)
D = Intersect(p, q)
G = Intersect(h, n)
k_1 = Segment(G, D)
H = Point(g)
N = Intersect(coronacion, c, 3)
h_1 = Line(H, N)
P = Midpoint(k)
u = Vector(P, N)
dina3'_1 = Translate(dina3, u)
B'_2 = Mirror(B, m)
E' = Mirror(E, m)
A'_3 = Mirror(A, m)
E'_1 = Mirror(E, m)
b' = Segment(A'_3, E'_1)
G' = Mirror(G, m)
D' = Mirror(D, m)
j_1 = Segment(G', D')
L' = Mirror(L, m)
f_1 = Line(A, h_1)
I, K = Intersect(f_1, dina3'_1)
c_1 = Circle(A, I)
g_1 = PolyLine(H, I, A)
H' = Mirror(H, h_1)
I' = Mirror(I, h_1)
A'_4 = Mirror(A, h_1)
i_1 = PolyLine(H', I', A'_4)
distanceEA = Distance(E, A)
F = PointIn(dina3'_1)
s = Line(F, f_1)
J = Intersect(s, k_1)
M = Intersect(s, b)
Q = Intersect(c_1, b, 1)
t = Mirror(c_1, h_1)
poly1, e_1, j_2, m_1 = Polygon(J, M, E)
J' = Mirror(J, s)
M' = Mirror(M, s)
E'_2 = Mirror(E, s)
poly1', e'_2, j', m' = Polygon(J', M', E'_2)
v = Vector(E'_2, M)
J'' = Translate(J', v)
M'' = Translate(M', v)
R = Translate(E'_2, v)
J''_1 = Translate(J', v)
M''_1 = Translate(M', v)
S = Translate(E'_2, v)
poly1'', s_1, j''_1, m''_1 = Polygon(J''_1, M''_1, S)
γ = Angle(J, M, J'')
T = Rotate(J''_1, (-(90°)), M)
U = Rotate(M''_1, (-(90°)), M)
S' = Rotate(S, (-(90°)), M)
poly1''', s', t_1, u_1 = Polygon(T, U, S')
l_1 = Line(T, U)
V = Intersect(s, l_1)
distanceMJ = Distance(M, J)
TextMJ: Name[M] + (Name[J]) + " = " + distanceMJ
distanceII' = Distance(I, I')
TextII': Name[I] + (Name[I']) + " = " + distanceII'
distanceJE = Distance(J, E)
TextJE: Name[J] + (Name[E]) + " = " + distanceJE
distanceB'A' = Distance(B', A')
TextB'A': Name[B'] + (Name[A']) + " = " + distanceB'A'
distanceCH = Distance(C, H)
TextCH: Name[C] + (Name[H]) + " = " + distanceCH
perimeterdina3'1 = Perimeter(dina3'_1)
Pointdina3'1 = PointIn(dina3'_1)
n_1 = solapa2lados(I, A, M)
p_1 = Mirror(n_1, h_1)
distanceBB' = Distance(B, B')
Midpoint(B, B')
TextBB': Name[B] + (Name[B']) + " = " + distanceBB'
distanceEh1 = Distance(E, h_1)
Midpoint(E, ClosestPoint[h_1, E])
TextEh1: Name[E] + (Name[h_1]) + " = " + distanceEh1

Tool: solapa
select two points
Input: G, I
Output: i_1

c_1 = Circle(G, I)
d_1 = Circle(I, G)
J = Intersect(c_1, d_1, 1)
g_1 = Line(G, J)
h_1 = Line(I, J)
distanceGI = Distance(G, I)
e_1 = Circle(G, distanceGI / 10)
p_1 = Circle(I, distanceGI / 10)
K = Intersect(e_1, g_1, 2)
L = Intersect(p_1, h_1, 2)
i_1 = PolyLine(G, K, L, I)

Tool: solapa2lados
select three points
Input: G, N, P
Output: m_1

h_1 = Line(G, N)
i_1 = Line(N, P)
e_1 = Circle(N, G)
Q = Intersect(e_1, i_1, 2)
j_1 = Segment(Q, G)
R = Midpoint(j_1)
k_1 = Line(N, R)
distanceGN = Distance(G, N)
p_1 = Circle(G, distanceGN / 10)
q_1 = Circle(N, distanceGN / 10)
n_1 = OrthogonalLine(N, h_1)
s_1 = OrthogonalLine(G, h_1)
U = Intersect(q_1, n_1, 2)
V = Intersect(p_1, s_1, 2)
t_1 = Line(U, V)
r_1 = Circle(G, N)
S = Intersect(e_1, r_1, 2)
l_1 = Line(S, G)
T = Intersect(t_1, l_1)
W = Intersect(k_1, t_1)
m_1 = PolyLine(G, T, W, N)