@splinetool/runtime
Version:
Spline is a collaborative design platform for creating production-ready interactive experiences in multiple dimensions. © 2024 Spline, Inc.
2 lines • 2 MB
JavaScript
"use strict";var tV=Object.create;var np=Object.defineProperty;var rV=Object.getOwnPropertyDescriptor;var iV=Object.getOwnPropertyNames;var nV=Object.getPrototypeOf,sV=Object.prototype.hasOwnProperty;var oV=(n,t,e)=>t in n?np(n,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):n[t]=e;var mc=(n,t)=>()=>(t||n((t={exports:{}}).exports,t),t.exports),XM=(n,t)=>{for(var e in t)np(n,e,{get:t[e],enumerable:!0})},YM=(n,t,e,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of iV(t))!sV.call(n,i)&&i!==e&&np(n,i,{get:()=>t[i],enumerable:!(r=rV(t,i))||r.enumerable});return n};var Za=(n,t,e)=>(e=n!=null?tV(nV(n)):{},YM(t||!n||!n.__esModule?np(e,"default",{value:n,enumerable:!0}):e,n)),aV=n=>YM(np({},"__esModule",{value:!0}),n);var gc=(n,t,e)=>(oV(n,typeof t!="symbol"?t+"":t,e),e);var RO=mc((RA,OO)=>{(function(n,t){typeof RA=="object"?OO.exports=t():typeof define=="function"&&define.amd?define(t):n.Alea=t()})(RA,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 BA=mc((U0,VO)=>{(function(n,t){typeof U0=="object"&&typeof VO<"u"?t(U0):typeof define=="function"&&define.amd?define(["exports"],t):t((n=typeof globalThis<"u"?globalThis:n||self).SVDJS={})})(U0,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 u3=mc((gx,c3)=>{"use strict";Object.defineProperty(gx,"__esModule",{value:!0});gx.default=vK;function vK(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)}c3.exports=gx.default});var d3=mc((yx,h3)=>{"use strict";Object.defineProperty(yx,"__esModule",{value:!0});yx.default=xK;function xK(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()}h3.exports=yx.default});var uB=mc((kVe,cB)=>{"use strict";function fJ(n,t){function e(){this.constructor=n}e.prototype=t.prototype,n.prototype=new e}function cu(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,cu)}fJ(cu,Error);cu.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 pJ(n,t){t=t!==void 0?t:{};var e={},r={svg_path:He},i=He,s=function(D){if(!D)return[];for(var R=[],Y=0;Y<D.length;Y++)R=R.concat.apply(R,D[Y]);var z=R[0];return z&&z.code=="m"&&(delete z.relative,z.code="M"),R},o=function(D,R){return Ei(D,R)},a=/^[Mm]/,l=Be(["M","m"],!1,!1),c=function(D,R,Y){var z=di(D,[R]);return Y&&(z=z.concat(di(D=="M"?"L":"l",Y[1]))),z},u=/^[Zz]/,h=Be(["Z","z"],!1,!1),d=function(){return di("Z")},f=/^[Ll]/,p=Be(["L","l"],!1,!1),m=function(D,R){return di(D,R)},g=/^[Hh]/,y=Be(["H","h"],!1,!1),x=function(D,R){return di(D,R.map(function(Y){return{x:Y}}))},v=/^[Vv]/,b=Be(["V","v"],!1,!1),w=function(D,R){return di(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),U=/^[Aa]/,H=Be(["A","a"],!1,!1),X=function(D,R,Y,z,ee,_e){return{rx:D,ry:R,xAxisRotation:Y,largeArc:z,sweep:ee,x:_e.x,y:_e.y}},q=function(D,R){return{x:D,y:R}},Z=function(D){return D*1},G=function(D){return D.join("")*1},K=/^[01]/,te=Be(["0","1"],!1,!1),$=function(D){return D=="1"},W=function(){return""},oe=",",ie=je(",",!1),re=function(D){return D.join("")},J=".",Ee=je(".",!1),xe=/^[eE]/,de=Be(["e","E"],!1,!1),De=/^[+\-]/,Pe=Be(["+","-"],!1,!1),ke=/^[0-9]/,ze=Be([["0","9"]],!1,!1),Ve=function(D){return D.join("")},Re=/^[ \t\n\r]/,Ye=Be([" "," ",`
`,"\r"],!1,!1),F=0,N=0,B=[{line:1,column:1}],ae=0,ye=[],me=0,Le;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 Ne(){return n.substring(N,F)}function Oe(){return Cr(N,F)}function pe(D,R){throw R=R!==void 0?R:Cr(N,F),Me([zt(D)],n.substring(N,F),R)}function nt(D,R){throw R=R!==void 0?R:Cr(N,F),ve(D,R)}function je(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 zt(D){return{type:"other",description:D}}function fr(D){var R=B[D],Y;if(R)return R;for(Y=D-1;!B[Y];)Y--;for(R=B[Y],R={line:R.line,column:R.column};Y<D;)n.charCodeAt(Y)===10?(R.line++,R.column=1):R.column++,Y++;return B[D]=R,R}function Cr(D,R){var Y=fr(D),z=fr(R);return{start:{offset:D,line:Y.line,column:Y.column},end:{offset:R,line:z.line,column:z.column}}}function Q(D){F<ae||(F>ae&&(ae=F,ye=[]),ye.push(D))}function ve(D,R){return new cu(D,null,null,R)}function Me(D,R,Y){return new cu(cu.buildMessage(D,R),D,R,Y)}function He(){var D,R,Y,z,ee;for(D=F,R=[],Y=Pt();Y!==e;)R.push(Y),Y=Pt();if(R!==e)if(Y=We(),Y===e&&(Y=null),Y!==e){for(z=[],ee=Pt();ee!==e;)z.push(ee),ee=Pt();z!==e?(N=D,R=s(Y),D=R):(F=D,D=e)}else F=D,D=e;else F=D,D=e;return D}function We(){var D,R,Y,z,ee,_e;if(D=F,R=Dt(),R!==e){for(Y=[],z=F,ee=[],_e=Pt();_e!==e;)ee.push(_e),_e=Pt();for(ee!==e?(_e=Dt(),_e!==e?(ee=[ee,_e],z=ee):(F=z,z=e)):(F=z,z=e);z!==e;){for(Y.push(z),z=F,ee=[],_e=Pt();_e!==e;)ee.push(_e),_e=Pt();ee!==e?(_e=Dt(),_e!==e?(ee=[ee,_e],z=ee):(F=z,z=e)):(F=z,z=e)}Y!==e?(N=D,R=o(R,Y),D=R):(F=D,D=e)}else F=D,D=e;return D}function Dt(){var D,R,Y,z,ee,_e;if(D=F,R=kr(),R!==e){for(Y=[],z=F,ee=[],_e=Pt();_e!==e;)ee.push(_e),_e=Pt();for(ee!==e?(_e=zr(),_e!==e?(ee=[ee,_e],z=ee):(F=z,z=e)):(F=z,z=e);z!==e;){for(Y.push(z),z=F,ee=[],_e=Pt();_e!==e;)ee.push(_e),_e=Pt();ee!==e?(_e=zr(),_e!==e?(ee=[ee,_e],z=ee):(F=z,z=e)):(F=z,z=e)}Y!==e?(N=D,R=o(R,Y),D=R):(F=D,D=e)}else F=D,D=e;return D}function zr(){var D;return D=sa(),D===e&&(D=Pr(),D===e&&(D=Pn(),D===e&&(D=T1(),D===e&&(D=M1(),D===e&&(D=le(),D===e&&(D=be(),D===e&&(D=bt(),D===e&&(D=kt())))))))),D}function kr(){var D,R,Y,z,ee,_e,Su;if(D=F,a.test(n.charAt(F))?(R=n.charAt(F),F++):(R=e,me===0&&Q(l)),R!==e){for(Y=[],z=Pt();z!==e;)Y.push(z),z=Pt();Y!==e?(z=Rt(),z!==e?(ee=F,_e=vt(),_e===e&&(_e=null),_e!==e?(Su=is(),Su!==e?(_e=[_e,Su],ee=_e):(F=ee,ee=e)):(F=ee,ee=e),ee===e&&(ee=null),ee!==e?(N=D,R=c(R,z,ee),D=R):(F=D,D=e)):(F=D,D=e)):(F=D,D=e)}else F=D,D=e;return D}function sa(){var D,R;return D=F,u.test(n.charAt(F))?(R=n.charAt(F),F++):(R=e,me===0&&Q(h)),R!==e&&(N=D,R=d()),D=R,D}function Pr(){var D,R,Y,z;if(D=F,f.test(n.charAt(F))?(R=n.charAt(F),F++):(R=e,me===0&&Q(p)),R!==e){for(Y=[],z=Pt();z!==e;)Y.push(z),z=Pt();Y!==e?(z=is(),z!==e?(N=D,R=m(R,z),D=R):(F=D,D=e)):(F=D,D=e)}else F=D,D=e;return D}function is(){var D,R,Y,z,ee,_e;if(D=F,R=Rt(),R!==e){for(Y=[],z=F,ee=vt(),ee===e&&(ee=null),ee!==e?(_e=Rt(),_e!==e?(ee=[ee,_e],z=ee):(F=z,z=e)):(F=z,z=e);z!==e;)Y.push(z),z=F,ee=vt(),ee===e&&(ee=null),ee!==e?(_e=Rt(),_e!==e?(ee=[ee,_e],z=ee):(F=z,z=e)):(F=z,z=e);Y!==e?(N=D,R=o(R,Y),D=R):(F=D,D=e)}else F=D,D=e;return D}function Pn(){var D,R,Y,z;if(D=F,g.test(n.charAt(F))?(R=n.charAt(F),F++):(R=e,me===0&&Q(y)),R!==e){for(Y=[],z=Pt();z!==e;)Y.push(z),z=Pt();Y!==e?(z=ip(),z!==e?(N=D,R=x(R,z),D=R):(F=D,D=e)):(F=D,D=e)}else F=D,D=e;return D}function ip(){var D,R,Y,z,ee,_e;if(D=F,R=nn(),R!==e){for(Y=[],z=F,ee=vt(),ee===e&&(ee=null),ee!==e?(_e=nn(),_e!==e?(ee=[ee,_e],z=ee):(F=z,z=e)):(F=z,z=e);z!==e;)Y.push(z),z=F,ee=vt(),ee===e&&(ee=null),ee!==e?(_e=nn(),_e!==e?(ee=[ee,_e],z=ee):(F=z,z=e)):(F=z,z=e);Y!==e?(N=D,R=o(R,Y),D=R):(F=D,D=e)}else F=D,D=e;return D}function T1(){var D,R,Y,z;if(D=F,v.test(n.charAt(F))?(R=n.charAt(F),F++):(R=e,me===0&&Q(b)),R!==e){for(Y=[],z=Pt();z!==e;)Y.push(z),z=Pt();Y!==e?(z=ip(),z!==e?(N=D,R=w(R,z),D=R):(F=D,D=e)):(F=D,D=e)}else F=D,D=e;return D}function M1(){var D,R,Y,z;if(D=F,A.test(n.charAt(F))?(R=n.charAt(F),F++):(R=e,me===0&&Q(T)),R!==e){for(Y=[],z=Pt();z!==e;)Y.push(z),z=Pt();Y!==e?(z=C1(),z!==e?(N=D,R=m(R,z),D=R):(F=D,D=e)):(F=D,D=e)}else F=D,D=e;return D}function C1(){var D,R,Y,z,ee,_e;if(D=F,R=k(),R!==e){for(Y=[],z=F,ee=vt(),ee===e&&(ee=null),ee!==e?(_e=k(),_e!==e?(ee=[ee,_e],z=ee):(F=z,z=e)):(F=z,z=e);z!==e;)Y.push(z),z=F,ee=vt(),ee===e&&(ee=null),ee!==e?(_e=k(),_e!==e?(ee=[ee,_e],z=ee):(F=z,z=e)):(F=z,z=e);Y!==e?(N=D,R=o(R,Y),D=R):(F=D,D=e)}else F=D,D=e;return D}function k(){var D,R,Y,z,ee,_e;return D=F,R=Rt(),R!==e?(Y=vt(),Y===e&&(Y=null),Y!==e?(z=Rt(),z!==e?(ee=vt(),ee===e&&(ee=null),ee!==e?(_e=Rt(),_e!==e?(N=D,R=S(R,z,_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,z;if(D=F,M.test(n.charAt(F))?(R=n.charAt(F),F++):(R=e,me===0&&Q(C)),R!==e){for(Y=[],z=Pt();z!==e;)Y.push(z),z=Pt();Y!==e?(z=ge(),z!==e?(N=D,R=m(R,z),D=R):(F=D,D=e)):(F=D,D=e)}else F=D,D=e;return D}function ge(){var D,R,Y,z,ee,_e;if(D=F,R=ne(),R!==e){for(Y=[],z=F,ee=vt(),ee===e&&(ee=null),ee!==e?(_e=ne(),_e!==e?(ee=[ee,_e],z=ee):(F=z,z=e)):(F=z,z=e);z!==e;)Y.push(z),z=F,ee=vt(),ee===e&&(ee=null),ee!==e?(_e=ne(),_e!==e?(ee=[ee,_e],z=ee):(F=z,z=e)):(F=z,z=e);Y!==e?(N=D,R=o(R,Y),D=R):(F=D,D=e)}else F=D,D=e;return D}function ne(){var D,R,Y,z;return D=F,R=Rt(),R!==e?(Y=vt(),Y===e&&(Y=null),Y!==e?(z=Rt(),z!==e?(N=D,R=P(R,z),D=R):(F=D,D=e)):(F=D,D=e)):(F=D,D=e),D}function be(){var D,R,Y,z;if(D=F,_.test(n.charAt(F))?(R=n.charAt(F),F++):(R=e,me===0&&Q(I)),R!==e){for(Y=[],z=Pt();z!==e;)Y.push(z),z=Pt();Y!==e?(z=st(),z!==e?(N=D,R=m(R,z),D=R):(F=D,D=e)):(F=D,D=e)}else F=D,D=e;return D}function st(){var D,R,Y,z,ee,_e;if(D=F,R=ft(),R!==e){for(Y=[],z=F,ee=vt(),ee===e&&(ee=null),ee!==e?(_e=ft(),_e!==e?(ee=[ee,_e],z=ee):(F=z,z=e)):(F=z,z=e);z!==e;)Y.push(z),z=F,ee=vt(),ee===e&&(ee=null),ee!==e?(_e=ft(),_e!==e?(ee=[ee,_e],z=ee):(F=z,z=e)):(F=z,z=e);Y!==e?(N=D,R=o(R,Y),D=R):(F=D,D=e)}else F=D,D=e;return D}function ft(){var D,R,Y,z;return D=F,R=Rt(),R!==e?(Y=vt(),Y===e&&(Y=null),Y!==e?(z=Rt(),z!==e?(N=D,R=O(R,z),D=R):(F=D,D=e)):(F=D,D=e)):(F=D,D=e),D}function bt(){var D,R,Y,z;if(D=F,L.test(n.charAt(F))?(R=n.charAt(F),F++):(R=e,me===0&&Q(j)),R!==e){for(Y=[],z=Pt();z!==e;)Y.push(z),z=Pt();Y!==e?(z=wt(),z!==e?(N=D,R=m(R,z),D=R):(F=D,D=e)):(F=D,D=e)}else F=D,D=e;return D}function wt(){var D,R,Y,z,ee,_e;if(D=F,R=Rt(),R!==e){for(Y=[],z=F,ee=vt(),ee===e&&(ee=null),ee!==e?(_e=Rt(),_e!==e?(ee=[ee,_e],z=ee):(F=z,z=e)):(F=z,z=e);z!==e;)Y.push(z),z=F,ee=vt(),ee===e&&(ee=null),ee!==e?(_e=Rt(),_e!==e?(ee=[ee,_e],z=ee):(F=z,z=e)):(F=z,z=e);Y!==e?(N=D,R=o(R,Y),D=R):(F=D,D=e)}else F=D,D=e;return D}function kt(){var D,R,Y,z;if(D=F,U.test(n.charAt(F))?(R=n.charAt(F),F++):(R=e,me===0&&Q(H)),R!==e){for(Y=[],z=Pt();z!==e;)Y.push(z),z=Pt();Y!==e?(z=Ot(),z!==e?(N=D,R=m(R,z),D=R):(F=D,D=e)):(F=D,D=e)}else F=D,D=e;return D}function Ot(){var D,R,Y,z,ee,_e;if(D=F,R=At(),R!==e){for(Y=[],z=F,ee=vt(),ee===e&&(ee=null),ee!==e?(_e=At(),_e!==e?(ee=[ee,_e],z=ee):(F=z,z=e)):(F=z,z=e);z!==e;)Y.push(z),z=F,ee=vt(),ee===e&&(ee=null),ee!==e?(_e=At(),_e!==e?(ee=[ee,_e],z=ee):(F=z,z=e)):(F=z,z=e);Y!==e?(N=D,R=o(R,Y),D=R):(F=D,D=e)}else F=D,D=e;return D}function At(){var D,R,Y,z,ee,_e,Su,P1,Ng,_1,Fg,I1;return D=F,R=Ai(),R!==e?(Y=vt(),Y===e&&(Y=null),Y!==e?(z=Ai(),z!==e?(ee=vt(),ee===e&&(ee=null),ee!==e?(_e=nn(),_e!==e?(Su=vt(),Su!==e?(P1=fo(),P1!==e?(Ng=vt(),Ng===e&&(Ng=null),Ng!==e?(_1=fo(),_1!==e?(Fg=vt(),Fg===e&&(Fg=null),Fg!==e?(I1=Rt(),I1!==e?(N=D,R=X(R,z,_e,P1,_1,I1),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 Rt(){var D,R,Y,z;return D=F,R=nn(),R!==e?(Y=vt(),Y===e&&(Y=null),Y!==e?(z=nn(),z!==e?(N=D,R=q(R,z),D=R):(F=D,D=e)):(F=D,D=e)):(F=D,D=e),D}function Ai(){var D,R;return D=F,R=vu(),R===e&&(R=Hn()),R!==e&&(N=D,R=Z(R)),D=R,D}function nn(){var D,R,Y,z;return D=F,R=F,Y=xu(),Y===e&&(Y=null),Y!==e?(z=vu(),z!==e?(Y=[Y,z],R=Y):(F=R,R=e)):(F=R,R=e),R===e&&(R=F,Y=xu(),Y===e&&(Y=null),Y!==e?(z=Hn(),z!==e?(Y=[Y,z],R=Y):(F=R,R=e)):(F=R,R=e)),R!==e&&(N=D,R=G(R)),D=R,D}function fo(){var D,R;return D=F,K.test(n.charAt(F))?(R=n.charAt(F),F++):(R=e,me===0&&Q(te)),R!==e&&(N=D,R=$(R)),D=R,D}function vt(){var D,R,Y,z,ee;if(D=F,R=[],Y=Pt(),Y!==e)for(;Y!==e;)R.push(Y),Y=Pt();else R=e;if(R!==e)if(Y=Nt(),Y===e&&(Y=null),Y!==e){for(z=[],ee=Pt();ee!==e;)z.push(ee),ee=Pt();z!==e?(R=[R,Y,z],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=Nt(),Y!==e){for(z=[],ee=Pt();ee!==e;)z.push(ee),ee=Pt();z!==e?(Y=[Y,z],R=Y):(F=R,R=e)}else F=R,R=e;R!==e&&(N=D,R=W()),D=R}return D}function Nt(){var D;return n.charCodeAt(F)===44?(D=oe,F++):(D=e,me===0&&Q(ie)),D}function vu(){var D,R,Y,z;return D=F,R=F,Y=hi(),Y!==e?(z=po(),z===e&&(z=null),z!==e?(Y=[Y,z],R=Y):(F=R,R=e)):(F=R,R=e),R===e&&(R=F,Y=Hn(),Y!==e?(z=po(),z!==e?(Y=[Y,z],R=Y):(F=R,R=e)):(F=R,R=e)),R!==e&&(N=D,R=re(R)),D=R,D}function hi(){var D,R,Y,z,ee;return D=F,R=F,Y=Hn(),Y===e&&(Y=null),Y!==e?(n.charCodeAt(F)===46?(z=J,F++):(z=e,me===0&&Q(Ee)),z!==e?(ee=Hn(),ee!==e?(Y=[Y,z,ee],R=Y):(F=R,R=e)):(F=R,R=e)):(F=R,R=e),R===e&&(R=F,Y=Hn(),Y!==e?(n.charCodeAt(F)===46?(z=J,F++):(z=e,me===0&&Q(Ee)),z!==e?(Y=[Y,z],R=Y):(F=R,R=e)):(F=R,R=e)),R!==e&&(N=D,R=re(R)),D=R,D}function po(){var D,R,Y,z,ee;return D=F,R=F,xe.test(n.charAt(F))?(Y=n.charAt(F),F++):(Y=e,me===0&&Q(de)),Y!==e?(z=xu(),z===e&&(z=null),z!==e?(ee=Hn(),ee!==e?(Y=[Y,z,ee],R=Y):(F=R,R=e)):(F=R,R=e)):(F=R,R=e),R!==e&&(N=D,R=re(R)),D=R,D}function xu(){var D;return De.test(n.charAt(F))?(D=n.charAt(F),F++):(D=e,me===0&&Q(Pe)),D}function Hn(){var D,R,Y;if(D=F,R=[],ke.test(n.charAt(F))?(Y=n.charAt(F),F++):(Y=e,me===0&&Q(ze)),Y!==e)for(;Y!==e;)R.push(Y),ke.test(n.charAt(F))?(Y=n.charAt(F),F++):(Y=e,me===0&&Q(ze));else R=e;return R!==e&&(N=D,R=Ve(R)),D=R,D}function Pt(){var D,R;return D=F,Re.test(n.charAt(F))?(R=n.charAt(F),F++):(R=e,me===0&&Q(Ye)),R!==e&&(N=D,R=W()),D=R,D}function Ei(D,R){if(!R)return[D];for(var Y=[D],z=0,ee=R.length;z<ee;z++)Y[z+1]=R[z][1];return Y}var ns={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 bu in ns)ns[bu.toUpperCase()]=ns[bu];function di(D,R){R||(R=[{}]);for(var Y=R.length;Y--;){var z={code:D,command:ns[D]};D==D.toLowerCase()&&(z.relative=!0);for(var ee in R[Y])z[ee]=R[Y][ee];R[Y]=z}return R}if(Le=i(),Le!==e&&F===n.length)return Le;throw Le!==e&&F<n.length&&Q(ot()),Me(ye,ae<n.length?n.charAt(ae):null,ae<n.length?Cr(ae,ae+1):Cr(ae,ae))}cB.exports={SyntaxError:cu,parse:pJ}});var ET=mc((GVe,hB)=>{var hb=uB().parse;hb.parseSVG=hb;hb.makeAbsolute=mJ;hB.exports=hb;function mJ(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 JF=mc((nKe,ZF)=>{ZF.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 Qee={};XM(Qee,{Application:()=>qM,Easing:()=>Yh});module.exports=aV(Qee);var ma="149";var Qn={ROTATE:0,PAN:1,DOLLY_PAN:2,DOLLY_ROTATE:3},lV=0,KM=1,cV=2;var jy=1,uV=2,pp=3,Xn=0,gi=1,mi=2;var tr=0,il=1,QM=2,ZM=3,JM=4,hV=5,Nu=100,dV=101,fV=102,$M=103,eC=104,pV=200,mV=201,gV=202,yV=203,MP=204,CP=205,vV=206,xV=207,bV=208,SV=209,wV=210,AV=0,EV=1,TV=2,pS=3,MV=4,CV=5,PV=6,_V=7,PP=0,IV=1,DV=2,Bs=0,OV=1,RV=2,LV=3,BV=4,NV=5,_P=300,sl=301,ol=302,mS=303,gS=304,ah=306,Ns=1e3,Jt=1001,yS=1002,yt=1003,tC=1004;var D1=1005;var it=1006,FV=1007;var Ec=1008;var Or=1009,VV=1010,UV=1011,IP=1012,zV=1013,Ls=1014,Ft=1015,Yn=1016,kV=1017,GV=1018,nl=1020,jV=1021,pr=1023,HV=1024,WV=1025,wc=1026,al=1027,Fp=1028,qV=1029,lh=1030,XV=1031,QS=1033,O1=33776,R1=33777,L1=33778,B1=33779,rC=35840,iC=35841,nC=35842,sC=35843,YV=36196,oC=37492,aC=37496,lC=37808,cC=37809,uC=37810,hC=37811,dC=37812,fC=37813,pC=37814,mC=37815,gC=37816,yC=37817,vC=37818,xC=37819,bC=37820,SC=37821,N1=36492,KV=36283,wC=36284,AC=36285,EC=36286,ZS=2200,JS=2201,Vp=2202,fy=2300,py=2301,F1=2302,Fu=2400,Vu=2401,my=2402,$S=2500,QV=2501;var gn=3e3,ct=3001,Fi=3200,ew=3201,ZV=0,JV=1;var mo="srgb",Sp="srgb-linear";var V1=7680;var $V=519,vS=35044,DP=35048;var gy="300 es",xS=1035,gr=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}}},sn=["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"],TC=1234567,gp=Math.PI/180,wp=180/Math.PI;function os(){let n=Math.random()*4294967295|0,t=Math.random()*4294967295|0,e=Math.random()*4294967295|0,r=Math.random()*4294967295|0;return(sn[n&255]+sn[n>>8&255]+sn[n>>16&255]+sn[n>>24&255]+"-"+sn[t&255]+sn[t>>8&255]+"-"+sn[t>>16&15|64]+sn[t>>24&255]+"-"+sn[e&63|128]+sn[e>>8&255]+"-"+sn[e>>16&255]+sn[e>>24&255]+sn[r&255]+sn[r>>8&255]+sn[r>>16&255]+sn[r>>24&255]).toLowerCase()}function pi(n,t,e){return Math.max(t,Math.min(e,n))}function tw(n,t){return(n%t+t)%t}function eU(n,t,e,r,i){return r+(n-t)*(i-r)/(e-t)}function tU(n,t,e){return n!==t?(e-n)/(t-n):0}function yp(n,t,e){return(1-e)*n+e*t}function rU(n,t,e,r){return yp(n,t,1-Math.exp(-e*r))}function iU(n,t=1){return t-Math.abs(tw(n,t*2)-t)}function nU(n,t,e){return n<=t?0:n>=e?1:(n=(n-t)/(e-t),n*n*(3-2*n))}function sU(n,t,e){return n<=t?0:n>=e?1:(n=(n-t)/(e-t),n*n*n*(n*(n*6-15)+10))}function oU(n,t){return n+Math.floor(Math.random()*(t-n+1))}function aU(n,t){return n+Math.random()*(t-n)}function lU(n){return n*(.5-Math.random())}function cU(n){n!==void 0&&(TC=n);let t=TC+=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 uU(n){return n*gp}function hU(n){return n*wp}function bS(n){return(n&n-1)===0&&n!==0}function OP(n){return Math.pow(2,Math.ceil(Math.log(n)/Math.LN2))}function yy(n){return Math.pow(2,Math.floor(Math.log(n)/Math.LN2))}function dU(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 fa(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 Sr(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:gp,RAD2DEG:wp,ceilPowerOfTwo:OP,clamp:pi,damp:rU,degToRad:uU,denormalize:fa,euclideanModulo:tw,floorPowerOfTwo:yy,generateUUID:os,inverseLerp:tU,isPowerOfTwo:bS,lerp:yp,mapLinear:eU,normalize:Sr,pingpong:iU,radToDeg:hU,randFloat:aU,randFloatSpread:lU,randInt:oU,seededRandom:cU,setQuaternionFromProperEuler:dU,smootherstep:sU,smoothstep:nU}),V=class{constructor(t=0,e=0){V.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}},mr=class{constructor(){mr.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(U1.makeScale(t,e)),this}rotate(t){return this.premultiply(U1.makeRotation(-t)),this}translate(t,e){return this.premultiply(U1.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)}},U1=new mr;function RP(n){for(let t=n.length-1;t>=0;--t)if(n[t]>=65535)return!0;return!1}var fU={Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array};function Vg(n,t){return new fU[n](t)}function Ap(n){return document.createElementNS("http://www.w3.org/1999/xhtml",n)}function pU(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 Ac(n){return n<.04045?n*.0773993808:Math.pow(n*.9478672986+.0521327014,2.4)}function dy(n){return n<.0031308?n*12.92:1.055*Math.pow(n,.41666)-.055}var z1={[mo]:{[Sp]:Ac},[Sp]:{[mo]:dy}},fn={legacyMode:!0,get workingColorSpace(){return Sp},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(z1[t]&&z1[t][e]!==void 0){let r=z1[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)}},LP={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},Ti={r:0,g:0,b:0},Ds={h:0,s:0,l:0},Ug={h:0,s:0,l:0};function k1(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 zg(n,t){return t.r=n.r,t.g=n.g,t.b=n.b,t}var qe=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=mo){return t=Math.floor(t),this.r=(t>>16&255)/255,this.g=(t>>8&255)/255,this.b=(t&255)/255,fn.toWorkingColorSpace(this,e),this}setRGB(t,e,r,i=fn.workingColorSpace){return this.r=t,this.g=e,this.b=r,fn.toWorkingColorSpace(this,i),this}setHSL(t,e,r,i=fn.workingColorSpace){if(t=tw(t,1),e=pi(e,0,1),r=pi(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=k1(o,s,t+1/3),this.g=k1(o,s,t),this.b=k1(o,s,t-1/3)}return fn.toWorkingColorSpace(this,i),this}setStyle(t,e=mo){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,fn.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,fn.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,fn.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,fn.toWorkingColorSpace(this,e),this}return t&&t.length>0?this.setColorName(t,e):this}setColorName(t,e=mo){let r=LP[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=Ac(t.r),this.g=Ac(t.g),this.b=Ac(t.b),this}copyLinearToSRGB(t){return this.r=dy(t.r),this.g=dy(t.g),this.b=dy(t.b),this}convertSRGBToLinear(){return this.copySRGBToLinear(this),this}convertLinearToSRGB(){return this.copyLinearToSRGB(this),this}getHex(t=mo){return fn.fromWorkingColorSpace(zg(this,Ti),t),pi(Ti.r*255,0,255)<<16^pi(Ti.g*255,0,255)<<8^pi(Ti.b*255,0,255)<<0}getHexString(t=mo){return("000000"+this.getHex(t).toString(16)).slice(-6)}getHSL(t,e=fn.workingColorSpace){fn.fromWorkingColorSpace(zg(this,Ti),e);let r=Ti.r,i=Ti.g,s=Ti.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=fn.workingColorSpace){return fn.fromWorkingColorSpace(zg(this,Ti),e),t.r=Ti.r,t.g=Ti.g,t.b=Ti.b,t}getStyle(t=mo){return fn.fromWorkingColorSpace(zg(this,Ti),t),t!==mo?`color(${t} ${Ti.r} ${Ti.g} ${Ti.b})`:`rgb(${Ti.r*255|0},${Ti.g*255|0},${Ti.b*255|0})`}offsetHSL(t,e,r){return this.getHSL(Ds),Ds.h+=t,Ds.s+=e,Ds.l+=r,this.setHSL(Ds.h,Ds.s,Ds.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(Ds),t.getHSL(Ug);let r=yp(Ds.h,Ug.h,e),i=yp(Ds.s,Ug.s,e),s=yp(Ds.l,Ug.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}};qe.NAMES=LP;var wu,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{wu===void 0&&(wu=Ap("canvas")),wu.width=t.width,wu.height=t.height;let r=wu.getContext("2d");t instanceof ImageData?r.putImageData(t,0,0):r.drawImage(t,0,0,t.width,t.height),e=wu}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=Ap("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]=Ac(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(Ac(e[r]/255)*255):e[r]=Ac(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}},xy=class{constructor(t=null){this.isSource=!0,this.uuid=os(),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(G1(i[o].image)):s.push(G1(i[o]))}else s=G1(i);r.url=s}return e||(t.images[this.uuid]=r),r}};function G1(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 mU=0,rr=class extends gr{constructor(t=rr.DEFAULT_IMAGE,e=rr.DEFAULT_MAPPING,r=Jt,i=Jt,s=it,o=Ec,a=pr,l=Or,c=rr.DEFAULT_ANISOTROPY,u=gn){super(),this.isTexture=!0,Object.defineProperty(this,"id",{value:mU++}),this.uuid=os(),this.name="",this.source=new xy(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 V(0,0),this.repeat=new V(1,1),this.center=new V(0,0),this.rotation=0,this.matrixAutoUpdate=!0,this.matrix=new mr,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!==_P)return t;if(t.applyMatrix3(this.matrix),t.x<0||t.x>1)switch(this.wrapS){case Ns:t.x=t.x-Math.floor(t.x);break;case Jt:t.x=t.x<0?0:1;break;case yS: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 Ns:t.y=t.y-Math.floor(t.y);break;case Jt:t.y=t.y<0?0:1;break;case yS: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)}};rr.DEFAULT_IMAGE=null;rr.DEFAULT_MAPPING=_P;rr.DEFAULT_ANISOTROPY=1;var Qe=class{constructor(t=0,e=0,r=0,i=1){Qe.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,thi