0x51664b04…8e63sent to0x14578924…b707·#16,681,173·view on Etherscan
iChannel0:{value:null},blackAndWhite:{value:0},intensityBoost:{value:0},clampBloom:{value:.56}}),"Monotone"==x.fullPalette.name&&(E.uniforms.blackAndWhite.value=1),"Burgundy"!=x.fullPalette.name&&"Vermeer"!=x.fullPalette.name||(S.uniforms.intensityBoost.value=.04,S.uniforms.clampBloom.value=.62),"Powder"!=x.fullPalette.name&&"Picnic"!=x.fullPalette.name||(S.uniforms.intensityBoost.value=.03,S.uniforms.clampBloom.value=.6),a=new t3.Clock,A=lr(.014,.02),M=lr()<.5?"noise":lr(0,2*N);let ee=!1;Q[0]>.9?(K=ur(.15,.15,.15),E.uniforms.blackPaper.value=1,ue=!0):Q[1]>.85?(K=ur(.75*K.r,.75*K.g,.75*K.b),ue=!0,ee=!0):K=ur(.9,.89,.84),"Monotone"==x.fullPalette.name&&ee&&(K=ur(.9,.89,.84)),E.uniforms.bgCol.value=K,lr(),function(){let e=lr(),t=["_NY","_CDMX","_LA","_BER","_LDN"];e<.2?ce=t[0]:e<.41?ce=t[1]:e<.61?ce=t[2]:e<.82?ce=t[3]:e<1.1&&(ce=t[4]);Me=function(){let e,t=lr();e=t<.005?"skeleton":t<.015?"waterColorBorder":t<.03?"inverted":t<.09?"messy":t<.16?"spacedOut":"oilBorder";return e}(),"skeleton"!=Me&&"inverted"!=Me||"_LA"!=ce||(Me="oilBorder");"skeleton"==Me&&"_CDMX"==ce&&(Me="oilBorder");ue&&"waterColorBorder"==Me&&(Me="oilBorder");"waterColorBorder"==Me&&(E.uniforms.isWaterColor.value=1,B.uniforms.isWaterColor.value=1);"inverted"!=Me&&"spacedOut"!=Me||(B.uniforms.softenEdges.value=1);"spacedOut"!=Me||"_LA"!=ce&&"_CDMX"!=ce||lr()<.5&&(Me="oilBorder");"_NY"==ce?function(){let e=Nt(Me),t=Nt(Me,!1,!0),r=Nt(Me,!0),n=wr(x.getRandomColor(),.02);I=[n,n];ir(0,3);let i=Kt(pt(.96));Wt(i),St(i);let l=pt(1),s=Kt(l);Wt(s),St(s);let a,u=[],h=lr();if(h<.75){let e=ir(0,4);a=.25*N+.5*N*e}else if(h<.95){let e=ir(0,4),t=.125*N;lr()<.5&&(t*=-1),a=.25*N+.5*N*e+t}else{a=.5*ir(0,4)*N}let c=lr(),f=hr(1,c<.45?.5:c<.6?.75:c<.95?.25:1),p=lr(),g=p<.65?.75:p<.85?.9:1,y=lr(),v=y<.05?N/2*3:y<.94?N/2:y<.97?1*N:0*N;.25==f.y&&(v=N/2);let b=hr(lr(-1,1),lr(-1.3,.5)),m=lr(),w=m<.65?null:m<.7?-.25*N:m<.75?.25*N:"noise",P={t:b,r:a,s:f,ls:g,lr:w},R=lr(),C=lr(),B=R<.2?3:R<.95?3.5:4,E=C<.2?3:C<.95?3.5:4,L=new ut([hr(.5*-B,.5*E),hr(.5*B,.5*E),hr(.5*B,.5*-E),hr(.5*-B,.5*-E)],P),S=B*E,T=lr(.3,.75);.25==f.y&&(T=cr().clamp(T,0,.65));S<=10.5&&(T=cr().clamp(T,0,.55));let k=new ft(T);ht(L,u,0,5,1,1,.75,3);for(let e=0;e<u.length;e++)(De(u[e].tCenter.x,l[0].x,l[1].x)||De(u[e].tCenter.y,l[3].y,l[0].y))&&0;let M=function(e,t,r,n,o){let i=[];{let t=hr().subVectors(e.utTL,e.utBL).multiplyScalar(4),r=[[e.utTL.x+t.x,e.utTL.y+t.y],[e.utTR.x+t.x,e.utTR.y+t.y],[e.utTR.x,e.utTR.y],[e.utTL.x,e.utTL.y]];i.push(r);let n=t.clone().multiplyScalar(-1),o=[[e.utBL.x,e.utBL.y],[e.utBR.x,e.utBR.y],[e.utBR.x+n.x,e.utBR.y+n.y],[e.utBL.x+n.x,e.utBL.y+n.y]];i.push(o);let l=hr().subVectors(e.utTR,e.utTL).multiplyScalar(4),s=[[e.utTR.x+t.x,e.utTR.y+t.y],[e.utTR.x+l.x+t.x,e.utTR.y+l.y+t.y],[e.utBR.x+l.x+n.x,e.utBR.y+l.y+n.y],[e.utBR.x+n.x,e.utBR.y+n.y]];i.push(s);let a=l.clone().multiplyScalar(-1),u=[[e.utTL.x+a.x+t.x,e.utTL.y+a.y+t.y],[e.utTL.x+t.x,e.utTL.y+t.y],[e.utBL.x+n.x,e.utBL.y+n.y],[e.utBL.x+a.x+n.x,e.utBL.y+a.y+n.y]];i.push(u)}for(let e=0;e<i.length;e++)St(i[e]),Wt(i[e]);return i}(L,0,0,0,0);for(let e=0;e<M.length;e++){let t=mt(M[e],0,"bg");k.addPolyNoIntersection(M[e],t)}k.externallyMaskWithPoly(i);let A=lr()<.25,W=lr(),F=W<.75?"none":W<.95?"skew":"noise",D=lr(.1,.35),q=lr(.25,.45),V=.2*ir(1,4);if(V*=lr()<.5?-1:1,d){lr()}let z=lr();!function(e,t){"xA"==t?e.sort(((e,t)=>e.lowestPoint.x-t.lowestPoint.x)):"xD"==t?e.sort(((e,t)=>t.lowestPoint.x-e.lowestPoint.x)):"yA"==t?e.sort(((e,t)=>e.lowestPoint.y-t.lowestPoint.y)):"yD"==t?e.sort(((e,t)=>t.lowestPoint.y-e.lowestPoint.y)):"random"==t&&e.sort(((e,t)=>Te(t.lowestPoint.y)-Te(e.lowestPoint.y)))}(u,z<.15?"xA":z<.3?"xD":z<.825?"yD":z<.85?"yA":"random");let j=[],U=u[0].poly[0][1],H=u[0].poly[0][1],X=(lr(0,.5,1.5),lr()),Y=X<.6?1:X<.9?.8:.6,J=lr(),G=J<.6?1:J<.9?.8:.6,Q=lr(),$=Q<.6?1:Q<.9?.8:.6,K=lr(),ee=K<.6?1:K<.9?.8:.6,te=T<=.4?0:T<=.55?.15:T<=.76?.3:0;for(let e=0;e<u.length;e++){let t=u[e],r=u[e].unscaledPoly;t.poly[0][1]<U&&(U=t.poly[0][1]),t.poly[0][1]>H&&(H=t.poly[0][1]);let n=!1;(lr()<te||!De(u[e].tCenter.x,l[0].x*Y,l[1].x*G)||!De(u[e].tCenter.y,l[3].y*$,l[0].y*ee))&&(n=!0);let o=lr()<.1;if(n||w==-.25*N||w==.25*N||"noise"==w||1!=g||o){let e=mt(r,0,"bg");e.colors=[x.getRandomColor(),x.getRandomColor()],k.addPolyNoIntersection(r,e)}if(!n){if(o){let r=Jt(24,.5*u[e].ww,u[e].tCenter,O,0,O,f);t.poly=r}j.push(t)}}let re=H-U,ne=lr()>.15,oe=lr(),ie=oe<.025?"middle":oe<.15?"LoR":oe<.25?"ToB":oe<.45?"TaB":oe<.675?"LaR":oe<.95?"LaRaTaB":"noise";0!=v&&v!=N||"noise"!=ie&&"middle"!=ie||(ie="LaR");nt()&&it(l,ie);let le=new ft(0),se=j;if(ne){se=[];for(let e=0;e<j.length;e++){let t=j[e];if(lr()<.35&<(t.tCenter)){let e=mt(t.poly,0,"whiteSpace");le.addPolyNoIntersection(t.poly,e)}else se.push(t)}}else se=j;let ae=lr()<.25,ue=lr(.75,1.25),he=T;for(let e=0;e<se.length;e++){k.allExistingPolys.length>1e3&&(k.likelihood=.5*he);let t=e>se.length-4,r=ue;A||(r=cr().clamp((se[e].poly[0][1]-U)/re*ue+.25+.05*(ir(0,5)-2),.2,ue+.25));let n=!0;ae&&(n=lr()<.5);let o=v;"none"!=F&&(o="noise"==F?v+pr(se[e].tCenter,q,D,_)*N:v+V);let i=Pt(se[e].poly,o,r,n);if(fr()<500)for(let e=0;e<i.edges.length;e++)wt(i.edges[e],k,0,"wall",!0,t);wt(i.face,k,0,"top",!0,t)}k.externallyMaskWithPoly(s);for(let e=0;e<2;e++){let e=[...L.unscaledPoly];Bt(e,lr(1,2));let t=1;Et(e,hr(lr(-t,t),lr(-t,t))),k.slicePolysWithPoly(e,!0)}if(se=[],ne){for(let e=0;e<k.allExistingPolys.length;e++){let t=k.allExistingPolys[e];lt(t.center)?(t.vars.type="whiteSpace",le.addPolyNoIntersection(t.verts,t.vars)):se.push(t)}se.length<10?(se=k.allExistingPolys,le=new ft(0)):le.externallyMaskWithPoly(i)}else se=k.allExistingPolys;if(Ae(),nt())for(let e=0;e<le.allExistingPolys.length;e++){let t=le.allExistingPolys[e];new o(t.verts,I,r)}for(let r=0;r<se.length;r++){let n=se[r];fe++,new o(n.verts,n.vars.colors,n.area<Z?t:e)}}():"_CDMX"==ce?function(){let e=Nt(Me),t=(Nt(Me,!1,!0),Nt(Me,!0)),r=wr(x.getRandomColor(),.02);I=[r,r];let n=Kt(pt(.96));Wt(n),St(n);let i=pt(1),l=Kt(i);Wt(l),St(l);let s=lr(.6,1.3,1),a=gt(hr(1.75*i[3].x,1.25*i[3].y),hr(1.75*i[1].x,1.25*i[1].y),s),u=lr(),h=u<.2?"blobs":u<.7?"octagons":"mixed";s<.66&&"blobs"==h&&(s=.66);let c=lr(1*s,2.1*s),f=.9*s,p=1.1*s,g=.1,y=hr(.5,.25),v=new ft("mixed"==h?.8:.9);for(let e=0;e<a.length;e++){let t,r=hr(a[e][0],a[e][1]),n=hr(lr(f,p),lr(f,c,1.5));"blobs"==h?t=96:"mixed"==h?t=lr()<.4?8:128:"octagons"==h&&(t=8),8==t&&n.multiplyScalar(1.1),wt(Jt(t,1,r,y,g,O,n,-1,null,!0),v,0,"blob",!0,e>a.length-4)}v.externallyMaskWithPoly(l);let b=.07,m=ir(0,16)*N*.125,w=(hr(10,0).rotateAround(O,m),lr(),!0),P=new ft(0),R=v.allExistingPolys,C=lr()>.5,B=10;C&&(B=.25);let E=lr(),L=E<.6?"LaRaTaB":E<.8?"LaR":"TaB";if(w){if(R=[],it(i,L),d){lr()}for(let e=0;e<v.allExistingPolys.length;e++){let t=v.allExistingPolys[e];lr()<B&<(t.center)?(t.vars.type="whiteSpace",P.addPolyNoIntersection(t.verts,t.vars)):R.push(t)}}let S={subMode:0,type:"solid",borderWidth:lr(.01,.03),density:0,lineWidth:0,stipplePercent:.25*ir(0,4),addPercentage:0,noNoise:!1,smoothNoise:!0,lineNoiseFreq:O,noiseForce:0,zeroBorderPercentage:0,randomizeBorderWidth:lr()<.1,randomizeLineWidth:!1,randomizeDensity:!1},T=lr(.02,.05),k=lr(T+.02,3*T),M={subMode:0,type:"internal",borderWidth:0,density:k,lineWidth:T,stipplePercent:0,addPercentage:1,noNoise:lr()<.1,smoothNoise:!0,lineNoiseFreq:hr(lr(.4,.7),lr(.4,.7)),noiseForce:lr(.03,.08),zeroBorderPercentage:.25*ir(0,3,1.5),randomizeBorderWidth:lr()<.1,randomizeLineWidth:lr()<.2,randomizeDensity:lr()<.2},A=(lr(.03,.06),ir(0,5),ir(0,3,2),lr(),hr(lr(.4,.7),lr(.4,.7)),lr(.035,.1),lr(),lr(),lr(),{subMode:1,stipplePercent:.25*ir(0,4)}),W=lr()<.3?10:100;W="blobs"==h?cr().clamp(W,3,20):"mixed"==h?cr().clamp(W,3,30):W;let F,_="blobs"==h||"mixed"==h?.04:.03,D=lr(),q={subMode:4,dirMode:D<.8?1:D<.85?0:D<.9?2:3,dir:lr(0,2*N),rotationAmount:lr(.005,.05),addRotation:lr()<.15,mixedDistance:lr()<.1,distance:lr(_,.2,2),iterations:ir(3,W),mixedIterations:lr()<.25,addScale:lr()<.25,scaleAmount:lr(.05,.2),scaleUp:lr()>.5,mixedDistanceInternal:lr()<.1,topWithInternal:lr()<.5,randomInternalNoise:lr()<.25,internalBorderThickness:.01*ir(0,3),addNoiseToTranslation:lr()<.2},V={subMode:3,iterations:ir(4,16),offset:lr(.02,.1),mixedOffset:lr()<.1},z=[M,A,q,S,V],j=lr();j<.75?F=[q]:j<.8?F=[M]:j<85?F=[A]:j<1.1&&(F=[V]);s>.8&&F[0]==A&&(F=[q]);s<.7&&lr()<.05&&(F=[S]);let U=z.indexOf(F[0]);z.splice(U,1);let H=ir(0,2,1);nr(z);for(let e=0;e<H;e++)F.push(z[e]);1==F.length&&F[0]==M&&(M.addPercentage=.65);s<.75&&lr()<.2&&(F=[q,A]);F==[q,A]&&lr()<.5&&(q.distance=cr().clamp(q.distance,0,.1),q.iterations=cr().clamp(q.iterations,8,100));let X=new ft(0);for(let e=0;e<R.length;e++){let t=R[e],r=x.getRandomColor();t.vars.colors=[r,r];let n=F[ir(0,F.length)];n==S&&t.area>.3&&(n=q),n==A&&t.area>.3&&(n=q),t.area>1.5&&((n==q||n==V)&&n.iterations<20||n==A||n==M)&&(n=lr()>.5?V:q,n.iterations=20);let o=n.subMode;if(0==o){let e=n.borderWidth;n.randomizeBorderWidth&&(e="external"==n.type?lr(.04,.1):lr(.01,.024));let r=n.lineWidth;n.randomizeLineWidth&&(r=lr(.02,.06));let o=n.density;n.randomizeDensity&&(o=lr(.03,.15)),r=cr().clamp(r,0,.75*o);let i=n.noiseForce;n.smoothNoise||(i*=1.5),lr()<n.zeroBorderPercentage&&(e=0);Math.round((t.center.y- -1.5)/3*.25*10),pr(t.center,1,1,O);let l=Ke(t,o,r,e,n.addPercentage,n.smoothNoise,n.lineNoiseFreq,n.noiseForce,n.type);for(let e=0;e<l.allExistingPolys.length;e++){let r=l.allExistingPolys[e];if("subBorder"==r.vars.type){let e=mt(r.verts,0,"subBorder"),n=wr(t.vars.colors[0],.1);e.colors=[n,n],X.addPolyNoIntersection(r.verts,e)}else if("subBG"==r.vars.type){let e=mt(r.verts,0,"subBG");e.colors=[t.vars.colors[0],t.vars.colors[0]],X.addPoly(r.verts,e)}else if("subSolid"==r.vars.type){let e;e=mt(r.verts,0,"fullBlob"),e.colors=t.vars.colors,X.addPoly(r.verts,e)}else{let e=mt(r.verts,0,"fullBlob"),n=wr(t.vars.colors[0],.05);e.colors=[n,n],X.addPoly(r.verts,e)}}}else if(1==o){let e=mt(t.verts,0,"fullBlob");e.colors=t.vars.colors,X.addPoly(t.verts,e)}else if(2==o){b=.25;let e=Pt(t.verts,m,b,lr()<-.5,!0),r=mt(e.face,0,"face");r.colors=t.vars.colors,X.addPoly(e.face,r,!0,!1)}else if(3==o){let e=n.offset;n.mixedOffset&&(e=lr(.02,.08));let r=Qe(t,e,n.iterations,0,!1);for(let e=0;e<r.length;e++)wt(r[e].verts,X,0,"subBlob")}else if(4==o){let e;0==n.dirMode?e=n.dir:1==n.dirMode?e=2*pr(t.avgCenter,.5,1,O)*N:2==n.dirMode?e=lr(0,2*N):3==n.dirMode&&(e=.5*ir(0,4)*N);let r=n.distance;n.mixedDistance&&(r=lr(.03,.2));let o=n.iterations;n.mixedIterations&&(o=ir(2,W));let i=null;n.addRotation&&(i=n.rotationAmount*N);let l=null;n.addScale&&(l=-n.scaleAmount);let s=$e(t,r,e,o,i,l,n.mixedDistanceInternal,n.addNoiseToTranslation);for(let e=0;e<s.length;e++)if(n.topWithInternal&&"lastTranslation"==s[e].vars.type&&s[e].area>.006){let t=2*r,o=r;n.randomInternalNoise&&(t=k,o=T);let i=Ke(s[e],t,o,n.internalBorderThickness,1,!0,hr(.5,.75),.05,"internal");for(let t=0;t<i.allExistingPolys.length;t++){let r=i.allExistingPolys[t];if("subBorder"==r.vars.type){let t=mt(r.verts,0,"subBorder"),n=wr(s[e].vars.colors[0],.1);t.colors=[n,n],X.addPolyNoIntersection(r.verts,t)}else if("subBG"==r.vars.type){let t=mt(r.verts,0,"subBG");t.colors=[s[e].vars.colors[0],s[e].vars.colors[0]],X.addPoly(r.verts,t)}else{let t=mt(r.verts,0,"fullBlob"),n=wr(s[e].vars.colors[0],.05);t.colors=[n,n],X.addPoly(r.verts,t)}}}else{let t=mt(s[e].verts,0,"subBlob");X.addPolyNoIntersection(s[e].verts,t)}}else if(5==o){let e=et(t);for(let t=0;t<e.length;t++)wt(e[t].verts,X,0,"subBlob")}}if(C)if(R=[],w){for(let e=0;e<X.allExistingPolys.length;e++){let t=X.allExistingPolys[e];lt(t.center)?(t.vars.type="whiteSpace",P.addPolyNoIntersection(t.verts,t.vars)):R.push(t)}R.length<10&&(R=X.allExistingPolys,P=new ft(0))}else R=X.allExistingPolys;else R=X.allExistingPolys;P.externallyMaskWithPoly(n);for(let e=0;e<P.allExistingPolys.length;e++){let r=P.allExistingPolys[e];new o(r.verts,I,t)}let Y=[];for(let t=0;t<R.length;t++){let r=R[t];if("fullBlobPoisson"==r.vars.type&&"skeleton"!=Me){new o(r.verts,r.vars.colors,e);let t=Ze(r),n=Br(r.vars.colors[1],.25),i=[n,n];for(let e=0;e<t.length;e++)Y.push({stipple:t[e],colors:i})}else r.vars.type,new o(r.verts,r.vars.colors,e);"subBorder"!=r.vars.type&&fe++}for(let e=0;e<Y.length;e++){let t=Y[e];new o(t.stipple,t.colors,Nt("tiny"))}}():"_LA"==ce?function(){lr(1,3),lr(2,4),lr(3,5);let e=Nt(Me),t=Nt(Me,!1,!0),r=Nt(Me,!0),n=wr(x.getRandomColor(),.02);I=[n,n];let i=Kt(pt(.96));Wt(i),St(i);let l=pt(1),s=Kt(l);Wt(s),St(s);let a,u=new ft(0),h=.016;1!=subIdInt&&(a=ze(h));wt(s,u,0,"background"),1==subIdInt&&(a=ze(h));for(let e=0;e<a.length;e++){let t=a[e].skinny;a[e].thick;wt(t,u,0,"road",!1)}let c=new ft(0);wt(s,c,0,"background");for(let e=0;e<a.length;e++){let t=a[e].skinny;a[e].thick;wt(t,c,0,"road",!1)}if(c.externallyMaskWithPoly(s),d){lr()}for(let e=0;e<u.allExistingPolys.length;e++)if("background"==u.allExistingPolys[e].vars.type){let t=Ue(Xe(u.allExistingPolys[e].verts),.5*h,.5*h);for(let e=0;e<t.length;e++){let r=t[e].ramp,n=t[e].roundabout;null!=n&&wt(n,c,0,"roundabout",!0),wt(r,c,0,"road",!0)}}else wt(u.allExistingPolys[e].verts,c,0,"background",!0);c.externallyMaskWithPoly(i);let f=lr()>1.75;nt()&&it(l);let p=new ft(0),g=[];if(f&&"spacedOut"!=Me){for(let e=0;e<c.allExistingPolys.length;e++){let t=c.allExistingPolys[e];!0&<(t.avgCenter)?(t.vars.type="whiteSpace",p.addPolyNoIntersection(t.verts,t.vars)):g.push(t)}g.length<10&&(g=c.allExistingPolys,p=new ft(0))}else g=c.allExistingPolys;if(Ae(),nt())for(let e=0;e<p.allExistingPolys.length;e++){let t=p.allExistingPolys[e];new o(t.verts,I,r)}let y=e;for(let r=0;r<g.length;r++){let n=g[r];"road"==n.vars.type||"roundabout"==n.vars.type?(fe++,new o(n.verts,null,n.area<Z?t:y)):(fe++,new o(n.verts,null,n.area<Z?t:e))}let v=new ft;if("spacedOut"!=Me){for(let e=0;e<a.length;e++){a[e].skinny;let t=a[e].thick;Wt(t),wt(t,v,0)}v.externallyMaskWithPoly(s);for(let r=0;r<v.allExistingPolys.length;r++){let n=v.allExistingPolys[r],i=x.getRandomColor();fe++,"spacedOut"!=Me?new o(n.verts,[i,i],n.area<Z?t:e):new o(n.verts,[ur(1,1,1),ur(1,1,1)],Nt("oilNoBorder"))}}}():"_BER"==ce?function(){let e=Nt(Me),t=Nt(Me,!1,!0),r=Nt(Me,!0),n=wr(x.getRandomColor(),.02);I=[n,n];let i=Kt(pt(.96));Wt(i),St(i);let l=pt(1.03),s=Kt(l);Wt(s),St(s);let a=l[1].x-l[3].x,u=l[1].y-l[3].y,h=.5*a,c=.5*u,f={t:O,r:0,s:_,ls:1,lr:0},p=1*u,g=1*u,y=new ut([hr(.5*-p,.5*g),hr(.5*p,.5*g),hr(.5*p,.5*-g),hr(.5*-p,.5*-g)],f),v=lr()<.8?3:2,b=lr(),m=b<.7?2:b<.9?1:3,w=[],P=[],R=[];ht(y,w,0,v,1,1,1,2),ht(y,P,0,m,1,1,1,2);let C=["qCircle","tri","plus","x","diagonal","straight","tallTri"],B=["qCircle","tri","circle","diagonal","straight","lines","plus","x","halfCircles","tallTri"];3==m&&(B=C);let E=lr(),L=E<.4?1:E<.8?2:E<1.5?3:0;nr(B);let S=[];for(let e=0;e<L;e++)S.push(B[e]);let T=lr()<.8,k=.5*ir(0,4)*N,M=[];for(let e=0;e<P.length;e++){if(!De(P[e].center.x,1.25*-h,1.25*h)||!De(P[e].center.y,1.25*-c,1.25*c))continue;T&&(k=.5*ir(0,4)*N);let t=S[ir(0,S.length)],r=qe(P[e],t,k);for(let e=0;e<r.length;e++)M.push(r[e])}let A=lr(),W=A<.7?2:A<.8?3:A<.95?4:1;for(let e=0;e<w.length;e++){if(!De(w[e].center.x,-h,h)||!De(w[e].center.y,-c,c))continue;x.getRandomColor();let t=hr(1.5*w[e].center.x,w[e].center.y),r=cr().clamp(pr(t,W,.5,O)+.5,0,1);r=Math.round(1-Math.pow(r,1.1)),r<.5&&R.push(w[e].poly)}let F=lr();dt(P,F<.6?"random":F<.7?"yA":F<.8?"yD":F<.9?"xA":"xD");let D=Tt(R),q=new ft(0),V=lr(),z=V<.5?1:V<.75?.75:V<.9?.5:.25;1==m&&(V=lr()<.5?1:.666);let j=Math.floor(M.length*z);for(let e=0;e<j;e++)wt(M[e].verts,q,0,M[e].vars.type);let U=.75;for(let e=0;e<D.length;e++){x.getRandomColor();let t=D[e];wt(t,q,0,"building");let n=kt(t,!0),i=n[1].x-n[3].x,l=n[1].y-n[3].y,s=[tr(n[3].x+.5*i,$),tr(n[3].y+.5*l,$)];if(i>U){let e=Xt(hr(.01,l),Zt(s),0);"oilBorder"!=Me&&"waterColorBorder"!=Me||new o(e,I,r),q.addPoly(e,null,!1)}if(l>U){let e=Xt(hr(i,.01),Zt(s),0);"oilBorder"!=Me&&"waterColorBorder"!=Me||new o(e,I,r),q.addPoly(e,null,!1)}}for(let e=j;e<M.length;e++)wt(M[e].verts,q,0,"obj");let H=.5*ir(0,4)*N,X=.5*ir(0,4)*N+.25*N;lr()<.5&&(lr()<.5?X-=.125*N:X+=.125*N);let Y=lr()<.875?X:H,J=lr()>.1,G=0,K="null",ee=lr()<.5;if(J){let e=ir(0,2)*N+.5*N;lr()<.25&&(e+=.5*N);let t=.5*ir(0,4)*N+.25*N;lr()<.5&&(lr()<.5?t-=.125*N:t+=.125*N);let r=lr()<.8?t:e;tr(Math.abs(r/N-Y/N),3)%.25==0&&(r+=.25*N);let n=lr();K=n<.4?"lines":n<.7?"grid":n<1.1?"circles":0;let o=lr();G=o<.1?1:o<.3?2:o<.8?3:4,"lines"==K?G*=2:"grid"==K&&3==G&&(G+=lr()<.5?-1:1),function(e,t,r,n,o,i,l){let s,a,u,h,c,f,d,p,g,y=r.x-t.x,v=r.y-t.y,x=[[t.x,r.y],[r.x,r.y],[r.x,t.y],[t.x,t.y]],b=[],m="split";switch(n){case"grid":g=st(x,l),g=or(g),s=dr(g[0].x,g[0].y,g[1].x,g[1].y),a=dr(g[0].x,g[0].y,g[3].x,g[3].y),u=g[1].clone().sub(g[0]),h=g[3].clone().sub(g[0]),c=g[3].clone().lerp(g[0],.5),f=u.clone().divideScalar(o+1),d=h.clone().divideScalar(o+1),p=c.clone().add(hr(lr(-.5,.5),lr(-.65,.65)));for(let t=0;t<o;t++){p.add(f);let t=Xt(hr(_e,a),p,-l);b.push({shape:t,draw:i}),m=i?"split":"splitNoDraw",wt(t,e,0,m,!0)}c=g[0].clone().lerp(g[1],.5),p=c.clone().add(hr(lr(-.5,.5),lr(-.5,.5)));for(let t=0;t<o;t++){p.add(d),m=i?"split":"splitNoDraw",wt(Xt(hr(s,_e),p,-l),e,0,m,!0)}break;case"lines":g=st(x,l),g=or(g),s=dr(g[0].x,g[0].y,g[1].x,g[1].y),a=dr(g[0].x,g[0].y,g[3].x,g[3].y),u=g[1].clone().sub(g[0]),c=g[3].clone().lerp(g[0],.5),f=u.clone().divideScalar(o+1),p=c.clone().add(hr(lr(-.5,.5),lr(-.5,.5)));for(let t=0;t<o;t++){p.add(f),m=i?"split":"splitNoDraw",wt(Xt(hr(_e,a),p,-l),e,0,m,!0)}break;case"circles":let t=ir(3,5),r=ir(3,7);f=y/t,d=v/r;let n=.125*ir(0,16)*N,w=lr(),P=w<.2?24:w<.6?4:2;2==P&&n%(.5*N)==0&&(n-=.125*N);let R=24==P?.75:1,C=hr(lr(-.5,.5),lr(-.5,.5)),B=lr(.2,.375),E=lr()<.5,L=lr(.4,1.5);for(let o=0;o<r;o++)for(let r=0;r<t;r++){let t=hr(r*f+.5*f-.5*y+C.x,o*d+.5*d-.5*v+C.y);if(P>2){m=i?"split":"splitNoDraw",wt(Jt(P,f*B*R,t,O,0,O,_,n),e,0,m,!0)}else{E&&(L=lr(.4,1.5)),m=i?"split":"splitNoDraw",wt(Xt(hr(L,.03),t,n),e,0,m,!0)}}}}(q,l[3],l[1],K,G,ee,r)}let te=lr(),re=te<.05?1:te<.2?2:te<.75?3:te<.9?4:5;if(d){lr();1==re&&(re=ir(2,5))}let ne=lr(),oe=ne<.6?"random":ne<.7?"yA":ne<.8?"yD":ne<.9?"xA":"xD";"lines"==K&&G>4&&(oe="random");q.sortPolys(oe),q.externallyMaskWithPoly(i);let ie=[],le=q.allExistingPolys.length-1,se=lr()>.25;for(;le>=0;){let e=q.allExistingPolys[le];if(ee&&se){if("split"==e.vars.type){let e=q.allExistingPolys.splice(le,1);ie.push(e[0])}}else if(!ee&&"splitNoDraw"==e.vars.type){let e=q.allExistingPolys.splice(le,1);ie.push(e[0])}le--}if(ee&&se)for(let e=0;e<ie.length;e++){let t=ir(0,Math.floor(.666*q.allExistingPolys.length));q.allExistingPolys.splice(t,0,ie[e])}else if(!ee)for(let e=0;e<ie.length;e++)"spacedOut"!=Me&&"inverted"!=Me&&"messy"!=Me&&"oilBorder"!=Me&&"waterColorBorder"!=Me||new o(ie[e].verts,I,Nt(Me,!0));let ae=lr(.05,.1),ue=2,he=new ft(0),ce=lr()>.075;nt()&&it(l);let de=new ft(0),pe=[];if(ce){for(let e=0;e<q.allExistingPolys.length;e++){let t=q.allExistingPolys[e];lt(t.center)?(t.vars.type="whiteSpace",de.addPolyNoIntersection(t.verts,t.vars)):pe.push(t)}pe.length<8?(pe=q.allExistingPolys,de=new ft(0)):de.externallyMaskWithPoly(i)}else pe=q.allExistingPolys;for(let e=0;e<pe.length;e++){let t=pe[e],r=null,n=ir(1,re+1,1.1);if("bg"==t.vars.type)wt(t.verts,he,0,"bg");else if("objiii"==t.vars.type&&lr()<.5)wt(t.verts,he,0,"obj");else{let e=n;"split"==t.vars.type?e=Math.min(n,2):"splitCirc"==t.vars.type&&(e=Math.min(n,1));for(let n=0;n<e;n++){let o=hr(ae*ue+0*Q[0],0).rotateAround(O,Y-1*N);if(o.x=tr(o.x,$),o.y=tr(o.y,$),null==r){r=Pt(t.verts,Y,ae)}else r=Ve(r);if(0!=n){Et(r.face,o);for(let e=0;e<r.edges.length;e++)Et(r.edges[e],o)}for(let e=0;e<r.edges.length;e++)wt(r.edges[e],he,0,"edge");n==e-1&&"obj"==t.vars.type?wt(r.face,he,0,"obj"):wt(r.face,he,0,n==e-1?"cap":"face")}}}if(pe=he.allExistingPolys,ce&&lr()<.6){pe=[];for(let e=0;e<he.allExistingPolys.length;e++){let t=he.allExistingPolys[e];lt(t.center)?(t.vars.type="whiteSpace",de.addPolyNoIntersection(t.verts,t.vars)):pe.push(t)}pe.length<8?(pe=he.allExistingPolys,de=new ft(0)):de.externallyMaskWithPoly(i)}else pe=he.allExistingPolys;if(Ae(),nt())for(let e=0;e<de.allExistingPolys.length;e++){let t=de.allExistingPolys[e];new o(t.verts,I,r)}for(let r=0;r<pe.length;r++){let n=pe[r];fe++,new o(n.verts,n.vars.colors,n.area<Z?t:e)}}():"_LDN"==ce&&function(){let e=lr(),t=ir(1,4),r=Nt(Me),n=Nt(Me,!1,!0),i=Nt(Me,!0),l=wr(x.getRandomColor(),.02);I=[l,l];let s=pt(1.03),a=Kt(s);Wt(a),St(a);let u=Kt(pt(.96));Wt(u),St(u);lr(),lr();let h=hr(1,1.5);var c=new qr,f={xl:-h.x,xr:h.x,yt:-h.y,yb:h.y};let p=[];for(let e=0;e<8;e++){let e=hr(lr(-h.x,h.x),lr(-h.y,h.y));p.push(e.clone())}let g=["obelisk","crown","trough","pillar","dome","yArc","x","m"],y=["obelisk","crown","trough","pillar","x","m"];nr(g),nr(y);let v=[];for(let e=0;e<t;e++)v.push(g[e]);let b=[];for(let e=0;e<t;e++)b.push(y[e]);v.includes("yArc")||lr()<.25&&(v.pop(),v.push("yArc"));let m=[],w=e<.35?"field":e<.9?"poisson":"radial";1==v.length&&"pillar"==v[0]&&(v[0]="yArc");1==b.length&&"pillar"==b[0]&&(b[0]="obelisk");let P=lr()<.35,R=P?hr(.9,.9):hr(.8,.8);lr()<.75&&(Ie=lr(.2,.7));if(function(e,t,r,n,i,l,s){let a,u,h,c,f,d,p=l[3],g=l[1];switch(e){case"radial":a=ir(4,10);let e=lr(.1,.7),y=hr(lr(.75*p[0],.75*g[0]),lr(.75*p[1],.75*g[1])),v=2*N/a,x=lr(0,2*N),b=hr(),m=.25*ir(0,8)*N;d=a>7?r:t;for(let t=0;t<a;t++){if(b.set(e,0),b.rotateAround(O,v*t+x),b.add(y),"oilBorder"==Me&&De(b.x,-.95,.95)&&De(b.y,-1.4,1.4)){let e=Jt(4,.01,b);new o(e,I,Nt("tiny"))}let r=We(d[ir(0,d.length)],b,l,!0,v*t+x+m,b);if(i.push(r),u=s.x-.15,c=lr(u,s.x),h=s.y-.4,f=lr(h,s.y),lr()<c)for(let e=0;e<r.length;e++){let t=Zt(r[e]);yt(t,0)&&lr()<f&&n.push(t)}}break;case"poisson":let w=lr(.65,.85),P=gt(hr(l[3][0],l[3][1]+.2),Zt(l[1]),w);P.length<4&&P.push([lr(-.9,-.15)]),d=w<.7?r:t;for(let e=0;e<P.length;e++){if(!De(P[e][0],-.95,.95)||!De(P[e][1],-1.5,1.5))continue;let t=d[ir(0,d.length)],r=Zt(P[e]);