d=document;c=d.body.children[0];G=255;V=B=h=c.height=c.width=150;e=c.style;e.height="20em";e.width="40em";d.onkeypress=c.onmousemove=function(a){X=-a.clientX/100;X?s=T(u(X),M.sin(X),1-a.clientY/G):V+=s.x/10,B+=s.y/10};C=c.getContext("2d");M=Math;r=M.random;u=M.cos;P=[];L=20;for(x=0;x<L;x++)for(y=1;y<L;)P[x]?P[x][y++]=r():P[x]=[r()];l=C.createLinearGradient(0,0,0,G);for(b in a={'#cef':0,'#373':.5,'#432':.7,'#234':.7,'#23f':1})l.addColorStop(a[b],b);function T(a,b,c,d,f){if(b!=f)return d?a+c*(b-a)/2:{x:a/(t=M.sqrt(a*a+b*b+c*c)),y:b/t,z:c/t};for(i=0;i<h;i+=2)for(j=0;j<h*2;j+=2)x=i/h-.5,y=j/h-.5,c=T(s.y,-s.x,H=0),d=T(s.z*c.y,s.z*c.x,s.x*c.y-s.y*c.x),r=T(s.x+c.x*x+d.x*y,s.y+c.y*x+d.y*y,s.z+c.z*x+d.z*y),A=r.z,C[I='fillStyle']="#cef",A<0?(C[I]=l,x=M.abs(V-r.x/A)/2,y=M.abs(B-r.y/A)/2,H=T(T(P[c=(x|0)%L][a=(y|0)%L],P[d=(c+1)%L][a],m=1-u(x%1*M.PI),1),T(P[c][b=(a+1)%L],P[d][b],m,1),1-u(y%1*M.PI),1)*G):A=1,C.setTransform(1,0,0,-A,i,j+G*A),C.fillRect(0,G-H,2,2+H);setTimeout(T,9)}s=T(0,1,0);T()
ZD1kb2N1bWVudDtjPWQuYm9keS5jaGlsZHJlblswXTtHPTI1NTtWPUI9aD1jLmhlaWdodD1jLndpZHRoPTE1MDtlPWMuc3R5bGU7ZS5oZWlnaHQ9IjIwZW0iO2Uud2lkdGg9IjQwZW0iO2Qub25rZXlwcmVzcz1jLm9ubW91c2Vtb3ZlPWZ1bmN0aW9uKGEpe1g9LWEuY2xpZW50WC8xMDA7WD9zPVQodShYKSxNLnNpbihYKSwxLWEuY2xpZW50WS9HKTpWKz1zLngvMTAsQis9cy55LzEwfTtDPWMuZ2V0Q29udGV4dCgiMmQiKTtNPU1hdGg7cj1NLnJhbmRvbTt1PU0uY29zO1A9W107TD0yMDtmb3IoeD0wO3g8TDt4KyspZm9yKHk9MTt5PEw7KVBbeF0/UFt4XVt5KytdPXIoKTpQW3hdPVtyKCldO2w9Qy5jcmVhdGVMaW5lYXJHcmFkaWVudCgwLDAsMCxHKTtmb3IoYiBpbiBhPXsnI2NlZic6MCwnIzM3Myc6LjUsJyM0MzInOi43LCcjMjM0JzouNywnIzIzZic6MX0pbC5hZGRDb2xvclN0b3AoYVtiXSxiKTtmdW5jdGlvbiBUKGEsYixjLGQsZil7aWYoYiE9ZilyZXR1cm4gZD9hK2MqKGItYSkvMjp7eDphLyh0PU0uc3FydChhKmErYipiK2MqYykpLHk6Yi90LHo6Yy90fTtmb3IoaT0wO2k8aDtpKz0yKWZvcihqPTA7ajxoKjI7ais9Mil4PWkvaC0uNSx5PWovaC0uNSxjPVQocy55LC1zLngsSD0wKSxkPVQocy56KmMueSxzLnoqYy54LHMueCpjLnktcy55KmMueCkscj1UKHMueCtjLngqeCtkLngqeSxzLnkrYy55KngrZC55Knkscy56K2Mueip4K2Queip5KSxBPXIueixDW0k9J2ZpbGxTdHlsZSddPSIjY2VmIixBPDA/KENbSV09bCx4PU0uYWJzKFYtci54L0EpLzIseT1NLmFicyhCLXIueS9BKS8yLEg9VChUKFBbYz0oeHwwKSVMXVthPSh5fDApJUxdLFBbZD0oYysxKSVMXVthXSxtPTEtdSh4JTEqTS5QSSksMSksVChQW2NdW2I9KGErMSklTF0sUFtkXVtiXSxtLDEpLDEtdSh5JTEqTS5QSSksMSkqRyk6QT0xLEMuc2V0VHJhbnNmb3JtKDEsMCwwLC1BLGksaitHKkEpLEMuZmlsbFJlY3QoMCxHLUgsMiwyK0gpO3NldFRpbWVvdXQoVCw5KX1zPVQoMCwxLDApO1QoKQ==
Original source not submitted