memoscan
← all memos

Memo 0x9d1a1632…2ac804 on Ethereum

(()=>{"use strict";{const n=t=>new Float32Array(t),o=2*Math.PI,c=Math.cos,f=Math.sin,l=Math.pow,s=Math.sqrt,u=Math.floor,v=Math.abs,b=Math.min,h=Math.max;class A{constructor(t,e,r,a,i,n,o,c=!1){this.x=t,this.y=e,this.z=r,this.frac=a,this.s=i,this.angle=n,this.frac2=1,this.frac4=1,this.fc=0,this.active=c,this.done=!1}}const p={init(t){this.r=this.alea(t),this.p=this.bp(this.r),this.perm=new Uint8Array(512),this.p12=new Uint8Array(512);for(var e=0;e<512;e++)this.perm[e]=this.p[255&e],this.p12[e]=this.perm[e]%12},bp(t){var e,r=new Uint8Array(256);for(e=0;e<256;e++)r[e]=e;for(e=0;e<255;e++){var a=e+~~(t()*(256-e)),i=r[e];r[e]=r[a],r[a]=i}return r},masher(){var t=4022871197;return function(e){e=e.toString();for(var r=0;r<e.length;r++){var a=.02519603282416938*(t+=e.charCodeAt(r));a-=t=a>>>0,t=(a*=t)>>>0,t+=4294967296*(a-=t)}return 2.3283064365386963e-10*(t>>>0)}},alea(){var t=0,e=0,r=0,a=1,i=this.masher();t=i(" "),e=i(" "),r=i(" ");for(var n=0;n<arguments.length;n++)(t-=i(arguments[n]))<0&&(t+=1),(e-=i(arguments[n]))<0&&(e+=1),(r-=i(arguments[n]))<0&&(r+=1);return i=null,function(){var i=2091639*t+2.3283064365386963e-10*a;return t=e,e=r,r=i-(a=0|i)}}},x=(a=[[3546,3490,3456,1364,0],[3822,4095,3549,2457,4095],[0,4095,3549,0],[18,375,1688,4041,3619],[0,679,120,3324,341,50,34],[3892,3106,2050,1536,768,512],[618,72,38,19,18,2],[3171,2131,3478,4023,4093,2455,546,308,18],[4095,3985,2541,715,869,18],[19,1110,2218,2505,3290,3943],[3838,3021,1675,1145,600,54,2],[2115,3685,3990,4041,3547,3566],[1589,3977,2749,89,36],[3021,682,120,86,2236,4044,3805,3959,4072,4023,546],[2982,2710,2728,3511,3780,3800,2728,1638,1124,2184,1638,0,105,71,0,1024,1856,2144,1600,2144,1888,2692],[4042,3447,2425,1111,563,2748],[0,291,4001,3822,4095,869,1465],[785,1552,4090,2624,3459,4090,120],[3994,3976,514,3419,4015,1338,514,787,3766],[512,1794,3141,3957,3989,3635],[3654,4054,218,395,52],[311,2815,3920,4095,0],[0,4095,190,106,3936],[4078,2988,70,154,2543,3567,138,4060],[3685,4084,2507,1450,3822,530,1604]],i=[],{g:function(t){t<0&&(t*=-1),t%=1;let e=i.length,r=u(e*t),a=(r+1)%e,n=e*t-r,o=i[r],c=i[a],f=1-n,s=1/2.2;return[l(l(c[0],s)*n+f*l(o[0],s),2.2),l(l(c[1],s)*n+f*l(o[1],s),2.2),l(l(c[2],s)*n+f*l(o[2],s),2.2)]},i:function(t,e){for(var r=0;r<a[t].length;++r){let n=a[t][r];console.log(n);let o=(15&n)/16,c=(n>>4&15)/16,f=(n>>8&15)/16;e&&(o=h(0,b(1,o+.05*Y()-.025)),c=h(0,b(1,c+.05*Y()-.025)),f=h(0,b(1,f+.05*Y()-.025))),i.push([f,c,o])}}}),m=document.createElement("canvas");m.style="position:absolute;top:0;left:0;right:0;bottom:0;margin:0 auto;",document.body.prepend(m);const d=m.getContext("webgl",{alpha:!1}),E=d.getExtension("ANGLE_instanced_arrays"),g=d.TRIANGLES,_=d.FRAMEBUFFER,y=d.FLOAT,D=d.UNSIGNED_BYTE,T=d.RGBA,R=d.TEXTURE_2D,F=d.COLOR_ATTACHMENT0,w=d.COLOR_BUFFER_BIT|d.DEPTH_BUFFER_BIT,P=d.ARRAY_BUFFER,B=d.STATIC_DRAW,N=d.DYNAMIC_DRAW,L=d.ONE,M=d.ONE_MINUS_SRC_ALPHA,G=d.SRC_ALPHA,U=(t,e,r)=>t.getAttribLocation(e,r),S=(t,e,r)=>t.getUniformLocation(e,r),I=()=>d.createBuffer();let C,H,z,V,O,k,W=[],X=[],q=[];tokenData.tokenId,p.init(tokenData.hash);let Y=p.r,j=2+u(23*Y()),J=Y()>.9,K=Y()>.5,Q=Y()>.7,Z=Y()>.9,$=u(4*Y()),tt=.5+1.2*l(Y(),2),et=Y()>.5,rt=Y()>.9,at=Y()>.7,it=.25+.5*Y(),nt=.1+.7*Y(),ot=Y();x.i(j,J);let ct=[];for(var t=0;t<30;++t){let ve=t/30,be=x.g(ve);ct.push(be[0],be[1],be[2],1)}let ft=200,lt=[];for(t=0;t<ft;++t){let he=t/ft,Ae=x.g(ot+he);lt.push(.6+.4*Ae[0],.6+.4*Ae[1],.6+.4*Ae[2])}x.i(K?1:0);let st=[];for(t=0;t<30;++t){let pe=t/30,xe=x.g(pe);st.push(xe[0],xe[1],xe[2],1)}let ut=window.innerWidth,vt=window.innerHeight,bt=16/9,ht=ut*bt;vt>ht?vt=ht:ut=vt/bt,m.width=ut,m.height=vt;const At=m.clientWidth,pt=m.clientHeight;let xt=Math.min(At,pt),mt=At,dt=pt,Et=[],gt=100,_t=180;for(t=0;t<gt*_t;++t)Et.push([]);function yt(t,e,r){let a=u((t+1)/2*gt),i=u((e+bt)/(2*bt)*_t);a>=0&&a<gt&&i>=0&&i<_t&&Et[a*_t+i].push(r)}function Dt(t,e,r=-1){let a=[],i=u((t+1)/2*gt),n=u((e+bt)/(2*bt)*_t),o=h(0,i-5),c=h(0,n-5),f=b(gt-1,i+5),l=b(_t-1,n+5);for(var s=o;s<=f;++s)for(var v=c;v<=l;++v)for(var A=0;A<Et[s*_t+v].length;++A)a.push(Et[s*_t+v][A]);let p=-1,x=81;for(A=0;A<a.length;++A){let i=a[A];if(i!=r&&0==ee[i].done){let r=ee[i].x,a=ee[i].y,n=(t-r)*(t-r)+(e-a)*(e-a);n<x&&(x=n,p=i)}}return p}function Tt(t,e,r,a){if(v(t)>1||v(e)>bt)return!1;let i=[],n=u((t+1)/2*gt),o=u((e+bt)/(2*bt)*_t),c=h(0,n-2),f=h(0,o-2),l=b(gt-1,n+2),A=b(_t-1,o+2);for(var p=c;p<=l;++p)for(var x=f;x<=A;++x)for(var m=0;m<Et[p*_t+x].length;++m)i.push(Et[p*_t+x][m]);for(m=0;m<i.length;++m){let n=i[m];if(n!=a){let a=ee[n].x,i=ee[n].y,o=ee[n].s;if(s((t-a)*(t-a)+(e-i)*(e-i))-r-o<0)return!1}}return!0}function Rt(){let t=d.createTexture();d.bindTexture(R,t),d.texImage2D(R,0,T,O,k,0,T,D,null),d.texParameteri(R,d.TEXTURE_MIN_FILTER,d.LINEAR),d.texParameteri(R,d.TEXTURE_MAG_FILTER,d.LINEAR),d.texParameteri(R,d.TEXTURE_WRAP_S,d.CLAMP_TO_EDGE),d.texParameteri(R,d.TEXTURE_WRAP_T,d.CLAMP_TO_EDGE);let e=d.createFramebuffer();d.bindFramebuffer(_,e),d.framebufferTexture2D(_,F,R,t,0);const r=d.createRenderbuffer();return d.bindRenderbuffer(d.RENDERBUFFER,r),d.renderbufferStorage(d.RENDERBUFFER,d.DEPTH_COMPONENT16,O,k),d.framebufferRenderbuffer(d.FRAMEBUFFER,d.DEPTH_ATTACHMENT,d.RENDERBUFFER,r),d.checkFramebufferStatus(d.FRAMEBUFFER),[t,e]}class Ft{constructor(t,e,r,a=[],i=[]){let n=wt(t,t.VERTEX_SHADER,e),o=wt(t,t.FRAGMENT_SHADER,r);this.p=t.createProgram(),t.attachShader(this.p,n),t.attachShader(this.p,o),t.linkProgram(this.p),this.a=[];for(var c=0;c<a.length;++c)this.a[a[c]]=U(t,this.p,a[c]);for(this.u=[],c=0;c<i.length;++c)this.u[i[c]]=S(t,this.p,i[c])}}function wt(t,e,r){let a=t.createShader(e);return t.shaderSource(a,r),t.compileShader(a),a}function Pt(t,e){d.disable(d.DEPTH_TEST),d.bindBuffer(P,Ht),d.bufferData(P,n(lt),N),d.useProgram(Lt.p),d.bindBuffer(P,Jt),d.enableVertexAttribArray(Lt.a.ap),d.vertexAttribPointer(Lt.a.ap,2,y,!1,0,0),d.bindBuffer(P,Ht),d.enableVertexAttribArray(Lt.a.c0),d.vertexAttribPointer(Lt.a.c0,3,y,!1,0,0),E.vertexAttribDivisorANGLE(Lt.a.c0,1),d.uniform1f(Lt.u.b,t),d.uniform1f(Lt.u.l,e);let r=[];for(var a=0;a<ft;++a){let t=(a+.5)/ft;r.push(2*t-1,1.1/ft)}d.bindBuffer(P,It),d.bufferData(P,n(r),N),d.enableVertexAttribArray(Lt.a.as),d.vertexAttribPointer(Lt.a.as,2,y,!1,0,0),E.vertexAttribDivisorANGLE(Lt.a.as,1),E.drawArraysInstancedANGLE(g,0,6,ft),E.vertexAttribDivisorANGLE(Lt.a.ap,0),E.vertexAttribDivisorANGLE(Lt.a.c0,0),E.vertexAttribDivisorANGLE(Lt.a.as,0)}function Bt(t){d.clear(d.DEPTH_BUFFER_BIT),d.enable(d.DEPTH_TEST),d.useProgram(Nt.p),d.bindBuffer(P,Ut),d.bufferData(P,t?qt:Xt,N),d.enableVertexAttribArray(Nt.a.ap),d.vertexAttribPointer(Nt.a.ap,4,y,!1,0,0),d.bindBuffer(P,St),d.bufferData(P,$t,N),d.enableVertexAttribArray(Nt.a.ac),d.vertexAttribPointer(Nt.a.ac,4,y,!1,0,0),E.vertexAttribDivisorANGLE(Nt.a.ac,1),d.bindBuffer(P,It),d.bufferData(P,Qt,N),d.enableVertexAttribArray(Nt.a.as),d.vertexAttribPointer(Nt.a.as,4,y,!1,0,0),E.vertexAttribDivisorANGLE(Nt.a.as,1),d.bindBuffer(P,Ct),d.bufferData(P,Zt,N),d.enableVertexAttribArray(Nt.a.al),d.vertexAttribPointer(Nt.a.al,2,y,!1,0,0),E.vertexAttribDivisorANGLE(Nt.a.al,1),d.uniform4fv(Nt.u.cols,ct),d.uniform4fv(Nt.u.cols2,st),d.uniform2f(Nt.u.d,mt/xt,dt/xt),E.drawArraysInstancedANGLE(g,0,t?Wt:kt,ie),E.vertexAttribDivisorANGLE(Nt.a.ap,0),E.vertexAttribDivisorANGLE(Nt.a.as,0),E.vertexAttribDivisorANGLE(Nt.a.ac,0),E.vertexAttribDivisorANGLE(Nt.a.al,0)}var e="precision highp float;varying vec4 vc;void main(){gl_FragColor=vc;}";const Nt=new Ft(d,"precision highp float;attribute vec4 ap;attribute vec4 ac;attribute vec4 as;attribute vec2 al;varying vec4 vc;uniform vec2 d;uniform vec4 cols[30];uniform vec4 cols2[30];vec4 get(float l,float m){l=30.0*l;float i0=(mod(l,30.0));int i1=int(mod(i0+1.0,30.0));float f=fract(l);vec4 col0=cols[int(i0)];vec4 col1=cols[i1];if(m>0.5){col0=cols2[int(i0)];col1=cols2[i1];} return mix(col0, col1,f);}vec3 so(vec3 c){float l=0.4122214708*c.r+0.5363325363*c.g+0.0514459929*c.b;float m=0.2119034982*c.r+0.6806995451*c.g+0.1073969566*c.b;float s=0.0883024619*c.r+0.2817188376*c.g+0.6299787005*c.b;float l_=pow(l,1.0/3.0);float m_=pow(m,1.0/3.0);float s_=pow(s,1.0/3.0);return vec3(0.2104542553*l_+0.7936177850*m_-0.0040720468*s_,1.9779984951*l_-2.4285922050*m_+0.4505937099*s_,0.0259040371*l_+0.7827717662*m_-0.8086757660*s_);}vec3 os(vec3 c){float l_=c.x+0.3963377774*c.y+0.2158037573*c.z;float m_=c.x-0.1055613458*c.y-0.0638541728*c.z;float s_=c.x-0.0894841775*c.y-1.2914855480*c.z;float l=l_*l_*l_;float m=m_*m_*m_;float s =s_*s_*s_;return vec3(4.0767416621*l-3.3077115913*m+0.2309699292*s,-1.2684380046*l+2.6097574011*m-0.3413193965*s,-0.0041960863*l-0.7034186147*m+1.7076147010*s);}void main(){vec4 c=get(fract(ac.x+ap.z*ac.z),al.y);vec3 w=so(c.xyz);vc.xyz=os(vec3(w.r*al.x,w.gb));vc.a=ac.w;mat2 rot=mat2(cos(ac.y),sin(ac.y),-sin(ac.y),cos(ac.y));vec2 pos = rot*ap.xy;gl_Position=vec4((as.w*pos.x+as.x)/d.x,(as.w*pos.y+as.y)/d.y,as.z,1.0);}",e,["ap","ac","as","al"],["d","cols","cols2"]),Lt=new Ft(d,"attribute vec2 ap;attribute vec3 c0;attribute vec2 as;uniform float b;uniform float l;varying vec4 vc;void main(){ vc=vec4(c0,b);gl_Position=vec4(ap.x*l,(ap.y*as.y+as.x)*l,1.0,1.0);}",e,["ap","c0","as"],["b","l"]),Mt=new Ft(d,"precision highp float;attribute vec4 ap;attribute vec2 at;varying vec2 t;void main(){ gl_Position=vec4(ap.xyz,1.0);t=at;}","precision highp float;varying vec2 t;uniform sampler2D u;uniform vec4 d;uniform float b;void main(){float l=length(t.xy-d.zw);float h=d.x*b*l;float v=d.y*b*l;vec4 s=vec4(0.0);s+=texture2D(u,vec2(t.x-4.0*h,t.y-4.0*v))*0.016216;s+=texture2D(u,vec2(t.x-3.0*h,t.y-3.0*v))*0.054054;s+=texture2D(u,vec2(t.x-2.0*h,t.y-2.0*v))*0.121621;s+=texture2D(u,vec2(t.x-1.0*h,t.y-1.0*v))*0.194594;s+=texture2D(u,vec2(t.x,t.y))*0.227027;s+=texture2D(u,vec2(t.x+1.0*h,t.y+1.0*v))*0.194594;s+=texture2D(u,vec2(t.x+2.0*h,t.y+2.0*v))*0.121621;s+=texture2D(u,vec2(t.x+3.0*h,t.y+3.0*v))*0.054054;s+=texture2D(u,vec2(t.x+4.0*h,t.y+4.0*v))*0.016216;gl_FragColor=clamp(s,0.,1.);}",["ap","at"],["d","b"]),Gt=new Ft(d,"precision highp float;attribute vec2 ap;attribute vec2 at;varying vec2 v;void main(){ gl_Position=vec4(ap,0.0,1.0);v=at;}","precision highp float;varying vec2 v;uniform sampler2D t;void main(){ gl_FragColor=texture2D(t,v);}",["ap","at"]),Ut=I(),St=I(),It=I(),Ct=I(),Ht=I();O=2*mt,k=2*dt,[C,H]=Rt(),[z,V]=Rt();let zt=[],Vt=[],Ot=Q?4:60,kt=3*Ot,Wt=6*Ot;for(t=0;t<Ot;++t){let me=t/Ot*o,de=2*t/Ot;de>1&&(de=2-de);let Ee=2*(t+1)/Ot;Ee>1&&(Ee=2-Ee);let ge=(t+1)/Ot*o;zt.push(0,0,0,0,c(me),f(me),de,de,c(ge),f(ge),Ee,Ee),Vt.push(c(me),f(me),de,de,c(ge),f(ge),Ee,Ee,.8*c(ge),.8*f(ge),Ee,Ee,c(me),f(me),de,de,.8*c(ge),.8*f(ge),Ee,Ee,.8*c(me),.8*f(me),de,de)}let Xt=n(zt),qt=n(Vt);const Yt=I();d.bindBuffer(P,Yt);const jt=n([-1,-1,-1,1,1,-1,1,1,-1,1,1,-1]);d.bufferData(P,jt,B);const Jt=I();d.bindBuffer(P,Jt),d.bufferData(P,jt,B);const Kt=I();d.bindBuffer(P,Kt),d.bufferData(P,n([0,0,0,1,1,0,1,1,0,1,1,0]),B),X=[],q=[],W=[];let Qt=n(X),Zt=n(q),$t=n(W),te=0,ee=[];d.clearColor(1,1,1,1),d.clear(w),d.enable(d.BLEND),d.blendFuncSeparate(G,M,L,M);let re=0,ae=15e4,ie=0,ne=.1+Y()*Y()*.1,oe=0,ce=0,fe=20+30*Y();for(t=0;t<fe;++t){let _e=1.6*(Y()-.5),ye=(Y()-.5)*(2*bt-.4);Y()>.5&&(_e=oe,ye=ce),oe=_e,ce=ye;let De=Y()>.5?2:1,Te=.004,Re=Te,Fe=Y(),we=Y()*o,Pe=.1*(Y()-.5),Be=200+500*Y();for(r=0;r<Be;++r){let Ne=new A(_e,ye,.001,.5,Re,Y(),1);yt(_e,ye,ie),ie++,_e+=c(we)*Te*1.2,ye+=f(we)*Te*1.2,Ne.done=!0,Z?Y()>.99&&(we+=50*Pe*Y()):we+=Pe*Y(),Re*=.995,Ne.frac=Fe+1-.001*r,Ne.frac2=.041,Ne.frac4=De,ee.push(Ne)}}for(t=0;t<ae;++t){let Le=1.8*(Y()-.5),Me=(Y()-.5)*(2*bt-.2),Ge=.0021,Ue=new A(Le,Me,.11,.5,Ge,Y(),1);Ue.frac=Me/4*tt+2+Y()*ne,1==$?Ue.frac+=v(Le)/4:2==$?Ue.frac+=Le/4:3==$&&(Ue.frac+=1-Le/4),Ue.frac2=.05+.1*Y();let Se=Ge;at&&Y()>.5&&(Se*=2+u(3*Y())),Ue.s=Se,Tt(Le,Me,Se,ie-1)&&(ee.push(Ue),Ue.frac4=.9,yt(Le,Me,ie),ie++)}let le=20+40*Y();for(var r=0;r<le;++r){let Ie=[],Ce=Dt(Y()-.5,2.3*(Y()-.5));if(0==r&&(Ce=Dt(2*it-1,nt*bt)),-1==Ce)continue;Ie.push(Ce);let He=r/le;ee[Ce].frac=He,ee[Ce].frac2=.5,ee[Ce].done=!0,ae=1e3+Y()*Y()*4e3;let ze=l(Y(),3.5),Ve=(.002*Y()+5e-4)*(.1+.9*Y()),Oe=0,ke=Y()>.6?1.05+Y()*Y()*.06:1;et&&Y()>.5&&(Oe=.2+.6*Y(),ke=1);let We=Y()>.5;for(We&&(ee[Ce].fc=1),t=0;t<ae;++t){let Xe=u(l(Y(),ze)*(Ie.length-1));if(Ie[Xe],Ce=Ie[Xe],ee[Ce].x,ee[Ce].y,ee[Ce].frac,Ce=Dt(ee[Ce].x,ee[Ce].y,Ce),-1==Ce)break;ee[Ce].x,ee[Ce].y,Y()>Oe&&(ee[Ce].frac=(He+3-t*Ve)%1),ee[Ce].frac2=.8,ee[Ce].frac4=ke,ee[Ce].done=!0,We&&(ee[Ce].fc=1),Ie.push(Ce)}}for(t=0;t<5e3;++t){let qe=u(Y()*ee.length);ee[qe].frac+=.05*Y()}for(t=0;t<50;++t){let Ye=1.6*(Y()-.5),je=(Y()-.5)*(2*bt-.4),Je=new A(Ye,je,.01,.5,.02+.18*Y(),Y(),1);Je.frac=je/4*tt+2+Y()*ne,Je.frac2=.015,Je.frac4=.95,ee.push(Je)}let se=!0;function ue(t){requestAnimationFrame(ue),te+=b(.001*(t-re),.0333),re=t,X=[],q=[],W=[],d.bindFramebuffer(_,H),d.viewport(0,0,O,k),d.clear(d.DEPTH_BUFFER_BIT),se&&Pt(1,1),se=!1;let e=8*xt/1e3;d.bindFramebuffer(_,V),d.viewport(0,0,O,k),d.clear(w),d.useProgram(Mt.p),d.bindTexture(R,C),d.bindBuffer(P,Yt),d.vertexAttribPointer(Mt.a.ap,2,y,!1,0,0),d.enableVertexAttribArray(Mt.a.ap),d.enableVertexAttribArray(Mt.a.at),d.bindBuffer(P,Kt),d.vertexAttribPointer(Mt.a.at,2,y,!1,0,0),d.uniform4f(Mt.u.d,.5/O,0,it,.5*nt+.5),d.uniform1f(Mt.u.b,e),d.drawArrays(g,0,6),d.bindFramebuffer(_,H),d.viewport(0,0,O,k),d.clear(w),d.bindTexture(R,z),d.uniform4f(Mt.u.d,0,.5/k,it,.5*nt+.5),d.drawArrays(g,0,6);for(let t=0;t<ee.length;++t){let e=ee[t];W.push((e.frac+.01*te)%1,e.angle,0,e.frac2),X.push(e.x,e.y,e.z,e.s),q.push(e.frac4,e.fc)}ie=X.length/4,Qt=n(X),$t=n(W),Zt=n(q),Bt(rt),d.bindFramebuffer(_,null),d.viewport(0,0,d.canvas.width,d.canvas.height),d.useProgram(Gt.p),d.bindTexture(R,C),d.enableVertexAttribArray(Gt.a.ap),d.bindBuffer(P,Yt),d.vertexAttribPointer(Gt.a.ap,2,y,!1,0,0),d.enableVertexAttribArray(Gt.a.at),d.bindBuffer(P,Kt),d.vertexAttribPointer(Gt.a.at,2,y,!1,0,0),d.disable(d.BLEND),d.drawArrays(g,0,6),d.enable(d.BLEND)}window.requestAnimationFrame(ue)}var a,i})();