javascript - What was used to compress this code? -


i'm trying understand what's going on in code: http://js1k.com/2013-spring/demo/1396

this doesn't it's been minified or encoded in base62 me. when paste in vim weird characters appear everywhere. there way can decode it?

end of code there script, used decode code

for (y = 0; $ = 'zxqj`_^zwvuqonmkjihgca@8$  ' [y++];)       with(_.split($)) _ = join(pop()); eval(_)     

i put firebug ... instead of eval(_) put console.log( _ )

code

e = null; t = function (b) {     c.width = c.height = 19 * s;     a.fillstyle = "#db5";     a.fillrect(0, 0, c.width, c.width);     (i = s / 2; < c.width; += s) a.moveto(i, s / 2), a.lineto(i, c.width - s / 2), a.moveto(s / 2, i), a.lineto(c.width - s / 2, i);     a.stroke();     b && (f = 19 * ~~(0.5 + (b.clienty - s / 2) / s) + ~~(0.5 + (b.clientx - s / 2) / s), t[f] == e && (t[f] = d, (l(f) | !(l(f + 1) & l(f - 1) & l(f + 19) & l(f - 19))) & (!m | f != n) ? "d" == b.type[5] ? (m = 0, u = f, d = !d, e(f + 1, d), e(f - 1, d), e(f + 19, d), e(f - 19, d), e(f)) : (t[f] = e, a.beginpath(), a.arc(~~(0.5 + (b.clientx - s / 2) / s) * s + s / 2, ~~ (0.5 + (b.clienty - s / 2) / s) * s + s / 2, s / 2 - 1, 0, 6.3, 1), a.strokestyle = a.fillstyle = "rgba(0,0,0,0.3)", d && (a.fillstyle = "rgba(255,255,255,0.3)"), a.fill(), a.stroke()) : t[f] = e));     a.strokestyle = "#000";     a.fillstyle = "#000";     (i = s / 2 + 75; < c.width; += 6 * s) (h = s / 2 + 75; h < c.width; h += 6 * s) a.beginpath(), a.arc(i, h, 2, 0, 6.3, 1), a.fill();     m && (t[n] = d, l(u) || (a.beginpath(), a.rect(n % 19 * s + s / 2 / 2, ~~ (n / 19) * s + s / 2 / 2, s / 2, s / 2), a.stroke()), t[n] = e);     (i = t.length; i--;) t[i] != e && (a.beginpath(), a.arc(i % 19 * s + s / 2, ~~ (i / 19) * s + s / 2, s / 2 - 1, 0, 6.3, 1), a.fillstyle = "#000", t[i] && (a.fillstyle = "#fff"), a.fill(), a.stroke()) }; e = function (b, g) {     if (!l(b, g)) {         1 == w.length && (m = 1, n = b);         (i = w.length; i--;) t[w[i]] = e     } }; l = function (b, g) {     w = [];     g == e && (g = t[b]);     l = function (b) {         (i = w.length; i--;) if (w[i] == b) return;         w.push(b);         0 != (b + 1) % 19 && t[b + 1] == g && l(b + 1);         0 != b % 19 && t[b - 1] == g && l(b - 1);         t[b + 19] == g && l(b + 19);         t[b - 19] == g && l(b - 19)     };     if (g != e && g == t[b]) l(b);     else return 1;     (i = w.length; i--;) if (0 != (w[i] + 1) % 19 && t[w[i] + 1] == e || 0 != w[i] % 19 && t[w[i] - 1] == e || 342 > w[i] && t[w[i] + 19] == e || 19 <= w[i] && t[w[i] - 19] == e) return 1;     return 0 }; s = 25; d = m = n = 0; c.addeventlistener("mousemove", t); c.addeventlistener("mousedown", t); t = []; t(); 

Comments

Popular posts from this blog

ios - iPhone/iPad different view orientations in different views , and apple approval process -

monitor web browser programmatically in Android? -

c# - Using multiple datasets in RDLC -