0x2776621f…43f9sent to0xa7d8d9ef…d270·#13,523,166·view on Etherscan
(()=>{"use strict";{const s=e=>new Float32Array(e),l=Math.PI,f=2*l,o=Math.cos,c=Math.sin,u=Math.pow,v=Math.sqrt,x=Math.floor,h=(Math.ceil,Math.abs,Math.min),b=Math.max,y=1/3,d=1/6,p=new Float32Array([1,1,0,-1,1,0,1,-1,0,-1,-1,0,1,0,1,-1,0,1,1,0,-1,-1,0,-1,0,1,1,0,-1,1,0,1,-1,0,-1,-1]);class A{constructor(e,t,r,i,a,n,s,l,f=!1){this.x=e,this.y=t,this.sx=r,this.sy=i,this.px=r,this.py=i,this.life=200,this.frac=a,this.c=n,this.index=s,this.special=f,this.w=!1,this.s=l}}const g={init(e){this.r=this.alea(e),this.p=this.bp(this.r),this.perm=new Uint8Array(512),this.p12=new Uint8Array(512);for(var t=0;t<512;t++)this.perm[t]=this.p[255&t],this.p12[t]=this.perm[t]%12},bp(e){var t,r=new Uint8Array(256);for(t=0;t<256;t++)r[t]=t;for(t=0;t<255;t++){var i=t+~~(e()*(256-t)),a=r[t];r[t]=r[i],r[i]=a}return r},masher(){var e=4022871197;return function(t){t=t.toString();for(var r=0;r<t.length;r++){var i=.02519603282416938*(e+=t.charCodeAt(r));i-=e=i>>>0,e=(i*=e)>>>0,e+=4294967296*(i-=e)}return 2.3283064365386963e-10*(e>>>0)}},alea(){var e=0,t=0,r=0,i=1,a=this.masher();e=a(" "),t=a(" "),r=a(" ");for(var n=0;n<arguments.length;n++)(e-=a(arguments[n]))<0&&(e+=1),(t-=a(arguments[n]))<0&&(t+=1),(r-=a(arguments[n]))<0&&(r+=1);return a=null,function(){var a=2091639*e+2.3283064365386963e-10*i;return e=t,t=r,r=a-(i=0|a)}},n3(e,t,r){var i,a,n,s,l,f,o,c,u,v,h=this.p12,b=this.perm,A=(e+t+r)*y,g=x(e+A),m=x(t+A),E=x(r+A),_=(g+m+E)*d,w=e-(g-_),D=t-(m-_),R=r-(E-_);w>=D?D>=R?(l=1,f=0,o=0,c=1,u=1,v=0):w>=R?(l=1,f=0,o=0,c=1,u=0,v=1):(l=0,f=0,o=1,c=1,u=0,v=1):D<R?(l=0,f=0,o=1,c=0,u=1,v=1):w<R?(l=0,f=1,o=0,c=0,u=1,v=1):(l=0,f=1,o=0,c=1,u=1,v=0);var T=w-l+d,P=D-f+d,F=R-o+d,B=w-c+2*d,k=D-u+2*d,M=R-v+2*d,S=w-1+3*d,I=D-1+3*d,L=R-1+3*d,U=255&g,C=255&m,N=255&E,V=.6-w*w-D*D-R*R;if(V<0)i=0;else{var H=3*h[U+b[C+b[N]]];i=(V*=V)*V*(p[H]*w+p[H+1]*D+p[H+2]*R)}var O=.6-T*T-P*P-F*F;if(O<0)a=0;else{var X=3*h[U+l+b[C+f+b[N+o]]];a=(O*=O)*O*(p[X]*T+p[X+1]*P+p[X+2]*F)}var q=.6-B*B-k*k-M*M;if(q<0)n=0;else{var G=3*h[U+c+b[C+u+b[N+v]]];n=(q*=q)*q*(p[G]*B+p[G+1]*k+p[G+2]*M)}var W=.6-S*S-I*I-L*L;if(W<0)s=0;else{var z=3*h[U+1+b[C+1+b[N+1]]];s=(W*=W)*W*(p[z]*S+p[z+1]*I+p[z+2]*L)}return 32*(i+a+n+s)}},m=(a=[[0,4095,141,38,3872],[311,2815,3920,4095,0],[3822,4044,3942,3908,0,4044,2628],[37,54,4095,2966,4017,4095,54],[3685,4084,2507,1450,3822,530,1604],[4092,3801,529,2900,3379,1892],[3327,2193,1664,2303,546,2458,3529,2180,531,1898],[867,40,2180,4015,514,787,3766],[4095,1695,2810,2751,3822,1695,2185,546,3874],[257,1656,3020,3004,3822,3943],[785,1552,4090,2624,3459,4090,120],[3171,2131,3478,4023,4093,2455,546,308,18],[3021,682,120,86,2236,4044,3805,3959,4072,4023,546],[4042,3447,2425,1111,563,2748],[512,1794,3141,3957,3989,3635],[820,3476,3956,4073,3837,167],[19,1110,2218,2505,3290,3943],[18,375,1688,4041,3619],[0,291,4001,3822,4095,869,1465],[3654,4054,218,395,52],[3994,3976,514,3419,4015,1338,514,787,3766],[0,4095,0],[3838,3021,1675,1145,600,54,2],[1589,3977,2749,89,36],[4090,3800,3988,3921,2,20]],n=[],{geti:function(e){e<0&&(e*=-1),e%=1;let t=n.length,r=x(t*e),i=(r+1)%t,a=t*e-r,s=n[r],l=n[i],f=1-a,o=1/2.2;return[u(l[0],o)*a+f*u(s[0],o),u(l[1],o)*a+f*u(s[1],o),u(l[2],o)*a+f*u(s[2],o),.5]},init:function(e,t){for(var r=0;r<a[e].length;++r){let t=a[e][r],i=(15&t)/16,s=(t>>4&15)/16,l=(t>>8&15)/16;n.push([l,s,i])}}}),E=document.querySelector("canvas"),_=E.getContext("webgl2",{alpha:!1});_.getExtension("EXT_color_buffer_float"),_.getExtension("OES_texture_float_linear"),_.getExtension("EXT_float_blend");const w=_.TRIANGLES,D=_.FRAMEBUFFER,R=_.FLOAT,T=(_.UNSIGNED_BYTE,_.RGBA,_.TEXTURE_2D),P=_.COLOR_ATTACHMENT0,F=_.DEPTH_BUFFER_BIT,B=_.ARRAY_BUFFER,k=_.STATIC_DRAW,M=_.DYNAMIC_DRAW,S=_.ONE,I=_.ONE_MINUS_SRC_ALPHA,L=_.SRC_ALPHA,U=(e,t,r)=>e.getAttribLocation(t,r),C=(e,t,r)=>e.getUniformLocation(t,r),N=()=>_.createBuffer();let V,H,O,X,q,G,W=[],z=[],Y=[];g.init(tokenData.hash);let $=g.r,j=x(25*$());m.init(j);let J=$(),K=$()>.6,Q=$()>.5,Z=$()>.5,ee=$()>.6,te=2+x(3*$()),re=$()>.5;re&&(te=10);let ie=$()>.8,ae=$()*f,ne=.007*o(ae),se=.007*c(ae),le=$()>.5,fe=.002*$(),oe=.1+$(),ce=$()>.5,ue=$()>.5,ve=1.1;ue&&(ve=1.000001);let xe=[],he=1;re&&(he=.7);for(var e=0;e<te;++e)xe.push(he*(.5+u($(),2)));let be=$()>.5;be&&(oe+=.3);let ye=$()>.8,de=$()>.8?100:3+x(5*$()),pe=$()*f,Ae=$()>.9,ge=window.innerWidth,me=window.innerHeight,Ee=!0;if(ge>me){let e=9*ge/16;me>e?me=e:ge=16*me/9}else{Ee=!1;let e=9*me/16;ge>e?ge=e:me=16*ge/9}let _e=b(ge,me),we=h(ge,me);E.width=ge,E.height=me,document.body.style.backgroundColor="#111";const De=E.clientWidth,Re=E.clientHeight;let Te=Math.min(De,Re),Pe=De,Fe=Re,Be=Date.now();function ke(){let e=_.createTexture();_.bindTexture(T,e),_.texImage2D(T,0,_.RGBA32F,q,G,0,_.RGBA,R,null),_.texParameteri(T,_.TEXTURE_MIN_FILTER,_.LINEAR),_.texParameteri(T,_.TEXTURE_MAG_FILTER,_.LINEAR),_.texParameteri(T,_.TEXTURE_WRAP_S,_.MIRRORED_REPEAT),_.texParameteri(T,_.TEXTURE_WRAP_T,_.MIRRORED_REPEAT);let t=_.createFramebuffer();return _.bindFramebuffer(D,t),_.framebufferTexture2D(D,P,T,e,0),[e,t]}function Me(e,t,r){let i=e.createShader(t);return e.shaderSource(i,r),e.compileShader(i),i}function Se(e,t,r){let i=e.createProgram();return e.attachShader(i,t),e.attachShader(i,r),e.linkProgram(i),i}function Ie(){_.useProgram(Ge),_.bindBuffer(B,ot),_.bufferData(B,mt,M),_.bindBuffer(B,ct),_.bufferData(B,gt,M),_.bindBuffer(B,ft),_.enableVertexAttribArray($e),_.vertexAttribPointer($e,2,R,!1,0,0),_.bindBuffer(B,ot),_.enableVertexAttribArray(je),_.vertexAttribPointer(je,4,R,!1,0,0),_.vertexAttribDivisor(je,1),_.bindBuffer(B,ct),_.enableVertexAttribArray(Je),_.vertexAttribPointer(Je,3,R,!1,0,0),_.vertexAttribDivisor(Je,1),_.uniform2f(Ke,Pe/Te,Fe/Te),_.drawArraysInstanced(w,0,vt,yt),_.vertexAttribDivisor(je,0),_.vertexAttribDivisor(Je,0),_.blendFuncSeparate(L,I,S,I)}var t=`precision highp float;varying vec2 v;uniform sampler2D t;void main(){vec4 c=texture2D(t,v);vec2 q=v*(vec2(1.0)-v.yx);float g=q.x*q.y*100.0;g=min(1.0,pow(g,0.1));gl_FragColor=pow(c*g*${ve},vec4(2,2,2,1));}`,r=`attribute vec4 ap;attribute vec4 ac;attribute vec3 as;varying vec4 vc;uniform vec2 d;void main(){vc=ac;gl_Position=vec4((as.z*ap.x+as.${Ee?"x":"y"})/d.x,(as.z*ap.y${Ee?"+as.y":"-as.x"})/d.y,ap.zw);}`;const Le=_.VERTEX_SHADER,Ue=_.FRAGMENT_SHADER,Ce=Me(_,Le,r),Ne=Me(_,Ue,"precision highp float;varying vec4 vc;void main(){gl_FragColor=vc;}"),Ve=Me(_,Le,"attribute vec4 ap;attribute vec2 at;varying vec2 t;void main(){gl_Position=vec4(ap.xyz,1.0);t=at;}"),He=Me(_,Ue,"precision highp float;varying vec2 t;uniform sampler2D u;uniform vec2 d;uniform float b;void main(){float d_c=length(t-vec2(0.5)); float k=b*d_c;float h=d.x;float v=d.y;vec4 s=vec4(0.0);s+=texture2D(u,vec2(t.x-4.0*k*h,t.y-4.0*k*v))*0.016216;s+=texture2D(u,vec2(t.x-3.0*k*h,t.y-3.0*k*v))*0.054054;s+=texture2D(u,vec2(t.x-2.0*k*h,t.y-2.0*k*v))*0.121621;s+=texture2D(u,vec2(t.x-1.0*k*h,t.y-1.0*k*v))*0.194594;s+=texture2D(u,vec2(t.x,t.y))*0.227027;s+=texture2D(u,vec2(t.x+1.0*k*h,t.y+1.0*k*v))*0.194594;s+=texture2D(u,vec2(t.x+2.0*k*h,t.y+2.0*k*v))*0.121621;s+=texture2D(u,vec2(t.x+3.0*k*h,t.y+3.0*k*v))*0.054054;s+=texture2D(u,vec2(t.x+4.0*k*h,t.y+4.0*k*v))*0.016216;gl_FragColor=clamp(s,0.,1.);}"),Oe=Me(_,Le,"attribute vec4 ap;attribute vec2 at;varying vec2 v;void main(){gl_Position=vec4(ap.xyz,1.0);v=at;}"),Xe=Me(_,Ue,t),qe=Me(_,Ue,"precision highp float;varying vec2 v;uniform vec4 c0,c1;void main(){gl_FragColor=mix(c0,c1,v.y);}"),Ge=Se(_,Ce,Ne),We=Se(_,Ve,He),ze=Se(_,Oe,Xe),Ye=Se(_,Oe,qe),$e=U(_,Ge,"ap"),je=U(_,Ge,"ac"),Je=U(_,Ge,"as"),Ke=C(_,Ge,"d"),Qe=U(_,We,"ap"),Ze=U(_,We,"at"),et=C(_,We,"d"),tt=C(_,We,"b"),rt=U(_,ze,"ap"),it=U(_,ze,"at"),at=U(_,Ye,"ap"),nt=U(_,Ye,"at"),st=C(_,Ye,"c0"),lt=C(_,Ye,"c1"),ft=N(),ot=N(),ct=N();q=Pe,G=Fe,[V,H]=ke(),[O,X]=ke();let ut=[],vt=180;for(e=0;e<60;++e){let t=e/60*f,r=(e+1)/60*f;ut.push(0,0,o(t),c(t),o(r),c(r))}_.bindBuffer(B,ft),_.bufferData(B,s(ut),M);const xt=N();_.bindBuffer(B,xt);const ht=s([-1,-1,-1,1,1,-1,1,1,-1,1,1,-1]);_.bufferData(B,ht,k);const bt=N();_.bindBuffer(B,bt),_.bufferData(B,s([0,0,0,1,1,0,1,1,0,1,1,0]),k);let yt=0,dt=m.geti(J),pt=m.geti(J+.05+.2*$()),At=.5;if(Ae){At=1.1;let e=.85;dt[0]=b(e,h(dt[0]*At,1)),dt[1]=b(e,h(dt[1]*At,1)),dt[2]=b(e,h(dt[2]*At,1)),pt[0]=b(e,h(pt[0]*At,1)),pt[1]=b(e,h(pt[1]*At,1)),pt[2]=b(e,h(pt[2]*At,1))}else dt[0]=dt[0]*At,dt[1]=dt[1]*At,dt[2]=dt[2]*At,pt[0]=pt[0]*At,pt[1]=pt[1]*At,pt[2]=pt[2]*At;_.clear(F),_.disable(_.DEPTH_TEST),_.enable(_.BLEND),_.blendFuncSeparate(L,I,S,I),z=[],W=[];let gt=s(z),mt=s(W),Et=0,_t=0,wt=!1;E.addEventListener("pointerdown",(e=>{_t=Et})),window.addEventListener("keydown",(e=>{wt=!wt}));let Dt=[];for(var i=0;i<te;++i){let e=1*i/te;Dt.push(new A(0,0,-200,0,e,null,0,0))}let Rt=2*$()-1,Tt=2*$()-1;function Pt(e){if(e=(e+f)%f,ye){let t=o(l/de)/o(e%(f/de)-l/de);return[o(e-pe)*t,c(e-pe)*t]}if(be){let t=e/f%1,r=4*t-2,i=Rt*t+(1-t)*Tt;return r+=g.n3(2.0687,.5*oe*o(t*f),.5*oe*c(t*f)),i+=g.n3(-4.87,.5*oe*o(t*f),.5*oe*c(t*f)),[r,i]}return[g.n3(2.0687,.5*oe*o(e),.5*oe*c(e)),g.n3(-4.87,.5*oe*o(e),.5*oe*c(e))]}let Ft=10,Bt=-10,kt=10,Mt=-10;for(e=0;e<400;e++){let t=Pt(e/400*f);Ft=h(t[0],Ft),kt=h(t[1],kt),Bt=b(t[0],Bt),Mt=b(t[1],Mt)}let St=b(Bt-Ft,Mt-kt)/1.5;if(!ye&&be){let e=Pt(0),t=Pt(f-.001);Ft=e[0],Bt=t[0],St=(Bt-Ft)/2.1}let It=.5*(Bt+Ft),Lt=.5*(Mt+kt);function Ut(e){if(requestAnimationFrame(Ut),wt)return;Et+=.01;let t=Date.now()-Be,r=864e5,i=t>r&&t<8646e4,a=t-r,n=i?a/1e3:0,u=(m.geti(a/1e3),g.n3(1,2.54,.0042*Et)),h=g.n3(2,2.54,.0012*Et),b=.2*g.n3(8,.0012*Et,1.8),y=(g.n3(4.87,.002*Et,2.08)+1)*f;z=[],W=[];for(var d=0;d<te;++d){let e=Dt[d],t=1*d/te,r=.1*t,i=g.n3(.01*Et,d+24.547,1.054)*l,a=.15*Et+i+t*f,n=Pt(a);e.x=(n[0]-It)/St*_e/Te+g.n3(.1*Et,2.5,1+r)*b,e.y=(n[1]-Lt)/St*we/Te+g.n3(.1*Et,1,4.2+r)*b;let s=Pt(a+.02),o=(s[0]-It)/St*_e/Te+g.n3(.1*Et,2.5,1+r)*b,c=(s[1]-Lt)/St*we/Te+g.n3(.1*Et,1,4.2+r)*b,v=.5-.5*c,x=[dt[0]*v+(1-v)*pt[0],dt[1]*v+(1-v)*pt[1],dt[2]*v+(1-v)*pt[2]];for(var p=0;p<10;p++){let e=1-.1*p;9==p?W.push(1,1,1,1):W.push(x[0],x[1],x[2],.03*e),z.push(o,c,.025*e)}e.frac=J+.2*Et/f+$()*u+t,-200==Dt[d].px&&(e.px=e.x,e.py=e.y),e.sx=e.x-e.px,e.sy=e.y-e.py,e.px=e.x,e.py=e.y,ce?(e.sx+=.002*($()-.5),e.sy+=.002*($()-.5)):(e.sx+=5e-4*($()-.5),e.sy+=5e-4*($()-.5)),$()>.5&&(e.sx*=-1,e.sy*=-1)}let E=.005;for(re&&(E*=.3),d=0;d<te;++d){let e=Dt[d];for(var P=d+1;P<te;++P){let t=Dt[P],r=t.x-e.x,i=t.y-e.y,a=v(r*r+i*i);if(a<.5){let s=2*(.5-a);e.sx-=s*r/a*E,e.sy-=s*i/a*E,t.sx+=s*r/a*E,t.sy+=s*i/a*E,s=.01*(.5-a);let l=x(100*a*$())+10;if(Y.length<2e4||$()>.8)for(p=0;p<=l;++p){let a=1*p/l,f=e.x+r*a,o=e.y+i*a,c=a*(1-a)*.2,u=m.geti(e.frac+(t.frac-e.frac)*a+n);u[3]=s;let v=new A(f,o,0,0,c,u,0,1,!0);v.life=100,Y.push(v)}}}let t=e.frac;$()>.95&&(t+=.5);let r=m.geti(t);$()>.95&&(r[0]*=.5,r[1]*=.5,r[2]*=.5);let i=d;for(;i==d;)i=x($()*te);if(re&&$()>.9||$()>.2+.1*te){let t=new A(e.x,e.y,e.sx,e.sy,e.frac,r,i,xe[d]);le&&$()>.95&&(t.w=!0,t.c[3]*=.4),Y.push(t)}}for(p=0;p<Y.length;++p){let e=Y[p],t=e.life/200;if(e.life-=1,0==e.special){if(ie){let t=Math.atan2(e.sy,e.sx),r=v(e.sx*e.sx+e.sy*e.sy);t=x(5*(t+f-y)/f)*f/5+y,e.x+=r*o(t),e.y+=r*c(t)}else e.x+=e.sx,e.y+=e.sy;e.sx*=.99,e.sy*=.99,e.frac+=fe;let t=e.frac;Z&&(t+=.05*$());let r=m.geti(t+n);if(e.c[0]=r[0],e.c[1]=r[1],e.c[2]=r[2],e.w&&(e.c=[1,1,1,e.c[3]]),Q){let t=g.n3(.1*e.x,.1*e.y,.05*Et)*f*2;e.sx+=61e-6*o(t)*h,e.sy+=61e-6*c(t)*h}else e.sx+=2e-4*g.n3(e.x,e.y,.05*Et)*h,e.sy+=2e-4*g.n3(e.x,e.y,.05*-Et)*h;if(K){let t=Dt[e.index].x-e.x,r=Dt[e.index].y-e.y,i=v(t*t+r*r);e.sx+=t/i*2e-5,e.sy+=r/i*2e-5}}if(ee){z.push(e.x+ne,e.y+se,.04*t*(1-t)*e.s);let r=.2;if(W.push(e.c[0]*r,e.c[1]*r,e.c[2]*r,.3*e.c[3]),z.push(e.x,e.y,.04*t*(1-t)*e.s),ue)W.push(t+e.c[0]*(1-t),t+e.c[1]*(1-t),t+e.c[2]*(1-t),e.c[3]);else{let r=.4*t+1.1*(1-t);W.push(e.c[0]*r,e.c[1]*r,e.c[2]*r,e.c[3])}}else{z.push(e.x,e.y,.04*t*(1-t)*e.s);let r=.2*t+1.1*(1-t);ue?W.push(t+e.c[0]*(1-t),t+e.c[1]*(1-t),t+e.c[2]*(1-t),e.c[3]):W.push(e.c[0]*r,e.c[1]*r,e.c[2]*r,e.c[3])}}Y=Y.filter((e=>e.life>0)),yt=z.length/3,gt=s(z),mt=s(W),_.bindFramebuffer(D,H),_.viewport(0,0,q,G),_.useProgram(Ye),_.enableVertexAttribArray(at),_.bindBuffer(B,xt),_.vertexAttribPointer(at,2,R,!1,0,0),_.enableVertexAttribArray(nt),_.bindBuffer(B,bt),_.vertexAttribPointer(nt,2,R,!1,0,0);let k=i?.01:1e-4;Et<.1&&(k=1),_.uniform4f(st,dt[0],dt[1],dt[2],k),_.uniform4f(lt,pt[0],pt[1],pt[2],k),_.drawArrays(w,0,6);let M=.025*Te/1e3;if(_.bindFramebuffer(D,X),_.viewport(0,0,q,G),_.clear(F),_.useProgram(We),_.bindTexture(T,V),_.bindBuffer(B,xt),_.vertexAttribPointer(Qe,2,R,!1,0,0),_.enableVertexAttribArray(Qe),_.enableVertexAttribArray(Ze),_.bindBuffer(B,bt),_.vertexAttribPointer(Ze,2,R,!1,0,0),_.uniform2f(et,.5/q,0),_.uniform1f(tt,M),_.drawArrays(w,0,6),_.bindFramebuffer(D,H),_.viewport(0,0,q,G),_.clear(F),_.bindTexture(T,O),_.uniform2f(et,0,.5/G),_.drawArrays(w,0,6),_.bindFramebuffer(D,H),_.viewport(0,0,q,G),Ie(),_.bindFramebuffer(D,null),_.viewport(0,0,_.canvas.width,_.canvas.height),_.useProgram(ze),_.bindTexture(T,V),_.enableVertexAttribArray(rt),_.bindBuffer(B,xt),_.vertexAttribPointer(rt,2,R,!1,0,0),_.enableVertexAttribArray(it),_.bindBuffer(B,bt),_.vertexAttribPointer(it,2,R,!1,0,0),_.drawArrays(w,0,6),Et<_t+5){for(z=[],W=[],p=0;p<800;p++){let e=Pt(p/800*f),t=(e[0]-It)/St*_e/Te,r=(e[1]-Lt)/St*we/Te,i=(_t+5-Et)/5;z.push(t,r,.01*i),Ae?W.push(0,0,0,.1*i):W.push(1,1,1,.1*i)}gt=s(z),mt=s(W),yt=z.length/3,Ie()}}window.requestAnimationFrame(Ut)}var a,n})();