memoscan
← all memos

Memo 0x0bf8fe98…ba27dd on Ethereum

(()=>{"use strict";var e=Math.atan2,t=Math.PI,n=Math.ceil,o=Math.pow,r=Math.sqrt,s=Math.max,u=Math.min;const a=(e,t,n)=>s(u(e,n),t),c=(e,t,n)=>e*(1-n)+t*n,i=(e,t,n)=>[e[0]+n*(t[0]-e[0]),e[1]+n*(t[1]-e[1])],l=(e,t,n,o)=>r((n-e)*(n-e)+(o-t)*(o-t)),f=(e=1,t=0,n=[0,0],o=[1,1])=>[n[0]+e*Math.cos(t)*o[0],n[1]+e*Math.sin(t)*o[1]],v=(e,t)=>[e[0]*t[0],e[1]*t[1]],p=o(2,-32),h=32557,m=19605,d=new Uint16Array(4),x=new DataView(d.buffer),g=()=>{const e=d[0],t=d[1],n=d[2],o=d[3],r=0|33103+h*e,s=0|63335+h*t+(m*e+(r>>>16)),u=0|31614+h*n+m*t+(62509*e+(s>>>16));d[0]=r,d[1]=s,d[2]=u,d[3]=5125+h*o+(m*n+62509*t)+(22609*e+(u>>>16));const a=(o<<21)+((o>>2^n)<<5)+((n>>2^t)>>11);return p*((a>>>(o>>11)|a<<(31&-(o>>11)))>>>0)},b=()=>2*g()-1,y=(e,t=0)=>{const n=16,o=65535,r=255;for(var s,u=1540483477,a=e.length,c=t^a,i=0;4<=a;)s=((s=e[i]&r|(e[++i]&r)<<8|(e[++i]&r)<<16|(e[++i]&r)<<24)&o)*u+(((s>>>n)*u&o)<<n),c=(c&o)*u+(((c>>>n)*u&o)<<n)^(s=((s^=s>>>24)&o)*u+(((s>>>n)*u&o)<<n)),a-=4,++i;switch(a){case 3:c^=(e[i+2]&r)<<n;case 2:c^=(e[i+1]&r)<<8;case 1:c=((c^=e[i]&r)&o)*u+(((c>>>n)*u&o)<<n)}return c=((c^=c>>>13)&o)*u+(((c>>>16)*u&o)<<16),(c^=c>>>15)>>>0},T=e=>{const t=~~((e.length-2)/2),n=[];for(let o=0;o<t;o++){const t=2+2*o;n.push(parseInt(e.slice(t,t+2),16))}const o=y(n,1690382925),r=y(n,72970470);x.setUint32(0,o),x.setUint32(4,r)},w=(e=.5)=>g()<e,A=(e=.5)=>g()<e?-1:1,R=(e,t)=>c(e,t,g()),E=(e,t)=>~~R(e,t+1),P="precision highp float;",U="\nattribute vec2 aPos;\nuniform vec2 uRes;\nuniform float uFlipY;\nvarying vec2 vUv;\nvoid main(){\nvec2 uv=aPos/uRes;\ngl_Position=vec4((uv*2.-1.)*vec2(1.,uFlipY),0.,1.);\nvUv=uv;\n}\n",D="#define PI 3.1415926535",M="mat2 r2d(float t){return mat2(cos(t),sin(t),-sin(t),cos(t));}",F="\n// Ian McEwan, Ashima Arts. Copyright (C) 2011 Ashima Arts. All rights reserved. MIT License.\nvec3 mod289(vec3 x){return x-floor(x*(1./289.))*289.;}\nvec2 mod289(vec2 x){return x-floor(x*(1./289.))*289.;}\nvec3 permute(vec3 x){return mod289(((x*34.)+1.)*x);}\nfloat noise(vec2 v){const vec4 C=vec4(.211324865405187,.366025403784439,-.577350269189626,.24390243902439);vec2 i=floor(v+dot(v,C.yy));vec2 x0=v-i+dot(i,C.xx);vec2 i1;i1=(x0.x>x0.y)?vec2(1.,0.):vec2(0.,1.);vec4 x12=x0.xyxy+C.xxzz;x12.xy-=i1;i=mod289(i);vec3 p=permute(permute(i.y+vec3(0.,i1.y,1.))+i.x+vec3(0.,i1.x,1.));vec3 m=max(.5-vec3(dot(x0,x0),dot(x12.xy,x12.xy),dot(x12.zw,x12.zw)),0.);m=m*m;m=m*m;vec3 x=2.*fract(p*C.www)-1.;vec3 h=abs(x)-.5;vec3 ox=floor(x+.5);vec3 a0=x-ox;m*=1.79284291400159-.85373472095314*(a0*a0+h*h);vec3 g;g.x=a0.x*x0.x+h.x*x0.y;g.yz =a0.yz*x12.xz+h.yz*x12.yw;return 130.*dot(m,g);}\n",_="noise(vec2(uA*uM*2.,uI))",I=(e,t=[])=>{const n=[...e];return t.map((e=>{let t=n.find((t=>e[0]===t[0]));t?Object.assign(t,e):n.push(e)})),n},S=(e,t,n)=>{const o=e.createShader(t);return e.shaderSource(o,n),e.compileShader(o),e.getShaderParameter(o,e.COMPILE_STATUS)?o:void e.deleteShader(o)},L=(e,t=33071,n=9728)=>{const o=e.createTexture();return e.bindTexture(e.TEXTURE_2D,o),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,t),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,t),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,n),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,n),o},X=(e,t)=>{e.bindFramebuffer(e.FRAMEBUFFER,t)};var k=(e,t)=>{let n,o,r,s,u,a,c,i=[],l=[],f=0;return{setup:v=>{n=v.getContext("webgl",{depth:!1,antialias:!1,preserveDrawingBuffer:!0}),a=v.width,c=v.height,o=((e,t,n)=>{const o=e.createProgram();return e.attachShader(o,t),e.attachShader(o,n),e.linkProgram(o),e.getProgramParameter(o,e.LINK_STATUS)?o:void e.deleteProgram(o)})(n,S(n,n.VERTEX_SHADER,e),S(n,n.FRAGMENT_SHADER,t)),r=n.getAttribLocation(o,"aPos"),s=n.getUniformLocation(o,"uFlipY"),u=n.createBuffer(),n.bindBuffer(n.ARRAY_BUFFER,u),((e,t,n,o,r)=>{e.bufferData(e.ARRAY_BUFFER,new Float32Array([0,0,0+o,0,0,0+r,0,0+r,0+o,0,0+o,0+r]),e.STATIC_DRAW)})(n,0,0,a,c);for(let e=0;2>e;++e)i[e]=L(n),n.texImage2D(n.TEXTURE_2D,0,n.RGBA,a,c,0,n.RGBA,n.UNSIGNED_BYTE,null),l[e]=n.createFramebuffer(),n.bindFramebuffer(n.FRAMEBUFFER,l[e]),n.framebufferTexture2D(n.FRAMEBUFFER,n.COLOR_ATTACHMENT0,n.TEXTURE_2D,i[e],0);f=0},update:e=>{n.useProgram(o),n.enableVertexAttribArray(r),n.bindBuffer(n.ARRAY_BUFFER,u),n.vertexAttribPointer(r,2,n.FLOAT,!1,0,0),n.viewport(0,0,a,c);const t=()=>n.drawArrays(n.TRIANGLES,0,6),v=e=>e instanceof WebGLTexture;n.uniform1f(s,1),X(n,l[f%2]),t();const p=[["uRes","v2",[a,c]],["uFrame","i",f],["uBuffer","t",i[f%2]],...e.map(((e,t)=>{if("t"===e[1]&&!v(e[2])){const o=L(n,e[3],e[4]);n.texImage2D(n.TEXTURE_2D,0,n.RGBA,n.RGBA,n.UNSIGNED_BYTE,e[2]),i[t+2]=o}return e}))];let h=0;p.map((([e,t,r])=>{const s=[t,r,n.getUniformLocation(o,e),h];return"t"===t&&(0<h&&!v(s[2])&&(s[1]=i[h+1]),h++),s})).map((e=>{((e,[t,n,o,r])=>{"b"===t?e.uniform1i(o,!0===n?1:0):"i"===t?e.uniform1i(o,n):"f"===t?e.uniform1f(o,n):"v2"===t?e.uniform2f(o,...n):"v3"===t?e.uniform3f(o,...n):"v4"===t?e.uniform4f(o,...n):"t"===t&&(e.uniform1i(o,r),e.activeTexture(e.TEXTURE0+r),e.bindTexture(e.TEXTURE_2D,n))})(n,e)})),X(n,null),n.uniform1f(s,-1),t(),f++}}};const C=3/4,B=100,z={Light:"#eae7e1",Dark:"#1f1e1c"},G={Tiny:0,Small:.2,Medium:.4,Large:.6,Huge:.8,Epic:1},N=()=>navigator.userAgent.match(/HeadlessChrome/i),W=e=>[e.canvas.width,e.canvas.height],Y=(e,t)=>{e.save(),t(),e.restore()},$=e=>{Y(e,(()=>{e.clearRect(0,0,W(e)[0],W(e)[1])}))},O=(e,n=0,o=0,r=1)=>{e.beginPath(),e.arc(n,o,r,0,2*t),e.closePath()},V=(e,t)=>{const[n,o]=W(e);e.beginPath(),e.moveTo(t[0]*n*.5+.5,t[1]*o*.5+.5);for(let r=2,s=t.length;r<s;r+=2)e.lineTo(t[r]*n*.5+.5,t[r+1]*o*.5+.5)},j=e=>{let t=0,n=e[0],o=e[1];for(let s=2,u=e.length-1;s<u;s+=2){const u=e[s],a=e[s+1],c=u-n,i=a-o;t+=r(c*c+i*i),n=u,o=a}return t},H=(e,t)=>{const n=Object.keys(t);for(let o=0;o<n.length;o++)e.style[n[o]]=t[n[o]]},K=(e,t=.5,n=25,o=!1,r=!1)=>{n=2*~~(n/2);const s=e.length,u=new Float32Array((s-2)*n+2+(o?2*n:0));let a=0;const c=new Float32Array(4*(n+2));let i=4,l=[...e];o?(l.unshift(e[s-1]),l.unshift(e[s-2]),l.push(e[0],e[1])):(l.unshift(e[1]),l.unshift(e[0]),l.push(e[s-2],e[s-1])),c[0]=1;for(let e=1;e<n;e++){const t=e/n,o=t*t,r=o*t,s=2*r,u=3*o;c[i++]=s-u+1,c[i++]=u-s,c[i++]=r-2*o+t,c[i++]=r-o}c[++i]=1;const f=(e,o,r)=>{for(let s=2;s<r;s+=2){const r=e[s],c=e[s+1],i=e[s+2],l=e[s+3],f=(i-e[s-2])*t,v=(l-e[s-1])*t,p=(e[s+4]-r)*t,h=(e[s+5]-c)*t;for(let e=0;e<n;e++){const t=e<<2,n=o[t],s=o[t+1],m=o[t+2],d=o[t+3];u[a++]=n*r+s*i+m*f+d*p,u[a++]=n*c+s*l+m*v+d*h}}};f(l,c,s),o&&(l=[],l.push(e[s-4],e[s-3],e[s-2],e[s-1]),l.push(e[0],e[1],e[2],e[3]),f(l,c,4));const v=o?0:e.length-2;u[a++]=e[v],u[a]=e[v+1];const p=~~(1.33*n+30*t),h=p-p%2;return r?u.slice(h,u.length-h):u},q=()=>{const e=[0,0,0];return e[E(0,2)]=1,e},J=()=>{const e=w();return[e,!e&&w(.33)]},Q=([e=[0,0],n=0,o=1,r=1])=>{const s=[],u=-.5*t;return s.push(...f(o/2,u+n+.025*t*r*R(.5,1)*A(),e),...f(o/4,u+n,e),...f(o/4,u+n+t,e),...f(o/2,u+n+t+.035*t*r*R(.5,1)*A(),e)),K(s,.5,B*j(s)*4,!1)},Z=([e,t,n=[0,1],r=12,s=0,u=!0,a=!1],f)=>{const p=[],h=[],m=c(.33,12,s);let d=[...e],x=-1;p.push(...v(d,f));for(let o=0;o<r;o++){const s=(o+1)/(r+1),[a,c]=i(e,t,s),p=l(a,c,d[0],d[1]),m=[(c-d[1])/p,-(a-d[0])/p],g=R(n[0],n[1])*(u?x*=-1:A());h.push(...v([a+m[0]*g,c+m[1]*g],f)),d=[a,c]}p.push(...h),p.push(...v(t,f));const g=B/r*4*o(j(p),1.15)*(1+8*o(s,1.33));return K(p,m,g,!1,a)},ee=([e,t,n=[1,1],r,s,u])=>{const a=()=>[R(-.9,.9),R(-.9,.9)],i=e?e.slice(-4):[],l=e?[i[2]-i[0],i[3]-i[1]]:[0,0],f=e?[i[2]+-.2*l[0],i[3]+-.2*l[1]]:r||a();return(([e,t=[0,0],n=[0,0],o=[1,1],r,s=!1])=>{const u=[t[0]-.25*n[0],t[1]-.25*n[1]],a=[u[0]+2*n[0],u[1]+2*n[1]],i=[...u,...a],l=r||.33*g(),f=c(.5,6,l);for(let t=0;t<e;t++){const e=i.slice(-2);i.push(e[0]+(o[0]+n[0])*b(),e[1]+(o[1]+n[1])*b())}return K(i,f,B*j(i)*2*(1+2*l),!1,s)})([e?t:3,((e,t)=>-1<=e&&1>=e&&-1<=t&&1>=t)(...f)?f:a(),l,[o(n[0],2),o(n[1],2)],s,u])},te=([e,n,r,s=0,u=[1,1],a=1,c=!1],i)=>{const l=[],f=.03*o(g(),3),p=w(.67);for(let m=0,d=e*n*(c?2:1);m<d;m++){const d=~~(m/n),x=m%n;l.push(Q([v([c?b()*o(g(),.7)*(p?1.33:2)*u[0]:-u[0]+2*u[0]*(x/(n-1))+A()*f,c?b()*o(g(),.7)*(p?1.33:2)*u[1]:-u[1]+2*u[1]*(d/(e-1))+A()*f],i),(h=r,isNaN(h)?2*t*g():r),.09+.03*g()+.35*s,a]))}var h;return l},ne=([e,t=[1,1,5],n=!1,r=!1,s=!1],a)=>{const i=[];let l=w();for(let f=0;f<e;f++){const v=1-.04*g(),p=(r||s)&&l?-1:1,h=1<e?t[n?0:1]*c(-1,1,f/(e-1))*u(e/t[2],1):0;i.push(Z([[n?h:-t[0]*v*p,n?-t[1]*v*p:h],[n?h:t[0]*v*p,n?t[1]*v*p:h],[0,o(R(.01,.05),1.2)],E(4,n?12:9),R(.015,.03)],a)),l=r||s&&w()?!l:l}return i},oe=(o,r)=>{const a=[],c=[],i=w(.33),l=((e,o,r=1,a=30)=>{const c=r*Math.SQRT1_2,i=n(e/c),l=n(o/c),v=Array(i*l),p=[],h=(t,n)=>0<t&&t<e&&0<n&&n<o,m=(e,t)=>[~~(e/c),~~(t/c)],d=(e,t)=>{const n=m(e,t),o=s(n[0]-2,0),a=s(n[1]-2,0),c=u(n[0]+3,i),f=u(n[1]+3,l);for(let n=a;n<f;++n){const s=n*i;for(let n=o;n<c;++n){const o=v[s+n];if(o){const n=o[0]-e,s=o[1]-t;if(n*n+s*s<r*r)return!1}}}return!0},x=(e,t)=>{const n=[e,t],o=m(e,t);return p.push(n),v[i*o[1]+o[0]]=n,n};return()=>{if(!p.length)return x(g()*e,g()*o);do{const e=~~(g()*p.length),n=p[e];for(let e=0;e<a;++e){const[e,o]=f(R(r,2*r),2*t*g(),n);if(h(e,o)&&d(e,o))return x(e,o)}p.splice(e,1)}while(p.length)}})(2,2,R(.1,.3)*(1+r)*(i?.57:1)),p=w(.67)?0:.2+.1*r;let h;do{h=l(),h&&c.push(h)}while(h);for(let n=0,r=c.length;n<r;n++){const r=v(c[n].map((e=>e-1)),[1-p,1-p*o[1]]);a.push(Q([r,i?e(r[1],r[0])+t/2:2*t*g(),R(.09,.18),R(1,2)]))}return[a,q()]},re=e=>[te([E(4,14),E(3,8),0,.12,[.6,.7/e[1]],R(.5,1.5),w(.2)],e),w()?[1,0,0]:[0,0,1]],se=e=>[te([E(4,12),E(3,10),-t/2,0,[.6,.67/e[1]],1.67,w(.2)],e),[0,1,0]],ue=e=>[ne([E(1,10),[.75,1/e[1]*.7,5],!1,...J()],e),[0,1,0]],ae=e=>[ne([E(1,18),[1.1,1/e[1]*.95,7],!1,...J()],e),[0,1,0]],ce=e=>[ne([E(1,5),[.5,1/e[1]*.8,3],!0,...J()],e),w()?[1,0,0]:[0,0,1]],ie=e=>[ne([E(1,8),[.95,1/e[1]*1.1,6],!0,...J()],e),w()?[1,0,0]:[0,0,1]],le=e=>{const t=w(.8)?1:w(.8)?2:3,n=[];for(let r=0;r<t;r++){const t=w(.33),r=g(),s=t?c(0,.1,r)+.25*w(.2):c(.4,1,o(r,2)),u=A()*R(0,.4)*(1+.5*(1-r)),a=A(),i=t?w(.2)?0:-1.25:w(.33)?1:0;n.push(Z([[u,-(1-.33*i-.25*(t?1:0))*(1/e[1])*a],[-u,(1-.33*i-.25*(t?1:0))*(1/e[1])*a],[.15,.35+.15*(t?1:0)],t?E(8,14):E(4,9),s,t,!t],e))}return[n,q()]},fe=()=>{const e=E(8,12),t=[];for(let n=0;n<e;n++)t.push(ee([t[t.length-1],3,[R(.3,.9),R(.3,.9)],[R(-.5,.5),R(-.5,.5)],1,!0]));return[t,q()]},ve="undefined"==typeof tokenData?(