3 def Pd1 (2.75015576000000831584,5.94619424000000154253,11.27519999999989800000)
4 def Pd2 (.37536752000001512828,.85342280000001326226,11.27519999999989800000)
5 def Pd3 (1.56279312000002148086,3.39983999999999449559,11.27549999999999400000)
6 def Pd4 (5.29657295999998954917,4.75883160000001533715,11.27549999999999400000)
7 def Pd5 (4.10914735999998382619,2.21241439999998877261,11.27490000000001800000)
9 def Pd6 (4.78867464000000337617,.34552447999998238766,13.21440000000002700000)
10 def Pd7 (5.97603727999999021115,2.89194168000000832259,13.21440000000002700000)
11 def Pd8 (.88332880000002144849,5.26672992000000151015,13.21440000000002700000)
12 def Pd9 (2.24225744000002214284,1.53295007999998811064,13.21440000000002700000)
13 def Pd10 (3.42968303999998316422,4.07930431999999515757,13.21440000000002700000)
15 def Pd11 (2.84574797953539060439,5.96310098461171547053,15.15580038643154100000)
16 def Pd12 (.34408790508233560119,.92661829694527305695,15.14975992701507300000)
17 def Pd13 (1.59113049268836959821,3.43780332375806837660,15.15679578278546100000)
18 def Pd14 (5.31053190835417399304,4.75473569641010691535,15.20538768688622400000)
19 def Pd15 (4.10464369172027036758,2.21435558239076715511,15.19555125886068300000)
21 def Pd16 (4.78500000882004913920,.33293595808183883666,17.14954873909577100000)
22 def Pd17 (6.05164679254408718195,2.88410325626430328382,17.12077504165403400000)
23 def Pd18 (.98373603745029265007,5.28512789204894761823,17.13151799534405700000)
24 def Pd19 (2.21860905334317447211,1.55380623446853332763,17.12540635487903700000)
25 def Pd20 (3.47222133891959257984,4.10485557965620160919,17.22703410490793100000)
27 def Pd21 (3.23101284856320042595,6.23286847740939540579,19.60162079269868400000)
28 def Pd22 (a+.08679433219596715293,6.25895314440737066223,19.60675353347123400000)
29 def Pd23 (1.65525977156214093247,3.23429832279509064851,19.40777504311647300000)
30 def Pd24 (4.78666152813301689288,3.18465154488857769654,19.48622619678744000000)
33 def shifted_Pd22 (a+.34408790508233560119,a+.92661829694527305695,19.60675353347123400000)
34 def shifted_Pd24 (4.10464369172027036758,2.21435558239076715511,19.48622619678744000000)
36 def topB (1.64973919642545177060,5.06314831724067484365,20.12053743145409100000)
37 def topA (4.81706394091530940792,5.04027686526834762816,20.14522057090419000000)
38 def bottomB (1.67703227863746388870,1.22762720073791108089,19.12914197562196500000)
39 def bottomA (4.78808503194600732334,1.19311862627430483445,19.11108593054756400000)
44 def subst_atoms dots[ball color = blue, dotsize=14mm ] (Pd1) (Pd2) (Pd3) (Pd4) (Pd5) (Pd6) (Pd7) (Pd8) (Pd9) (Pd10) (Pd11) (Pd12) (Pd13) (Pd14) (Pd15) (Pd16) (Pd17) (Pd18) (Pd19) (Pd20)
46 def pd_atoms dots[ball color = green, dotsize=14mm, fill opacity=1.] (Pd21) (Pd22) (Pd23) (Pd24)
47 def shifted_pd_atoms dots[ball color = green, dotsize=14mm, fill opacity=1.] (Pd21) (Pd23) (shifted_Pd22) (shifted_Pd24)
48 def o_atoms dots[ball color = red, dotsize=8mm, fill opacity=.3] (topA) (topB)%(bottomB) (bottomA)
50 put{rotate(-70,(0,0,0),[0,0,1]) then rotate(55,(0,0,0),[-1,0,0]) }{
51 put{translate([0,0,0])}{pd_atoms}
52 put{translate([a,0,0])}{pd_atoms}
53 put{translate([2*a,0,0])}{pd_atoms}
54 put{translate([0,a,0])}{pd_atoms}
55 put{translate([0,2*a,0])}{pd_atoms}
56 put{translate([a,2*a,0])}{pd_atoms}
57 put{translate([2*a,a,0])}{pd_atoms}
58 put{translate([2*a,2*a,0])}{pd_atoms}
59 put{translate([a,a,0])}{{shifted_pd_atoms}{special | \path #1 node {4} #2 node {2}; | (shifted_Pd24) (shifted_Pd22)}}
61 repeat {3 , translate([0,a,0])}{
62 repeat {3 , translate([a,0,0])}{
63 {subst_atoms} {o_atoms}
64 %special |\path #1 node {1} #2 node {2} #3 node {3} #4 node {4}; | (Pd21) (Pd22) (Pd23) (Pd24)
65 %special |\path #1 node {11} #2 node {12} #3 node {13} #4 node {14} #5 node {15};|(Pd11)(Pd12)(Pd13)(Pd14)(Pd15)