A=Function;B='p';K='for(i=0;i<T;++i)';b=A('X.stroke();X.closePath();X.beginPath()');E=document.body;C=E.children[0];$=0;X=C.getContext('2d');X.m=X.moveTo;X.l=X.lineTo;r=A(B,'X.fillText(M[p]<0?"X":l[p]=M[p],p%t*w+6,~~(p/t)*w+15);');g='C.onclick=';h=A(B,'X.fillStyle="#"+p');i=0;I=A(B,'for(k in Y=V[p%t]){var q=p+Y[k];q<0||q<T&&M[q]>=0&&++M[q]}');j=A(B,'X.strokeStyle="#"+p');k=0;L=A('X.m(i,0);X.l(i,O);X.m(0,i);X.l(O,i)');M=[];l=[];t=10;T=100;O=200;C.width=C.height=O;u=A(B,'if(p>=0&&p<T){M[p]&&r(p);if(!M[p]){l[p]=M[p]="~";r(p);var v,Y;for(v in Y=V[p%t])u(p+Y[v])}}');v=11;w=20;y=A(B,K+'M[i]<0&&r(i);'+g+'null');m=[-v,-t,-9,-1,1,9,t,v];n=[-t,-9,1,t,v];o=[-v,-t,-1,9,t];V=[n,m,m,m,m,m,m,m,m,o];E.style.margin=0;eval(K+'M[i]=Math.random()<0.2?-1:0');eval(K+'M[i]<0&&I(i)');h('ccc');X.fillRect(0,0,O,O);j('eee');for(i=0.5;i<O;i+=w)L();b();j('aaa');for(i=19.5;i<O;i+=w)L();b();h('000');z=A("h('0d0');y()");eval(g+'A("e","var p=~~(e.pageX/w)+~~(e.pageY/w)*t;M[p]<0?y():M[p]?r(p):u(p);$=0;'+K+'M[i]>=0&&!l[i]&&++$;!$&&z()")')
QT1GdW5jdGlvbjtCPSdwJztLPSdmb3IoaT0wO2k8VDsrK2kpJztiPUEoJ1guc3Ryb2tlKCk7WC5jbG9zZVBhdGgoKTtYLmJlZ2luUGF0aCgpJyk7RT1kb2N1bWVudC5ib2R5O0M9RS5jaGlsZHJlblswXTskPTA7WD1DLmdldENvbnRleHQoJzJkJyk7WC5tPVgubW92ZVRvO1gubD1YLmxpbmVUbztyPUEoQiwnWC5maWxsVGV4dChNW3BdPDA/IlgiOmxbcF09TVtwXSxwJXQqdys2LH5+KHAvdCkqdysxNSk7Jyk7Zz0nQy5vbmNsaWNrPSc7aD1BKEIsJ1guZmlsbFN0eWxlPSIjIitwJyk7aT0wO0k9QShCLCdmb3IoayBpbiBZPVZbcCV0XSl7dmFyIHE9cCtZW2tdO3E8MHx8cTxUJiZNW3FdPj0wJiYrK01bcV19Jyk7aj1BKEIsJ1guc3Ryb2tlU3R5bGU9IiMiK3AnKTtrPTA7TD1BKCdYLm0oaSwwKTtYLmwoaSxPKTtYLm0oMCxpKTtYLmwoTyxpKScpO009W107bD1bXTt0PTEwO1Q9MTAwO089MjAwO0Mud2lkdGg9Qy5oZWlnaHQ9Tzt1PUEoQiwnaWYocD49MCYmcDxUKXtNW3BdJiZyKHApO2lmKCFNW3BdKXtsW3BdPU1bcF09In4iO3IocCk7dmFyIHYsWTtmb3IodiBpbiBZPVZbcCV0XSl1KHArWVt2XSl9fScpO3Y9MTE7dz0yMDt5PUEoQixLKydNW2ldPDAmJnIoaSk7JytnKydudWxsJyk7bT1bLXYsLXQsLTksLTEsMSw5LHQsdl07bj1bLXQsLTksMSx0LHZdO289Wy12LC10LC0xLDksdF07Vj1bbixtLG0sbSxtLG0sbSxtLG0sb107RS5zdHlsZS5tYXJnaW49MDtldmFsKEsrJ01baV09TWF0aC5yYW5kb20oKTwwLjI/LTE6MCcpO2V2YWwoSysnTVtpXTwwJiZJKGkpJyk7aCgnY2NjJyk7WC5maWxsUmVjdCgwLDAsTyxPKTtqKCdlZWUnKTtmb3IoaT0wLjU7aTxPO2krPXcpTCgpO2IoKTtqKCdhYWEnKTtmb3IoaT0xOS41O2k8TztpKz13KUwoKTtiKCk7aCgnMDAwJyk7ej1BKCJoKCcwZDAnKTt5KCkiKTtldmFsKGcrJ0EoImUiLCJ2YXIgcD1+fihlLnBhZ2VYL3cpK35+KGUucGFnZVkvdykqdDtNW3BdPDA/eSgpOk1bcF0/cihwKTp1KHApOyQ9MDsnK0srJ01baV0+PTAmJiFsW2ldJiYrKyQ7ISQmJnooKSIpJykNCg==
Original source not submitted