M=Math,Ms=M.sin,Mc=M.cos,Mp=M.PI,Ml=M.log,Ma=M.abs,Mq=M.sqrt
for(prop in a)a[prop[0]+(prop[6]||'')]=a[prop]
c.setAttribute('width', 500)
c.setAttribute('height', 500)
N=37,S=1.0/73,parts=[],d=Mp/180,radius=250,w=Mp/5,u=Mp/27,h=Mp*.14,parts2=[]
D=function(p){
p.a+=S
if(p.a>1.0)p.a-=2.0
X=Ms(p.a)*Mc(p.a)*Ml(Ma(p.a))*600+250
Y=-Mq(Ma(p.a))*Mc(p.a)*600+450
Z=((Mc(p.a*Mp)*50)+50)/100
R=8*Z+3
a.fillStyle='#F00'
a.globalAlpha=0.5*Z+0.25
a.ba();a.a(X,Y,R,0,Mp*2,true);a.ca();a.f()}
E=function(p){
p[1]+=d
p[2]+=d/2
c=H(p)
r=c[2]/80+3
a.fillStyle='#FF0'
a.globalAlpha=0.5*c[2]+0.25
a.ba()
a.a(c[0],c[1],r,0,Mp*2,true)
a.ca()
a.f()}
function H(p){return [p[0]*Mc(p[1])*Ms(p[2])+250,p[0]*Ms(p[1])*Ms(p[2])+250,p[0]*Mc(p[2])+p[0]]}
for (var i = 0; i < N; i++){parts.push({a:(i-N/2)/(N/2)});}
for (var i = 0; i < 10; i++){for (var j=0; j<7; j++){parts2.push([radius,i*w+u*j,h*(j-3)])}}
function A(){a.fillStyle='#CCC'
a.fc(0,0,500,500)
parts2.forEach(E)
parts.forEach(D)
setTimeout(A, 45)}A()
TT1NYXRoLE1zPU0uc2luLE1jPU0uY29zLE1wPU0uUEksTWw9TS5sb2csTWE9TS5hYnMsTXE9TS5zcXJ0DQpmb3IocHJvcCBpbiBhKWFbcHJvcFswXSsocHJvcFs2XXx8JycpXT1hW3Byb3BdDQpjLnNldEF0dHJpYnV0ZSgnd2lkdGgnLCA1MDApDQpjLnNldEF0dHJpYnV0ZSgnaGVpZ2h0JywgNTAwKQ0KTj0zNyxTPTEuMC83MyxwYXJ0cz1bXSxkPU1wLzE4MCxyYWRpdXM9MjUwLHc9TXAvNSx1PU1wLzI3LGg9TXAqLjE0LHBhcnRzMj1bXQ0KRD1mdW5jdGlvbihwKXsNCnAuYSs9Uw0KaWYocC5hPjEuMClwLmEtPTIuMA0KWD1NcyhwLmEpKk1jKHAuYSkqTWwoTWEocC5hKSkqNjAwKzI1MA0KWT0tTXEoTWEocC5hKSkqTWMocC5hKSo2MDArNDUwDQpaPSgoTWMocC5hKk1wKSo1MCkrNTApLzEwMA0KUj04KlorMw0KYS5maWxsU3R5bGU9JyNGMDAnDQphLmdsb2JhbEFscGhhPTAuNSpaKzAuMjUNCmEuYmEoKTthLmEoWCxZLFIsMCxNcCoyLHRydWUpO2EuY2EoKTthLmYoKX0NCkU9ZnVuY3Rpb24ocCl7DQpwWzFdKz1kDQpwWzJdKz1kLzINCmM9SChwKQ0Kcj1jWzJdLzgwKzMNCmEuZmlsbFN0eWxlPScjRkYwJw0KYS5nbG9iYWxBbHBoYT0wLjUqY1syXSswLjI1DQphLmJhKCkNCmEuYShjWzBdLGNbMV0sciwwLE1wKjIsdHJ1ZSkNCmEuY2EoKQ0KYS5mKCl9DQpmdW5jdGlvbiBIKHApe3JldHVybiBbcFswXSpNYyhwWzFdKSpNcyhwWzJdKSsyNTAscFswXSpNcyhwWzFdKSpNcyhwWzJdKSsyNTAscFswXSpNYyhwWzJdKStwWzBdXX0NCmZvciAodmFyIGkgPSAwOyBpIDwgTjsgaSsrKXtwYXJ0cy5wdXNoKHthOihpLU4vMikvKE4vMil9KTt9DQpmb3IgKHZhciBpID0gMDsgaSA8IDEwOyBpKyspe2ZvciAodmFyIGo9MDsgajw3OyBqKyspe3BhcnRzMi5wdXNoKFtyYWRpdXMsaSp3K3UqaixoKihqLTMpXSl9fQ0KZnVuY3Rpb24gQSgpe2EuZmlsbFN0eWxlPScjQ0NDJw0KYS5mYygwLDAsNTAwLDUwMCkNCnBhcnRzMi5mb3JFYWNoKEUpDQpwYXJ0cy5mb3JFYWNoKEQpDQpzZXRUaW1lb3V0KEEsIDQ1KX1BKCkNCg0K
Original source not submitted