Sam Loyd

O = Intersect(xAxis, yAxis)
A_{1} = Point(yAxis)
B_{1} = (1, 3)
C = (1, 2)
D = (2, 2)
E = Point(xAxis)
poly1, o, a, b, c, d, e = Polygon(O, A_{1}, B_{1}, C, D, E)
l1 = Sequence(Polygon[Translate[O, Vector[(k * Vector[O, E])]], Translate[A_{1}, Vector[(k * Vector[O, E])]], Translate[B_{1}, Vector[(k * Vector[O, E])]], Translate[C, Vector[(k * Vector[O, E])]], Translate[D, Vector[(k * Vector[O, E])]], Translate[E, Vector[(k * Vector[O, E])]]], k, 1, 3)
F = (1, 5)
G = (3, 5)
A = Point(l1)
I_{1} = Point(l1)
poly2, f, g, h, i, d_1, c_1 = Polygon(F, G, A, I_{1}, D, C)
W_{2} = Midpoint(A, D)
u = Vector(I_{1}, A)
H' = Translate(W_{2}, u)
j = Segment(W_{2}, H')
W_{1} = Point(j)
I_0 = Translate(W_{1}, Vector[(2.5 * u)])
k = Ray(I_0, u)
I = Point(k)
p = Circle(I, W_{1})
q: y = 0
r: y = 5
P = Intersect(p, q, 1)
K = Intersect(p, r, 1)
s = CircleArc(I, K, P)
t: y = 2.5
B = Point(q)
M = Rotate(A, 90°, Midpoint[A, B])
m = Segment(M, B)
P' = Translate(P, Vector[(-u)])
P'' = Mirror(P', P)
WW: W_{1}
I' = Translate(I, Vector[(-u)])
II: I
l = Segment(A, M)
I_S: W_{1} + (sqrt(26) / 2 * u)
l2 = Sequence(Polygon[Translate[F, Vector[(k * Vector[O, E])]], Translate[G, Vector[(k * Vector[O, E])]], Translate[A, Vector[(k * Vector[O, E])]], Translate[I_{1}, Vector[(k * Vector[O, E])]], Translate[D, Vector[(k * Vector[O, E])]], Translate[C, Vector[(k * Vector[O, E])]]], k, 1, 5)
l3 = Sequence(Translate[s, Vector[((k - 5) * u)]], k, 1, 12)
W: W_{2}