0xf523011f…dbe9sent to0x1353fd9d…e4e8·#17,091,248·view on Etherscan
let rngt,rngs,S=Uint32Array.from([0,1,rngs=rngt=2,3].map(i=>parseInt(tokenData.hash.substr(i*8+5,8),16)));R=(a=1)=>a*(rngt=S[3],S[3]=S[2],S[2]=S[1],S[1]=rngs=S[0],rngt^=rngt<<11,S[0]^=(rngt^rngt>>>8)^(rngs>>>19),S[0]/2**32);RT=(a=1)=>a*(R()-R());RV=(v)=>v[R(v.length)|0];C=(a)=>R()<a?1:0;acv=(n,c)=>{for(let i=0;i<n;i++){cv.push(c)}};mn=(...a)=>Math.min(...a);mx=(...a)=>Math.max(...a);
let cols=[[44,14,85],[0,0,25],[6,55,52],[25,57,53],[50,53,54],[106,36,41],[220,42,47],[244,32,49]],ww,wh,w,h,p,pd,ar=3/4,gs,gr,rc=C(.5),bw=C(.1),cai=rc?C(.66):(2+R(6)|0),cbi=rc?bw?((cai+1)%2):(2+R(6)|0):(R(2)|0),cci=(C(.9)||bw)?cai:rc?(R(2)|0):(2+R(6)|0),cola=cols[cai],colb=cols[cbi],colc=cols[cci],gds=20,gdh=1+R(2)*0,pxn=.1+R(.2)+R()*R(.15),pyn0=.1+R(.2)+R()*R(.3),hv=(1-2*pxn)>(1/ar-2*pyn0),pSA=Math.PI*(C(.02)?(C(.5)?0:1):(((C(.5)?-1:1)-R(.7))/4+(C(.5)?1:0))+(hv?.5:0)),qdrt=((4+pSA/(Math.PI/2))|0)%4,Nx=5+(R()*R(200))|0,dxn=(1-2*pxn)/Nx,dyn=dxn,Ny=Math.round((1/ar-2*pyn0)/dyn),pyn=(1/ar-Ny*dyn)/2,pdn=C(.1)?0:(.05+R()*R(.35)),wp=2*pxn-.05,hp=2*pyn-.05,hs=Math.abs(Math.sin(pSA)),ws=Math.abs(Math.cos(pSA)),pSS=1000*mn(wp/ws,hp/hs)*(1-.9*R()),pRM=C(.75)?3:R(2)|0,pRMB=R()*R(.75),pOXY=C(.3),pSD1=C(.75)?0:((R(2)|0)+1),pSD2=C(.5),pBZ=C(.8)?0:(R(.3)),pCS=10+R(40)*R(),pSP=R(10),pSO=R(),pBD=C(.75)?0:(1+R(3)|0),pBD2=R(4)|0,pBB=R(),pSH=.05+R(.1),pMA=C(.5),pNS=(mn(Nx,Ny)*.25+RT(mn(Nx,Ny)*(Nx<50?.25:.1))+R()*R()*R(.5))|0,pTR=.05+R(),bhmMX=.005+R(.3)*R()*R(),lniw=mx((Nx*.15+R()*R(Nx*.45))|0,1),lni=(Nx/2+RT(Nx/3)-lniw/2)|0,lnjw=mx((Ny*.15+R()*R(Ny*.45))|0,1),lnj=(Ny/2+RT(Ny/3)-lnjw/2)|0,bvo=[],filled=[];for(let i=0;i<Nx*Ny;i++)filled[i]=0;if(lni<=0)lni=1;if(lni>=Nx-1)lni=Nx-2;if(lnj<=0)lnj=1;if(lnj>=Ny-1)lni=Ny-2;let pLY=1,pLX=0;if((C(.05))){pLX=1;pLY=1;}else if((C(.5))){pLX=1;pLY=0;}let dLX=(pLX)?1:0,dLY=(pLY)?1:0;if(dLX&&dLY){if(C(.5)){dLX=1;dLY=0}else{dLY=1;dLX=0}}
findGrid=()=>{for(let i=0;i<Nx;i++){for(let j=0;j<Ny;j++){let ind=j*Nx+i;if(pLX&&i>=lni&&i<(lni+lniw))filled[ind]=1;if(pLY&&j>=lnj&&j<(lnj+lnjw))filled[ind]=1;}}Ntr=Nx*Ny*10;for(let tr=0;tr<Ntr;tr++){let ptr=tr/Ntr,nshort=1+(pNS*(1-ptr**pTR))|0,nlong=nshort+R(nshort*pSP)|0,nx=nshort,ny=nlong;if(C(pSO)){nx=nlong;ny=nshort;}let i=R(Nx-nx)|0,j=R(Ny-ny)|0;if(pSD1==1&&C(.95)){if(pSD2=1)i=(ptr*Nx)|0;else if(pSD2==2)i=((1-ptr)*Nx)|0}if(pSD1==2&&C(.95)){if(pSD2=1)j=(ptr*Ny)|0;else if(pSD2==2)i=((1-ptr)*Ny)|0}i=constrain(i,0,Nx-nx),j=constrain(j,0,Ny-ny);let flag=1;for(let it=i;it<i+nx;it++)for(let jt=j;jt<j+ny;jt++)if(filled[jt*Nx+it])flag=0;if(flag==0||nx>Nx||ny>Ny)continue;let bh=.1+R(.9),im=(i+nx/2)/Nx,jm=(j+ny/2)/Ny,ijm=.5;if(pBD==1)bh=1-R()*R(pBB);if(pBD==2)ijm=im;if(pBD==3)ijm=jm;if(pBD==2||pBD==3){if(pBD2==0)bh=ijm;if(pBD2==1)bh=1-ijm;if(pBD2==2)bh=sq(sin(PI*ijm));if(pBD2==3)bh=1-sq(sin(PI*ijm));}if(pBD>=2)bh+=RT(.1);if(bh<.005)bh=.005;bhm=C(pBZ)?-.5:(.005+R(bhmMX));if(pRM==0&&hv&&C(1-sin(PI*im)))bh=bhm;if(pRM==1&&hv&&C(sin(PI*im)))bh=bhm;if(pRM==0&&!hv&&C(1-sin(PI*jm)))bh=bhm;if(pRM==1&&!hv&&C(sin(PI*jm)))bh=bhm;if(pRM=3&&C(pRMB))bh=bhm;if(bh>1)bh=1;if(flag){for(let it=i;it<i+nx;it++)for(let jt=j;jt<j+ny;jt++)filled[jt*Nx+it]=1;bvo.push([i,j,nx,ny,bh,cola])}}}
setup=()=>{findGrid();wh=windowHeight,ww=windowWidth;wh>=ww/ar?(w=ww,h=ww/ar):(w=wh*ar,h=wh);p=w/1000;createCanvas(ww,wh);gs=createGraphics(ww,wh); gr=createGraphics(ww,wh);pd=pixelDensity();let pdw=pd,pdh=pd;if(pd*wh<2000)pdh=Math.ceil(2000/wh);if(pd*ww<2000)pdw=Math.ceil(2000/ww);pd=mx(pdw,pdh);pixelDensity(pd);colorMode(HSL);noStroke();gs.pixelDensity(pd);gs.colorMode(HSL);gs.noStroke();gr.pixelDensity(pd);gr.colorMode(HSL);gr.noStroke();noLoop();}
draw=()=>{let px=pxn*w,py=pyn*w,dx=dxn*w,dy=dyn*w,bpd=pdn*dx,xmin=ww,xmax=0,ymin=wh,ymax=0,bv=[];for(let b=0;b<bvo.length;b++){let bvoh=bvo[b],i=bvoh[0],j=bvoh[1],nx=bvoh[2],ny=bvoh[3],bh=bvoh[4],col=bvoh[5],bx=nx*dx-2*bpd,by=ny*dy-2*bpd,x=px+i*dx+bpd,y=py+j*dy+bpd,sx=bh*pSS*p*cos(pSA),sy=-bh*pSS*p*sin(pSA);bv.push([i,j,nx,ny,bh,col,bx,by,x,y,sx,sy]);if(bh==0)continue;xmin=mn(xmin,(qdrt==0||qdrt==3)?x:(x+sx));xmax=mx(xmax,(qdrt==0||qdrt==3)?(x+bx+sx):(x+bx));ymin=mn(ymin,(qdrt==2||qdrt==3)?y:(y+sy));ymax=mx(ymax,(qdrt==2||qdrt==3)?(y+by+sy):(y+by));}if(dLX&&abs(pSH*pSS*p*cos(pSA))>(lniw*dx-2*bpd)/3)pSH=(lniw*dx-2*bpd)/3/pSS/p/abs(cos(pSA));if(dLY&&abs(pSH*pSS*p*sin(pSA))>(lnjw*dx-2*bpd)/3)pSH=(lnjw*dx-2*bpd)/3/pSS/p/abs(sin(pSA));let xavg=(xmin+xmax)/2,yavg=(ymin+ymax)/2,tx=(ww-w)/2+(w/2-xavg),ty=(wh-h)/2+(h/2-yavg),offx=RT((w-(xmax-xmin))/2)*.9*pOXY,offy=RT((h-(ymax-ymin))/2)*.9*pOXY,sxd=pSH*pSS*p*cos(pSA),syd=-pSH*pSS*p*sin(pSA);cgrd(0,0,colb,0,1);rect(0,0,ww,wh);gs.fill(0);gs.rect(-ww,-wh,3*ww,3*wh);gs.erase();if(dLX)gs.rect(tx+px+lni*dx+bpd+sxd,0,lniw*dx-2*bpd,wh);if(dLY)gs.rect(0,ty+py+lnj*dy+bpd+syd,ww,lnjw*dy-2*bpd);for(let ib=0;ib<bv.length;ib++){let i=bv[ib][0],j=bv[ib][1];bv[ib][8]+=tx;bv[ib][9]+=ty;if(dLX&&pMA){if(i>lni)bv[ib][9]+=offy;else bv[ib][9]+=-offy;}
if(dLY&&pMA){if(j>lnj)bv[ib][8]+=offx;else bv[ib][8]+=-offx;}}for(let ib=0;ib<bv.length;ib++){let b=bv[ib];let bh=b[4],bx=b[6],by=b[7],x=b[8],y=b[9];if(bh<0)gs.rect(x+sxd,y+syd,bx,by);}gs.noErase();for(let ib=0;ib<bv.length;ib++){let b=bv[ib];let bh=b[4],bx=b[6],by=b[7],x=b[8],y=b[9],sx=b[10],sy=b[11],xp=[x,x,x+bx,x+bx],yp=[y,y+by,y+by,y];if(bh>0){gs.beginShape();for(let i=0;i<3;i+=2)gs.vertex(xp[(i+qdrt)%4],yp[(i+qdrt)%4]);for(let i=0;i<3;i++)gs.vertex(sxd+sx+xp[(i+qdrt+2)%4],syd+sy+yp[(i+qdrt+2)%4]);gs.endShape();}}push();tint(100,.85);image(gs,0,0);pop();gs.clear();cgrd(0,0,cola,gr,1);gr.rect(0,0,ww,wh);cgrd(0,0,colc,gr,1);if(dLX)gr.rect(tx+px+lni*dx+bpd+lniw*dx-2*bpd,0,ww,wh);if(dLY)gr.rect(0,ty+py+lnj*dy+bpd+lnjw*dy-2*bpd,ww,wh);gs.fill(0);for(let ib=0;ib<bv.length;ib++){let b=bv[ib];let bh=b[4],bx=b[6],by=b[7],x=b[8],y=b[9],sx=b[10],sy=b[11],xp=[x,x,x+bx,x+bx],yp=[y,y+by,y+by,y];if(bh>0){gs.beginShape();for(let i=0;i<3;i+=2)gs.vertex(xp[(i+qdrt)%4],yp[(i+qdrt)%4]);for(let i=0;i<3;i++)gs.vertex(sx+xp[(i+qdrt+2)%4],sy+yp[(i+qdrt+2)%4]);gs.endShape()}}gr.push();gr.tint(100,.85);gr.image(gs,0,0);gr.pop();gr.erase();if(dLX)gr.rect(tx+px+lni*dx+bpd,0,lniw*dx-2*bpd,wh);if(dLY)gr.rect(0,ty+py+lnj*dy+bpd,ww,lnjw*dy-2*bpd);gr.noErase();gr.erase();for(let ib=0;ib<bv.length;ib++){let b=bv[ib],bh=b[4],bx=b[6],by=b[7],x=b[8],y=b[9];if(bh<0)gr.rect(x,y,bx,by);}gr.noErase();image(gr,0,0);gr.remove();for(let ib=0;ib<bv.length;ib++){let b=bv[ib];let i=b[0],j=b[1],bh=b[4],col=b[5],bx=b[6],by=b[7],x=b[8],y=b[9];gr1=createGraphics(bx,by);gr1.colorMode(HSL);gr1.noStroke();gr1.pixelDensity(pd);if((j>lnj&&dLY)||(i>lni&&dLX))col=colc;if(bh<=0)continue;cgrd(x,y,[col[0],col[1],col[2]+10*bh],gr1,-1);gr1.rect(0,0,bx,by);gr2=createGraphics(bx,by);gr2.colorMode(HSL);gr2.noStroke();gr2.pixelDensity(pd);gr2.fill(0);for(let ob=0;ob<bv.length;ob++){bo=bv[ob];let io=bo[0],jo=bo[1],bho=bo[4],bxo=bo[6],byo=bo[7],xo=bo[8]-x,yo=bo[9]-y;if(qdrt<=1 && jo<j)continue;if(qdrt>1&&jo>j)continue;if((qdrt==0||qdrt==3)&&io>i)continue;if((qdrt==1||qdrt==2)&&io<i)continue;let xp=[xo,xo,xo+bxo,xo+bxo],yp=[yo,yo+byo,yo+byo,yo],sxo=(bho-bh)*pSS*p*cos(pSA),syo=-(bho-bh)*pSS*p*sin(pSA);if(bho-bh>0){gr2.beginShape();for(let i=0;i<3;i+=2)gr2.vertex(xp[(i+qdrt)%4],yp[(i+qdrt)%4]);for(let i=0;i<3;i++)gr2.vertex(sxo+xp[(i+qdrt+2)%4],syo+yp[(i+qdrt+2)%4]);gr2.endShape();}}gr1.tint(100,.85);gr1.image(gr2,0,0);image(gr1,x,y);gr1.remove();}loadPixels();for(let p=0;p<pixels.length;p+=4){dp=RT(6);pixels[p]=pixels[p]+dp;pixels[p+1]=pixels[p+1]+dp;pixels[p+2]=pixels[p+2]+dp;}updatePixels();}
cgrd=(x,y,c,gcg,d)=>{let gd;if(gcg==0)gd=drawingContext.createLinearGradient(ww/2-gdh*h*cos(pSA)+d*x,wh/2+gdh*h*sin(pSA)+d*y,ww/2+gdh*h*cos(pSA)+d*x,wh/2-gdh*h*sin(pSA)+d*y);else gd=gcg.drawingContext.createLinearGradient(ww/2-gdh*h*cos(pSA)+d*x,wh/2+gdh*h*sin(pSA)+d*y,ww/2+gdh*h*cos(pSA)+d*x,wh/2-gdh*h*sin(pSA)+d*y);gd.addColorStop(0.0,color(c[0],c[1],c[2]+gds));gd.addColorStop(0.5,color(c[0],c[1],c[2]));gd.addColorStop(1.0,color(c[0],c[1],c[2]-gds));if(gcg==0)drawingContext.fillStyle=gd;else gcg.drawingContext.fillStyle=gd;}