0x911463fa…dc5csent to0xa7d8d9ef…d270·#14,410,470·view on Etherscan
unds.br]]},g.rect.left={start:[[{x:g.bounds.tl.x,y:g.circle.tl.y},g.circle.tl],[g.bounds.tl,{x:g.bounds.tl.x,y:g.bounds.tl.y}]],end:[[g.circle.bl,{x:g.bounds.tl.x,y:g.circle.bl.y}],[{x:g.circle.bl.x,y:g.bounds.bl.y},g.bounds.bl]]},g.rect.right={start:[[g.circle.tr,{x:g.bounds.tr.x,y:g.circle.tr.y}],[{x:g.circle.tr.x,y:g.bounds.tr.y},g.bounds.tr]],end:[[{x:g.bounds.br.x,y:g.circle.br.y},g.circle.br],[g.bounds.br,{x:g.circle.tr.x,y:g.bounds.br.y}]]},g}),this.debug=!1,this.each=()=>!0,this.width=t,this.height=e,this.vh=e/100,this.vw=t/100,this.ratio=t/e,this.background="rgb(230, 225, 218)",this.hideTinyRect=!1,this.style={variations:{}},this.grid={data:null,padding:{x:0,y:0},fullflip:"both"},this.i={striped:0,piece:0,side:0},this.random=s||{float:()=>Math.random()},this.pickFromArray=t=>t[Math.floor(this.random.float()*t.length)];const i=this.canvas=document.createElement("canvas");[i.id,i.width,i.height,i.style.display]=["texture-canvas",this.width,this.height,"none"],(a||document.getElementById("root")).appendChild(i),this.ctx=i.getContext("2d"),this.background="#000000"}}function e(t,e,s){return e in t?Object.defineProperty(t,e,{value:s,enumerable:!0,configurable:!0,writable:!0}):t[e]=s,t}class s{constructor(t,e){this.cahiers=t,this.random=e,this._data=[{x:0,y:0,w:12,h:12}]}_appendClass(e,t){return null==e?null==t?null:t:null==t?[e]:t.some(t=>t===e)?t:[e,...t]}subs(a){const i=this.random,r=t=>{this._data=[...this._data.slice(1),...t]};let l=[],o=[],n=0;return this._data.slice(0).forEach((s,t)=>{s._=e=>!!s.class&&s.class.some(t=>t==e);let e="function"==typeof a?a(t,s):a;switch(e.m){case 0:r([{x:s.x,y:s.y,w:s.w,h:s.h}].map(t=>({...t,class:this._appendClass(e.class,s.class)})));break;case-1:r([]);break;case 1:l[0]=(e.x||i(.2,.8))*s.w,r([{x:s.x,y:s.y,w:l[0],h:s.h,label:"odd"},{x:s.x+l[0],y:s.y,w:s.w-l[0],h:s.h,label:"even"}].map(t=>({...t,class:this._appendClass(t.label&&e.class?e.class+"_"+t.label:e.class,s.class)})));break;case 2:o[0]=(e.y||i(.2,.8))*s.h,r([{x:s.x,y:s.y,w:s.w,h:o[0],label:"odd"},{x:s.x,y:s.y+o[0],w:s.w,h:s.h-o[0],label:"even"}].map(t=>({...t,class:this._appendClass(t.label&&e.class?e.class+"_"+t.label:e.class,s.class)})));break;case 3:case 6:case 7:case 8:l=e.x||Array(2).fill(i(.3,.8)),o=e.y||[i(.2,.8),i(.2,.8)],6===e.m&&(n=e.th||.1,l=[e.th,1-e.th],o=[1-e.th,e.th]),7===e.m&&(n=e.th||Array(4).fill(.1),l=[n[3],1-n[1]],o=[1-n[0],n[2]]),8===e.m&&(l=[e.x,e.x+e.w],o=[1-e.y,1-e.y-e.h]),r([{x:s.x,y:s.y,w:s.w*l[0],h:s.h*o[0],label:"odd"},{x:s.x,y:s.y+s.h*o[0],w:s.w*l[1],h:s.h-s.h*o[0],label:"even"},{x:s.x+s.w*l[1],y:s.y+s.h*o[1],w:s.w-s.w*l[1],h:s.h-s.h*o[1],label:"odd"},{x:s.x+s.w*l[0],y:s.y,w:s.w-s.w*l[0],h:s.h*o[1],label:"even"},{x:s.x+s.w*l[0],y:s.y+s.h*o[1],w:Math.abs(s.w*l[0]-s.w*l[1]),h:Math.abs(s.h*o[1]-s.h*o[0]),label:"middle"}].splice(0,e.fill?5:4).map(t=>({...t,class:this._appendClass(t.label&&e.class?e.class+"_"+t.label:e.class,s.class)})));break;case 4:l=e.x||[i(.1,.3),i(.1,.3)],r([{x:s.x,y:s.y,w:s.w*l[0],h:s.h,label:"odd"},{x:s.x+s.w-s.w*l[1],y:s.y,w:s.w*l[1],h:s.h,label:"odd"},{x:s.x+s.w*l[0],y:s.y,w:s.w-s.w*l[1]-s.w*l[0],h:s.h,label:"even"}].map(t=>({...t,class:this._appendClass(t.label&&e.class?e.class+"_"+t.label:e.class,s.class)})));break;case 5:o=e.y||[i(.1,.3),i(.1,.3)],r([{x:s.x,y:s.y,w:s.w,h:s.h*o[0],label:"odd"},{x:s.x,y:s.y+s.h-s.h*o[1],w:s.w,h:s.h*o[1],label:"odd"},{x:s.x,y:s.y+s.h*o[0],w:s.w,h:s.h-s.h*o[0]-s.h*o[1],label:"even"}].map(t=>({...t,class:this._appendClass(t.label&&e.class?e.class+"_"+t.label:e.class,s.class)})))}}),this}class(s,a=!0){return this._data.slice(0).forEach((t,e)=>{t._=e=>!!t.class&&t.class.some(t=>t==e);e="function"==typeof s?s(e,t):s;t.class=a?this._appendClass(e,t.class):e}),this}out(){return this._data.map((t,e)=>({...this.cahiers.grid,type:"module",...t}))}}class S{constructor({start:t=0,name:e=null}={}){this.type="ramp",this.name=e,this.ratio=1,this.length=0,this.ramps=[],this.start=t,this.time=0,this.value=0,this.rid=-1,this.accumulator=0,this.enabled=!0}static iterate(t,e){if(t.type)return e(t);Object.values(t).forEach(t=>"ramp"===t.type?e(t):Object.values(t).forEach(t=>e(t)))}static disable(t){this.iterate(t,t=>t.disable())}static enable(t){this.iterate(t,t=>t.enable())}static loop(t,e){this.iterate(t,e)}static loopRamps(t,s){this.iterate(t,t=>t.ramps.forEach((t,e)=>s(t,e)))}__quart(t){return t<.5?8*t*t*t*t:1-Math.pow(-2*t+2,4)/2}__linear(t){return t}__quint(t){return 1-Math.pow(1-t,5)}disable(){this.enabled=!1}enable(){this.enabled=!0}offset(s,e="p0"){let a=this.ramps.findIndex(t=>t.id==e);a<0||(this.ramps.forEach((t,e)=>{e>a&&(t.start+=s,t.end+=s),e==a&&(t.end+=s,t.duration+=s)}),this.length+=s)}add(t,e,{callback:s=()=>!1,easing:a="quartic",id:i=null}={}){return this.ramps.push({id:0==this.ramps.length?"p0":i,amount:t,start:this.length,end:this.length+e,duration:e,callback:s,easing:{quartic:this.__quart,linear:this.__linear,quintic:this.__quint}[a]}),this.length+=e,this}wait(t,e){return this.add(0,t,e)}a(t,e,s=()=>!1){return this.add(t,e,s)}w(t,e=()=>!1){return this.add(0,t,e)}run(){this.time=(this.time+ +this.ratio)%this.length;var t=this.ramps.findIndex(t=>this.time>=t.start&&this.time<t.end);t!=this.rid&&(this.accumulator+=this.value,0<=this.rid&&this.enabled&&this.ramps[this.rid].callback(),this.rid=t);let e=this.ramps[t];return this.value=e.easing((this.time-e.start)/e.duration)*e.amount,this.enabled?parseFloat((this.value+this.start+this.accumulator).toFixed(4)):0}}const a=(i,t=!1)=>{const{cahiers:r,cycles:e,hash:l}=i;r.debug=e.debug=i.debug;const o={colormode:21,scrollmode:"tri3N",reload:t,offset:[0,0],transistion:-1},n=(t=0,e=1)=>i.random.float()*(e-t)+t,a=(t=0,e=1)=>Math.floor(i.random.float()*(e-t)+.5+t),d=(t,e=0,s=1)=>(l[t]*(s-e)+e).toFixed(4),c=(t,e=0,s=1)=>Math.floor(l[t]*(s-e)+.5+e),h=Math.PI,u=(t,e)=>r.afh(e,t.m.h),p=(t,e)=>h-r.afh(.5*t.m.h+e,t.m.h),m=(t,e)=>r.afw(e,t.m.w),b=(t,e)=>h-r.afw(.5*t.m.w+e,t.m.w),y=(t=50,e=255)=>"rgb("+n(t,e)+",0,0)",f=(t=50,e=255)=>"rgb(0,"+n(t,e)+",0)",[g,x,w]=["#ff0000","#00ff00","#000000"],[_,v]=["#880000","#005500"],k={alt:{topbottom:(t=[c(10),c(12)])=>({top:{start:t[0],end:1-t[0]},bottom:{start:t[1],end:1-t[1]},left:{start:0,end:0},right:{start:0,end:0}}),leftright:(t=[c(10),c(12)])=>({top:{start:0,end:0},bottom:{start:0,end:0},left:{start:t[0],end:1-t[0]},right:{start:t[1],end:1-t[1]}})},full:{topbottom:{top:{start:1,end:1},bottom:{start:1,end:1},left:{start:0,end:0},right:{start:0,end:0}},leftright:{top:{start:0,end:0},bottom:{start:0,end:0},left:{start:1,end:1},right:{start:1,end:1}}},fit:{top:{start:0,end:0},bottom:{start:0,end:0},left:{start:0,end:0},right:{start:0,end:0}},loop:(t=c(10))=>({top:{start:t,end:1-t},bottom:{start:1-t,end:t},left:{start:1-t,end:t},right:{start:t,end:1-t}})},E=[[1,4],[2,3]][c(19)],T=new s(r,n),R={reset:{padding:()=>!1,gradient:()=>!1,stripes:()=>!1},thinlines:{angle:2.5,ext:k.full.leftright,stripes:()=>!1,padding:()=>!1,palette:()=>(r.i.side-1==E[0]||r.i.side-1==E[1]?f:y)(100)}};if(r.grid.fullflip=!!c(27)&&"y",r.grid.padding=i.static?{x:.015,y:.015}:{x:.025,y:.025},"layers"===i.style&&(o.scrollmode=.3<d(28)?"tri2I":"tri3N",R.hoist={name:"hoist",ch:{variations:{color:()=>x,spacing:()=>8}},style:t=>({rows:{...R.reset,background:.3<n()&&"#111100",angle:.75<c(18)?.1:c(10)?3:2.8,palette:()=>[f(180,230),_,y(100,230),!1][r.i.side-1],ext:k.full.topbottom},grad:{gradient:()=>2==r.i.side&&"#220000"},rows_even:{angle:.75<c(18)?3:.1},slices_odd:{...R.thinlines},stripes_odd:{stripes:()=>.6<n()&&1==r.i.side}})},R.neon={name:"neon",ch:R.hoist.ch,style:t=>({rows:{...R.reset,angle:u(t,r.i.piece%2?.16:.32),palette:()=>[[x,_,!1,!1],["#005500",g,!1,!1]][r.i.piece%2][r.i.side-1],ext:k.full.topbottom,background:.8<n()?.5<n()?y():x:(r.i.piece%2==1?y:f)(60,70)}})},R.cross={name:"cross2",ch:{variations:{color:()=>g,spacing:()=>[5,9][a()]}},style:t=>({rows:{...R.reset,ext:k.full.topbottom,angle:b(t,.08),padding:t=>!1,palette:()=>[g,x,_,_][r.i.side-1]},slices_odd:{...R.thinlines},stripes_even:{},rows_even:{angle:p(t,.08)},grad:{stripes:()=>4==r.i.side}})},r.variants=R[i.substyle],r.grid.data=T.class("rows").subs({m:5,y:[[n(.6,.7),n(.1,.2)],[n(.1,.25),n(.1,.25)],[n(.1,.2),n(.6,.7)]][a(0,2)],class:"rows"}).subs((t,e)=>({m:1,x:[n(.6,.85),n(.15,.4)]["odd"==e.label?c(20):1-c(20)]})).subs(t=>({m:4,x:[n(.03,.1),n(.03,.05)],class:"slices"})).subs((t,e)=>e._("slices_odd")&&.5<n()?{m:[2,5][a()]}:{m:0}).subs((t,e)=>e._("slices_even")&&6<e.w?{m:1,x:.2,class:"stripes"}:{m:0}).subs((t,e)=>e._("slices_even")&&.4<n()?{m:2,y:.1}:{m:0}).class((t,e)=>6<e.w?"grad":null).out()),"lanes"===i.style){o.scrollmode=c(20)?"tri3N":"tri3I",o.transistion=-1,R.lanes={name:"lanes",ch:{grid:{padding:i.static?{x:.015,y:0}:{x:.025,y:0}},variations:{color:()=>.5<n()?g:v}},style:t=>({base:{...R.reset,palette:()=>(r.i.side-1==E[0]||r.i.side-1==E[1]?f:y)(100)},base_even:{angle:3.1,ext:k.full.leftright,background:"#002200"},cols_odd:{...R.thinlines},stripes:{angle:h,background:[x,!1][a()],stripes:()=>!0},base_odd:{angle:1.8,...c(10)&&{palette:()=>_,background:g},...!c(10)&&{palette:()=>[g,x][c(22)],background:"#660000"},ext:k.full.topbottom,padding:()=>!1},...s.isDark&&{base_even:{angle:p(t,.06),ext:k.full.leftright,palette:()=>.3<n()?"#112200":"#660000",background:y(120,240)},base_odd:{angle:1.8,ext:k.full.leftright,palette:()=>c(28)?"#660000":x,background:c(28)?x:"#660000"}}})},r.variants=R[i.substyle],r.grid={...r.grid,...r.variants.ch.grid};let s={};s.isDark=.7<d(18),s.columns=n()>(s.isDark?.75:.6)?[0,0]:.5<n()?[0,n(.05,.2)]:[n(.05,.2),0],s.hasBorder=.3<d(28);let t=T.class("base");t.subs({m:1,x:.5}).subs(t=>({m:4,x:t%2?s.columns:[s.columns[1],s.columns[0]],class:"base"})).subs((t,e)=>e._("base_even")?s.hasBorder?{m:4,x:[.24/e.w,.24/e.w],class:"cols"}:{m:0,class:"cols_even"}:{m:0}).subs({m:5}).subs((t,e)=>e._("cols_even")?{m:5,class:"rows"}:{m:2,y:n(.7,.9)}).class((t,e)=>e._("rows_odd")&&e.h<1?"stripes":null),r.grid.data=t.out()}if("tiles"===i.style){o.scrollmode=c(20)?"tri2N":"tri3N",R.tiles={name:"tiles",ch:{variations:{color:()=>c(11)?x:g,spacing:()=>6}},style:t=>({base:{...R.reset,ext:k.full.leftright,angle:h},type_0:{palette:()=>_},type_1:{palette:()=>["#00cc00","#ff0000"][r.i.piece%2==c(18)?1:0]},divided_odd:{palette:()=>"#660000"},divided_even:{palette:()=>c(16)?g:"#00cc00"},type_2:{palette:()=>["#a40000","#00a400"][r.i.piece%2==c(18)?1:0]},type_3:{palette:()=>"#660000"},stripes_odd:{stripes:()=>!0,background:_}