0x4666fd1f…6b59sent to0x62e37f66…923b·#14,601,296·view on Etherscan
const t=void 0;var e=t=>{const e=Uint32Array.from([0,0,0,0].map(((e,i)=>parseInt(t.substr(8*i+2,8),16)))),i=()=>{let t,i=e[3];return e[3]=e[2],e[2]=e[1],e[1]=t=e[0],i^=i<<11,i^=i>>>8,e[0]=i^t^t>>>19,e[0]/4294967296},s=(t=.5)=>i()<t,h=void 0,o=(t,e)=>e?i()*(e-t)+t:i()*t,r=(t,e)=>Math.floor(o(t,e)),n=t=>t.length?t[r(0,t.length)]:void 0,p=t=>{let e=t.reduce(((t,e)=>t+e)),s=i()*e;for(let e=0;e<t.length;e++){if(s<t[e])return e;s-=t[e]}return 0};let a=!1,l=null;const d=(t,e)=>{if(a){a=!1;let i=l;return l=null,t+e*i}{let s=0,h=0,o=0;do{s=2*i()-1,h=2*i()-1,o=s*s+h*h}while(o>=1||0===o);let r=Math.sqrt(-2*Math.log(o)/o);return l=h*r,a=!0,t+e*(s*r)}},c=(t,e)=>{let i;return w(t).slice(0,e)},w=t=>{let e,s,h=t.length,o=t.slice();for(;h;)e=Math.floor(i()*h--),s=o[h],o[h]=o[e],o[e]=s;return o};return{rnd:i,chance:s,bool:s,range:o,rangeFloor:r,pick:n,pickSome:c,weighted:p,shuffleArray:w,gaussian:d}};const i=void 0;var s=[["#5E1C9F",["#4375E2","#5CF7F5","#EC37DB","#FAEE44","#FF636A"]],["#0B0835",["#3F8A8C","#E5340B","#FFE7BD"]],["#4C0082",["#F14A39","#AA0067","#D6BC4B","#1E67AF"]],["#252422",["#fffcf2","#ccc5b9","#403d39","#eb5e28"]],["#032b43",["#d00000","#ffba08","#3f88c5"]],["#000000",["#ffffff","#dddddd","#ffffff","#999999"]],["#100c08",["#ff206e","#fbff12","#41ead4"]],["#00204a",["#d9faff","#00bbf0","#005792"]],["#2d2d2d",["#ffffff","#fec3f0","#fa110d","#54282a"]],["#2289b6",["#94afc0","#f7bd40","#e0160a"]],["#102E4D",["#E3E3E3","#B7181E","#E4AA11","#09678A"]],["#202532",["#047af6","#7401df","#32fa00","#ff00d5"]],["#323031",["#177e89","#084c61","#db3a34","#ffc857"]],["#4B1351",["#AC314B","#DFE5E4","#285599","#E0AB56"]],["#001524",["#15616d","#ffecd1","#ff7d00","#78290f"]],["#001427",["#708d81","#f4d58d","#bf0603","#8d0801"]],["#0d0b0b",["#d80056","#ff8c01","#ecedef","#5cb8d7"]],["#0e0e0e",["#d9322b","#f3a606","#075ea8","#e1d2b3"]],["#075ea8",["#d9322b","#f3a606","#e1d2b3"]],["#2138ff",["#FEC23B","#EAE8D5","#DA292C"]]];const h=(t,e,i)=>t.map(((s,h)=>lerp(t[h],e[h],i))),o=t=>[...t.substr(1)].reduce(((t,e,i,s)=>i%2?t.concat(parseInt(`${s[i-1]}${s[i]}`,16)):t),[]),r=(t,e)=>{const i=[],s=Math.ceil(e/t.length),r=1/s,n=t.map((t=>o(t)));for(let t=0;t<n.length;t+=1)for(let e=0;e<s;e+=1){const s=n[t],o=n[(t+1)%n.length];i.push(h(s,o,(e+1)*r))}return i},n=(t,e,i)=>Array.isArray(e)?e[t*e.length|0]:e||0===e?i||0===i?(e>i&&([e,i]=[i,e]),e+t()*(i-e)):t()*e:t(),p=(t,e,i,s,h,o,r,a,l,d)=>{if(h--,(d-=1)>0||h>=0&&n(l)<r)if(i>=s){let c=i*n(l,a[0],a[1]);p(t,e,c,s,h,o,r,a,l,d),p(t+c,e,i-c,s,h,o,r,a,l,d)}else{let c=s*n(l,a[0],a[1]);p(t,e,i,c,h,o,r,a,l,d),p(t,e+c,i,s-c,h,o,r,a,l,d)}else o.push({x:t,y:e,w:i,h:s,n:h})},a=(t,e,i,s,h,o,r=.7,n,p)=>{if(h--,p||h>=0&&n()<r){let p=i/2,l=s/2;a(t,e,p,l,h,o,r,n),a(t+p,e,p,l,h,o,r,n),a(t+p,e+l,p,l,h,o,r,n),a(t,e+l,p,l,h,o,r,n)}else o.push({x:t,y:e,w:i,h:s,n:h})},l=(t,e,i,s,h,o,r)=>{const n=t.drawingContext.createLinearGradient(e,i,s,h);return o.forEach(((t,e)=>n.addColorStop(t,r[e]))),t.drawingContext.fillStyle=n,n},d=(t,e,i,s,h,o)=>{const r=drawingContext.createLinearGradient(t,e,i,s);return h.forEach(((t,e)=>r.addColorStop(t,o[e]))),drawingContext.fillStyle=r,r},c=(t,e,i,s,h,o)=>{const r=t.drawingContext.createRadialGradient(e,i,0,e,i,s);return h.forEach(((t,e)=>r.addColorStop(t,o[e]))),t.drawingContext.fillStyle=r,r},w=(t,e,i,s,h)=>{const o=[];for(let r=0;r<h-1;r+=1){const n=lerp(t,i,r/(h-1)),p=lerp(e,s,r/(h-1));o.push({x:n,y:p})}return o.push({x:i,y:s}),o},f=(t,e,i,s,h)=>{const o=[];for(let r=0;r<i;r+=1)o.push({x:t+s*cos(h),y:e+s*sin(h)}),h+=360/i;return o},g=(t,e,i,s,h,o)=>{const r=f(t,e,s,h,o),n=i/s,p=[];for(let t=0;t<s;t+=1)for(let e=0;e<n;e+=1){const i=lerp(r[t].x,r[(t+1)%r.length].x,e/n),s=lerp(r[t].y,r[(t+1)%r.length].y,e/n);p.push({x:i,y:s})}return p},x=void 0;var u=(t,e,i,s,h,o,r,n,p)=>{const a=[];for(let l=0;l<=p;l+=1){const d=l/p,c=bezierPoint(t,i,h,r,d),w=bezierPoint(e,s,o,n,d);a.push({x:c,y:w})}return a};class y{constructor(t,e,i){this.p=t,this.points=e,this.opts=i}draw(t,e,i){const[s,h,o]=this.points,{r:r,backColor:n,isBlack:p,isCircle:a,circle1:d,circle2:c,circle3:w,col:f,speed1:g,offsetX:x,offsetY:u,circleSw:y,sFactors:C,sSpeeds:k,M:b}=this.opts,S=map(cos(t*g),-1,1,0,1.5);this.p.push(),r>.9?(this.p.push(),this.p.translate(this.p.width/2,this.p.height/2),this.p.scale(map(cos(t*k[0]),-1,1,1,C[0])),this.p.translate(-this.p.width/2,-this.p.height/2),this.p.stroke(0),this.p.noFill(),this.p.beginShape(),this.p.vertex(s.x,s.y),this.p.vertex(h.x,h.y),this.p.vertex(o.x,o.y),this.p.endShape(CLOSE),this.p.fill(0),this.p.circle(s.x,s.y,.01*width),this.p.circle(h.x,h.y,.01*width),this.p.circle(o.x,o.y,.01*width),this.p.pop(),a&&(this.p.push(),this.p.translate(this.p.width/2,this.p.height/2),this.p.scale(map(cos(t*k[1]),-1,1,1,C[1])),this.p.translate(-this.p.width/2,-this.p.height/2),this.p.stroke(0),this.p.strokeWeight(y),this.p.fill(0),this.p.circle(s.x+i,s.y+e,d),this.p.noFill(),this.p.circle(s.x+i,s.y+e,c),this.p.pop())):r>.7?(this.p.push(),this.p.translate(this.p.width/2,this.p.height/2),this.p.scale(map(cos(t*k[2]),-1,1,1,C[2])),this.p.translate(-this.p.width/2,-this.p.height/2),this.p.drawingContext.shadowColor="rgba(0, 0, 0, 0.5)",this.p.drawingContext.shadowBlur=b,this.p.drawingContext.shadowOffsetX=x+e,this.p.drawingContext.shadowOffsetY=u+i,this.p.noStroke(),l(this.p,s.x,s.y,lerp(h.x,o.x,S),lerp(h.y,o.y,S),[0,1],[f,n]),this.p.beginShape(),this.p.vertex(s.x+e,s.y+i),this.p.vertex(h.x+e,h.y+i),this.p.vertex(o.x+e,o.y+i),this.p.endShape(CLOSE),this.p.pop()):r>.65?(this.p.push(),this.p.translate(this.p.width/2,this.p.height/2),this.p.scale(map(cos(t*k[3]),-1,1,1,C[3])),this.p.translate(-this.p.width/2,-this.p.height/2),this.p.noStroke(),this.p.fill(p?0:n),this.p.beginShape(),this.p.vertex(s.x-e,s.y-i),this.p.vertex(h.x-e,h.y-i),this.p.vertex(o.x-e,o.y-i),this.p.endShape(CLOSE),this.p.pop()):r>.4&&(this.p.push(),this.p.translate(this.p.width/2,this.p.height/2),this.p.scale(map(cos(t*k[4]),-1,1,1,C[4])),this.p.translate(-this.p.width/2,-this.p.height/2),this.p.fill(0,255),this.p.circle(s.x-e,s.y+i,w),this.p.pop()),this.p.pop()}}var C=y;class k{constructor(t,e){this.p=t,this.opts=e}draw(t,e,i){const{center:s,color:h,backColor:o,offsetX:r,offsetY:n,size1:p,size2:a,isColored:l,isOutside:d,outsideNoFill:c,speed1:w,speed2:f,diff:g}=this.opts;this.p.push(),this.p.stroke(0),l?this.p.fill(h):this.p.fill(0),this.p.circle(s.x+map(sin(t*w),-1,1,-r,r)-e,s.y+map(cos(t*f),-1,1,-n,n)-i,p),g&&(this.p.drawingContext.globalCompositeOperation="difference"),this.p.fill(o),this.p.circle(s.x,s.y,p),this.p.pop(),d&&(this.p.push(),this.p.stroke(0),c?this.p.noFill():this.p.fill(o),this.p.circle(s.x+map(sin(t*f),-1,1,-r,r)-e,s.y+map(cos(t*w),-1,1,-n,n)-i,a),this.p.pop())}draw2(t,e,i,s){const{center:h,offsetX:o,offsetY:r,size1:n,size2:p,isOutside:a,speed1:l,speed2:d}=this.opts;push(),stroke(0,s),noFill(),circle(h.x+map(sin(t*l),-1,1,-o,o)-e,h.y+map(cos(t*d),-1,1,-r,r)-i,n),circle(h.x,h.y,n),pop(),a&&(push(),noFill(),circle(h.x+map(sin(t*d),-1,1,-o,o)-e,h.y+map(cos(t*l),-1,1,-r,r)-i,p),pop())}}var b=k;class S{constructor(t,e,i){this.p=t,this.points=e,this.opts=i}draw(t,e,i){const[s,h,o]=this.points,{sColor:r,bColor:n,opacity:p,sFactor:a,sSpeed:l,strokeSpeed:d,M:c}=this.opts;push(),translate(width/2,height/2),scale(map(cos(i*l),-1,1,1,a)),translate(-width/2,-height/2),noStroke(),strokeWeight(2*c),stroke(0,map(cos(i*d),-1,1,0,255)),beginShape(),drawingContext.shadowColor=`rgba(0, 0, 0, ${p})`,drawingContext.shadowColor=r,drawingContext.shadowBlur=c,drawingContext.shadowOffsetX=-t,drawingContext.shadowOffsetY=-e,fill(n),vertex(s.x,s.y),vertex(h.x,h.y),vertex(o.x,o.y),endShape(CLOSE),drawingContext.clip(),image(this.p,t/2,e/2),pop()}}var m=S;let v=1e3,E=window.innerWidth,F=window.innerHeight,A,O=Math.min(E,F)/1e3,W,B;const L=.75;let M,X,Y,$,D,z,H,G;.75*window.innerHeight>=window.innerWidth?(W=window.innerWidth,B=window.innerWidth/.75):(B=window.innerHeight,W=.75*window.innerHeight);const N={count:1e4,mOffsetX:5*O,mOffsetY:5*O*1.25},R={};function setup(){X=createCanvas(W,B),strokeWeight(O),Y=createGraphics(W,B),Y.strokeWeight(2*O),Y.angleMode(DEGREES),Y.strokeCap(SQUARE),Y.strokeWeight(2*O),M=()=>{const{rnd:t,range:i,rangeFloor:h,pick:o,pickSome:r,gaussian:n,shuffleArray:p}=e(tokenData.hash),calculateFeatures=()=>{const t={},e=h(s.length-1),i=s[e];return t.palette=i,t},{palette:a}=calculateFeatures(),l=[a[0],...p(a[1])],{count:d}=N;R.lerpColors=l.map((t=>color(t))),R.backColors=a[1].map((t=>{const e=color(t);return e.setAlpha(255),e}));const[c,w]=r(R.backColors);$=i(3,6),D=i(3,7.5),z=i(3,9),H=i(30,200),R.backColor=color(`hsb(${Math.round(hue(c))}, ${saturation(c)/2}%, ${2*lightness(c)}%)`),R.backColorN=color(`hsb(${Math.round(hue(c))}, ${saturation(c)/2}%, ${2*lightness(c)}%)`),R.backColor3=color(`hsb(${Math.round(1.1*hue(c))}, ${saturation(c)/2}%, ${2*lightness(c)}%)`),R.backColor2=w,R.points=[];const f=i(.1*width,.9*width),g=width-f;let x=u(f,i(.2*height,.4*height),g,.25*height,f,.75*height,g,i(.9*height,height),d);t()>.5&&(x=x.reverse());for(let t=0;t<x.length;t+=1){const{x:e,y:i}=x[t],s=e+n(0,10)*width*.02,h=i+n(0,10)*width*.02;R.points.push({x:s,y:h})}R.triangles=[],R.triangles2=[];let y=.01*width,k=.6*width;const S=R.points.filter((({y:t})=>t<.03*height));let v=o(S),E=o(S),F,A;if(v){const{x:t,y:e}=v;F=p(R.points.filter((({x:i,y:s})=>dist(t,e,i,s)>y&&dist(t,e,i,s)<k&&s>e))),A=p(R.points.filter((({x:i,y:s})=>dist(t,e,i,s)>y&&dist(t,e,i,s)<k&&s>e)))}const W=20;let B=0;for(let e=0;e<W;e+=1)if(v){const{x:e,y:s}=v;let h=[];F[0]&&(h=p(R.points.filter((({x:t,y:i})=>{const h=B%4!=0||s<i;return y=B%2==1?.1*width:.001*width,dist(e,s,t,i)>y&&dist(e,s,t,i)<k&&dist(F[0].x,F[0].y,t,i)>y&&dist(F[0].x,F[0].y,t,i)<k&&h})))),F.length>0&&h.length>0&&R.triangles.push(new C(Y,[v,F[0],h[0]],{r:t(),isBlack:t()>.5,isCircle:t()>.8,circle1:i(.01*width,.04*width),circle2:i(.07*width,.12*width),circle3:i(.01*width),col:o(R.lerpColors),backColor:R.backColor,speed1:i(10,30),offsetX:i(.01*-width,.01*width),offsetY:i(.01*-width,.01*width),circleSw:i(O,3*O),s