UNPKG

@splinetool/runtime

Version:

Spline is a collaborative design platform for creating production-ready interactive experiences in multiple dimensions. © 2025 Spline, Inc.

2 lines 2.04 MB
var ZV=Object.create;var iy=Object.defineProperty;var JV=Object.getOwnPropertyDescriptor;var $V=Object.getOwnPropertyNames;var eU=Object.getPrototypeOf,tU=Object.prototype.hasOwnProperty;var rU=(n,t,e)=>t in n?iy(n,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):n[t]=e;var Cc=(n,t)=>()=>(t||n((t={exports:{}}).exports,t),t.exports),iU=(n,t)=>{for(var e in t)iy(n,e,{get:t[e],enumerable:!0})},nU=(n,t,e,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of $V(t))!tU.call(n,i)&&i!==e&&iy(n,i,{get:()=>t[i],enumerable:!(r=JV(t,i))||r.enumerable});return n};var cl=(n,t,e)=>(e=n!=null?ZV(eU(n)):{},nU(t||!n||!n.__esModule?iy(e,"default",{value:n,enumerable:!0}):e,n));var Pc=(n,t,e)=>(rU(n,typeof t!="symbol"?t+"":t,e),e);var QR=Cc((yE,KR)=>{(function(n,t){typeof yE=="object"?KR.exports=t():typeof define=="function"&&define.amd?define(t):n.Alea=t()})(yE,function(){"use strict";return n.importState=function(e){var r=new n;return r.importState(e),r},n;function n(){return function(e){var r=0,i=0,s=0,o=1;e.length==0&&(e=[+new Date]);var a=t();r=a(" "),i=a(" "),s=a(" ");for(var l=0;l<e.length;l++)r-=a(e[l]),r<0&&(r+=1),i-=a(e[l]),i<0&&(i+=1),s-=a(e[l]),s<0&&(s+=1);a=null;var c=function(){var u=2091639*r+o*23283064365386963e-26;return r=i,i=s,s=u-(o=u|0)};return c.next=c,c.uint32=function(){return c()*4294967296},c.fract53=function(){return c()+(c()*2097152|0)*11102230246251565e-32},c.version="Alea 0.9",c.args=e,c.exportState=function(){return[r,i,s,o]},c.importState=function(u){r=+u[0]||0,i=+u[1]||0,s=+u[2]||0,o=+u[3]||0},c}(Array.prototype.slice.call(arguments))}function t(){var e=4022871197,r=function(i){i=i.toString();for(var s=0;s<i.length;s++){e+=i.charCodeAt(s);var o=.02519603282416938*e;e=o>>>0,o-=e,o*=e,e=o>>>0,o-=e,e+=o*4294967296}return(e>>>0)*23283064365386963e-26};return r.version="Mash 0.9",r}})});var xE=Cc((px,t3)=>{(function(n,t){typeof px=="object"&&typeof t3<"u"?t(px):typeof define=="function"&&define.amd?define(["exports"],t):t((n=typeof globalThis<"u"?globalThis:n||self).SVDJS={})})(px,function(n){"use strict";n.SVD=function(t,e,r,i,s){if(e=e===void 0||e,r=r===void 0||r,s=1e-64/(i=i||Math.pow(2,-52)),!t)throw new TypeError("Matrix a is not defined");var o,a,l,c,u,h,d,f,p,m,g,y,x=t[0].length,v=t.length;if(v<x)throw new TypeError("Invalid matrix: m < n");for(var b=[],w=[],A=[],T=e==="f"?v:x,S=m=d=0;S<v;S++)w[S]=new Array(T).fill(0);for(S=0;S<x;S++)A[S]=new Array(x).fill(0);var M,C=new Array(x).fill(0);for(S=0;S<v;S++)for(o=0;o<x;o++)w[S][o]=t[S][o];for(S=0;S<x;S++){for(b[S]=d,p=0,l=S+1,o=S;o<v;o++)p+=Math.pow(w[o][S],2);if(p<s)d=0;else for(f=(h=w[S][S])*(d=h<0?Math.sqrt(p):-Math.sqrt(p))-p,w[S][S]=h-d,o=l;o<x;o++){for(p=0,a=S;a<v;a++)p+=w[a][S]*w[a][o];for(h=p/f,a=S;a<v;a++)w[a][o]=w[a][o]+h*w[a][S]}for(C[S]=d,p=0,o=l;o<x;o++)p+=Math.pow(w[S][o],2);if(p<s)d=0;else{for(f=(h=w[S][S+1])*(d=h<0?Math.sqrt(p):-Math.sqrt(p))-p,w[S][S+1]=h-d,o=l;o<x;o++)b[o]=w[S][o]/f;for(o=l;o<v;o++){for(p=0,a=l;a<x;a++)p+=w[o][a]*w[S][a];for(a=l;a<x;a++)w[o][a]=w[o][a]+p*b[a]}}m<(g=Math.abs(C[S])+Math.abs(b[S]))&&(m=g)}if(r)for(S=x-1;0<=S;S--){if(d!==0){for(f=w[S][S+1]*d,o=l;o<x;o++)A[o][S]=w[S][o]/f;for(o=l;o<x;o++){for(p=0,a=l;a<x;a++)p+=w[S][a]*A[a][o];for(a=l;a<x;a++)A[a][o]=A[a][o]+p*A[a][S]}}for(o=l;o<x;o++)A[S][o]=0,A[o][S]=0;A[S][S]=1,d=b[S],l=S}if(e){if(e==="f")for(S=x;S<v;S++){for(o=x;o<v;o++)w[S][o]=0;w[S][S]=1}for(S=x-1;0<=S;S--){for(l=S+1,d=C[S],o=l;o<T;o++)w[S][o]=0;if(d!==0){for(f=w[S][S]*d,o=l;o<T;o++){for(p=0,a=l;a<v;a++)p+=w[a][S]*w[a][o];for(h=p/f,a=S;a<v;a++)w[a][o]=w[a][o]+h*w[a][S]}for(o=S;o<v;o++)w[o][S]=w[o][S]/d}else for(o=S;o<v;o++)w[o][S]=0;w[S][S]=w[S][S]+1}}for(i*=m,a=x-1;0<=a;a--)for(var P=0;P<50;P++){for(M=!1,l=a;0<=l;l--){if(Math.abs(b[l])<=i){M=!0;break}if(Math.abs(C[l-1])<=i)break}if(!M){for(u=0,c=l-(p=1),S=l;S<a+1&&(h=p*b[S],b[S]=u*b[S],!(Math.abs(h)<=i));S++)if(d=C[S],C[S]=Math.sqrt(h*h+d*d),u=d/(f=C[S]),p=-h/f,e)for(o=0;o<v;o++)g=w[o][c],y=w[o][S],w[o][c]=g*u+y*p,w[o][S]=-g*p+y*u}if(y=C[a],l===a){if(y<0&&(C[a]=-y,r))for(o=0;o<x;o++)A[o][a]=-A[o][a];break}for(m=C[l],h=(((g=C[a-1])-y)*(g+y)+((d=b[a-1])-(f=b[a]))*(d+f))/(2*f*g),d=Math.sqrt(h*h+1),h=((m-y)*(m+y)+f*(g/(h<0?h-d:h+d)-f))/m,S=l+(p=u=1);S<a+1;S++){if(d=b[S],g=C[S],f=p*d,d*=u,y=Math.sqrt(h*h+f*f),h=m*(u=h/(b[S-1]=y))+d*(p=f/y),d=-m*p+d*u,f=g*p,g*=u,r)for(o=0;o<x;o++)m=A[o][S-1],y=A[o][S],A[o][S-1]=m*u+y*p,A[o][S]=-m*p+y*u;if(y=Math.sqrt(h*h+f*f),h=(u=h/(C[S-1]=y))*d+(p=f/y)*g,m=-p*d+u*g,e)for(o=0;o<v;o++)g=w[o][S-1],y=w[o][S],w[o][S-1]=g*u+y*p,w[o][S]=-g*p+y*u}b[l]=0,b[a]=h,C[a]=m}for(S=0;S<x;S++)C[S]<i&&(C[S]=0);return{u:w,q:C,v:A}},n.VERSION="1.1.1",Object.defineProperty(n,"__esModule",{value:!0})})});var _L=Cc((Wx,PL)=>{"use strict";Object.defineProperty(Wx,"__esModule",{value:!0});Wx.default=sZ;function sZ(n){if(n===null||n===!0||n===!1)return NaN;var t=Number(n);return isNaN(t)?t:t<0?Math.ceil(t):Math.floor(t)}PL.exports=Wx.default});var DL=Cc((qx,IL)=>{"use strict";Object.defineProperty(qx,"__esModule",{value:!0});qx.default=oZ;function oZ(n){var t=new Date(Date.UTC(n.getFullYear(),n.getMonth(),n.getDate(),n.getHours(),n.getMinutes(),n.getSeconds(),n.getMilliseconds()));return t.setUTCFullYear(n.getFullYear()),n.getTime()-t.getTime()}IL.exports=qx.default});var CB=Cc((Hke,MB)=>{"use strict";function eee(n,t){function e(){this.constructor=n}e.prototype=t.prototype,n.prototype=new e}function Au(n,t,e,r){this.message=n,this.expected=t,this.found=e,this.location=r,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,Au)}eee(Au,Error);Au.buildMessage=function(n,t){var e={literal:function(c){return'"'+i(c.text)+'"'},class:function(c){var u="",h;for(h=0;h<c.parts.length;h++)u+=c.parts[h]instanceof Array?s(c.parts[h][0])+"-"+s(c.parts[h][1]):s(c.parts[h]);return"["+(c.inverted?"^":"")+u+"]"},any:function(c){return"any character"},end:function(c){return"end of input"},other:function(c){return c.description}};function r(c){return c.charCodeAt(0).toString(16).toUpperCase()}function i(c){return c.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,function(u){return"\\x0"+r(u)}).replace(/[\x10-\x1F\x7F-\x9F]/g,function(u){return"\\x"+r(u)})}function s(c){return c.replace(/\\/g,"\\\\").replace(/\]/g,"\\]").replace(/\^/g,"\\^").replace(/-/g,"\\-").replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,function(u){return"\\x0"+r(u)}).replace(/[\x10-\x1F\x7F-\x9F]/g,function(u){return"\\x"+r(u)})}function o(c){return e[c.type](c)}function a(c){var u=new Array(c.length),h,d;for(h=0;h<c.length;h++)u[h]=o(c[h]);if(u.sort(),u.length>0){for(h=1,d=1;h<u.length;h++)u[h-1]!==u[h]&&(u[d]=u[h],d++);u.length=d}switch(u.length){case 1:return u[0];case 2:return u[0]+" or "+u[1];default:return u.slice(0,-1).join(", ")+", or "+u[u.length-1]}}function l(c){return c?'"'+i(c)+'"':"end of input"}return"Expected "+a(n)+" but "+l(t)+" found."};function tee(n,t){t=t!==void 0?t:{};var e={},r={svg_path:qe},i=qe,s=function(D){if(!D)return[];for(var R=[],Y=0;Y<D.length;Y++)R=R.concat.apply(R,D[Y]);var k=R[0];return k&&k.code=="m"&&(delete k.relative,k.code="M"),R},o=function(D,R){return Ci(D,R)},a=/^[Mm]/,l=Be(["M","m"],!1,!1),c=function(D,R,Y){var k=mi(D,[R]);return Y&&(k=k.concat(mi(D=="M"?"L":"l",Y[1]))),k},u=/^[Zz]/,h=Be(["Z","z"],!1,!1),d=function(){return mi("Z")},f=/^[Ll]/,p=Be(["L","l"],!1,!1),m=function(D,R){return mi(D,R)},g=/^[Hh]/,y=Be(["H","h"],!1,!1),x=function(D,R){return mi(D,R.map(function(Y){return{x:Y}}))},v=/^[Vv]/,b=Be(["V","v"],!1,!1),w=function(D,R){return mi(D,R.map(function(Y){return{y:Y}}))},A=/^[Cc]/,T=Be(["C","c"],!1,!1),S=function(D,R,Y){return{x1:D.x,y1:D.y,x2:R.x,y2:R.y,x:Y.x,y:Y.y}},M=/^[Ss]/,C=Be(["S","s"],!1,!1),P=function(D,R){return{x2:D.x,y2:D.y,x:R.x,y:R.y}},_=/^[Qq]/,I=Be(["Q","q"],!1,!1),O=function(D,R){return{x1:D.x,y1:D.y,x:R.x,y:R.y}},L=/^[Tt]/,j=Be(["T","t"],!1,!1),V=/^[Aa]/,H=Be(["A","a"],!1,!1),q=function(D,R,Y,k,ee,_e){return{rx:D,ry:R,xAxisRotation:Y,largeArc:k,sweep:ee,x:_e.x,y:_e.y}},X=function(D,R){return{x:D,y:R}},K=function(D){return D*1},z=function(D){return D.join("")*1},Q=/^[01]/,te=Be(["0","1"],!1,!1),$=function(D){return D=="1"},W=function(){return""},oe=",",ie=We(",",!1),re=function(D){return D.join("")},J=".",Ee=We(".",!1),xe=/^[eE]/,de=Be(["e","E"],!1,!1),De=/^[+\-]/,Pe=Be(["+","-"],!1,!1),ze=/^[0-9]/,ke=Be([["0","9"]],!1,!1),Ue=function(D){return D.join("")},Le=/^[ \t\n\r]/,Qe=Be([" "," ",` `,"\r"],!1,!1),F=0,B=0,N=[{line:1,column:1}],ae=0,ye=[],me=0,Ne;if("startRule"in t){if(!(t.startRule in r))throw new Error(`Can't start parsing from rule "`+t.startRule+'".');i=r[t.startRule]}function Fe(){return n.substring(B,F)}function Oe(){return _r(B,F)}function pe(D,R){throw R=R!==void 0?R:_r(B,F),Me([Gt(D)],n.substring(B,F),R)}function nt(D,R){throw R=R!==void 0?R:_r(B,F),ve(D,R)}function We(D,R){return{type:"literal",text:D,ignoreCase:R}}function Be(D,R,Y){return{type:"class",parts:D,inverted:R,ignoreCase:Y}}function tt(){return{type:"any"}}function ot(){return{type:"end"}}function Gt(D){return{type:"other",description:D}}function xr(D){var R=N[D],Y;if(R)return R;for(Y=D-1;!N[Y];)Y--;for(R=N[Y],R={line:R.line,column:R.column};Y<D;)n.charCodeAt(Y)===10?(R.line++,R.column=1):R.column++,Y++;return N[D]=R,R}function _r(D,R){var Y=xr(D),k=xr(R);return{start:{offset:D,line:Y.line,column:Y.column},end:{offset:R,line:k.line,column:k.column}}}function Z(D){F<ae||(F>ae&&(ae=F,ye=[]),ye.push(D))}function ve(D,R){return new Au(D,null,null,R)}function Me(D,R,Y){return new Au(Au.buildMessage(D,R),D,R,Y)}function qe(){var D,R,Y,k,ee;for(D=F,R=[],Y=_t();Y!==e;)R.push(Y),Y=_t();if(R!==e)if(Y=Xe(),Y===e&&(Y=null),Y!==e){for(k=[],ee=_t();ee!==e;)k.push(ee),ee=_t();k!==e?(B=D,R=s(Y),D=R):(F=D,D=e)}else F=D,D=e;else F=D,D=e;return D}function Xe(){var D,R,Y,k,ee,_e;if(D=F,R=Ot(),R!==e){for(Y=[],k=F,ee=[],_e=_t();_e!==e;)ee.push(_e),_e=_t();for(ee!==e?(_e=Ot(),_e!==e?(ee=[ee,_e],k=ee):(F=k,k=e)):(F=k,k=e);k!==e;){for(Y.push(k),k=F,ee=[],_e=_t();_e!==e;)ee.push(_e),_e=_t();ee!==e?(_e=Ot(),_e!==e?(ee=[ee,_e],k=ee):(F=k,k=e)):(F=k,k=e)}Y!==e?(B=D,R=o(R,Y),D=R):(F=D,D=e)}else F=D,D=e;return D}function Ot(){var D,R,Y,k,ee,_e;if(D=F,R=Wr(),R!==e){for(Y=[],k=F,ee=[],_e=_t();_e!==e;)ee.push(_e),_e=_t();for(ee!==e?(_e=Hr(),_e!==e?(ee=[ee,_e],k=ee):(F=k,k=e)):(F=k,k=e);k!==e;){for(Y.push(k),k=F,ee=[],_e=_t();_e!==e;)ee.push(_e),_e=_t();ee!==e?(_e=Hr(),_e!==e?(ee=[ee,_e],k=ee):(F=k,k=e)):(F=k,k=e)}Y!==e?(B=D,R=o(R,Y),D=R):(F=D,D=e)}else F=D,D=e;return D}function Hr(){var D;return D=ya(),D===e&&(D=Ir(),D===e&&(D=Rn(),D===e&&(D=Z1(),D===e&&(D=J1(),D===e&&(D=le(),D===e&&(D=be(),D===e&&(D=St(),D===e&&(D=jt())))))))),D}function Wr(){var D,R,Y,k,ee,_e,Ru;if(D=F,a.test(n.charAt(F))?(R=n.charAt(F),F++):(R=e,me===0&&Z(l)),R!==e){for(Y=[],k=_t();k!==e;)Y.push(k),k=_t();Y!==e?(k=Lt(),k!==e?(ee=F,_e=xt(),_e===e&&(_e=null),_e!==e?(Ru=us(),Ru!==e?(_e=[_e,Ru],ee=_e):(F=ee,ee=e)):(F=ee,ee=e),ee===e&&(ee=null),ee!==e?(B=D,R=c(R,k,ee),D=R):(F=D,D=e)):(F=D,D=e)):(F=D,D=e)}else F=D,D=e;return D}function ya(){var D,R;return D=F,u.test(n.charAt(F))?(R=n.charAt(F),F++):(R=e,me===0&&Z(h)),R!==e&&(B=D,R=d()),D=R,D}function Ir(){var D,R,Y,k;if(D=F,f.test(n.charAt(F))?(R=n.charAt(F),F++):(R=e,me===0&&Z(p)),R!==e){for(Y=[],k=_t();k!==e;)Y.push(k),k=_t();Y!==e?(k=us(),k!==e?(B=D,R=m(R,k),D=R):(F=D,D=e)):(F=D,D=e)}else F=D,D=e;return D}function us(){var D,R,Y,k,ee,_e;if(D=F,R=Lt(),R!==e){for(Y=[],k=F,ee=xt(),ee===e&&(ee=null),ee!==e?(_e=Lt(),_e!==e?(ee=[ee,_e],k=ee):(F=k,k=e)):(F=k,k=e);k!==e;)Y.push(k),k=F,ee=xt(),ee===e&&(ee=null),ee!==e?(_e=Lt(),_e!==e?(ee=[ee,_e],k=ee):(F=k,k=e)):(F=k,k=e);Y!==e?(B=D,R=o(R,Y),D=R):(F=D,D=e)}else F=D,D=e;return D}function Rn(){var D,R,Y,k;if(D=F,g.test(n.charAt(F))?(R=n.charAt(F),F++):(R=e,me===0&&Z(y)),R!==e){for(Y=[],k=_t();k!==e;)Y.push(k),k=_t();Y!==e?(k=vp(),k!==e?(B=D,R=x(R,k),D=R):(F=D,D=e)):(F=D,D=e)}else F=D,D=e;return D}function vp(){var D,R,Y,k,ee,_e;if(D=F,R=an(),R!==e){for(Y=[],k=F,ee=xt(),ee===e&&(ee=null),ee!==e?(_e=an(),_e!==e?(ee=[ee,_e],k=ee):(F=k,k=e)):(F=k,k=e);k!==e;)Y.push(k),k=F,ee=xt(),ee===e&&(ee=null),ee!==e?(_e=an(),_e!==e?(ee=[ee,_e],k=ee):(F=k,k=e)):(F=k,k=e);Y!==e?(B=D,R=o(R,Y),D=R):(F=D,D=e)}else F=D,D=e;return D}function Z1(){var D,R,Y,k;if(D=F,v.test(n.charAt(F))?(R=n.charAt(F),F++):(R=e,me===0&&Z(b)),R!==e){for(Y=[],k=_t();k!==e;)Y.push(k),k=_t();Y!==e?(k=vp(),k!==e?(B=D,R=w(R,k),D=R):(F=D,D=e)):(F=D,D=e)}else F=D,D=e;return D}function J1(){var D,R,Y,k;if(D=F,A.test(n.charAt(F))?(R=n.charAt(F),F++):(R=e,me===0&&Z(T)),R!==e){for(Y=[],k=_t();k!==e;)Y.push(k),k=_t();Y!==e?(k=$1(),k!==e?(B=D,R=m(R,k),D=R):(F=D,D=e)):(F=D,D=e)}else F=D,D=e;return D}function $1(){var D,R,Y,k,ee,_e;if(D=F,R=G(),R!==e){for(Y=[],k=F,ee=xt(),ee===e&&(ee=null),ee!==e?(_e=G(),_e!==e?(ee=[ee,_e],k=ee):(F=k,k=e)):(F=k,k=e);k!==e;)Y.push(k),k=F,ee=xt(),ee===e&&(ee=null),ee!==e?(_e=G(),_e!==e?(ee=[ee,_e],k=ee):(F=k,k=e)):(F=k,k=e);Y!==e?(B=D,R=o(R,Y),D=R):(F=D,D=e)}else F=D,D=e;return D}function G(){var D,R,Y,k,ee,_e;return D=F,R=Lt(),R!==e?(Y=xt(),Y===e&&(Y=null),Y!==e?(k=Lt(),k!==e?(ee=xt(),ee===e&&(ee=null),ee!==e?(_e=Lt(),_e!==e?(B=D,R=S(R,k,_e),D=R):(F=D,D=e)):(F=D,D=e)):(F=D,D=e)):(F=D,D=e)):(F=D,D=e),D}function le(){var D,R,Y,k;if(D=F,M.test(n.charAt(F))?(R=n.charAt(F),F++):(R=e,me===0&&Z(C)),R!==e){for(Y=[],k=_t();k!==e;)Y.push(k),k=_t();Y!==e?(k=ge(),k!==e?(B=D,R=m(R,k),D=R):(F=D,D=e)):(F=D,D=e)}else F=D,D=e;return D}function ge(){var D,R,Y,k,ee,_e;if(D=F,R=ne(),R!==e){for(Y=[],k=F,ee=xt(),ee===e&&(ee=null),ee!==e?(_e=ne(),_e!==e?(ee=[ee,_e],k=ee):(F=k,k=e)):(F=k,k=e);k!==e;)Y.push(k),k=F,ee=xt(),ee===e&&(ee=null),ee!==e?(_e=ne(),_e!==e?(ee=[ee,_e],k=ee):(F=k,k=e)):(F=k,k=e);Y!==e?(B=D,R=o(R,Y),D=R):(F=D,D=e)}else F=D,D=e;return D}function ne(){var D,R,Y,k;return D=F,R=Lt(),R!==e?(Y=xt(),Y===e&&(Y=null),Y!==e?(k=Lt(),k!==e?(B=D,R=P(R,k),D=R):(F=D,D=e)):(F=D,D=e)):(F=D,D=e),D}function be(){var D,R,Y,k;if(D=F,_.test(n.charAt(F))?(R=n.charAt(F),F++):(R=e,me===0&&Z(I)),R!==e){for(Y=[],k=_t();k!==e;)Y.push(k),k=_t();Y!==e?(k=st(),k!==e?(B=D,R=m(R,k),D=R):(F=D,D=e)):(F=D,D=e)}else F=D,D=e;return D}function st(){var D,R,Y,k,ee,_e;if(D=F,R=pt(),R!==e){for(Y=[],k=F,ee=xt(),ee===e&&(ee=null),ee!==e?(_e=pt(),_e!==e?(ee=[ee,_e],k=ee):(F=k,k=e)):(F=k,k=e);k!==e;)Y.push(k),k=F,ee=xt(),ee===e&&(ee=null),ee!==e?(_e=pt(),_e!==e?(ee=[ee,_e],k=ee):(F=k,k=e)):(F=k,k=e);Y!==e?(B=D,R=o(R,Y),D=R):(F=D,D=e)}else F=D,D=e;return D}function pt(){var D,R,Y,k;return D=F,R=Lt(),R!==e?(Y=xt(),Y===e&&(Y=null),Y!==e?(k=Lt(),k!==e?(B=D,R=O(R,k),D=R):(F=D,D=e)):(F=D,D=e)):(F=D,D=e),D}function St(){var D,R,Y,k;if(D=F,L.test(n.charAt(F))?(R=n.charAt(F),F++):(R=e,me===0&&Z(j)),R!==e){for(Y=[],k=_t();k!==e;)Y.push(k),k=_t();Y!==e?(k=Et(),k!==e?(B=D,R=m(R,k),D=R):(F=D,D=e)):(F=D,D=e)}else F=D,D=e;return D}function Et(){var D,R,Y,k,ee,_e;if(D=F,R=Lt(),R!==e){for(Y=[],k=F,ee=xt(),ee===e&&(ee=null),ee!==e?(_e=Lt(),_e!==e?(ee=[ee,_e],k=ee):(F=k,k=e)):(F=k,k=e);k!==e;)Y.push(k),k=F,ee=xt(),ee===e&&(ee=null),ee!==e?(_e=Lt(),_e!==e?(ee=[ee,_e],k=ee):(F=k,k=e)):(F=k,k=e);Y!==e?(B=D,R=o(R,Y),D=R):(F=D,D=e)}else F=D,D=e;return D}function jt(){var D,R,Y,k;if(D=F,V.test(n.charAt(F))?(R=n.charAt(F),F++):(R=e,me===0&&Z(H)),R!==e){for(Y=[],k=_t();k!==e;)Y.push(k),k=_t();Y!==e?(k=Rt(),k!==e?(B=D,R=m(R,k),D=R):(F=D,D=e)):(F=D,D=e)}else F=D,D=e;return D}function Rt(){var D,R,Y,k,ee,_e;if(D=F,R=Tt(),R!==e){for(Y=[],k=F,ee=xt(),ee===e&&(ee=null),ee!==e?(_e=Tt(),_e!==e?(ee=[ee,_e],k=ee):(F=k,k=e)):(F=k,k=e);k!==e;)Y.push(k),k=F,ee=xt(),ee===e&&(ee=null),ee!==e?(_e=Tt(),_e!==e?(ee=[ee,_e],k=ee):(F=k,k=e)):(F=k,k=e);Y!==e?(B=D,R=o(R,Y),D=R):(F=D,D=e)}else F=D,D=e;return D}function Tt(){var D,R,Y,k,ee,_e,Ru,eS,ty,tS,ry,rS;return D=F,R=Mi(),R!==e?(Y=xt(),Y===e&&(Y=null),Y!==e?(k=Mi(),k!==e?(ee=xt(),ee===e&&(ee=null),ee!==e?(_e=an(),_e!==e?(Ru=xt(),Ru!==e?(eS=So(),eS!==e?(ty=xt(),ty===e&&(ty=null),ty!==e?(tS=So(),tS!==e?(ry=xt(),ry===e&&(ry=null),ry!==e?(rS=Lt(),rS!==e?(B=D,R=q(R,k,_e,eS,tS,rS),D=R):(F=D,D=e)):(F=D,D=e)):(F=D,D=e)):(F=D,D=e)):(F=D,D=e)):(F=D,D=e)):(F=D,D=e)):(F=D,D=e)):(F=D,D=e)):(F=D,D=e)):(F=D,D=e),D}function Lt(){var D,R,Y,k;return D=F,R=an(),R!==e?(Y=xt(),Y===e&&(Y=null),Y!==e?(k=an(),k!==e?(B=D,R=X(R,k),D=R):(F=D,D=e)):(F=D,D=e)):(F=D,D=e),D}function Mi(){var D,R;return D=F,R=Iu(),R===e&&(R=Kn()),R!==e&&(B=D,R=K(R)),D=R,D}function an(){var D,R,Y,k;return D=F,R=F,Y=Du(),Y===e&&(Y=null),Y!==e?(k=Iu(),k!==e?(Y=[Y,k],R=Y):(F=R,R=e)):(F=R,R=e),R===e&&(R=F,Y=Du(),Y===e&&(Y=null),Y!==e?(k=Kn(),k!==e?(Y=[Y,k],R=Y):(F=R,R=e)):(F=R,R=e)),R!==e&&(B=D,R=z(R)),D=R,D}function So(){var D,R;return D=F,Q.test(n.charAt(F))?(R=n.charAt(F),F++):(R=e,me===0&&Z(te)),R!==e&&(B=D,R=$(R)),D=R,D}function xt(){var D,R,Y,k,ee;if(D=F,R=[],Y=_t(),Y!==e)for(;Y!==e;)R.push(Y),Y=_t();else R=e;if(R!==e)if(Y=Ft(),Y===e&&(Y=null),Y!==e){for(k=[],ee=_t();ee!==e;)k.push(ee),ee=_t();k!==e?(R=[R,Y,k],D=R):(F=D,D=e)}else F=D,D=e;else F=D,D=e;if(D===e){if(D=F,R=F,Y=Ft(),Y!==e){for(k=[],ee=_t();ee!==e;)k.push(ee),ee=_t();k!==e?(Y=[Y,k],R=Y):(F=R,R=e)}else F=R,R=e;R!==e&&(B=D,R=W()),D=R}return D}function Ft(){var D;return n.charCodeAt(F)===44?(D=oe,F++):(D=e,me===0&&Z(ie)),D}function Iu(){var D,R,Y,k;return D=F,R=F,Y=pi(),Y!==e?(k=wo(),k===e&&(k=null),k!==e?(Y=[Y,k],R=Y):(F=R,R=e)):(F=R,R=e),R===e&&(R=F,Y=Kn(),Y!==e?(k=wo(),k!==e?(Y=[Y,k],R=Y):(F=R,R=e)):(F=R,R=e)),R!==e&&(B=D,R=re(R)),D=R,D}function pi(){var D,R,Y,k,ee;return D=F,R=F,Y=Kn(),Y===e&&(Y=null),Y!==e?(n.charCodeAt(F)===46?(k=J,F++):(k=e,me===0&&Z(Ee)),k!==e?(ee=Kn(),ee!==e?(Y=[Y,k,ee],R=Y):(F=R,R=e)):(F=R,R=e)):(F=R,R=e),R===e&&(R=F,Y=Kn(),Y!==e?(n.charCodeAt(F)===46?(k=J,F++):(k=e,me===0&&Z(Ee)),k!==e?(Y=[Y,k],R=Y):(F=R,R=e)):(F=R,R=e)),R!==e&&(B=D,R=re(R)),D=R,D}function wo(){var D,R,Y,k,ee;return D=F,R=F,xe.test(n.charAt(F))?(Y=n.charAt(F),F++):(Y=e,me===0&&Z(de)),Y!==e?(k=Du(),k===e&&(k=null),k!==e?(ee=Kn(),ee!==e?(Y=[Y,k,ee],R=Y):(F=R,R=e)):(F=R,R=e)):(F=R,R=e),R!==e&&(B=D,R=re(R)),D=R,D}function Du(){var D;return De.test(n.charAt(F))?(D=n.charAt(F),F++):(D=e,me===0&&Z(Pe)),D}function Kn(){var D,R,Y;if(D=F,R=[],ze.test(n.charAt(F))?(Y=n.charAt(F),F++):(Y=e,me===0&&Z(ke)),Y!==e)for(;Y!==e;)R.push(Y),ze.test(n.charAt(F))?(Y=n.charAt(F),F++):(Y=e,me===0&&Z(ke));else R=e;return R!==e&&(B=D,R=Ue(R)),D=R,D}function _t(){var D,R;return D=F,Le.test(n.charAt(F))?(R=n.charAt(F),F++):(R=e,me===0&&Z(Qe)),R!==e&&(B=D,R=W()),D=R,D}function Ci(D,R){if(!R)return[D];for(var Y=[D],k=0,ee=R.length;k<ee;k++)Y[k+1]=R[k][1];return Y}var hs={m:"moveto",l:"lineto",h:"horizontal lineto",v:"vertical lineto",c:"curveto",s:"smooth curveto",q:"quadratic curveto",t:"smooth quadratic curveto",a:"elliptical arc",z:"closepath"};for(var Ou in hs)hs[Ou.toUpperCase()]=hs[Ou];function mi(D,R){R||(R=[{}]);for(var Y=R.length;Y--;){var k={code:D,command:hs[D]};D==D.toLowerCase()&&(k.relative=!0);for(var ee in R[Y])k[ee]=R[Y][ee];R[Y]=k}return R}if(Ne=i(),Ne!==e&&F===n.length)return Ne;throw Ne!==e&&F<n.length&&Z(ot()),Me(ye,ae<n.length?n.charAt(ae):null,ae<n.length?_r(ae,ae+1):_r(ae,ae))}MB.exports={SyntaxError:Au,parse:tee}});var lM=Cc((Wke,PB)=>{var kb=CB().parse;kb.parseSVG=kb;kb.makeAbsolute=ree;PB.exports=kb;function ree(n){var t,e={x:0,y:0},r={x:"x0",y:"y0",x1:"x0",y1:"y0",x2:"x0",y2:"y0"};return n.forEach(function(i){i.command==="moveto"&&(t=i),i.x0=e.x,i.y0=e.y;for(var s in r)s in i&&(i[s]+=i.relative?i[r[s]]:0);"x"in i||(i.x=e.x),"y"in i||(i.y=e.y),i.relative=!1,i.code=i.code.toUpperCase(),i.command=="closepath"&&(i.x=t.x,i.y=t.y),e=i}),n}});var WV=Cc((fZe,HV)=>{HV.exports=function(t,e){for(var r=t.split("."),i=e.split("."),s=0;s<3;s++){var o=Number(r[s]),a=Number(i[s]);if(o>a)return 1;if(a>o)return-1;if(!isNaN(o)&&isNaN(a))return 1;if(isNaN(o)&&!isNaN(a))return-1}return 0}});var Ca="149";var ts={ROTATE:0,PAN:1,DOLLY_PAN:2,DOLLY_ROTATE:3},sU=0,wC=1,oU=2;var cv=1,aU=2,Pp=3,Jn=0,xi=1,vi=2;var or=0,ml=1,AC=2,EC=3,TC=4,lU=5,Yu=100,cU=101,uU=102,MC=103,CC=104,hU=200,dU=201,fU=202,pU=203,$P=204,e_=205,mU=206,gU=207,yU=208,vU=209,xU=210,bU=0,SU=1,wU=2,kS=3,AU=4,EU=5,TU=6,MU=7,t_=0,CU=1,PU=2,js=0,_U=1,IU=2,DU=3,OU=4,RU=5,r_=300,yl=301,vl=302,zS=303,GS=304,xh=306,Hs=1e3,tr=1001,jS=1002,vt=1003,PC=1004;var iS=1005;var it=1006,LU=1007;var Bc=1008;var Lr=1009,NU=1010,BU=1011,i_=1012,FU=1013,Gs=1014,Vt=1015,$n=1016,VU=1017,UU=1018,gl=1020,kU=1021,br=1023,zU=1024,GU=1025,Lc=1026,xl=1027,Zp=1028,jU=1029,bh=1030,HU=1031,ww=1033,nS=33776,sS=33777,oS=33778,aS=33779,_C=35840,IC=35841,DC=35842,OC=35843,WU=36196,RC=37492,LC=37496,NC=37808,BC=37809,FC=37810,VC=37811,UC=37812,kC=37813,zC=37814,GC=37815,jC=37816,HC=37817,WC=37818,qC=37819,XC=37820,YC=37821,lS=36492,qU=36283,KC=36284,QC=36285,ZC=36286,Aw=2200,Ew=2201,Jp=2202,Ry=2300,Ly=2301,cS=2302,Ku=2400,Qu=2401,Ny=2402,Tw=2500,XU=2501;var xn=3e3,ut=3001,zi=3200,Mw=3201,YU=0,KU=1;var Ao="srgb",Np="srgb-linear";var uS=7680;var QU=519,HS=35044,n_=35048;var By="300 es",WS=1035,ar=class{addEventListener(t,e){this._listeners===void 0&&(this._listeners={});let r=this._listeners;r[t]===void 0&&(r[t]=[]),r[t].indexOf(e)===-1&&r[t].push(e)}hasEventListener(t,e){if(this._listeners===void 0)return!1;let r=this._listeners;return r[t]!==void 0&&r[t].indexOf(e)!==-1}removeEventListener(t,e){if(this._listeners===void 0)return;let i=this._listeners[t];if(i!==void 0){let s=i.indexOf(e);s!==-1&&i.splice(s,1)}}dispatchEvent(t){if(this._listeners===void 0)return;let r=this._listeners[t.type];if(r!==void 0){t.target=this;let i=r.slice(0);for(let s=0,o=i.length;s<o;s++)i[s].call(this,t);t.target=null}}},ln=["00","01","02","03","04","05","06","07","08","09","0a","0b","0c","0d","0e","0f","10","11","12","13","14","15","16","17","18","19","1a","1b","1c","1d","1e","1f","20","21","22","23","24","25","26","27","28","29","2a","2b","2c","2d","2e","2f","30","31","32","33","34","35","36","37","38","39","3a","3b","3c","3d","3e","3f","40","41","42","43","44","45","46","47","48","49","4a","4b","4c","4d","4e","4f","50","51","52","53","54","55","56","57","58","59","5a","5b","5c","5d","5e","5f","60","61","62","63","64","65","66","67","68","69","6a","6b","6c","6d","6e","6f","70","71","72","73","74","75","76","77","78","79","7a","7b","7c","7d","7e","7f","80","81","82","83","84","85","86","87","88","89","8a","8b","8c","8d","8e","8f","90","91","92","93","94","95","96","97","98","99","9a","9b","9c","9d","9e","9f","a0","a1","a2","a3","a4","a5","a6","a7","a8","a9","aa","ab","ac","ad","ae","af","b0","b1","b2","b3","b4","b5","b6","b7","b8","b9","ba","bb","bc","bd","be","bf","c0","c1","c2","c3","c4","c5","c6","c7","c8","c9","ca","cb","cc","cd","ce","cf","d0","d1","d2","d3","d4","d5","d6","d7","d8","d9","da","db","dc","dd","de","df","e0","e1","e2","e3","e4","e5","e6","e7","e8","e9","ea","eb","ec","ed","ee","ef","f0","f1","f2","f3","f4","f5","f6","f7","f8","f9","fa","fb","fc","fd","fe","ff"],JC=1234567,Ip=Math.PI/180,Bp=180/Math.PI;function fs(){let n=Math.random()*4294967295|0,t=Math.random()*4294967295|0,e=Math.random()*4294967295|0,r=Math.random()*4294967295|0;return(ln[n&255]+ln[n>>8&255]+ln[n>>16&255]+ln[n>>24&255]+"-"+ln[t&255]+ln[t>>8&255]+"-"+ln[t>>16&15|64]+ln[t>>24&255]+"-"+ln[e&63|128]+ln[e>>8&255]+"-"+ln[e>>16&255]+ln[e>>24&255]+ln[r&255]+ln[r>>8&255]+ln[r>>16&255]+ln[r>>24&255]).toLowerCase()}function yi(n,t,e){return Math.max(t,Math.min(e,n))}function Cw(n,t){return(n%t+t)%t}function ZU(n,t,e,r,i){return r+(n-t)*(i-r)/(e-t)}function JU(n,t,e){return n!==t?(e-n)/(t-n):0}function Dp(n,t,e){return(1-e)*n+e*t}function $U(n,t,e,r){return Dp(n,t,1-Math.exp(-e*r))}function ek(n,t=1){return t-Math.abs(Cw(n,t*2)-t)}function tk(n,t,e){return n<=t?0:n>=e?1:(n=(n-t)/(e-t),n*n*(3-2*n))}function rk(n,t,e){return n<=t?0:n>=e?1:(n=(n-t)/(e-t),n*n*n*(n*(n*6-15)+10))}function ik(n,t){return n+Math.floor(Math.random()*(t-n+1))}function nk(n,t){return n+Math.random()*(t-n)}function sk(n){return n*(.5-Math.random())}function ok(n){n!==void 0&&(JC=n);let t=JC+=1831565813;return t=Math.imul(t^t>>>15,t|1),t^=t+Math.imul(t^t>>>7,t|61),((t^t>>>14)>>>0)/4294967296}function ak(n){return n*Ip}function lk(n){return n*Bp}function qS(n){return(n&n-1)===0&&n!==0}function s_(n){return Math.pow(2,Math.ceil(Math.log(n)/Math.LN2))}function Fy(n){return Math.pow(2,Math.floor(Math.log(n)/Math.LN2))}function ck(n,t,e,r,i){let s=Math.cos,o=Math.sin,a=s(e/2),l=o(e/2),c=s((t+r)/2),u=o((t+r)/2),h=s((t-r)/2),d=o((t-r)/2),f=s((r-t)/2),p=o((r-t)/2);switch(i){case"XYX":n.set(a*u,l*h,l*d,a*c);break;case"YZY":n.set(l*d,a*u,l*h,a*c);break;case"ZXZ":n.set(l*h,l*d,a*u,a*c);break;case"XZX":n.set(a*u,l*p,l*f,a*c);break;case"YXY":n.set(l*f,a*u,l*p,a*c);break;case"ZYZ":n.set(l*p,l*f,a*u,a*c);break;default:console.warn("THREE.MathUtils: .setQuaternionFromProperEuler() encountered an unknown order: "+i)}}function Ta(n,t){switch(t.constructor){case Float32Array:return n;case Uint16Array:return n/65535;case Uint8Array:return n/255;case Int16Array:return Math.max(n/32767,-1);case Int8Array:return Math.max(n/127,-1);default:throw new Error("Invalid component type.")}}function Ar(n,t){switch(t.constructor){case Float32Array:return n;case Uint16Array:return Math.round(n*65535);case Uint8Array:return Math.round(n*255);case Int16Array:return Math.round(n*32767);case Int8Array:return Math.round(n*127);default:throw new Error("Invalid component type.")}}var we=Object.freeze({__proto__:null,DEG2RAD:Ip,RAD2DEG:Bp,ceilPowerOfTwo:s_,clamp:yi,damp:$U,degToRad:ak,denormalize:Ta,euclideanModulo:Cw,floorPowerOfTwo:Fy,generateUUID:fs,inverseLerp:JU,isPowerOfTwo:qS,lerp:Dp,mapLinear:ZU,normalize:Ar,pingpong:ek,radToDeg:lk,randFloat:nk,randFloatSpread:sk,randInt:ik,seededRandom:ok,setQuaternionFromProperEuler:ck,smootherstep:rk,smoothstep:tk}),U=class{constructor(t=0,e=0){U.prototype.isVector2=!0,this.x=t,this.y=e}get width(){return this.x}set width(t){this.x=t}get height(){return this.y}set height(t){this.y=t}set(t,e){return this.x=t,this.y=e,this}setScalar(t){return this.x=t,this.y=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;default:throw new Error("index is out of range: "+t)}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;default:throw new Error("index is out of range: "+t)}}clone(){return new this.constructor(this.x,this.y)}copy(t){return this.x=t.x,this.y=t.y,this}add(t){return this.x+=t.x,this.y+=t.y,this}addScalar(t){return this.x+=t,this.y+=t,this}addVectors(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this}addScaledVector(t,e){return this.x+=t.x*e,this.y+=t.y*e,this}sub(t){return this.x-=t.x,this.y-=t.y,this}subScalar(t){return this.x-=t,this.y-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this}multiply(t){return this.x*=t.x,this.y*=t.y,this}multiplyScalar(t){return this.x*=t,this.y*=t,this}divide(t){return this.x/=t.x,this.y/=t.y,this}divideScalar(t){return this.multiplyScalar(1/t)}applyMatrix3(t){let e=this.x,r=this.y,i=t.elements;return this.x=i[0]*e+i[3]*r+i[6],this.y=i[1]*e+i[4]*r+i[7],this}min(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this}max(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this}clamp(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this}clampScalar(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this}clampLength(t,e){let r=this.length();return this.divideScalar(r||1).multiplyScalar(Math.max(t,Math.min(e,r)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}roundToZero(){return this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y),this}negate(){return this.x=-this.x,this.y=-this.y,this}dot(t){return this.x*t.x+this.y*t.y}cross(t){return this.x*t.y-this.y*t.x}lengthSq(){return this.x*this.x+this.y*this.y}length(){return Math.sqrt(this.x*this.x+this.y*this.y)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)}normalize(){return this.divideScalar(this.length()||1)}angle(){return Math.atan2(-this.y,-this.x)+Math.PI}distanceTo(t){return Math.sqrt(this.distanceToSquared(t))}distanceToSquared(t){let e=this.x-t.x,r=this.y-t.y;return e*e+r*r}manhattanDistanceTo(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)}setLength(t){return this.normalize().multiplyScalar(t)}lerp(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this}lerpVectors(t,e,r){return this.x=t.x+(e.x-t.x)*r,this.y=t.y+(e.y-t.y)*r,this}equals(t){return t.x===this.x&&t.y===this.y}fromArray(t,e=0){return this.x=t[e],this.y=t[e+1],this}toArray(t=[],e=0){return t[e]=this.x,t[e+1]=this.y,t}fromBufferAttribute(t,e){return this.x=t.getX(e),this.y=t.getY(e),this}rotateAround(t,e){let r=Math.cos(e),i=Math.sin(e),s=this.x-t.x,o=this.y-t.y;return this.x=s*r-o*i+t.x,this.y=s*i+o*r+t.y,this}random(){return this.x=Math.random(),this.y=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y}},Sr=class{constructor(){Sr.prototype.isMatrix3=!0,this.elements=[1,0,0,0,1,0,0,0,1]}set(t,e,r,i,s,o,a,l,c){let u=this.elements;return u[0]=t,u[1]=i,u[2]=a,u[3]=e,u[4]=s,u[5]=l,u[6]=r,u[7]=o,u[8]=c,this}identity(){return this.set(1,0,0,0,1,0,0,0,1),this}copy(t){let e=this.elements,r=t.elements;return e[0]=r[0],e[1]=r[1],e[2]=r[2],e[3]=r[3],e[4]=r[4],e[5]=r[5],e[6]=r[6],e[7]=r[7],e[8]=r[8],this}extractBasis(t,e,r){return t.setFromMatrix3Column(this,0),e.setFromMatrix3Column(this,1),r.setFromMatrix3Column(this,2),this}setFromMatrix4(t){let e=t.elements;return this.set(e[0],e[4],e[8],e[1],e[5],e[9],e[2],e[6],e[10]),this}multiply(t){return this.multiplyMatrices(this,t)}premultiply(t){return this.multiplyMatrices(t,this)}multiplyMatrices(t,e){let r=t.elements,i=e.elements,s=this.elements,o=r[0],a=r[3],l=r[6],c=r[1],u=r[4],h=r[7],d=r[2],f=r[5],p=r[8],m=i[0],g=i[3],y=i[6],x=i[1],v=i[4],b=i[7],w=i[2],A=i[5],T=i[8];return s[0]=o*m+a*x+l*w,s[3]=o*g+a*v+l*A,s[6]=o*y+a*b+l*T,s[1]=c*m+u*x+h*w,s[4]=c*g+u*v+h*A,s[7]=c*y+u*b+h*T,s[2]=d*m+f*x+p*w,s[5]=d*g+f*v+p*A,s[8]=d*y+f*b+p*T,this}multiplyScalar(t){let e=this.elements;return e[0]*=t,e[3]*=t,e[6]*=t,e[1]*=t,e[4]*=t,e[7]*=t,e[2]*=t,e[5]*=t,e[8]*=t,this}determinant(){let t=this.elements,e=t[0],r=t[1],i=t[2],s=t[3],o=t[4],a=t[5],l=t[6],c=t[7],u=t[8];return e*o*u-e*a*c-r*s*u+r*a*l+i*s*c-i*o*l}invert(){let t=this.elements,e=t[0],r=t[1],i=t[2],s=t[3],o=t[4],a=t[5],l=t[6],c=t[7],u=t[8],h=u*o-a*c,d=a*l-u*s,f=c*s-o*l,p=e*h+r*d+i*f;if(p===0)return this.set(0,0,0,0,0,0,0,0,0);let m=1/p;return t[0]=h*m,t[1]=(i*c-u*r)*m,t[2]=(a*r-i*o)*m,t[3]=d*m,t[4]=(u*e-i*l)*m,t[5]=(i*s-a*e)*m,t[6]=f*m,t[7]=(r*l-c*e)*m,t[8]=(o*e-r*s)*m,this}transpose(){let t,e=this.elements;return t=e[1],e[1]=e[3],e[3]=t,t=e[2],e[2]=e[6],e[6]=t,t=e[5],e[5]=e[7],e[7]=t,this}getNormalMatrix(t){return this.setFromMatrix4(t).invert().transpose()}transposeIntoArray(t){let e=this.elements;return t[0]=e[0],t[1]=e[3],t[2]=e[6],t[3]=e[1],t[4]=e[4],t[5]=e[7],t[6]=e[2],t[7]=e[5],t[8]=e[8],this}setUvTransform(t,e,r,i,s,o,a){let l=Math.cos(s),c=Math.sin(s);return this.set(r*l,r*c,-r*(l*o+c*a)+o+t,-i*c,i*l,-i*(-c*o+l*a)+a+e,0,0,1),this}scale(t,e){return this.premultiply(hS.makeScale(t,e)),this}rotate(t){return this.premultiply(hS.makeRotation(-t)),this}translate(t,e){return this.premultiply(hS.makeTranslation(t,e)),this}makeTranslation(t,e){return this.set(1,0,t,0,1,e,0,0,1),this}makeRotation(t){let e=Math.cos(t),r=Math.sin(t);return this.set(e,-r,0,r,e,0,0,0,1),this}makeScale(t,e){return this.set(t,0,0,0,e,0,0,0,1),this}equals(t){let e=this.elements,r=t.elements;for(let i=0;i<9;i++)if(e[i]!==r[i])return!1;return!0}fromArray(t,e=0){for(let r=0;r<9;r++)this.elements[r]=t[r+e];return this}toArray(t=[],e=0){let r=this.elements;return t[e]=r[0],t[e+1]=r[1],t[e+2]=r[2],t[e+3]=r[3],t[e+4]=r[4],t[e+5]=r[5],t[e+6]=r[6],t[e+7]=r[7],t[e+8]=r[8],t}clone(){return new this.constructor().fromArray(this.elements)}},hS=new Sr;function o_(n){for(let t=n.length-1;t>=0;--t)if(n[t]>=65535)return!0;return!1}var uk={Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array};function ny(n,t){return new uk[n](t)}function Fp(n){return document.createElementNS("http://www.w3.org/1999/xhtml",n)}function hk(n,t,e){return new Promise(function(r,i){function s(){switch(n.clientWaitSync(t,n.SYNC_FLUSH_COMMANDS_BIT,0)){case n.WAIT_FAILED:i();break;case n.TIMEOUT_EXPIRED:setTimeout(s,e);break;default:r()}}setTimeout(s,e)})}function Nc(n){return n<.04045?n*.0773993808:Math.pow(n*.9478672986+.0521327014,2.4)}function Oy(n){return n<.0031308?n*12.92:1.055*Math.pow(n,.41666)-.055}var dS={[Ao]:{[Np]:Nc},[Np]:{[Ao]:Oy}},gn={legacyMode:!0,get workingColorSpace(){return Np},set workingColorSpace(n){console.warn("THREE.ColorManagement: .workingColorSpace is readonly.")},convert:function(n,t,e){if(this.legacyMode||t===e||!t||!e)return n;if(dS[t]&&dS[t][e]!==void 0){let r=dS[t][e];return n.r=r(n.r),n.g=r(n.g),n.b=r(n.b),n}throw new Error("Unsupported color space conversion.")},fromWorkingColorSpace:function(n,t){return this.convert(n,this.workingColorSpace,t)},toWorkingColorSpace:function(n,t){return this.convert(n,t,this.workingColorSpace)}},a_={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074},Pi={r:0,g:0,b:0},Us={h:0,s:0,l:0},sy={h:0,s:0,l:0};function fS(n,t,e){return e<0&&(e+=1),e>1&&(e-=1),e<1/6?n+(t-n)*6*e:e<1/2?t:e<2/3?n+(t-n)*6*(2/3-e):n}function oy(n,t){return t.r=n.r,t.g=n.g,t.b=n.b,t}var Ge=class{constructor(t,e,r){return this.isColor=!0,this.r=1,this.g=1,this.b=1,e===void 0&&r===void 0?this.set(t):this.setRGB(t,e,r)}set(t){return t&&t.isColor?this.copy(t):typeof t=="number"?this.setHex(t):typeof t=="string"&&this.setStyle(t),this}setScalar(t){return this.r=t,this.g=t,this.b=t,this}setHex(t,e=Ao){return t=Math.floor(t),this.r=(t>>16&255)/255,this.g=(t>>8&255)/255,this.b=(t&255)/255,gn.toWorkingColorSpace(this,e),this}setRGB(t,e,r,i=gn.workingColorSpace){return this.r=t,this.g=e,this.b=r,gn.toWorkingColorSpace(this,i),this}setHSL(t,e,r,i=gn.workingColorSpace){if(t=Cw(t,1),e=yi(e,0,1),r=yi(r,0,1),e===0)this.r=this.g=this.b=r;else{let s=r<=.5?r*(1+e):r+e-r*e,o=2*r-s;this.r=fS(o,s,t+1/3),this.g=fS(o,s,t),this.b=fS(o,s,t-1/3)}return gn.toWorkingColorSpace(this,i),this}setStyle(t,e=Ao){function r(s){s!==void 0&&parseFloat(s)<1&&console.warn("THREE.Color: Alpha component of "+t+" will be ignored.")}let i;if(i=/^((?:rgb|hsl)a?)\(([^\)]*)\)/.exec(t)){let s,o=i[1],a=i[2];switch(o){case"rgb":case"rgba":if(s=/^\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(a))return this.r=Math.min(255,parseInt(s[1],10))/255,this.g=Math.min(255,parseInt(s[2],10))/255,this.b=Math.min(255,parseInt(s[3],10))/255,gn.toWorkingColorSpace(this,e),r(s[4]),this;if(s=/^\s*(\d+)\%\s*,\s*(\d+)\%\s*,\s*(\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(a))return this.r=Math.min(100,parseInt(s[1],10))/100,this.g=Math.min(100,parseInt(s[2],10))/100,this.b=Math.min(100,parseInt(s[3],10))/100,gn.toWorkingColorSpace(this,e),r(s[4]),this;break;case"hsl":case"hsla":if(s=/^\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\%\s*,\s*(\d*\.?\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(a)){let l=parseFloat(s[1])/360,c=parseFloat(s[2])/100,u=parseFloat(s[3])/100;return r(s[4]),this.setHSL(l,c,u,e)}break}}else if(i=/^\#([A-Fa-f\d]+)$/.exec(t)){let s=i[1],o=s.length;if(o===3)return this.r=parseInt(s.charAt(0)+s.charAt(0),16)/255,this.g=parseInt(s.charAt(1)+s.charAt(1),16)/255,this.b=parseInt(s.charAt(2)+s.charAt(2),16)/255,gn.toWorkingColorSpace(this,e),this;if(o===6)return this.r=parseInt(s.charAt(0)+s.charAt(1),16)/255,this.g=parseInt(s.charAt(2)+s.charAt(3),16)/255,this.b=parseInt(s.charAt(4)+s.charAt(5),16)/255,gn.toWorkingColorSpace(this,e),this}return t&&t.length>0?this.setColorName(t,e):this}setColorName(t,e=Ao){let r=a_[t.toLowerCase()];return r!==void 0?this.setHex(r,e):console.warn("THREE.Color: Unknown color "+t),this}clone(){return new this.constructor(this.r,this.g,this.b)}copy(t){return this.r=t.r,this.g=t.g,this.b=t.b,this}copySRGBToLinear(t){return this.r=Nc(t.r),this.g=Nc(t.g),this.b=Nc(t.b),this}copyLinearToSRGB(t){return this.r=Oy(t.r),this.g=Oy(t.g),this.b=Oy(t.b),this}convertSRGBToLinear(){return this.copySRGBToLinear(this),this}convertLinearToSRGB(){return this.copyLinearToSRGB(this),this}getHex(t=Ao){return gn.fromWorkingColorSpace(oy(this,Pi),t),yi(Pi.r*255,0,255)<<16^yi(Pi.g*255,0,255)<<8^yi(Pi.b*255,0,255)<<0}getHexString(t=Ao){return("000000"+this.getHex(t).toString(16)).slice(-6)}getHSL(t,e=gn.workingColorSpace){gn.fromWorkingColorSpace(oy(this,Pi),e);let r=Pi.r,i=Pi.g,s=Pi.b,o=Math.max(r,i,s),a=Math.min(r,i,s),l,c,u=(a+o)/2;if(a===o)l=0,c=0;else{let h=o-a;switch(c=u<=.5?h/(o+a):h/(2-o-a),o){case r:l=(i-s)/h+(i<s?6:0);break;case i:l=(s-r)/h+2;break;case s:l=(r-i)/h+4;break}l/=6}return t.h=l,t.s=c,t.l=u,t}getRGB(t,e=gn.workingColorSpace){return gn.fromWorkingColorSpace(oy(this,Pi),e),t.r=Pi.r,t.g=Pi.g,t.b=Pi.b,t}getStyle(t=Ao){return gn.fromWorkingColorSpace(oy(this,Pi),t),t!==Ao?`color(${t} ${Pi.r} ${Pi.g} ${Pi.b})`:`rgb(${Pi.r*255|0},${Pi.g*255|0},${Pi.b*255|0})`}offsetHSL(t,e,r){return this.getHSL(Us),Us.h+=t,Us.s+=e,Us.l+=r,this.setHSL(Us.h,Us.s,Us.l),this}add(t){return this.r+=t.r,this.g+=t.g,this.b+=t.b,this}addColors(t,e){return this.r=t.r+e.r,this.g=t.g+e.g,this.b=t.b+e.b,this}addScalar(t){return this.r+=t,this.g+=t,this.b+=t,this}sub(t){return this.r=Math.max(0,this.r-t.r),this.g=Math.max(0,this.g-t.g),this.b=Math.max(0,this.b-t.b),this}multiply(t){return this.r*=t.r,this.g*=t.g,this.b*=t.b,this}multiplyScalar(t){return this.r*=t,this.g*=t,this.b*=t,this}lerp(t,e){return this.r+=(t.r-this.r)*e,this.g+=(t.g-this.g)*e,this.b+=(t.b-this.b)*e,this}lerpColors(t,e,r){return this.r=t.r+(e.r-t.r)*r,this.g=t.g+(e.g-t.g)*r,this.b=t.b+(e.b-t.b)*r,this}lerpHSL(t,e){this.getHSL(Us),t.getHSL(sy);let r=Dp(Us.h,sy.h,e),i=Dp(Us.s,sy.s,e),s=Dp(Us.l,sy.l,e);return this.setHSL(r,i,s),this}equals(t){return t.r===this.r&&t.g===this.g&&t.b===this.b}fromArray(t,e=0){return this.r=t[e],this.g=t[e+1],this.b=t[e+2],this}toArray(t=[],e=0){return t[e]=this.r,t[e+1]=this.g,t[e+2]=this.b,t}fromBufferAttribute(t,e){return this.r=t.getX(e),this.g=t.getY(e),this.b=t.getZ(e),this}toJSON(){return this.getHex()}*[Symbol.iterator](){yield this.r,yield this.g,yield this.b}};Ge.NAMES=a_;var Lu,Vy=class{static getDataURL(t){if(/^data:/i.test(t.src)||typeof HTMLCanvasElement>"u")return t.src;let e;if(t instanceof HTMLCanvasElement)e=t;else{Lu===void 0&&(Lu=Fp("canvas")),Lu.width=t.width,Lu.height=t.height;let r=Lu.getContext("2d");t instanceof ImageData?r.putImageData(t,0,0):r.drawImage(t,0,0,t.width,t.height),e=Lu}return e.width>2048||e.height>2048?(console.warn("THREE.ImageUtils.getDataURL: Image converted to jpg for performance reasons",t),e.toDataURL("image/jpeg",.6)):e.toDataURL("image/png")}static sRGBToLinear(t){if(typeof HTMLImageElement<"u"&&t instanceof HTMLImageElement||typeof HTMLCanvasElement<"u"&&t instanceof HTMLCanvasElement||typeof ImageBitmap<"u"&&t instanceof ImageBitmap){let e=Fp("canvas");e.width=t.width,e.height=t.height;let r=e.getContext("2d");r.drawImage(t,0,0,t.width,t.height);let i=r.getImageData(0,0,t.width,t.height),s=i.data;for(let o=0;o<s.length;o++)s[o]=Nc(s[o]/255)*255;return r.putImageData(i,0,0),e}else if(t.data){let e=t.data.slice(0);for(let r=0;r<e.length;r++)e instanceof Uint8Array||e instanceof Uint8ClampedArray?e[r]=Math.floor(Nc(e[r]/255)*255):e[r]=Nc(e[r]);return{data:e,width:t.width,height:t.height}}else return console.warn("THREE.ImageUtils.sRGBToLinear(): Unsupported image type. No color space conversion applied."),t}},Uy=class{constructor(t=null){this.isSource=!0,this.uuid=fs(),this.data=t,this.version=0}set needsUpdate(t){t===!0&&this.version++}toJSON(t){let e=t===void 0||typeof t=="string";if(!e&&t.images[this.uuid]!==void 0)return t.images[this.uuid];let r={uuid:this.uuid,url:""},i=this.data;if(i!==null){let s;if(Array.isArray(i)){s=[];for(let o=0,a=i.length;o<a;o++)i[o].isDataTexture?s.push(pS(i[o].image)):s.push(pS(i[o]))}else s=pS(i);r.url=s}return e||(t.images[this.uuid]=r),r}};function pS(n){return typeof HTMLImageElement<"u"&&n instanceof HTMLImageElement||typeof HTMLCanvasElement<"u"&&n instanceof HTMLCanvasElement||typeof ImageBitmap<"u"&&n instanceof ImageBitmap?Vy.getDataURL(n):n.data?{data:Array.from(n.data),width:n.width,height:n.height,type:n.data.constructor.name}:(console.warn("THREE.Texture: Unable to serialize Texture."),{})}var dk=0,Zt=class extends ar{constructor(t=Zt.DEFAULT_IMAGE,e=Zt.DEFAULT_MAPPING,r=tr,i=tr,s=it,o=Bc,a=br,l=Lr,c=Zt.DEFAULT_ANISOTROPY,u=xn){super(),this.isTexture=!0,Object.defineProperty(this,"id",{value:dk++}),this.uuid=fs(),this.name="",this.source=new Uy(t),this.mipmaps=[],this.mapping=e,this.wrapS=r,this.wrapT=i,this.magFilter=s,this.minFilter=o,this.anisotropy=c,this.format=a,this.internalFormat=null,this.type=l,this.offset=new U(0,0),this.repeat=new U(1,1),this.center=new U(0,0),this.rotation=0,this.matrixAutoUpdate=!0,this.matrix=new Sr,this.generateMipmaps=!0,this.premultiplyAlpha=!1,this.flipY=!0,this.unpackAlignment=4,this.encoding=u,this.userData={},this.version=0,this.onUpdate=null,this.isRenderTargetTexture=!1,this.needsPMREMUpdate=!1}get image(){return this.source.data}set image(t){this.source.data=t}updateMatrix(){this.matrix.setUvTransform(this.offset.x,this.offset.y,this.repeat.x,this.repeat.y,this.rotation,this.center.x,this.center.y)}clone(){return new this.constructor().copy(this)}copy(t){return this.name=t.name,this.source=t.source,this.mipmaps=t.mipmaps.slice(0),this.mapping=t.mapping,this.wrapS=t.wrapS,this.wrapT=t.wrapT,this.magFilter=t.magFilter,this.minFilter=t.minFilter,this.anisotropy=t.anisotropy,this.format=t.format,this.internalFormat=t.internalFormat,this.type=t.type,this.offset.copy(t.offset),this.repeat.copy(t.repeat),this.center.copy(t.center),this.rotation=t.rotation,this.matrixAutoUpdate=t.matrixAutoUpdate,this.matrix.copy(t.matrix),this.generateMipmaps=t.generateMipmaps,this.premultiplyAlpha=t.premultiplyAlpha,this.flipY=t.flipY,this.unpackAlignment=t.unpackAlignment,this.encoding=t.encoding,this.userData=JSON.parse(JSON.stringify(t.userData)),this.needsUpdate=!0,this}toJSON(t){let e=t===void 0||typeof t=="string";if(!e&&t.textures[this.uuid]!==void 0)return t.textures[this.uuid];let r={metadata:{version:4.5,type:"Texture",generator:"Texture.toJSON"},uuid:this.uuid,name:this.name,image:this.source.toJSON(t).uuid,mapping:this.mapping,repeat:[this.repeat.x,this.repeat.y],offset:[this.offset.x,this.offset.y],center:[this.center.x,this.center.y],rotation:this.rotation,wrap:[this.wrapS,this.wrapT],format:this.format,type:this.type,encoding:this.encoding,minFilter:this.minFilter,magFilter:this.magFilter,anisotropy:this.anisotropy,flipY:this.flipY,generateMipmaps:this.generateMipmaps,premultiplyAlpha:this.premultiplyAlpha,unpackAlignment:this.unpackAlignment};return Object.keys(this.userData).length>0&&(r.userData=this.userData),e||(t.textures[this.uuid]=r),r}dispose(){this.dispatchEvent({type:"dispose"})}transformUv(t){if(this.mapping!==r_)return t;if(t.applyMatrix3(this.matrix),t.x<0||t.x>1)switch(this.wrapS){case Hs:t.x=t.x-Math.floor(t.x);break;case tr:t.x=t.x<0?0:1;break;case jS:Math.abs(Math.floor(t.x)%2)===1?t.x=Math.ceil(t.x)-t.x:t.x=t.x-Math.floor(t.x);break}if(t.y<0||t.y>1)switch(this.wrapT){case Hs:t.y=t.y-Math.floor(t.y);break;case tr:t.y=t.y<0?0:1;break;case jS:Math.abs(Math.floor(t.y)%2)===1?t.y=Math.ceil(t.y)-t.y:t.y=t.y-Math.floor(t.y);break}return this.flipY&&(t.y=1-t.y),t}set needsUpdate(t){t===!0&&(this.version++,this.source.needsUpdate=!0)}};Zt.DEFAULT_IMAGE=null;Zt.DEFAULT_MAPPING=r_;Zt.DEFAULT_ANISOTROPY=1;var Ze=class{constructor(t=0,e=0,r=0,i=1){Ze.prototype.isVector4=!0,this.x=t,this.y=e,this.z=r,this.w=i}get width(){return this.z}set width(t){this.z=t}get height(){return this.w}set height(t){this.w=t}set(t,e,r,i){return this.x=t,this.y=e,this.z=r,this.w=i,this}setScalar(t){return this.x=t,this.y=t,this.z=t,this.w=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setZ(t){return this.z=t,this}setW(t){return this.w=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;case 2:this.z=e;break;case 3:this.w=e;break;default:throw new Error("index is out of range: "+t)}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;case 2:return this.z;case 3:return this.w;default:throw new Error("index is out of range: "+t)}}clone(){return new this.constructor(this.x,this.y,this.z,this.w)}copy(t){return this.x=t.x,this.y=t.y,this.z=t.z,this.w=t.w!==void 0?t.w:1,this}add(t){return this.x+=t.x,this.y+=t.y,this.z+=t.z,this.w+=t.w,this}addScalar(t){return this.x+=t,this.y+=t,this.z+=t,this.w+=t,this}addVectors(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this.z=t.z+e.z,this.w=t.w+e.w,this}addScaledVector(t,e){return this.x+=t.x*e,this.y+=t.y*e,this.z+=t.z*e,this.w+=t.w*e,this}sub(t){return this.x-=t.x,this.y-=t.y,this.z-=t.z,this.w-=t.w,this}subScalar(t){return this.x-=t,this.y-=t,this.z-=t,this.w-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this.z=t.z-e.z,this.w=t.w-e.w,this}multiply(t){return this.x*=t.x,this.y*=t.y,this.z*=t.z,this.w*=t.w,this}multiplyScalar(t){return this.x*=t,this.y*=t,this.z*=t,this.w*=t,this}applyMatrix4(t){let e=this.x,r=this.y,i=this.z,s=this.w,o=t.elements;return this.x=o[0]*e+o[4]*r+o[8]*i+o[12]*s,this.y=o[1]*e+o[5]*r+o[9]*i+o[13]*s,this.z=o[2]*e+o[6]*r+o[10]*i+o[14]*s,this.w=o[3]*e+o[7]*r+o[11]*i+o[15]*s,this}divideScalar(t){return this.multiplyScalar(1/t)}setAxisAngleFromQuaternion(t){this.w=2*Math.acos(t.w);let e=Math.sqrt(1-t.w*t.w);return e<1e-4?(this.x=1,this.y=0,this.z=0):(this.x=t.x/e,this.y=t.y/e,this.z=t.z/e),this}setAxisAngleFromRotationMatrix(t){let e,r,i,s,l=t.elements,c=l[0],u=l[4],h=l[8],d=l[1],f=l[5],p=l[9],m=l[2],g=l[6],y=l[10];if(Math.abs(u-d)<.01&&Math.abs(h-m)<.01&&Math.abs(p-g)<.01){if(Math.abs(u+d)<.1&&Math.abs(h+m)<.1&&Math.abs(p+g)<.1&&Math.abs(c+f+y-3)<.1)return this.set(1,0,0,0),this;e=Math.PI;let v=(c+1)/2,b=(f+1)/2,w=(y+1)/2,A=(u+d)/4,T=(h+m)/4,S=(p+g)/4;return v>b&&v>w?v<.01?(r=0,i=.707106781,s=.707106781):(r=Math.sqrt(v),i=A/r,s=T/r):b>w?b<.01?(r=.707106781,i=0,s=.707106781):(i=Math.sqrt(b),r=A/i,s=S/i):w<.01?(r=.707106781,i=.707106781,s=0):(s=Math.sqrt(w),r=T/s,i=S/s),this.set(r,i,s,e),this}let x=Math.sqrt((g-p)*(g-p)+(h-m)*(h-m)+(d-u)*(d-u));return Math.abs(x)<.001&&(x=1),this.x=(g-p)/x,this.y=(h-m)/x,this.z=(d-u)/x,this.w=Math.acos((c+f+y-1)/2),this}min(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this.z=Math.min(this.z,t.z),this.w=Math.min(this.w,t.w),this}max(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this.z=Math.max(this.z,t.z),this.w=Math.max(this.w,t.w),this}clamp(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this.z=Math.max(t.z,Math.min(e.z,this.z)),this.w=Math.max(t.w,Math.min(e.w,this.w)),this}clampScalar(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this.z=Math.max(t,Math.min(e,this.z)),this.w=Math.max(t,Math.min(e,this.w)),this}clampLength(t,e){let r=this.length();return this.divideScalar(r||1).multiplySc