if(bTestingLocally=!1,!0===bTestingLocally){function random_hash(){let e="0123456789abcdef",t="0x";for(let a=64;a>0;--a)t+=e[Math.floor(Math.random()*e.length)];return t}tokenData={hash:random_hash(),tokenId:"123000456"}}class Random{constructor(e){this.seed=e}random_dec(){return this.seed^=this.seed<<13,this.seed^=this.seed>>17,this.seed^=this.seed<<5,(this.seed<0?1+~this.seed:this.seed)%1e3/1e3}random_num(e,t){return e+(t-e)*this.random_dec()}random_int(e,t){return Math.floor(this.random_num(e,t+1))}random_bool(e){return this.random_dec()<e}}let seed=parseInt(tokenData.hash.slice(2,10),16),R=new Random(seed);var renderer,density,aW,aH,blockType,rand,size,fxhash=tokenData.hash,fxrand=function(){return R.random_dec()},useGL=!1,p={};t=0;var pgW,pgH,sW,sH,pintaRojo=!1,fSize=1e3,globalAspectRatio=.8;function fxrandB(e){let t=fxrand()*e;return t=Math.floor(1e4*t)/1e4,t}function fxrandAB(e,t){let a=e+(t-e)*fxrand();return a=Math.floor(1e4*a)/1e4,a}function fxrandChooseOption(e){return e[Math.floor(fxrandB(e.length))]}var isZach=!0;function preload(){useGL&&(1==minimizedShader()||(theShader=loadShader("shader/basic.vert","shader/basic.frag")))}function setup(){console.log(fxhash),sH=windowWidth<windowHeight*globalAspectRatio?windowWidth/globalAspectRatio:windowHeight,sW=sH*globalAspectRatio,setAttributes("premultipliedAlpha",!0),density=2,pixelDensity(density);const e=(renderer=createCanvas(Math.round(sW),Math.round(sH),WEBGL)).GL;aW=e.drawingBufferWidth,aH=e.drawingBufferHeight,1==minimizedShader()?loadShaderFromMinized(renderer):parseFrag(theShader._fragSrc),createPalette(),setAttributes("alpha",!1),noLoop();var t=document.getElementById("defaultCanvas0"),a=document.getElementById("defaultCanvas0").offsetWidth,n=document.getElementById("defaultCanvas0").offsetHeight;t.style.height=n-50+"px",t.style.width=a-50+"px",placeFeatures()}function draw(){useGL&&(shader(theShader),theShader.setUniform(goodname("res"),[sW,sH]),theShader.setUniform(goodname("resTarget"),[sW/sH*1e3,1e3]),theShader.setUniform(goodname("actualSize"),[aW,aH]),theShader.setUniform(goodname("colorTex"),img),theShader.setUniform(goodname("posTex"),posImg),theShader.setUniform(goodname("angTex"),angleImg),passSettings(theShader),background(220),noStroke(),rect(-sW/2,-sH/2,sW,sH),resetShader())}function keyPressed(){83===keyCode&&save("output_pd"+pixelDensity()+"_"+fxhash+".png"),72===keyCode?changeRes(6,!0):76===keyCode?changeRes(-1,!1):77===keyCode&&changeRes(1,!1)}function fxRandReset(){fxhashTrunc=fxhash.slice(2),regex=new RegExp(".{"+(fxhashTrunc.length/4|0)+"}","g"),hashes=fxhashTrunc.match(regex).map((e=>b58dec(e))),sfc32=(e,t,a,n)=>()=>{var s=((e|=0)+(t|=0)|0)+(n|=0)|0;return n=n+1|0,e=t^t>>>9,t=(a|=0)+(a<<3)|0,a=(a=a<<21|a>>>11)+s|0,(s>>>0)/4294967296},fxrand=sfc32(...hashes)}function changeResWebgl(e){const t=renderer.GL;displayDensity();density=e,pixelDensity(density),renderer.resize(width,height),aW=t.drawingBufferWidth,aH=t.drawingBufferHeight,shader(theShader),theShader.setUniform(goodname("res"),[width,height]),theShader.setUniform(goodname("density"),density),theShader.setUniform(goodname("colorTex"),img),theShader.setUniform(goodname("posTex"),posImg),theShader.setUniform(goodname("angTex"),angleImg),theShader.setUniform(goodname("actualSize"),[aW,aH]),passSettings(theShader),background(220),noStroke(),rect(-width/2,-height/2,width,height),resetShader();document.getElementById("defaultCanvas0"),document.getElementById("defaultCanvas0").offsetWidth,document.getElementById("defaultCanvas0").offsetHeight}function changeRes(e,t=!0){let a=pixelDensity();t?a=e:(a+=e,a=max(a,1)),useGL?changeResWebgl(a):(pg.clear(),pg=createGraphics(pgW,pgH),pg.pixelDensity(a),pixelDensity(a),fxRandReset(),setupArt(),art(),redraw())}function windowResized(){if(sH=windowWidth<windowHeight*globalAspectRatio?windowWidth/globalAspectRatio:windowHeight,sW=sH*globalAspectRatio,useGL){document.getElementById("defaultCanvas0");console.log(document.getElementById("defaultCanvas0").offsetWidth);document.getElementById("defaultCanvas0").offsetWidth,document.getElementById("defaultCanvas0").offsetHeight}}isZach&&(useGL=!0);
var shaderCode = {"shaders":[{"name":"main","contents":"precision highp float;uniform sampler2D E;uniform sampler2D Bb;uniform sampler2D Cb;uniform vec2 Db;uniform vec2 Ba;uniform vec2 Ca;const float Da=3.141593;const int mb=16;const int nb=8;uniform int Eb;uniform int Ea;uniform int U;const int Z=15;const int bd=0;uniform int u;uniform float Fb;uniform int cd;uniform int dd;float h=100.;uniform int ob;const float ka=0.;const float yc=.5;const float zc=.5;const float Gb=.5;const float Ac=.5;const float ed=1.5;vec3 Bc;vec3 la[30];float Q[30];vec2 Cc;vec2 ma(vec3 a,vec3 b,float d){float e=dot(b,b);float c=2.*dot(b,a);float g=dot(a,a)-d*d;float f=c*c-4.*e*g;if(f<0.)return vec2(1e+5,-1e+5);return vec2((-c-sqrt(f))/(2.*e),(-c+sqrt(f))/(2.*e));}vec3 ea(vec3 a,vec3 j,vec3 b,float P,float l,float o,vec3 s,float v,float w,float x,float e){b=normalize(b);a=normalize(a);vec2 c=ma(j,a,o);if(c.x>c.y)return vec3(0,0,0);c.y=min(c.y,ma(j,a,l).x);float d=(c.y-c.x)/float(mb);float y=0.;vec3 F=vec3(0,0,0);vec3 G=vec3(0,0,0);float z=0.;float A=0.;float f=dot(a,b);float q=f*f;float g=e*e;float V=3./(16.*Da)*(1.+q);float W=3./(8.*Da)*((1.-g)*(q+1.))/(pow(1.+g-2.*f*e,1.5)*(2.+g));for(int H=0;H<mb;H++){vec3 i=j+a*(y+d*.5);float r=length(i)-l;float I=exp(-r/w)*d;float J=exp(-r/x)*d;z+=I;A+=J;float m=ma(i,b,o).y/float(nb);float B=0.;float C=0.;float D=0.;for(int K=0;K<nb;K++){vec3 L=i+b*(B+m*.5);float M=length(L)-l;C+=exp(-M/w)*m;D+=exp(-M/x)*m;B+=m;}vec3 N=exp(-(v*(A+D)+s*(z+C)));F+=I*N;G+=J*N;y+=d;}return P*(V*s*F+W*v*G);}float Fa(float c,float a,float d,float b,float e){return b+(c-a)*(e-b)/(d-a);}float p(float c,float a,float b,float d,float e){float f=clamp(c,a,b);return Fa(f,a,b,d,e);}float Dc(float a,float b){return max(a,b);}float fd(float a,float b){return Dc(a,-b);}float gd(vec2 a,float b){return length(a)-b;}float hd(vec2 f,vec2 b,vec2 c,float g){float e=length(c-b);vec2 d=(c-b)/e;vec2 a=f-(b+c)*.5;a=mat2(d.x,-d.y,d.y,d.x)*a;a=abs(a)-vec2(e,g)*.5;return length(max(a,0.))+min(max(a.x,a.y),0.);}float id(vec2 b,vec2 c){vec2 a=abs(b)-c;return length(max(a,0.))+min(max(a.x,a.y),0.);}float jd(vec2 a,vec2 b,float c,float d){a.x=abs(a.x);return (b.y*a.x>b.x*a.y?length(a-b*c):abs(length(a)-c))-d;}float kd(vec2 c,vec2 d,float e){vec2 a=vec2(cos(e),sin(e));vec4 f=a.xyyx*c.xxyy;vec4 b=a.xyyx*d.xxyy;return max(max(abs(f.x+f.z)-d.x,abs(f.w-f.y)-d.y)/max(abs(a.x-a.y),abs(a.x+a.y)),max(abs(c.x)-max(abs(b.x-b.z),abs(b.x+b.z)),abs(c.y)-max(abs(b.y+b.w),abs(b.y-b.w))));}float Hb(vec2 d,vec2 c,vec2 e){vec2 b=d-c,a=e-c;float f=clamp(dot(b,a)/dot(a,a),0.,1.);float g=dot(b,a)>0.?-1.:1.;return length(b-a*f)*g;}vec3 ld(vec3 a,float b){return pow(a,vec3(1./b));}vec3 md(vec3 a){vec3 c;float e=min(min(a.r,a.g),a.b);float d=max(max(a.r,a.g),a.b);float b=d-e;c.z=(d+e)/2.;if(b==0.){c.x=0.;c.y=0.;}else{if(c.z<.5)c.y=b/(d+e);else c.y=b/(2.-d-e);float f=((d-a.r)/6.+b/2.)/b;float g=((d-a.g)/6.+b/2.)/b;float i=((d-a.b)/6.+b/2.)/b;if(a.r==d)c.x=i-g;else if(a.g==d)c.x=1./3.+f-i;else if(a.b==d)c.x=2./3.+g-f;if(c.x<0.)c.x+=1.;else if(c.x>1.)c.x-=1.;}return c;}float pb(float b,float d,float a){if(a<0.)a+=1.;else if(a>1.)a-=1.;float c;if(6.*a<1.)c=b+(d-b)*6.*a;else if(2.*a<1.)c=d;else if(3.*a<2.)c=b+(d-b)*(2./3.-a)*6.;else c=b;return c;}vec3 nd(vec3 a){vec3 c;if(a.y==0.)c=vec3(a.z);else{float b;if(a.z<.5)b=a.z*(1.+a.y);else b=a.z+a.y-a.y*a.z;float d=2.*a.z-b;c.r=pb(d,b,a.x+1./3.);c.g=pb(d,b,a.x);c.b=pb(d,b,a.x-1./3.);}return c;}float od(vec2 b,vec2 c){vec2 a=abs(b)-c;float d=length(max(a,0.));float e=min(max(a.x,a.y),0.);return d+e;}vec3 pd(vec3 b,float c,float d,float e){const float f=.5;const float g=.5;const float i=.5;const vec3 j=vec3(.2125,.7154,.0721);vec3 l=vec3(f,g,i);vec3 a=b*c;vec3 m=vec3(dot(a,j));vec3 o=mix(m,a,d);vec3 q=mix(l,o,e);return q;}const float Ib=3.141593;const float qd=1.570796;const float rd=.785398;vec4 fa(vec4 a){return mod((a*34.+1.)*a,289.);}vec4 Jb(vec4 a){return 1.792843-.853735*a;}float qb(vec3 i){const vec2 d=vec2(1./6.,1./3.);const vec4 z=vec4(0.,.5,1.,2.);vec3 c=floor(i+dot(i,d.yyy));vec3 a=i-c+dot(c,d.xxx);vec3 j=step(a.yzx,a.xyz);vec3 A=1.-j;vec3 f=min(j.xyz,A.zxy);vec3 g=max(j.xyz,A.zxy);vec3 v=a-f+1.*d.xxx;vec3 w=a-g+2.*d.xxx;vec3 x=a-1.+3.*d.xxx;c=mod(c,289.);vec4 B=fa(fa(fa(c.z+vec4(0.,f.z,g.z,1.))+c.y+vec4(0.,f.y,g.y,1.))+c.x+vec4(0.,f.x,g.x,1.));float L=1./7.;vec3 b=L*z.wyz-z.xzx;vec4 C=B-49.*floor(B*b.z*b.z);vec4 D=floor(C*b.z);vec4 M=floor(C-7.*D);vec4 l=D*b.x+b.yyyy;vec4 m=M*b.x+b.yyyy;vec4 e=1.-abs(l)-abs(m);vec4 F=vec4(l.xy,m.xy);vec4 G=vec4(l.zw,m.zw);vec4 N=floor(F)*2.+1.;vec4 P=floor(G)*2.+1.;vec4 H=-step(e,vec4(0.));vec4 I=F.xzyw+N.xzyw*H.xxyy;vec4 J=G.xzyw+P.xzyw*H.zzww;vec3 o=vec3(I.xy,e.x);vec3 q=vec3(I.zw,e.y);vec3 r=vec3(J.xy,e.z);vec3 s=vec3(J.zw,e.w);vec4 K=Jb(vec4(dot(o,o),dot(q,q),dot(r,r),dot(s,s)));o*=K.x;q*=K.y;r*=K.z;s*=K.w;vec4 y=max(.6-vec4(dot(a,a),dot(v,v),dot(w,w),dot(x,x)),0.);y=y*y;return 42.*dot(y*y,vec4(dot(o,a),dot(q,v),dot(r,w),dot(s,x)));}float Kb(vec2 a){return qb(vec3(a,0.));}float n(float a,float b,float c){return qb(vec3(a,b,c));}float sd(float a,float b){return qb(vec3(a,b,0.));}float td=.05;vec4 Ga(const vec4 a){vec4 b=mod(mod(a,vec4(5612.)),vec4(3.141593*2.));return fract(b*b*vec4(56812.5453));}const float R=1.;const float S=57.;const float T=113.;const vec3 Lb=vec3(R,S,T);const vec4 Mb=vec4(0,S,T,T+S);const vec4 Nb=vec4(R,R+S,T+R,T+R+S);float ud(const in vec3 f){vec3 d=f;vec3 a=fract(d);vec3 g=d-a;vec3 b=a*a*(3.-2.*a);float e=dot(g,Lb);vec4 i=e+Mb;vec4 j=e+Nb;vec4 l=Ga(i);vec4 m=Ga(j);vec4 c=mix(l,m,b.x);float o=mix(mix(c.x,c.y,b.y),mix(c.z,c.w,b.y),b.z);return 1.-2.*o;}float vd(in float a){return fract(sin(a)*48.5453);}float X(vec2 a){return fract(sin(dot(a,vec2(3433.8,3843.98)))*45933.8);}float wd(vec2 a){vec2 b=floor(a);a=fract(a);a*=a*(3.-2.*a);vec2 c=vec2(X(b),X(b+vec2(0,1))),d=vec2(X(b+vec2(1,0)),X(b+vec2(1,1))),e=mix(c,d,a.x);return mix(e.x,e.y,a.y);}const float xd=1.5;float yd(vec3 a){float c=min(min(a.x,a.y),a.z);float b=max(max(a.x,a.y),a.z);return (b-c)/(b+1e-7);}mat4 Ec(float a){return mat4(1,0,0,0,0,1,0,0,0,0,1,0,a,a,a,1);}mat4 Fc(float a){float b=(1.-a)/2.;return mat4(a,0,0,0,0,a,0,0,0,0,a,0,b,b,b,1);}mat4 Gc(float c){vec3 a=vec3(.3086,.6094,.082);float b=1.-c;vec3 d=vec3(a.x*b);d+=vec3(c,0,0);vec3 e=vec3(a.y*b);e+=vec3(0,c,0);vec3 f=vec3(a.z*b);f+=vec3(0,0,c);return mat4(d,0,e,0,f,0,0,0,0,1);}float na(float c,float a){float b=1e-5;float e=0.+b;float f=1.-b;a=min(f,max(e,a));a=1.-a;float d=0.;if(c<=.5){d=pow(2.*c,1./a)/2.;}else{d=1.-pow(2.*(1.-c),1./a)/2.;}return d;}float _(float a){float b=(a+.5)/30.;float d=.5/128.;float c=texture2D(Cb,vec2(b,.5)).r;return c*Ib*2.-Ib;}vec2 Y(float b){float c=(b+.5)/30.;float d=.5/128.;vec2 a=texture2D(Bb,vec2(c,.5)).rg;a.x/=1.;a.y/=1.;a.x*=Ba.x;a.y*=Ba.y;return a;}vec3 zd(float c,float a,float d,float e,float f,float g,sampler2D i){vec3 b=ea(normalize(vec3(vec2(sin(a)*.5+.5,pow(a*0.+c*.1+.05,2.)*10.3),.1)),vec3(0,6372000.*1.,0),vec3(0.,0.+.3,-3.+10.*a),90.,6371000.,6471000.,pow(vec3(5.5e-6,1.3e-5,2.24e-5),vec3(.9+.2*sin(a*10.+d))),2.1e-5,8000.*.9,1200.*.8,.758*.3);b=1.-exp(-1.*b)*.8;return b;}vec3 Hc(float c,float a,float d,float e,float f,float g,sampler2D i){vec3 b=ea(normalize(vec3(vec2(sin(a)*.1+.5,pow(a*0.+c*.1+.05,2.)*10.3),.1)),vec3(0,6372000.*1.,0),vec3(0.,0.+.3,-3.+10.*a),90.,6371000.,6471000.,pow(vec3(5.5e-6,1.3e-5,2.24e-5),vec3(.9+.3*sin(a*100.+d))),2.1e-5,8000.*1.9,1200.*.8,.758*.3);b=1.-exp(-1.*b)*.8;return b;}vec3 Ob(float c,float a,float d,float e,float f,float g,sampler2D i){vec3 b=ea(normalize(vec3(vec2(sin(a)*.5+.5,pow(a*0.+c*.1+.05,2.)*10.3),.1)),vec3(0,6372000.*1.,0),vec3(0.,0.+.3,-3.+10.*a),90.,6371000.,6471000.,pow(vec3(5.5e-6,1.3e-5,2.24e-5),vec3(.9+.2*sin(a*10.+d))),2.1e-5,8000.*.9,1200.*.8,.758*.3);b=1.-exp(-1.*b)*.8;return b;}vec3 O(float c,float g,float i,float j,sampler2D l){float b=1./12.;float d=floor(c/b);float a=d*b;float e=(d+1.)*b;float f=(c-a)/(e-a);f=clamp(f,0.,1.);float m=a+(e-a)*(i+j*na(f,g));return texture2D(l,vec2(m,.5)).rgb;}mat2 k(float a){return mat2(cos(a),-sin(a),sin(a),cos(a));}const float t=3.141593;float ga(in float a,in float b){return b==0.?sign(a)*t/2.:atan(a,b);}vec2 Ha(vec2 d,vec2 e,vec2 f){vec2 a=e,b=f;float c=pow(distance(b,a),2.);if(c==0.)return a;float g=clamp(dot(d-a,b-a)/c,0.,1.);vec2 i=a+g*(b-a);return i;}void main(){h=float(ob)*.1;Bc=vec3(0.);for(int Ia=0;Ia<30;Ia++){la[Ia]=vec3(1.);Q[Ia]=0.;}float Ad=float(ob)*.00123;Cc=vec2(0.);int g=Eb;if(u==1){g=3;}if(u==5){g=4;}if(u==0){g=4;}if(u==2){g=4;}if(u==3){g=3;}if(u==4){g=4;}if(u==6){g=4;}if(u==7){g=4;}vec2 B=Ba;vec2 Bd=gl_FragCoord.xy/Ca;vec2 Pb=Db;float Cd=distance(Pb,vec2(0.));float Dd=distance(vec2(B.x),vec2(0.));vec2 Ed=B*.5;vec2 a=gl_FragCoord.xy/Ca*B;vec2 l=B/2.;highp float Fd=0.;highp float Ic;highp vec3 r=vec3(0.);highp vec3 Qb=vec3(0.);highp float rb=0.;highp float Jc=0.;highp float Kc=0.;highp float Lc=0.;vec2 Gd=vec2(0.);vec2 i=a;vec2 s=a;vec2 j=a;float Rb=1e+6;float Mc=0.;float Sb=0.;float Tb=0.;float Ub=0.;float Vb=0.;float oa=0.;for(int pa=0;pa<30;pa++){if(pa>Z)continue;float K=float(pa);float Hd=_(K);float qa=distance(i,Y(K));vec2 ra=normalize(i-Y(K));if(qa<Rb){Rb=qa;Mc=ga(ra.y,ra.x);}float sa=1./pow(qa,.3);oa+=sa;Ub+=sa;Vb=qa*sa;Tb+=ga(ra.x,ra.y)*sa;Sb+=dot(ra*k(t/2.),vec2(1.,0.)*k(K))*sa;}Tb/=oa;Sb/=oa;Vb/=oa;Ub/=oa;for(int L=0;L<30;L++){if(L>Z)continue;float b=float(L);float Id=b/float(Z);int Wb=int(mod(b,2.));int Nc=int(mod(b,3.));a=i;float Jd=p(distance(l,i),0.,700.,0.,1.);a=j;vec2 Kd=a;a=j;vec2 c;float Ja=1.;float Oc=1.;float Ld=0.;c=Y(b);vec2 Md=mix(l,c,.9);a-=vec2(c);float Ka=10.;vec2 Nd=vec2(l.x,l.y);vec2 La=normalize(c-a);float Od=ga(La.y,La.x);a=i-c;vec2 Pd=a;float Ma=_(b);vec2 Xb=normalize(i-c);vec2 Yb=vec2(sin(Ma-t/2.),cos(Ma-t/2.));float Qd=pow(dot(Yb,normalize(Xb))*.5+.5,1.);float Rd=distance(a,c);vec2 Sd=a;if(u==0){vec2 C=s-c;{a=j-c;for(int ta=0;ta<20;ta++){if(float(ta)>p(b,0.,15.,15.,8.))continue;float ua=float(ta);float M=distance(C*vec2(1.,1.),vec2(0.))*.3;float Na=p(M,0.,20.,1.,1.);float Oa=n(Na+ua*1.1+M*1e-3,b*0.+C.x*1e-3,C.y*1e-3)*5.;float Zb=n(M+Oa*1e-3+ua*.1,b*0.+a.y*3e-3,C.x*.3)*13.;a=a*k(Oa);a.y+=sin(a.x*.03+M*.1*Na+a.x*.01)*30.*sin(ua*.09)*Na;a=a*k(Zb);a=a*k(-Zb);a=a*k(-Oa);}j=a+c;}}if(u==1){vec2 Pa=i-c;{a=j-c;for(int _b=0;_b<19;_b++){float N=distance(Pa,vec2(0.));float Pc=n(a.x*.01,a.y*1e-3,N*0.);float Qc=n(a.y*.01,a.y*.4,N*1e-3);a=a*k(N*3e-6);a.y+=3.*sin(a.x*.1+Pa.x*.01+N*.05+Pc*10.);a.x+=10.*cos(a.y*.1+Pa.x*.1+N*.1+Qc*.1);}j=a+c;}}if(u==2){vec2 w=s-c;{a=j-c;for(int Qa=0;Qa<13;Qa++){float va=float(Qa);float P=distance(w*vec2(1.,1.),vec2(0.));float Ra=p(P,0.,200.,0.,1.);float Sa=n(Ra+va*.1+P*1e-3,b*0.+w.x*1e-3,w.y*3e-3)*5.;float ac=n(P+Sa*.01+va*.1,b*0.+w.y*3e-3,w.x*.3)*3.;a=a*k(Sa);a.y+=sin(a.x*.02+P*.03*Ra+w.x*.01)*40.*sin(va*.9)*Ra;a=a*k(ac);a=a*k(-ac);a=a*k(-Sa);}j=a+c;}}if(u==3){vec2 x=s-c;{a=j-c;for(int Ta=0;Ta<19;Ta++){float Ua=float(Ta);float bc=n(0.,a.x*1e-4,a.x*1e-4)*10.;float cc=n(Ua,b*.1+x.x*1e-3,x.y*1e-3)*100.;float dc=n(bc*.2+Ua*10.1,b*3.+x.y*1e-4,x.x*1e-4)*100.;a=a*k(cc);a.y+=10.*sin(x.x*.01);a=a*k(dc);a.x+=10.*sin(x.y*.1);a=a*k(-dc);a=a*k(-cc);}j=a+c;}}if(u==4){vec2 ha=s-c;{a=j-c;a.x+=sin(a.y*.01+b)*10.;a.y+=sin(a.x*.01+b)*10.;for(int Va=0;Va<14;Va++){float sb=float(Va);float ec=n(sb*.01,b*.4+ha.x*1e-4,ha.y*1e-4)*40.;a=a*k(ec);a.x+=sin(a.y*.03+sb+ha.y*1e-3)*10.;a.y+=sin(a.x*.04)*10.;a.x+=sin(a.y*.1)*1.;a=a*k(-ec);a=mix(a-c,ha,1e-3)+c;}j=a+c;}}if(u==5){vec2 D=i-c;{a=j-c;float Td=pow(Fb,3.)*1.;for(int Wa=0;Wa<20;Wa++){float Xa=float(Wa);a=a*k(n(Xa,b*0.+D.x*1e-3,D.y*1e-3)*t*10.3);a.x+=sin(a.x*.01)*100.;a=a*k(n(Xa*10.1,b*0.+D.y*.01,D.x*1e-3)*t*1.3);a.y+=100.;a=a*k(-n(Xa*10.1,b*0.+D.y*.01,D.x*1e-3)*t*1.3);a=a*k(-n(Xa,b*0.+D.x*1e-3,D.y*1e-3)*t*10.3);}j=a+c;}}if(u==6){vec2 F=s-c;{a=j-c;for(int wa=0;wa<20;wa++){if(float(wa)>p(b,0.,15.,15.,8.))continue;float xa=float(wa);float V=distance(F*vec2(1.,1.),vec2(0.))*.9;float Ya=p(V,0.,20.,1.,0.);float Za=1.3*n(Ya+xa*1.1+V*1e-3,b*0.+F.x*1e-3,F.y*1e-3)*5.;float fc=10.3*n(V+Za*.1+xa*.1,b*0.+a.y*3e-3,F.x*3e-3)*5.;float gc=distance(a,vec2(0.));float hc=p(gc,30.,300.,3.1,.3);;a*=hc;a.y+=sin(a.x*1e-4+V*.1*Ya+a.x*1e-4)*300.*sin(xa*.9)*Ya;a=a*k(Za);a.y+=sin(a.x*.05)*8.;a=a*k(fc);a=a*k(-fc);a=a*k(-Za);a/=hc;}j=a+c;}}if(u==7){vec2 G=s-c;{a=j-c;for(int ya=0;ya<30;ya++){if(float(ya)>p(b,0.,15.,15.,8.))continue;float za=float(ya);float W=distance(G*vec2(1.,1.),vec2(0.))*.9;float _a=p(W,0.,20.,1.,0.);float ab=n(_a+za*1.1+W*1e-3,b*0.+G.x*1e-3,G.y*1e-3)*5.;float ic=n(W+ab*.1+za*.1,b*0.+a.y*3e-3,G.x*3e-3)*5.;a.y+=sin(a.x*1e-4+W*.1*_a+a.x*1e-4)*300.*sin(za*.9)*_a;a=a*k(ab);a.y+=sin(a.x*.05)*9.;a=a*k(ic);a=a*k(-ic);a=a*k(-ab);}j=a+c;}}a+=vec2(c);j=a;float d=distance(a,c);vec2 v=normalize(a-c);vec2 bb=vec2(l.x+Ka*sin(b+h*.1),l.y+Ka*sin(12.+b+h*.1));vec2 cb=normalize(c-bb);float q=ga(cb.y,cb.x);float Ud=distance(c-bb,vec2(0.));float Rc=distance(a-l,vec2(0.));d=distance(a,c);v=normalize(a-c);Rc=distance(a-l,vec2(0.));q=-_(b)+t/2.;float m=dot(v,vec2(0.,1.)*k(q));float jc=q;float Sc=0.;highp float f=0.;float Vd=p(d,200.,300.,1.,0.);if(g==0){float tb=d-200.+200.*sin(b*.3);float kc=.03;if(Wb==0)kc=0.;if(tb<.01)tb=.01;float Wd=pow(sin(m)*.5+.5,2.4);if(Nc==0)f=1./pow(tb*kc+d*2e-3,2.1+2.*sin(b*.3+h)+10.1*pow(abs(sin(b*123.+h*.1)),200.)*1.);else f=1./pow(d*.01,4.1+4.*sin(b+h)+0.*pow(abs(sin(b*123.+h*.1)),10.)*1.);}else if(g==1||g==2||g==3){v*=1.;float o=m;if(g==3){float db=.7;if(yc<.33){db=.6+.2*sin(b*.4+h);}if(o<db)o=db;o=Fa(o,db,1.,0.,1.);float lc=Gb*1.6+.4;o=pow(o,Fa(d,0.,600.,lc,lc*(1.+Ac*2.)));}else if(g==2){float ub=.6+.1*sin(b);if(o<ub)o=ub;o=pow(Fa(o,ub,1.,0.,1.),4.);}else{o=clamp(o,0.,1.);;o=smoothstep(0.,.99,o)*o;}float z=clamp(o,0.,1.);;float Xd=.5;float Yd=.8;if(g==1){float mc=ka;if(mc<.02){mc=0.;}float Tc=(1.-ka)*10.+4.;z=pow(z*Tc,.01+ka*13.);}else if(g==2){z=pow(z,1.9);}else{z=pow(z,p(zc,0.,1.,.6,1.2));z=pow(z,p(d,100.,333.,.2+.1*sin(b),1.1));}float Uc=.9;if(g==3){Uc=2.;f=1./pow(d*1.,1.3);}else if(g==2){f=1./pow(d,2.);}else{vec2 Vc=a;float Wc=abs(Hb(a,c+1000.*vec2(cos(q),sin(q)),c-1000.*vec2(cos(q),sin(q))));d=mix(d,Wc,.4+.3*sin(b));Vc+=c;f=1./pow(d,2.);}f*=z;f+=1./pow(2000.,2.8);f=pow(f,2.);if(g==2){f=pow(f,.9);}}else if(g==4){float aa=b*3.14*1.+sin(b+h*.1)*0.;aa=q+t/2.;float nc=dot(v,vec2(0.,1.)*k(aa));float oc=dot(v,vec2(0.,-1.)*k(aa));float H=aa+sin(h+b)*.01*sin(h);nc=clamp(nc,0.,1.);oc=clamp(oc,0.,1.);float ba=140.+100.*sin(b+h*.1);ba*=Ja*3.7*sin(b);vec2 eb=Ha(a,c+ba*vec2(cos(H),sin(H)),c-ba*vec2(cos(H),sin(H)));float Zd=distance(eb,c)/ba;float Xc=distance(eb,a);f=1./pow(Xc*1.,3.+sin(b)*2.);}else if(g==5){float ca=floor(b)*t*1.+t*1.;if(Ea==0)ca+=t*.5;float pc=dot(v,vec2(0.,1.)*k(ca));float qc=dot(v,vec2(0.,-1.)*k(ca));float I=ca;pc=clamp(pc,0.,1.);qc=clamp(qc,0.,1.);float fb=180.+180.*sin(b+h*.1);c.y=500.+0.*sin(b*24.24);vec2 gb=c+fb*vec2(cos(I),sin(I));vec2 hb=c-fb*vec2(cos(I),sin(I));vec2 ia=Ha(a,gb,hb);vec2 rc=ia-a;float ja=dot(normalize(gb-hb)*k(-t/2.),normalize(ia-a));float _d=ja;ja=p(ja,-1.,1.,.01+.0099*sin(b),1.);float ae=-1.;float be=distance(rc,vec2(0.));float sc=distance(ia,a);if(Ea==0){f=1./pow(sc*ja,1.);}else{f=1./pow(sc*ja,2.5);}}if(g==6){vec2 ce=Y(mod(b*10.+1.,16.));c=Y(b);float tc=_(b);d=distance(c,a);vec2 de=c-l;float ib=tc;vec2 uc=normalize(a-c);vec2 vc=vec2(sin(ib-t/2.),cos(ib-t/2.));float y=dot(uc,vc);float ee=y;float vb=-.99;if(y<vb)y=vb;y=p(y,vb,1.,0.,1.);y=1.-pow(y,1.);Sc=y;f=1./pow(d*.1+y*100.,2.3);}vec3 e;float da=.1;if(U==0){e=O(fract(sin(m)*0.+b*da+d*0.+h*0.+d*0.),.04,0.,1.,E);float Yc=fract(d*1e-4);e=O(fract(Yc*.1+sin(m)*0.+b*.1+d*0.+h*0.+d*0.),0.,0.,1.,E);vec3 fe=O(fract(sin(jc)*0.+b*.7+d*0.+h*0.+d*0.),.3,1.,-1.,E);if(Ea==2){e=O(fract(sin(m)*0.+b*.1+d*0.+h*0.+d*0.),.9,0.,1.,E);}}else if(U==1){e=O(fract(b*da+d*0.+h*0.),.9,0.,1.,E);vec3 ge=vec3(n(d*1e-3+a.x*0.,b*100.3,h*1.+m*3.)*.5+.5,n(d*.0013+a.x*0.,b*100.3,h*1.+m*3.1)*.5+.5,n(d*.0016+a.x*0.,b*100.3,h*1.+m*3.2)*.5+.5);if(Wb!=1)e=mix(e,vec3(1.),p(d,300.,801.,0.,1.));else e=mix(e,vec3(1.),p(d,600.,1001.,0.,1.));}else if(U==2){e=O(fract(b*da+a.y*3e-4-h*0.),.4,0.,1.,E);}else if(U==3){e=O(fract(b*da+a.x*0.-m*.02+h*.1),.1,0.,1.,E);}else if(U==4){e=O(fract(b*da+d*1e-4-h*.03+m*.02),.7,0.,1.,E);}else if(U==5){e=O(fract(b*da+d*0.+h*0.),.9,0.,1.,E);e=mix(e,vec3(1.),p(d,300.,501.,0.,1.));vec3 he=vec3(sin(d*.01+a.x*0.+b*100.3+h*1.)*.5+.5,sin(d*.01+a.x*0.+b*100.2+h*1.)*.5+.5,sin(d*.01+a.x*0.+b*100.1+h*1.)*.5+.5);}else if(U==6){e=O(fract(b*da+d*0.-h*.01),.7,0.,1.,E);e=mix(vec3(sin(b*.3)*.5+.5),e,pow(p(d,0.,401.,0.,1.),.8));}else if(U==7){vec3 ie=vec3(sin(d*1e-3+a.x*0.+b*100.3+h*1.)*.5+.5,sin(d*1e-3+a.x*0.+b*100.2+h*1.)*.5+.5,sin(d*1e-3+a.x*0.+b*100.1+h*1.)*.5+.5);e=O(fract(b*.4+d*1e-4-h*.03),.7,0.,1.,E);}else if(U==8){e=O(fract(b*.14+d*0.-h*.01),.7,0.,1.,E);e=mix(e,e*.3,pow(p(d,400.,801.,0.,1.),.8));}float wb=500.;float xb=1e-4;float wc=800.;if(u==1){wb=1400.;xb=1e-5;}if(u==3){wb=1400.;xb=1e-5;}vec3 Aa=vec3(0.);if(u==5){Aa=Ob(i.y/400.,d*1e-4,b*3.,.7,0.,1.,E);}else if(u==0){Aa=Ob(i.y/400.,d*1.3e-4,b*3.,.7,0.,1.,E);wc=550.;}else{Aa=Hc(i.y/wb,d*xb,b*3.,.7,0.,1.,E);}e=mix(e,Aa,p(d,100.,wc,0.,1.));e=mix(e,Aa,p(d,0.,200.,1.,0.));float je=.1+.1*sin(h+b);float Zc=0.;float _c=1.4;float ad=1.8;vec4 yb=vec4(e,1.);yb=Ec(Zc)*Fc(_c)*Gc(ad)*yb;e=yb.xyz;float ke=Kb(vec2(i.x*1e-3+b*.1+rb*3e-4,i.y*1e-3+b*3.4));float zb=sin(b)*.5+.5;zb=pow(zb,3.);if(Ea!=2){f=pow(f,p(zb,0.,1.,1.,.8));f=pow(f,1.+Ja);}else;r+=f*e*Ja;Ic+=f*Ja;Qb=mix(Qb,e,.3);Jc+=m;Kc+=sin(m);Lc+=f;la[L]=mix(e,vec3(1.),1.-Oc);Q[L]=f;rb+=d*1e-3;}la[0]=la[0]*1.;float xc=0.;for(int jb=0;jb<30;jb++){if(jb>Z)continue;xc+=Q[jb];}float kb=0.;float Ab=.5;if(u==1){Ab=1.;}if(u==0){Ab=.65;}for(int J=0;J<30;J++){if(J>Z)continue;Q[J]=Q[J]/xc;Q[J]=pow(Q[J],Ab);kb+=Q[J];}r=vec3(0.);for(int A=0;A<30;A++){if(A>Z)continue;float lb=float(A);int le=int(mod(lb,2.));int me=int(mod(lb,3.));float ne=Q[A]/kb;r+=la[A]*(Q[A]/kb);}r=clamp(r,vec3(0.),vec3(1.));r.x=na(r.x,.3);r.y=na(r.y,.2);r.z=na(r.z,.1);gl_FragColor=vec4(r,1.);}"}],"renaming":{"colorTex":"E","resTarget":"Ba","actualSize":"Ca","overallLook":"Ea","posTex":"Bb","angTex":"Cb","res":"Db"},"settings":[{"name":"Eb","min":1,"max":4,"val":1,"type":"int"},{"name":"Ea","min":2,"max":2,"val":2,"type":"int"},{"name":"U","min":0,"max":8,"val":0,"type":"int"},{"name":"u","min":0,"max":7,"val":0,"type":"int"},{"name":"Fb","min":0,"max":1,"val":0,"type":"float"},{"name":"cd","min":0,"max":0,"val":0,"type":"int"},{"name":"dd","min":0,"max":3,"val":0,"type":"int"},{"name":"ob","min":0,"max":5000,"val":0,"type":"int"}],"vert":"attribute vec3 aPosition;\n\nuniform mat4 uModelViewMatrix;\nuniform mat4 uProjectionMatrix;\nuniform float uResolution;\nuniform float uPointSize;\n\nvoid main(void) {\n vec4 positionVec4 = vec4(aPosition, 1.0);\n gl_Position = uProjectionMatrix * uModelViewMatrix * positionVec4;\n}\n"}
var bSwapUniformsWithConsts=!0,randomPoints=[];function computeSettingsForAB(){let e=parseInt(tokenData.hash.slice(2,10),16);new class{constructor(e){this.seed=e}random_dec(){return this.seed^=this.seed<<13,this.seed^=this.seed>>17,this.seed^=this.seed<<5,(this.seed<0?1+~this.seed:this.seed)%1e3/1e3}random_num(e,t){return e+(t-e)*this.random_dec()}random_int(e,t){return Math.floor(this.random_num(e,t+1))}random_bool(e){return this.random_dec()<e}}(e);tokenData.hash}function minimizedShader(){return"undefined"!=typeof shaderCode}function goodname(e){return 0==minimizedShader()?e:shaderCode.renaming[e]}function loadShaderFromMinized(e){if(bSwapUniformsWithConsts){settings=shaderCode.settings,randomize();var t=shaderCode.shaders[0].contents;for(i=0;i<settings.length;i++){var a=settings[i].name,n=settings[i].val,s=settings[i].type,o="uniform "+s+" "+a,r="const "+s+" "+a+" = "+n;t=t.replace(o,r)}theShader=createShader(shaderCode.vert,t),theShader._renderer=void 0}else theShader=createShader(shaderCode.vert,shaderCode.shaders[0].contents),theShader._renderer=void 0,settings=shaderCode.settings,randomize()}let img,posImg,angleImg;var settings=[],palette={a:[.8431,.7725,.6235,.3176,.6392,.6039,.8549,.2941,.4392,.6392,.3843,.298,.8824,.7294,.2745,.8392,.2863,.1961,.2157,.4706,.5647,.6196,.6941,.3098,.3843,.4549,.3451,.8431,.4471,.4118,.749,.502,.5176,.6627,.698,.5804],b:[.9098,.7647,.5608,.6118,.4706,.3412,.2431,.2902,.4549,.7725,.6235,.5294,.8196,.5451,.3529,.4902,.6667,.7294,.6784,.5255,.349,.8941,.7333,.5176,.1529,.1608,.1647,.902,.7608,.7647,.3804,.3255,.3765,.2902,.3255,.4824],c:[.2902,.6235,.3686,.02353,.01961,.0902,.8941,.8902,.9176,.5882,.2196,.6157,.8745,.1882,.1294,.1294,.298,.7373,.9137,.8275,.2784,.6588,.4353,.2118,0,0,.01569,.6314,.6549,.6784,.4471,.3686,.4275,.1922,.2118,.2],d:[.8824,.7529,.251,.451,.451,.4314,.7882,.7961,.7922,.01176,.007843,.007843,.6118,.5294,.1961,.2353,.2235,.1882,.4745,.3882,.1529,.6784,.3098,.1843,.251,.5529,.6745,.9451,.9451,.9451,.6039,.6078,.6039,.7451,.6392,.2314],e:[.8353,.8157,.8,.1686,.2196,.5294,.949,.8471,.3216,.7608,.3098,.2863,.4588,.2392,.4784,.8745,.8549,.8353,.2941,.4392,.3804,.6471,.6,.6078,.7059,.2039,.1725,.1333,.2941,.2235,.7647,.3059,.498,.902,.8431,.5765],ikko:[.8235,.8,.7294,.01961,.01961,.01176,.5686,.3843,.7294,.9765,.9804,.9608,.9098,.2471,.149,.3725,.8039,.8078,.1412,.3333,.6706,.2706,.6,.3804,.3412,.3137,.302,.8745,.8471,.7882,.5843,.5608,.5137,.949,.7137,.8039],golden:[.003922,0,0,.9529,.9569,.898,.8941,.1961,.1882,.8275,.7098,.4314,.4784,.4549,.3647,.8353,.7647,.6157,.7843,.6235,.3137,.251,.1961,.1294,.04706,.03137,.003922,.8275,.4431,.1882,.5529,.1176,.1176,.9059,.8784,.7804],night:[.3412,.2863,.2784,.5725,.2784,.2235,.2824,.4157,.4902,.1725,.2118,.3059,.549,.4824,.4039,.7647,.4118,.2471,.1333,.1529,.2275,.3333,.5098,.5765,.7255,.2118,.2824,.7608,.6784,.4118,.1137,.1098,.1373,.2039,.2784,.4275],sadamasa1:[.3412,.2863,.2784,.5725,.2784,.2235,.2824,.4157,.4902,.1725,.2118,.3059,.549,.4824,.4039,.7647,.4118,.2471,.1333,.1529,.2275,.3333,.5098,.5765,.7255,.2118,.2824,.7608,.6784,.4118,.1137,.1098,.1373,.2039,.2784,.4275],sadamasa2:[.1843,.4196,.3451,.9569,.7686,.4784,.2196,.06275,.09412,.9686,.851,.8667,.9608,.7882,.3059,.1686,.1843,.1765,.4902,.4314,.4471,.6902,.4667,.2392,.9255,.7804,.7216,.1647,.3412,.2863,.698,.6078,.6196,.4039,.1647,.1922],paul:[.08627,.06667,.08627,.902,.8902,.851,.5412,.4353,.4,.2745,.3098,.5333,.3098,.1725,.1373,.7529,.4941,.2902,.8118,.4902,.6157,.2745,.3137,.2353,.2118,.2235,.3725,.5882,.2824,.2275,.7137,.6745,.6392,.1255,.1294,.2039],amber:[.6824,.7216,.7098,.2667,.5647,.3647,.8863,.3569,.3059,.9647,.9569,.898,.949,.8353,.3412,.4196,.6784,.7725,.9333,.7216,.6,.4314,.5294,.5451,.4863,.8471,.7725,.5882,.349,.2902,.5843,.8824,.8118,.9255,.749,.7451],amber2:[.9451,.9412,.8667,.5765,.5647,.4745,.3765,.7294,.6627,.851,.5412,.6314,.6353,.6784,.651,.7725,.3098,.2667,.3608,.6118,.302,.251,.4431,.5804,.8392,.4275,.349,.3922,.4118,.4039,.8706,.8353,.7686,.6627,.4235,.349],gaurav:[.9176,.9333,.9529,.5333,.5412,.5294,.7137,.8039,.8118,.09412,.05882,.0902,.4275,.4039,.3804,.1333,.2471,.5882,.7373,.9059,.9098,.6039,.7059,.6863,.8392,.6275,.3765,.302,.2431,.2392,.8784,.9098,.9333,.6392,.3059,.1961],primary2:[.8235,.3216,.2275,.2392,.4118,.5373,.8667,.8275,.7804,.2275,.1373,.2235,.6196,.1843,.1804,.8824,.7686,.349,.2667,.4118,.2118,.6471,.6235,.5686,.7451,.3098,.4039,.9373,.9098,.8667,.5137,.3529,.2471,.451,.4,.4549],goodRB:[.1529,.1216,.2902,.8627,.9922,.9529,.7451,.3451,.302,.6784,.2275,.1529,.5686,.5725,.5412,.6667,.7255,.6941,.3529,.1686,.2706,.5373,.1922,.149,.1725,.1686,.4667,.7804,.8745,.8353,.5451,.2706,.3098,.8706,.3569,.2314],kino:[.007843,.007843,.007843,.6078,.3294,.4118,.3137,.6667,.4941,.2471,.09804,.5922,.9216,.9176,.9373,.1843,.3098,.2588,.1255,.09412,.2,.4431,.4275,.4314,.05098,.01176,.08627,.2784,.5059,.4235,.6157,.5804,.698,.3412,.1373,.6196]};function fxRandomBetween(e,t){return val=e+(t-e)*fxrand(),val=Math.floor(1e4*val)/1e4,val}function fxRandomIntBetween(e,t){return Math.floor(fxRandomBetween(e,t))}function randomize(){for(console.log(settings),i=0;i<settings.length;i++)if("int"==settings[i].type)settings[i].val=fxRandomIntBetween(settings[i].min,settings[i].max+.99);else{var e=fxRandomBetween(settings[i].min,settings[i].max);settings[i].val=e}for(i=0;i<30;i++){Math.floor(i/4),Math.floor(i%4);var t=1e3,a=1e3;randomPoints.push(createVector(fxrand()*t-t/2,fxrand()*a-a/2)),i}angleImg=createImage(30,1),posImg=createImage(30,1);t=1e3,a=1e3;for(let e=0;e<posImg.width;e++)for(let i=0;i<posImg.height;i++)if(e<16){var n=map(randomPoints[e].x,-t/2,t/2,0,255),s=map(randomPoints[e].y,-a/2,a/2,255,0),o=Math.atan2(randomPoints[e].y,randomPoints[e].x);posImg.set(e,i,[n,s,255,255]),angleImg.set(e,i,[floor(map(o,-Math.PI,Math.PI,0,255)),0,255,255])}else posImg.set(e,i,[0,0,0,255]),angleImg.set(e,i,[0,0,0,255]);posImg.updatePixels(),angleImg.updatePixels(),console.log(JSON.stringify(settings))}function placeFeatures(){by="Zach";var e=0,t=0;for(i=0;i<settings.length;i++)settings[i].name==goodname("overallLook")&&(e=settings[i].val),settings[i].name==goodname("variation")&&(t=settings[i].val);if(0==e)switch(blockType="Me as you as me",t){case 0:variations="color lights";break;case 1:variations="flat city";break;case 2:variations="color swimming"}else if(1==e)switch(blockType="Me as me",t){case 0:variations="block landscape";break;case 1:variations="weaving";break;case 2:variations="block horizon"}else if(2==e)switch(blockType="Me as you",t){case 0:variations="horizon blocks";break;case 1:variations="blocks on blocks";break;case 2:variations="portals"}}function passSettings(e){if(minimizedShader()&&bSwapUniformsWithConsts);else for(i=0;i<settings.length;i++)e.setUniform(settings[i].name,settings[i].val)}function parseFrag(e){for(var t=e.split("\n"),a=0;a<t.length;a++)if(t[a].indexOf("uniform")>-1&&t[a].indexOf("/////")>-1){var i="float";t[a].indexOf(" float ")<0&&(i="int"),t[a].split("/////").length;var n=t[a].split("/////")[0].split(" ")[2];n=(n=n.replace(" ","")).replace(";","");var s=t[a].split("/////")[1].split(" "),o=parseFloat(s[0]);let e=parseFloat(s[1]),l=parseFloat(s[2]);var r={};r.name=n,r.min=e,r.max=l,r.val=o,r.type=i,settings.push(r)}randomize()}function doubleExponentialSigmoid(e,t){t=1-(t=min(.99999,max(1e-5,t)));let a=0;return a=e<=.5?pow(2*e,1/t)/2:1-pow(2*(1-e),1/t)/2,a}function lab2rgb(e){var t,a,i,n=(e[0]+16)/116,s=e[1]/500+n,o=n-e[2]/200;return a=-.9689*(s=.95047*(s*s*s>.008856?s*s*s:(s-16/116)/7.787))+1.8758*(n=1*(n*n*n>.008856?n*n*n:(n-16/116)/7.787))+.0415*(o=1.08883*(o*o*o>.008856?o*o*o:(o-16/116)/7.787)),i=.0557*s+-.204*n+1.057*o,t=(t=3.2406*s+-1.5372*n+-.4986*o)>.0031308?1.055*Math.pow(t,1/2.4)-.055:12.92*t,a=a>.0031308?1.055*Math.pow(a,1/2.4)-.055:12.92*a,i=i>.0031308?1.055*Math.pow(i,1/2.4)-.055:12.92*i,[255*Math.max(0,Math.min(1,t)),255*Math.max(0,Math.min(1,a)),255*Math.max(0,Math.min(1,i))]}function rgb2lab(e){var t,a,i,n=e[0]/255,s=e[1]/255,o=e[2]/255;return a=(.2126*(n=n>.04045?Math.pow((n+.055)/1.055,2.4):n/12.92)+.7152*(s=s>.04045?Math.pow((s+.055)/1.055,2.4):s/12.92)+.0722*(o=o>.04045?Math.pow((o+.055)/1.055,2.4):o/12.92))/1,i=(.0193*n+.1192*s+.9505*o)/1.08883,t=(t=(.4124*n+.3576*s+.1805*o)/.95047)>.008856?Math.pow(t,1/3):7.787*t+16/116,[116*(a=a>.008856?Math.pow(a,1/3):7.787*a+16/116)-16,500*(t-a),200*(a-(i=i>.008856?Math.pow(i,1/3):7.787*i+16/116))]}function cubic_interpolate(e,t,a,i,n){let s,o,r,l,h;return h=n*n,s=i-a-e+t,o=e-t-s,r=a-e,l=t,s*n*h+o*h+r*n+l}function shuffle(e){let t,a=e.length;for(;0!=a;)t=Math.floor(fxrand()*a),a--,[e[a],e[t]]=[e[t],e[a]];return e}function createPalette(){var e=settings[3].val,t=Object.keys(palette),a=fxRandomIntBetween(0,t.length);0==e&&12==a&&(a=2),0==e&&0==a&&(a=2);var n=t[a];console.log("palette "+a);let s=palette[n].slice(0);for(i=0;i<s.length/3;i++){let e=[];e.push(255*s[3*i]),e.push(255*s[3*i+1]),e.push(255*s[3*i+2]);let t=rgb2lab(e);s[3*i]=t[0],s[3*i+1]=t[1],s[3*i+2]=t[2]}img=createImage(1024,64),img.loadPixels();let o=img.width/(s.length/3);curveTightness(0);for(let e=0;e<img.width;e++)for(let t=0;t<img.height;t++){map(t,0,img.height,0,1),map(e,0,img.width,0,1,!0);let a=Math.floor(e/o),i=e/o-a;i=doubleExponentialSigmoid(i,0);let n=a-1,r=a+1,l=a+2;n<0&&(n+=12),r>=12&&(r-=12),l>=12&&(l-=12);let h=lab2rgb([cubic_interpolate(s[3*n],s[3*a],s[3*r],s[3*l],i),cubic_interpolate(s[3*n+1],s[3*a+1],s[3*r+1],s[3*l+1],i),cubic_interpolate(s[3*n+2],s[3*a+2],s[3*r+2],s[3*l+2],i)]);img.set(e,t,[h[0],h[1],h[2],255])}img.updatePixels()}
↓ show full (32,454 bytes)