eval("function N(S){S.x=R("+                      
             ")-.5,S.y=R()-.5,S.s=R()}p='\t\t\t\t';d=docu"+             
        "ment;b=d.body;b.style.margin=0;M=Math;A=M.abs;O=M.roun"+       
     "d;R=M.random;f='pt Courier';W=window;o='0xF';h=W.innerHeight;"+   
     "w=W.innerWidth;H=M.min(h,w);e='\u263a'+p+'0xF-Secure Labs sq"+    
    "uashing malware since 1988'+p+'\u0ca0_\u0cb0\u0cc3'+p+p+'such"+    
    " scan'+p+'so detections'+p+'much award'+p+'wow'; c=d.createEl"+    
     "ement('canvas');x=w;c.height=h;c.width=w;b.appendChild(c);Q"+     
     "=c.getContext('2d');Q.shadowColor='#7A9BD7';s=[];for(i=0;(w"+     
      "+h)/4>i;++i)s[i]=[],"+             "N(s[i]),s[i].z=R();Q"+       
      ".M=Q.meas"+                                  "ureText;Q."+       
       "T="+       ""+                                   "Q.f"+         
       ""+   "illText;t"+                                               
           "=0;Q.R=Q.fillR"+                                            
           "ect;l='f"+                                                  
          "illS"+      "tyle';b='shadowBlur';"+                         
           "s"+   "etInterval(function(){Q[l]='rgba"+                   
               "(0,0,0,.2)';Q.R(0,0,w,h);Q.font=O(H/20)+f"+             
             ";u=Q.M(e).width;x-=.7;(x>-u||(x=w));y=.8*h+M"+            
             ".sin(t/20)*h/16;F=A(M.sin(t*.01));Q[l]='hsl"+             
             "('+O(F*360)+',99%,70%)';Q.T(e,x,y);Q[l]='w"+              
              "hite';for(P in s)p=s[P],Z=1/(p.z-=1e-3),"+               
               "X=(p.x+=M.sin(t/450)/2e3)*Z+.5,Y=(p.y+"+                
                "=M.sin(t/650)/2e3)*Z+.5,(0>X||0>Y||X"+                 
                  ">1||Y>"+               "1)&&(N(p"+                   
                   "),"+     "p.z"+           "="+                      
                    ""+  "1),G=(1-p"+                                   
                        ".z)*p.s*3,Q.R"+                                
                       "(X*w,Y*h,G,G);Q["+                              
                        "b]=15*F+5;Q.font="+                            
                         "O(H/3)-1+f;z=Q.M(o"+                          
                           ").width;Q.T(o,w"+                           
                            "/2-z/2,h/2);Q"+                            
                              "[b]=0,t++"+                              
                                "},9)");