Nothing sophisticated, just moving lines... Use mouse drag / tap to change the scale origin.
for(_='v[u].~(2+~z`h/2_2*o,_^touchWfunctionV}V U++)To/2Q],P0PO=.Nl[L)+Kt(JMath.H=Hmax(G&&Fa[Ea.B);A]-@n.E!!3@!1])return 255,!0]f[e(n(*(=0){c.stroke-QKQ,z,c:0,h:0}),%2]/2.push(=9Bclientvar e.E1-(===!2])Hrandom()=(!2@+/4, for(=functioaBpreventDefaulJ`)LfKLf)+t!2@!1]+t.lengthmXY-_K_f;f<4;fT~Ef]u;u<v;uTV Ja=[Pt=;~c>5||av[u]Aif(an=E*a|Oe={a:[,Pz:n.z+.33-gKg;@ +2]+ ven.c++,1}Ua,t,n{-=f%2?t:a;~zG0,~z-n)}Ue(a,ta<F-1||a>=Lt]F1Ur(GHmi~EfP,-;v||v{a:[Q-^,Q+^Pz:01===vF(v[0].c)}b.bgColor;o=Bwidth,h=Bheight,l=[o,hPu,iN011,gN03,sN273,v=[Pm=Q,z=_,M;setInterval(functiom,z,i*s{~h=Hmi1,~h+.05A*=1+i}-m,-z,0MF(mN97mN97z-_K_r(Av<720FJAAc.clearRecJ0,0,o,h{a,f=[];a<4;aTa]=La+(~Ea@La)/`AO0)*2P0)>0||1P1)*3P1)>0?v.splice(u--,1):(Style="rgba("+.25*~h+")",RecJO1P2@O3@1]))}},22onWstartM=a=BWes[O},onmousemoveBbuttonsF()};';G=/[^ "-?CDIMRSX-\]a-}]/.exec(_);)with(_.split(G))_=join(shift());;eval(_)
Zm9yKF89J3ZbdV0ufigyK356YGgvMl8yKm8sX150b3VjaFdmdW5jdGlvblZ9ViBVKyspVG8vMlFdLFAwUE89Lk5sW0wpK0t0KEpNYXRoLkg9SG1heChHJiZGYVtFYS5CKTtBXS1Abi5FISEzQCExXSkfcmV0dXJuIB4yNTUsHSEwXRxmWxtlKBsabigZKigYPTAXKXsWYy5zdHJva2UVLVFLUSx6FCxjOjAsaDowfRMpLBIlMl0vMhEucHVzaCgQPTkYQmNsaWVudA92YXIgDmUuRTEtKBw9PT0hMl0pDEhyYW5kb20oKQs9KCEyQBwrHy80LAlmb3IoCD1mdW5jdGlvGWEWQnByZXZlbnREZWZhdWxKEgdgKRhMZhFLTGYRKQYcK3QYITJAHBIhMV0rdBgfBS5sZW5ndGgEbQ9YFA9ZLV9LXwMIDmYXO2Y8NDtmVH5FZl0CdRc7dTx2BDt1VAFWIEoWDmE9W1B0PQs7CAF+Yz41fHxhEHZbdV1BaWYoYQQWDm49RQsqYQR8T2U9e2E6WwUsBVB6Om4ueisLGC4zMy1nS2cTOx4MQAkMKzJdKwl2EGUSbi5jKyssMX1VGWEsdCxuFggBewItPWYlMj90OmE7fnpHMCx+ei1uKX1VZShhLHQWHmE8F0YtMXx8YT49THRdRjFVcigWCAECR0htaRl+RWZQBiwtBjt2BHx8dhB7YTpbUS1eLFErXlB6OjATEjE9PT12BEYodlswXS5jFyl9Yi5iZ0NvbG9yFzsObz1Cd2lkdGgsaD1CaGVpZ2h0LGw9W28saFB1LGlOMDExLGdOMDMsc04yNzMsdj1bUG09USx6PV8sTRc7c2V0SW50ZXJ2YWwoZnVuY3RpbxkWCBltLHosaSpzEgF7fmg9SG1pGTEsfmgrLjA1QQIqPTEraX0IGS1tLC16LDASTUYobU45NxhtFE45Nxh6LV9LXxJyKEF2BDw3MjBGSkFBCGMuY2xlYXJSZWNKMCwwLG8saBIBewgOYRcsZj1bXTthPDQ7YVQbYV09TGERKyh+RWFATGERKS9gQRpPMCkqGjJQMCk+MHx8GjFQMSkqGjNQMSk+MD92LnNwbGljZSh1LS0sMSk6KBVTdHlsZT0icmdiYSgdHR0iKy4yNSp+aCsiKSIsFVJlY0obTxsxUBsyQBtPGzNAGzFdKSl9fSwyMhJvbldzdGFydAdNPWE9Qldlc1tPA30sb25tb3VzZW1vdmUHQmJ1dHRvbnNGKAMpfTsnO0c9L1teICItP0NESU1SU1gtXF1hLX1dLy5leGVjKF8pOyl3aXRoKF8uc3BsaXQoRykpXz1qb2luKHNoaWZ0KCkpOztldmFsKF8p
Original source not submitted