0x20ec68ba…9635sent to0xbd11994a…7699·#20,716,203·view on Etherscan
jb_mass_main2const placeholderSalePrice=25e16;const placeholderRoyaltyReceived=5e14;{var MersenneTwister=function(e){if(e==undefined){e=(new Date).getTime()}this.N=624;this.M=397;this.MATRIX_A=2567483615;this.UPPER_MASK=2147483648;this.LOWER_MASK=2147483647;this.mt=new Array(this.N);this.mti=this.N+1;if(e.constructor==Array){this.init_by_array(e,e.length)}else{this.init_seed(e)}};MersenneTwister.prototype.init_seed=function(e){this.mt[0]=e>>>0;for(this.mti=1;this.mti<this.N;this.mti++){var e=this.mt[this.mti-1]^this.mt[this.mti-1]>>>30;this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti;this.mt[this.mti]>>>=0}};MersenneTwister.prototype.init_by_array=function(e,t){var a,i,n;this.init_seed(19650218);a=1;i=0;n=this.N>t?this.N:t;for(;n;n--){var r=this.mt[a-1]^this.mt[a-1]>>>30;this.mt[a]=(this.mt[a]^(((r&4294901760)>>>16)*1664525<<16)+(r&65535)*1664525)+e[i]+i;this.mt[a]>>>=0;a++;i++;if(a>=this.N){this.mt[0]=this.mt[this.N-1];a=1}if(i>=t)i=0}for(n=this.N-1;n;n--){var r=this.mt[a-1]^this.mt[a-1]>>>30;this.mt[a]=(this.mt[a]^(((r&4294901760)>>>16)*1566083941<<16)+(r&65535)*1566083941)-a;this.mt[a]>>>=0;a++;if(a>=this.N){this.mt[0]=this.mt[this.N-1];a=1}}this.mt[0]=2147483648};MersenneTwister.prototype.random_int=function(){var e;var t=new Array(0,this.MATRIX_A);if(this.mti>=this.N){var a;if(this.mti==this.N+1)this.init_seed(5489);for(a=0;a<this.N-this.M;a++){e=this.mt[a]&this.UPPER_MASK|this.mt[a+1]&this.LOWER_MASK;this.mt[a]=this.mt[a+this.M]^e>>>1^t[e&1]}for(;a<this.N-1;a++){e=this.mt[a]&this.UPPER_MASK|this.mt[a+1]&this.LOWER_MASK;this.mt[a]=this.mt[a+(this.M-this.N)]^e>>>1^t[e&1]}e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK;this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^t[e&1];this.mti=0}e=this.mt[this.mti++];e^=e>>>11;e^=e<<7&2636928640;e^=e<<15&4022730752;e^=e>>>18;return e>>>0};MersenneTwister.prototype.random_int31=function(){return this.random_int()>>>1};MersenneTwister.prototype.random_incl=function(){return this.random_int()*(1/4294967295)};MersenneTwister.prototype.random=function(){return this.random_int()*(1/4294967296)};MersenneTwister.prototype.random_excl=function(){return(this.random_int()+.5)*(1/4294967296)};MersenneTwister.prototype.random_long=function(){var e=this.random_int()>>>5,t=this.random_int()>>>6;return(e*67108864+t)*(1/9007199254740992)}}(function(e){var t=e.noise={};function a(e,t,a){this.x=e;this.y=t;this.z=a}a.prototype.dot2=function(e,t){return this.x*e+this.y*t};a.prototype.dot3=function(e,t,a){return this.x*e+this.y*t+this.z*a};var i=[new a(1,1,0),new a(-1,1,0),new a(1,-1,0),new a(-1,-1,0),new a(1,0,1),new a(-1,0,1),new a(1,0,-1),new a(-1,0,-1),new a(0,1,1),new a(0,-1,1),new a(0,1,-1),new a(0,-1,-1)];var n=[151,160,137,91,90,15,131,13,201,95,96,53,194,233,7,225,140,36,103,30,69,142,8,99,37,240,21,10,23,190,6,148,247,120,234,75,0,26,197,62,94,252,219,203,117,35,11,32,57,177,33,88,237,149,56,87,174,20,125,136,171,168,68,175,74,165,71,134,139,48,27,166,77,146,158,231,83,111,229,122,60,211,133,230,220,105,92,41,55,46,245,40,244,102,143,54,65,25,63,161,1,216,80,73,209,76,132,187,208,89,18,169,200,196,135,130,116,188,159,86,164,100,109,198,173,186,3,64,52,217,226,250,124,123,5,202,38,147,118,126,255,82,85,212,207,206,59,227,47,16,58,17,182,189,28,42,223,183,170,213,119,248,152,2,44,154,163,70,221,153,101,155,167,43,172,9,129,22,39,253,19,98,108,110,79,113,224,232,178,185,112,104,218,246,97,228,251,34,242,193,238,210,144,12,191,179,162,241,81,51,145,235,249,14,239,107,49,192,214,31,181,199,106,157,184,84,204,176,115,121,50,45,127,4,150,254,138,236,205,93,222,114,67,29,24,72,243,141,128,195,78,66,215,61,156,180];var j=new Array(512);var B=new Array(512);t.seed=function(e){if(e>0&&e<1){e*=65536}e=Math.floor(e);if(e<256){e|=e<<8}for(var t=0;t<256;t++){var a;if(t&1){a=n[t]^e&255}else{a=n[t]^e>>8&255}j[t]=j[t+256]=a;B[t]=B[t+256]=i[a%12]}};t.seed(0);var R=.5*(Math.sqrt(3)-1);var D=(3-Math.sqrt(3))/6;var I=1/3;var L=1/6;t.simplex2=function(e,t){var a,i,n;var r=(e+t)*R;var o=Math.floor(e+r);var s=Math.floor(t+r);var l=(o+s)*D;var c=e-o+l;var d=t-s+l;var u,p;if(c>d){u=1;p=0}else{u=0;p=1}var f=c-u+D;var m=d-p+D;var h=c-1+2*D;var E=d-1+2*D;o&=255;s&=255;var g=B[o+j[s]];var S=B[o+u+j[s+p]];var T=B[o+1+j[s+1]];var x=.5-c*c-d*d;if(x<0){a=0}else{x*=x;a=x*x*g.dot2(c,d)}var v=.5-f*f-m*m;if(v<0){i=0}else{v*=v;i=v*v*S.dot2(f,m)}var A=.5-h*h-E*E;if(A<0){n=0}else{A*=A;n=A*A*T.dot2(h,E)}return 70*(a+i+n)};t.simplex3=function(e,t,a){var i,n,r,o;var s=(e+t+a)*I;var l=Math.floor(e+s);var c=Math.floor(t+s);var d=Math.floor(a+s);var u=(l+c+d)*L;var p=e-l+u;var f=t-c+u;var m=a-d+u;var h,E,g;var S,T,x;if(p>=f){if(f>=m){h=1;E=0;g=0;S=1;T=1;x=0}else if(p>=m){h=1;E=0;g=0;S=1;T=0;x=1}else{h=0;E=0;g=1;S=1;T=0;x=1}}else{if(f<m){h=0;E=0;g=1;S=0;T=1;x=1}else if(p<m){h=0;E=1;g=0;S=0;T=1;x=1}else{h=0;E=1;g=0;S=1;T=1;x=0}}var v=p-h+L;var A=f-E+L;var R=m-g+L;var D=p-S+2*L;var N=f-T+2*L;var b=m-x+2*L;var C=p-1+3*L;var y=f-1+3*L;var w=m-1+3*L;l&=255;c&=255;d&=255;var P=B[l+j[c+j[d]]];var M=B[l+h+j[c+E+j[d+g]]];var F=B[l+S+j[c+T+j[d+x]]];var _=B[l+1+j[c+1+j[d+1]]];var O=.6-p*p-f*f-m*m;if(O<0){i=0}else{O*=O;i=O*O*P.dot3(p,f,m)}var U=.6-v*v-A*A-R*R;if(U<0){n=0}else{U*=U;n=U*U*M.dot3(v,A,R)}var k=.6-D*D-N*N-b*b;if(k<0){r=0}else{k*=k;r=k*k*F.dot3(D,N,b)}var H=.6-C*C-y*y-w*w;if(H<0){o=0}else{H*=H;o=H*H*_.dot3(C,y,w)}return 32*(i+n+r+o)};function g(e){return e*e*e*(e*(e*6-15)+10)}function S(e,t,a){return(1-a)*e+a*t}t.perlin2=function(e,t){var a=Math.floor(e),i=Math.floor(t);e=e-a;t=t-i;a=a&255;i=i&255;var n=B[a+j[i]].dot2(e,t);var r=B[a+j[i+1]].dot2(e,t-1);var o=B[a+1+j[i]].dot2(e-1,t);var s=B[a+1+j[i+1]].dot2(e-1,t-1);var l=g(e);return S(S(n,o,l),S(r,s,l),g(t))};t.perlin3=function(e,t,a){var i=Math.floor(e),n=Math.floor(t),r=Math.floor(a);e=e-i;t=t-n;a=a-r;i=i&255;n=n&255;r=r&255;var o=B[i+j[n+j[r]]].dot3(e,t,a);var s=B[i+j[n+j[r+1]]].dot3(e,t,a-1);var l=B[i+j[n+1+j[r]]].dot3(e,t-1,a);var c=B[i+j[n+1+j[r+1]]].dot3(e,t-1,a-1);var d=B[i+1+j[n+j[r]]].dot3(e-1,t,a);var u=B[i+1+j[n+j[r+1]]].dot3(e-1,t,a-1);var p=B[i+1+j[n+1+j[r]]].dot3(e-1,t-1,a);var f=B[i+1+j[n+1+j[r+1]]].dot3(e-1,t-1,a-1);var m=g(e);var h=g(t);var E=g(a);return S(S(S(o,d,m),S(s,u,m),E),S(S(l,p,m),S(c,f,m),E),h)}})(this);function getTier(e,t,a=undefined){if(e.length==0){return 0}if(e.length==1){e=[t].concat(e)}let i=e.sort();let n=0;for(let e=1;e<i.length;e++){n+=Math.abs(i[e]-i[e-1])}let=avgGap=n/(i.length-1);let r=t-i[i.length-1];let o=r/avgGap;let s=Math.ceil(3-o);if(a!=undefined){if(s<0){s=0}else if(a<0){s*=-1}else if(a==0){s=0}}if(s==-4){s=-2}else if(s==-5){s=-1}else if(s<-5){s=0}if(s==-0){s=0}return s}function calculateTiers(e){if(!e){return}let t={royalty:[[-.4,-.3,-.1,0,.1,.3,.6],[-3,-2,-1,0,1,2,3]],contract_activity:[[-1,-.5,-.25,0,.25,.5,.75],[-3,-2,-1,0,1,2,3]],clustering_mode:[[-1,-.5,-.25,0,.25,.5,.75],[-3,-2,-1,0,1,2,3]],approvals:[[-1,-.5,-.25,0,.25,.5,.75],[-3,-2,-1,0,1,2,3]]};let i=(new Date).getTime()/1e3;let n=e[1].filter((e,t)=>e>0);let r=e[3].filter((e,t)=>e>0);let a=e[5];let o=e[6];let s=a.concat(o);let l=s.filter((e,t)=>t%2===0&&e>0);let c=s.filter((e,t)=>t%2!==0&&e>0);r=[...new Set(r)];n=[...new Set(n)];l=[...new Set(l)];r.sort();n.sort();l.sort();if(SCENE.data.memory==undefined){try{let a=i-memoryLookbackPeriod;SCENE.data.memory=r.filter((e,t)=>e>=a).length+n.filter((e,t)=>e>=a).length+l.filter((e,t)=>e>=a).length;SCENE.data.memory=Math.min(SCENE.data.memory,11)}catch(R){}}if(resetTimestamp){r=r.filter(e=>e>resetTimestamp);n=n.filter(e=>e>resetTimestamp);l=l.filter(e=>e>resetTimestamp)}let d=Array.from(n);let u=Array.from(l);let p=Array.from(r);let f=Array.from(c);if(r.length<=1){p=[contractMintTimestamp].concat(r)}if(n.length<=1){d=[contractMintTimestamp].concat(n)}if(l.length<=1){u=[contractMintTimestamp].concat(l)}if(c.length<=1){f=[placeholderRoyaltyReceived].concat(c)}r=r.filter(e=>l.indexOf(e)==-1);try{r=r.slice(-4)}catch{}try{n=n.slice(-4)}catch{}try{l=l.slice(-4)}catch{}if(resetTimestamp){r=r.filter(e=>e>resetTimestamp);n=n.filter(e=>e>resetTimestamp);l=l.filter(e=>e>resetTimestamp)}let m=0;if(f.length>1){m=f[f.length-1]/(f.slice(0,-1).reduce((e,t)=>e+t)/(f.length-1))-1}let h=getTier(r,i);let E=getTier(n,i);let g=getTier(r.concat(n).sort().slice(-4),i);let S=getTier(l,i,m);let T=S!=0;let x=g!=0;let v=h!=0;let A=E!=0;if(SCENE.data.contract.tiers&&Object.keys(SCENE.data.contract.tiers).length>0){T=SCENE.data.contract.tiers.royalty_received_tier.value!=S;x=SCENE.data.contract.tiers.contract_activity_tier.value!=g;v=SCENE.data.contract.tiers.sends_tier.value!=h;A=SCENE.data.contract.tiers.approvals_tier.value!=E}SCENE.data.contract.tiers={royalty_received_tier:{value:S,changed:T},contract_activity_tier:{value:g,changed:x},sends_tier:{value:h,changed:v},approvals_tier:{value:E,changed:A}}}function calculateContractDataUpdates(){if(!SCENE.data.contractUpdates){SCENE.data.contractUpdates={}}SCENE.data.firstContractDataUpdate=true;if(!SCENE.data.contractPrev||!(SCENE.data.contractPrev.length||SCENE.data.contractPrev.size)){SCENE.data.contractUpdates.approvalCount=true;SCENE.data.contractUpdates.transferCount=true;SCENE.data.contractUpdates.holderCount=true;SCENE.data.contractUpdates.royalty=true;return}SCENE.data.firstContractDataUpdate=false;SCENE.data.contractUpdates.approvalCount=SCENE.data.contractPrev[0][0]!=SCENE.data.contract[0][0];SCENE.data.contractUpdates.transferCount=SCENE.data.contractPrev[2][0]!=SCENE.data.contract[2][0];SCENE.data.contractUpdates.holderCount=SCENE.data.contractPrev[4][0]!=SCENE.data.contract[4][0];try{SCENE.data.contractUpdates.royalty=SCENE.data.contractPrev[5].slice(SCENE.data.contractPrev[5].length-2,SCENE.data.contractPrev[5].length-1).pop()!=SCENE.data.contract[5].slice(SCENE.data.contract[5].length-2,SCENE.data.contract[5].length-1).pop()||SCENE.data.contractPrev[6].slice(SCENE.data.contractPrev[6].length-2,SCENE.data.contractPrev[6].length-1).pop()!=SCENE.data.contract[5].slice(SCENE.data.contract[6].length-2,SCENE.data.contract[6].length-1).pop()}catch{}}function tierToValue(e,t){let a=[-3,-2,-1,0,1,2,3,4];let i=a.indexOf(t);return e[i]}var randomNumberGenerator=new MersenneTwister((new Date).getTime());var randomNumberGeneratorSeeded=new MersenneTwister(hashString(`${tokenHash}`));function sizeOfMapping(e){return Object.keys(e).length}function makeGradientPlane(e,t,a,i,n){const r=document.createElement('canvas');r.width=256;r.height=256;const o=r.getContext('2d');if(a=='linear'){var s=o.createLinearGradient(0,0,0,r.height)}else if(a=='radial'){var s=o.createRadialGradient(r.width/2,r.height/2,0,r.width/2,r.height/2,r.width/2)}for(let e of i){s.addColorStop(e[0],e[1])}o.fillStyle=s;o.fillRect(0,0,r.width,r.height);const l=new THREE.CanvasTexture(r);const c=new THREE.PlaneGeometry(e,t);const d=new THREE.MeshBasicMaterial({map:l,fog:n});const u=new THREE.Mesh(c,d);return u}function makePerlinTexture(e,t,i,n,r,o,s,l,c="perlin3"){const a=document.createElement('canvas');a.setAttribute("id","canvas1");a.width=e;a.height=t;const d=a.getContext('2d');if(s){var u=document.createElement('canvas');u.width=e;u.height=t;var p=u.getContext('2d')}noise.seed(Math.random());let f=0;for(var m=0;m<a.width;m++){for(var h=0;h<a.height;h++){f++;if(c=='perlin3'){var E=noise.perlin3(m/i,h/n,m^h%150);var g=Math.abs(E*o)*256+r}else if(c=='simplex3'){var E=noise.simplex3(m/i,h/n,m^h%150);var g=Math.abs(E*o)*256+r}else if(c=='simple'){var g=Math.random()*255*o+r}let e=g;let t=g;let a=g;d.fillStyle="rgb("+e+","+t+","+a+")";d.fillRect(m,h,1,1);if(s){a=g/l;p.fillStyle="rgb("+a+","+a+","+a+")";p.fillRect(m,h,1,1)}}}const S=new THREE.CanvasTexture(a);S.wrapS=S.wrapT=THREE.RepeatWrapping;if(s){const T=new THREE.CanvasTexture(u);T.wrapS=T.wrapT=THREE.RepeatWrapping;return[S,T]}else{return S}}function makeLight(e,t=true){if(e.type=="point"){e.light=new THREE.PointLight(e.color,e.power,e.size);if(t){e.light.position.set(e.positionX,e.positionY,e.positionZ)}if(enableShadows){e.light.castShadow=true;e.light.shadow.mapSize.width=512;e.light.shadow.mapSize.height=512;e.light.shadow.camera.near=.5;e.light.shadow.camera.far=500;e.light.shadow.normalBias=.5}}else if(e.type=="hemisphere"){e.light=new THREE.HemisphereLight(e.color1,e.color2,e.power)}else if(e.type=="ambient"){e.light=new THREE.AmbientLight(e.color)}else if(e.type=="directional"){e.light=new THREE.DirectionalLight(e.color,e.power);e.light.position.set(e.positionX,e.positionY,e.positionZ);e.light.rotation.set(e.rotationX,e.rotationY,e.rotationZ);if(enableShadows){e.light.castShadow=true;e.light.shadow.mapSize.width=512;e.light.shadow.mapSize.height=512;e.light.shadow.camera.near=.5;e.light.shadow.camera.far=500;e.light.shadow.normalBias=.5}}}function animateAxisNegativeSpace(t,e){if(t.userData==undefined){t.userData={};t.userData.negativeSpaceTargetX=rand(t.negativeSpaceAnimationX[0],t.negativeSpaceAnimationX[1],t.negativeSpaceAnimationX[2]);t.userData.negativeSpaceTargetY=rand(t.negativeSpaceAnimationY[0],t.negativeSpaceAnimationY[1],t.negativeSpaceAnimationY[2]);t.userData.negativeSpaceCurrentX=0;t.userData.negativeSpaceCurrentY=0}let a=0;let i=0;let n=t.negativeSpaceAnimationSpeedX*e;let r=t.negativeSpaceAnimationSpeedY*e;if(t.userData.negativeSpaceCurrentX<t.userData.negativeSpaceTargetX){a=n;t.userData.negativeSpaceCurrentX+=n}else if(t.userData.negativeSpaceCurrentX>t.userData.negativeSpaceTargetX){a=-n;t.userData.negativeSpaceCurrentX-=n}if(t.userData.negativeSpaceCurrentY<t.userData.negativeSpaceTargetY){i=r;t.userData.negativeSpaceCurrentY+=r}else if(t.userData.negativeSpaceCurrentY>t.userData.negativeSpaceTargetY){i=-r;t.userData.negativeSpaceCurrentY-=r}if(t.userData.negativeSpaceTargetX>=0&&t.userData.negativeSpaceCurrentX>t.userData.negativeSpaceTargetX||t.userData.negativeSpaceTargetX<=0&&t.userData.negativeSpaceCurrentX<t.userData.negativeSpaceTargetX){t.userData.negativeSpaceTargetX=rand(t.negativeSpaceAnimationX[0],t.negativeSpaceAnimationX[1],t.negativeSpaceAnimationX[2])}if(t.userData.negativeSpaceTargetY>=0&&t.userData.negativeSpaceCurrentY>t.userData.negativeSpaceTargetY||t.userData.negativeSpaceTargetY<=0&&t.userData.negativeSpaceCurrentY<t.userData.negativeSpaceTargetY){t.userData.negativeSpaceTargetY=rand(t.negativeSpaceAnimationY[0],t.negativeSpaceAnimationX[1],t.negativeSpaceAnimationY[2])}if(a!=0||i!=0){for(let e in t.clipPlanes){t.clipPlanes[e].translate(new THREE.Vector3(a,i,0))}}}function makeCamera(){if(cameraType=='perspective'){var e=new THREE.PerspectiveCamera(fieldOfView,cameraAspect,cameraNear,cameraFar);e.aspect=rendererWidth/rendererHeight}else{var e=new THREE.OrthographicCamera(rendererWidth/-orthographicCameraScale,rendererWidth/orthographicCameraScale,rendererHeight/orthographicCameraScale,rendererHeight/-orthographicCameraScale,cameraNear,cameraFar)}cameraZ=randFromRange(cameraZ);e.position.x=cameraX;e.position.y=cameraY;e.position.z=cameraZ;e.updateProjectionMatrix();e.userData.animationQueue=[];e.userData.originalFocalLength=e.getFocalLength();return e}function makeScene(){const e=new THREE.Scene;e.fog=new THREE.Fog(fogColor,fogNear,fogFar);e.fog.userData={animationQueue:[]};e.fog.enabled=enableFog;if(!enableFog){e.fog.near=150;e.fog.far=155;e.fog.enabled=false}e.background=new THREE.Color(worldGradientColors[worldGradientColors.length-1][1]);return e}function makeRenderer(){const e=new THREE.WebGLRenderer({antialias:rendererAntialias,premultipliedAlpha:true});e.setSize(rendererWidth,rendererHeight,false);e.setPixelRatio(window.devicePixelRatio);e.toneMapping=THREE[rendererToneMapping];e.localClippingEnabled=true;if(enableShadows){e.shadowMap.enabled=true;e.shadowMap.type=THREE.PCFShadowMap}document.body.appendChild(e.domElement);return e}function loadOBJ(e,t,a,i,n){const r=new THREE.OBJLoader;object=r.parse(atob(e));object.traverse(function(e){e.material=t});object.scale.set(a[0],a[1],a[2]);object.position.set(i[0],i[1],i[2]);object.rotation.set(THREE.MathUtils.degToRad(n[0]),THREE.MathUtils.degToRad(n[1]),THREE.MathUtils.degToRad(n[2]));return object}function addPivotToAxis(e,t,a,i=undefined,n=undefined){let r=new THREE.Object3D;r.userData.name=a;r.userData.shapeType=t.userData.shapeType;var o=rand(e.axisX[0],e.axisX[1],e.axisX[2]);if(i){var s=randFromRange(i)}else{var s=rand(e.axisY[0],e.axisY[1],e.axisY[2])}var l=rand(e.axisZ[0],e.axisZ[1],e.axisZ[2]);r.userData.rotationSpeed=rand(e.coneRotationSpeed[0],e.coneRotationSpeed[1],e.coneRotationSpeed[2]);r.userData.originalRotationSpeed=r.userData.rotationSpeed;r.rotation.z=THREE.MathUtils.degToRad(rand(e.axisAngle[0],e.axisAngle[1],e.axisAngle[2]));r.userData.originalPosition=[o,s,l];r.position.set(o,s,l);r.add(t);e.pivots.push(r);e.mainPivot.add(r);if(n==undefined){return}if(r.userData.name.includes("terrain")){n*=terrainsAppearAndDisappearMultiplier}if(r.userData.name.includes("knot")){n*=knotsAppearAndDisappearMultiplier}r.children[0].userData.originalScale=JSON.parse(JSON.stringify(r.children[0].scale));r.userData.growUp=n;r.children[0].scale.set(0,0,0)}function addConeToAxis(e,t,a,i=undefined,n=undefined){let r=rand(a.radius[0],a.radius[1],a.radius[2]);let o=rand(a.height[0],a.height[1],a.height[2]);let s=rand(a.scale[0],a.scale[1],a.scale[2]);let l=s+rand(a.scaleX[0],a.scaleX[1],a.scaleX[2]);let c=s+rand(a.scaleY[0],a.scaleY[1],a.scaleY[2]);let d=s+rand(a.scaleZ[0],a.scaleZ[1],a.scaleZ[2]);let u=rand(a.positionX[0],a.positionX[1],a.positionX[2]);let p=rand(a.positionY[0],a.positionY[1],a.positionY[2]);let f=rand(a.positionZ[0],a.positionZ[1],a.positionZ[2]);let m=rand(a.rotationX[0],a.rotationX[1],a.rotationX[2]);let h=rand(a.rotationY[0],a.rotationY[1],a.rotationY[2]);let E=rand(a.rotationZ[0],a.rotationZ[1],a.rotationZ[2]);let g=a.numberOfRadialSegments;let S=a.numberOfHeightSegments;let T=a.openEnded;if(e.ellipseMode){u*=Math.pow(20-Math.abs(p),e.ellipseModePowerOf)*e.ellipseModeMultiplier;f*=Math.pow(20-Math.abs(p),e.ellipseModePowerOf)*e.ellipseModeMultiplier}if(e.enableScaleEllipseMode){l*=Math.pow(e.scaleEllipseModeBaseX-Math.abs(p),e.scaleEllipseModePowerOfX)*e.scaleEllipseModeMultiplierX;c*=Math.pow(e.scaleEllipseModeBaseY-Math.abs(p),e.scaleEllipseModePowerOfY)*e.scaleEllipseModeMultiplierY;d*=Math.pow(e.scaleEllipseModeBaseZ-Math.abs(p),e.scaleEllipseModePowerOfZ)*e.scaleEllipseModeMultiplierZ}let x={};for(let e=0;e<100;e++){let e=a.types[randS(0,a.types.length-1,1)];if(randS(0,1,.1)>1-e.probability){x=e;break}}try{var v=materialTemplates[a.material].clone()}catch(R){var v=materialTemplates[pick(a.material)[1]].clone()}if(a.wireframeProbability&&randS(0,1,.01)>1-a.wireframeProbability){v.wireframe=true;g=5;S=5;T=true}else{v.wireframe=false}if(e.clipPlanes&&e.clipPlanes.length>0){v.clippingPlanes=e.clipPlanes}let A=makeCone(v,r,o,g,S,T,[l,c,d],[u,p,f],[m,h,m],x);if(i){let e=Math.max(l,c,d);let t=e/100*i;t=Math.max(t,1e-7);A.scale.set(0,0,0);A.userData.animationQueue=[makeAnimationForQueue("scale",0,e,e,t)]}if(e.enableNegativeSpace){A.material.clippingPlanes=e.clipPlanes;A.material.clipIntersection=true}A.userData.name=t;A.userData.shapeType=n;addPivotToAxis(e,A,t)}function animateWorldPlane(){if(!SCENE.worldPlane.userData.animationQueue){if(SCENE.worldPlane.scale.x>1+SCENE.worldPlane.userData.scaleAmount&&SCENE.worldPlane.userData.scaleFactor>0||SCENE.worldPlane.scale.x<1&&SCENE.worldPlane.userData.scaleFactor<0){SCENE.worldPlane.userData.scaleFactor*=-1}SCENE.worldPlane.scale.set(SCENE.worldPlane.scale.x+SCENE.worldPlane.userData.scaleFactor,SCENE.worldPlane.scale.y+SCENE.worldPlane.userData.scaleFactor,1)}}function makeWorldPlane(){worldPlane=makeGradientPlane(rendererWidth*3,rendererWidth*3,worldGradientType,worldGradientColors,false);worldPlane.userData.name="worldPlane";worldPlane.position.z=-rendererWidth;worldPlane.z=-100;worldPlane.userData.scaleFactor=rand(worldGradientAnimationSpeed[0],worldGradientAnimationSpeed[1],worldGradientAnimationSpeed[2]);worldPlane.userData.scaleAmount=rand(worldGradientAnimationScale[0],worldGradientAnimationScale[1],worldGradientAnimationScale[2]);worldPlane.userData.animationQueue=[];SCENE.worldPlane=worldPlane;SCENE.scene.add(SCENE.worldPlane)}function addExtraShapeToAxis(e,t,a,o,i=undefined){let n=a;let r=randFromRange(o.scale);let s=r+randFromRange(o.scaleX);let l=r+randFromRange(o.scaleY);let c=r+randFromRange(o.scaleZ);let d=randFromRangeS2(o.positionX);let u=randFromRangeS2(o.positionY);let p=randFromRangeS2(o.positionZ);let f=randFromRange(o.rotationX);let m=randFromRange(o.rotationY);let h=randFromRange(o.rotationZ);if(o.material){if(!materialTemplates[o.material]){}else{var E=materialTemplates[o.material].clone()}}else{var E=e.coneMaterial.clone();if(e.coneMaterial.map){if(o.textureScale){E.map.repeat.x=o.textureScale[0];E.map.repeat.y=o.textureScale[1]}if(o.textureRotation){E.map.rotation=THREE.MathUtils.degToRad(o.textureRotation);E.map.rotation=true}}if(o.color){E.color=new THREE.Color(o.color);E.color.needsUpdate=true}}if(e.clipPlanes&&e.clipPlanes.length>0){E.clippingPlanes=e.clipPlanes}if(n=="flower1"){E.map=undefined;E.bumpMap=undefined;let t=E.clone();if(SCENE.palette.special){E.color=new THREE.Color(SCENE.palette.special.flower[0]);t.color=new THREE.Color(SCENE.palette.special.flower[1])}else{let e=pickS2(SCENE.palette.colors);E.color=new THREE.Color(e[0]);t.color=new THREE.Color(e[1])}E=[E,t]}let g=undefined;if(n=="terrain"){let e=randFromRange(o.heightScale);g=makeTerrain(E,o.worldSizeX,o.worldSizeY,e,[s,l,c],[d,u,p],[f,m,h])}if(n=="smallterrain"){let e=randFromRange(o.heightScale);g=makeTerrain(E,o.worldSizeX,o.worldSizeY,e,[s,l,c],[d,u,p],[f,m,h],1,o.bumpsRange,o.depth)}else if(n=="cloud"){let e=randFromRange(o.sizeX);let t=randFromRange(o.sizeY);let a=randFromRange(o.sizeZ);let i=randFromRange(o.nSpheres);g=makeCloud(E,e,t,a,i,o.spheresScale,[s,l,c],[d,u,p],[f,m,h])}else if(n=="frame"){let e=randFromRange(o.height);let t=randFromRange(o.width);let a=randFromRange(o.thickness);let i=randFromRange(o.depth);g=makeFrame(E,e,t,a,i,[s,l,c],[d,u,p],[f,m,h])}else if(n=="rectangle"){let e=randFromRange(o.height);let t=randFromRange(o.width);let a=randFromRange(o.depth);g=makeRectangle(E,e,t,a,[s,l,c],[d,u,p],[f,m,h])}else if(n=="arrow"){let e=randFromRange(o.depth);let t=randFromRange(o.bevelThickness);let a=randFromRange(o.bevelSize);let i=randFromRange(o.bevelSegments);let n=o.type||0;g=makeArrow(E,e,t,a,i,[s,l,c],[d,u,p],[f,m,h],n)}else if(n=="knot"){let e=randFromRange(o.radius);let t=randFromRange(o.tube);let a=randFromRange(o.tubularSegments);let i=randFromRange(o.radialSegments);let n=randFromRange(o.p);let r=randFromRange(o.q);g=makeKnot(E,e,t,a,i,n,r,[s,l,c],[d,u,p],[f,m,h])}else if(n in base64Objects){g=loadOBJ(base64Objects[n],E,[s,l,c],[d,u,p],[f,m,h])}g.userData.name=t;g.name=t;g.userData.shapeType=n;if(e.enableNegativeSpace){g.material.clippingPlanes=e.clipPlanes;g.material.clipIntersection=true}addPivotToAxis(e,g,t,o.yAxisRangeOverwrite,i)}function updateObjectRotationSpeed(t,a,i,n=1,r=.1){for(let e of Axis){if(e.name==a){for(let a of e.pivots){if(a.userData.name==t){let e=a.userData.rotationSpeed;if(e===undefined){e=0}let t=makeAnimationForQueue("rotationSpeed",e,i,i,n,r);if(a.userData.animationQueue===undefined){a.userData.animationQueue=[]}a.userData.animationQueue.push(t);return}}}}}function switchObjectRotationDirection(t,a,i=1,n=.1){for(let e of Axis){if(e.name==a){for(let a of e.pivots){if(a.userData.name==t){let e=a.userData.rotationSpeed;if(e===undefined){e=0}let t=makeAnimationForQueue("rotationSpeed",e,e*-1,e*-1,i,n);if(a.userData.animationQueue===undefined){a.userData.animationQueue=[]}a.userData.animationQueue.push(t);return}}}}}function updateObjectDistanceFromAxis(i,e,n,r=1,o=.1){for(let t of Axis){if(t.name==e){for(let e of t.pivots){if(e.userData.name==i){for(let a of e.children){if(a.userData.name==i){let e=a.position.x;let t=makeAnimationForQueue("distance",e,n,n,r,o);if(a.userData.animationQueue===undefined){a.userData.animationQueue=[]}a.userData.animationQueue.push(t)}}}}}}}function updateBackgroundGradientScale(e,t=1,a=.1){let i=Math.max(SCENE.worldPlane.scale.x,SCENE.worldPlane.scale.y);SCENE.worldPlane.userData.animationQueue.push(makeAnimationForQueue("scale",i,e,e,t,a))}function updateCameraPosition(e,t,a,i=1,n=.1){if(e!==undefined){SCENE.camera.userData.animationQueue.push(makeAnimationForQueue("x",SCENE.camera.position.x,e,e,i,n))}if(t!==undefined){SCENE.camera.userData.animationQueue.push(makeAnimationForQueue("y",SCENE.camera.position.y,t,t,i,n))}if(a!==undefined){SCENE.camera.userData.animationQueue.push(makeAnimationForQueue("z",SCENE.camera.position.z,a,a,i,n))}}function updateObjectScale2(e,t,a=1,i=.1){let n=makeAnimationForQueue