A = Point(Circle[(((5, 0, 0) * (1 - sqrt(5))) + ((0, 0, 0) * (3 + sqrt(5)))) / 4, (Distance[(5, 0, 0), (0, 0, 0)] * sqrt(10 + (2 * sqrt(5))) / 4), Segment[(5, 0, 0), (0, 0, 0)]])
a, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, felület1, felület3, felület2, felület4, felületABFKE, felületBCGLF, felületGLQRM, felületHINRM, felületDINOJ, felületEJOPK, felületFKPQL, felületNOPQR, él2, él1, él4, élAB, élBC, él3, élCG, élGM, élHM, élHI, élDI, él5, élDJ, élEJ, élAE, élEK, élFK, élBF, élFL, élGL, élLQ, élQR, élMR, élNR, élIN, élNO, élJO, élOP, élKP, élPQ = Dodecahedron((5, 0, 0), (0, 0, 0), A)
S = Intersect(xAxis, él2)
T = Point(Circle[S, Distance[G, S], Segment[G, S]])
b, U, V, W, Z, A_1, felületGSTU, felület5, felületGSWV, felületSTZW, felület6, felület7, élGU, élGS, élST, élTU, élGV, él6, él7, élVW, élSW, élWZ, élTZ, él8 = Cube(G, S, T)
B_1 = Centroid(felület1)
C_1 = Centroid(felület2)
D_1 = Centroid(felület3)
E_1 = Centroid(felület4)
F_1 = Centroid(felületABFKE)
c, G_1, H_1, I_1, J_1, K_1, L_1, M_1, N_1, O_1, felület8, felület13, felület15, felület14, felület9, felület11, felület12, felület10, felület16, felület17, felület20, felület21, felület26, felület23, felület25, felület27, felület24, felület22, felület19, felület18, él14, él9, él10, él16, él19, él17, él27, él15, él21, él11, él13, él22, él12, él24, él18, él20, él25, él28, él26, él33, él34, él35, él38, él29, él36, él32, él37, él31, él30, él23 = Icosahedron(E_1, C_1, F_1)
d, P_1, Q_1, R_1, S_1, T_1, U_1, V_1, W_1, Z_1, felület28, felület30, felület32, felület31, felület29, felület34, felület35, felület33, felület36, felület37, felület40, felület41, felület46, felület43, felület45, felület47, felület44, felület42, felület39, felület38, él40, él39, él44, él42, él49, él43, él57, él41, él51, él45, él47, él52, él46, él54, él48, él50, él55, él58, él56, él63, él64, él65, él68, él59, él66, él62, él67, él61, él60, él53 = Icosahedron(B_1, E_1, F_1)