O: (0, 0, 0)
A: (0.36, -0.8, -0.48)
A_{0}: (0.768, 0.28, -0.576)
C: (-0.6, 0.64, -0.48)
D: (0.576, 0.168, 0.8)
u = Vector(A_{0}, C)
Q = Translate(C, u)
B = Translate(D, u)
Y = Translate(B, u)
K = Translate(A, u)
L = Translate(K, u)
v = Vector(A_{0}, A)
P = Translate(A, v)
N = Translate(K, v)
M = Translate(L, v)
R = Translate(D, v)
S = Translate(B, v)
T = Translate(Y, v)
E = Translate(R, v)
F = Translate(S, v)
G = Translate(T, v)
w = Vector(A_{0}, D)
U = Translate(D, w)
H = Translate(R, w)
V = Translate(E, w)
W = Translate(F, w)
I = Translate(S, w)
X = Translate(B, w)
A_{1} = Translate(G, w)
J = Translate(T, w)
Z = Translate(Y, w)
f = Segment(I, S)
g = Segment(F, S)
h = Segment(T, S)
B_1 = Midpoint(f)
C_1 = Midpoint(g)
D_1 = Midpoint(h)
P_{ST} = OrthogonalPlane(D_1, h)
P_{SI} = OrthogonalPlane(B_1, f)
P_{SF} = OrthogonalPlane(C_1, g)
i = Segment(R, S)
j = Segment(K, S)
k = Segment(B, S)
E_1 = Midpoint(i)
F_1 = Midpoint(k)
G_1 = Midpoint(j)
P_{SR} = OrthogonalPlane(E_1, i)
P_{SB} = OrthogonalPlane(F_1, k)
P_{SK} = OrthogonalPlane(G_1, j)
l = IntersectPath(P_{ST}, P_{SF})
m = IntersectPath(P_{SB}, P_{ST})
n = IntersectPath(P_{SR}, P_{SB})
p = IntersectPath(P_{SF}, P_{SR})
q = IntersectPath(P_{SR}, P_{SI})
r = IntersectPath(P_{SR}, P_{SK})
s = IntersectPath(P_{ST}, P_{SI})
t = IntersectPath(P_{ST}, P_{SK})
a = IntersectPath(P_{SB}, P_{SI})
b = IntersectPath(P_{SB}, P_{SK})
c = IntersectPath(P_{SF}, P_{SI})
d = IntersectPath(P_{SF}, P_{SK})
H_1 = Intersect(q, a)
I_1 = Intersect(p, q)
e = Segment(H_1, I_1)
J_1 = Intersect(c, s)
f_1 = Segment(I_1, J_1)
K_1 = Intersect(s, m)
g_1 = Segment(J_1, K_1)
h_1 = Segment(K_1, H_1)
L_1 = Intersect(d, t)
i_1 = Segment(J_1, L_1)
M_1 = Intersect(b, t)
j_1 = Segment(L_1, M_1)
N_1 = Intersect(b, r)
k_1 = Segment(M_1, N_1)
O_1 = Intersect(d, r)
l_1 = Segment(N_1, O_1)
m_1 = Segment(O_1, L_1)
n_1 = Segment(O_1, I_1)
p_1 = Segment(N_1, H_1)
q_1 = Segment(K_1, M_1)
r_1 = Segment(S, H)
s_1 = Segment(S, J)
P_1 = Midpoint(r_1)
Q_1 = Midpoint(s_1)
P_{SH} = OrthogonalPlane(P_1, r_1)
P_{SJ} = OrthogonalPlane(Q_1, s_1)
t_1 = Segment(L, S)
R_1 = Midpoint(t_1)
P_{SL} = OrthogonalPlane(R_1, t_1)
S_1 = Intersect(n_1, P_{SH})
T_1 = Intersect(p_1, P_{SH})
U_1 = Intersect(f_1, P_{SH})
V_1 = Intersect(h_1, P_{SH})
W_1 = Intersect(q_1, P_{SL})
Z_1 = Intersect(k_1, P_{SL})
A_2 = Intersect(i_1, P_{SL})
B_2 = Intersect(m_1, P_{SL})
a_1 = Segment(T_1, S_1)
b_1 = Segment(S_1, U_1)
c_1 = Segment(U_1, V_1)
d_1 = Segment(V_1, T_1)
e_1 = Segment(W_1, A_2)
f_2 = Segment(A_2, B_2)
g_2 = Segment(B_2, Z_1)
h_2 = Segment(Z_1, W_1)
i_2 = Segment(T_1, N_1)
j_2 = Segment(Z_1, N_1)
k_2 = Segment(W_1, K_1)
l_2 = Segment(K_1, V_1)
m_2 = Segment(J_1, U_1)
n_2 = Segment(S_1, O_1)
p_2 = Segment(O_1, B_2)
q_2 = Segment(A_2, J_1)
r_2 = Segment(W, S)
C_2 = Midpoint(r_2)
P_{SW} = OrthogonalPlane(C_2, r_2)
s_2 = Segment(E, S)
t_2 = Segment(S, Y)
D_2 = Midpoint(s_2)
E_2 = Midpoint(t_2)
P_{SE} = OrthogonalPlane(D_2, s_2)
P_{SY} = OrthogonalPlane(E_2, t_2)
F_2 = Intersect(b_1, P_{SE})
G_2 = Intersect(a_1, P_{SE})
H_2 = Intersect(l_1, P_{SE})
I_2 = Intersect(p_2, P_{SE})
J_2 = Intersect(l_2, P_{SY})
K_2 = Intersect(g_1, P_{SY})
L_2 = Intersect(h_2, P_{SY})
M_2 = Intersect(e_1, P_{SY})
a_2 = Segment(J_2, V_1)
b_2 = Segment(K_2, J_1)
c_2 = Segment(J_2, K_2)
d_2 = Segment(K_2, M_2)
e_2 = Segment(J_2, L_2)
f_3 = Segment(L_2, M_2)
g_3 = Segment(M_2, A_2)
h_3 = Segment(L_2, Z_1)
i_3 = Segment(G_2, H_2)
j_3 = Segment(I_2, H_2)
k_3 = Segment(I_2, F_2)
l_3 = Segment(F_2, G_2)
m_3 = Segment(G_2, T_1)
n_3 = Segment(F_2, U_1)
p_3 = Segment(H_2, N_1)
q_3 = Segment(I_2, B_2)
r_3 = Segment(G, S)
N_2 = Midpoint(r_3)
P_{SG} = OrthogonalPlane(N_2, r_3)
s_3 = Segment(V, S)
O_2 = Midpoint(s_3)
P_{SV} = OrthogonalPlane(O_2, s_3)
t_3 = Segment(X, S)
a_3 = Segment(S, N)
P_2 = Midpoint(t_3)
Q_2 = Midpoint(a_3)
P_{SX} = OrthogonalPlane(P_2, t_3)
P_{SN} = OrthogonalPlane(Q_2, a_3)
b_3 = Segment(M, S)
R_2 = Midpoint(b_3)
P_{SM} = OrthogonalPlane(R_2, b_3)
c_3 = Segment(U, S)
S_2 = Midpoint(c_3)
P_{SU} = OrthogonalPlane(S_2, c_3)
T_2 = Intersect(m_3, P_{SU})
U_2 = Intersect(i_2, P_{SU})
V_2 = Intersect(c_1, P_{SU})
W_2 = Intersect(a_2, P_{SU})
Z_2 = Intersect(q_2, P_{SM})
A_3 = Intersect(g_3, P_{SM})
B_3 = Intersect(q_3, P_{SM})
C_3 = Intersect(g_2, P_{SM})
d_3 = Segment(A_3, Z_2)
e_3 = Segment(A_3, C_3)
f_4 = Segment(C_3, B_3)
g_4 = Segment(B_3, Z_2)
h_4 = Segment(B_3, I_2)
i_4 = Segment(C_3, Z_1)
j_4 = Segment(A_3, M_2)
k_4 = Segment(Z_2, J_1)
l_4 = Segment(W_2, V_2)
m_4 = Segment(V_2, T_2)
n_4 = Segment(T_2, U_2)
p_4 = Segment(U_2, W_2)
q_4 = Segment(V_2, U_1)
r_4 = Segment(T_2, G_2)
s_4 = Segment(U_2, N_1)
t_4 = Segment(W_2, J_2)
D_3 = Intersect(d_2, P_{SX})
E_3 = Intersect(b_2, P_{SX})
F_3 = Intersect(e_2, q_4)
G_3 = Intersect(m_4, P_{SX})
H_3 = Intersect(p_4, P_{SX})
I_3 = Intersect(q_4, P_{SX})
J_3 = Intersect(e_2, P_{SX})
a_4 = Segment(I_3, U_1)
b_4 = Segment(G_3, T_2)
c_4 = Segment(G_3, I_3)
d_4 = Segment(I_3, E_3)
e_4 = Segment(E_3, D_3)
f_5 = Segment(D_3, J_3)
g_5 = Segment(J_3, H_3)
h_5 = Segment(H_3, G_3)
i_5 = Segment(H_3, U_2)
j_5 = Segment(J_3, L_2)
k_5 = Segment(D_3, M_2)
l_5 = Segment(E_3, J_1)
K_3 = Intersect(g_4, P_{SN})
L_3 = Intersect(i_4, P_{SN})
M_3 = Intersect(e_3, P_{SN})
N_3 = Intersect(k_3, P_{SN})
O_3 = Intersect(i_3, P_{SN})
P_3 = Intersect(p_3, P_{SN})
m_5 = Segment(K_3, M_3)
n_5 = Segment(M_3, L_3)
p_5 = Segment(L_3, P_3)
q_5 = Segment(P_3, O_3)
r_5 = Segment(O_3, N_3)
s_5 = Segment(N_3, K_3)
t_5 = Segment(K_3, Z_2)
a_5 = Segment(M_3, A_3)
b_5 = Segment(L_3, Z_1)
c_5 = Segment(P_3, N_1)
d_5 = Segment(O_3, G_2)
e_5 = Segment(N_3, F_2)
f_6 = Segment(S, Z)
Q_3 = Midpoint(f_6)
P_{SZ} = OrthogonalPlane(Q_3, f_6)
q1, u_1, g_6, h_6, i_6 = Polygon(U_1, J_1, E_3, I_3)
poly1, j_6, k_6, l_6, m_6, n_6, p_6 = Polygon(U_1, F_2, G_2, T_2, G_3, I_3)
poly2, q_6, r_6, s_6, t_6, a_6, b_6 = Polygon(G_3, H_3, J_3, D_3, E_3, I_3)
q2, c_6, u_2, d_6, e_6 = Polygon(T_2, U_2, H_3, G_3)
poly3, f_7, o_3, g_7, h_7, i_7, j_7 = Polygon(P_3, O_3, G_2, T_2, U_2, N_1)
q3, k_7, l_7, m_7, n_7 = Polygon(F_2, G_2, O_3, N_3)
poly4, p_7, q_7, r_7, z_2, s_7, t_7 = Polygon(F_2, N_3, K_3, Z_2, J_1, U_1)
poly5, a_7, b_7, c_7, d_7, z_1, e_7 = Polygon(U_2, H_3, J_3, L_2, Z_1, N_1)
q4, f_8, g_8, h_8, i_8 = Polygon(L_2, M_2, D_3, J_3)
poly6, j_8, k_8, l_8, m_8, n_8, p_8 = Polygon(M_2, A_3, Z_2, J_1, E_3, D_3)
q5, q_8, r_8, s_8, t_8 = Polygon(A_3, Z_2, K_3, M_3)
poly7, a_8, b_8, c_8, d_8, e_8, f_9 = Polygon(M_3, L_3, P_3, O_3, N_3, K_3)
q6, g_9, h_9, i_9, j_9 = Polygon(L_3, Z_1, N_1, P_3)
poly8, k_9, l_9, m_9, n_9, p_9, q_9 = Polygon(Z_1, L_2, M_2, A_3, M_3, L_3)
t1, f_{10}, s_9, i_{10} = Polygon(S, I, F)
o, faceIST, faceFIT, faceFST, edgeST, edgeIT, edgeFT = Pyramid(t1, T)
o_1 = Sphere(O, C)
t2, h_{10}, s_{10}, r_9 = Polygon(S, R, H)
v_1, faceERS, faceEHR, faceEHS, edgeES, edgeER, edgeEH = Pyramid(t2, E)