A = Intersect(xAxis, yAxis)
B = (4, 0)
poly1, f, g, h, i, C, D = Polygon(A, B, 4)
E = Midpoint(h)
c = Circle(E, D)
j = OrthogonalLine(E, h)
F, G = Intersect(c, j)
poly2, k, l, m, n, H, I = Polygon(D, F, 4)
poly3, p, q, r, s, J, K = Polygon(F, C, 4)
L = Midpoint(m)
M = Midpoint(r)
d = Circle(L, I)
e = Circle(M, K)
t = OrthogonalLine(L, m)
a = OrthogonalLine(M, r)
N, O = Intersect(d, t)
P, Q = Intersect(e, a)
poly4, b, f_1, g_1, h_1, R, S = Polygon(I, N, 4)
poly5, i_1, j_1, k_1, l_1, T, U = Polygon(N, H, 4)
poly6, m_1, n_1, p_1, q_1, V, W = Polygon(K, P, 4)
poly7, r_1, s_1, t_1, a_1, Z, A_1 = Polygon(P, J, 4)
B_1 = Midpoint(g_1)
C_1 = Midpoint(k_1)
D_1 = Midpoint(p_1)
E_1 = Midpoint(t_1)
c_1 = Circle(B_1, S)
d_1 = Circle(C_1, U)
e_1 = Circle(D_1, W)
c_2 = Circle(E_1, A_1)
b_1 = OrthogonalLine(B_1, g_1)
f_2 = OrthogonalLine(C_1, k_1)
g_2 = OrthogonalLine(D_1, p_1)
F_1, G_1 = Intersect(c_1, b_1)
H_1, I_1 = Intersect(d_1, f_2)
J_1, K_1 = Intersect(e_1, g_2)
L_1, M_1 = Intersect(c_2, b_1)
poly8, h_2, i_2, j_2, k_2, N_1, O_1 = Polygon(S, F_1, 4)
poly9, l_2, m_2, n_2, p_2, P_1, Q_1 = Polygon(F_1, R, 4)
poly10, q_2, r_2, s_2, t_2, R_1, S_1 = Polygon(U, H_1, 4)
poly11, a_2, b_2, d_2, e_2, T_1, U_1 = Polygon(H_1, T, 4)
poly12, f_3, g_3, h_3, i_3, V_1, W_1 = Polygon(W, J_1, 4)
poly13, j_3, k_3, l_3, m_3, Z_1, A_2 = Polygon(J_1, V, 4)
poly14, n_3, p_3, q_3, r_3, B_2, C_2 = Polygon(A_1, M_1, 4)
poly15, s_3, t_3, a_3, b_3, D_2, E_2 = Polygon(M_1, Z, 4)