@dcl/sdk 7.0.0-3388940429.commit-45b2012 → 7.0.0-3445274368.commit-063bc43
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/ecs7/index.min.js
CHANGED
@@ -1 +1 @@
|
|
1
|
-
(function(exports){"use strict";var commonjsGlobal="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},dist$1={},Quaternion={},Vector3$1={},types$1={},hasRequiredTypes$1;function requireTypes$1(){return hasRequiredTypes$1||(hasRequiredTypes$1=1,Object.defineProperty(types$1,"__esModule",{value:!0}),types$1.RAD2DEG=types$1.DEG2RAD=types$1.Epsilon=types$1.ToLinearSpace=types$1.ToGammaSpace=void 0,types$1.ToGammaSpace=1/2.2,types$1.ToLinearSpace=2.2,types$1.Epsilon=1e-6,types$1.DEG2RAD=Math.PI/180,types$1.RAD2DEG=360/(2*Math.PI)),types$1}var Scalar={},hasRequiredScalar,hasRequiredVector3;function requireScalar(){return hasRequiredScalar||(hasRequiredScalar=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.Scalar=void 0,function(e){function t(e){const t=+e;return 0===t||isNaN(t)?t:t>0?1:-1}function n(e,t=0,n=1){return Math.min(n,Math.max(t,e))}function r(e,t){return e-Math.floor(e/t)*t}function o(e,t){let n=r(t-e,360);return n>180&&(n-=360),n}function i(e,n,r){let o=0;return o=Math.abs(n-e)<=r?n:e+t(n-e)*r,o}e.TwoPi=2*Math.PI,e.withinEpsilon=function(e,t,n=1401298e-51){const r=e-t;return-n<=r&&r<=n},e.toHex=function(e){const t=e.toString(16);return e<=15?("0"+t).toUpperCase():t.toUpperCase()},e.sign=t,e.clamp=n,e.log2=function(e){return Math.log(e)*Math.LOG2E},e.repeat=r,e.normalize=function(e,t,n){return(e-t)/(n-t)},e.denormalize=function(e,t,n){return e*(n-t)+t},e.deltaAngle=o,e.pingPong=function(e,t){const n=r(e,2*t);return t-Math.abs(n-t)},e.smoothStep=function(e,t,r){let o=n(r);return o=-2*o*o*o+3*o*o,t*o+e*(1-o)},e.moveTowards=i,e.moveTowardsAngle=function(e,t,n){const r=o(e,t);let a=0;return a=-n<r&&r<n?t:i(e,e+r,n),a},e.lerp=function(e,t,n){return e+(t-e)*n},e.lerpAngle=function(e,t,o){let i=r(t-e,360);return i>180&&(i-=360),e+i*n(o)},e.inverseLerp=function(e,t,r){let o=0;return o=e!==t?n((r-e)/(t-e)):0,o},e.hermite=function(e,t,n,r,o){const i=o*o,a=o*i;return e*(2*a-3*i+1)+n*(-2*a+3*i)+t*(a-2*i+o)+r*(a-i)},e.randomRange=function(e,t){return e===t?e:Math.random()*(t-e)+e},e.rangeToPercent=function(e,t,n){return(e-t)/(n-t)},e.percentToRange=function(e,t,n){return(n-t)*e+t},e.normalizeRadians=function(t){return t-e.TwoPi*Math.floor((t+Math.PI)/e.TwoPi)}}(e.Scalar||(e.Scalar={}))}(Scalar)),Scalar}function requireVector3(){return hasRequiredVector3||(hasRequiredVector3=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.Vector3=void 0;const t=requireTypes$1(),n=requireQuaternion(),r=requireScalar();!function(e){function o(e=0,t=0,n=0){return{x:e,y:t,z:n}}function i(e,t){return{x:e.x+t.x,y:e.y+t.y,z:e.z+t.z}}function a(e,t){t.x=e.x,t.y=e.y,t.z=e.z}function s(e,t,n,r){r.x=e,r.y=t,r.z=n}function c(e){return o(e.x,e.y,e.z)}function u(e,t=0){return o(e[t],e[t+1],e[t+2])}function l(e,t,n){n.x=e[t],n.y=e[t+1],n.z=e[t+2]}function f(e){return Math.sqrt(e.x*e.x+e.y*e.y+e.z*e.z)}function d(e,t,n){n.x=e.x*t,n.y=e.y*t,n.z=e.z*t}function m(e,t){const n=o(0,0,0);return h(e,t,n),n}function h(e,t,n){0!==t&&1!==t?d(e,1/t,n):a(e,n)}function p(e){return m(e,f(e))}function g(e,t){return e.x*t.x+e.y*t.y+e.z*t.z}function y(e,t,n){const{x:r,y:o,z:i}=e,a=t._m,s=1/(a[3]*r+a[7]*o+a[11]*i+a[15]);n.x=(a[0]*r+a[4]*o+a[8]*i+a[12])*s,n.y=(a[1]*r+a[5]*o+a[9]*i+a[13])*s,n.z=(a[2]*r+a[6]*o+a[10]*i+a[14])*s}function b(e,t,n){const{x:r,y:o,z:i}=e,{x:a,y:s,z:c,w:u}=t,l=u*r+s*i-c*o,f=u*o+c*r-a*i,d=u*i+a*o-s*r,m=-a*r-s*o-c*i;n.x=l*u+m*-a+f*-c-d*-s,n.y=f*u+m*-s+d*-a-l*-c,n.z=d*u+m*-c+l*-s-f*-a}function v(e,t,n,r){r.x=e.x+(t.x-e.x)*n,r.y=e.y+(t.y-e.y)*n,r.z=e.z+(t.z-e.z)*n}function E(e,t,n){n.x=e.y*t.z-e.z*t.y,n.y=e.z*t.x-e.x*t.z,n.z=e.x*t.y-e.y*t.x}function T(e,t,n){return x(e.x,e.y,e.z,t,n)}function x(e,t,n,r,o){const i=r._m,a=e*i[0]+t*i[4]+n*i[8]+i[12],s=e*i[1]+t*i[5]+n*i[9]+i[13],c=e*i[2]+t*i[6]+n*i[10]+i[14],u=1/(e*i[3]+t*i[7]+n*i[11]+i[15]);o.x=a*u,o.y=s*u,o.z=c*u}function _(e,t,n){R(e.x,e.y,e.z,t,n)}function R(e,t,n,r,o){const i=r._m;o.x=e*i[0]+t*i[4]+n*i[8],o.y=e*i[1]+t*i[5]+n*i[9],o.z=e*i[2]+t*i[6]+n*i[10]}function M(e,t,n,r){let o=e.x;o=o>n.x?n.x:o,o=o<t.x?t.x:o;let i=e.y;i=i>n.y?n.y:i,i=i<t.y?t.y:i;let a=e.z;a=a>n.z?n.z:a,a=a<t.z?t.z:a,s(o,i,a,r)}function B(e,t){const n=e.x-t.x,r=e.y-t.y,o=e.z-t.z;return n*n+r*r+o*o}function A(e,t,r,o){const i=n.Quaternion.create();n.Quaternion.fromAxisToRotationQuaternionToRef(e,t,r,i),a(n.Quaternion.toEulerAngles(i),o)}function C(e,t,n){n.x=e.x*t.x,n.y=e.y*t.y,n.z=e.z*t.z}function w(e,t,n,r,o){o.x=e.x*t,o.y=e.y*n,o.z=e.z*r}function S(e,t,n,r,o){t>e.x?o.x=t:o.x=e.x,n>e.y?o.y=n:o.y=e.y,r>e.z?o.z=r:o.z=e.z}function P(e,t,n,r,o){t<e.x?o.x=t:o.x=e.x,n<e.y?o.y=n:o.y=e.y,r<e.z?o.z=r:o.z=e.z}function k(){return o(0,0,0)}e.isNonUniform=function(e){const t=Math.abs(e.x);return t!==Math.abs(e.y)||t!==Math.abs(e.z)},e.create=o,e.add=i,e.addToRef=function(e,t,n){n.x=e.x+t.x,n.y=e.y+t.y,n.z=e.z+t.z},e.subtract=function(e,t){return{x:e.x-t.x,y:e.y-t.y,z:e.z-t.z}},e.subtractToRef=function(e,t,n){n.x=e.x-t.x,n.y=e.y-t.y,n.z=e.z-t.z},e.subtractFromFloatsToRef=function(e,t,n,r,o){o.x=e.x-t,o.y=e.y-n,o.z=e.z-r},e.negate=function(e){return{x:-e.x,y:-e.y,z:-e.z}},e.copyFrom=a,e.copyFromFloats=s,e.clone=c,e.getClipFactor=function(e,t,n,r){const o=g(e,n)-r;return o/(o-(g(t,n)-r))},e.getAngleBetweenVectors=function(e,t,n){const r=p(e),i=p(t),a=g(r,i),s=o();return E(r,i,s),g(s,n)>0?Math.acos(a):-Math.acos(a)},e.fromArray=u,e.fromFloatArray=function(e,t){return u(e,t)},e.fromArrayToRef=l,e.fromFloatArrayToRef=function(e,t,n){return l(e,t,n)},e.length=f,e.lengthSquared=function(e){return e.x*e.x+e.y*e.y+e.z*e.z},e.scaleToRef=d,e.scale=function(e,t){return o(e.x*t,e.y*t,e.z*t)},e.normalizeFromLength=m,e.normalizeFromLengthToRef=h,e.normalize=p,e.normalizeToRef=function(e,t){h(e,f(e),t)},e.dot=g,e.applyMatrix4=function(e,t){const n=c(e);return y(e,t,n),n},e.applyMatrix4ToRef=y,e.rotate=function(e,t){const n=o();return b(e,t,n),n},e.rotateToRef=b,e.lerp=function(e,t,n){const r=o(0,0,0);return v(e,t,n,r),r},e.lerpToRef=v,e.cross=function(e,t){const n=k();return E(e,t,n),n},e.crossToRef=E,e.transformCoordinates=function(e,t){const n=k();return T(e,t,n),n},e.transformCoordinatesToRef=T,e.transformCoordinatesFromFloatsToRef=x,e.transformNormal=function(e,t){const n=k();return _(e,t,n),n},e.transformNormalToRef=_,e.transformNormalFromFloatsToRef=R,e.catmullRom=function(e,t,n,r,i){const a=i*i,s=i*a;return o(.5*(2*t.x+(-e.x+n.x)*i+(2*e.x-5*t.x+4*n.x-r.x)*a+(-e.x+3*t.x-3*n.x+r.x)*s),.5*(2*t.y+(-e.y+n.y)*i+(2*e.y-5*t.y+4*n.y-r.y)*a+(-e.y+3*t.y-3*n.y+r.y)*s),.5*(2*t.z+(-e.z+n.z)*i+(2*e.z-5*t.z+4*n.z-r.z)*a+(-e.z+3*t.z-3*n.z+r.z)*s))},e.clamp=function(e,t,n){const r=o();return M(e,t,n,r),r},e.clampToRef=M,e.hermite=function(e,t,n,r,i){const a=i*i,s=i*a,c=2*s-3*a+1,u=-2*s+3*a,l=s-2*a+i,f=s-a;return o(e.x*c+n.x*u+t.x*l+r.x*f,e.y*c+n.y*u+t.y*l+r.y*f,e.z*c+n.z*u+t.z*l+r.z*f)},e.minimize=function(e,t){const n=o();return P(t,e.x,e.y,e.z,n),n},e.maximize=function(e,t){const n=o();return S(e,t.x,t.y,t.z,n),n},e.distance=function(e,t){return Math.sqrt(B(e,t))},e.distanceSquared=B,e.center=function(e,t){const n=i(e,t);return d(n,.5,n),n},e.rotationFromAxis=function(e,t,n){const r=k();return A(e,t,n,r),r},e.rotationFromAxisToRef=A,e.toString=function(e){return`(${e.x}, ${e.y}, ${e.z})`},e.getHashCode=function(e){let t=e.x||0;return t=397*t^(e.y||0),t=397*t^(e.z||0),t},e.equals=function(e,t){return e.x===t.x&&e.y===t.y&&e.z===t.z},e.equalsWithEpsilon=function(e,n,o=t.Epsilon){return r.Scalar.withinEpsilon(e.x,n.x,o)&&r.Scalar.withinEpsilon(e.y,n.y,o)&&r.Scalar.withinEpsilon(e.z,n.z,o)},e.equalsToFloats=function(e,t,n,r){return e.x===t&&e.y===n&&e.z===r},e.multiply=function(e,t){const n=o();return C(e,t,n),n},e.multiplyToRef=C,e.multiplyByFloatsToRef=w,e.multiplyByFloats=function(e,t,n,r){const i=o();return w(e,t,n,r,i),i},e.divide=function(e,t){return{x:e.x/t.x,y:e.y/t.y,z:e.z/t.z}},e.divideToRef=function(e,t,n){n.x=e.x/t.x,n.y=e.y/t.y,n.z=e.z/t.z},e.maximizeInPlaceFromFloatsToRef=S,e.minimizeInPlaceFromFloatsToRef=P,e.floor=function(e){return o(Math.floor(e.x),Math.floor(e.y),Math.floor(e.z))},e.fract=function(e){return o(e.x-Math.floor(e.x),e.y-Math.floor(e.y),e.z-Math.floor(e.z))},e.Zero=k,e.One=function(){return o(1,1,1)},e.Up=function(){return o(0,1,0)},e.Down=function(){return o(0,-1,0)},e.Forward=function(){return o(0,0,1)},e.Backward=function(){return o(0,0,-1)},e.Right=function(){return o(1,0,0)},e.Left=function(){return o(-1,0,0)},e.Random=function(){return o(Math.random(),Math.random(),Math.random())}}(e.Vector3||(e.Vector3={}))}(Vector3$1)),Vector3$1}var Matrix={},Plane={},hasRequiredPlane,hasRequiredMatrix,hasRequiredQuaternion;function requirePlane(){return hasRequiredPlane||(hasRequiredPlane=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.Plane=void 0;const t=requireVector3(),n=requireMatrix();!function(e){function r(e,n,r,o){return{normal:t.Vector3.create(e,n,r),d:o}}e.create=r,e.fromArray=function(e){return r(e[0],e[1],e[2],e[3])},e.fromPoints=function(e,t,n){return r(0,0,0,0)},e.romPositionAndNormal=function(e,n){const o=r(0,0,0,0);return o.normal=t.Vector3.normalize(n),o.d=-(n.x*e.x+n.y*e.y+n.z*e.z),o},e.signedDistanceToPlaneFromPositionAndNormal=function(e,n,r){const o=-(n.x*e.x+n.y*e.y+n.z*e.z);return t.Vector3.dot(r,n)+o},e.asArray=function(e){return[e.normal.x,e.normal.y,e.normal.z,e.d]},e.clone=function(e){return r(e.normal.x,e.normal.y,e.normal.z,e.d)},e.getHashCode=function(e){return 0},e.normalize=function(e){const t=r(0,0,0,0),n=Math.sqrt(e.normal.x*e.normal.x+e.normal.y*e.normal.y+e.normal.z*e.normal.z);let o=0;return 0!==n&&(o=1/n),t.normal.x=e.normal.x*o,t.normal.y=e.normal.y*o,t.normal.z=e.normal.z*o,t.d*=o,e},e.transform=function(e,t){const o=n.Matrix.create();n.Matrix.transposeToRef(t,o);const i=o._m,a=e.normal.x,s=e.normal.y,c=e.normal.z,u=e.d;return r(a*i[0]+s*i[1]+c*i[2]+u*i[3],a*i[4]+s*i[5]+c*i[6]+u*i[7],a*i[8]+s*i[9]+c*i[10]+u*i[11],a*i[12]+s*i[13]+c*i[14]+u*i[15])},e.dotCoordinate=function(e,t){return e.normal.x*t.x+e.normal.y*t.y+e.normal.z*t.z+e.d},e.copyFromPoints=function(e,n,r){const o=n.x-e.x,i=n.y-e.y,a=n.z-e.z,s=r.x-e.x,c=r.y-e.y,u=r.z-e.z,l=i*u-a*c,f=a*s-o*u,d=o*c-i*s,m=Math.sqrt(l*l+f*f+d*d);let h;h=0!==m?1/m:0;const p=t.Vector3.create(l*h,f*h,d*h);return{normal:p,d:-(p.x*e.x+p.y*e.y+p.z*e.z)}},e.isFrontFacingTo=function(e,n,r){return t.Vector3.dot(e.normal,n)<=r},e.signedDistanceTo=function(e,n){return t.Vector3.dot(n,e.normal)+e.d}}(e.Plane||(e.Plane={}))}(Plane)),Plane}function requireMatrix(){return hasRequiredMatrix||(hasRequiredMatrix=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.Matrix=void 0;const t=requireVector3(),n=requireQuaternion(),r=requirePlane();!function(e){e.m=function(e){return e._m};let o=0;const i={};function a(){const e={updateFlag:0,isIdentity:!1,isIdentity3x2:!0,_isIdentityDirty:!0,_isIdentity3x2Dirty:!0,_m:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]};return V(e,!1),e}function s(e,t,n){for(let r=0;r<16;r++)n._m[r]=e[r+t];P(n)}function c(e,t,n,r,o,i,a,s,c,u,l,f,d,m,h,p,g){const y=g._m;y[0]=e,y[1]=t,y[2]=n,y[3]=r,y[4]=o,y[5]=i,y[6]=a,y[7]=s,y[8]=c,y[9]=u,y[10]=l,y[11]=f,y[12]=d,y[13]=m,y[14]=h,y[15]=p,P(g)}function u(e,t,n,r,o,i,s,c,u,l,f,d,m,h,p,g){const y=a(),b=y._m;return b[0]=e,b[1]=t,b[2]=n,b[3]=r,b[4]=o,b[5]=i,b[6]=s,b[7]=c,b[8]=u,b[9]=l,b[10]=f,b[11]=d,b[12]=m,b[13]=h,b[14]=p,b[15]=g,P(y),y}function l(e,t,n,r){const o=[a(),a(),a()];y(e.x,e.y,e.z,o[1]),S(t,o[0]),L(o[1],o[0],r),z(r,n)}function f(){const e=u(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);return V(e,!0),e}function d(e,t){const n=Math.sin(e),r=Math.cos(e);c(1,0,0,0,0,r,n,0,0,-n,r,0,0,0,0,1,t),V(t,1===r&&0===n)}function m(e,t){const n=Math.sin(e),r=Math.cos(e);c(r,0,-n,0,0,1,0,0,n,0,r,0,0,0,0,1,t),V(t,1===r&&0===n)}function h(e,t){const n=Math.sin(e),r=Math.cos(e);c(r,n,0,0,-n,r,0,0,0,0,1,0,0,0,0,1,t),V(t,1===r&&0===n)}function p(e,n,r){const o=Math.sin(-n),i=Math.cos(-n),a=1-i,s=t.Vector3.normalize(e),c=r._m;c[0]=s.x*s.x*a+i,c[1]=s.x*s.y*a-s.z*o,c[2]=s.x*s.z*a+s.y*o,c[3]=0,c[4]=s.y*s.x*a+s.z*o,c[5]=s.y*s.y*a+i,c[6]=s.y*s.z*a-s.x*o,c[7]=0,c[8]=s.z*s.x*a-s.y*o,c[9]=s.z*s.y*a+s.x*o,c[10]=s.z*s.z*a+i,c[11]=0,c[12]=0,c[13]=0,c[14]=0,c[15]=1,P(r)}function g(e,t,r,o){const i=n.Quaternion.Zero();n.Quaternion.fromRotationYawPitchRollToRef(e,t,r,i),S(i,o)}function y(e,t,n,r){c(e,0,0,0,0,t,0,0,0,0,n,0,0,0,0,1,r),V(r,1===e&&1===t&&1===n)}function b(e,t,n,r){c(1,0,0,0,0,1,0,0,0,0,1,0,e,t,n,1,r),V(r,0===e&&0===t&&0===n)}function v(e,t,n,r){for(let o=0;o<16;o++)r._m[o]=e._m[o]*(1-n)+t._m[o]*n;P(r)}function E(e,r,o,i){const a=t.Vector3.Zero(),s=n.Quaternion.Zero(),c=t.Vector3.Zero();q(e,a,s,c);const u=t.Vector3.Zero(),f=n.Quaternion.Zero(),d=t.Vector3.Zero();q(r,u,f,d);const m=t.Vector3.Zero();t.Vector3.lerpToRef(a,u,o,m);const h=n.Quaternion.Zero();n.Quaternion.slerpToRef(s,f,o,h);const p=t.Vector3.Zero();t.Vector3.lerpToRef(c,d,o,p),l(m,h,p,i)}function T(e,n,r,o){const i=t.Vector3.Zero(),a=t.Vector3.Zero(),s=t.Vector3.Zero();t.Vector3.subtractToRef(n,e,s),t.Vector3.normalizeToRef(s,s),t.Vector3.crossToRef(r,s,i);const u=t.Vector3.lengthSquared(i);0===u?i.x=1:t.Vector3.normalizeFromLengthToRef(i,Math.sqrt(u),i),t.Vector3.crossToRef(s,i,a),t.Vector3.normalizeToRef(a,a);const l=-t.Vector3.dot(i,e),f=-t.Vector3.dot(a,e),d=-t.Vector3.dot(s,e);c(i.x,a.x,s.x,0,i.y,a.y,s.y,0,i.z,a.z,s.z,0,l,f,d,1,o)}function x(e,n,r,o){const i=t.Vector3.Zero(),a=t.Vector3.Zero(),s=t.Vector3.Zero();t.Vector3.subtractToRef(e,n,s),t.Vector3.normalizeToRef(s,s),t.Vector3.crossToRef(r,s,i);const u=t.Vector3.lengthSquared(i);0===u?i.x=1:t.Vector3.normalizeFromLengthToRef(i,Math.sqrt(u),i),t.Vector3.crossToRef(s,i,a),t.Vector3.normalizeToRef(a,a);const l=-t.Vector3.dot(i,e),f=-t.Vector3.dot(a,e),d=-t.Vector3.dot(s,e);c(i.x,a.x,s.x,0,i.y,a.y,s.y,0,i.z,a.z,s.z,0,l,f,d,1,o)}function _(e,t,n,r,o){const i=2/e,a=2/t,s=2/(r-n),u=-(r+n)/(r-n);c(i,0,0,0,0,a,0,0,0,0,s,0,0,0,u,1,o),V(o,1===i&&1===a&&1===s&&0===u)}function R(e,t,n,r,o,i,a){c(2/(t-e),0,0,0,0,2/(r-n),0,0,0,0,2/(i-o),0,(e+t)/(e-t),(r+n)/(n-r),-(i+o)/(i-o),1,a),P(a)}function M(e,t,n,r,o,i,a){R(e,t,n,r,o,i,a),a._m[10]*=-1}function B(e,t,n,r,o,i=!0){const a=n,s=r,u=1/Math.tan(.5*e);c(i?u/t:u,0,0,0,0,i?u:u*t,0,0,0,0,(s+a)/(s-a),1,0,0,-2*s*a/(s-a),0,o),V(o,!1)}function A(e,t,n,r,o,i=!0){const a=n,s=r,u=1/Math.tan(.5*e);c(i?u/t:u,0,0,0,0,i?u:u*t,0,0,0,0,-(s+a)/(s-a),-1,0,0,-2*s*a/(s-a),0,o),V(o,!1)}function C(e,t){const n=t._m,r=e._m;n[0]=r[0],n[1]=r[4],n[2]=r[8],n[3]=r[12],n[4]=r[1],n[5]=r[5],n[6]=r[9],n[7]=r[13],n[8]=r[2],n[9]=r[6],n[10]=r[10],n[11]=r[14],n[12]=r[3],n[13]=r[7],n[14]=r[11],n[15]=r[15],V(t,e.isIdentity,e._isIdentityDirty)}function w(e,t){const n=r.Plane.normalize(e),o=n.normal.x,i=n.normal.y,a=n.normal.z,s=-2*o,u=-2*i,l=-2*a;c(s*o+1,u*o,l*o,0,s*i,u*i+1,l*i,0,s*a,u*a,l*a+1,0,s*n.d,u*n.d,l*n.d,1,t)}function S(e,t){const n=e.x*e.x,r=e.y*e.y,o=e.z*e.z,i=e.x*e.y,a=e.z*e.w,s=e.z*e.x,c=e.y*e.w,u=e.y*e.z,l=e.x*e.w;t._m[0]=1-2*(r+o),t._m[1]=2*(i+a),t._m[2]=2*(s-c),t._m[3]=0,t._m[4]=2*(i-a),t._m[5]=1-2*(o+n),t._m[6]=2*(u+l),t._m[7]=0,t._m[8]=2*(s+c),t._m[9]=2*(u-l),t._m[10]=1-2*(r+n),t._m[11]=0,t._m[12]=0,t._m[13]=0,t._m[14]=0,t._m[15]=1,P(t)}function P(e){e.updateFlag=o++,e.isIdentity=!1,e.isIdentity3x2=!1,e._isIdentityDirty=!0,e._isIdentity3x2Dirty=!0}function k(e){if(!0===e.isIdentity)return 1;const t=e._m,n=t[0],r=t[1],o=t[2],i=t[3],a=t[4],s=t[5],c=t[6],u=t[7],l=t[8],f=t[9],d=t[10],m=t[11],h=t[12],p=t[13],g=t[14],y=t[15],b=d*y-g*m,v=f*y-p*m,E=f*g-p*d,T=l*y-h*m,x=l*g-d*h,_=l*p-h*f;return n*+(s*b-c*v+u*E)+r*-(a*b-c*T+u*x)+o*+(a*v-s*T+u*_)+i*-(a*E-s*x+c*_)}function I(e,t,n){for(let r=0;r<16;r++)n._m[r]=e._m[r]+t._m[r];P(n)}function O(e,t){if(!0===e.isIdentity)return void U(e,t);const n=e._m,r=n[0],o=n[1],i=n[2],a=n[3],s=n[4],u=n[5],l=n[6],f=n[7],d=n[8],m=n[9],h=n[10],p=n[11],g=n[12],y=n[13],b=n[14],v=n[15],E=h*v-b*p,T=m*v-y*p,x=m*b-y*h,_=d*v-g*p,R=d*b-h*g,M=d*y-g*m,B=+(u*E-l*T+f*x),A=-(s*E-l*_+f*R),C=+(s*T-u*_+f*M),w=-(s*x-u*R+l*M),S=r*B+o*A+i*C+a*w;if(0===S)return void U(e,t);const P=1/S,k=l*v-b*f,I=u*v-y*f,O=u*b-y*l,N=s*v-g*f,z=s*b-g*l,D=s*y-g*u,L=l*p-h*f,F=u*p-m*f,q=u*h-m*l,G=s*p-d*f,$=s*h-d*l,V=s*m-d*u;c(B*P,-(o*E-i*T+a*x)*P,+(o*k-i*I+a*O)*P,-(o*L-i*F+a*q)*P,A*P,+(r*E-i*_+a*R)*P,-(r*k-i*N+a*z)*P,+(r*L-i*G+a*$)*P,C*P,-(r*T-o*_+a*M)*P,+(r*I-o*N+a*D)*P,-(r*F-o*G+a*V)*P,w*P,+(r*x-o*R+i*M)*P,-(r*O-o*z+i*D)*P,+(r*q-o*$+i*V)*P,t)}function N(e,t,n,r){e._m[12]=t,e._m[13]=n,e._m[14]=r,P(e)}function z(e,t){N(e,t.x,t.y,t.z)}function U(e,t){D(e,t._m),V(t,e.isIdentity,e._isIdentityDirty,e.isIdentity3x2,e._isIdentity3x2Dirty)}function D(e,t,n=0){for(let r=0;r<16;r++)t[n+r]=e._m[r]}function L(e,t,n){e.isIdentity?U(t,n):t.isIdentity?U(e,n):(F(e,t,n._m,0),P(n))}function F(e,t,n,r){const o=e._m,i=t._m,a=o[0],s=o[1],c=o[2],u=o[3],l=o[4],f=o[5],d=o[6],m=o[7],h=o[8],p=o[9],g=o[10],y=o[11],b=o[12],v=o[13],E=o[14],T=o[15],x=i[0],_=i[1],R=i[2],M=i[3],B=i[4],A=i[5],C=i[6],w=i[7],S=i[8],P=i[9],k=i[10],I=i[11],O=i[12],N=i[13],z=i[14],U=i[15];n[r]=a*x+s*B+c*S+u*O,n[r+1]=a*_+s*A+c*P+u*N,n[r+2]=a*R+s*C+c*k+u*z,n[r+3]=a*M+s*w+c*I+u*U,n[r+4]=l*x+f*B+d*S+m*O,n[r+5]=l*_+f*A+d*P+m*N,n[r+6]=l*R+f*C+d*k+m*z,n[r+7]=l*M+f*w+d*I+m*U,n[r+8]=h*x+p*B+g*S+y*O,n[r+9]=h*_+p*A+g*P+y*N,n[r+10]=h*R+p*C+g*k+y*z,n[r+11]=h*M+p*w+g*I+y*U,n[r+12]=b*x+v*B+E*S+T*O,n[r+13]=b*_+v*A+E*P+T*N,n[r+14]=b*R+v*C+E*k+T*z,n[r+15]=b*M+v*w+E*I+T*U}function q(e,r,o,i){if(e.isIdentity)return i&&(i=t.Vector3.create(0,0,0)),r&&(r=t.Vector3.create(0,0,0)),o&&(o=n.Quaternion.create(0,0,0,1)),!0;const s=e._m;i&&(i=t.Vector3.create(s[12],s[13],s[14]));const u=r||t.Vector3.Zero();if(u.x=Math.sqrt(s[0]*s[0]+s[1]*s[1]+s[2]*s[2]),u.y=Math.sqrt(s[4]*s[4]+s[5]*s[5]+s[6]*s[6]),u.z=Math.sqrt(s[8]*s[8]+s[9]*s[9]+s[10]*s[10]),k(e)<=0&&(u.y*=-1),0===u.x||0===u.y||0===u.z)return o&&(o=n.Quaternion.create(0,0,0,1)),!1;if(o){const e=1/u.x,t=1/u.y,r=1/u.z,i=a();c(s[0]*e,s[1]*e,s[2]*e,0,s[4]*t,s[5]*t,s[6]*t,0,s[8]*r,s[9]*r,s[10]*r,0,0,0,0,1,i),n.Quaternion.fromRotationMatrixToRef(i,o)}return!0}function G(e,t,n){for(let r=0;r<16;r++)n._m[r]=e._m[r]*t;P(n)}function $(e,n){const r=t.Vector3.Zero();if(!q(e,r))return void(n=f());const o=e._m,i=1/r.x,a=1/r.y,s=1/r.z;c(o[0]*i,o[1]*i,o[2]*i,0,o[4]*a,o[5]*a,o[6]*a,0,o[8]*s,o[9]*s,o[10]*s,0,0,0,0,1,n)}function V(e,t,n=!1,r=!1,i=!0){e.updateFlag=o++,e.isIdentity=t,e.isIdentity3x2=t||r,e._isIdentityDirty=!e.isIdentity&&n,e._isIdentity3x2Dirty=!e.isIdentity3x2&&i}e.IdentityReadonly=function(){return i},e.create=a,e.fromArray=function(e,t=0){const n=a();return s(e,t,n),n},e.fromArrayToRef=s,e.fromFloatArrayToRefScaled=function(e,t,n,r){for(let o=0;o<16;o++)r._m[o]=e[o+t]*n;P(r)},e.fromValuesToRef=c,e.fromValues=u,e.compose=function(e,t,n){const r=a();return l(e,t,n,r),r},e.composeToRef=l,e.Identity=f,e.IdentityToRef=function(e){c(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1,e),V(e,!0)},e.Zero=function(){const e=u(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);return V(e,!1),e},e.RotationX=function(e){const t=a();return d(e,t),t},e.rotationXToRef=d,e.rotationY=function(e){const t=a();return m(e,t),t},e.rotationYToRef=m,e.rotationZ=function(e){const t=a();return h(e,t),t},e.rotationZToRef=h,e.rotationAxis=function(e,t){const n=a();return p(e,t,n),n},e.rotationAxisToRef=p,e.rotationYawPitchRoll=function(e,t,n){const r=a();return g(e,t,n,r),r},e.rotationYawPitchRollToRef=g,e.scaling=function(e,t,n){const r=a();return y(e,t,n,r),r},e.scalingToRef=y,e.translation=function(e,t,n){const r=a();return b(e,t,n,r),r},e.translationToRef=b,e.lerp=function(e,t,n){const r=a();return v(e,t,n,r),r},e.lerpToRef=v,e.decomposeLerp=function(e,t,n){const r=a();return E(e,t,n,r),r},e.decomposeLerpToRef=E,e.LookAtLH=function(e,t,n){const r=a();return T(e,t,n,r),r},e.lookAtLHToRef=T,e.lookAtRH=function(e,t,n){const r=a();return x(e,t,n,r),r},e.lookAtRHToRef=x,e.orthoLH=function(e,t,n,r){const o=a();return _(e,t,n,r,o),o},e.orthoLHToRef=_,e.OrthoOffCenterLH=function(e,t,n,r,o,i){const s=a();return R(e,t,n,r,o,i,s),s},e.orthoOffCenterLHToRef=R,e.orthoOffCenterRH=function(e,t,n,r,o,i){const s=a();return M(e,t,n,r,o,i,s),s},e.orthoOffCenterRHToRef=M,e.perspectiveLH=function(e,t,n,r){const o=a();return c(2*n/e,0,0,0,0,2*n/t,0,0,0,0,(r+n)/(r-n),1,0,0,-2*r*n/(r-n),0,o),V(o,!1),o},e.perspectiveFovLH=function(e,t,n,r){const o=a();return B(e,t,n,r,o),o},e.perspectiveFovLHToRef=B,e.PerspectiveFovRH=function(e,t,n,r){const o=a();return A(e,t,n,r,o),o},e.perspectiveFovRHToRef=A,e.perspectiveFovWebVRToRef=function(e,t,n,r,o=!1){const i=o?-1:1,a=Math.tan(e.upDegrees*Math.PI/180),s=Math.tan(e.downDegrees*Math.PI/180),c=Math.tan(e.leftDegrees*Math.PI/180),u=Math.tan(e.rightDegrees*Math.PI/180),l=2/(c+u),f=2/(a+s),d=r._m;d[0]=l,d[1]=d[2]=d[3]=d[4]=0,d[5]=f,d[6]=d[7]=0,d[8]=(c-u)*l*.5,d[9]=-(a-s)*f*.5,d[10]=-n/(t-n),d[11]=1*i,d[12]=d[13]=d[15]=0,d[14]=-2*n*t/(n-t),P(r)},e.GetAsMatrix2x2=function(e){return[e._m[0],e._m[1],e._m[4],e._m[5]]},e.GetAsMatrix3x3=function(e){return[e._m[0],e._m[1],e._m[2],e._m[4],e._m[5],e._m[6],e._m[8],e._m[9],e._m[10]]},e.transpose=function(e){const t=a();return C(e,t),t},e.transposeToRef=C,e.reflection=function(e){const t=a();return w(e,t),t},e.reflectionToRef=w,e.fromXYZAxesToRef=function(e,t,n,r){c(e.x,e.y,e.z,0,t.x,t.y,t.z,0,n.x,n.y,n.z,0,0,0,0,1,r)},e.fromQuaternionToRef=S,e.isIdentityUpdate=function(e){if(e._isIdentityDirty){e._isIdentityDirty=!1;const t=e._m;e.isIdentity=1===t[0]&&0===t[1]&&0===t[2]&&0===t[3]&&0===t[4]&&1===t[5]&&0===t[6]&&0===t[7]&&0===t[8]&&0===t[9]&&1===t[10]&&0===t[11]&&0===t[12]&&0===t[13]&&0===t[14]&&1===t[15]}return e.isIdentity},e.isIdentityAs3x2Update=function(e){return e._isIdentity3x2Dirty&&(e._isIdentity3x2Dirty=!1,1!==e._m[0]||1!==e._m[5]||1!==e._m[15]||0!==e._m[1]||0!==e._m[2]||0!==e._m[3]||0!==e._m[4]||0!==e._m[6]||0!==e._m[7]||0!==e._m[8]||0!==e._m[9]||0!==e._m[10]||0!==e._m[11]||0!==e._m[12]||0!==e._m[13]||0!==e._m[14]?e.isIdentity3x2=!1:e.isIdentity3x2=!0),e.isIdentity3x2},e.determinant=k,e.toArray=function(e){return e._m},e.asArray=function(e){return e._m},e.reset=function(e){c(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,e),V(e,!1)},e.add=function(e,t){const n=a();return I(e,t,n),n},e.addToRef=I,e.addToSelf=function(e,t){for(let n=0;n<16;n++)e._m[n]+=t._m[n];P(e)},e.invert=function(e){const t=a();return O(e,t),t},e.invertToRef=O,e.addAtIndex=function(e,t,n){e._m[t]+=n,P(e)},e.multiplyAtIndex=function(e,t,n){return e._m[t]*=n,P(e),e},e.setTranslationFromFloats=N,e.setTranslation=z,e.getTranslation=function(e){return t.Vector3.create(e._m[12],e._m[13],e._m[14])},e.getTranslationToRef=function(e,t){t.x=e._m[12],t.y=e._m[13],t.z=e._m[14]},e.removeRotationAndScaling=function(e){const t=e._m;return c(1,0,0,0,0,1,0,0,0,0,1,0,t[12],t[13],t[14],t[15],e),V(e,0===t[12]&&0===t[13]&&0===t[14]&&1===t[15]),e},e.multiply=function(e,t){const n=a();return L(e,t,n),n},e.copy=U,e.copyToArray=D,e.multiplyToRef=L,e.multiplyToArray=F,e.equals=function(e,t){const n=t;if(!n)return!1;if((e.isIdentity||n.isIdentity)&&!e._isIdentityDirty&&!n._isIdentityDirty)return e.isIdentity&&n.isIdentity;const r=e._m,o=n._m;return r[0]===o[0]&&r[1]===o[1]&&r[2]===o[2]&&r[3]===o[3]&&r[4]===o[4]&&r[5]===o[5]&&r[6]===o[6]&&r[7]===o[7]&&r[8]===o[8]&&r[9]===o[9]&&r[10]===o[10]&&r[11]===o[11]&&r[12]===o[12]&&r[13]===o[13]&&r[14]===o[14]&&r[15]===o[15]},e.clone=function(e){const t=a();return U(e,t),t},e.getHashCode=function(e){let t=e._m[0]||0;for(let n=1;n<16;n++)t=397*t^(e._m[n]||0);return t},e.decompose=q,e.setRowFromFloats=function(e,t,n,r,o,i){if(t<0||t>3)return;const a=4*t;e._m[a+0]=n,e._m[a+1]=r,e._m[a+2]=o,e._m[a+3]=i,P(e)},e.scale=function(e,t){const n=a();return G(e,t,n),n},e.scaleToRef=G,e.scaleAndAddToRef=function(e,t,n){for(let r=0;r<16;r++)n._m[r]+=e._m[r]*t;P(n)},e.normalMatrixToRef=function(e,t){const n=a();O(e,n),C(n,t);const r=t._m;c(r[0],r[1],r[2],0,r[4],r[5],r[6],0,r[8],r[9],r[10],0,0,0,0,1,t)},e.getRotationMatrix=function(e){const t=a();return $(e,t),t},e.getRotationMatrixToRef=$,e.toggleModelMatrixHandInPlace=function(e){e._m[2]*=-1,e._m[6]*=-1,e._m[8]*=-1,e._m[9]*=-1,e._m[14]*=-1,P(e)},e.toggleProjectionMatrixHandInPlace=function(e){e._m[8]*=-1,e._m[9]*=-1,e._m[10]*=-1,e._m[11]*=-1,P(e)}}(e.Matrix||(e.Matrix={}))}(Matrix)),Matrix}function requireQuaternion(){return hasRequiredQuaternion||(hasRequiredQuaternion=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.Quaternion=void 0;const t=requireVector3(),n=requireScalar(),r=requireTypes$1(),o=requireMatrix();!function(e){function i(e=0,t=0,n=0,r=1){return{x:e,y:t,z:n,w:r}}function a(e,t,n){const r=.5*t,o=.5*e,a=.5*n,s=Math.cos(r),c=Math.cos(o),u=Math.cos(a),l=Math.sin(r),f=Math.sin(o),d=Math.sin(a);return i(c*l*u+f*s*d,f*s*u-c*l*d,c*s*d-f*l*u,c*s*u+f*l*d)}function s(e){return Math.sqrt(c(e))}function c(e){return e.x*e.x+e.y*e.y+e.z*e.z+e.w*e.w}function u(e,t){return e.x*t.x+e.y*t.y+e.z*t.z+e.w*t.w}function l(e,t){const n=u(e,t);return 2*Math.acos(Math.min(Math.abs(n),1))*r.RAD2DEG}function f(e){const t=1/s(e);return i(e.x*t,e.y*t,e.z*t,e.w*t)}function d(){return i(0,0,0,1)}function m(t,n,r){const o=e.Identity();return e.slerpToRef(t,n,r,o),o}function h(e,t,n){n.x=e.x*t.w+e.y*t.z-e.z*t.y+e.w*t.x,n.y=-e.x*t.z+e.y*t.w+e.z*t.x+e.w*t.y,n.z=e.x*t.y-e.y*t.x+e.z*t.w+e.w*t.z,n.w=-e.x*t.x-e.y*t.y-e.z*t.z+e.w*t.w}function p(n,r,i,a){const s=o.Matrix.create();o.Matrix.fromXYZAxesToRef(t.Vector3.normalize(n),t.Vector3.normalize(r),t.Vector3.normalize(i),s),e.fromRotationMatrixToRef(s,a)}function g(n,r,i=t.Vector3.Up(),a){const s=o.Matrix.Identity();o.Matrix.lookAtLHToRef(n,r,i,s),o.Matrix.invertToRef(s,s),e.fromRotationMatrixToRef(s,a)}e.create=i,e.add=function(e,t){return{x:e.x+t.x,y:e.y+t.y,z:e.z+t.z,w:e.w+t.w}},e.fromRotationYawPitchRoll=a,e.fromEulerDegress=function(e,t,n){return a(t*r.DEG2RAD,e*r.DEG2RAD,n*r.DEG2RAD)},e.length=s,e.lengthSquared=c,e.dot=u,e.angle=l,e.rotateTowards=function(e,t,n){const r=l(e,t);return 0===r?t:m(e,t,Math.min(1,n/r))},e.lookRotation=function(e,n={x:0,y:1,z:0}){const r=t.Vector3.normalize(e),o=t.Vector3.normalize(t.Vector3.cross(n,r)),a=t.Vector3.cross(r,o),s=o.x,c=o.y,u=o.z,l=a.x,f=a.y,d=a.z,m=r.x,h=r.y,p=r.z,g=s+f+p,y=i();if(g>0){let e=Math.sqrt(g+1);return y.w=.5*e,e=.5/e,y.x=(d-h)*e,y.y=(m-u)*e,y.z=(c-l)*e,y}if(s>=f&&s>=p){const e=Math.sqrt(1+s-f-p),t=.5/e;return y.x=.5*e,y.y=(c+l)*t,y.z=(u+m)*t,y.w=(d-h)*t,y}if(f>p){const e=Math.sqrt(1+f-s-p),t=.5/e;return y.x=(l+c)*t,y.y=.5*e,y.z=(h+d)*t,y.w=(m-u)*t,y}const b=Math.sqrt(1+p-s-f),v=.5/b;return y.x=(m+u)*v,y.y=(h+d)*v,y.z=.5*b,y.w=(c-l)*v,y},e.normalize=f,e.fromToRotation=function(e,n,r=t.Vector3.Up()){const o=t.Vector3.normalize(e),a=t.Vector3.normalize(n),s=t.Vector3.cross(o,a),c=Math.sqrt(t.Vector3.lengthSquared(o)*t.Vector3.lengthSquared(a))+t.Vector3.dot(o,a);return t.Vector3.lengthSquared(s)<1e-4?Math.abs(c)<1e-4?f(i(r.x,r.y,r.z,0)):d():f(i(s.x,s.y,s.z,c))},e.Identity=d,e.toEulerAngles=function(e){const o=t.Vector3.create(),i=e.x*e.x+e.y*e.y+e.z*e.z+e.w*e.w,a=e.x*e.w-e.y*e.z;return a>.4995*i?(o.x=Math.PI/2,o.y=2*Math.atan2(e.y,e.x),o.z=0):a<-.4995*i?(o.x=-Math.PI/2,o.y=-2*Math.atan2(e.y,e.x),o.z=0):(o.x=Math.asin(2*(e.w*e.x-e.y*e.z)),o.y=Math.atan2(2*e.w*e.y+2*e.z*e.x,1-2*(e.x*e.x+e.y*e.y)),o.z=Math.atan2(2*e.w*e.z+2*e.x*e.y,1-2*(e.z*e.z+e.x*e.x))),o.x*=r.RAD2DEG,o.y*=r.RAD2DEG,o.z*=r.RAD2DEG,o.x=n.Scalar.repeat(o.x,360),o.y=n.Scalar.repeat(o.y,360),o.z=n.Scalar.repeat(o.z,360),o},e.fromRotationYawPitchRollToRef=function(e,t,n,r){const o=.5*t,i=.5*e,a=.5*n,s=Math.cos(o),c=Math.cos(i),u=Math.cos(a),l=Math.sin(o),f=Math.sin(i),d=Math.sin(a);r.x=c*l*u+f*s*d,r.y=f*s*u-c*l*d,r.z=c*s*d-f*l*u,r.w=c*s*u+f*l*d},e.fromRotationMatrixToRef=function(e,t){const n=e._m,r=n[0],o=n[4],i=n[8],a=n[1],s=n[5],c=n[9],u=n[2],l=n[6],f=n[10],d=r+s+f;let m;d>0?(m=.5/Math.sqrt(d+1),t.w=.25/m,t.x=(l-c)*m,t.y=(i-u)*m,t.z=(a-o)*m):r>s&&r>f?(m=2*Math.sqrt(1+r-s-f),t.w=(l-c)/m,t.x=.25*m,t.y=(o+a)/m,t.z=(i+u)/m):s>f?(m=2*Math.sqrt(1+s-r-f),t.w=(i-u)/m,t.x=(o+a)/m,t.y=.25*m,t.z=(c+l)/m):(m=2*Math.sqrt(1+f-r-s),t.w=(a-o)/m,t.x=(i+u)/m,t.y=(c+l)/m,t.z=.25*m)},e.slerp=m,e.slerpToRef=function(e,t,n,r){let o,i,a=e.x*t.x+e.y*t.y+e.z*t.z+e.w*t.w,s=!1;if(a<0&&(s=!0,a=-a),a>.999999)i=1-n,o=s?-n:n;else{const e=Math.acos(a),t=1/Math.sin(e);i=Math.sin((1-n)*e)*t,o=s?-Math.sin(n*e)*t:Math.sin(n*e)*t}r.x=i*e.x+o*t.x,r.y=i*e.y+o*t.y,r.z=i*e.z+o*t.z,r.w=i*e.w+o*t.w},e.multiply=function(e,t){const n=i(0,0,0,1);return h(e,t,n),n},e.multiplyToRef=h,e.fromAngleAxis=function(n,o){if(0===t.Vector3.lengthSquared(o))return e.Identity();const i=d();let a=n*r.DEG2RAD;a*=.5;const s=t.Vector3.normalize(o);return t.Vector3.scaleToRef(s,Math.sin(a),s),i.x=s.x,i.y=s.y,i.z=s.z,i.w=Math.cos(a),f(i)},e.fromAxisToRotationQuaternion=function(t,n,r){const o=e.create(0,0,0,0);return p(t,n,r,o),o},e.fromAxisToRotationQuaternionToRef=p,e.Zero=function(){return i(0,0,0,0)},e.fromLookAt=function(n,r,o=t.Vector3.Up()){const i=e.Identity();return g(n,r,o,i),i},e.fromLookAtToRef=g}(e.Quaternion||(e.Quaternion={}))}(Quaternion)),Quaternion}var Color3$1={},Color4$1={},hasRequiredColor4,hasRequiredColor3,hasRequiredDist$1;function requireColor4(){return hasRequiredColor4||(hasRequiredColor4=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.Color4=void 0;const t=requireScalar(),n=requireTypes$1();!function(e){function r(e=0,t=0,n=0,r=1){return{r:e,g:t,b:n,a:r}}function o(){return r(0,0,0,0)}function i(e,t,n){n.r=e.r+t.r,n.g=e.g+t.g,n.b=e.b+t.b,n.a=e.a+t.a}function a(e,t,n){n.r=e.r-t.r,n.g=e.g-t.g,n.b=e.b-t.b,n.a=e.a-t.a}function s(e,t){t.r=Math.pow(e.r,n.ToLinearSpace),t.g=Math.pow(e.g,n.ToLinearSpace),t.b=Math.pow(e.b,n.ToLinearSpace),t.a=e.a}function c(e,t){t.r=Math.pow(e.r,n.ToGammaSpace),t.g=Math.pow(e.g,n.ToGammaSpace),t.b=Math.pow(e.b,n.ToGammaSpace),t.a=e.a}e.create=r,e.fromHexString=function(t){if("#"!==t.substring(0,1)||9!==t.length)return r(0,0,0,0);const n=parseInt(t.substring(1,3),16),o=parseInt(t.substring(3,5),16),i=parseInt(t.substring(5,7),16),a=parseInt(t.substring(7,9),16);return e.fromInts(n,o,i,a)},e.lerp=function(t,n,o){const i=r(0,0,0,0);return e.lerpToRef(t,n,o,i),i},e.lerpToRef=function(e,t,n,r){r.r=e.r+(t.r-e.r)*n,r.g=e.g+(t.g-e.g)*n,r.b=e.b+(t.b-e.b)*n,r.a=e.a+(t.a-e.a)*n},e.Red=function(){return r(1,0,0,1)},e.Green=function(){return r(0,1,0,1)},e.Blue=function(){return r(0,0,1,1)},e.Black=function(){return r(0,0,0,1)},e.White=function(){return r(1,1,1,1)},e.Purple=function(){return r(.5,0,.5,1)},e.Magenta=function(){return r(1,0,1,1)},e.Yellow=function(){return r(1,1,0,1)},e.Gray=function(){return r(.5,.5,.5,1)},e.Teal=function(){return r(0,1,1,1)},e.Clear=o,e.fromColor3=function(e,t=1){return r(e.r,e.g,e.b,t)},e.fromArray=function(e,t=0){return r(e[t],e[t+1],e[t+2],e[t+3])},e.fromInts=function(e,t,n,o){return r(e/255,t/255,n/255,o/255)},e.checkColors4=function(e,t){if(e.length===3*t){const t=[];for(let n=0;n<e.length;n+=3){const r=n/3*4;t[r]=e[n],t[r+1]=e[n+1],t[r+2]=e[n+2],t[r+3]=1}return t}return e},e.addToRef=i,e.toArray=function(e,t,n=0){t[n]=e.r,t[n+1]=e.g,t[n+2]=e.b,t[n+3]=e.a},e.add=function(e,t){const n=o();return i(e,t,n),n},e.subtract=function(e,t){const n=o();return a(e,t,n),n},e.subtractToRef=a,e.scale=function(e,t){return r(e.r*t,e.g*t,e.b*t,e.a*t)},e.scaleToRef=function(e,t,n){n.r=e.r*t,n.g=e.g*t,n.b=e.b*t,n.a=e.a*t},e.scaleAndAddToRef=function(e,t,n){n.r+=e.r*t,n.g+=e.g*t,n.b+=e.b*t,n.a+=e.a*t},e.clampToRef=function(e,n=0,r=1,o){o.r=t.Scalar.clamp(e.r,n,r),o.g=t.Scalar.clamp(e.g,n,r),o.b=t.Scalar.clamp(e.b,n,r),o.a=t.Scalar.clamp(e.a,n,r)},e.multiply=function(e,t){return r(e.r*t.r,e.g*t.g,e.b*t.b,e.a*t.a)},e.multiplyToRef=function(e,t,n){n.r=e.r*t.r,n.g=e.g*t.g,n.b=e.b*t.b,n.a=e.a*t.a},e.toString=function(e){return"{R: "+e.r+" G:"+e.g+" B:"+e.b+" A:"+e.a+"}"},e.getHashCode=function(e){let t=e.r||0;return t=397*t^(e.g||0),t=397*t^(e.b||0),t=397*t^(e.a||0),t},e.clone=function(e){return r(e.r,e.g,e.b,e.a)},e.copyFrom=function(e,t){t.r=e.r,t.g=e.g,t.b=e.b,t.a=e.a},e.copyFromFloats=function(e,t,n,r,o){o.r=e,o.g=t,o.b=n,o.a=r},e.set=function(e,t,n,r,o){o.r=e,o.g=t,o.b=n,o.a=r},e.toHexString=function(e){const n=255*e.r|0,r=255*e.g|0,o=255*e.b|0,i=255*e.a|0;return"#"+t.Scalar.toHex(n)+t.Scalar.toHex(r)+t.Scalar.toHex(o)+t.Scalar.toHex(i)},e.toLinearSpace=function(e){const t=r();return s(e,t),t},e.toLinearSpaceToRef=s,e.toGammaSpace=function(e){const t=r();return c(e,t),t},e.toGammaSpaceToRef=c}(e.Color4||(e.Color4={}))}(Color4$1)),Color4$1}function requireColor3(){return hasRequiredColor3||(hasRequiredColor3=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.Color3=void 0;const t=requireTypes$1(),n=requireColor4(),r=requireScalar();!function(e){function o(e=0,t=0,n=0){return{r:e,g:t,b:n}}function i(e,t,n){return o(e/255,t/255,n/255)}function a(e,t,n=0){t[n]=e.r,t[n+1]=e.g,t[n+2]=e.b}function s(e,t=0,n=1,o){o.r=r.Scalar.clamp(e.r,t,n),o.g=r.Scalar.clamp(e.g,t,n),o.b=r.Scalar.clamp(e.b,t,n)}function c(e,n){n.r=Math.pow(e.r,t.ToLinearSpace),n.g=Math.pow(e.g,t.ToLinearSpace),n.b=Math.pow(e.b,t.ToLinearSpace)}function u(e,n){n.r=Math.pow(e.r,t.ToGammaSpace),n.g=Math.pow(e.g,t.ToGammaSpace),n.b=Math.pow(e.b,t.ToGammaSpace)}e.create=o,e.fromHexString=function(e){return"#"!==e.substring(0,1)||7!==e.length?o(0,0,0):i(parseInt(e.substring(1,3),16),parseInt(e.substring(3,5),16),parseInt(e.substring(5,7),16))},e.fromArray=function(e,t=0){return o(e[t],e[t+1],e[t+2])},e.fromInts=i,e.lerp=function(t,n,r){const i=o(0,0,0);return e.lerpToRef(t,n,r,i),i},e.lerpToRef=function(e,t,n,r){r.r=e.r+(t.r-e.r)*n,r.g=e.g+(t.g-e.g)*n,r.b=e.b+(t.b-e.b)*n},e.Red=function(){return o(1,0,0)},e.Green=function(){return o(0,1,0)},e.Blue=function(){return o(0,0,1)},e.Black=function(){return o(0,0,0)},e.White=function(){return o(1,1,1)},e.Purple=function(){return o(.5,0,.5)},e.Magenta=function(){return o(1,0,1)},e.Yellow=function(){return o(1,1,0)},e.Gray=function(){return o(.5,.5,.5)},e.Teal=function(){return o(0,1,1)},e.Random=function(){return o(Math.random(),Math.random(),Math.random())},e.toString=function(e){return"{R: "+e.r+" G:"+e.g+" B:"+e.b+"}"},e.getHashCode=function(e){let t=e.r||0;return t=397*t^(e.g||0),t=397*t^(e.b||0),t},e.toArray=a,e.toColor4=function(e,t=1){return n.Color4.create(e.r,e.g,e.b,t)},e.asArray=function(e){const t=new Array;return a(e,t,0),t},e.toLuminance=function(e){return.3*e.r+.59*e.g+.11*e.b},e.multiply=function(e,t){return o(e.r*t.r,e.g*t.g,e.b*t.b)},e.multiplyToRef=function(e,t,n){n.r=e.r*t.r,n.g=e.g*t.g,n.b=e.b*t.b},e.equals=function(e,t){return t&&e.r===t.r&&e.g===t.g&&e.b===t.b},e.equalsFloats=function(e,t,n,r){return e.r===t&&e.g===n&&e.b===r},e.scale=function(e,t){return o(e.r*t,e.g*t,e.b*t)},e.scaleToRef=function(e,t,n){n.r=e.r*t,n.g=e.g*t,n.b=e.b*t},e.scaleAndAddToRef=function(e,t,n){n.r+=e.r*t,n.g+=e.g*t,n.b+=e.b*t},e.clampToRef=s,e.clamp=function(t,n=0,r=1){const o=e.Black();return s(t,n,r,o),o},e.add=function(e,t){return o(e.r+t.r,e.g+t.g,e.b+t.b)},e.addToRef=function(e,t,n){n.r=e.r+t.r,n.g=e.g+t.g,n.b=e.b+t.b},e.subtract=function(e,t){return o(e.r-t.r,e.g-t.g,e.b-t.b)},e.subtractToRef=function(e,t,n){n.r=e.r-t.r,n.g=e.g-t.g,n.b=e.b-t.b},e.clone=function(e){return o(e.r,e.g,e.b)},e.copyFrom=function(e,t){t.r=e.r,t.g=e.g,t.b=e.b},e.set=function(e,t,n,r){e.r=t,e.g=n,e.b=r},e.toHexString=function(e){const t=255*e.r|0,n=255*e.g|0,o=255*e.b|0;return"#"+r.Scalar.toHex(t)+r.Scalar.toHex(n)+r.Scalar.toHex(o)},e.toLinearSpace=function(e){const t=o();return c(e,t),t},e.toLinearSpaceToRef=c,e.toGammaSpace=function(e){const t=o();return u(e,t),t},e.toGammaSpaceToRef=u}(e.Color3||(e.Color3={}))}(Color3$1)),Color3$1}function requireDist$1(){return hasRequiredDist$1||(hasRequiredDist$1=1,function(e){var t=commonjsGlobal&&commonjsGlobal.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),n=commonjsGlobal&&commonjsGlobal.__exportStar||function(e,n){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(n,r)||t(n,e,r)};Object.defineProperty(e,"__esModule",{value:!0}),n(requireQuaternion(),e),n(requireVector3(),e),n(requireColor3(),e),n(requireColor4(),e),n(requireVector3(),e),n(requireScalar(),e),n(requireTypes$1(),e),n(requireDist$1(),e)}(dist$1)),dist$1}var distExports$1=requireDist$1(),minimal$1={exports:{}},indexMinimal={},minimal={},aspromise,hasRequiredAspromise;function requireAspromise(){if(hasRequiredAspromise)return aspromise;return hasRequiredAspromise=1,aspromise=function(e,t){var n=new Array(arguments.length-1),r=0,o=2,i=!0;for(;o<arguments.length;)n[r++]=arguments[o++];return new Promise((function(o,a){n[r]=function(e){if(i)if(i=!1,e)a(e);else{for(var t=new Array(arguments.length-1),n=0;n<t.length;)t[n++]=arguments[n];o.apply(null,t)}};try{e.apply(t||null,n)}catch(e){i&&(i=!1,a(e))}}))},aspromise}var base64={},hasRequiredBase64,eventemitter,hasRequiredEventemitter,float,hasRequiredFloat,inquire_1,hasRequiredInquire;function requireBase64(){return hasRequiredBase64||(hasRequiredBase64=1,function(e){var t=e;t.length=function(e){var t=e.length;if(!t)return 0;for(var n=0;--t%4>1&&"="===e.charAt(t);)++n;return Math.ceil(3*e.length)/4-n};for(var n=new Array(64),r=new Array(123),o=0;o<64;)r[n[o]=o<26?o+65:o<52?o+71:o<62?o-4:o-59|43]=o++;t.encode=function(e,t,r){for(var o,i=null,a=[],s=0,c=0;t<r;){var u=e[t++];switch(c){case 0:a[s++]=n[u>>2],o=(3&u)<<4,c=1;break;case 1:a[s++]=n[o|u>>4],o=(15&u)<<2,c=2;break;case 2:a[s++]=n[o|u>>6],a[s++]=n[63&u],c=0}s>8191&&((i||(i=[])).push(String.fromCharCode.apply(String,a)),s=0)}return c&&(a[s++]=n[o],a[s++]=61,1===c&&(a[s++]=61)),i?(s&&i.push(String.fromCharCode.apply(String,a.slice(0,s))),i.join("")):String.fromCharCode.apply(String,a.slice(0,s))};var i="invalid encoding";t.decode=function(e,t,n){for(var o,a=n,s=0,c=0;c<e.length;){var u=e.charCodeAt(c++);if(61===u&&s>1)break;if(void 0===(u=r[u]))throw Error(i);switch(s){case 0:o=u,s=1;break;case 1:t[n++]=o<<2|(48&u)>>4,o=u,s=2;break;case 2:t[n++]=(15&o)<<4|(60&u)>>2,o=u,s=3;break;case 3:t[n++]=(3&o)<<6|u,s=0}}if(1===s)throw Error(i);return n-a},t.test=function(e){return/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(e)}}(base64)),base64}function requireEventemitter(){if(hasRequiredEventemitter)return eventemitter;function e(){this._listeners={}}return hasRequiredEventemitter=1,eventemitter=e,e.prototype.on=function(e,t,n){return(this._listeners[e]||(this._listeners[e]=[])).push({fn:t,ctx:n||this}),this},e.prototype.off=function(e,t){if(void 0===e)this._listeners={};else if(void 0===t)this._listeners[e]=[];else for(var n=this._listeners[e],r=0;r<n.length;)n[r].fn===t?n.splice(r,1):++r;return this},e.prototype.emit=function(e){var t=this._listeners[e];if(t){for(var n=[],r=1;r<arguments.length;)n.push(arguments[r++]);for(r=0;r<t.length;)t[r].fn.apply(t[r++].ctx,n)}return this},eventemitter}function requireFloat(){if(hasRequiredFloat)return float;function e(e){return"undefined"!=typeof Float32Array?function(){var t=new Float32Array([-0]),n=new Uint8Array(t.buffer),r=128===n[3];function o(e,r,o){t[0]=e,r[o]=n[0],r[o+1]=n[1],r[o+2]=n[2],r[o+3]=n[3]}function i(e,r,o){t[0]=e,r[o]=n[3],r[o+1]=n[2],r[o+2]=n[1],r[o+3]=n[0]}function a(e,r){return n[0]=e[r],n[1]=e[r+1],n[2]=e[r+2],n[3]=e[r+3],t[0]}function s(e,r){return n[3]=e[r],n[2]=e[r+1],n[1]=e[r+2],n[0]=e[r+3],t[0]}e.writeFloatLE=r?o:i,e.writeFloatBE=r?i:o,e.readFloatLE=r?a:s,e.readFloatBE=r?s:a}():function(){function i(e,t,n,r){var o=t<0?1:0;if(o&&(t=-t),0===t)e(1/t>0?0:2147483648,n,r);else if(isNaN(t))e(2143289344,n,r);else if(t>34028234663852886e22)e((o<<31|2139095040)>>>0,n,r);else if(t<11754943508222875e-54)e((o<<31|Math.round(t/1401298464324817e-60))>>>0,n,r);else{var i=Math.floor(Math.log(t)/Math.LN2);e((o<<31|i+127<<23|8388607&Math.round(t*Math.pow(2,-i)*8388608))>>>0,n,r)}}function a(e,t,n){var r=e(t,n),o=2*(r>>31)+1,i=r>>>23&255,a=8388607&r;return 255===i?a?NaN:o*(1/0):0===i?1401298464324817e-60*o*a:o*Math.pow(2,i-150)*(a+8388608)}e.writeFloatLE=i.bind(null,t),e.writeFloatBE=i.bind(null,n),e.readFloatLE=a.bind(null,r),e.readFloatBE=a.bind(null,o)}(),"undefined"!=typeof Float64Array?function(){var t=new Float64Array([-0]),n=new Uint8Array(t.buffer),r=128===n[7];function o(e,r,o){t[0]=e,r[o]=n[0],r[o+1]=n[1],r[o+2]=n[2],r[o+3]=n[3],r[o+4]=n[4],r[o+5]=n[5],r[o+6]=n[6],r[o+7]=n[7]}function i(e,r,o){t[0]=e,r[o]=n[7],r[o+1]=n[6],r[o+2]=n[5],r[o+3]=n[4],r[o+4]=n[3],r[o+5]=n[2],r[o+6]=n[1],r[o+7]=n[0]}function a(e,r){return n[0]=e[r],n[1]=e[r+1],n[2]=e[r+2],n[3]=e[r+3],n[4]=e[r+4],n[5]=e[r+5],n[6]=e[r+6],n[7]=e[r+7],t[0]}function s(e,r){return n[7]=e[r],n[6]=e[r+1],n[5]=e[r+2],n[4]=e[r+3],n[3]=e[r+4],n[2]=e[r+5],n[1]=e[r+6],n[0]=e[r+7],t[0]}e.writeDoubleLE=r?o:i,e.writeDoubleBE=r?i:o,e.readDoubleLE=r?a:s,e.readDoubleBE=r?s:a}():function(){function i(e,t,n,r,o,i){var a=r<0?1:0;if(a&&(r=-r),0===r)e(0,o,i+t),e(1/r>0?0:2147483648,o,i+n);else if(isNaN(r))e(0,o,i+t),e(2146959360,o,i+n);else if(r>17976931348623157e292)e(0,o,i+t),e((a<<31|2146435072)>>>0,o,i+n);else{var s;if(r<22250738585072014e-324)e((s=r/5e-324)>>>0,o,i+t),e((a<<31|s/4294967296)>>>0,o,i+n);else{var c=Math.floor(Math.log(r)/Math.LN2);1024===c&&(c=1023),e(4503599627370496*(s=r*Math.pow(2,-c))>>>0,o,i+t),e((a<<31|c+1023<<20|1048576*s&1048575)>>>0,o,i+n)}}}function a(e,t,n,r,o){var i=e(r,o+t),a=e(r,o+n),s=2*(a>>31)+1,c=a>>>20&2047,u=4294967296*(1048575&a)+i;return 2047===c?u?NaN:s*(1/0):0===c?5e-324*s*u:s*Math.pow(2,c-1075)*(u+4503599627370496)}e.writeDoubleLE=i.bind(null,t,0,4),e.writeDoubleBE=i.bind(null,n,4,0),e.readDoubleLE=a.bind(null,r,0,4),e.readDoubleBE=a.bind(null,o,4,0)}(),e}function t(e,t,n){t[n]=255&e,t[n+1]=e>>>8&255,t[n+2]=e>>>16&255,t[n+3]=e>>>24}function n(e,t,n){t[n]=e>>>24,t[n+1]=e>>>16&255,t[n+2]=e>>>8&255,t[n+3]=255&e}function r(e,t){return(e[t]|e[t+1]<<8|e[t+2]<<16|e[t+3]<<24)>>>0}function o(e,t){return(e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3])>>>0}return hasRequiredFloat=1,float=e(e)}function requireInquire(){if(hasRequiredInquire)return inquire_1;function inquire(moduleName){try{var mod=eval("quire".replace(/^/,"re"))(moduleName);if(mod&&(mod.length||Object.keys(mod).length))return mod}catch(e){}return null}return hasRequiredInquire=1,inquire_1=inquire,inquire_1}var utf8={},hasRequiredUtf8,pool_1,hasRequiredPool,longbits,hasRequiredLongbits,hasRequiredMinimal$1,writer,hasRequiredWriter,writer_buffer,hasRequiredWriter_buffer,reader,hasRequiredReader,reader_buffer,hasRequiredReader_buffer;function requireUtf8(){return hasRequiredUtf8||(hasRequiredUtf8=1,function(e){var t=e;t.length=function(e){for(var t=0,n=0,r=0;r<e.length;++r)(n=e.charCodeAt(r))<128?t+=1:n<2048?t+=2:55296==(64512&n)&&56320==(64512&e.charCodeAt(r+1))?(++r,t+=4):t+=3;return t},t.read=function(e,t,n){if(n-t<1)return"";for(var r,o=null,i=[],a=0;t<n;)(r=e[t++])<128?i[a++]=r:r>191&&r<224?i[a++]=(31&r)<<6|63&e[t++]:r>239&&r<365?(r=((7&r)<<18|(63&e[t++])<<12|(63&e[t++])<<6|63&e[t++])-65536,i[a++]=55296+(r>>10),i[a++]=56320+(1023&r)):i[a++]=(15&r)<<12|(63&e[t++])<<6|63&e[t++],a>8191&&((o||(o=[])).push(String.fromCharCode.apply(String,i)),a=0);return o?(a&&o.push(String.fromCharCode.apply(String,i.slice(0,a))),o.join("")):String.fromCharCode.apply(String,i.slice(0,a))},t.write=function(e,t,n){for(var r,o,i=n,a=0;a<e.length;++a)(r=e.charCodeAt(a))<128?t[n++]=r:r<2048?(t[n++]=r>>6|192,t[n++]=63&r|128):55296==(64512&r)&&56320==(64512&(o=e.charCodeAt(a+1)))?(r=65536+((1023&r)<<10)+(1023&o),++a,t[n++]=r>>18|240,t[n++]=r>>12&63|128,t[n++]=r>>6&63|128,t[n++]=63&r|128):(t[n++]=r>>12|224,t[n++]=r>>6&63|128,t[n++]=63&r|128);return n-i}}(utf8)),utf8}function requirePool(){if(hasRequiredPool)return pool_1;return hasRequiredPool=1,pool_1=function(e,t,n){var r=n||8192,o=r>>>1,i=null,a=r;return function(n){if(n<1||n>o)return e(n);a+n>r&&(i=e(r),a=0);var s=t.call(i,a,a+=n);return 7&a&&(a=1+(7|a)),s}}}function requireLongbits(){if(hasRequiredLongbits)return longbits;hasRequiredLongbits=1,longbits=t;var e=requireMinimal$1();function t(e,t){this.lo=e>>>0,this.hi=t>>>0}var n=t.zero=new t(0,0);n.toNumber=function(){return 0},n.zzEncode=n.zzDecode=function(){return this},n.length=function(){return 1};var r=t.zeroHash="\0\0\0\0\0\0\0\0";t.fromNumber=function(e){if(0===e)return n;var r=e<0;r&&(e=-e);var o=e>>>0,i=(e-o)/4294967296>>>0;return r&&(i=~i>>>0,o=~o>>>0,++o>4294967295&&(o=0,++i>4294967295&&(i=0))),new t(o,i)},t.from=function(r){if("number"==typeof r)return t.fromNumber(r);if(e.isString(r)){if(!e.Long)return t.fromNumber(parseInt(r,10));r=e.Long.fromString(r)}return r.low||r.high?new t(r.low>>>0,r.high>>>0):n},t.prototype.toNumber=function(e){if(!e&&this.hi>>>31){var t=1+~this.lo>>>0,n=~this.hi>>>0;return t||(n=n+1>>>0),-(t+4294967296*n)}return this.lo+4294967296*this.hi},t.prototype.toLong=function(t){return e.Long?new e.Long(0|this.lo,0|this.hi,Boolean(t)):{low:0|this.lo,high:0|this.hi,unsigned:Boolean(t)}};var o=String.prototype.charCodeAt;return t.fromHash=function(e){return e===r?n:new t((o.call(e,0)|o.call(e,1)<<8|o.call(e,2)<<16|o.call(e,3)<<24)>>>0,(o.call(e,4)|o.call(e,5)<<8|o.call(e,6)<<16|o.call(e,7)<<24)>>>0)},t.prototype.toHash=function(){return String.fromCharCode(255&this.lo,this.lo>>>8&255,this.lo>>>16&255,this.lo>>>24,255&this.hi,this.hi>>>8&255,this.hi>>>16&255,this.hi>>>24)},t.prototype.zzEncode=function(){var e=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^e)>>>0,this.lo=(this.lo<<1^e)>>>0,this},t.prototype.zzDecode=function(){var e=-(1&this.lo);return this.lo=((this.lo>>>1|this.hi<<31)^e)>>>0,this.hi=(this.hi>>>1^e)>>>0,this},t.prototype.length=function(){var e=this.lo,t=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return 0===n?0===t?e<16384?e<128?1:2:e<2097152?3:4:t<16384?t<128?5:6:t<2097152?7:8:n<128?9:10},longbits}function requireMinimal$1(){return hasRequiredMinimal$1||(hasRequiredMinimal$1=1,function(e){var t=e;function n(e,t,n){for(var r=Object.keys(t),o=0;o<r.length;++o)void 0!==e[r[o]]&&n||(e[r[o]]=t[r[o]]);return e}function r(e){function t(e,r){if(!(this instanceof t))return new t(e,r);Object.defineProperty(this,"message",{get:function(){return e}}),Error.captureStackTrace?Error.captureStackTrace(this,t):Object.defineProperty(this,"stack",{value:(new Error).stack||""}),r&&n(this,r)}return(t.prototype=Object.create(Error.prototype)).constructor=t,Object.defineProperty(t.prototype,"name",{get:function(){return e}}),t.prototype.toString=function(){return this.name+": "+this.message},t}t.asPromise=requireAspromise(),t.base64=requireBase64(),t.EventEmitter=requireEventemitter(),t.float=requireFloat(),t.inquire=requireInquire(),t.utf8=requireUtf8(),t.pool=requirePool(),t.LongBits=requireLongbits(),t.isNode=Boolean(void 0!==commonjsGlobal&&commonjsGlobal&&commonjsGlobal.process&&commonjsGlobal.process.versions&&commonjsGlobal.process.versions.node),t.global=t.isNode&&commonjsGlobal||"undefined"!=typeof window&&window||"undefined"!=typeof self&&self||commonjsGlobal,t.emptyArray=Object.freeze?Object.freeze([]):[],t.emptyObject=Object.freeze?Object.freeze({}):{},t.isInteger=Number.isInteger||function(e){return"number"==typeof e&&isFinite(e)&&Math.floor(e)===e},t.isString=function(e){return"string"==typeof e||e instanceof String},t.isObject=function(e){return e&&"object"==typeof e},t.isset=t.isSet=function(e,t){var n=e[t];return!(null==n||!e.hasOwnProperty(t))&&("object"!=typeof n||(Array.isArray(n)?n.length:Object.keys(n).length)>0)},t.Buffer=function(){try{var e=t.inquire("buffer").Buffer;return e.prototype.utf8Write?e:null}catch(e){return null}}(),t._Buffer_from=null,t._Buffer_allocUnsafe=null,t.newBuffer=function(e){return"number"==typeof e?t.Buffer?t._Buffer_allocUnsafe(e):new t.Array(e):t.Buffer?t._Buffer_from(e):"undefined"==typeof Uint8Array?e:new Uint8Array(e)},t.Array="undefined"!=typeof Uint8Array?Uint8Array:Array,t.Long=t.global.dcodeIO&&t.global.dcodeIO.Long||t.global.Long||t.inquire("long"),t.key2Re=/^true|false|0|1$/,t.key32Re=/^-?(?:0|[1-9][0-9]*)$/,t.key64Re=/^(?:[\\x00-\\xff]{8}|-?(?:0|[1-9][0-9]*))$/,t.longToHash=function(e){return e?t.LongBits.from(e).toHash():t.LongBits.zeroHash},t.longFromHash=function(e,n){var r=t.LongBits.fromHash(e);return t.Long?t.Long.fromBits(r.lo,r.hi,n):r.toNumber(Boolean(n))},t.merge=n,t.lcFirst=function(e){return e.charAt(0).toLowerCase()+e.substring(1)},t.newError=r,t.ProtocolError=r("ProtocolError"),t.oneOfGetter=function(e){for(var t={},n=0;n<e.length;++n)t[e[n]]=1;return function(){for(var e=Object.keys(this),n=e.length-1;n>-1;--n)if(1===t[e[n]]&&void 0!==this[e[n]]&&null!==this[e[n]])return e[n]}},t.oneOfSetter=function(e){return function(t){for(var n=0;n<e.length;++n)e[n]!==t&&delete this[e[n]]}},t.toJSONOptions={longs:String,enums:String,bytes:String,json:!0},t._configure=function(){var e=t.Buffer;e?(t._Buffer_from=e.from!==Uint8Array.from&&e.from||function(t,n){return new e(t,n)},t._Buffer_allocUnsafe=e.allocUnsafe||function(t){return new e(t)}):t._Buffer_from=t._Buffer_allocUnsafe=null}}(minimal)),minimal}function requireWriter(){if(hasRequiredWriter)return writer;hasRequiredWriter=1,writer=c;var e,t=requireMinimal$1(),n=t.LongBits,r=t.base64,o=t.utf8;function i(e,t,n){this.fn=e,this.len=t,this.next=void 0,this.val=n}function a(){}function s(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}function c(){this.len=0,this.head=new i(a,0,0),this.tail=this.head,this.states=null}var u=function(){return t.Buffer?function(){return(c.create=function(){return new e})()}:function(){return new c}};function l(e,t,n){t[n]=255&e}function f(e,t){this.len=e,this.next=void 0,this.val=t}function d(e,t,n){for(;e.hi;)t[n++]=127&e.lo|128,e.lo=(e.lo>>>7|e.hi<<25)>>>0,e.hi>>>=7;for(;e.lo>127;)t[n++]=127&e.lo|128,e.lo=e.lo>>>7;t[n++]=e.lo}function m(e,t,n){t[n]=255&e,t[n+1]=e>>>8&255,t[n+2]=e>>>16&255,t[n+3]=e>>>24}c.create=u(),c.alloc=function(e){return new t.Array(e)},t.Array!==Array&&(c.alloc=t.pool(c.alloc,t.Array.prototype.subarray)),c.prototype._push=function(e,t,n){return this.tail=this.tail.next=new i(e,t,n),this.len+=t,this},f.prototype=Object.create(i.prototype),f.prototype.fn=function(e,t,n){for(;e>127;)t[n++]=127&e|128,e>>>=7;t[n]=e},c.prototype.uint32=function(e){return this.len+=(this.tail=this.tail.next=new f((e>>>=0)<128?1:e<16384?2:e<2097152?3:e<268435456?4:5,e)).len,this},c.prototype.int32=function(e){return e<0?this._push(d,10,n.fromNumber(e)):this.uint32(e)},c.prototype.sint32=function(e){return this.uint32((e<<1^e>>31)>>>0)},c.prototype.uint64=function(e){var t=n.from(e);return this._push(d,t.length(),t)},c.prototype.int64=c.prototype.uint64,c.prototype.sint64=function(e){var t=n.from(e).zzEncode();return this._push(d,t.length(),t)},c.prototype.bool=function(e){return this._push(l,1,e?1:0)},c.prototype.fixed32=function(e){return this._push(m,4,e>>>0)},c.prototype.sfixed32=c.prototype.fixed32,c.prototype.fixed64=function(e){var t=n.from(e);return this._push(m,4,t.lo)._push(m,4,t.hi)},c.prototype.sfixed64=c.prototype.fixed64,c.prototype.float=function(e){return this._push(t.float.writeFloatLE,4,e)},c.prototype.double=function(e){return this._push(t.float.writeDoubleLE,8,e)};var h=t.Array.prototype.set?function(e,t,n){t.set(e,n)}:function(e,t,n){for(var r=0;r<e.length;++r)t[n+r]=e[r]};return c.prototype.bytes=function(e){var n=e.length>>>0;if(!n)return this._push(l,1,0);if(t.isString(e)){var o=c.alloc(n=r.length(e));r.decode(e,o,0),e=o}return this.uint32(n)._push(h,n,e)},c.prototype.string=function(e){var t=o.length(e);return t?this.uint32(t)._push(o.write,t,e):this._push(l,1,0)},c.prototype.fork=function(){return this.states=new s(this),this.head=this.tail=new i(a,0,0),this.len=0,this},c.prototype.reset=function(){return this.states?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new i(a,0,0),this.len=0),this},c.prototype.ldelim=function(){var e=this.head,t=this.tail,n=this.len;return this.reset().uint32(n),n&&(this.tail.next=e.next,this.tail=t,this.len+=n),this},c.prototype.finish=function(){for(var e=this.head.next,t=this.constructor.alloc(this.len),n=0;e;)e.fn(e.val,t,n),n+=e.len,e=e.next;return t},c._configure=function(t){e=t,c.create=u(),e._configure()},writer}function requireWriter_buffer(){if(hasRequiredWriter_buffer)return writer_buffer;hasRequiredWriter_buffer=1,writer_buffer=n;var e=requireWriter();(n.prototype=Object.create(e.prototype)).constructor=n;var t=requireMinimal$1();function n(){e.call(this)}function r(e,n,r){e.length<40?t.utf8.write(e,n,r):n.utf8Write?n.utf8Write(e,r):n.write(e,r)}return n._configure=function(){n.alloc=t._Buffer_allocUnsafe,n.writeBytesBuffer=t.Buffer&&t.Buffer.prototype instanceof Uint8Array&&"set"===t.Buffer.prototype.set.name?function(e,t,n){t.set(e,n)}:function(e,t,n){if(e.copy)e.copy(t,n,0,e.length);else for(var r=0;r<e.length;)t[n++]=e[r++]}},n.prototype.bytes=function(e){t.isString(e)&&(e=t._Buffer_from(e,"base64"));var r=e.length>>>0;return this.uint32(r),r&&this._push(n.writeBytesBuffer,r,e),this},n.prototype.string=function(e){var n=t.Buffer.byteLength(e);return this.uint32(n),n&&this._push(r,n,e),this},n._configure(),writer_buffer}function requireReader(){if(hasRequiredReader)return reader;hasRequiredReader=1,reader=i;var e,t=requireMinimal$1(),n=t.LongBits,r=t.utf8;function o(e,t){return RangeError("index out of range: "+e.pos+" + "+(t||1)+" > "+e.len)}function i(e){this.buf=e,this.pos=0,this.len=e.length}var a,s="undefined"!=typeof Uint8Array?function(e){if(e instanceof Uint8Array||Array.isArray(e))return new i(e);throw Error("illegal buffer")}:function(e){if(Array.isArray(e))return new i(e);throw Error("illegal buffer")},c=function(){return t.Buffer?function(n){return(i.create=function(n){return t.Buffer.isBuffer(n)?new e(n):s(n)})(n)}:s};function u(){var e=new n(0,0),t=0;if(!(this.len-this.pos>4)){for(;t<3;++t){if(this.pos>=this.len)throw o(this);if(e.lo=(e.lo|(127&this.buf[this.pos])<<7*t)>>>0,this.buf[this.pos++]<128)return e}return e.lo=(e.lo|(127&this.buf[this.pos++])<<7*t)>>>0,e}for(;t<4;++t)if(e.lo=(e.lo|(127&this.buf[this.pos])<<7*t)>>>0,this.buf[this.pos++]<128)return e;if(e.lo=(e.lo|(127&this.buf[this.pos])<<28)>>>0,e.hi=(e.hi|(127&this.buf[this.pos])>>4)>>>0,this.buf[this.pos++]<128)return e;if(t=0,this.len-this.pos>4){for(;t<5;++t)if(e.hi=(e.hi|(127&this.buf[this.pos])<<7*t+3)>>>0,this.buf[this.pos++]<128)return e}else for(;t<5;++t){if(this.pos>=this.len)throw o(this);if(e.hi=(e.hi|(127&this.buf[this.pos])<<7*t+3)>>>0,this.buf[this.pos++]<128)return e}throw Error("invalid varint encoding")}function l(e,t){return(e[t-4]|e[t-3]<<8|e[t-2]<<16|e[t-1]<<24)>>>0}function f(){if(this.pos+8>this.len)throw o(this,8);return new n(l(this.buf,this.pos+=4),l(this.buf,this.pos+=4))}return i.create=c(),i.prototype._slice=t.Array.prototype.subarray||t.Array.prototype.slice,i.prototype.uint32=(a=4294967295,function(){if(a=(127&this.buf[this.pos])>>>0,this.buf[this.pos++]<128)return a;if(a=(a|(127&this.buf[this.pos])<<7)>>>0,this.buf[this.pos++]<128)return a;if(a=(a|(127&this.buf[this.pos])<<14)>>>0,this.buf[this.pos++]<128)return a;if(a=(a|(127&this.buf[this.pos])<<21)>>>0,this.buf[this.pos++]<128)return a;if(a=(a|(15&this.buf[this.pos])<<28)>>>0,this.buf[this.pos++]<128)return a;if((this.pos+=5)>this.len)throw this.pos=this.len,o(this,10);return a}),i.prototype.int32=function(){return 0|this.uint32()},i.prototype.sint32=function(){var e=this.uint32();return e>>>1^-(1&e)|0},i.prototype.bool=function(){return 0!==this.uint32()},i.prototype.fixed32=function(){if(this.pos+4>this.len)throw o(this,4);return l(this.buf,this.pos+=4)},i.prototype.sfixed32=function(){if(this.pos+4>this.len)throw o(this,4);return 0|l(this.buf,this.pos+=4)},i.prototype.float=function(){if(this.pos+4>this.len)throw o(this,4);var e=t.float.readFloatLE(this.buf,this.pos);return this.pos+=4,e},i.prototype.double=function(){if(this.pos+8>this.len)throw o(this,4);var e=t.float.readDoubleLE(this.buf,this.pos);return this.pos+=8,e},i.prototype.bytes=function(){var e=this.uint32(),t=this.pos,n=this.pos+e;if(n>this.len)throw o(this,e);return this.pos+=e,Array.isArray(this.buf)?this.buf.slice(t,n):t===n?new this.buf.constructor(0):this._slice.call(this.buf,t,n)},i.prototype.string=function(){var e=this.bytes();return r.read(e,0,e.length)},i.prototype.skip=function(e){if("number"==typeof e){if(this.pos+e>this.len)throw o(this,e);this.pos+=e}else do{if(this.pos>=this.len)throw o(this)}while(128&this.buf[this.pos++]);return this},i.prototype.skipType=function(e){switch(e){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;4!=(e=7&this.uint32());)this.skipType(e);break;case 5:this.skip(4);break;default:throw Error("invalid wire type "+e+" at offset "+this.pos)}return this},i._configure=function(n){e=n,i.create=c(),e._configure();var r=t.Long?"toLong":"toNumber";t.merge(i.prototype,{int64:function(){return u.call(this)[r](!1)},uint64:function(){return u.call(this)[r](!0)},sint64:function(){return u.call(this).zzDecode()[r](!1)},fixed64:function(){return f.call(this)[r](!0)},sfixed64:function(){return f.call(this)[r](!1)}})},reader}function requireReader_buffer(){if(hasRequiredReader_buffer)return reader_buffer;hasRequiredReader_buffer=1,reader_buffer=n;var e=requireReader();(n.prototype=Object.create(e.prototype)).constructor=n;var t=requireMinimal$1();function n(t){e.call(this,t)}return n._configure=function(){t.Buffer&&(n.prototype._slice=t.Buffer.prototype.slice)},n.prototype.string=function(){var e=this.uint32();return this.buf.utf8Slice?this.buf.utf8Slice(this.pos,this.pos=Math.min(this.pos+e,this.len)):this.buf.toString("utf-8",this.pos,this.pos=Math.min(this.pos+e,this.len))},n._configure(),reader_buffer}var rpc={},service,hasRequiredService,hasRequiredRpc,roots,hasRequiredRoots,hasRequiredIndexMinimal,hasRequiredMinimal;function requireService(){if(hasRequiredService)return service;hasRequiredService=1,service=t;var e=requireMinimal$1();function t(t,n,r){if("function"!=typeof t)throw TypeError("rpcImpl must be a function");e.EventEmitter.call(this),this.rpcImpl=t,this.requestDelimited=Boolean(n),this.responseDelimited=Boolean(r)}return(t.prototype=Object.create(e.EventEmitter.prototype)).constructor=t,t.prototype.rpcCall=function t(n,r,o,i,a){if(!i)throw TypeError("request must be specified");var s=this;if(!a)return e.asPromise(t,s,n,r,o,i);if(s.rpcImpl)try{return s.rpcImpl(n,r[s.requestDelimited?"encodeDelimited":"encode"](i).finish(),(function(e,t){if(e)return s.emit("error",e,n),a(e);if(null!==t){if(!(t instanceof o))try{t=o[s.responseDelimited?"decodeDelimited":"decode"](t)}catch(e){return s.emit("error",e,n),a(e)}return s.emit("data",t,n),a(null,t)}s.end(!0)}))}catch(e){return s.emit("error",e,n),void setTimeout((function(){a(e)}),0)}else setTimeout((function(){a(Error("already ended"))}),0)},t.prototype.end=function(e){return this.rpcImpl&&(e||this.rpcImpl(null,null,null),this.rpcImpl=null,this.emit("end").off()),this},service}function requireRpc(){return hasRequiredRpc||(hasRequiredRpc=1,function(e){e.Service=requireService()}(rpc)),rpc}function requireRoots(){return hasRequiredRoots?roots:(hasRequiredRoots=1,roots={})}function requireIndexMinimal(){return hasRequiredIndexMinimal||(hasRequiredIndexMinimal=1,function(e){var t=e;function n(){t.util._configure(),t.Writer._configure(t.BufferWriter),t.Reader._configure(t.BufferReader)}t.build="minimal",t.Writer=requireWriter(),t.BufferWriter=requireWriter_buffer(),t.Reader=requireReader(),t.BufferReader=requireReader_buffer(),t.util=requireMinimal$1(),t.rpc=requireRpc(),t.roots=requireRoots(),t.configure=n,n()}(indexMinimal)),indexMinimal}function requireMinimal(){return hasRequiredMinimal||(hasRequiredMinimal=1,minimal$1.exports=requireIndexMinimal()),minimal$1.exports}var minimalExports=requireMinimal();function createBasePBAnimator(){return{states:[]}}const PBAnimator={encode(e,t=minimalExports.Writer.create()){for(const n of e.states)PBAnimationState.encode(n,t.uint32(10).fork()).ldelim();return t},decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBAnimator();for(;n.pos<r;){const e=n.uint32();if(e>>>3==1)o.states.push(PBAnimationState.decode(n,n.uint32()));else n.skipType(7&e)}return o}};function createBasePBAnimationState(){return{name:"",clip:"",playing:void 0,weight:void 0,speed:void 0,loop:void 0,shouldReset:void 0}}const PBAnimationState={encode:(e,t=minimalExports.Writer.create())=>(""!==e.name&&t.uint32(10).string(e.name),""!==e.clip&&t.uint32(18).string(e.clip),void 0!==e.playing&&t.uint32(24).bool(e.playing),void 0!==e.weight&&t.uint32(37).float(e.weight),void 0!==e.speed&&t.uint32(45).float(e.speed),void 0!==e.loop&&t.uint32(48).bool(e.loop),void 0!==e.shouldReset&&t.uint32(56).bool(e.shouldReset),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBAnimationState();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.name=n.string();break;case 2:o.clip=n.string();break;case 3:o.playing=n.bool();break;case 4:o.weight=n.float();break;case 5:o.speed=n.float();break;case 6:o.loop=n.bool();break;case 7:o.shouldReset=n.bool();break;default:n.skipType(7&e)}}return o}},COMPONENT_ID$p=1042,AnimatorSchema={serialize(e,t){const n=PBAnimator.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBAnimator.decode(e.buffer(),e.remainingBytes()),create:()=>PBAnimator.decode(new Uint8Array)};function createBasePBAudioSource(){return{playing:void 0,volume:void 0,loop:void 0,pitch:void 0,audioClipUrl:""}}const PBAudioSource={encode:(e,t=minimalExports.Writer.create())=>(void 0!==e.playing&&t.uint32(8).bool(e.playing),void 0!==e.volume&&t.uint32(21).float(e.volume),void 0!==e.loop&&t.uint32(24).bool(e.loop),void 0!==e.pitch&&t.uint32(37).float(e.pitch),""!==e.audioClipUrl&&t.uint32(42).string(e.audioClipUrl),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBAudioSource();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.playing=n.bool();break;case 2:o.volume=n.float();break;case 3:o.loop=n.bool();break;case 4:o.pitch=n.float();break;case 5:o.audioClipUrl=n.string();break;default:n.skipType(7&e)}}return o}},COMPONENT_ID$o=1020,AudioSourceSchema={serialize(e,t){const n=PBAudioSource.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBAudioSource.decode(e.buffer(),e.remainingBytes()),create:()=>PBAudioSource.decode(new Uint8Array)};function createBasePBAudioStream(){return{playing:void 0,volume:void 0,url:""}}const PBAudioStream={encode:(e,t=minimalExports.Writer.create())=>(void 0!==e.playing&&t.uint32(8).bool(e.playing),void 0!==e.volume&&t.uint32(21).float(e.volume),""!==e.url&&t.uint32(26).string(e.url),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBAudioStream();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.playing=n.bool();break;case 2:o.volume=n.float();break;case 3:o.url=n.string();break;default:n.skipType(7&e)}}return o}},COMPONENT_ID$n=1021,AudioStreamSchema={serialize(e,t){const n=PBAudioStream.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBAudioStream.decode(e.buffer(),e.remainingBytes()),create:()=>PBAudioStream.decode(new Uint8Array)};var AvatarAnchorPointType;function createBasePBAvatarAttach(){return{avatarId:"",anchorPointId:0}}!function(e){e[e.AAPT_POSITION=0]="AAPT_POSITION",e[e.AAPT_NAME_TAG=1]="AAPT_NAME_TAG",e[e.AAPT_LEFT_HAND=2]="AAPT_LEFT_HAND",e[e.AAPT_RIGHT_HAND=3]="AAPT_RIGHT_HAND"}(AvatarAnchorPointType||(AvatarAnchorPointType={}));const PBAvatarAttach={encode:(e,t=minimalExports.Writer.create())=>(""!==e.avatarId&&t.uint32(10).string(e.avatarId),0!==e.anchorPointId&&t.uint32(16).int32(e.anchorPointId),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBAvatarAttach();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.avatarId=n.string();break;case 2:o.anchorPointId=n.int32();break;default:n.skipType(7&e)}}return o}},COMPONENT_ID$m=1073,AvatarAttachSchema={serialize(e,t){const n=PBAvatarAttach.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBAvatarAttach.decode(e.buffer(),e.remainingBytes()),create:()=>PBAvatarAttach.decode(new Uint8Array)};function createBaseVector3(){return{x:0,y:0,z:0}}const Vector3={encode:(e,t=minimalExports.Writer.create())=>(0!==e.x&&t.uint32(13).float(e.x),0!==e.y&&t.uint32(21).float(e.y),0!==e.z&&t.uint32(29).float(e.z),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBaseVector3();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.x=n.float();break;case 2:o.y=n.float();break;case 3:o.z=n.float();break;default:n.skipType(7&e)}}return o}};var AvatarModifierType;function createBasePBAvatarModifierArea(){return{area:void 0,excludeIds:[],modifiers:[]}}!function(e){e[e.AMT_HIDE_AVATARS=0]="AMT_HIDE_AVATARS",e[e.AMT_DISABLE_PASSPORTS=1]="AMT_DISABLE_PASSPORTS"}(AvatarModifierType||(AvatarModifierType={}));const PBAvatarModifierArea={encode(e,t=minimalExports.Writer.create()){void 0!==e.area&&Vector3.encode(e.area,t.uint32(10).fork()).ldelim();for(const n of e.excludeIds)t.uint32(18).string(n);t.uint32(26).fork();for(const n of e.modifiers)t.int32(n);return t.ldelim(),t},decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBAvatarModifierArea();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.area=Vector3.decode(n,n.uint32());break;case 2:o.excludeIds.push(n.string());break;case 3:if(2==(7&e)){const e=n.uint32()+n.pos;for(;n.pos<e;)o.modifiers.push(n.int32())}else o.modifiers.push(n.int32());break;default:n.skipType(7&e)}}return o}},COMPONENT_ID$l=1070,AvatarModifierAreaSchema={serialize(e,t){const n=PBAvatarModifierArea.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBAvatarModifierArea.decode(e.buffer(),e.remainingBytes()),create:()=>PBAvatarModifierArea.decode(new Uint8Array)};var long,hasRequiredLong;function requireLong(){if(hasRequiredLong)return long;hasRequiredLong=1,long=t;var e=null;try{e=new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([0,97,115,109,1,0,0,0,1,13,2,96,0,1,127,96,4,127,127,127,127,1,127,3,7,6,0,1,1,1,1,1,6,6,1,127,1,65,0,11,7,50,6,3,109,117,108,0,1,5,100,105,118,95,115,0,2,5,100,105,118,95,117,0,3,5,114,101,109,95,115,0,4,5,114,101,109,95,117,0,5,8,103,101,116,95,104,105,103,104,0,0,10,191,1,6,4,0,35,0,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,126,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,127,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,128,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,129,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,130,34,4,66,32,135,167,36,0,32,4,167,11])),{}).exports}catch(e){}function t(e,t,n){this.low=0|e,this.high=0|t,this.unsigned=!!n}function n(e){return!0===(e&&e.__isLong__)}t.prototype.__isLong__,Object.defineProperty(t.prototype,"__isLong__",{value:!0}),t.isLong=n;var r={},o={};function i(e,t){var n,i,a;return t?(a=0<=(e>>>=0)&&e<256)&&(i=o[e])?i:(n=s(e,(0|e)<0?-1:0,!0),a&&(o[e]=n),n):(a=-128<=(e|=0)&&e<128)&&(i=r[e])?i:(n=s(e,e<0?-1:0,!1),a&&(r[e]=n),n)}function a(e,t){if(isNaN(e))return t?g:p;if(t){if(e<0)return g;if(e>=d)return T}else{if(e<=-m)return x;if(e+1>=m)return E}return e<0?a(-e,t).neg():s(e%f|0,e/f|0,t)}function s(e,n,r){return new t(e,n,r)}t.fromInt=i,t.fromNumber=a,t.fromBits=s;var c=Math.pow;function u(e,t,n){if(0===e.length)throw Error("empty string");if("NaN"===e||"Infinity"===e||"+Infinity"===e||"-Infinity"===e)return p;if("number"==typeof t?(n=t,t=!1):t=!!t,(n=n||10)<2||36<n)throw RangeError("radix");var r;if((r=e.indexOf("-"))>0)throw Error("interior hyphen");if(0===r)return u(e.substring(1),t,n).neg();for(var o=a(c(n,8)),i=p,s=0;s<e.length;s+=8){var l=Math.min(8,e.length-s),f=parseInt(e.substring(s,s+l),n);if(l<8){var d=a(c(n,l));i=i.mul(d).add(a(f))}else i=(i=i.mul(o)).add(a(f))}return i.unsigned=t,i}function l(e,t){return"number"==typeof e?a(e,t):"string"==typeof e?u(e,t):s(e.low,e.high,"boolean"==typeof t?t:e.unsigned)}t.fromString=u,t.fromValue=l;var f=4294967296,d=f*f,m=d/2,h=i(1<<24),p=i(0);t.ZERO=p;var g=i(0,!0);t.UZERO=g;var y=i(1);t.ONE=y;var b=i(1,!0);t.UONE=b;var v=i(-1);t.NEG_ONE=v;var E=s(-1,2147483647,!1);t.MAX_VALUE=E;var T=s(-1,-1,!0);t.MAX_UNSIGNED_VALUE=T;var x=s(0,-2147483648,!1);t.MIN_VALUE=x;var _=t.prototype;return _.toInt=function(){return this.unsigned?this.low>>>0:this.low},_.toNumber=function(){return this.unsigned?(this.high>>>0)*f+(this.low>>>0):this.high*f+(this.low>>>0)},_.toString=function(e){if((e=e||10)<2||36<e)throw RangeError("radix");if(this.isZero())return"0";if(this.isNegative()){if(this.eq(x)){var t=a(e),n=this.div(t),r=n.mul(t).sub(this);return n.toString(e)+r.toInt().toString(e)}return"-"+this.neg().toString(e)}for(var o=a(c(e,6),this.unsigned),i=this,s="";;){var u=i.div(o),l=(i.sub(u.mul(o)).toInt()>>>0).toString(e);if((i=u).isZero())return l+s;for(;l.length<6;)l="0"+l;s=""+l+s}},_.getHighBits=function(){return this.high},_.getHighBitsUnsigned=function(){return this.high>>>0},_.getLowBits=function(){return this.low},_.getLowBitsUnsigned=function(){return this.low>>>0},_.getNumBitsAbs=function(){if(this.isNegative())return this.eq(x)?64:this.neg().getNumBitsAbs();for(var e=0!=this.high?this.high:this.low,t=31;t>0&&0==(e&1<<t);t--);return 0!=this.high?t+33:t+1},_.isZero=function(){return 0===this.high&&0===this.low},_.eqz=_.isZero,_.isNegative=function(){return!this.unsigned&&this.high<0},_.isPositive=function(){return this.unsigned||this.high>=0},_.isOdd=function(){return 1==(1&this.low)},_.isEven=function(){return 0==(1&this.low)},_.equals=function(e){return n(e)||(e=l(e)),(this.unsigned===e.unsigned||this.high>>>31!=1||e.high>>>31!=1)&&(this.high===e.high&&this.low===e.low)},_.eq=_.equals,_.notEquals=function(e){return!this.eq(e)},_.neq=_.notEquals,_.ne=_.notEquals,_.lessThan=function(e){return this.comp(e)<0},_.lt=_.lessThan,_.lessThanOrEqual=function(e){return this.comp(e)<=0},_.lte=_.lessThanOrEqual,_.le=_.lessThanOrEqual,_.greaterThan=function(e){return this.comp(e)>0},_.gt=_.greaterThan,_.greaterThanOrEqual=function(e){return this.comp(e)>=0},_.gte=_.greaterThanOrEqual,_.ge=_.greaterThanOrEqual,_.compare=function(e){if(n(e)||(e=l(e)),this.eq(e))return 0;var t=this.isNegative(),r=e.isNegative();return t&&!r?-1:!t&&r?1:this.unsigned?e.high>>>0>this.high>>>0||e.high===this.high&&e.low>>>0>this.low>>>0?-1:1:this.sub(e).isNegative()?-1:1},_.comp=_.compare,_.negate=function(){return!this.unsigned&&this.eq(x)?x:this.not().add(y)},_.neg=_.negate,_.add=function(e){n(e)||(e=l(e));var t=this.high>>>16,r=65535&this.high,o=this.low>>>16,i=65535&this.low,a=e.high>>>16,c=65535&e.high,u=e.low>>>16,f=0,d=0,m=0,h=0;return m+=(h+=i+(65535&e.low))>>>16,d+=(m+=o+u)>>>16,f+=(d+=r+c)>>>16,f+=t+a,s((m&=65535)<<16|(h&=65535),(f&=65535)<<16|(d&=65535),this.unsigned)},_.subtract=function(e){return n(e)||(e=l(e)),this.add(e.neg())},_.sub=_.subtract,_.multiply=function(t){if(this.isZero())return p;if(n(t)||(t=l(t)),e)return s(e.mul(this.low,this.high,t.low,t.high),e.get_high(),this.unsigned);if(t.isZero())return p;if(this.eq(x))return t.isOdd()?x:p;if(t.eq(x))return this.isOdd()?x:p;if(this.isNegative())return t.isNegative()?this.neg().mul(t.neg()):this.neg().mul(t).neg();if(t.isNegative())return this.mul(t.neg()).neg();if(this.lt(h)&&t.lt(h))return a(this.toNumber()*t.toNumber(),this.unsigned);var r=this.high>>>16,o=65535&this.high,i=this.low>>>16,c=65535&this.low,u=t.high>>>16,f=65535&t.high,d=t.low>>>16,m=65535&t.low,g=0,y=0,b=0,v=0;return b+=(v+=c*m)>>>16,y+=(b+=i*m)>>>16,b&=65535,y+=(b+=c*d)>>>16,g+=(y+=o*m)>>>16,y&=65535,g+=(y+=i*d)>>>16,y&=65535,g+=(y+=c*f)>>>16,g+=r*m+o*d+i*f+c*u,s((b&=65535)<<16|(v&=65535),(g&=65535)<<16|(y&=65535),this.unsigned)},_.mul=_.multiply,_.divide=function(t){if(n(t)||(t=l(t)),t.isZero())throw Error("division by zero");var r,o,i;if(e)return this.unsigned||-2147483648!==this.high||-1!==t.low||-1!==t.high?s((this.unsigned?e.div_u:e.div_s)(this.low,this.high,t.low,t.high),e.get_high(),this.unsigned):this;if(this.isZero())return this.unsigned?g:p;if(this.unsigned){if(t.unsigned||(t=t.toUnsigned()),t.gt(this))return g;if(t.gt(this.shru(1)))return b;i=g}else{if(this.eq(x))return t.eq(y)||t.eq(v)?x:t.eq(x)?y:(r=this.shr(1).div(t).shl(1)).eq(p)?t.isNegative()?y:v:(o=this.sub(t.mul(r)),i=r.add(o.div(t)));if(t.eq(x))return this.unsigned?g:p;if(this.isNegative())return t.isNegative()?this.neg().div(t.neg()):this.neg().div(t).neg();if(t.isNegative())return this.div(t.neg()).neg();i=p}for(o=this;o.gte(t);){r=Math.max(1,Math.floor(o.toNumber()/t.toNumber()));for(var u=Math.ceil(Math.log(r)/Math.LN2),f=u<=48?1:c(2,u-48),d=a(r),m=d.mul(t);m.isNegative()||m.gt(o);)m=(d=a(r-=f,this.unsigned)).mul(t);d.isZero()&&(d=y),i=i.add(d),o=o.sub(m)}return i},_.div=_.divide,_.modulo=function(t){return n(t)||(t=l(t)),e?s((this.unsigned?e.rem_u:e.rem_s)(this.low,this.high,t.low,t.high),e.get_high(),this.unsigned):this.sub(this.div(t).mul(t))},_.mod=_.modulo,_.rem=_.modulo,_.not=function(){return s(~this.low,~this.high,this.unsigned)},_.and=function(e){return n(e)||(e=l(e)),s(this.low&e.low,this.high&e.high,this.unsigned)},_.or=function(e){return n(e)||(e=l(e)),s(this.low|e.low,this.high|e.high,this.unsigned)},_.xor=function(e){return n(e)||(e=l(e)),s(this.low^e.low,this.high^e.high,this.unsigned)},_.shiftLeft=function(e){return n(e)&&(e=e.toInt()),0==(e&=63)?this:e<32?s(this.low<<e,this.high<<e|this.low>>>32-e,this.unsigned):s(0,this.low<<e-32,this.unsigned)},_.shl=_.shiftLeft,_.shiftRight=function(e){return n(e)&&(e=e.toInt()),0==(e&=63)?this:e<32?s(this.low>>>e|this.high<<32-e,this.high>>e,this.unsigned):s(this.high>>e-32,this.high>=0?0:-1,this.unsigned)},_.shr=_.shiftRight,_.shiftRightUnsigned=function(e){if(n(e)&&(e=e.toInt()),0===(e&=63))return this;var t=this.high;return e<32?s(this.low>>>e|t<<32-e,t>>>e,this.unsigned):s(32===e?t:t>>>e-32,0,this.unsigned)},_.shru=_.shiftRightUnsigned,_.shr_u=_.shiftRightUnsigned,_.toSigned=function(){return this.unsigned?s(this.low,this.high,!1):this},_.toUnsigned=function(){return this.unsigned?this:s(this.low,this.high,!0)},_.toBytes=function(e){return e?this.toBytesLE():this.toBytesBE()},_.toBytesLE=function(){var e=this.high,t=this.low;return[255&t,t>>>8&255,t>>>16&255,t>>>24,255&e,e>>>8&255,e>>>16&255,e>>>24]},_.toBytesBE=function(){var e=this.high,t=this.low;return[e>>>24,e>>>16&255,e>>>8&255,255&e,t>>>24,t>>>16&255,t>>>8&255,255&t]},t.fromBytes=function(e,n,r){return r?t.fromBytesLE(e,n):t.fromBytesBE(e,n)},t.fromBytesLE=function(e,n){return new t(e[0]|e[1]<<8|e[2]<<16|e[3]<<24,e[4]|e[5]<<8|e[6]<<16|e[7]<<24,n)},t.fromBytesBE=function(e,n){return new t(e[4]<<24|e[5]<<16|e[6]<<8|e[7],e[0]<<24|e[1]<<16|e[2]<<8|e[3],n)},long}var longExports=requireLong();function createBaseColor3(){return{r:0,g:0,b:0}}const Color3={encode:(e,t=minimalExports.Writer.create())=>(0!==e.r&&t.uint32(13).float(e.r),0!==e.g&&t.uint32(21).float(e.g),0!==e.b&&t.uint32(29).float(e.b),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBaseColor3();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.r=n.float();break;case 2:o.g=n.float();break;case 3:o.b=n.float();break;default:n.skipType(7&e)}}return o}};function createBaseColor4(){return{r:0,g:0,b:0,a:0}}const Color4={encode:(e,t=minimalExports.Writer.create())=>(0!==e.r&&t.uint32(13).float(e.r),0!==e.g&&t.uint32(21).float(e.g),0!==e.b&&t.uint32(29).float(e.b),0!==e.a&&t.uint32(37).float(e.a),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBaseColor4();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.r=n.float();break;case 2:o.g=n.float();break;case 3:o.b=n.float();break;case 4:o.a=n.float();break;default:n.skipType(7&e)}}return o}};function createBasePBAvatarShape(){return{id:"",name:void 0,bodyShape:void 0,skinColor:void 0,hairColor:void 0,eyeColor:void 0,expressionTriggerId:void 0,expressionTriggerTimestamp:void 0,talking:void 0,wearables:[],emotes:[]}}const PBAvatarShape={encode(e,t=minimalExports.Writer.create()){""!==e.id&&t.uint32(10).string(e.id),void 0!==e.name&&t.uint32(18).string(e.name),void 0!==e.bodyShape&&t.uint32(26).string(e.bodyShape),void 0!==e.skinColor&&Color3.encode(e.skinColor,t.uint32(34).fork()).ldelim(),void 0!==e.hairColor&&Color3.encode(e.hairColor,t.uint32(42).fork()).ldelim(),void 0!==e.eyeColor&&Color3.encode(e.eyeColor,t.uint32(50).fork()).ldelim(),void 0!==e.expressionTriggerId&&t.uint32(58).string(e.expressionTriggerId),void 0!==e.expressionTriggerTimestamp&&t.uint32(64).int64(e.expressionTriggerTimestamp),void 0!==e.talking&&t.uint32(72).bool(e.talking);for(const n of e.wearables)t.uint32(82).string(n);for(const n of e.emotes)t.uint32(90).string(n);return t},decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBAvatarShape();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.id=n.string();break;case 2:o.name=n.string();break;case 3:o.bodyShape=n.string();break;case 4:o.skinColor=Color3.decode(n,n.uint32());break;case 5:o.hairColor=Color3.decode(n,n.uint32());break;case 6:o.eyeColor=Color3.decode(n,n.uint32());break;case 7:o.expressionTriggerId=n.string();break;case 8:o.expressionTriggerTimestamp=longToNumber$1(n.int64());break;case 9:o.talking=n.bool();break;case 10:o.wearables.push(n.string());break;case 11:o.emotes.push(n.string());break;default:n.skipType(7&e)}}return o}};var globalThis$2=(()=>{if(void 0!==globalThis$2)return globalThis$2;if("undefined"!=typeof self)return self;if("undefined"!=typeof window)return window;if("undefined"!=typeof global)return global;throw"Unable to locate global object"})();function longToNumber$1(e){if(e.gt(Number.MAX_SAFE_INTEGER))throw new globalThis$2.Error("Value is larger than Number.MAX_SAFE_INTEGER");return e.toNumber()}minimalExports.util.Long!==longExports&&(minimalExports.util.Long=longExports,minimalExports.configure());const COMPONENT_ID$k=1080,AvatarShapeSchema={serialize(e,t){const n=PBAvatarShape.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBAvatarShape.decode(e.buffer(),e.remainingBytes()),create:()=>PBAvatarShape.decode(new Uint8Array)};var BillboardMode;function createBasePBBillboard(){return{billboardMode:void 0,oppositeDirection:void 0}}!function(e){e[e.BM_ALL_AXES=0]="BM_ALL_AXES",e[e.BM_Y_AXE=1]="BM_Y_AXE"}(BillboardMode||(BillboardMode={}));const PBBillboard={encode:(e,t=minimalExports.Writer.create())=>(void 0!==e.billboardMode&&t.uint32(8).int32(e.billboardMode),void 0!==e.oppositeDirection&&t.uint32(16).bool(e.oppositeDirection),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBBillboard();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.billboardMode=n.int32();break;case 2:o.oppositeDirection=n.bool();break;default:n.skipType(7&e)}}return o}},COMPONENT_ID$j=1090,BillboardSchema={serialize(e,t){const n=PBBillboard.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBBillboard.decode(e.buffer(),e.remainingBytes()),create:()=>PBBillboard.decode(new Uint8Array)};function createBasePBCameraMode(){return{mode:0}}const PBCameraMode={encode:(e,t=minimalExports.Writer.create())=>(0!==e.mode&&t.uint32(8).int32(e.mode),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBCameraMode();for(;n.pos<r;){const e=n.uint32();if(e>>>3==1)o.mode=n.int32();else n.skipType(7&e)}return o}},COMPONENT_ID$i=1072,CameraModeSchema={serialize(e,t){const n=PBCameraMode.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBCameraMode.decode(e.buffer(),e.remainingBytes()),create:()=>PBCameraMode.decode(new Uint8Array)};function createBasePBCameraModeArea(){return{area:void 0,mode:0}}const PBCameraModeArea={encode:(e,t=minimalExports.Writer.create())=>(void 0!==e.area&&Vector3.encode(e.area,t.uint32(10).fork()).ldelim(),0!==e.mode&&t.uint32(16).int32(e.mode),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBCameraModeArea();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.area=Vector3.decode(n,n.uint32());break;case 2:o.mode=n.int32();break;default:n.skipType(7&e)}}return o}},COMPONENT_ID$h=1071,CameraModeAreaSchema={serialize(e,t){const n=PBCameraModeArea.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBCameraModeArea.decode(e.buffer(),e.remainingBytes()),create:()=>PBCameraModeArea.decode(new Uint8Array)};function createBasePBGltfContainer(){return{src:""}}const PBGltfContainer={encode:(e,t=minimalExports.Writer.create())=>(""!==e.src&&t.uint32(10).string(e.src),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBGltfContainer();for(;n.pos<r;){const e=n.uint32();if(e>>>3==1)o.src=n.string();else n.skipType(7&e)}return o}},COMPONENT_ID$g=1041,GltfContainerSchema={serialize(e,t){const n=PBGltfContainer.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBGltfContainer.decode(e.buffer(),e.remainingBytes()),create:()=>PBGltfContainer.decode(new Uint8Array)};var TextureWrapMode,TextureFilterMode;function createBaseTexture(){return{src:"",wrapMode:void 0,filterMode:void 0}}!function(e){e[e.TWM_REPEAT=0]="TWM_REPEAT",e[e.TWM_CLAMP=1]="TWM_CLAMP",e[e.TWM_MIRROR=2]="TWM_MIRROR",e[e.TWM_MIRROR_ONCE=3]="TWM_MIRROR_ONCE"}(TextureWrapMode||(TextureWrapMode={})),function(e){e[e.TFM_POINT=0]="TFM_POINT",e[e.TFM_BILINEAR=1]="TFM_BILINEAR",e[e.TFM_TRILINEAR=2]="TFM_TRILINEAR"}(TextureFilterMode||(TextureFilterMode={}));const Texture={encode:(e,t=minimalExports.Writer.create())=>(""!==e.src&&t.uint32(10).string(e.src),void 0!==e.wrapMode&&t.uint32(16).int32(e.wrapMode),void 0!==e.filterMode&&t.uint32(24).int32(e.filterMode),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBaseTexture();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.src=n.string();break;case 2:o.wrapMode=n.int32();break;case 3:o.filterMode=n.int32();break;default:n.skipType(7&e)}}return o}};function createBaseAvatarTexture(){return{userId:"",wrapMode:void 0,filterMode:void 0}}const AvatarTexture={encode:(e,t=minimalExports.Writer.create())=>(""!==e.userId&&t.uint32(10).string(e.userId),void 0!==e.wrapMode&&t.uint32(16).int32(e.wrapMode),void 0!==e.filterMode&&t.uint32(24).int32(e.filterMode),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBaseAvatarTexture();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.userId=n.string();break;case 2:o.wrapMode=n.int32();break;case 3:o.filterMode=n.int32();break;default:n.skipType(7&e)}}return o}};function createBaseTextureUnion(){return{tex:void 0}}const TextureUnion={encode:(e,t=minimalExports.Writer.create())=>("texture"===e.tex?.$case&&Texture.encode(e.tex.texture,t.uint32(10).fork()).ldelim(),"avatarTexture"===e.tex?.$case&&AvatarTexture.encode(e.tex.avatarTexture,t.uint32(18).fork()).ldelim(),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBaseTextureUnion();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.tex={$case:"texture",texture:Texture.decode(n,n.uint32())};break;case 2:o.tex={$case:"avatarTexture",avatarTexture:AvatarTexture.decode(n,n.uint32())};break;default:n.skipType(7&e)}}return o}};var MaterialTransparencyMode;function createBasePBMaterial(){return{texture:void 0,alphaTest:void 0,castShadows:void 0,alphaTexture:void 0,emissiveTexture:void 0,bumpTexture:void 0,albedoColor:void 0,emissiveColor:void 0,reflectivityColor:void 0,transparencyMode:void 0,metallic:void 0,roughness:void 0,glossiness:void 0,specularIntensity:void 0,emissiveIntensity:void 0,directIntensity:void 0}}!function(e){e[e.MTM_OPAQUE=0]="MTM_OPAQUE",e[e.MTM_ALPHA_TEST=1]="MTM_ALPHA_TEST",e[e.MTM_ALPHA_BLEND=2]="MTM_ALPHA_BLEND",e[e.MTM_ALPHA_TEST_AND_ALPHA_BLEND=3]="MTM_ALPHA_TEST_AND_ALPHA_BLEND",e[e.MTM_AUTO=4]="MTM_AUTO"}(MaterialTransparencyMode||(MaterialTransparencyMode={}));const PBMaterial={encode:(e,t=minimalExports.Writer.create())=>(void 0!==e.texture&&TextureUnion.encode(e.texture,t.uint32(10).fork()).ldelim(),void 0!==e.alphaTest&&t.uint32(21).float(e.alphaTest),void 0!==e.castShadows&&t.uint32(24).bool(e.castShadows),void 0!==e.alphaTexture&&TextureUnion.encode(e.alphaTexture,t.uint32(34).fork()).ldelim(),void 0!==e.emissiveTexture&&TextureUnion.encode(e.emissiveTexture,t.uint32(42).fork()).ldelim(),void 0!==e.bumpTexture&&TextureUnion.encode(e.bumpTexture,t.uint32(50).fork()).ldelim(),void 0!==e.albedoColor&&Color3.encode(e.albedoColor,t.uint32(58).fork()).ldelim(),void 0!==e.emissiveColor&&Color3.encode(e.emissiveColor,t.uint32(66).fork()).ldelim(),void 0!==e.reflectivityColor&&Color3.encode(e.reflectivityColor,t.uint32(74).fork()).ldelim(),void 0!==e.transparencyMode&&t.uint32(80).int32(e.transparencyMode),void 0!==e.metallic&&t.uint32(93).float(e.metallic),void 0!==e.roughness&&t.uint32(101).float(e.roughness),void 0!==e.glossiness&&t.uint32(109).float(e.glossiness),void 0!==e.specularIntensity&&t.uint32(117).float(e.specularIntensity),void 0!==e.emissiveIntensity&&t.uint32(125).float(e.emissiveIntensity),void 0!==e.directIntensity&&t.uint32(133).float(e.directIntensity),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBMaterial();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.texture=TextureUnion.decode(n,n.uint32());break;case 2:o.alphaTest=n.float();break;case 3:o.castShadows=n.bool();break;case 4:o.alphaTexture=TextureUnion.decode(n,n.uint32());break;case 5:o.emissiveTexture=TextureUnion.decode(n,n.uint32());break;case 6:o.bumpTexture=TextureUnion.decode(n,n.uint32());break;case 7:o.albedoColor=Color3.decode(n,n.uint32());break;case 8:o.emissiveColor=Color3.decode(n,n.uint32());break;case 9:o.reflectivityColor=Color3.decode(n,n.uint32());break;case 10:o.transparencyMode=n.int32();break;case 11:o.metallic=n.float();break;case 12:o.roughness=n.float();break;case 13:o.glossiness=n.float();break;case 14:o.specularIntensity=n.float();break;case 15:o.emissiveIntensity=n.float();break;case 16:o.directIntensity=n.float();break;default:n.skipType(7&e)}}return o}},COMPONENT_ID$f=1017,MaterialSchema={serialize(e,t){const n=PBMaterial.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBMaterial.decode(e.buffer(),e.remainingBytes()),create:()=>PBMaterial.decode(new Uint8Array)};var ColliderLayer;function createBasePBMeshCollider(){return{collisionMask:void 0,mesh:void 0}}!function(e){e[e.CL_NONE=0]="CL_NONE",e[e.CL_POINTER=1]="CL_POINTER",e[e.CL_PHYSICS=2]="CL_PHYSICS"}(ColliderLayer||(ColliderLayer={}));const PBMeshCollider={encode:(e,t=minimalExports.Writer.create())=>(void 0!==e.collisionMask&&t.uint32(8).int32(e.collisionMask),"box"===e.mesh?.$case&&PBMeshCollider_BoxMesh.encode(e.mesh.box,t.uint32(18).fork()).ldelim(),"sphere"===e.mesh?.$case&&PBMeshCollider_SphereMesh.encode(e.mesh.sphere,t.uint32(26).fork()).ldelim(),"cylinder"===e.mesh?.$case&&PBMeshCollider_CylinderMesh.encode(e.mesh.cylinder,t.uint32(34).fork()).ldelim(),"plane"===e.mesh?.$case&&PBMeshCollider_PlaneMesh.encode(e.mesh.plane,t.uint32(42).fork()).ldelim(),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBMeshCollider();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.collisionMask=n.int32();break;case 2:o.mesh={$case:"box",box:PBMeshCollider_BoxMesh.decode(n,n.uint32())};break;case 3:o.mesh={$case:"sphere",sphere:PBMeshCollider_SphereMesh.decode(n,n.uint32())};break;case 4:o.mesh={$case:"cylinder",cylinder:PBMeshCollider_CylinderMesh.decode(n,n.uint32())};break;case 5:o.mesh={$case:"plane",plane:PBMeshCollider_PlaneMesh.decode(n,n.uint32())};break;default:n.skipType(7&e)}}return o}};function createBasePBMeshCollider_BoxMesh(){return{}}const PBMeshCollider_BoxMesh={encode:(e,t=minimalExports.Writer.create())=>t,decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBMeshCollider_BoxMesh();for(;n.pos<r;){const e=n.uint32();n.skipType(7&e)}return o}};function createBasePBMeshCollider_CylinderMesh(){return{radiusTop:void 0,radiusBottom:void 0}}const PBMeshCollider_CylinderMesh={encode:(e,t=minimalExports.Writer.create())=>(void 0!==e.radiusTop&&t.uint32(13).float(e.radiusTop),void 0!==e.radiusBottom&&t.uint32(21).float(e.radiusBottom),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBMeshCollider_CylinderMesh();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.radiusTop=n.float();break;case 2:o.radiusBottom=n.float();break;default:n.skipType(7&e)}}return o}};function createBasePBMeshCollider_PlaneMesh(){return{}}const PBMeshCollider_PlaneMesh={encode:(e,t=minimalExports.Writer.create())=>t,decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBMeshCollider_PlaneMesh();for(;n.pos<r;){const e=n.uint32();n.skipType(7&e)}return o}};function createBasePBMeshCollider_SphereMesh(){return{}}const PBMeshCollider_SphereMesh={encode:(e,t=minimalExports.Writer.create())=>t,decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBMeshCollider_SphereMesh();for(;n.pos<r;){const e=n.uint32();n.skipType(7&e)}return o}},COMPONENT_ID$e=1019,MeshColliderSchema={serialize(e,t){const n=PBMeshCollider.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBMeshCollider.decode(e.buffer(),e.remainingBytes()),create:()=>PBMeshCollider.decode(new Uint8Array)};function createBasePBMeshRenderer(){return{mesh:void 0}}const PBMeshRenderer={encode:(e,t=minimalExports.Writer.create())=>("box"===e.mesh?.$case&&PBMeshRenderer_BoxMesh.encode(e.mesh.box,t.uint32(10).fork()).ldelim(),"sphere"===e.mesh?.$case&&PBMeshRenderer_SphereMesh.encode(e.mesh.sphere,t.uint32(18).fork()).ldelim(),"cylinder"===e.mesh?.$case&&PBMeshRenderer_CylinderMesh.encode(e.mesh.cylinder,t.uint32(26).fork()).ldelim(),"plane"===e.mesh?.$case&&PBMeshRenderer_PlaneMesh.encode(e.mesh.plane,t.uint32(34).fork()).ldelim(),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBMeshRenderer();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.mesh={$case:"box",box:PBMeshRenderer_BoxMesh.decode(n,n.uint32())};break;case 2:o.mesh={$case:"sphere",sphere:PBMeshRenderer_SphereMesh.decode(n,n.uint32())};break;case 3:o.mesh={$case:"cylinder",cylinder:PBMeshRenderer_CylinderMesh.decode(n,n.uint32())};break;case 4:o.mesh={$case:"plane",plane:PBMeshRenderer_PlaneMesh.decode(n,n.uint32())};break;default:n.skipType(7&e)}}return o}};function createBasePBMeshRenderer_BoxMesh(){return{uvs:[]}}const PBMeshRenderer_BoxMesh={encode(e,t=minimalExports.Writer.create()){t.uint32(10).fork();for(const n of e.uvs)t.float(n);return t.ldelim(),t},decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBMeshRenderer_BoxMesh();for(;n.pos<r;){const e=n.uint32();if(e>>>3==1)if(2==(7&e)){const e=n.uint32()+n.pos;for(;n.pos<e;)o.uvs.push(n.float())}else o.uvs.push(n.float());else n.skipType(7&e)}return o}};function createBasePBMeshRenderer_CylinderMesh(){return{radiusTop:void 0,radiusBottom:void 0}}const PBMeshRenderer_CylinderMesh={encode:(e,t=minimalExports.Writer.create())=>(void 0!==e.radiusTop&&t.uint32(13).float(e.radiusTop),void 0!==e.radiusBottom&&t.uint32(21).float(e.radiusBottom),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBMeshRenderer_CylinderMesh();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.radiusTop=n.float();break;case 2:o.radiusBottom=n.float();break;default:n.skipType(7&e)}}return o}};function createBasePBMeshRenderer_PlaneMesh(){return{uvs:[]}}const PBMeshRenderer_PlaneMesh={encode(e,t=minimalExports.Writer.create()){t.uint32(10).fork();for(const n of e.uvs)t.float(n);return t.ldelim(),t},decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBMeshRenderer_PlaneMesh();for(;n.pos<r;){const e=n.uint32();if(e>>>3==1)if(2==(7&e)){const e=n.uint32()+n.pos;for(;n.pos<e;)o.uvs.push(n.float())}else o.uvs.push(n.float());else n.skipType(7&e)}return o}};function createBasePBMeshRenderer_SphereMesh(){return{}}const PBMeshRenderer_SphereMesh={encode:(e,t=minimalExports.Writer.create())=>t,decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBMeshRenderer_SphereMesh();for(;n.pos<r;){const e=n.uint32();n.skipType(7&e)}return o}},COMPONENT_ID$d=1018,MeshRendererSchema={serialize(e,t){const n=PBMeshRenderer.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBMeshRenderer.decode(e.buffer(),e.remainingBytes()),create:()=>PBMeshRenderer.decode(new Uint8Array)};var NftFrameType;function createBasePBNftShape(){return{src:"",style:void 0,color:void 0}}!function(e){e[e.NFT_CLASSIC=0]="NFT_CLASSIC",e[e.NFT_BAROQUE_ORNAMENT=1]="NFT_BAROQUE_ORNAMENT",e[e.NFT_DIAMOND_ORNAMENT=2]="NFT_DIAMOND_ORNAMENT",e[e.NFT_MINIMAL_WIDE=3]="NFT_MINIMAL_WIDE",e[e.NFT_MINIMAL_GREY=4]="NFT_MINIMAL_GREY",e[e.NFT_BLOCKY=5]="NFT_BLOCKY",e[e.NFT_GOLD_EDGES=6]="NFT_GOLD_EDGES",e[e.NFT_GOLD_CARVED=7]="NFT_GOLD_CARVED",e[e.NFT_GOLD_WIDE=8]="NFT_GOLD_WIDE",e[e.NFT_GOLD_ROUNDED=9]="NFT_GOLD_ROUNDED",e[e.NFT_METAL_MEDIUM=10]="NFT_METAL_MEDIUM",e[e.NFT_METAL_WIDE=11]="NFT_METAL_WIDE",e[e.NFT_METAL_SLIM=12]="NFT_METAL_SLIM",e[e.NFT_METAL_ROUNDED=13]="NFT_METAL_ROUNDED",e[e.NFT_PINS=14]="NFT_PINS",e[e.NFT_MINIMAL_BLACK=15]="NFT_MINIMAL_BLACK",e[e.NFT_MINIMAL_WHITE=16]="NFT_MINIMAL_WHITE",e[e.NFT_TAPE=17]="NFT_TAPE",e[e.NFT_WOOD_SLIM=18]="NFT_WOOD_SLIM",e[e.NFT_WOOD_WIDE=19]="NFT_WOOD_WIDE",e[e.NFT_WOOD_TWIGS=20]="NFT_WOOD_TWIGS",e[e.NFT_CANVAS=21]="NFT_CANVAS",e[e.NFT_NONE=22]="NFT_NONE"}(NftFrameType||(NftFrameType={}));const PBNftShape={encode:(e,t=minimalExports.Writer.create())=>(""!==e.src&&t.uint32(10).string(e.src),void 0!==e.style&&t.uint32(16).int32(e.style),void 0!==e.color&&Color3.encode(e.color,t.uint32(26).fork()).ldelim(),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBNftShape();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.src=n.string();break;case 2:o.style=n.int32();break;case 3:o.color=Color3.decode(n,n.uint32());break;default:n.skipType(7&e)}}return o}},COMPONENT_ID$c=1040,NftShapeSchema={serialize(e,t){const n=PBNftShape.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBNftShape.decode(e.buffer(),e.remainingBytes()),create:()=>PBNftShape.decode(new Uint8Array)};function createBasePBRaycastResult(){return{timestamp:0,origin:void 0,direction:void 0,hits:[]}}const PBRaycastResult={encode(e,t=minimalExports.Writer.create()){0!==e.timestamp&&t.uint32(8).int32(e.timestamp),void 0!==e.origin&&Vector3.encode(e.origin,t.uint32(18).fork()).ldelim(),void 0!==e.direction&&Vector3.encode(e.direction,t.uint32(26).fork()).ldelim();for(const n of e.hits)RaycastHit.encode(n,t.uint32(34).fork()).ldelim();return t},decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBRaycastResult();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.timestamp=n.int32();break;case 2:o.origin=Vector3.decode(n,n.uint32());break;case 3:o.direction=Vector3.decode(n,n.uint32());break;case 4:o.hits.push(RaycastHit.decode(n,n.uint32()));break;default:n.skipType(7&e)}}return o}};function createBaseRaycastHit(){return{position:void 0,origin:void 0,direction:void 0,normalHit:void 0,length:0,meshName:void 0,entityId:void 0}}const RaycastHit={encode:(e,t=minimalExports.Writer.create())=>(void 0!==e.position&&Vector3.encode(e.position,t.uint32(10).fork()).ldelim(),void 0!==e.origin&&Vector3.encode(e.origin,t.uint32(18).fork()).ldelim(),void 0!==e.direction&&Vector3.encode(e.direction,t.uint32(26).fork()).ldelim(),void 0!==e.normalHit&&Vector3.encode(e.normalHit,t.uint32(34).fork()).ldelim(),0!==e.length&&t.uint32(45).float(e.length),void 0!==e.meshName&&t.uint32(50).string(e.meshName),void 0!==e.entityId&&t.uint32(56).int64(e.entityId),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBaseRaycastHit();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.position=Vector3.decode(n,n.uint32());break;case 2:o.origin=Vector3.decode(n,n.uint32());break;case 3:o.direction=Vector3.decode(n,n.uint32());break;case 4:o.normalHit=Vector3.decode(n,n.uint32());break;case 5:o.length=n.float();break;case 6:o.meshName=n.string();break;case 7:o.entityId=longToNumber(n.int64());break;default:n.skipType(7&e)}}return o}};var globalThis$1=(()=>{if(void 0!==globalThis$1)return globalThis$1;if("undefined"!=typeof self)return self;if("undefined"!=typeof window)return window;if("undefined"!=typeof global)return global;throw"Unable to locate global object"})();function longToNumber(e){if(e.gt(Number.MAX_SAFE_INTEGER))throw new globalThis$1.Error("Value is larger than Number.MAX_SAFE_INTEGER");return e.toNumber()}function createBasePBPointerEventsResult(){return{commands:[]}}minimalExports.util.Long!==longExports&&(minimalExports.util.Long=longExports,minimalExports.configure());const PBPointerEventsResult={encode(e,t=minimalExports.Writer.create()){for(const n of e.commands)PBPointerEventsResult_PointerCommand.encode(n,t.uint32(10).fork()).ldelim();return t},decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBPointerEventsResult();for(;n.pos<r;){const e=n.uint32();if(e>>>3==1)o.commands.push(PBPointerEventsResult_PointerCommand.decode(n,n.uint32()));else n.skipType(7&e)}return o}};function createBasePBPointerEventsResult_PointerCommand(){return{button:0,hit:void 0,state:0,timestamp:0,analog:void 0}}const PBPointerEventsResult_PointerCommand={encode:(e,t=minimalExports.Writer.create())=>(0!==e.button&&t.uint32(8).int32(e.button),void 0!==e.hit&&RaycastHit.encode(e.hit,t.uint32(18).fork()).ldelim(),0!==e.state&&t.uint32(32).int32(e.state),0!==e.timestamp&&t.uint32(40).int32(e.timestamp),void 0!==e.analog&&t.uint32(53).float(e.analog),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBPointerEventsResult_PointerCommand();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.button=n.int32();break;case 2:o.hit=RaycastHit.decode(n,n.uint32());break;case 4:o.state=n.int32();break;case 5:o.timestamp=n.int32();break;case 6:o.analog=n.float();break;default:n.skipType(7&e)}}return o}},COMPONENT_ID$b=1063,PointerEventsResultSchema={serialize(e,t){const n=PBPointerEventsResult.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBPointerEventsResult.decode(e.buffer(),e.remainingBytes()),create:()=>PBPointerEventsResult.decode(new Uint8Array)};var PointerEventType;function createBasePBPointerHoverFeedback(){return{pointerEvents:[]}}!function(e){e[e.PET_UP=0]="PET_UP",e[e.PET_DOWN=1]="PET_DOWN",e[e.PET_HOVER_ENTER=2]="PET_HOVER_ENTER",e[e.PET_HOVER_LEAVE=3]="PET_HOVER_LEAVE"}(PointerEventType||(PointerEventType={}));const PBPointerHoverFeedback={encode(e,t=minimalExports.Writer.create()){for(const n of e.pointerEvents)PBPointerHoverFeedback_Entry.encode(n,t.uint32(10).fork()).ldelim();return t},decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBPointerHoverFeedback();for(;n.pos<r;){const e=n.uint32();if(e>>>3==1)o.pointerEvents.push(PBPointerHoverFeedback_Entry.decode(n,n.uint32()));else n.skipType(7&e)}return o}};function createBasePBPointerHoverFeedback_Info(){return{button:void 0,hoverText:void 0,maxDistance:void 0,showFeedback:void 0}}const PBPointerHoverFeedback_Info={encode:(e,t=minimalExports.Writer.create())=>(void 0!==e.button&&t.uint32(8).int32(e.button),void 0!==e.hoverText&&t.uint32(18).string(e.hoverText),void 0!==e.maxDistance&&t.uint32(29).float(e.maxDistance),void 0!==e.showFeedback&&t.uint32(32).bool(e.showFeedback),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBPointerHoverFeedback_Info();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.button=n.int32();break;case 2:o.hoverText=n.string();break;case 3:o.maxDistance=n.float();break;case 4:o.showFeedback=n.bool();break;default:n.skipType(7&e)}}return o}};function createBasePBPointerHoverFeedback_Entry(){return{eventType:0,eventInfo:void 0}}const PBPointerHoverFeedback_Entry={encode:(e,t=minimalExports.Writer.create())=>(0!==e.eventType&&t.uint32(8).int32(e.eventType),void 0!==e.eventInfo&&PBPointerHoverFeedback_Info.encode(e.eventInfo,t.uint32(18).fork()).ldelim(),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBPointerHoverFeedback_Entry();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.eventType=n.int32();break;case 2:o.eventInfo=PBPointerHoverFeedback_Info.decode(n,n.uint32());break;default:n.skipType(7&e)}}return o}},COMPONENT_ID$a=1062,PointerHoverFeedbackSchema={serialize(e,t){const n=PBPointerHoverFeedback.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBPointerHoverFeedback.decode(e.buffer(),e.remainingBytes()),create:()=>PBPointerHoverFeedback.decode(new Uint8Array)};function createBasePBPointerLock(){return{isPointerLocked:!1}}const PBPointerLock={encode:(e,t=minimalExports.Writer.create())=>(!0===e.isPointerLocked&&t.uint32(8).bool(e.isPointerLocked),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBPointerLock();for(;n.pos<r;){const e=n.uint32();if(e>>>3==1)o.isPointerLocked=n.bool();else n.skipType(7&e)}return o}},COMPONENT_ID$9=1074,PointerLockSchema={serialize(e,t){const n=PBPointerLock.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBPointerLock.decode(e.buffer(),e.remainingBytes()),create:()=>PBPointerLock.decode(new Uint8Array)};var RaycastQueryType;function createBasePBRaycast(){return{timestamp:0,origin:void 0,direction:void 0,maxDistance:0,queryType:0}}!function(e){e[e.RQT_HIT_FIRST=0]="RQT_HIT_FIRST",e[e.RQT_QUERY_ALL=1]="RQT_QUERY_ALL"}(RaycastQueryType||(RaycastQueryType={}));const PBRaycast={encode:(e,t=minimalExports.Writer.create())=>(0!==e.timestamp&&t.uint32(8).int32(e.timestamp),void 0!==e.origin&&Vector3.encode(e.origin,t.uint32(18).fork()).ldelim(),void 0!==e.direction&&Vector3.encode(e.direction,t.uint32(26).fork()).ldelim(),0!==e.maxDistance&&t.uint32(37).float(e.maxDistance),0!==e.queryType&&t.uint32(40).int32(e.queryType),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBRaycast();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.timestamp=n.int32();break;case 2:o.origin=Vector3.decode(n,n.uint32());break;case 3:o.direction=Vector3.decode(n,n.uint32());break;case 4:o.maxDistance=n.float();break;case 5:o.queryType=n.int32();break;default:n.skipType(7&e)}}return o}},COMPONENT_ID$8=1067,RaycastSchema={serialize(e,t){const n=PBRaycast.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBRaycast.decode(e.buffer(),e.remainingBytes()),create:()=>PBRaycast.decode(new Uint8Array)},COMPONENT_ID$7=1068,RaycastResultSchema={serialize(e,t){const n=PBRaycastResult.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBRaycastResult.decode(e.buffer(),e.remainingBytes()),create:()=>PBRaycastResult.decode(new Uint8Array)};function createBasePBTextShape(){return{text:"",font:void 0,fontSize:void 0,fontAutoSize:void 0,textAlign:void 0,width:void 0,height:void 0,paddingTop:void 0,paddingRight:void 0,paddingBottom:void 0,paddingLeft:void 0,lineSpacing:void 0,lineCount:void 0,textWrapping:void 0,shadowBlur:void 0,shadowOffsetX:void 0,shadowOffsetY:void 0,outlineWidth:void 0,shadowColor:void 0,outlineColor:void 0,textColor:void 0}}const PBTextShape={encode:(e,t=minimalExports.Writer.create())=>(""!==e.text&&t.uint32(10).string(e.text),void 0!==e.font&&t.uint32(16).int32(e.font),void 0!==e.fontSize&&t.uint32(29).float(e.fontSize),void 0!==e.fontAutoSize&&t.uint32(32).bool(e.fontAutoSize),void 0!==e.textAlign&&t.uint32(40).int32(e.textAlign),void 0!==e.width&&t.uint32(53).float(e.width),void 0!==e.height&&t.uint32(61).float(e.height),void 0!==e.paddingTop&&t.uint32(69).float(e.paddingTop),void 0!==e.paddingRight&&t.uint32(77).float(e.paddingRight),void 0!==e.paddingBottom&&t.uint32(85).float(e.paddingBottom),void 0!==e.paddingLeft&&t.uint32(93).float(e.paddingLeft),void 0!==e.lineSpacing&&t.uint32(101).float(e.lineSpacing),void 0!==e.lineCount&&t.uint32(104).int32(e.lineCount),void 0!==e.textWrapping&&t.uint32(112).bool(e.textWrapping),void 0!==e.shadowBlur&&t.uint32(125).float(e.shadowBlur),void 0!==e.shadowOffsetX&&t.uint32(133).float(e.shadowOffsetX),void 0!==e.shadowOffsetY&&t.uint32(141).float(e.shadowOffsetY),void 0!==e.outlineWidth&&t.uint32(149).float(e.outlineWidth),void 0!==e.shadowColor&&Color3.encode(e.shadowColor,t.uint32(154).fork()).ldelim(),void 0!==e.outlineColor&&Color3.encode(e.outlineColor,t.uint32(162).fork()).ldelim(),void 0!==e.textColor&&Color4.encode(e.textColor,t.uint32(170).fork()).ldelim(),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBTextShape();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.text=n.string();break;case 2:o.font=n.int32();break;case 3:o.fontSize=n.float();break;case 4:o.fontAutoSize=n.bool();break;case 5:o.textAlign=n.int32();break;case 6:o.width=n.float();break;case 7:o.height=n.float();break;case 8:o.paddingTop=n.float();break;case 9:o.paddingRight=n.float();break;case 10:o.paddingBottom=n.float();break;case 11:o.paddingLeft=n.float();break;case 12:o.lineSpacing=n.float();break;case 13:o.lineCount=n.int32();break;case 14:o.textWrapping=n.bool();break;case 15:o.shadowBlur=n.float();break;case 16:o.shadowOffsetX=n.float();break;case 17:o.shadowOffsetY=n.float();break;case 18:o.outlineWidth=n.float();break;case 19:o.shadowColor=Color3.decode(n,n.uint32());break;case 20:o.outlineColor=Color3.decode(n,n.uint32());break;case 21:o.textColor=Color4.decode(n,n.uint32());break;default:n.skipType(7&e)}}return o}},COMPONENT_ID$6=1030,TextShapeSchema={serialize(e,t){const n=PBTextShape.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBTextShape.decode(e.buffer(),e.remainingBytes()),create:()=>PBTextShape.decode(new Uint8Array)};function createBasePBUiBackground(){return{backgroundColor:void 0}}const PBUiBackground={encode:(e,t=minimalExports.Writer.create())=>(void 0!==e.backgroundColor&&Color4.encode(e.backgroundColor,t.uint32(10).fork()).ldelim(),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBUiBackground();for(;n.pos<r;){const e=n.uint32();if(e>>>3==1)o.backgroundColor=Color4.decode(n,n.uint32());else n.skipType(7&e)}return o}},COMPONENT_ID$5=1053,UiBackgroundSchema={serialize(e,t){const n=PBUiBackground.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBUiBackground.decode(e.buffer(),e.remainingBytes()),create:()=>PBUiBackground.decode(new Uint8Array)};function createBasePBUiText(){return{value:"",color:void 0,textAlign:void 0,font:void 0,fontSize:void 0}}const PBUiText={encode:(e,t=minimalExports.Writer.create())=>(""!==e.value&&t.uint32(10).string(e.value),void 0!==e.color&&Color3.encode(e.color,t.uint32(18).fork()).ldelim(),void 0!==e.textAlign&&t.uint32(24).int32(e.textAlign),void 0!==e.font&&t.uint32(32).int32(e.font),void 0!==e.fontSize&&t.uint32(40).int32(e.fontSize),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBUiText();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.value=n.string();break;case 2:o.color=Color3.decode(n,n.uint32());break;case 3:o.textAlign=n.int32();break;case 4:o.font=n.int32();break;case 5:o.fontSize=n.int32();break;default:n.skipType(7&e)}}return o}},COMPONENT_ID$4=1052,UiTextSchema={serialize(e,t){const n=PBUiText.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBUiText.decode(e.buffer(),e.remainingBytes()),create:()=>PBUiText.decode(new Uint8Array)};var YGPositionType,YGAlign,YGUnit,YGDirection,YGFlexDirection,YGWrap,YGJustify,YGOverflow,YGDisplay,YGEdge;function createBasePBUiTransform(){return{parent:0,rightOf:0,positionType:0,alignContent:0,alignItems:0,alignSelf:0,flexDirection:0,flexWrap:0,justifyContent:0,overflow:0,display:0,direction:0,flex:0,flexBasisUnit:0,flexBasis:0,flexGrow:0,flexShrink:0,widthUnit:0,width:0,heightUnit:0,height:0,minWidthUnit:0,minWidth:0,minHeightUnit:0,minHeight:0,maxWidthUnit:0,maxWidth:0,maxHeightUnit:0,maxHeight:0,positionLeftUnit:0,positionLeft:0,positionTopUnit:0,positionTop:0,positionRightUnit:0,positionRight:0,positionBottomUnit:0,positionBottom:0,marginLeftUnit:0,marginLeft:0,marginTopUnit:0,marginTop:0,marginRightUnit:0,marginRight:0,marginBottomUnit:0,marginBottom:0,paddingLeftUnit:0,paddingLeft:0,paddingTopUnit:0,paddingTop:0,paddingRightUnit:0,paddingRight:0,paddingBottomUnit:0,paddingBottom:0,borderLeft:0,borderTop:0,borderRight:0,borderBottom:0}}!function(e){e[e.YGPT_STATIC=0]="YGPT_STATIC",e[e.YGPT_RELATIVE=1]="YGPT_RELATIVE",e[e.YGPT_ABSOLUTE=2]="YGPT_ABSOLUTE"}(YGPositionType||(YGPositionType={})),function(e){e[e.YGA_AUTO=0]="YGA_AUTO",e[e.YGA_FLEX_START=1]="YGA_FLEX_START",e[e.YGA_CENTER=2]="YGA_CENTER",e[e.YGA_FLEX_END=3]="YGA_FLEX_END",e[e.YGA_STRETCH=4]="YGA_STRETCH",e[e.YGA_BASELINE=5]="YGA_BASELINE",e[e.YGA_SPACE_BETWEEN=6]="YGA_SPACE_BETWEEN",e[e.YGA_SPACE_AROUND=7]="YGA_SPACE_AROUND"}(YGAlign||(YGAlign={})),function(e){e[e.YGU_UNDEFINED=0]="YGU_UNDEFINED",e[e.YGU_POINT=1]="YGU_POINT",e[e.YGU_PERCENT=2]="YGU_PERCENT",e[e.YGU_AUTO=3]="YGU_AUTO"}(YGUnit||(YGUnit={})),function(e){e[e.YGD_INHERIT=0]="YGD_INHERIT",e[e.YGD_LTR=1]="YGD_LTR",e[e.YGD_RTL=2]="YGD_RTL"}(YGDirection||(YGDirection={})),function(e){e[e.YGFD_COLUMN=0]="YGFD_COLUMN",e[e.YGFD_COLUMN_REVERSE=1]="YGFD_COLUMN_REVERSE",e[e.YGFD_ROW=2]="YGFD_ROW",e[e.YGFD_ROW_REVERSE=3]="YGFD_ROW_REVERSE"}(YGFlexDirection||(YGFlexDirection={})),function(e){e[e.YGW_NO_WRAP=0]="YGW_NO_WRAP",e[e.YGW_WRAP=1]="YGW_WRAP",e[e.YGW_WRAP_REVERSE=2]="YGW_WRAP_REVERSE"}(YGWrap||(YGWrap={})),function(e){e[e.YGJ_FLEX_START=0]="YGJ_FLEX_START",e[e.YGJ_CENTER=1]="YGJ_CENTER",e[e.YGJ_FLEX_END=2]="YGJ_FLEX_END",e[e.YGJ_SPACE_BETWEEN=3]="YGJ_SPACE_BETWEEN",e[e.YGJ_SPACE_AROUND=4]="YGJ_SPACE_AROUND",e[e.YGJ_SPACE_EVENLY=5]="YGJ_SPACE_EVENLY"}(YGJustify||(YGJustify={})),function(e){e[e.YGO_VISIBLE=0]="YGO_VISIBLE",e[e.YGO_HIDDEN=1]="YGO_HIDDEN",e[e.YGO_SCROLL=2]="YGO_SCROLL"}(YGOverflow||(YGOverflow={})),function(e){e[e.YGD_FLEX=0]="YGD_FLEX",e[e.YGD_NONE=1]="YGD_NONE"}(YGDisplay||(YGDisplay={})),function(e){e[e.YGE_LEFT=0]="YGE_LEFT",e[e.YGE_TOP=1]="YGE_TOP",e[e.YGE_RIGHT=2]="YGE_RIGHT",e[e.YGE_BOTTOM=3]="YGE_BOTTOM",e[e.YGE_START=4]="YGE_START",e[e.YGE_END=5]="YGE_END",e[e.YGE_HORIZONTAL=6]="YGE_HORIZONTAL",e[e.YGE_VERTICAL=7]="YGE_VERTICAL",e[e.YGE_ALL=8]="YGE_ALL"}(YGEdge||(YGEdge={}));const PBUiTransform={encode:(e,t=minimalExports.Writer.create())=>(0!==e.parent&&t.uint32(632).int32(e.parent),0!==e.rightOf&&t.uint32(640).int32(e.rightOf),0!==e.positionType&&t.uint32(8).int32(e.positionType),0!==e.alignContent&&t.uint32(16).int32(e.alignContent),0!==e.alignItems&&t.uint32(24).int32(e.alignItems),0!==e.alignSelf&&t.uint32(32).int32(e.alignSelf),0!==e.flexDirection&&t.uint32(40).int32(e.flexDirection),0!==e.flexWrap&&t.uint32(48).int32(e.flexWrap),0!==e.justifyContent&&t.uint32(56).int32(e.justifyContent),0!==e.overflow&&t.uint32(64).int32(e.overflow),0!==e.display&&t.uint32(72).int32(e.display),0!==e.direction&&t.uint32(80).int32(e.direction),0!==e.flex&&t.uint32(93).float(e.flex),0!==e.flexBasisUnit&&t.uint32(104).int32(e.flexBasisUnit),0!==e.flexBasis&&t.uint32(117).float(e.flexBasis),0!==e.flexGrow&&t.uint32(125).float(e.flexGrow),0!==e.flexShrink&&t.uint32(133).float(e.flexShrink),0!==e.widthUnit&&t.uint32(136).int32(e.widthUnit),0!==e.width&&t.uint32(149).float(e.width),0!==e.heightUnit&&t.uint32(152).int32(e.heightUnit),0!==e.height&&t.uint32(165).float(e.height),0!==e.minWidthUnit&&t.uint32(168).int32(e.minWidthUnit),0!==e.minWidth&&t.uint32(181).float(e.minWidth),0!==e.minHeightUnit&&t.uint32(184).int32(e.minHeightUnit),0!==e.minHeight&&t.uint32(197).float(e.minHeight),0!==e.maxWidthUnit&&t.uint32(248).int32(e.maxWidthUnit),0!==e.maxWidth&&t.uint32(261).float(e.maxWidth),0!==e.maxHeightUnit&&t.uint32(264).int32(e.maxHeightUnit),0!==e.maxHeight&&t.uint32(277).float(e.maxHeight),0!==e.positionLeftUnit&&t.uint32(328).int32(e.positionLeftUnit),0!==e.positionLeft&&t.uint32(341).float(e.positionLeft),0!==e.positionTopUnit&&t.uint32(344).int32(e.positionTopUnit),0!==e.positionTop&&t.uint32(357).float(e.positionTop),0!==e.positionRightUnit&&t.uint32(360).int32(e.positionRightUnit),0!==e.positionRight&&t.uint32(373).float(e.positionRight),0!==e.positionBottomUnit&&t.uint32(376).int32(e.positionBottomUnit),0!==e.positionBottom&&t.uint32(389).float(e.positionBottom),0!==e.marginLeftUnit&&t.uint32(408).int32(e.marginLeftUnit),0!==e.marginLeft&&t.uint32(421).float(e.marginLeft),0!==e.marginTopUnit&&t.uint32(424).int32(e.marginTopUnit),0!==e.marginTop&&t.uint32(437).float(e.marginTop),0!==e.marginRightUnit&&t.uint32(440).int32(e.marginRightUnit),0!==e.marginRight&&t.uint32(453).float(e.marginRight),0!==e.marginBottomUnit&&t.uint32(456).int32(e.marginBottomUnit),0!==e.marginBottom&&t.uint32(469).float(e.marginBottom),0!==e.paddingLeftUnit&&t.uint32(488).int32(e.paddingLeftUnit),0!==e.paddingLeft&&t.uint32(501).float(e.paddingLeft),0!==e.paddingTopUnit&&t.uint32(504).int32(e.paddingTopUnit),0!==e.paddingTop&&t.uint32(517).float(e.paddingTop),0!==e.paddingRightUnit&&t.uint32(520).int32(e.paddingRightUnit),0!==e.paddingRight&&t.uint32(533).float(e.paddingRight),0!==e.paddingBottomUnit&&t.uint32(536).int32(e.paddingBottomUnit),0!==e.paddingBottom&&t.uint32(549).float(e.paddingBottom),0!==e.borderLeft&&t.uint32(581).float(e.borderLeft),0!==e.borderTop&&t.uint32(597).float(e.borderTop),0!==e.borderRight&&t.uint32(613).float(e.borderRight),0!==e.borderBottom&&t.uint32(629).float(e.borderBottom),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBUiTransform();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 79:o.parent=n.int32();break;case 80:o.rightOf=n.int32();break;case 1:o.positionType=n.int32();break;case 2:o.alignContent=n.int32();break;case 3:o.alignItems=n.int32();break;case 4:o.alignSelf=n.int32();break;case 5:o.flexDirection=n.int32();break;case 6:o.flexWrap=n.int32();break;case 7:o.justifyContent=n.int32();break;case 8:o.overflow=n.int32();break;case 9:o.display=n.int32();break;case 10:o.direction=n.int32();break;case 11:o.flex=n.float();break;case 13:o.flexBasisUnit=n.int32();break;case 14:o.flexBasis=n.float();break;case 15:o.flexGrow=n.float();break;case 16:o.flexShrink=n.float();break;case 17:o.widthUnit=n.int32();break;case 18:o.width=n.float();break;case 19:o.heightUnit=n.int32();break;case 20:o.height=n.float();break;case 21:o.minWidthUnit=n.int32();break;case 22:o.minWidth=n.float();break;case 23:o.minHeightUnit=n.int32();break;case 24:o.minHeight=n.float();break;case 31:o.maxWidthUnit=n.int32();break;case 32:o.maxWidth=n.float();break;case 33:o.maxHeightUnit=n.int32();break;case 34:o.maxHeight=n.float();break;case 41:o.positionLeftUnit=n.int32();break;case 42:o.positionLeft=n.float();break;case 43:o.positionTopUnit=n.int32();break;case 44:o.positionTop=n.float();break;case 45:o.positionRightUnit=n.int32();break;case 46:o.positionRight=n.float();break;case 47:o.positionBottomUnit=n.int32();break;case 48:o.positionBottom=n.float();break;case 51:o.marginLeftUnit=n.int32();break;case 52:o.marginLeft=n.float();break;case 53:o.marginTopUnit=n.int32();break;case 54:o.marginTop=n.float();break;case 55:o.marginRightUnit=n.int32();break;case 56:o.marginRight=n.float();break;case 57:o.marginBottomUnit=n.int32();break;case 58:o.marginBottom=n.float();break;case 61:o.paddingLeftUnit=n.int32();break;case 62:o.paddingLeft=n.float();break;case 63:o.paddingTopUnit=n.int32();break;case 64:o.paddingTop=n.float();break;case 65:o.paddingRightUnit=n.int32();break;case 66:o.paddingRight=n.float();break;case 67:o.paddingBottomUnit=n.int32();break;case 68:o.paddingBottom=n.float();break;case 72:o.borderLeft=n.float();break;case 74:o.borderTop=n.float();break;case 76:o.borderRight=n.float();break;case 78:o.borderBottom=n.float();break;default:n.skipType(7&e)}}return o}},COMPONENT_ID$3=1050,UiTransformSchema={serialize(e,t){const n=PBUiTransform.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBUiTransform.decode(e.buffer(),e.remainingBytes()),create:()=>PBUiTransform.decode(new Uint8Array)};function createBasePBVisibilityComponent(){return{visible:void 0}}const PBVisibilityComponent={encode:(e,t=minimalExports.Writer.create())=>(void 0!==e.visible&&t.uint32(8).bool(e.visible),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBVisibilityComponent();for(;n.pos<r;){const e=n.uint32();if(e>>>3==1)o.visible=n.bool();else n.skipType(7&e)}return o}},COMPONENT_ID$2=1081,VisibilityComponentSchema={serialize(e,t){const n=PBVisibilityComponent.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBVisibilityComponent.decode(e.buffer(),e.remainingBytes()),create:()=>PBVisibilityComponent.decode(new Uint8Array)};function defineLibraryComponents({defineComponentFromSchema:e}){return{Animator:e(AnimatorSchema,COMPONENT_ID$p),AudioSource:e(AudioSourceSchema,COMPONENT_ID$o),AudioStream:e(AudioStreamSchema,COMPONENT_ID$n),AvatarAttach:e(AvatarAttachSchema,COMPONENT_ID$m),AvatarModifierArea:e(AvatarModifierAreaSchema,COMPONENT_ID$l),AvatarShape:e(AvatarShapeSchema,COMPONENT_ID$k),Billboard:e(BillboardSchema,COMPONENT_ID$j),CameraMode:e(CameraModeSchema,COMPONENT_ID$i),CameraModeArea:e(CameraModeAreaSchema,COMPONENT_ID$h),GltfContainer:e(GltfContainerSchema,COMPONENT_ID$g),Material:e(MaterialSchema,COMPONENT_ID$f),MeshCollider:e(MeshColliderSchema,COMPONENT_ID$e),MeshRenderer:e(MeshRendererSchema,COMPONENT_ID$d),NftShape:e(NftShapeSchema,COMPONENT_ID$c),PointerEventsResult:e(PointerEventsResultSchema,COMPONENT_ID$b),PointerHoverFeedback:e(PointerHoverFeedbackSchema,COMPONENT_ID$a),PointerLock:e(PointerLockSchema,COMPONENT_ID$9),Raycast:e(RaycastSchema,COMPONENT_ID$8),RaycastResult:e(RaycastResultSchema,COMPONENT_ID$7),TextShape:e(TextShapeSchema,COMPONENT_ID$6),UiBackground:e(UiBackgroundSchema,COMPONENT_ID$5),UiText:e(UiTextSchema,COMPONENT_ID$4),UiTransform:e(UiTransformSchema,COMPONENT_ID$3),VisibilityComponent:e(VisibilityComponentSchema,COMPONENT_ID$2)}}const COMPONENT_ID$1=1,TRANSFORM_LENGTH=44,TransformSchema={serialize(e,t){const n=t.incrementWriteOffset(TRANSFORM_LENGTH);t.setFloat32(n,e.position.x),t.setFloat32(n+4,e.position.y),t.setFloat32(n+8,e.position.z),t.setFloat32(n+12,e.rotation.x),t.setFloat32(n+16,e.rotation.y),t.setFloat32(n+20,e.rotation.z),t.setFloat32(n+24,e.rotation.w),t.setFloat32(n+28,e.scale.x),t.setFloat32(n+32,e.scale.y),t.setFloat32(n+36,e.scale.z),t.setUint32(n+40,e.parent||0)},deserialize(e){const t=e.incrementReadOffset(TRANSFORM_LENGTH);return{position:{x:e.getFloat32(t),y:e.getFloat32(t+4),z:e.getFloat32(t+8)},rotation:{x:e.getFloat32(t+12),y:e.getFloat32(t+16),z:e.getFloat32(t+20),w:e.getFloat32(t+24)},scale:{x:e.getFloat32(t+28),y:e.getFloat32(t+32),z:e.getFloat32(t+36)},parent:e.getUint32(t+40)}},create:()=>({position:{x:0,y:0,z:0},scale:{x:1,y:1,z:1},rotation:{x:0,y:0,z:0,w:1}})};function defineTransformComponent({defineComponentFromSchema:e}){return e(TransformSchema,COMPONENT_ID$1)}var COMPONENT_ID;function defineSdkComponents(e){return{...defineLibraryComponents(e),Transform:defineTransformComponent(e)}}function IArray(e){return{serialize(t,n){n.writeUint32(t.length);for(const r of t)e.serialize(r,n)},deserialize(t){const n=[],r=t.readUint32();for(let o=0;o<r;o++)n.push(e.deserialize(t));return n},create:()=>[]}}!function(e){e[e.SYNC=1e3]="SYNC"}(COMPONENT_ID||(COMPONENT_ID={}));const Bool={serialize(e,t){t.writeInt8(e?1:0)},deserialize:e=>1===e.readInt8(),create:()=>!1};function IEnum(e){return{serialize(t,n){e.serialize(t,n)},deserialize:t=>e.deserialize(t),create:()=>e.create()}}const Float32={serialize(e,t){t.writeFloat32(e)},deserialize:e=>e.readFloat32(),create:()=>0},Float64={serialize(e,t){t.writeFloat64(e)},deserialize:e=>e.readFloat64(),create:()=>0},Int64={serialize(e,t){t.writeInt64(BigInt(e))},deserialize:e=>Number(e.readInt64()),create:()=>0},Int32={serialize(e,t){t.writeInt32(e)},deserialize:e=>e.readInt32(),create:()=>0},Int16={serialize(e,t){t.writeInt16(e)},deserialize:e=>e.readInt16(),create:()=>0},Int8={serialize(e,t){t.writeInt8(e)},deserialize:e=>e.readInt8(),create:()=>0},FlatString={serialize(e,t){t.writeBuffer((new TextEncoder).encode(e))},deserialize:e=>(new TextDecoder).decode(e.readBuffer()),create:()=>""},EcsString=FlatString,Color3Schema={serialize(e,t){t.writeFloat32(e.r),t.writeFloat32(e.g),t.writeFloat32(e.b)},deserialize:e=>({r:e.readFloat32(),g:e.readFloat32(),b:e.readFloat32()}),create:()=>({r:0,g:0,b:0})},Color4Schema={serialize(e,t){t.writeFloat32(e.r),t.writeFloat32(e.g),t.writeFloat32(e.b),t.writeFloat32(e.a)},deserialize:e=>({r:e.readFloat32(),g:e.readFloat32(),b:e.readFloat32(),a:e.readFloat32()}),create:()=>({r:0,g:0,b:0,a:0})},QuaternionSchema={serialize(e,t){t.writeFloat32(e.x),t.writeFloat32(e.y),t.writeFloat32(e.z),t.writeFloat32(e.w)},deserialize:e=>({x:e.readFloat32(),y:e.readFloat32(),z:e.readFloat32(),w:e.readFloat32()}),create:()=>({x:0,y:0,z:0,w:0})},Vector3Schema={serialize(e,t){t.writeFloat32(e.x),t.writeFloat32(e.y),t.writeFloat32(e.z)},deserialize:e=>({x:e.readFloat32(),y:e.readFloat32(),z:e.readFloat32()}),create:()=>({x:0,y:0,z:0})};function IMap(e){return{serialize(t,n){for(const r in e)e[r].serialize(t[r],n)},deserialize(t){const n={};for(const r in e)n[r]=e[r].deserialize(t);return n},create(){const t={};for(const n in e)t[n]=e[n].create();return t}}}function IOptional(e){return{serialize(t,n){t?(n.writeInt8(1),e.serialize(t,n)):n.writeInt8(0)},deserialize(t){if(t.readInt8())return e.deserialize(t)},create(){}}}var Schemas;exports.Schemas=void 0,Schemas=exports.Schemas||(exports.Schemas={}),Schemas.Boolean=Bool,Schemas.String=EcsString,Schemas.Float=Float32,Schemas.Double=Float64,Schemas.Byte=Int8,Schemas.Short=Int16,Schemas.Int=Int32,Schemas.Int64=Int64,Schemas.Number=Float32,Schemas.Vector3=Vector3Schema,Schemas.Quaternion=QuaternionSchema,Schemas.Color3=Color3Schema,Schemas.Color4=Color4Schema,Schemas.Enum=IEnum,Schemas.Array=IArray,Schemas.Map=IMap,Schemas.Optional=IOptional;var dist={},types={},hasRequiredTypes,hasRequiredDist;function requireTypes(){return hasRequiredTypes||(hasRequiredTypes=1,Object.defineProperty(types,"__esModule",{value:!0})),types}function requireDist(){return hasRequiredDist||(hasRequiredDist=1,function(e){var t=commonjsGlobal&&commonjsGlobal.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),n=commonjsGlobal&&commonjsGlobal.__exportStar||function(e,n){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(n,r)||t(n,e,r)};Object.defineProperty(e,"__esModule",{value:!0}),e.crdtProtocol=e.stateIterator=e.sameData=void 0,n(requireTypes(),e);const r=globalThis.Buffer;function o(e,t){if(e===t)return!0;if(e instanceof Uint8Array&&t instanceof Uint8Array){if(e.byteLength!==t.byteLength)return!1;for(let n=0;n<e.byteLength;n++)if(e[n]!==t[n])return!1;return!0}return!!(r&&e instanceof r&&t instanceof r)&&e.equals(t)}e.sameData=o,e.stateIterator=function*(e){for(const[t,n]of e.entries())for(const[e,r]of n.entries())yield[t,e,r]},e.crdtProtocol=function(){const e=new Map;function t(t,n,r,o){const i=e.get(t),a=Math.max(o,i?.get(n)?.timestamp||0);if(i)i.set(n,{timestamp:a,data:r});else{const o=new Map;o.set(n,{timestamp:a,data:r}),e.set(t,o)}return{timestamp:a,data:r}}return{createEvent:function(n,r,o){const i=(e.get(n)?.get(r)?.timestamp||0)+1;return t(n,r,o,i),{key1:n,key2:r,data:o,timestamp:i}},processMessage:function(n){const{key1:r,key2:i,data:a,timestamp:s}=n,c=e.get(r)?.get(i);return!c||c.timestamp<s?(t(r,i,a,s),n):c.timestamp>s?{key1:r,key2:i,data:c.data,timestamp:c.timestamp}:o(c.data,a)?n:function(e,t){return e>t}(c.data,a)?{key1:r,key2:i,data:c.data,timestamp:c.timestamp}:(t(r,i,a,s).data,n)},getState:function(){return e}}}}(dist)),dist}var distExports=requireDist();function getNextSize(e,t){const n=Math.max(e,t)+1024;return 1024*Math.ceil(n/1024)}const defaultInitialCapacity=10240;function createByteBuffer(e={}){const t=e.reading?.currentOffset||0;let n=null,r=0;e.writing?(n=e.writing.buffer,e.writing.currentOffset&&(r=e.writing.currentOffset)):e.reading?(n=e.reading.buffer,r=e.reading.length||e.reading.buffer.length):n=new Uint8Array(e.initialCapacity||defaultInitialCapacity);let o=n,i=new DataView(o.buffer,o.byteOffset),a=r,s=t;const c=e=>{if(a+e>o.byteLength){const t=getNextSize(o.byteLength,a+e),n=new Uint8Array(t);n.set(o),o=n,i=new DataView(o.buffer)}return a+=e,a-e},u=e=>{if(s+e>a)throw new Error("Outside of the bounds of writen data.");return s+=e,s-e};return{buffer:()=>o,bufferLength:()=>o.length,resetBuffer(){s=0,a=0},currentReadOffset:()=>s,currentWriteOffset:()=>a,incrementReadOffset:e=>u(e),remainingBytes:()=>a-s,readFloat32:()=>i.getFloat32(u(4)),readFloat64:()=>i.getFloat64(u(8)),readInt8:()=>i.getInt8(u(1)),readInt16:()=>i.getInt16(u(2)),readInt32:()=>i.getInt32(u(4)),readInt64:()=>i.getBigInt64(u(8)),readUint8:()=>i.getUint8(u(1)),readUint16:()=>i.getUint16(u(2)),readUint32:()=>i.getUint32(u(4)),readUint64:()=>i.getBigUint64(u(8)),readBuffer(){const e=i.getUint32(u(4));return o.subarray(u(e),u(0))},incrementWriteOffset:e=>c(e),size:()=>a,toBinary:()=>o.subarray(0,a),toCopiedBinary(){return new Uint8Array(this.toBinary())},writeBuffer(e,t=!0){t&&this.writeUint32(e.byteLength);const n=c(e.byteLength);o.set(e,n)},writeFloat32(e){const t=c(4);i.setFloat32(t,e)},writeFloat64(e){const t=c(8);i.setFloat64(t,e)},writeInt8(e){const t=c(1);i.setInt8(t,e)},writeInt16(e){const t=c(2);i.setInt16(t,e)},writeInt32(e){const t=c(4);i.setInt32(t,e)},writeInt64(e){const t=c(8);i.setBigInt64(t,e)},writeUint8(e){const t=c(1);i.setUint8(t,e)},writeUint16(e){const t=c(2);i.setUint16(t,e)},writeUint32(e){const t=c(4);i.setUint32(t,e)},writeUint64(e){const t=c(8);i.setBigUint64(t,e)},getFloat32:e=>i.getFloat32(e),getFloat64:e=>i.getFloat64(e),getInt8:e=>i.getInt8(e),getInt16:e=>i.getInt16(e),getInt32:e=>i.getInt32(e),getInt64:e=>i.getBigInt64(e),getUint8:e=>i.getUint8(e),getUint16:e=>i.getUint16(e),getUint32:e=>i.getUint32(e),getUint64:e=>i.getBigUint64(e),setFloat32(e,t){i.setFloat32(e,t)},setFloat64(e,t){i.setFloat64(e,t)},setInt8(e,t){i.setInt8(e,t)},setInt16(e,t){i.setInt16(e,t)},setInt32(e,t){i.setInt32(e,t)},setInt64(e,t){i.setBigInt64(e,t)},setUint8(e,t){i.setUint8(e,t)},setUint16(e,t){i.setUint16(e,t)},setUint32(e,t){i.setUint32(e,t)},setUint64(e,t){i.setBigUint64(e,t)}}}var WireMessage;!function(e){var t;function n(t){const n=t.remainingBytes();if(n<e.HEADER_LENGTH)return!1;return!(n<t.getUint32(t.currentReadOffset()))}(t=e.Enum||(e.Enum={}))[t.RESERVED=0]="RESERVED",t[t.PUT_COMPONENT=1]="PUT_COMPONENT",t[t.DELETE_COMPONENT=2]="DELETE_COMPONENT",t[t.MAX_MESSAGE_TYPE=3]="MAX_MESSAGE_TYPE",e.HEADER_LENGTH=8,e.validate=n,e.readHeader=function(e){return n(e)?{length:e.readUint32(),type:e.readUint32()}:null}}(WireMessage||(WireMessage={}));var WireMessage$1=WireMessage,ComponentOperation,EntityUtils;function crdtSceneSystem({engine:e}){const t=[],n=distExports.crdtProtocol(),r=[],o=[];function i(e){const t=Array.from(e);return e.length=0,t}return{createMessages:function(r){const a=i(o),s=createByteBuffer();for(const[o,i]of r)for(const r of i){const i=e.getComponent(r),c=i.has(o)?i.toBinary(o).toBinary():null,u=n.createEvent(o,r,c),l=s.currentWriteOffset(),f=i.has(o)?WireMessage$1.Enum.PUT_COMPONENT:WireMessage$1.Enum.DELETE_COMPONENT,d={type:f,componentId:r,entity:o,timestamp:u.timestamp};t.some((e=>e.filter(d)))&&(ComponentOperation.write(f,o,u.timestamp,i,s),a.push({...d,messageBuffer:s.buffer().subarray(l,s.currentWriteOffset())}))}const c=createByteBuffer();for(const e of t){c.resetBuffer();for(const t of a)e.filter(t)&&c.writeBuffer(t.messageBuffer,!1);c.size()&&e.send(c.toBinary())}},receiveMessages:function(){const a=i(r);for(const r of t){const t=createByteBuffer();for(const r of a){const{data:i,timestamp:a,componentId:s,entity:c,type:u}=r,l={key1:c,key2:s,data:i||null,timestamp:a},f=e.getComponent(s),d=n.processMessage(l);if(l!==d){const e=f.has(c)?WireMessage$1.Enum.PUT_COMPONENT:WireMessage$1.Enum.DELETE_COMPONENT;ComponentOperation.write(e,c,d.timestamp,f,t)}else{if(u===WireMessage$1.Enum.DELETE_COMPONENT)f.deleteFrom(c);else{const e=createByteBuffer({reading:{buffer:r.data,currentOffset:0}});f.upsertFromBinary(r.entity,e),f.clearDirty()}o.push(r)}}t.size()&&r.send(t.toBinary())}},addTransport:function(e){var n;t.push(e),e.onmessage=(n=e.type,function(e){const t=createByteBuffer({reading:{buffer:e,currentOffset:0}});for(;WireMessage$1.validate(t);){const e=t.currentReadOffset(),o=ComponentOperation.read(t),{type:i,entity:a,componentId:s,data:c,timestamp:u}=o;r.push({type:i,entity:a,componentId:s,data:c,timestamp:u,transportType:n,messageBuffer:t.buffer().subarray(e,t.currentReadOffset())})}})}}}function deepReadonly(e){return Object.freeze({...e})}function defineComponent(e,t,n){const r=new Map,o=new Set,i=createByteBuffer();function a(){return n?t.deserialize(createByteBuffer({writing:{buffer:i.buffer(),currentOffset:i.currentWriteOffset()}})):t.create()}function s(e){return{...a(),...e}}return n&&t.serialize(n,i),{_id:e,default:function(){return a()},isDirty:function(e){return o.has(e)},has:function(e){return r.has(e)},deleteFrom:function(e){const t=r.get(e);return r.delete(e),o.add(e),t||null},getOrNull:function(e){const t=r.get(e);return t?deepReadonly(t):null},get:function(t){const n=r.get(t);if(!n)throw new Error(`[getFrom] Component ${e} for ${t} not found`);return deepReadonly(n)},create:function(t,n){if(r.get(t))throw new Error(`[create] Component ${e} for ${t} already exists`);const i=void 0===n?a():s(n);return r.set(t,i),o.add(t),i},createOrReplace:function(e,t){const n=void 0===t?a():s(t);return r.set(e,n),o.add(e),n},getMutableOrNull:function(e){const t=r.get(e);return t?(o.add(e),t):null},getMutable:function(t){const n=this.getMutableOrNull(t);if(null===n)throw new Error(`[mutable] Component ${e} for ${t} not found`);return n},iterator:function*(){for(const[e,t]of r)yield[e,t]},dirtyIterator:function*(){for(const e of o)yield e},toBinary(n){const o=r.get(n);if(!o)throw new Error(`[toBinary] Component ${e} for ${n} not found`);const i=createByteBuffer();return t.serialize(o,i),i},writeToByteBuffer(n,o){const i=r.get(n);if(!i)throw new Error(`[writeToByteBuffer] Component ${e} for ${n} not found`);t.serialize(i,o)},updateFromBinary(t,n){if(!r.get(t))throw new Error(`[updateFromBinary] Component ${e} for ${t} not found`);return this.upsertFromBinary(t,n)},upsertFromBinary(e,n){const i=t.deserialize(n);return r.set(e,i),o.add(e),i},clearDirty:function(){o.clear()}}}function EntityContainer(){const e=Entity(EntityUtils.STATIC_ENTITIES_RANGE),t=Entity(EntityUtils.DYNAMIC_ENTITIES_RANGE);return{generateEntity:(n=!1)=>n?t.generateEntity():e.generateEntity(),removeEntity:n=>e.removeEntity(n)||t.removeEntity(n),entityExists:n=>EntityUtils.isReservedEntity(n)||e.getExistingEntities().has(n)||t.getExistingEntities().has(n),getExistingEntities:()=>new Set([...e.getExistingEntities(),...t.getExistingEntities()])}}function Entity(e){let t=e[0];const n=new Set;return{getExistingEntities:()=>new Set(n),generateEntity:function(){if(t>=e[1])throw new Error(`It fails trying to generate an entity out of range [${e[0]}, ${e[1]}].`);const r=t;return t++,n.add(r),r},removeEntity:function(e){return n.delete(e)}}}!function(e){e.MESSAGE_HEADER_LENGTH=20,e.write=function(t,n,r,o,i){const a=i.incrementWriteOffset(WireMessage$1.HEADER_LENGTH+e.MESSAGE_HEADER_LENGTH);t===WireMessage$1.Enum.PUT_COMPONENT&&o.writeToByteBuffer(n,i);const s=i.size()-a;i.setUint32(a,s),i.setUint32(a+4,t),i.setUint32(a+8,n),i.setUint32(a+12,o._id),i.setUint64(a+16,BigInt(r)),i.setUint32(a+24,s-e.MESSAGE_HEADER_LENGTH-WireMessage$1.HEADER_LENGTH)},e.read=function(e){const t=WireMessage$1.readHeader(e);if(!t)return null;const n={...t,entity:e.readUint32(),componentId:e.readInt32(),timestamp:Number(e.readUint64())};return t.type===WireMessage$1.Enum.DELETE_COMPONENT?n:{...n,data:e.readBuffer()}}}(ComponentOperation||(ComponentOperation={})),function(e){function t(e,t){return e>=t[0]&&e<=t[1]}e.MAX_ENTITIES=4294967295,e.DYNAMIC_ENTITIES_START_AT=1e5,e.RESERVED_STATIC_ENTITIES=512,e.RESERVED_ENTITIES_RANGE=[0,e.RESERVED_STATIC_ENTITIES-1],e.STATIC_ENTITIES_RANGE=[e.RESERVED_STATIC_ENTITIES,e.DYNAMIC_ENTITIES_START_AT-1],e.DYNAMIC_ENTITIES_RANGE=[e.DYNAMIC_ENTITIES_START_AT,e.MAX_ENTITIES],e.isDynamicEntity=function(n){return t(n,e.DYNAMIC_ENTITIES_RANGE)},e.isStaticEntity=function(n){return t(n,e.STATIC_ENTITIES_RANGE)},e.isReservedEntity=function(n){return t(n,e.RESERVED_ENTITIES_RANGE)}}(EntityUtils||(EntityUtils={}));const SYSTEMS_REGULAR_PRIORITY=1e5;function SystemContainer(){const e=[];function t(){e.sort(((e,t)=>t.priority-e.priority))}return{add:function(n,r,o){if(e.find((e=>e.fn===n)))throw new Error("System already added");if(o&&e.find((e=>e.name===o)))throw new Error("System name already used");e.push({fn:n,priority:r,name:o}),t()},remove:function(n){let r=-1;return r="string"==typeof n?e.findIndex((e=>e.name===n)):e.findIndex((e=>e.fn===n)),-1!==r&&(e.splice(r,1),t(),!0)},getSystems:()=>e}}function preEngine(){const e=EntityContainer(),t=new Map,n=SystemContainer();function r(t=!1){return e.generateEntity(t)}function o(e,n,r){if(t.get(n))throw new Error(`Component ${n} already declared`);const o=defineComponent(n,e,r);return t.set(n,o),o}return{entityExists:function(t){return e.entityExists(t)},componentsDefinition:t,addEntity:r,addDynamicEntity:function(){return r(!0)},removeEntity:function(n){for(const[,e]of t)e.has(n)&&e.deleteFrom(n);return e.removeEntity(n)},addSystem:function(e,t=SYSTEMS_REGULAR_PRIORITY,r){n.add(e,t,r)},getSystems:function(){return n.getSystems()},removeSystem:function(e){return n.remove(e)},defineComponent:function(e,t,n){return o(exports.Schemas.Map(e),t,n)},defineComponentFromSchema:o,getEntitiesWith:function*(...e){for(const[t,...n]of function*(...e){const[t,...n]=e;for(const[r]of t.iterator()){let t=!0;for(const e of n)if(!e.has(r)){t=!1;break}t&&(yield[r,...e])}}(...e))yield[t,...n.map((e=>e.get(t)))]},getComponent:function(e){const n=t.get(e);if(!n)throw new Error(`Component ${e} not found. You need to declare the components at the beginnig of the engine declaration`);return n},removeComponentDefinition:function(e){t.delete(e)}}}function Engine({transports:e}={}){const t=preEngine(),n=crdtSceneSystem({engine:t}),r=defineSdkComponents(t);if(e)for(const t of e)n.addTransport(t);function*o(e,n){if(!n.find((t=>e===t))){n.push(e);for(const[i,a]of t.getEntitiesWith(r.Transform))a.parent===e&&(yield*o(i,n));yield e}}return{addEntity:t.addEntity,addDynamicEntity:t.addDynamicEntity,removeEntity:t.removeEntity,removeEntityWithChildren:function(e){for(const n of o(e,[]))t.removeEntity(n)},addSystem:t.addSystem,removeSystem:t.removeSystem,defineComponent:t.defineComponent,defineComponentFromSchema:t.defineComponentFromSchema,getEntitiesWith:t.getEntitiesWith,getComponent:t.getComponent,removeComponentDefinition:t.removeComponentDefinition,update:function(e){n.receiveMessages();for(const n of t.getSystems())n.fn(e);const r=new Map;for(const[e,n]of t.componentsDefinition)for(const t of n.dirtyIterator())r.has(t)||r.set(t,new Set),r.get(t).add(e);n.createMessages(r);for(const[e,n]of t.componentsDefinition)n.clearDirty()},RootEntity:0,PlayerEntity:1,CameraEntity:2,baseComponents:r,entityExists:t.entityExists,addTransport:n.addTransport}}var ECSComponentIDs;!function(e){e[e.Transform=1]="Transform",e[e.Animator=1042]="Animator",e[e.AudioSource=1020]="AudioSource",e[e.AudioStream=1021]="AudioStream",e[e.AvatarAttach=1073]="AvatarAttach",e[e.AvatarModifierArea=1070]="AvatarModifierArea",e[e.AvatarShape=1080]="AvatarShape",e[e.Billboard=1090]="Billboard",e[e.CameraMode=1072]="CameraMode",e[e.CameraModeArea=1071]="CameraModeArea",e[e.GltfContainer=1041]="GltfContainer",e[e.Material=1017]="Material",e[e.MeshCollider=1019]="MeshCollider",e[e.MeshRenderer=1018]="MeshRenderer",e[e.NftShape=1040]="NftShape",e[e.PointerEventsResult=1063]="PointerEventsResult",e[e.PointerHoverFeedback=1062]="PointerHoverFeedback",e[e.PointerLock=1074]="PointerLock",e[e.Raycast=1067]="Raycast",e[e.RaycastResult=1068]="RaycastResult",e[e.TextShape=1030]="TextShape",e[e.UiBackground=1053]="UiBackground",e[e.UiText=1052]="UiText",e[e.UiTransform=1050]="UiTransform",e[e.VisibilityComponent=1081]="VisibilityComponent"}(ECSComponentIDs||(ECSComponentIDs={}));const componentIds=Object.values(ECSComponentIDs).filter((e=>"number"==typeof e)).map(Number);function createRendererTransport(){if("undefined"==typeof dcl)throw new Error("Cannot create createRendererTransport without global dcl object");const e="renderer";return{type:e,send(e){dcl.callRpc("~system/EngineApi","crdtSendToRenderer",[{data:new Uint8Array(e)}]).catch(dcl.error)},filter:t=>t.transportType!==e&&(!!componentIds.includes(t.componentId)&&!!t)}}const InputCommands=[0,1,2,4,5,6,7,8,9,10,11,12,13],InternalInputStateSchema={timestampLastUpdate:exports.Schemas.Number,currentTimestamp:exports.Schemas.Number,buttonState:exports.Schemas.Array(exports.Schemas.Map({value:exports.Schemas.Boolean,ts:exports.Schemas.Number}))},InternalInputStateComponentId=1500,TimestampUpdateSystemPriority=1<<20,ButtonStateUpdateSystemPriority=0;function createInput(e){const t=e.defineComponent(InternalInputStateSchema,InternalInputStateComponentId);function n(e,t){if(3!==e)return r(e,t);for(const e of InputCommands){const n=r(e,t);if(n)return n}return null}function r(n,r){const o=e.baseComponents.PointerEventsResult.getOrNull(e.RootEntity);if(!o)return null;const i=o.commands,a=findLastAction(i,1,n,r);if(!a)return null;const s=findLastAction(i,0,n,r);if(!s)return null;const c=t.get(e.RootEntity);return a.timestamp<s.timestamp&&s.timestamp>c.timestampLastUpdate?(t.getMutable(e.RootEntity).currentTimestamp=Math.max(s.timestamp,c.currentTimestamp),{up:s,down:a}):null}function o(e,t,n){if(3!==e)return i(e,t,n);for(const e of InputCommands){const r=i(e,t,n);if(r)return r}return null}function i(n,r,o){const i=e.baseComponents.PointerEventsResult.getOrNull(e.RootEntity);if(!i)return null;const a=findLastAction(i.commands,r,n,o);if(!a)return null;const s=t.get(e.RootEntity);return a.timestamp>s.timestampLastUpdate?(t.getMutable(e.RootEntity).currentTimestamp=Math.max(a.timestamp,s.currentTimestamp),a):null}return t.create(e.RootEntity,{buttonState:Array.from({length:InputCommands.length},(()=>({ts:0,value:!1})))}),e.addSystem((function(){const n=e.baseComponents.PointerEventsResult.getOrNull(e.RootEntity);if(!n)return;const r=t.getMutable(e.RootEntity);for(const e of n.commands)e.timestamp>r.buttonState[e.button].ts&&(1===e.state?r.buttonState[e.button].value=!0:0===e.state&&(r.buttonState[e.button].value=!1))}),ButtonStateUpdateSystemPriority),e.addSystem((function(){const n=t.get(e.RootEntity);n.currentTimestamp>n.timestampLastUpdate&&(t.getMutable(e.RootEntity).timestampLastUpdate=n.currentTimestamp)}),TimestampUpdateSystemPriority),{isPressed:function(n){return t.get(e.RootEntity).buttonState[n].value},getClick:n,getInputCommand:o,isClicked:function(e,t){return null!==n(e,t)},isTriggered:function(e,t,n){return null!==o(e,t,n)}}}function findLastAction(e,t,n,r){let o;for(const i of e)i.button===n&&i.state===t&&(!r||i.hit&&r===i.hit.entityId)&&(!o||i.timestamp>=o.timestamp)&&(o=i);return o}class ObserverEventState{constructor(e,t=!1,n,r){this.initalize(e,t,n,r)}initalize(e,t=!1,n,r){return this.mask=e,this.skipNextObservers=t,this.target=n,this.currentTarget=r,this}}class Observer{constructor(e,t,n=null){this.callback=e,this.mask=t,this.scope=n,this.unregisterOnNextCall=!1,this._willBeUnregistered=!1}}class Observable{constructor(e){this._observers=new Array,this._onObserverAdded=null,this._eventState=new ObserverEventState(0),e&&(this._onObserverAdded=e)}add(e,t=-1,n=!1,r=null,o=!1){if(!e)return null;const i=new Observer(e,t,r);return i.unregisterOnNextCall=o,n?this._observers.unshift(i):this._observers.push(i),this._onObserverAdded&&this._onObserverAdded(i),i}addOnce(e){return this.add(e,void 0,void 0,void 0,!0)}remove(e){if(!e)return!1;return-1!==this._observers.indexOf(e)&&(this._deferUnregister(e),!0)}removeCallback(e,t){for(let n=0;n<this._observers.length;n++)if(this._observers[n].callback===e&&(!t||t===this._observers[n].scope))return this._deferUnregister(this._observers[n]),!0;return!1}notifyObservers(e,t=-1,n,r){if(!this._observers.length)return!0;const o=this._eventState;o.mask=t,o.target=n,o.currentTarget=r,o.skipNextObservers=!1,o.lastReturnValue=e;for(const n of this._observers)if(!n._willBeUnregistered&&(n.mask&t&&(n.scope?o.lastReturnValue=n.callback.apply(n.scope,[e,o]):o.lastReturnValue=n.callback(e,o),n.unregisterOnNextCall&&this._deferUnregister(n)),o.skipNextObservers))return!1;return!0}notifyObserversWithPromise(e,t=-1,n,r){let o=Promise.resolve(e);if(!this._observers.length)return o;const i=this._eventState;return i.mask=t,i.target=n,i.currentTarget=r,i.skipNextObservers=!1,this._observers.forEach((n=>{i.skipNextObservers||n._willBeUnregistered||n.mask&t&&(o=n.scope?o.then((t=>(i.lastReturnValue=t,n.callback.apply(n.scope,[e,i])))):o.then((t=>(i.lastReturnValue=t,n.callback(e,i)))),n.unregisterOnNextCall&&this._deferUnregister(n))})),o.then((()=>e))}notifyObserver(e,t,n=-1){const r=this._eventState;r.mask=n,r.skipNextObservers=!1,e.callback(t,r)}hasObservers(){return this._observers.length>0}clear(){this._observers=new Array,this._onObserverAdded=null}clone(){const e=new Observable;return e._observers=this._observers.slice(0),e}hasSpecificMask(e=-1){for(const t of this._observers)if(t.mask&e||t.mask===e)return!0;return!1}_deferUnregister(e){e.unregisterOnNextCall=!1,e._willBeUnregistered=!0,Promise.resolve().then.bind(Promise.resolve())((async()=>this._remove(e)))}_remove(e){if(!e)return!1;const t=this._observers.indexOf(e);return-1!==t&&(this._observers.splice(t,1),!0)}}function createSubscriber(e){return()=>{"undefined"!=typeof dcl&&dcl.subscribe(e)}}const onEnterSceneObservable=new Observable(createSubscriber("onEnterScene")),onEnterScene=onEnterSceneObservable,onLeaveSceneObservable=new Observable(createSubscriber("onLeaveScene")),onLeaveScene=onLeaveSceneObservable,onSceneReadyObservable=new Observable(createSubscriber("sceneStart")),onPlayerExpressionObservable=new Observable(createSubscriber("playerExpression")),onVideoEvent=new Observable(createSubscriber("videoEvent")),onProfileChanged=new Observable(createSubscriber("profileChanged")),onPlayerConnectedObservable=new Observable(createSubscriber("playerConnected")),onPlayerDisconnectedObservable=new Observable(createSubscriber("playerDisconnected")),onRealmChangedObservable=new Observable(createSubscriber("onRealmChanged")),onPlayerClickedObservable=new Observable(createSubscriber("playerClicked"));function _initEventObservables(){"undefined"!=typeof dcl&&dcl.onEvent((e=>{switch(e.type){case"onEnterScene":return void onEnterSceneObservable.notifyObservers(e.data);case"onLeaveScene":return void onLeaveSceneObservable.notifyObservers(e.data);case"sceneStart":return void onSceneReadyObservable.notifyObservers(e.data);case"playerExpression":return void onPlayerExpressionObservable.notifyObservers(e.data);case"videoEvent":{const t=e.data;return void onVideoEvent.notifyObservers(t)}case"profileChanged":return void onProfileChanged.notifyObservers(e.data);case"playerConnected":return void onPlayerConnectedObservable.notifyObservers(e.data);case"playerDisconnected":return void onPlayerDisconnectedObservable.notifyObservers(e.data);case"onRealmChanged":return void onRealmChangedObservable.notifyObservers(e.data);case"playerClicked":return void onPlayerClickedObservable.notifyObservers(e.data)}}))}function initializeDcl(e,t){if("undefined"!=typeof dcl){async function n(){const e=await dcl.callRpc("~system/EngineApi","crdtGetMessageFromRenderer",[]);if(e.data?.length&&t.onmessage)for(const n of e.data)t.onmessage(n)}return dcl.loadModule("~system/EngineApi",{}).catch(dcl.error),dcl.onUpdate((t=>{n().catch(dcl.error).finally((()=>e.update(t)))})),_initEventObservables(),{log:dcl.log,error:dcl.error}}return{log:voidFn,error:voidFn}}function voidFn(){}function getAndClean(e){const t=Array.from(e);return e.length=0,t}function taskSystem(e){const t=[];return e.addSystem((function(){getAndClean(t).forEach((e=>async function(e){try{return await e()}catch(e){dcl.error(`executeTask: FAILED. ${e.toString()}`,e)}}(e)))})),{executeTask(e){t.push(e)}}}exports.EventsSystem=void 0,function(e){let t;!function(e){e[e.Click=0]="Click",e[e.Down=1]="Down",e[e.Up=2]="Up"}(t||(t={}));const n=(e={})=>({button:3,hoverText:"Interact",maxDistance:100,...e}),r=new Map;function o(e){return r.get(e)||r.set(e,new Map).get(e)}function i(e,t,n){const{PointerHoverFeedback:r}=engine.baseComponents;if(n.hoverText){(r.getMutableOrNull(e)||r.create(e)).pointerEvents.push({eventType:t,eventInfo:{button:n.button,showFeedback:!0,hoverText:n.hoverText,maxDistance:n.maxDistance}})}}function a(e){return e===t.Up?0:1}function s(e,t){const n=o(e),r=n.get(t);r?.opts.hoverText&&function(e,t,n){const{PointerHoverFeedback:r}=engine.baseComponents,o=r.getMutableOrNull(e);o&&(o.pointerEvents=o.pointerEvents.filter((e=>!(e.eventInfo?.button===n&&e.eventType===t))))}(e,a(t),r.opts.button),n.delete(t)}e.removeOnClick=function(e){s(e,t.Click)},e.removeOnPointerDown=function(e){s(e,t.Down)},e.removeOnPointerUp=function(e){s(e,t.Up)},e.onClick=function(e,r,a){const c=n(a);s(e,t.Click),o(e).set(t.Click,{cb:r,opts:c}),i(e,1,c)},e.onPointerDown=function(e,r,a){const c=n(a);s(e,t.Down),o(e).set(t.Down,{cb:r,opts:c}),i(e,1,c)},e.onPointerUp=function(e,r,a){const c=n(a);s(e,t.Up),o(e).set(t.Up,{cb:r,opts:c}),i(e,0,c)},e.update=function(e){return function(){for(const[n,o]of r)if(engine.entityExists(n))for(const[r,{cb:i,opts:s}]of o){if(r===t.Click){const t=e.getClick(s.button,n);t&&i(t.up)}if(r===t.Down||r===t.Up){const t=e.getInputCommand(s.button,a(r),n);t&&i(t)}}else r.delete(n)}}}(exports.EventsSystem||(exports.EventsSystem={}));const rendererTransport=createRendererTransport(),engine$1=Engine({transports:[rendererTransport]}),dclInterface=initializeDcl(engine$1,rendererTransport),log=dclInterface.log,error=dclInterface.error,Input=createInput(engine$1),executeTask=taskSystem(engine$1).executeTask;function cyclicParentingChecker(e){const t=e.baseComponents.Transform;return()=>{for(const e of t.dirtyIterator()){let n=t.getOrNull(e);for(;n&&n.parent;){if(n.parent===e){dcl.error(`There is a cyclic parent with entity ${e}`);break}n=t.getOrNull(n.parent)}}}}engine$1.addSystem(exports.EventsSystem.update(Input));const Transform=engine$1.baseComponents.Transform,Animator=engine$1.baseComponents.Animator,AudioSource=engine$1.baseComponents.AudioSource,AudioStream=engine$1.baseComponents.AudioStream,AvatarAttach=engine$1.baseComponents.AvatarAttach,AvatarModifierArea=engine$1.baseComponents.AvatarModifierArea,AvatarShape=engine$1.baseComponents.AvatarShape,Billboard=engine$1.baseComponents.Billboard,CameraMode=engine$1.baseComponents.CameraMode,CameraModeArea=engine$1.baseComponents.CameraModeArea,GltfContainer=engine$1.baseComponents.GltfContainer,Material=engine$1.baseComponents.Material,MeshCollider=engine$1.baseComponents.MeshCollider,MeshRenderer=engine$1.baseComponents.MeshRenderer,NftShape=engine$1.baseComponents.NftShape,PointerEventsResult=engine$1.baseComponents.PointerEventsResult,PointerHoverFeedback=engine$1.baseComponents.PointerHoverFeedback,PointerLock=engine$1.baseComponents.PointerLock,Raycast=engine$1.baseComponents.Raycast,RaycastResult=engine$1.baseComponents.RaycastResult,TextShape=engine$1.baseComponents.TextShape,UiBackground=engine$1.baseComponents.UiBackground,UiText=engine$1.baseComponents.UiText,UiTransform=engine$1.baseComponents.UiTransform,VisibilityComponent=engine$1.baseComponents.VisibilityComponent;var Components;exports.Components=void 0,Components=exports.Components||(exports.Components={}),Components.Transform=engine$1.baseComponents.Transform,Components.Animator=engine$1.baseComponents.Animator,Components.AudioSource=engine$1.baseComponents.AudioSource,Components.AudioStream=engine$1.baseComponents.AudioStream,Components.AvatarAttach=engine$1.baseComponents.AvatarAttach,Components.AvatarModifierArea=engine$1.baseComponents.AvatarModifierArea,Components.AvatarShape=engine$1.baseComponents.AvatarShape,Components.Billboard=engine$1.baseComponents.Billboard,Components.CameraMode=engine$1.baseComponents.CameraMode,Components.CameraModeArea=engine$1.baseComponents.CameraModeArea,Components.GltfContainer=engine$1.baseComponents.GltfContainer,Components.Material=engine$1.baseComponents.Material,Components.MeshCollider=engine$1.baseComponents.MeshCollider,Components.MeshRenderer=engine$1.baseComponents.MeshRenderer,Components.NftShape=engine$1.baseComponents.NftShape,Components.PointerEventsResult=engine$1.baseComponents.PointerEventsResult,Components.PointerHoverFeedback=engine$1.baseComponents.PointerHoverFeedback,Components.PointerLock=engine$1.baseComponents.PointerLock,Components.Raycast=engine$1.baseComponents.Raycast,Components.RaycastResult=engine$1.baseComponents.RaycastResult,Components.TextShape=engine$1.baseComponents.TextShape,Components.UiBackground=engine$1.baseComponents.UiBackground,Components.UiText=engine$1.baseComponents.UiText,Components.UiTransform=engine$1.baseComponents.UiTransform,Components.VisibilityComponent=engine$1.baseComponents.VisibilityComponent;let communicationsController=null,communicationsControllerPromise=null,_messageObserver=null;function getMessageObserver(){return _messageObserver||(_messageObserver=new Observable),_messageObserver}function ensureCommunicationsController(){if(!communicationsControllerPromise){communicationsControllerPromise=dcl.loadModule("~system/CommunicationsController",{}),communicationsControllerPromise.then((e=>{communicationsController=e}));const e=getMessageObserver();dcl.subscribe("comms"),dcl.onEvent((t=>{"comms"===t.type&&e.notifyObservers(t.data)}))}return communicationsControllerPromise}class MessageBus{constructor(){this.messageQueue=[],this.connected=!1,this.flushing=!1,ensureCommunicationsController().then((()=>{this.connected=!0,this.flush()}))}on(e,t){return getMessageObserver().add((n=>{try{const r=JSON.parse(n.message);r.message===e&&t(r.payload,n.sender)}catch(n){dcl.error("Error parsing comms message "+(n.message||""),n)}}))}sendRaw(e){this.messageQueue.push(e),this.connected&&this.flush()}emit(e,t){const n=JSON.stringify({message:e,payload:t});this.sendRaw(n),getMessageObserver().notifyObservers({message:n,sender:"self"})}flush(){if(0===this.messageQueue.length)return;if(!this.connected)return;if(!communicationsController)return;if(this.flushing)return;const e=this.messageQueue.shift();this.flushing=!0,dcl.callRpc(communicationsController.rpcHandle,"send",[e]).then((e=>{this.flushing=!1,this.flush()}),(e=>{this.flushing=!1}))}}exports.Animator=Animator,exports.AudioSource=AudioSource,exports.AudioStream=AudioStream,exports.AvatarAttach=AvatarAttach,exports.AvatarModifierArea=AvatarModifierArea,exports.AvatarShape=AvatarShape,exports.Billboard=Billboard,exports.CameraMode=CameraMode,exports.CameraModeArea=CameraModeArea,exports.Color3=distExports$1.Color3,exports.Color4=distExports$1.Color4,exports.DEG2RAD=distExports$1.DEG2RAD,exports.Engine=Engine,exports.GltfContainer=GltfContainer,exports.Input=Input,exports.Material=Material,exports.MeshCollider=MeshCollider,exports.MeshRenderer=MeshRenderer,exports.MessageBus=MessageBus,exports.NftShape=NftShape,exports.Observable=Observable,exports.Observer=Observer,exports.ObserverEventState=ObserverEventState,exports.PointerEventsResult=PointerEventsResult,exports.PointerHoverFeedback=PointerHoverFeedback,exports.PointerLock=PointerLock,exports.Quaternion=distExports$1.Quaternion,exports.RAD2DEG=distExports$1.RAD2DEG,exports.Raycast=Raycast,exports.RaycastResult=RaycastResult,exports.Scalar=distExports$1.Scalar,exports.TextShape=TextShape,exports.Transform=Transform,exports.UiBackground=UiBackground,exports.UiText=UiText,exports.UiTransform=UiTransform,exports.Vector3=distExports$1.Vector3,exports.VisibilityComponent=VisibilityComponent,exports._initEventObservables=_initEventObservables,exports.cyclicParentingChecker=cyclicParentingChecker,exports.deepReadonly=deepReadonly,exports.engine=engine$1,exports.error=error,exports.executeTask=executeTask,exports.getMessageObserver=getMessageObserver,exports.log=log,exports.onEnterScene=onEnterScene,exports.onEnterSceneObservable=onEnterSceneObservable,exports.onLeaveScene=onLeaveScene,exports.onLeaveSceneObservable=onLeaveSceneObservable,exports.onPlayerClickedObservable=onPlayerClickedObservable,exports.onPlayerConnectedObservable=onPlayerConnectedObservable,exports.onPlayerDisconnectedObservable=onPlayerDisconnectedObservable,exports.onPlayerExpressionObservable=onPlayerExpressionObservable,exports.onProfileChanged=onProfileChanged,exports.onRealmChangedObservable=onRealmChangedObservable,exports.onSceneReadyObservable=onSceneReadyObservable,exports.onVideoEvent=onVideoEvent,Object.defineProperty(exports,"__esModule",{value:!0})})(this.self=this.self||{});
|
1
|
+
(function(exports){"use strict";var commonjsGlobal="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},dist$1={},Quaternion={},Vector3$1={},types$1={},hasRequiredTypes$1;function requireTypes$1(){return hasRequiredTypes$1||(hasRequiredTypes$1=1,Object.defineProperty(types$1,"__esModule",{value:!0}),types$1.RAD2DEG=types$1.DEG2RAD=types$1.Epsilon=types$1.ToLinearSpace=types$1.ToGammaSpace=void 0,types$1.ToGammaSpace=1/2.2,types$1.ToLinearSpace=2.2,types$1.Epsilon=1e-6,types$1.DEG2RAD=Math.PI/180,types$1.RAD2DEG=360/(2*Math.PI)),types$1}var Scalar={},hasRequiredScalar,hasRequiredVector3;function requireScalar(){return hasRequiredScalar||(hasRequiredScalar=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.Scalar=void 0,function(e){function t(e){const t=+e;return 0===t||isNaN(t)?t:t>0?1:-1}function n(e,t=0,n=1){return Math.min(n,Math.max(t,e))}function r(e,t){return e-Math.floor(e/t)*t}function o(e,t){let n=r(t-e,360);return n>180&&(n-=360),n}function i(e,n,r){let o=0;return o=Math.abs(n-e)<=r?n:e+t(n-e)*r,o}e.TwoPi=2*Math.PI,e.withinEpsilon=function(e,t,n=1401298e-51){const r=e-t;return-n<=r&&r<=n},e.toHex=function(e){const t=e.toString(16);return e<=15?("0"+t).toUpperCase():t.toUpperCase()},e.sign=t,e.clamp=n,e.log2=function(e){return Math.log(e)*Math.LOG2E},e.repeat=r,e.normalize=function(e,t,n){return(e-t)/(n-t)},e.denormalize=function(e,t,n){return e*(n-t)+t},e.deltaAngle=o,e.pingPong=function(e,t){const n=r(e,2*t);return t-Math.abs(n-t)},e.smoothStep=function(e,t,r){let o=n(r);return o=-2*o*o*o+3*o*o,t*o+e*(1-o)},e.moveTowards=i,e.moveTowardsAngle=function(e,t,n){const r=o(e,t);let a=0;return a=-n<r&&r<n?t:i(e,e+r,n),a},e.lerp=function(e,t,n){return e+(t-e)*n},e.lerpAngle=function(e,t,o){let i=r(t-e,360);return i>180&&(i-=360),e+i*n(o)},e.inverseLerp=function(e,t,r){let o=0;return o=e!==t?n((r-e)/(t-e)):0,o},e.hermite=function(e,t,n,r,o){const i=o*o,a=o*i;return e*(2*a-3*i+1)+n*(-2*a+3*i)+t*(a-2*i+o)+r*(a-i)},e.randomRange=function(e,t){return e===t?e:Math.random()*(t-e)+e},e.rangeToPercent=function(e,t,n){return(e-t)/(n-t)},e.percentToRange=function(e,t,n){return(n-t)*e+t},e.normalizeRadians=function(t){return t-e.TwoPi*Math.floor((t+Math.PI)/e.TwoPi)}}(e.Scalar||(e.Scalar={}))}(Scalar)),Scalar}function requireVector3(){return hasRequiredVector3||(hasRequiredVector3=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.Vector3=void 0;const t=requireTypes$1(),n=requireQuaternion(),r=requireScalar();!function(e){function o(e=0,t=0,n=0){return{x:e,y:t,z:n}}function i(e,t){return{x:e.x+t.x,y:e.y+t.y,z:e.z+t.z}}function a(e,t){t.x=e.x,t.y=e.y,t.z=e.z}function s(e,t,n,r){r.x=e,r.y=t,r.z=n}function c(e){return o(e.x,e.y,e.z)}function u(e,t=0){return o(e[t],e[t+1],e[t+2])}function l(e,t,n){n.x=e[t],n.y=e[t+1],n.z=e[t+2]}function f(e){return Math.sqrt(e.x*e.x+e.y*e.y+e.z*e.z)}function d(e,t,n){n.x=e.x*t,n.y=e.y*t,n.z=e.z*t}function m(e,t){const n=o(0,0,0);return h(e,t,n),n}function h(e,t,n){0!==t&&1!==t?d(e,1/t,n):a(e,n)}function p(e){return m(e,f(e))}function g(e,t){return e.x*t.x+e.y*t.y+e.z*t.z}function y(e,t,n){const{x:r,y:o,z:i}=e,a=t._m,s=1/(a[3]*r+a[7]*o+a[11]*i+a[15]);n.x=(a[0]*r+a[4]*o+a[8]*i+a[12])*s,n.y=(a[1]*r+a[5]*o+a[9]*i+a[13])*s,n.z=(a[2]*r+a[6]*o+a[10]*i+a[14])*s}function b(e,t,n){const{x:r,y:o,z:i}=e,{x:a,y:s,z:c,w:u}=t,l=u*r+s*i-c*o,f=u*o+c*r-a*i,d=u*i+a*o-s*r,m=-a*r-s*o-c*i;n.x=l*u+m*-a+f*-c-d*-s,n.y=f*u+m*-s+d*-a-l*-c,n.z=d*u+m*-c+l*-s-f*-a}function v(e,t,n,r){r.x=e.x+(t.x-e.x)*n,r.y=e.y+(t.y-e.y)*n,r.z=e.z+(t.z-e.z)*n}function E(e,t,n){n.x=e.y*t.z-e.z*t.y,n.y=e.z*t.x-e.x*t.z,n.z=e.x*t.y-e.y*t.x}function T(e,t,n){return x(e.x,e.y,e.z,t,n)}function x(e,t,n,r,o){const i=r._m,a=e*i[0]+t*i[4]+n*i[8]+i[12],s=e*i[1]+t*i[5]+n*i[9]+i[13],c=e*i[2]+t*i[6]+n*i[10]+i[14],u=1/(e*i[3]+t*i[7]+n*i[11]+i[15]);o.x=a*u,o.y=s*u,o.z=c*u}function _(e,t,n){R(e.x,e.y,e.z,t,n)}function R(e,t,n,r,o){const i=r._m;o.x=e*i[0]+t*i[4]+n*i[8],o.y=e*i[1]+t*i[5]+n*i[9],o.z=e*i[2]+t*i[6]+n*i[10]}function M(e,t,n,r){let o=e.x;o=o>n.x?n.x:o,o=o<t.x?t.x:o;let i=e.y;i=i>n.y?n.y:i,i=i<t.y?t.y:i;let a=e.z;a=a>n.z?n.z:a,a=a<t.z?t.z:a,s(o,i,a,r)}function B(e,t){const n=e.x-t.x,r=e.y-t.y,o=e.z-t.z;return n*n+r*r+o*o}function A(e,t,r,o){const i=n.Quaternion.create();n.Quaternion.fromAxisToRotationQuaternionToRef(e,t,r,i),a(n.Quaternion.toEulerAngles(i),o)}function C(e,t,n){n.x=e.x*t.x,n.y=e.y*t.y,n.z=e.z*t.z}function w(e,t,n,r,o){o.x=e.x*t,o.y=e.y*n,o.z=e.z*r}function S(e,t,n,r,o){t>e.x?o.x=t:o.x=e.x,n>e.y?o.y=n:o.y=e.y,r>e.z?o.z=r:o.z=e.z}function P(e,t,n,r,o){t<e.x?o.x=t:o.x=e.x,n<e.y?o.y=n:o.y=e.y,r<e.z?o.z=r:o.z=e.z}function k(){return o(0,0,0)}e.isNonUniform=function(e){const t=Math.abs(e.x);return t!==Math.abs(e.y)||t!==Math.abs(e.z)},e.create=o,e.add=i,e.addToRef=function(e,t,n){n.x=e.x+t.x,n.y=e.y+t.y,n.z=e.z+t.z},e.subtract=function(e,t){return{x:e.x-t.x,y:e.y-t.y,z:e.z-t.z}},e.subtractToRef=function(e,t,n){n.x=e.x-t.x,n.y=e.y-t.y,n.z=e.z-t.z},e.subtractFromFloatsToRef=function(e,t,n,r,o){o.x=e.x-t,o.y=e.y-n,o.z=e.z-r},e.negate=function(e){return{x:-e.x,y:-e.y,z:-e.z}},e.copyFrom=a,e.copyFromFloats=s,e.clone=c,e.getClipFactor=function(e,t,n,r){const o=g(e,n)-r;return o/(o-(g(t,n)-r))},e.getAngleBetweenVectors=function(e,t,n){const r=p(e),i=p(t),a=g(r,i),s=o();return E(r,i,s),g(s,n)>0?Math.acos(a):-Math.acos(a)},e.fromArray=u,e.fromFloatArray=function(e,t){return u(e,t)},e.fromArrayToRef=l,e.fromFloatArrayToRef=function(e,t,n){return l(e,t,n)},e.length=f,e.lengthSquared=function(e){return e.x*e.x+e.y*e.y+e.z*e.z},e.scaleToRef=d,e.scale=function(e,t){return o(e.x*t,e.y*t,e.z*t)},e.normalizeFromLength=m,e.normalizeFromLengthToRef=h,e.normalize=p,e.normalizeToRef=function(e,t){h(e,f(e),t)},e.dot=g,e.applyMatrix4=function(e,t){const n=c(e);return y(e,t,n),n},e.applyMatrix4ToRef=y,e.rotate=function(e,t){const n=o();return b(e,t,n),n},e.rotateToRef=b,e.lerp=function(e,t,n){const r=o(0,0,0);return v(e,t,n,r),r},e.lerpToRef=v,e.cross=function(e,t){const n=k();return E(e,t,n),n},e.crossToRef=E,e.transformCoordinates=function(e,t){const n=k();return T(e,t,n),n},e.transformCoordinatesToRef=T,e.transformCoordinatesFromFloatsToRef=x,e.transformNormal=function(e,t){const n=k();return _(e,t,n),n},e.transformNormalToRef=_,e.transformNormalFromFloatsToRef=R,e.catmullRom=function(e,t,n,r,i){const a=i*i,s=i*a;return o(.5*(2*t.x+(-e.x+n.x)*i+(2*e.x-5*t.x+4*n.x-r.x)*a+(-e.x+3*t.x-3*n.x+r.x)*s),.5*(2*t.y+(-e.y+n.y)*i+(2*e.y-5*t.y+4*n.y-r.y)*a+(-e.y+3*t.y-3*n.y+r.y)*s),.5*(2*t.z+(-e.z+n.z)*i+(2*e.z-5*t.z+4*n.z-r.z)*a+(-e.z+3*t.z-3*n.z+r.z)*s))},e.clamp=function(e,t,n){const r=o();return M(e,t,n,r),r},e.clampToRef=M,e.hermite=function(e,t,n,r,i){const a=i*i,s=i*a,c=2*s-3*a+1,u=-2*s+3*a,l=s-2*a+i,f=s-a;return o(e.x*c+n.x*u+t.x*l+r.x*f,e.y*c+n.y*u+t.y*l+r.y*f,e.z*c+n.z*u+t.z*l+r.z*f)},e.minimize=function(e,t){const n=o();return P(t,e.x,e.y,e.z,n),n},e.maximize=function(e,t){const n=o();return S(e,t.x,t.y,t.z,n),n},e.distance=function(e,t){return Math.sqrt(B(e,t))},e.distanceSquared=B,e.center=function(e,t){const n=i(e,t);return d(n,.5,n),n},e.rotationFromAxis=function(e,t,n){const r=k();return A(e,t,n,r),r},e.rotationFromAxisToRef=A,e.toString=function(e){return`(${e.x}, ${e.y}, ${e.z})`},e.getHashCode=function(e){let t=e.x||0;return t=397*t^(e.y||0),t=397*t^(e.z||0),t},e.equals=function(e,t){return e.x===t.x&&e.y===t.y&&e.z===t.z},e.equalsWithEpsilon=function(e,n,o=t.Epsilon){return r.Scalar.withinEpsilon(e.x,n.x,o)&&r.Scalar.withinEpsilon(e.y,n.y,o)&&r.Scalar.withinEpsilon(e.z,n.z,o)},e.equalsToFloats=function(e,t,n,r){return e.x===t&&e.y===n&&e.z===r},e.multiply=function(e,t){const n=o();return C(e,t,n),n},e.multiplyToRef=C,e.multiplyByFloatsToRef=w,e.multiplyByFloats=function(e,t,n,r){const i=o();return w(e,t,n,r,i),i},e.divide=function(e,t){return{x:e.x/t.x,y:e.y/t.y,z:e.z/t.z}},e.divideToRef=function(e,t,n){n.x=e.x/t.x,n.y=e.y/t.y,n.z=e.z/t.z},e.maximizeInPlaceFromFloatsToRef=S,e.minimizeInPlaceFromFloatsToRef=P,e.floor=function(e){return o(Math.floor(e.x),Math.floor(e.y),Math.floor(e.z))},e.fract=function(e){return o(e.x-Math.floor(e.x),e.y-Math.floor(e.y),e.z-Math.floor(e.z))},e.Zero=k,e.One=function(){return o(1,1,1)},e.Up=function(){return o(0,1,0)},e.Down=function(){return o(0,-1,0)},e.Forward=function(){return o(0,0,1)},e.Backward=function(){return o(0,0,-1)},e.Right=function(){return o(1,0,0)},e.Left=function(){return o(-1,0,0)},e.Random=function(){return o(Math.random(),Math.random(),Math.random())}}(e.Vector3||(e.Vector3={}))}(Vector3$1)),Vector3$1}var Matrix={},Plane={},hasRequiredPlane,hasRequiredMatrix,hasRequiredQuaternion;function requirePlane(){return hasRequiredPlane||(hasRequiredPlane=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.Plane=void 0;const t=requireVector3(),n=requireMatrix();!function(e){function r(e,n,r,o){return{normal:t.Vector3.create(e,n,r),d:o}}e.create=r,e.fromArray=function(e){return r(e[0],e[1],e[2],e[3])},e.fromPoints=function(e,t,n){return r(0,0,0,0)},e.romPositionAndNormal=function(e,n){const o=r(0,0,0,0);return o.normal=t.Vector3.normalize(n),o.d=-(n.x*e.x+n.y*e.y+n.z*e.z),o},e.signedDistanceToPlaneFromPositionAndNormal=function(e,n,r){const o=-(n.x*e.x+n.y*e.y+n.z*e.z);return t.Vector3.dot(r,n)+o},e.asArray=function(e){return[e.normal.x,e.normal.y,e.normal.z,e.d]},e.clone=function(e){return r(e.normal.x,e.normal.y,e.normal.z,e.d)},e.getHashCode=function(e){return 0},e.normalize=function(e){const t=r(0,0,0,0),n=Math.sqrt(e.normal.x*e.normal.x+e.normal.y*e.normal.y+e.normal.z*e.normal.z);let o=0;return 0!==n&&(o=1/n),t.normal.x=e.normal.x*o,t.normal.y=e.normal.y*o,t.normal.z=e.normal.z*o,t.d*=o,e},e.transform=function(e,t){const o=n.Matrix.create();n.Matrix.transposeToRef(t,o);const i=o._m,a=e.normal.x,s=e.normal.y,c=e.normal.z,u=e.d;return r(a*i[0]+s*i[1]+c*i[2]+u*i[3],a*i[4]+s*i[5]+c*i[6]+u*i[7],a*i[8]+s*i[9]+c*i[10]+u*i[11],a*i[12]+s*i[13]+c*i[14]+u*i[15])},e.dotCoordinate=function(e,t){return e.normal.x*t.x+e.normal.y*t.y+e.normal.z*t.z+e.d},e.copyFromPoints=function(e,n,r){const o=n.x-e.x,i=n.y-e.y,a=n.z-e.z,s=r.x-e.x,c=r.y-e.y,u=r.z-e.z,l=i*u-a*c,f=a*s-o*u,d=o*c-i*s,m=Math.sqrt(l*l+f*f+d*d);let h;h=0!==m?1/m:0;const p=t.Vector3.create(l*h,f*h,d*h);return{normal:p,d:-(p.x*e.x+p.y*e.y+p.z*e.z)}},e.isFrontFacingTo=function(e,n,r){return t.Vector3.dot(e.normal,n)<=r},e.signedDistanceTo=function(e,n){return t.Vector3.dot(n,e.normal)+e.d}}(e.Plane||(e.Plane={}))}(Plane)),Plane}function requireMatrix(){return hasRequiredMatrix||(hasRequiredMatrix=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.Matrix=void 0;const t=requireVector3(),n=requireQuaternion(),r=requirePlane();!function(e){e.m=function(e){return e._m};let o=0;const i={};function a(){const e={updateFlag:0,isIdentity:!1,isIdentity3x2:!0,_isIdentityDirty:!0,_isIdentity3x2Dirty:!0,_m:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]};return V(e,!1),e}function s(e,t,n){for(let r=0;r<16;r++)n._m[r]=e[r+t];P(n)}function c(e,t,n,r,o,i,a,s,c,u,l,f,d,m,h,p,g){const y=g._m;y[0]=e,y[1]=t,y[2]=n,y[3]=r,y[4]=o,y[5]=i,y[6]=a,y[7]=s,y[8]=c,y[9]=u,y[10]=l,y[11]=f,y[12]=d,y[13]=m,y[14]=h,y[15]=p,P(g)}function u(e,t,n,r,o,i,s,c,u,l,f,d,m,h,p,g){const y=a(),b=y._m;return b[0]=e,b[1]=t,b[2]=n,b[3]=r,b[4]=o,b[5]=i,b[6]=s,b[7]=c,b[8]=u,b[9]=l,b[10]=f,b[11]=d,b[12]=m,b[13]=h,b[14]=p,b[15]=g,P(y),y}function l(e,t,n,r){const o=[a(),a(),a()];y(e.x,e.y,e.z,o[1]),S(t,o[0]),L(o[1],o[0],r),z(r,n)}function f(){const e=u(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);return V(e,!0),e}function d(e,t){const n=Math.sin(e),r=Math.cos(e);c(1,0,0,0,0,r,n,0,0,-n,r,0,0,0,0,1,t),V(t,1===r&&0===n)}function m(e,t){const n=Math.sin(e),r=Math.cos(e);c(r,0,-n,0,0,1,0,0,n,0,r,0,0,0,0,1,t),V(t,1===r&&0===n)}function h(e,t){const n=Math.sin(e),r=Math.cos(e);c(r,n,0,0,-n,r,0,0,0,0,1,0,0,0,0,1,t),V(t,1===r&&0===n)}function p(e,n,r){const o=Math.sin(-n),i=Math.cos(-n),a=1-i,s=t.Vector3.normalize(e),c=r._m;c[0]=s.x*s.x*a+i,c[1]=s.x*s.y*a-s.z*o,c[2]=s.x*s.z*a+s.y*o,c[3]=0,c[4]=s.y*s.x*a+s.z*o,c[5]=s.y*s.y*a+i,c[6]=s.y*s.z*a-s.x*o,c[7]=0,c[8]=s.z*s.x*a-s.y*o,c[9]=s.z*s.y*a+s.x*o,c[10]=s.z*s.z*a+i,c[11]=0,c[12]=0,c[13]=0,c[14]=0,c[15]=1,P(r)}function g(e,t,r,o){const i=n.Quaternion.Zero();n.Quaternion.fromRotationYawPitchRollToRef(e,t,r,i),S(i,o)}function y(e,t,n,r){c(e,0,0,0,0,t,0,0,0,0,n,0,0,0,0,1,r),V(r,1===e&&1===t&&1===n)}function b(e,t,n,r){c(1,0,0,0,0,1,0,0,0,0,1,0,e,t,n,1,r),V(r,0===e&&0===t&&0===n)}function v(e,t,n,r){for(let o=0;o<16;o++)r._m[o]=e._m[o]*(1-n)+t._m[o]*n;P(r)}function E(e,r,o,i){const a=t.Vector3.Zero(),s=n.Quaternion.Zero(),c=t.Vector3.Zero();q(e,a,s,c);const u=t.Vector3.Zero(),f=n.Quaternion.Zero(),d=t.Vector3.Zero();q(r,u,f,d);const m=t.Vector3.Zero();t.Vector3.lerpToRef(a,u,o,m);const h=n.Quaternion.Zero();n.Quaternion.slerpToRef(s,f,o,h);const p=t.Vector3.Zero();t.Vector3.lerpToRef(c,d,o,p),l(m,h,p,i)}function T(e,n,r,o){const i=t.Vector3.Zero(),a=t.Vector3.Zero(),s=t.Vector3.Zero();t.Vector3.subtractToRef(n,e,s),t.Vector3.normalizeToRef(s,s),t.Vector3.crossToRef(r,s,i);const u=t.Vector3.lengthSquared(i);0===u?i.x=1:t.Vector3.normalizeFromLengthToRef(i,Math.sqrt(u),i),t.Vector3.crossToRef(s,i,a),t.Vector3.normalizeToRef(a,a);const l=-t.Vector3.dot(i,e),f=-t.Vector3.dot(a,e),d=-t.Vector3.dot(s,e);c(i.x,a.x,s.x,0,i.y,a.y,s.y,0,i.z,a.z,s.z,0,l,f,d,1,o)}function x(e,n,r,o){const i=t.Vector3.Zero(),a=t.Vector3.Zero(),s=t.Vector3.Zero();t.Vector3.subtractToRef(e,n,s),t.Vector3.normalizeToRef(s,s),t.Vector3.crossToRef(r,s,i);const u=t.Vector3.lengthSquared(i);0===u?i.x=1:t.Vector3.normalizeFromLengthToRef(i,Math.sqrt(u),i),t.Vector3.crossToRef(s,i,a),t.Vector3.normalizeToRef(a,a);const l=-t.Vector3.dot(i,e),f=-t.Vector3.dot(a,e),d=-t.Vector3.dot(s,e);c(i.x,a.x,s.x,0,i.y,a.y,s.y,0,i.z,a.z,s.z,0,l,f,d,1,o)}function _(e,t,n,r,o){const i=2/e,a=2/t,s=2/(r-n),u=-(r+n)/(r-n);c(i,0,0,0,0,a,0,0,0,0,s,0,0,0,u,1,o),V(o,1===i&&1===a&&1===s&&0===u)}function R(e,t,n,r,o,i,a){c(2/(t-e),0,0,0,0,2/(r-n),0,0,0,0,2/(i-o),0,(e+t)/(e-t),(r+n)/(n-r),-(i+o)/(i-o),1,a),P(a)}function M(e,t,n,r,o,i,a){R(e,t,n,r,o,i,a),a._m[10]*=-1}function B(e,t,n,r,o,i=!0){const a=n,s=r,u=1/Math.tan(.5*e);c(i?u/t:u,0,0,0,0,i?u:u*t,0,0,0,0,(s+a)/(s-a),1,0,0,-2*s*a/(s-a),0,o),V(o,!1)}function A(e,t,n,r,o,i=!0){const a=n,s=r,u=1/Math.tan(.5*e);c(i?u/t:u,0,0,0,0,i?u:u*t,0,0,0,0,-(s+a)/(s-a),-1,0,0,-2*s*a/(s-a),0,o),V(o,!1)}function C(e,t){const n=t._m,r=e._m;n[0]=r[0],n[1]=r[4],n[2]=r[8],n[3]=r[12],n[4]=r[1],n[5]=r[5],n[6]=r[9],n[7]=r[13],n[8]=r[2],n[9]=r[6],n[10]=r[10],n[11]=r[14],n[12]=r[3],n[13]=r[7],n[14]=r[11],n[15]=r[15],V(t,e.isIdentity,e._isIdentityDirty)}function w(e,t){const n=r.Plane.normalize(e),o=n.normal.x,i=n.normal.y,a=n.normal.z,s=-2*o,u=-2*i,l=-2*a;c(s*o+1,u*o,l*o,0,s*i,u*i+1,l*i,0,s*a,u*a,l*a+1,0,s*n.d,u*n.d,l*n.d,1,t)}function S(e,t){const n=e.x*e.x,r=e.y*e.y,o=e.z*e.z,i=e.x*e.y,a=e.z*e.w,s=e.z*e.x,c=e.y*e.w,u=e.y*e.z,l=e.x*e.w;t._m[0]=1-2*(r+o),t._m[1]=2*(i+a),t._m[2]=2*(s-c),t._m[3]=0,t._m[4]=2*(i-a),t._m[5]=1-2*(o+n),t._m[6]=2*(u+l),t._m[7]=0,t._m[8]=2*(s+c),t._m[9]=2*(u-l),t._m[10]=1-2*(r+n),t._m[11]=0,t._m[12]=0,t._m[13]=0,t._m[14]=0,t._m[15]=1,P(t)}function P(e){e.updateFlag=o++,e.isIdentity=!1,e.isIdentity3x2=!1,e._isIdentityDirty=!0,e._isIdentity3x2Dirty=!0}function k(e){if(!0===e.isIdentity)return 1;const t=e._m,n=t[0],r=t[1],o=t[2],i=t[3],a=t[4],s=t[5],c=t[6],u=t[7],l=t[8],f=t[9],d=t[10],m=t[11],h=t[12],p=t[13],g=t[14],y=t[15],b=d*y-g*m,v=f*y-p*m,E=f*g-p*d,T=l*y-h*m,x=l*g-d*h,_=l*p-h*f;return n*+(s*b-c*v+u*E)+r*-(a*b-c*T+u*x)+o*+(a*v-s*T+u*_)+i*-(a*E-s*x+c*_)}function I(e,t,n){for(let r=0;r<16;r++)n._m[r]=e._m[r]+t._m[r];P(n)}function O(e,t){if(!0===e.isIdentity)return void U(e,t);const n=e._m,r=n[0],o=n[1],i=n[2],a=n[3],s=n[4],u=n[5],l=n[6],f=n[7],d=n[8],m=n[9],h=n[10],p=n[11],g=n[12],y=n[13],b=n[14],v=n[15],E=h*v-b*p,T=m*v-y*p,x=m*b-y*h,_=d*v-g*p,R=d*b-h*g,M=d*y-g*m,B=+(u*E-l*T+f*x),A=-(s*E-l*_+f*R),C=+(s*T-u*_+f*M),w=-(s*x-u*R+l*M),S=r*B+o*A+i*C+a*w;if(0===S)return void U(e,t);const P=1/S,k=l*v-b*f,I=u*v-y*f,O=u*b-y*l,N=s*v-g*f,z=s*b-g*l,D=s*y-g*u,L=l*p-h*f,F=u*p-m*f,q=u*h-m*l,G=s*p-d*f,$=s*h-d*l,V=s*m-d*u;c(B*P,-(o*E-i*T+a*x)*P,+(o*k-i*I+a*O)*P,-(o*L-i*F+a*q)*P,A*P,+(r*E-i*_+a*R)*P,-(r*k-i*N+a*z)*P,+(r*L-i*G+a*$)*P,C*P,-(r*T-o*_+a*M)*P,+(r*I-o*N+a*D)*P,-(r*F-o*G+a*V)*P,w*P,+(r*x-o*R+i*M)*P,-(r*O-o*z+i*D)*P,+(r*q-o*$+i*V)*P,t)}function N(e,t,n,r){e._m[12]=t,e._m[13]=n,e._m[14]=r,P(e)}function z(e,t){N(e,t.x,t.y,t.z)}function U(e,t){D(e,t._m),V(t,e.isIdentity,e._isIdentityDirty,e.isIdentity3x2,e._isIdentity3x2Dirty)}function D(e,t,n=0){for(let r=0;r<16;r++)t[n+r]=e._m[r]}function L(e,t,n){e.isIdentity?U(t,n):t.isIdentity?U(e,n):(F(e,t,n._m,0),P(n))}function F(e,t,n,r){const o=e._m,i=t._m,a=o[0],s=o[1],c=o[2],u=o[3],l=o[4],f=o[5],d=o[6],m=o[7],h=o[8],p=o[9],g=o[10],y=o[11],b=o[12],v=o[13],E=o[14],T=o[15],x=i[0],_=i[1],R=i[2],M=i[3],B=i[4],A=i[5],C=i[6],w=i[7],S=i[8],P=i[9],k=i[10],I=i[11],O=i[12],N=i[13],z=i[14],U=i[15];n[r]=a*x+s*B+c*S+u*O,n[r+1]=a*_+s*A+c*P+u*N,n[r+2]=a*R+s*C+c*k+u*z,n[r+3]=a*M+s*w+c*I+u*U,n[r+4]=l*x+f*B+d*S+m*O,n[r+5]=l*_+f*A+d*P+m*N,n[r+6]=l*R+f*C+d*k+m*z,n[r+7]=l*M+f*w+d*I+m*U,n[r+8]=h*x+p*B+g*S+y*O,n[r+9]=h*_+p*A+g*P+y*N,n[r+10]=h*R+p*C+g*k+y*z,n[r+11]=h*M+p*w+g*I+y*U,n[r+12]=b*x+v*B+E*S+T*O,n[r+13]=b*_+v*A+E*P+T*N,n[r+14]=b*R+v*C+E*k+T*z,n[r+15]=b*M+v*w+E*I+T*U}function q(e,r,o,i){if(e.isIdentity)return i&&(i=t.Vector3.create(0,0,0)),r&&(r=t.Vector3.create(0,0,0)),o&&(o=n.Quaternion.create(0,0,0,1)),!0;const s=e._m;i&&(i=t.Vector3.create(s[12],s[13],s[14]));const u=r||t.Vector3.Zero();if(u.x=Math.sqrt(s[0]*s[0]+s[1]*s[1]+s[2]*s[2]),u.y=Math.sqrt(s[4]*s[4]+s[5]*s[5]+s[6]*s[6]),u.z=Math.sqrt(s[8]*s[8]+s[9]*s[9]+s[10]*s[10]),k(e)<=0&&(u.y*=-1),0===u.x||0===u.y||0===u.z)return o&&(o=n.Quaternion.create(0,0,0,1)),!1;if(o){const e=1/u.x,t=1/u.y,r=1/u.z,i=a();c(s[0]*e,s[1]*e,s[2]*e,0,s[4]*t,s[5]*t,s[6]*t,0,s[8]*r,s[9]*r,s[10]*r,0,0,0,0,1,i),n.Quaternion.fromRotationMatrixToRef(i,o)}return!0}function G(e,t,n){for(let r=0;r<16;r++)n._m[r]=e._m[r]*t;P(n)}function $(e,n){const r=t.Vector3.Zero();if(!q(e,r))return void(n=f());const o=e._m,i=1/r.x,a=1/r.y,s=1/r.z;c(o[0]*i,o[1]*i,o[2]*i,0,o[4]*a,o[5]*a,o[6]*a,0,o[8]*s,o[9]*s,o[10]*s,0,0,0,0,1,n)}function V(e,t,n=!1,r=!1,i=!0){e.updateFlag=o++,e.isIdentity=t,e.isIdentity3x2=t||r,e._isIdentityDirty=!e.isIdentity&&n,e._isIdentity3x2Dirty=!e.isIdentity3x2&&i}e.IdentityReadonly=function(){return i},e.create=a,e.fromArray=function(e,t=0){const n=a();return s(e,t,n),n},e.fromArrayToRef=s,e.fromFloatArrayToRefScaled=function(e,t,n,r){for(let o=0;o<16;o++)r._m[o]=e[o+t]*n;P(r)},e.fromValuesToRef=c,e.fromValues=u,e.compose=function(e,t,n){const r=a();return l(e,t,n,r),r},e.composeToRef=l,e.Identity=f,e.IdentityToRef=function(e){c(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1,e),V(e,!0)},e.Zero=function(){const e=u(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);return V(e,!1),e},e.RotationX=function(e){const t=a();return d(e,t),t},e.rotationXToRef=d,e.rotationY=function(e){const t=a();return m(e,t),t},e.rotationYToRef=m,e.rotationZ=function(e){const t=a();return h(e,t),t},e.rotationZToRef=h,e.rotationAxis=function(e,t){const n=a();return p(e,t,n),n},e.rotationAxisToRef=p,e.rotationYawPitchRoll=function(e,t,n){const r=a();return g(e,t,n,r),r},e.rotationYawPitchRollToRef=g,e.scaling=function(e,t,n){const r=a();return y(e,t,n,r),r},e.scalingToRef=y,e.translation=function(e,t,n){const r=a();return b(e,t,n,r),r},e.translationToRef=b,e.lerp=function(e,t,n){const r=a();return v(e,t,n,r),r},e.lerpToRef=v,e.decomposeLerp=function(e,t,n){const r=a();return E(e,t,n,r),r},e.decomposeLerpToRef=E,e.LookAtLH=function(e,t,n){const r=a();return T(e,t,n,r),r},e.lookAtLHToRef=T,e.lookAtRH=function(e,t,n){const r=a();return x(e,t,n,r),r},e.lookAtRHToRef=x,e.orthoLH=function(e,t,n,r){const o=a();return _(e,t,n,r,o),o},e.orthoLHToRef=_,e.OrthoOffCenterLH=function(e,t,n,r,o,i){const s=a();return R(e,t,n,r,o,i,s),s},e.orthoOffCenterLHToRef=R,e.orthoOffCenterRH=function(e,t,n,r,o,i){const s=a();return M(e,t,n,r,o,i,s),s},e.orthoOffCenterRHToRef=M,e.perspectiveLH=function(e,t,n,r){const o=a();return c(2*n/e,0,0,0,0,2*n/t,0,0,0,0,(r+n)/(r-n),1,0,0,-2*r*n/(r-n),0,o),V(o,!1),o},e.perspectiveFovLH=function(e,t,n,r){const o=a();return B(e,t,n,r,o),o},e.perspectiveFovLHToRef=B,e.PerspectiveFovRH=function(e,t,n,r){const o=a();return A(e,t,n,r,o),o},e.perspectiveFovRHToRef=A,e.perspectiveFovWebVRToRef=function(e,t,n,r,o=!1){const i=o?-1:1,a=Math.tan(e.upDegrees*Math.PI/180),s=Math.tan(e.downDegrees*Math.PI/180),c=Math.tan(e.leftDegrees*Math.PI/180),u=Math.tan(e.rightDegrees*Math.PI/180),l=2/(c+u),f=2/(a+s),d=r._m;d[0]=l,d[1]=d[2]=d[3]=d[4]=0,d[5]=f,d[6]=d[7]=0,d[8]=(c-u)*l*.5,d[9]=-(a-s)*f*.5,d[10]=-n/(t-n),d[11]=1*i,d[12]=d[13]=d[15]=0,d[14]=-2*n*t/(n-t),P(r)},e.GetAsMatrix2x2=function(e){return[e._m[0],e._m[1],e._m[4],e._m[5]]},e.GetAsMatrix3x3=function(e){return[e._m[0],e._m[1],e._m[2],e._m[4],e._m[5],e._m[6],e._m[8],e._m[9],e._m[10]]},e.transpose=function(e){const t=a();return C(e,t),t},e.transposeToRef=C,e.reflection=function(e){const t=a();return w(e,t),t},e.reflectionToRef=w,e.fromXYZAxesToRef=function(e,t,n,r){c(e.x,e.y,e.z,0,t.x,t.y,t.z,0,n.x,n.y,n.z,0,0,0,0,1,r)},e.fromQuaternionToRef=S,e.isIdentityUpdate=function(e){if(e._isIdentityDirty){e._isIdentityDirty=!1;const t=e._m;e.isIdentity=1===t[0]&&0===t[1]&&0===t[2]&&0===t[3]&&0===t[4]&&1===t[5]&&0===t[6]&&0===t[7]&&0===t[8]&&0===t[9]&&1===t[10]&&0===t[11]&&0===t[12]&&0===t[13]&&0===t[14]&&1===t[15]}return e.isIdentity},e.isIdentityAs3x2Update=function(e){return e._isIdentity3x2Dirty&&(e._isIdentity3x2Dirty=!1,1!==e._m[0]||1!==e._m[5]||1!==e._m[15]||0!==e._m[1]||0!==e._m[2]||0!==e._m[3]||0!==e._m[4]||0!==e._m[6]||0!==e._m[7]||0!==e._m[8]||0!==e._m[9]||0!==e._m[10]||0!==e._m[11]||0!==e._m[12]||0!==e._m[13]||0!==e._m[14]?e.isIdentity3x2=!1:e.isIdentity3x2=!0),e.isIdentity3x2},e.determinant=k,e.toArray=function(e){return e._m},e.asArray=function(e){return e._m},e.reset=function(e){c(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,e),V(e,!1)},e.add=function(e,t){const n=a();return I(e,t,n),n},e.addToRef=I,e.addToSelf=function(e,t){for(let n=0;n<16;n++)e._m[n]+=t._m[n];P(e)},e.invert=function(e){const t=a();return O(e,t),t},e.invertToRef=O,e.addAtIndex=function(e,t,n){e._m[t]+=n,P(e)},e.multiplyAtIndex=function(e,t,n){return e._m[t]*=n,P(e),e},e.setTranslationFromFloats=N,e.setTranslation=z,e.getTranslation=function(e){return t.Vector3.create(e._m[12],e._m[13],e._m[14])},e.getTranslationToRef=function(e,t){t.x=e._m[12],t.y=e._m[13],t.z=e._m[14]},e.removeRotationAndScaling=function(e){const t=e._m;return c(1,0,0,0,0,1,0,0,0,0,1,0,t[12],t[13],t[14],t[15],e),V(e,0===t[12]&&0===t[13]&&0===t[14]&&1===t[15]),e},e.multiply=function(e,t){const n=a();return L(e,t,n),n},e.copy=U,e.copyToArray=D,e.multiplyToRef=L,e.multiplyToArray=F,e.equals=function(e,t){const n=t;if(!n)return!1;if((e.isIdentity||n.isIdentity)&&!e._isIdentityDirty&&!n._isIdentityDirty)return e.isIdentity&&n.isIdentity;const r=e._m,o=n._m;return r[0]===o[0]&&r[1]===o[1]&&r[2]===o[2]&&r[3]===o[3]&&r[4]===o[4]&&r[5]===o[5]&&r[6]===o[6]&&r[7]===o[7]&&r[8]===o[8]&&r[9]===o[9]&&r[10]===o[10]&&r[11]===o[11]&&r[12]===o[12]&&r[13]===o[13]&&r[14]===o[14]&&r[15]===o[15]},e.clone=function(e){const t=a();return U(e,t),t},e.getHashCode=function(e){let t=e._m[0]||0;for(let n=1;n<16;n++)t=397*t^(e._m[n]||0);return t},e.decompose=q,e.setRowFromFloats=function(e,t,n,r,o,i){if(t<0||t>3)return;const a=4*t;e._m[a+0]=n,e._m[a+1]=r,e._m[a+2]=o,e._m[a+3]=i,P(e)},e.scale=function(e,t){const n=a();return G(e,t,n),n},e.scaleToRef=G,e.scaleAndAddToRef=function(e,t,n){for(let r=0;r<16;r++)n._m[r]+=e._m[r]*t;P(n)},e.normalMatrixToRef=function(e,t){const n=a();O(e,n),C(n,t);const r=t._m;c(r[0],r[1],r[2],0,r[4],r[5],r[6],0,r[8],r[9],r[10],0,0,0,0,1,t)},e.getRotationMatrix=function(e){const t=a();return $(e,t),t},e.getRotationMatrixToRef=$,e.toggleModelMatrixHandInPlace=function(e){e._m[2]*=-1,e._m[6]*=-1,e._m[8]*=-1,e._m[9]*=-1,e._m[14]*=-1,P(e)},e.toggleProjectionMatrixHandInPlace=function(e){e._m[8]*=-1,e._m[9]*=-1,e._m[10]*=-1,e._m[11]*=-1,P(e)}}(e.Matrix||(e.Matrix={}))}(Matrix)),Matrix}function requireQuaternion(){return hasRequiredQuaternion||(hasRequiredQuaternion=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.Quaternion=void 0;const t=requireVector3(),n=requireScalar(),r=requireTypes$1(),o=requireMatrix();!function(e){function i(e=0,t=0,n=0,r=1){return{x:e,y:t,z:n,w:r}}function a(e,t,n){const r=.5*t,o=.5*e,a=.5*n,s=Math.cos(r),c=Math.cos(o),u=Math.cos(a),l=Math.sin(r),f=Math.sin(o),d=Math.sin(a);return i(c*l*u+f*s*d,f*s*u-c*l*d,c*s*d-f*l*u,c*s*u+f*l*d)}function s(e){return Math.sqrt(c(e))}function c(e){return e.x*e.x+e.y*e.y+e.z*e.z+e.w*e.w}function u(e,t){return e.x*t.x+e.y*t.y+e.z*t.z+e.w*t.w}function l(e,t){const n=u(e,t);return 2*Math.acos(Math.min(Math.abs(n),1))*r.RAD2DEG}function f(e){const t=1/s(e);return i(e.x*t,e.y*t,e.z*t,e.w*t)}function d(){return i(0,0,0,1)}function m(t,n,r){const o=e.Identity();return e.slerpToRef(t,n,r,o),o}function h(e,t,n){n.x=e.x*t.w+e.y*t.z-e.z*t.y+e.w*t.x,n.y=-e.x*t.z+e.y*t.w+e.z*t.x+e.w*t.y,n.z=e.x*t.y-e.y*t.x+e.z*t.w+e.w*t.z,n.w=-e.x*t.x-e.y*t.y-e.z*t.z+e.w*t.w}function p(n,r,i,a){const s=o.Matrix.create();o.Matrix.fromXYZAxesToRef(t.Vector3.normalize(n),t.Vector3.normalize(r),t.Vector3.normalize(i),s),e.fromRotationMatrixToRef(s,a)}function g(n,r,i=t.Vector3.Up(),a){const s=o.Matrix.Identity();o.Matrix.lookAtLHToRef(n,r,i,s),o.Matrix.invertToRef(s,s),e.fromRotationMatrixToRef(s,a)}e.create=i,e.add=function(e,t){return{x:e.x+t.x,y:e.y+t.y,z:e.z+t.z,w:e.w+t.w}},e.fromRotationYawPitchRoll=a,e.fromEulerDegrees=function(e,t,n){return a(t*r.DEG2RAD,e*r.DEG2RAD,n*r.DEG2RAD)},e.length=s,e.lengthSquared=c,e.dot=u,e.angle=l,e.rotateTowards=function(e,t,n){const r=l(e,t);return 0===r?t:m(e,t,Math.min(1,n/r))},e.lookRotation=function(e,n={x:0,y:1,z:0}){const r=t.Vector3.normalize(e),o=t.Vector3.normalize(t.Vector3.cross(n,r)),a=t.Vector3.cross(r,o),s=o.x,c=o.y,u=o.z,l=a.x,f=a.y,d=a.z,m=r.x,h=r.y,p=r.z,g=s+f+p,y=i();if(g>0){let e=Math.sqrt(g+1);return y.w=.5*e,e=.5/e,y.x=(d-h)*e,y.y=(m-u)*e,y.z=(c-l)*e,y}if(s>=f&&s>=p){const e=Math.sqrt(1+s-f-p),t=.5/e;return y.x=.5*e,y.y=(c+l)*t,y.z=(u+m)*t,y.w=(d-h)*t,y}if(f>p){const e=Math.sqrt(1+f-s-p),t=.5/e;return y.x=(l+c)*t,y.y=.5*e,y.z=(h+d)*t,y.w=(m-u)*t,y}const b=Math.sqrt(1+p-s-f),v=.5/b;return y.x=(m+u)*v,y.y=(h+d)*v,y.z=.5*b,y.w=(c-l)*v,y},e.normalize=f,e.fromToRotation=function(e,n,r=t.Vector3.Up()){const o=t.Vector3.normalize(e),a=t.Vector3.normalize(n),s=t.Vector3.cross(o,a),c=Math.sqrt(t.Vector3.lengthSquared(o)*t.Vector3.lengthSquared(a))+t.Vector3.dot(o,a);return t.Vector3.lengthSquared(s)<1e-4?Math.abs(c)<1e-4?f(i(r.x,r.y,r.z,0)):d():f(i(s.x,s.y,s.z,c))},e.Identity=d,e.toEulerAngles=function(e){const o=t.Vector3.create(),i=e.x*e.x+e.y*e.y+e.z*e.z+e.w*e.w,a=e.x*e.w-e.y*e.z;return a>.4995*i?(o.x=Math.PI/2,o.y=2*Math.atan2(e.y,e.x),o.z=0):a<-.4995*i?(o.x=-Math.PI/2,o.y=-2*Math.atan2(e.y,e.x),o.z=0):(o.x=Math.asin(2*(e.w*e.x-e.y*e.z)),o.y=Math.atan2(2*e.w*e.y+2*e.z*e.x,1-2*(e.x*e.x+e.y*e.y)),o.z=Math.atan2(2*e.w*e.z+2*e.x*e.y,1-2*(e.z*e.z+e.x*e.x))),o.x*=r.RAD2DEG,o.y*=r.RAD2DEG,o.z*=r.RAD2DEG,o.x=n.Scalar.repeat(o.x,360),o.y=n.Scalar.repeat(o.y,360),o.z=n.Scalar.repeat(o.z,360),o},e.fromRotationYawPitchRollToRef=function(e,t,n,r){const o=.5*t,i=.5*e,a=.5*n,s=Math.cos(o),c=Math.cos(i),u=Math.cos(a),l=Math.sin(o),f=Math.sin(i),d=Math.sin(a);r.x=c*l*u+f*s*d,r.y=f*s*u-c*l*d,r.z=c*s*d-f*l*u,r.w=c*s*u+f*l*d},e.fromRotationMatrixToRef=function(e,t){const n=e._m,r=n[0],o=n[4],i=n[8],a=n[1],s=n[5],c=n[9],u=n[2],l=n[6],f=n[10],d=r+s+f;let m;d>0?(m=.5/Math.sqrt(d+1),t.w=.25/m,t.x=(l-c)*m,t.y=(i-u)*m,t.z=(a-o)*m):r>s&&r>f?(m=2*Math.sqrt(1+r-s-f),t.w=(l-c)/m,t.x=.25*m,t.y=(o+a)/m,t.z=(i+u)/m):s>f?(m=2*Math.sqrt(1+s-r-f),t.w=(i-u)/m,t.x=(o+a)/m,t.y=.25*m,t.z=(c+l)/m):(m=2*Math.sqrt(1+f-r-s),t.w=(a-o)/m,t.x=(i+u)/m,t.y=(c+l)/m,t.z=.25*m)},e.slerp=m,e.slerpToRef=function(e,t,n,r){let o,i,a=e.x*t.x+e.y*t.y+e.z*t.z+e.w*t.w,s=!1;if(a<0&&(s=!0,a=-a),a>.999999)i=1-n,o=s?-n:n;else{const e=Math.acos(a),t=1/Math.sin(e);i=Math.sin((1-n)*e)*t,o=s?-Math.sin(n*e)*t:Math.sin(n*e)*t}r.x=i*e.x+o*t.x,r.y=i*e.y+o*t.y,r.z=i*e.z+o*t.z,r.w=i*e.w+o*t.w},e.multiply=function(e,t){const n=i(0,0,0,1);return h(e,t,n),n},e.multiplyToRef=h,e.fromAngleAxis=function(n,o){if(0===t.Vector3.lengthSquared(o))return e.Identity();const i=d();let a=n*r.DEG2RAD;a*=.5;const s=t.Vector3.normalize(o);return t.Vector3.scaleToRef(s,Math.sin(a),s),i.x=s.x,i.y=s.y,i.z=s.z,i.w=Math.cos(a),f(i)},e.fromAxisToRotationQuaternion=function(t,n,r){const o=e.create(0,0,0,0);return p(t,n,r,o),o},e.fromAxisToRotationQuaternionToRef=p,e.Zero=function(){return i(0,0,0,0)},e.fromLookAt=function(n,r,o=t.Vector3.Up()){const i=e.Identity();return g(n,r,o,i),i},e.fromLookAtToRef=g}(e.Quaternion||(e.Quaternion={}))}(Quaternion)),Quaternion}var Color3$1={},Color4$1={},hasRequiredColor4,hasRequiredColor3,hasRequiredDist$1;function requireColor4(){return hasRequiredColor4||(hasRequiredColor4=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.Color4=void 0;const t=requireScalar(),n=requireTypes$1();!function(e){function r(e=0,t=0,n=0,r=1){return{r:e,g:t,b:n,a:r}}function o(){return r(0,0,0,0)}function i(e,t,n){n.r=e.r+t.r,n.g=e.g+t.g,n.b=e.b+t.b,n.a=e.a+t.a}function a(e,t,n){n.r=e.r-t.r,n.g=e.g-t.g,n.b=e.b-t.b,n.a=e.a-t.a}function s(e,t){t.r=Math.pow(e.r,n.ToLinearSpace),t.g=Math.pow(e.g,n.ToLinearSpace),t.b=Math.pow(e.b,n.ToLinearSpace),t.a=e.a}function c(e,t){t.r=Math.pow(e.r,n.ToGammaSpace),t.g=Math.pow(e.g,n.ToGammaSpace),t.b=Math.pow(e.b,n.ToGammaSpace),t.a=e.a}e.create=r,e.fromHexString=function(t){if("#"!==t.substring(0,1)||9!==t.length)return r(0,0,0,0);const n=parseInt(t.substring(1,3),16),o=parseInt(t.substring(3,5),16),i=parseInt(t.substring(5,7),16),a=parseInt(t.substring(7,9),16);return e.fromInts(n,o,i,a)},e.lerp=function(t,n,o){const i=r(0,0,0,0);return e.lerpToRef(t,n,o,i),i},e.lerpToRef=function(e,t,n,r){r.r=e.r+(t.r-e.r)*n,r.g=e.g+(t.g-e.g)*n,r.b=e.b+(t.b-e.b)*n,r.a=e.a+(t.a-e.a)*n},e.Red=function(){return r(1,0,0,1)},e.Green=function(){return r(0,1,0,1)},e.Blue=function(){return r(0,0,1,1)},e.Black=function(){return r(0,0,0,1)},e.White=function(){return r(1,1,1,1)},e.Purple=function(){return r(.5,0,.5,1)},e.Magenta=function(){return r(1,0,1,1)},e.Yellow=function(){return r(1,1,0,1)},e.Gray=function(){return r(.5,.5,.5,1)},e.Teal=function(){return r(0,1,1,1)},e.Clear=o,e.fromColor3=function(e,t=1){return r(e.r,e.g,e.b,t)},e.fromArray=function(e,t=0){return r(e[t],e[t+1],e[t+2],e[t+3])},e.fromInts=function(e,t,n,o){return r(e/255,t/255,n/255,o/255)},e.checkColors4=function(e,t){if(e.length===3*t){const t=[];for(let n=0;n<e.length;n+=3){const r=n/3*4;t[r]=e[n],t[r+1]=e[n+1],t[r+2]=e[n+2],t[r+3]=1}return t}return e},e.addToRef=i,e.toArray=function(e,t,n=0){t[n]=e.r,t[n+1]=e.g,t[n+2]=e.b,t[n+3]=e.a},e.add=function(e,t){const n=o();return i(e,t,n),n},e.subtract=function(e,t){const n=o();return a(e,t,n),n},e.subtractToRef=a,e.scale=function(e,t){return r(e.r*t,e.g*t,e.b*t,e.a*t)},e.scaleToRef=function(e,t,n){n.r=e.r*t,n.g=e.g*t,n.b=e.b*t,n.a=e.a*t},e.scaleAndAddToRef=function(e,t,n){n.r+=e.r*t,n.g+=e.g*t,n.b+=e.b*t,n.a+=e.a*t},e.clampToRef=function(e,n=0,r=1,o){o.r=t.Scalar.clamp(e.r,n,r),o.g=t.Scalar.clamp(e.g,n,r),o.b=t.Scalar.clamp(e.b,n,r),o.a=t.Scalar.clamp(e.a,n,r)},e.multiply=function(e,t){return r(e.r*t.r,e.g*t.g,e.b*t.b,e.a*t.a)},e.multiplyToRef=function(e,t,n){n.r=e.r*t.r,n.g=e.g*t.g,n.b=e.b*t.b,n.a=e.a*t.a},e.toString=function(e){return"{R: "+e.r+" G:"+e.g+" B:"+e.b+" A:"+e.a+"}"},e.getHashCode=function(e){let t=e.r||0;return t=397*t^(e.g||0),t=397*t^(e.b||0),t=397*t^(e.a||0),t},e.clone=function(e){return r(e.r,e.g,e.b,e.a)},e.copyFrom=function(e,t){t.r=e.r,t.g=e.g,t.b=e.b,t.a=e.a},e.copyFromFloats=function(e,t,n,r,o){o.r=e,o.g=t,o.b=n,o.a=r},e.set=function(e,t,n,r,o){o.r=e,o.g=t,o.b=n,o.a=r},e.toHexString=function(e){const n=255*e.r|0,r=255*e.g|0,o=255*e.b|0,i=255*e.a|0;return"#"+t.Scalar.toHex(n)+t.Scalar.toHex(r)+t.Scalar.toHex(o)+t.Scalar.toHex(i)},e.toLinearSpace=function(e){const t=r();return s(e,t),t},e.toLinearSpaceToRef=s,e.toGammaSpace=function(e){const t=r();return c(e,t),t},e.toGammaSpaceToRef=c}(e.Color4||(e.Color4={}))}(Color4$1)),Color4$1}function requireColor3(){return hasRequiredColor3||(hasRequiredColor3=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.Color3=void 0;const t=requireTypes$1(),n=requireColor4(),r=requireScalar();!function(e){function o(e=0,t=0,n=0){return{r:e,g:t,b:n}}function i(e,t,n){return o(e/255,t/255,n/255)}function a(e,t,n=0){t[n]=e.r,t[n+1]=e.g,t[n+2]=e.b}function s(e,t=0,n=1,o){o.r=r.Scalar.clamp(e.r,t,n),o.g=r.Scalar.clamp(e.g,t,n),o.b=r.Scalar.clamp(e.b,t,n)}function c(e,n){n.r=Math.pow(e.r,t.ToLinearSpace),n.g=Math.pow(e.g,t.ToLinearSpace),n.b=Math.pow(e.b,t.ToLinearSpace)}function u(e,n){n.r=Math.pow(e.r,t.ToGammaSpace),n.g=Math.pow(e.g,t.ToGammaSpace),n.b=Math.pow(e.b,t.ToGammaSpace)}e.create=o,e.fromHexString=function(e){return"#"!==e.substring(0,1)||7!==e.length?o(0,0,0):i(parseInt(e.substring(1,3),16),parseInt(e.substring(3,5),16),parseInt(e.substring(5,7),16))},e.fromArray=function(e,t=0){return o(e[t],e[t+1],e[t+2])},e.fromInts=i,e.lerp=function(t,n,r){const i=o(0,0,0);return e.lerpToRef(t,n,r,i),i},e.lerpToRef=function(e,t,n,r){r.r=e.r+(t.r-e.r)*n,r.g=e.g+(t.g-e.g)*n,r.b=e.b+(t.b-e.b)*n},e.Red=function(){return o(1,0,0)},e.Green=function(){return o(0,1,0)},e.Blue=function(){return o(0,0,1)},e.Black=function(){return o(0,0,0)},e.White=function(){return o(1,1,1)},e.Purple=function(){return o(.5,0,.5)},e.Magenta=function(){return o(1,0,1)},e.Yellow=function(){return o(1,1,0)},e.Gray=function(){return o(.5,.5,.5)},e.Teal=function(){return o(0,1,1)},e.Random=function(){return o(Math.random(),Math.random(),Math.random())},e.toString=function(e){return"{R: "+e.r+" G:"+e.g+" B:"+e.b+"}"},e.getHashCode=function(e){let t=e.r||0;return t=397*t^(e.g||0),t=397*t^(e.b||0),t},e.toArray=a,e.toColor4=function(e,t=1){return n.Color4.create(e.r,e.g,e.b,t)},e.asArray=function(e){const t=new Array;return a(e,t,0),t},e.toLuminance=function(e){return.3*e.r+.59*e.g+.11*e.b},e.multiply=function(e,t){return o(e.r*t.r,e.g*t.g,e.b*t.b)},e.multiplyToRef=function(e,t,n){n.r=e.r*t.r,n.g=e.g*t.g,n.b=e.b*t.b},e.equals=function(e,t){return t&&e.r===t.r&&e.g===t.g&&e.b===t.b},e.equalsFloats=function(e,t,n,r){return e.r===t&&e.g===n&&e.b===r},e.scale=function(e,t){return o(e.r*t,e.g*t,e.b*t)},e.scaleToRef=function(e,t,n){n.r=e.r*t,n.g=e.g*t,n.b=e.b*t},e.scaleAndAddToRef=function(e,t,n){n.r+=e.r*t,n.g+=e.g*t,n.b+=e.b*t},e.clampToRef=s,e.clamp=function(t,n=0,r=1){const o=e.Black();return s(t,n,r,o),o},e.add=function(e,t){return o(e.r+t.r,e.g+t.g,e.b+t.b)},e.addToRef=function(e,t,n){n.r=e.r+t.r,n.g=e.g+t.g,n.b=e.b+t.b},e.subtract=function(e,t){return o(e.r-t.r,e.g-t.g,e.b-t.b)},e.subtractToRef=function(e,t,n){n.r=e.r-t.r,n.g=e.g-t.g,n.b=e.b-t.b},e.clone=function(e){return o(e.r,e.g,e.b)},e.copyFrom=function(e,t){t.r=e.r,t.g=e.g,t.b=e.b},e.set=function(e,t,n,r){e.r=t,e.g=n,e.b=r},e.toHexString=function(e){const t=255*e.r|0,n=255*e.g|0,o=255*e.b|0;return"#"+r.Scalar.toHex(t)+r.Scalar.toHex(n)+r.Scalar.toHex(o)},e.toLinearSpace=function(e){const t=o();return c(e,t),t},e.toLinearSpaceToRef=c,e.toGammaSpace=function(e){const t=o();return u(e,t),t},e.toGammaSpaceToRef=u}(e.Color3||(e.Color3={}))}(Color3$1)),Color3$1}function requireDist$1(){return hasRequiredDist$1||(hasRequiredDist$1=1,function(e){var t=commonjsGlobal&&commonjsGlobal.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),n=commonjsGlobal&&commonjsGlobal.__exportStar||function(e,n){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(n,r)||t(n,e,r)};Object.defineProperty(e,"__esModule",{value:!0}),n(requireQuaternion(),e),n(requireVector3(),e),n(requireColor3(),e),n(requireColor4(),e),n(requireVector3(),e),n(requireScalar(),e),n(requireTypes$1(),e),n(requireDist$1(),e)}(dist$1)),dist$1}var distExports$1=requireDist$1(),minimal$1={exports:{}},indexMinimal={},minimal={},aspromise,hasRequiredAspromise;function requireAspromise(){if(hasRequiredAspromise)return aspromise;return hasRequiredAspromise=1,aspromise=function(e,t){var n=new Array(arguments.length-1),r=0,o=2,i=!0;for(;o<arguments.length;)n[r++]=arguments[o++];return new Promise((function(o,a){n[r]=function(e){if(i)if(i=!1,e)a(e);else{for(var t=new Array(arguments.length-1),n=0;n<t.length;)t[n++]=arguments[n];o.apply(null,t)}};try{e.apply(t||null,n)}catch(e){i&&(i=!1,a(e))}}))},aspromise}var base64={},hasRequiredBase64,eventemitter,hasRequiredEventemitter,float,hasRequiredFloat,inquire_1,hasRequiredInquire;function requireBase64(){return hasRequiredBase64||(hasRequiredBase64=1,function(e){var t=e;t.length=function(e){var t=e.length;if(!t)return 0;for(var n=0;--t%4>1&&"="===e.charAt(t);)++n;return Math.ceil(3*e.length)/4-n};for(var n=new Array(64),r=new Array(123),o=0;o<64;)r[n[o]=o<26?o+65:o<52?o+71:o<62?o-4:o-59|43]=o++;t.encode=function(e,t,r){for(var o,i=null,a=[],s=0,c=0;t<r;){var u=e[t++];switch(c){case 0:a[s++]=n[u>>2],o=(3&u)<<4,c=1;break;case 1:a[s++]=n[o|u>>4],o=(15&u)<<2,c=2;break;case 2:a[s++]=n[o|u>>6],a[s++]=n[63&u],c=0}s>8191&&((i||(i=[])).push(String.fromCharCode.apply(String,a)),s=0)}return c&&(a[s++]=n[o],a[s++]=61,1===c&&(a[s++]=61)),i?(s&&i.push(String.fromCharCode.apply(String,a.slice(0,s))),i.join("")):String.fromCharCode.apply(String,a.slice(0,s))};var i="invalid encoding";t.decode=function(e,t,n){for(var o,a=n,s=0,c=0;c<e.length;){var u=e.charCodeAt(c++);if(61===u&&s>1)break;if(void 0===(u=r[u]))throw Error(i);switch(s){case 0:o=u,s=1;break;case 1:t[n++]=o<<2|(48&u)>>4,o=u,s=2;break;case 2:t[n++]=(15&o)<<4|(60&u)>>2,o=u,s=3;break;case 3:t[n++]=(3&o)<<6|u,s=0}}if(1===s)throw Error(i);return n-a},t.test=function(e){return/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(e)}}(base64)),base64}function requireEventemitter(){if(hasRequiredEventemitter)return eventemitter;function e(){this._listeners={}}return hasRequiredEventemitter=1,eventemitter=e,e.prototype.on=function(e,t,n){return(this._listeners[e]||(this._listeners[e]=[])).push({fn:t,ctx:n||this}),this},e.prototype.off=function(e,t){if(void 0===e)this._listeners={};else if(void 0===t)this._listeners[e]=[];else for(var n=this._listeners[e],r=0;r<n.length;)n[r].fn===t?n.splice(r,1):++r;return this},e.prototype.emit=function(e){var t=this._listeners[e];if(t){for(var n=[],r=1;r<arguments.length;)n.push(arguments[r++]);for(r=0;r<t.length;)t[r].fn.apply(t[r++].ctx,n)}return this},eventemitter}function requireFloat(){if(hasRequiredFloat)return float;function e(e){return"undefined"!=typeof Float32Array?function(){var t=new Float32Array([-0]),n=new Uint8Array(t.buffer),r=128===n[3];function o(e,r,o){t[0]=e,r[o]=n[0],r[o+1]=n[1],r[o+2]=n[2],r[o+3]=n[3]}function i(e,r,o){t[0]=e,r[o]=n[3],r[o+1]=n[2],r[o+2]=n[1],r[o+3]=n[0]}function a(e,r){return n[0]=e[r],n[1]=e[r+1],n[2]=e[r+2],n[3]=e[r+3],t[0]}function s(e,r){return n[3]=e[r],n[2]=e[r+1],n[1]=e[r+2],n[0]=e[r+3],t[0]}e.writeFloatLE=r?o:i,e.writeFloatBE=r?i:o,e.readFloatLE=r?a:s,e.readFloatBE=r?s:a}():function(){function i(e,t,n,r){var o=t<0?1:0;if(o&&(t=-t),0===t)e(1/t>0?0:2147483648,n,r);else if(isNaN(t))e(2143289344,n,r);else if(t>34028234663852886e22)e((o<<31|2139095040)>>>0,n,r);else if(t<11754943508222875e-54)e((o<<31|Math.round(t/1401298464324817e-60))>>>0,n,r);else{var i=Math.floor(Math.log(t)/Math.LN2);e((o<<31|i+127<<23|8388607&Math.round(t*Math.pow(2,-i)*8388608))>>>0,n,r)}}function a(e,t,n){var r=e(t,n),o=2*(r>>31)+1,i=r>>>23&255,a=8388607&r;return 255===i?a?NaN:o*(1/0):0===i?1401298464324817e-60*o*a:o*Math.pow(2,i-150)*(a+8388608)}e.writeFloatLE=i.bind(null,t),e.writeFloatBE=i.bind(null,n),e.readFloatLE=a.bind(null,r),e.readFloatBE=a.bind(null,o)}(),"undefined"!=typeof Float64Array?function(){var t=new Float64Array([-0]),n=new Uint8Array(t.buffer),r=128===n[7];function o(e,r,o){t[0]=e,r[o]=n[0],r[o+1]=n[1],r[o+2]=n[2],r[o+3]=n[3],r[o+4]=n[4],r[o+5]=n[5],r[o+6]=n[6],r[o+7]=n[7]}function i(e,r,o){t[0]=e,r[o]=n[7],r[o+1]=n[6],r[o+2]=n[5],r[o+3]=n[4],r[o+4]=n[3],r[o+5]=n[2],r[o+6]=n[1],r[o+7]=n[0]}function a(e,r){return n[0]=e[r],n[1]=e[r+1],n[2]=e[r+2],n[3]=e[r+3],n[4]=e[r+4],n[5]=e[r+5],n[6]=e[r+6],n[7]=e[r+7],t[0]}function s(e,r){return n[7]=e[r],n[6]=e[r+1],n[5]=e[r+2],n[4]=e[r+3],n[3]=e[r+4],n[2]=e[r+5],n[1]=e[r+6],n[0]=e[r+7],t[0]}e.writeDoubleLE=r?o:i,e.writeDoubleBE=r?i:o,e.readDoubleLE=r?a:s,e.readDoubleBE=r?s:a}():function(){function i(e,t,n,r,o,i){var a=r<0?1:0;if(a&&(r=-r),0===r)e(0,o,i+t),e(1/r>0?0:2147483648,o,i+n);else if(isNaN(r))e(0,o,i+t),e(2146959360,o,i+n);else if(r>17976931348623157e292)e(0,o,i+t),e((a<<31|2146435072)>>>0,o,i+n);else{var s;if(r<22250738585072014e-324)e((s=r/5e-324)>>>0,o,i+t),e((a<<31|s/4294967296)>>>0,o,i+n);else{var c=Math.floor(Math.log(r)/Math.LN2);1024===c&&(c=1023),e(4503599627370496*(s=r*Math.pow(2,-c))>>>0,o,i+t),e((a<<31|c+1023<<20|1048576*s&1048575)>>>0,o,i+n)}}}function a(e,t,n,r,o){var i=e(r,o+t),a=e(r,o+n),s=2*(a>>31)+1,c=a>>>20&2047,u=4294967296*(1048575&a)+i;return 2047===c?u?NaN:s*(1/0):0===c?5e-324*s*u:s*Math.pow(2,c-1075)*(u+4503599627370496)}e.writeDoubleLE=i.bind(null,t,0,4),e.writeDoubleBE=i.bind(null,n,4,0),e.readDoubleLE=a.bind(null,r,0,4),e.readDoubleBE=a.bind(null,o,4,0)}(),e}function t(e,t,n){t[n]=255&e,t[n+1]=e>>>8&255,t[n+2]=e>>>16&255,t[n+3]=e>>>24}function n(e,t,n){t[n]=e>>>24,t[n+1]=e>>>16&255,t[n+2]=e>>>8&255,t[n+3]=255&e}function r(e,t){return(e[t]|e[t+1]<<8|e[t+2]<<16|e[t+3]<<24)>>>0}function o(e,t){return(e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3])>>>0}return hasRequiredFloat=1,float=e(e)}function requireInquire(){if(hasRequiredInquire)return inquire_1;function inquire(moduleName){try{var mod=eval("quire".replace(/^/,"re"))(moduleName);if(mod&&(mod.length||Object.keys(mod).length))return mod}catch(e){}return null}return hasRequiredInquire=1,inquire_1=inquire,inquire_1}var utf8={},hasRequiredUtf8,pool_1,hasRequiredPool,longbits,hasRequiredLongbits,hasRequiredMinimal$1,writer,hasRequiredWriter,writer_buffer,hasRequiredWriter_buffer,reader,hasRequiredReader,reader_buffer,hasRequiredReader_buffer;function requireUtf8(){return hasRequiredUtf8||(hasRequiredUtf8=1,function(e){var t=e;t.length=function(e){for(var t=0,n=0,r=0;r<e.length;++r)(n=e.charCodeAt(r))<128?t+=1:n<2048?t+=2:55296==(64512&n)&&56320==(64512&e.charCodeAt(r+1))?(++r,t+=4):t+=3;return t},t.read=function(e,t,n){if(n-t<1)return"";for(var r,o=null,i=[],a=0;t<n;)(r=e[t++])<128?i[a++]=r:r>191&&r<224?i[a++]=(31&r)<<6|63&e[t++]:r>239&&r<365?(r=((7&r)<<18|(63&e[t++])<<12|(63&e[t++])<<6|63&e[t++])-65536,i[a++]=55296+(r>>10),i[a++]=56320+(1023&r)):i[a++]=(15&r)<<12|(63&e[t++])<<6|63&e[t++],a>8191&&((o||(o=[])).push(String.fromCharCode.apply(String,i)),a=0);return o?(a&&o.push(String.fromCharCode.apply(String,i.slice(0,a))),o.join("")):String.fromCharCode.apply(String,i.slice(0,a))},t.write=function(e,t,n){for(var r,o,i=n,a=0;a<e.length;++a)(r=e.charCodeAt(a))<128?t[n++]=r:r<2048?(t[n++]=r>>6|192,t[n++]=63&r|128):55296==(64512&r)&&56320==(64512&(o=e.charCodeAt(a+1)))?(r=65536+((1023&r)<<10)+(1023&o),++a,t[n++]=r>>18|240,t[n++]=r>>12&63|128,t[n++]=r>>6&63|128,t[n++]=63&r|128):(t[n++]=r>>12|224,t[n++]=r>>6&63|128,t[n++]=63&r|128);return n-i}}(utf8)),utf8}function requirePool(){if(hasRequiredPool)return pool_1;return hasRequiredPool=1,pool_1=function(e,t,n){var r=n||8192,o=r>>>1,i=null,a=r;return function(n){if(n<1||n>o)return e(n);a+n>r&&(i=e(r),a=0);var s=t.call(i,a,a+=n);return 7&a&&(a=1+(7|a)),s}}}function requireLongbits(){if(hasRequiredLongbits)return longbits;hasRequiredLongbits=1,longbits=t;var e=requireMinimal$1();function t(e,t){this.lo=e>>>0,this.hi=t>>>0}var n=t.zero=new t(0,0);n.toNumber=function(){return 0},n.zzEncode=n.zzDecode=function(){return this},n.length=function(){return 1};var r=t.zeroHash="\0\0\0\0\0\0\0\0";t.fromNumber=function(e){if(0===e)return n;var r=e<0;r&&(e=-e);var o=e>>>0,i=(e-o)/4294967296>>>0;return r&&(i=~i>>>0,o=~o>>>0,++o>4294967295&&(o=0,++i>4294967295&&(i=0))),new t(o,i)},t.from=function(r){if("number"==typeof r)return t.fromNumber(r);if(e.isString(r)){if(!e.Long)return t.fromNumber(parseInt(r,10));r=e.Long.fromString(r)}return r.low||r.high?new t(r.low>>>0,r.high>>>0):n},t.prototype.toNumber=function(e){if(!e&&this.hi>>>31){var t=1+~this.lo>>>0,n=~this.hi>>>0;return t||(n=n+1>>>0),-(t+4294967296*n)}return this.lo+4294967296*this.hi},t.prototype.toLong=function(t){return e.Long?new e.Long(0|this.lo,0|this.hi,Boolean(t)):{low:0|this.lo,high:0|this.hi,unsigned:Boolean(t)}};var o=String.prototype.charCodeAt;return t.fromHash=function(e){return e===r?n:new t((o.call(e,0)|o.call(e,1)<<8|o.call(e,2)<<16|o.call(e,3)<<24)>>>0,(o.call(e,4)|o.call(e,5)<<8|o.call(e,6)<<16|o.call(e,7)<<24)>>>0)},t.prototype.toHash=function(){return String.fromCharCode(255&this.lo,this.lo>>>8&255,this.lo>>>16&255,this.lo>>>24,255&this.hi,this.hi>>>8&255,this.hi>>>16&255,this.hi>>>24)},t.prototype.zzEncode=function(){var e=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^e)>>>0,this.lo=(this.lo<<1^e)>>>0,this},t.prototype.zzDecode=function(){var e=-(1&this.lo);return this.lo=((this.lo>>>1|this.hi<<31)^e)>>>0,this.hi=(this.hi>>>1^e)>>>0,this},t.prototype.length=function(){var e=this.lo,t=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return 0===n?0===t?e<16384?e<128?1:2:e<2097152?3:4:t<16384?t<128?5:6:t<2097152?7:8:n<128?9:10},longbits}function requireMinimal$1(){return hasRequiredMinimal$1||(hasRequiredMinimal$1=1,function(e){var t=e;function n(e,t,n){for(var r=Object.keys(t),o=0;o<r.length;++o)void 0!==e[r[o]]&&n||(e[r[o]]=t[r[o]]);return e}function r(e){function t(e,r){if(!(this instanceof t))return new t(e,r);Object.defineProperty(this,"message",{get:function(){return e}}),Error.captureStackTrace?Error.captureStackTrace(this,t):Object.defineProperty(this,"stack",{value:(new Error).stack||""}),r&&n(this,r)}return(t.prototype=Object.create(Error.prototype)).constructor=t,Object.defineProperty(t.prototype,"name",{get:function(){return e}}),t.prototype.toString=function(){return this.name+": "+this.message},t}t.asPromise=requireAspromise(),t.base64=requireBase64(),t.EventEmitter=requireEventemitter(),t.float=requireFloat(),t.inquire=requireInquire(),t.utf8=requireUtf8(),t.pool=requirePool(),t.LongBits=requireLongbits(),t.isNode=Boolean(void 0!==commonjsGlobal&&commonjsGlobal&&commonjsGlobal.process&&commonjsGlobal.process.versions&&commonjsGlobal.process.versions.node),t.global=t.isNode&&commonjsGlobal||"undefined"!=typeof window&&window||"undefined"!=typeof self&&self||commonjsGlobal,t.emptyArray=Object.freeze?Object.freeze([]):[],t.emptyObject=Object.freeze?Object.freeze({}):{},t.isInteger=Number.isInteger||function(e){return"number"==typeof e&&isFinite(e)&&Math.floor(e)===e},t.isString=function(e){return"string"==typeof e||e instanceof String},t.isObject=function(e){return e&&"object"==typeof e},t.isset=t.isSet=function(e,t){var n=e[t];return!(null==n||!e.hasOwnProperty(t))&&("object"!=typeof n||(Array.isArray(n)?n.length:Object.keys(n).length)>0)},t.Buffer=function(){try{var e=t.inquire("buffer").Buffer;return e.prototype.utf8Write?e:null}catch(e){return null}}(),t._Buffer_from=null,t._Buffer_allocUnsafe=null,t.newBuffer=function(e){return"number"==typeof e?t.Buffer?t._Buffer_allocUnsafe(e):new t.Array(e):t.Buffer?t._Buffer_from(e):"undefined"==typeof Uint8Array?e:new Uint8Array(e)},t.Array="undefined"!=typeof Uint8Array?Uint8Array:Array,t.Long=t.global.dcodeIO&&t.global.dcodeIO.Long||t.global.Long||t.inquire("long"),t.key2Re=/^true|false|0|1$/,t.key32Re=/^-?(?:0|[1-9][0-9]*)$/,t.key64Re=/^(?:[\\x00-\\xff]{8}|-?(?:0|[1-9][0-9]*))$/,t.longToHash=function(e){return e?t.LongBits.from(e).toHash():t.LongBits.zeroHash},t.longFromHash=function(e,n){var r=t.LongBits.fromHash(e);return t.Long?t.Long.fromBits(r.lo,r.hi,n):r.toNumber(Boolean(n))},t.merge=n,t.lcFirst=function(e){return e.charAt(0).toLowerCase()+e.substring(1)},t.newError=r,t.ProtocolError=r("ProtocolError"),t.oneOfGetter=function(e){for(var t={},n=0;n<e.length;++n)t[e[n]]=1;return function(){for(var e=Object.keys(this),n=e.length-1;n>-1;--n)if(1===t[e[n]]&&void 0!==this[e[n]]&&null!==this[e[n]])return e[n]}},t.oneOfSetter=function(e){return function(t){for(var n=0;n<e.length;++n)e[n]!==t&&delete this[e[n]]}},t.toJSONOptions={longs:String,enums:String,bytes:String,json:!0},t._configure=function(){var e=t.Buffer;e?(t._Buffer_from=e.from!==Uint8Array.from&&e.from||function(t,n){return new e(t,n)},t._Buffer_allocUnsafe=e.allocUnsafe||function(t){return new e(t)}):t._Buffer_from=t._Buffer_allocUnsafe=null}}(minimal)),minimal}function requireWriter(){if(hasRequiredWriter)return writer;hasRequiredWriter=1,writer=c;var e,t=requireMinimal$1(),n=t.LongBits,r=t.base64,o=t.utf8;function i(e,t,n){this.fn=e,this.len=t,this.next=void 0,this.val=n}function a(){}function s(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}function c(){this.len=0,this.head=new i(a,0,0),this.tail=this.head,this.states=null}var u=function(){return t.Buffer?function(){return(c.create=function(){return new e})()}:function(){return new c}};function l(e,t,n){t[n]=255&e}function f(e,t){this.len=e,this.next=void 0,this.val=t}function d(e,t,n){for(;e.hi;)t[n++]=127&e.lo|128,e.lo=(e.lo>>>7|e.hi<<25)>>>0,e.hi>>>=7;for(;e.lo>127;)t[n++]=127&e.lo|128,e.lo=e.lo>>>7;t[n++]=e.lo}function m(e,t,n){t[n]=255&e,t[n+1]=e>>>8&255,t[n+2]=e>>>16&255,t[n+3]=e>>>24}c.create=u(),c.alloc=function(e){return new t.Array(e)},t.Array!==Array&&(c.alloc=t.pool(c.alloc,t.Array.prototype.subarray)),c.prototype._push=function(e,t,n){return this.tail=this.tail.next=new i(e,t,n),this.len+=t,this},f.prototype=Object.create(i.prototype),f.prototype.fn=function(e,t,n){for(;e>127;)t[n++]=127&e|128,e>>>=7;t[n]=e},c.prototype.uint32=function(e){return this.len+=(this.tail=this.tail.next=new f((e>>>=0)<128?1:e<16384?2:e<2097152?3:e<268435456?4:5,e)).len,this},c.prototype.int32=function(e){return e<0?this._push(d,10,n.fromNumber(e)):this.uint32(e)},c.prototype.sint32=function(e){return this.uint32((e<<1^e>>31)>>>0)},c.prototype.uint64=function(e){var t=n.from(e);return this._push(d,t.length(),t)},c.prototype.int64=c.prototype.uint64,c.prototype.sint64=function(e){var t=n.from(e).zzEncode();return this._push(d,t.length(),t)},c.prototype.bool=function(e){return this._push(l,1,e?1:0)},c.prototype.fixed32=function(e){return this._push(m,4,e>>>0)},c.prototype.sfixed32=c.prototype.fixed32,c.prototype.fixed64=function(e){var t=n.from(e);return this._push(m,4,t.lo)._push(m,4,t.hi)},c.prototype.sfixed64=c.prototype.fixed64,c.prototype.float=function(e){return this._push(t.float.writeFloatLE,4,e)},c.prototype.double=function(e){return this._push(t.float.writeDoubleLE,8,e)};var h=t.Array.prototype.set?function(e,t,n){t.set(e,n)}:function(e,t,n){for(var r=0;r<e.length;++r)t[n+r]=e[r]};return c.prototype.bytes=function(e){var n=e.length>>>0;if(!n)return this._push(l,1,0);if(t.isString(e)){var o=c.alloc(n=r.length(e));r.decode(e,o,0),e=o}return this.uint32(n)._push(h,n,e)},c.prototype.string=function(e){var t=o.length(e);return t?this.uint32(t)._push(o.write,t,e):this._push(l,1,0)},c.prototype.fork=function(){return this.states=new s(this),this.head=this.tail=new i(a,0,0),this.len=0,this},c.prototype.reset=function(){return this.states?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new i(a,0,0),this.len=0),this},c.prototype.ldelim=function(){var e=this.head,t=this.tail,n=this.len;return this.reset().uint32(n),n&&(this.tail.next=e.next,this.tail=t,this.len+=n),this},c.prototype.finish=function(){for(var e=this.head.next,t=this.constructor.alloc(this.len),n=0;e;)e.fn(e.val,t,n),n+=e.len,e=e.next;return t},c._configure=function(t){e=t,c.create=u(),e._configure()},writer}function requireWriter_buffer(){if(hasRequiredWriter_buffer)return writer_buffer;hasRequiredWriter_buffer=1,writer_buffer=n;var e=requireWriter();(n.prototype=Object.create(e.prototype)).constructor=n;var t=requireMinimal$1();function n(){e.call(this)}function r(e,n,r){e.length<40?t.utf8.write(e,n,r):n.utf8Write?n.utf8Write(e,r):n.write(e,r)}return n._configure=function(){n.alloc=t._Buffer_allocUnsafe,n.writeBytesBuffer=t.Buffer&&t.Buffer.prototype instanceof Uint8Array&&"set"===t.Buffer.prototype.set.name?function(e,t,n){t.set(e,n)}:function(e,t,n){if(e.copy)e.copy(t,n,0,e.length);else for(var r=0;r<e.length;)t[n++]=e[r++]}},n.prototype.bytes=function(e){t.isString(e)&&(e=t._Buffer_from(e,"base64"));var r=e.length>>>0;return this.uint32(r),r&&this._push(n.writeBytesBuffer,r,e),this},n.prototype.string=function(e){var n=t.Buffer.byteLength(e);return this.uint32(n),n&&this._push(r,n,e),this},n._configure(),writer_buffer}function requireReader(){if(hasRequiredReader)return reader;hasRequiredReader=1,reader=i;var e,t=requireMinimal$1(),n=t.LongBits,r=t.utf8;function o(e,t){return RangeError("index out of range: "+e.pos+" + "+(t||1)+" > "+e.len)}function i(e){this.buf=e,this.pos=0,this.len=e.length}var a,s="undefined"!=typeof Uint8Array?function(e){if(e instanceof Uint8Array||Array.isArray(e))return new i(e);throw Error("illegal buffer")}:function(e){if(Array.isArray(e))return new i(e);throw Error("illegal buffer")},c=function(){return t.Buffer?function(n){return(i.create=function(n){return t.Buffer.isBuffer(n)?new e(n):s(n)})(n)}:s};function u(){var e=new n(0,0),t=0;if(!(this.len-this.pos>4)){for(;t<3;++t){if(this.pos>=this.len)throw o(this);if(e.lo=(e.lo|(127&this.buf[this.pos])<<7*t)>>>0,this.buf[this.pos++]<128)return e}return e.lo=(e.lo|(127&this.buf[this.pos++])<<7*t)>>>0,e}for(;t<4;++t)if(e.lo=(e.lo|(127&this.buf[this.pos])<<7*t)>>>0,this.buf[this.pos++]<128)return e;if(e.lo=(e.lo|(127&this.buf[this.pos])<<28)>>>0,e.hi=(e.hi|(127&this.buf[this.pos])>>4)>>>0,this.buf[this.pos++]<128)return e;if(t=0,this.len-this.pos>4){for(;t<5;++t)if(e.hi=(e.hi|(127&this.buf[this.pos])<<7*t+3)>>>0,this.buf[this.pos++]<128)return e}else for(;t<5;++t){if(this.pos>=this.len)throw o(this);if(e.hi=(e.hi|(127&this.buf[this.pos])<<7*t+3)>>>0,this.buf[this.pos++]<128)return e}throw Error("invalid varint encoding")}function l(e,t){return(e[t-4]|e[t-3]<<8|e[t-2]<<16|e[t-1]<<24)>>>0}function f(){if(this.pos+8>this.len)throw o(this,8);return new n(l(this.buf,this.pos+=4),l(this.buf,this.pos+=4))}return i.create=c(),i.prototype._slice=t.Array.prototype.subarray||t.Array.prototype.slice,i.prototype.uint32=(a=4294967295,function(){if(a=(127&this.buf[this.pos])>>>0,this.buf[this.pos++]<128)return a;if(a=(a|(127&this.buf[this.pos])<<7)>>>0,this.buf[this.pos++]<128)return a;if(a=(a|(127&this.buf[this.pos])<<14)>>>0,this.buf[this.pos++]<128)return a;if(a=(a|(127&this.buf[this.pos])<<21)>>>0,this.buf[this.pos++]<128)return a;if(a=(a|(15&this.buf[this.pos])<<28)>>>0,this.buf[this.pos++]<128)return a;if((this.pos+=5)>this.len)throw this.pos=this.len,o(this,10);return a}),i.prototype.int32=function(){return 0|this.uint32()},i.prototype.sint32=function(){var e=this.uint32();return e>>>1^-(1&e)|0},i.prototype.bool=function(){return 0!==this.uint32()},i.prototype.fixed32=function(){if(this.pos+4>this.len)throw o(this,4);return l(this.buf,this.pos+=4)},i.prototype.sfixed32=function(){if(this.pos+4>this.len)throw o(this,4);return 0|l(this.buf,this.pos+=4)},i.prototype.float=function(){if(this.pos+4>this.len)throw o(this,4);var e=t.float.readFloatLE(this.buf,this.pos);return this.pos+=4,e},i.prototype.double=function(){if(this.pos+8>this.len)throw o(this,4);var e=t.float.readDoubleLE(this.buf,this.pos);return this.pos+=8,e},i.prototype.bytes=function(){var e=this.uint32(),t=this.pos,n=this.pos+e;if(n>this.len)throw o(this,e);return this.pos+=e,Array.isArray(this.buf)?this.buf.slice(t,n):t===n?new this.buf.constructor(0):this._slice.call(this.buf,t,n)},i.prototype.string=function(){var e=this.bytes();return r.read(e,0,e.length)},i.prototype.skip=function(e){if("number"==typeof e){if(this.pos+e>this.len)throw o(this,e);this.pos+=e}else do{if(this.pos>=this.len)throw o(this)}while(128&this.buf[this.pos++]);return this},i.prototype.skipType=function(e){switch(e){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;4!=(e=7&this.uint32());)this.skipType(e);break;case 5:this.skip(4);break;default:throw Error("invalid wire type "+e+" at offset "+this.pos)}return this},i._configure=function(n){e=n,i.create=c(),e._configure();var r=t.Long?"toLong":"toNumber";t.merge(i.prototype,{int64:function(){return u.call(this)[r](!1)},uint64:function(){return u.call(this)[r](!0)},sint64:function(){return u.call(this).zzDecode()[r](!1)},fixed64:function(){return f.call(this)[r](!0)},sfixed64:function(){return f.call(this)[r](!1)}})},reader}function requireReader_buffer(){if(hasRequiredReader_buffer)return reader_buffer;hasRequiredReader_buffer=1,reader_buffer=n;var e=requireReader();(n.prototype=Object.create(e.prototype)).constructor=n;var t=requireMinimal$1();function n(t){e.call(this,t)}return n._configure=function(){t.Buffer&&(n.prototype._slice=t.Buffer.prototype.slice)},n.prototype.string=function(){var e=this.uint32();return this.buf.utf8Slice?this.buf.utf8Slice(this.pos,this.pos=Math.min(this.pos+e,this.len)):this.buf.toString("utf-8",this.pos,this.pos=Math.min(this.pos+e,this.len))},n._configure(),reader_buffer}var rpc={},service,hasRequiredService,hasRequiredRpc,roots,hasRequiredRoots,hasRequiredIndexMinimal,hasRequiredMinimal;function requireService(){if(hasRequiredService)return service;hasRequiredService=1,service=t;var e=requireMinimal$1();function t(t,n,r){if("function"!=typeof t)throw TypeError("rpcImpl must be a function");e.EventEmitter.call(this),this.rpcImpl=t,this.requestDelimited=Boolean(n),this.responseDelimited=Boolean(r)}return(t.prototype=Object.create(e.EventEmitter.prototype)).constructor=t,t.prototype.rpcCall=function t(n,r,o,i,a){if(!i)throw TypeError("request must be specified");var s=this;if(!a)return e.asPromise(t,s,n,r,o,i);if(s.rpcImpl)try{return s.rpcImpl(n,r[s.requestDelimited?"encodeDelimited":"encode"](i).finish(),(function(e,t){if(e)return s.emit("error",e,n),a(e);if(null!==t){if(!(t instanceof o))try{t=o[s.responseDelimited?"decodeDelimited":"decode"](t)}catch(e){return s.emit("error",e,n),a(e)}return s.emit("data",t,n),a(null,t)}s.end(!0)}))}catch(e){return s.emit("error",e,n),void setTimeout((function(){a(e)}),0)}else setTimeout((function(){a(Error("already ended"))}),0)},t.prototype.end=function(e){return this.rpcImpl&&(e||this.rpcImpl(null,null,null),this.rpcImpl=null,this.emit("end").off()),this},service}function requireRpc(){return hasRequiredRpc||(hasRequiredRpc=1,function(e){e.Service=requireService()}(rpc)),rpc}function requireRoots(){return hasRequiredRoots?roots:(hasRequiredRoots=1,roots={})}function requireIndexMinimal(){return hasRequiredIndexMinimal||(hasRequiredIndexMinimal=1,function(e){var t=e;function n(){t.util._configure(),t.Writer._configure(t.BufferWriter),t.Reader._configure(t.BufferReader)}t.build="minimal",t.Writer=requireWriter(),t.BufferWriter=requireWriter_buffer(),t.Reader=requireReader(),t.BufferReader=requireReader_buffer(),t.util=requireMinimal$1(),t.rpc=requireRpc(),t.roots=requireRoots(),t.configure=n,n()}(indexMinimal)),indexMinimal}function requireMinimal(){return hasRequiredMinimal||(hasRequiredMinimal=1,minimal$1.exports=requireIndexMinimal()),minimal$1.exports}var minimalExports=requireMinimal();function createBasePBAnimator(){return{states:[]}}const PBAnimator={encode(e,t=minimalExports.Writer.create()){for(const n of e.states)PBAnimationState.encode(n,t.uint32(10).fork()).ldelim();return t},decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBAnimator();for(;n.pos<r;){const e=n.uint32();if(e>>>3==1)o.states.push(PBAnimationState.decode(n,n.uint32()));else n.skipType(7&e)}return o}};function createBasePBAnimationState(){return{name:"",clip:"",playing:void 0,weight:void 0,speed:void 0,loop:void 0,shouldReset:void 0}}const PBAnimationState={encode:(e,t=minimalExports.Writer.create())=>(""!==e.name&&t.uint32(10).string(e.name),""!==e.clip&&t.uint32(18).string(e.clip),void 0!==e.playing&&t.uint32(24).bool(e.playing),void 0!==e.weight&&t.uint32(37).float(e.weight),void 0!==e.speed&&t.uint32(45).float(e.speed),void 0!==e.loop&&t.uint32(48).bool(e.loop),void 0!==e.shouldReset&&t.uint32(56).bool(e.shouldReset),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBAnimationState();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.name=n.string();break;case 2:o.clip=n.string();break;case 3:o.playing=n.bool();break;case 4:o.weight=n.float();break;case 5:o.speed=n.float();break;case 6:o.loop=n.bool();break;case 7:o.shouldReset=n.bool();break;default:n.skipType(7&e)}}return o}},COMPONENT_ID$p=1042,AnimatorSchema={serialize(e,t){const n=PBAnimator.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBAnimator.decode(e.buffer(),e.remainingBytes()),create:()=>PBAnimator.decode(new Uint8Array)};function createBasePBAudioSource(){return{playing:void 0,volume:void 0,loop:void 0,pitch:void 0,audioClipUrl:""}}const PBAudioSource={encode:(e,t=minimalExports.Writer.create())=>(void 0!==e.playing&&t.uint32(8).bool(e.playing),void 0!==e.volume&&t.uint32(21).float(e.volume),void 0!==e.loop&&t.uint32(24).bool(e.loop),void 0!==e.pitch&&t.uint32(37).float(e.pitch),""!==e.audioClipUrl&&t.uint32(42).string(e.audioClipUrl),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBAudioSource();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.playing=n.bool();break;case 2:o.volume=n.float();break;case 3:o.loop=n.bool();break;case 4:o.pitch=n.float();break;case 5:o.audioClipUrl=n.string();break;default:n.skipType(7&e)}}return o}},COMPONENT_ID$o=1020,AudioSourceSchema={serialize(e,t){const n=PBAudioSource.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBAudioSource.decode(e.buffer(),e.remainingBytes()),create:()=>PBAudioSource.decode(new Uint8Array)};function createBasePBAudioStream(){return{playing:void 0,volume:void 0,url:""}}const PBAudioStream={encode:(e,t=minimalExports.Writer.create())=>(void 0!==e.playing&&t.uint32(8).bool(e.playing),void 0!==e.volume&&t.uint32(21).float(e.volume),""!==e.url&&t.uint32(26).string(e.url),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBAudioStream();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.playing=n.bool();break;case 2:o.volume=n.float();break;case 3:o.url=n.string();break;default:n.skipType(7&e)}}return o}},COMPONENT_ID$n=1021,AudioStreamSchema={serialize(e,t){const n=PBAudioStream.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBAudioStream.decode(e.buffer(),e.remainingBytes()),create:()=>PBAudioStream.decode(new Uint8Array)};var AvatarAnchorPointType;function createBasePBAvatarAttach(){return{avatarId:"",anchorPointId:0}}!function(e){e[e.AAPT_POSITION=0]="AAPT_POSITION",e[e.AAPT_NAME_TAG=1]="AAPT_NAME_TAG",e[e.AAPT_LEFT_HAND=2]="AAPT_LEFT_HAND",e[e.AAPT_RIGHT_HAND=3]="AAPT_RIGHT_HAND"}(AvatarAnchorPointType||(AvatarAnchorPointType={}));const PBAvatarAttach={encode:(e,t=minimalExports.Writer.create())=>(""!==e.avatarId&&t.uint32(10).string(e.avatarId),0!==e.anchorPointId&&t.uint32(16).int32(e.anchorPointId),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBAvatarAttach();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.avatarId=n.string();break;case 2:o.anchorPointId=n.int32();break;default:n.skipType(7&e)}}return o}},COMPONENT_ID$m=1073,AvatarAttachSchema={serialize(e,t){const n=PBAvatarAttach.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBAvatarAttach.decode(e.buffer(),e.remainingBytes()),create:()=>PBAvatarAttach.decode(new Uint8Array)};function createBaseVector3(){return{x:0,y:0,z:0}}const Vector3={encode:(e,t=minimalExports.Writer.create())=>(0!==e.x&&t.uint32(13).float(e.x),0!==e.y&&t.uint32(21).float(e.y),0!==e.z&&t.uint32(29).float(e.z),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBaseVector3();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.x=n.float();break;case 2:o.y=n.float();break;case 3:o.z=n.float();break;default:n.skipType(7&e)}}return o}};var AvatarModifierType;function createBasePBAvatarModifierArea(){return{area:void 0,excludeIds:[],modifiers:[]}}!function(e){e[e.AMT_HIDE_AVATARS=0]="AMT_HIDE_AVATARS",e[e.AMT_DISABLE_PASSPORTS=1]="AMT_DISABLE_PASSPORTS"}(AvatarModifierType||(AvatarModifierType={}));const PBAvatarModifierArea={encode(e,t=minimalExports.Writer.create()){void 0!==e.area&&Vector3.encode(e.area,t.uint32(10).fork()).ldelim();for(const n of e.excludeIds)t.uint32(18).string(n);t.uint32(26).fork();for(const n of e.modifiers)t.int32(n);return t.ldelim(),t},decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBAvatarModifierArea();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.area=Vector3.decode(n,n.uint32());break;case 2:o.excludeIds.push(n.string());break;case 3:if(2==(7&e)){const e=n.uint32()+n.pos;for(;n.pos<e;)o.modifiers.push(n.int32())}else o.modifiers.push(n.int32());break;default:n.skipType(7&e)}}return o}},COMPONENT_ID$l=1070,AvatarModifierAreaSchema={serialize(e,t){const n=PBAvatarModifierArea.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBAvatarModifierArea.decode(e.buffer(),e.remainingBytes()),create:()=>PBAvatarModifierArea.decode(new Uint8Array)};var long,hasRequiredLong;function requireLong(){if(hasRequiredLong)return long;hasRequiredLong=1,long=t;var e=null;try{e=new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([0,97,115,109,1,0,0,0,1,13,2,96,0,1,127,96,4,127,127,127,127,1,127,3,7,6,0,1,1,1,1,1,6,6,1,127,1,65,0,11,7,50,6,3,109,117,108,0,1,5,100,105,118,95,115,0,2,5,100,105,118,95,117,0,3,5,114,101,109,95,115,0,4,5,114,101,109,95,117,0,5,8,103,101,116,95,104,105,103,104,0,0,10,191,1,6,4,0,35,0,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,126,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,127,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,128,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,129,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,130,34,4,66,32,135,167,36,0,32,4,167,11])),{}).exports}catch(e){}function t(e,t,n){this.low=0|e,this.high=0|t,this.unsigned=!!n}function n(e){return!0===(e&&e.__isLong__)}t.prototype.__isLong__,Object.defineProperty(t.prototype,"__isLong__",{value:!0}),t.isLong=n;var r={},o={};function i(e,t){var n,i,a;return t?(a=0<=(e>>>=0)&&e<256)&&(i=o[e])?i:(n=s(e,(0|e)<0?-1:0,!0),a&&(o[e]=n),n):(a=-128<=(e|=0)&&e<128)&&(i=r[e])?i:(n=s(e,e<0?-1:0,!1),a&&(r[e]=n),n)}function a(e,t){if(isNaN(e))return t?g:p;if(t){if(e<0)return g;if(e>=d)return T}else{if(e<=-m)return x;if(e+1>=m)return E}return e<0?a(-e,t).neg():s(e%f|0,e/f|0,t)}function s(e,n,r){return new t(e,n,r)}t.fromInt=i,t.fromNumber=a,t.fromBits=s;var c=Math.pow;function u(e,t,n){if(0===e.length)throw Error("empty string");if("NaN"===e||"Infinity"===e||"+Infinity"===e||"-Infinity"===e)return p;if("number"==typeof t?(n=t,t=!1):t=!!t,(n=n||10)<2||36<n)throw RangeError("radix");var r;if((r=e.indexOf("-"))>0)throw Error("interior hyphen");if(0===r)return u(e.substring(1),t,n).neg();for(var o=a(c(n,8)),i=p,s=0;s<e.length;s+=8){var l=Math.min(8,e.length-s),f=parseInt(e.substring(s,s+l),n);if(l<8){var d=a(c(n,l));i=i.mul(d).add(a(f))}else i=(i=i.mul(o)).add(a(f))}return i.unsigned=t,i}function l(e,t){return"number"==typeof e?a(e,t):"string"==typeof e?u(e,t):s(e.low,e.high,"boolean"==typeof t?t:e.unsigned)}t.fromString=u,t.fromValue=l;var f=4294967296,d=f*f,m=d/2,h=i(1<<24),p=i(0);t.ZERO=p;var g=i(0,!0);t.UZERO=g;var y=i(1);t.ONE=y;var b=i(1,!0);t.UONE=b;var v=i(-1);t.NEG_ONE=v;var E=s(-1,2147483647,!1);t.MAX_VALUE=E;var T=s(-1,-1,!0);t.MAX_UNSIGNED_VALUE=T;var x=s(0,-2147483648,!1);t.MIN_VALUE=x;var _=t.prototype;return _.toInt=function(){return this.unsigned?this.low>>>0:this.low},_.toNumber=function(){return this.unsigned?(this.high>>>0)*f+(this.low>>>0):this.high*f+(this.low>>>0)},_.toString=function(e){if((e=e||10)<2||36<e)throw RangeError("radix");if(this.isZero())return"0";if(this.isNegative()){if(this.eq(x)){var t=a(e),n=this.div(t),r=n.mul(t).sub(this);return n.toString(e)+r.toInt().toString(e)}return"-"+this.neg().toString(e)}for(var o=a(c(e,6),this.unsigned),i=this,s="";;){var u=i.div(o),l=(i.sub(u.mul(o)).toInt()>>>0).toString(e);if((i=u).isZero())return l+s;for(;l.length<6;)l="0"+l;s=""+l+s}},_.getHighBits=function(){return this.high},_.getHighBitsUnsigned=function(){return this.high>>>0},_.getLowBits=function(){return this.low},_.getLowBitsUnsigned=function(){return this.low>>>0},_.getNumBitsAbs=function(){if(this.isNegative())return this.eq(x)?64:this.neg().getNumBitsAbs();for(var e=0!=this.high?this.high:this.low,t=31;t>0&&0==(e&1<<t);t--);return 0!=this.high?t+33:t+1},_.isZero=function(){return 0===this.high&&0===this.low},_.eqz=_.isZero,_.isNegative=function(){return!this.unsigned&&this.high<0},_.isPositive=function(){return this.unsigned||this.high>=0},_.isOdd=function(){return 1==(1&this.low)},_.isEven=function(){return 0==(1&this.low)},_.equals=function(e){return n(e)||(e=l(e)),(this.unsigned===e.unsigned||this.high>>>31!=1||e.high>>>31!=1)&&(this.high===e.high&&this.low===e.low)},_.eq=_.equals,_.notEquals=function(e){return!this.eq(e)},_.neq=_.notEquals,_.ne=_.notEquals,_.lessThan=function(e){return this.comp(e)<0},_.lt=_.lessThan,_.lessThanOrEqual=function(e){return this.comp(e)<=0},_.lte=_.lessThanOrEqual,_.le=_.lessThanOrEqual,_.greaterThan=function(e){return this.comp(e)>0},_.gt=_.greaterThan,_.greaterThanOrEqual=function(e){return this.comp(e)>=0},_.gte=_.greaterThanOrEqual,_.ge=_.greaterThanOrEqual,_.compare=function(e){if(n(e)||(e=l(e)),this.eq(e))return 0;var t=this.isNegative(),r=e.isNegative();return t&&!r?-1:!t&&r?1:this.unsigned?e.high>>>0>this.high>>>0||e.high===this.high&&e.low>>>0>this.low>>>0?-1:1:this.sub(e).isNegative()?-1:1},_.comp=_.compare,_.negate=function(){return!this.unsigned&&this.eq(x)?x:this.not().add(y)},_.neg=_.negate,_.add=function(e){n(e)||(e=l(e));var t=this.high>>>16,r=65535&this.high,o=this.low>>>16,i=65535&this.low,a=e.high>>>16,c=65535&e.high,u=e.low>>>16,f=0,d=0,m=0,h=0;return m+=(h+=i+(65535&e.low))>>>16,d+=(m+=o+u)>>>16,f+=(d+=r+c)>>>16,f+=t+a,s((m&=65535)<<16|(h&=65535),(f&=65535)<<16|(d&=65535),this.unsigned)},_.subtract=function(e){return n(e)||(e=l(e)),this.add(e.neg())},_.sub=_.subtract,_.multiply=function(t){if(this.isZero())return p;if(n(t)||(t=l(t)),e)return s(e.mul(this.low,this.high,t.low,t.high),e.get_high(),this.unsigned);if(t.isZero())return p;if(this.eq(x))return t.isOdd()?x:p;if(t.eq(x))return this.isOdd()?x:p;if(this.isNegative())return t.isNegative()?this.neg().mul(t.neg()):this.neg().mul(t).neg();if(t.isNegative())return this.mul(t.neg()).neg();if(this.lt(h)&&t.lt(h))return a(this.toNumber()*t.toNumber(),this.unsigned);var r=this.high>>>16,o=65535&this.high,i=this.low>>>16,c=65535&this.low,u=t.high>>>16,f=65535&t.high,d=t.low>>>16,m=65535&t.low,g=0,y=0,b=0,v=0;return b+=(v+=c*m)>>>16,y+=(b+=i*m)>>>16,b&=65535,y+=(b+=c*d)>>>16,g+=(y+=o*m)>>>16,y&=65535,g+=(y+=i*d)>>>16,y&=65535,g+=(y+=c*f)>>>16,g+=r*m+o*d+i*f+c*u,s((b&=65535)<<16|(v&=65535),(g&=65535)<<16|(y&=65535),this.unsigned)},_.mul=_.multiply,_.divide=function(t){if(n(t)||(t=l(t)),t.isZero())throw Error("division by zero");var r,o,i;if(e)return this.unsigned||-2147483648!==this.high||-1!==t.low||-1!==t.high?s((this.unsigned?e.div_u:e.div_s)(this.low,this.high,t.low,t.high),e.get_high(),this.unsigned):this;if(this.isZero())return this.unsigned?g:p;if(this.unsigned){if(t.unsigned||(t=t.toUnsigned()),t.gt(this))return g;if(t.gt(this.shru(1)))return b;i=g}else{if(this.eq(x))return t.eq(y)||t.eq(v)?x:t.eq(x)?y:(r=this.shr(1).div(t).shl(1)).eq(p)?t.isNegative()?y:v:(o=this.sub(t.mul(r)),i=r.add(o.div(t)));if(t.eq(x))return this.unsigned?g:p;if(this.isNegative())return t.isNegative()?this.neg().div(t.neg()):this.neg().div(t).neg();if(t.isNegative())return this.div(t.neg()).neg();i=p}for(o=this;o.gte(t);){r=Math.max(1,Math.floor(o.toNumber()/t.toNumber()));for(var u=Math.ceil(Math.log(r)/Math.LN2),f=u<=48?1:c(2,u-48),d=a(r),m=d.mul(t);m.isNegative()||m.gt(o);)m=(d=a(r-=f,this.unsigned)).mul(t);d.isZero()&&(d=y),i=i.add(d),o=o.sub(m)}return i},_.div=_.divide,_.modulo=function(t){return n(t)||(t=l(t)),e?s((this.unsigned?e.rem_u:e.rem_s)(this.low,this.high,t.low,t.high),e.get_high(),this.unsigned):this.sub(this.div(t).mul(t))},_.mod=_.modulo,_.rem=_.modulo,_.not=function(){return s(~this.low,~this.high,this.unsigned)},_.and=function(e){return n(e)||(e=l(e)),s(this.low&e.low,this.high&e.high,this.unsigned)},_.or=function(e){return n(e)||(e=l(e)),s(this.low|e.low,this.high|e.high,this.unsigned)},_.xor=function(e){return n(e)||(e=l(e)),s(this.low^e.low,this.high^e.high,this.unsigned)},_.shiftLeft=function(e){return n(e)&&(e=e.toInt()),0==(e&=63)?this:e<32?s(this.low<<e,this.high<<e|this.low>>>32-e,this.unsigned):s(0,this.low<<e-32,this.unsigned)},_.shl=_.shiftLeft,_.shiftRight=function(e){return n(e)&&(e=e.toInt()),0==(e&=63)?this:e<32?s(this.low>>>e|this.high<<32-e,this.high>>e,this.unsigned):s(this.high>>e-32,this.high>=0?0:-1,this.unsigned)},_.shr=_.shiftRight,_.shiftRightUnsigned=function(e){if(n(e)&&(e=e.toInt()),0===(e&=63))return this;var t=this.high;return e<32?s(this.low>>>e|t<<32-e,t>>>e,this.unsigned):s(32===e?t:t>>>e-32,0,this.unsigned)},_.shru=_.shiftRightUnsigned,_.shr_u=_.shiftRightUnsigned,_.toSigned=function(){return this.unsigned?s(this.low,this.high,!1):this},_.toUnsigned=function(){return this.unsigned?this:s(this.low,this.high,!0)},_.toBytes=function(e){return e?this.toBytesLE():this.toBytesBE()},_.toBytesLE=function(){var e=this.high,t=this.low;return[255&t,t>>>8&255,t>>>16&255,t>>>24,255&e,e>>>8&255,e>>>16&255,e>>>24]},_.toBytesBE=function(){var e=this.high,t=this.low;return[e>>>24,e>>>16&255,e>>>8&255,255&e,t>>>24,t>>>16&255,t>>>8&255,255&t]},t.fromBytes=function(e,n,r){return r?t.fromBytesLE(e,n):t.fromBytesBE(e,n)},t.fromBytesLE=function(e,n){return new t(e[0]|e[1]<<8|e[2]<<16|e[3]<<24,e[4]|e[5]<<8|e[6]<<16|e[7]<<24,n)},t.fromBytesBE=function(e,n){return new t(e[4]<<24|e[5]<<16|e[6]<<8|e[7],e[0]<<24|e[1]<<16|e[2]<<8|e[3],n)},long}var longExports=requireLong();function createBaseColor3(){return{r:0,g:0,b:0}}const Color3={encode:(e,t=minimalExports.Writer.create())=>(0!==e.r&&t.uint32(13).float(e.r),0!==e.g&&t.uint32(21).float(e.g),0!==e.b&&t.uint32(29).float(e.b),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBaseColor3();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.r=n.float();break;case 2:o.g=n.float();break;case 3:o.b=n.float();break;default:n.skipType(7&e)}}return o}};function createBaseColor4(){return{r:0,g:0,b:0,a:0}}const Color4={encode:(e,t=minimalExports.Writer.create())=>(0!==e.r&&t.uint32(13).float(e.r),0!==e.g&&t.uint32(21).float(e.g),0!==e.b&&t.uint32(29).float(e.b),0!==e.a&&t.uint32(37).float(e.a),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBaseColor4();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.r=n.float();break;case 2:o.g=n.float();break;case 3:o.b=n.float();break;case 4:o.a=n.float();break;default:n.skipType(7&e)}}return o}};function createBasePBAvatarShape(){return{id:"",name:void 0,bodyShape:void 0,skinColor:void 0,hairColor:void 0,eyeColor:void 0,expressionTriggerId:void 0,expressionTriggerTimestamp:void 0,talking:void 0,wearables:[],emotes:[]}}const PBAvatarShape={encode(e,t=minimalExports.Writer.create()){""!==e.id&&t.uint32(10).string(e.id),void 0!==e.name&&t.uint32(18).string(e.name),void 0!==e.bodyShape&&t.uint32(26).string(e.bodyShape),void 0!==e.skinColor&&Color3.encode(e.skinColor,t.uint32(34).fork()).ldelim(),void 0!==e.hairColor&&Color3.encode(e.hairColor,t.uint32(42).fork()).ldelim(),void 0!==e.eyeColor&&Color3.encode(e.eyeColor,t.uint32(50).fork()).ldelim(),void 0!==e.expressionTriggerId&&t.uint32(58).string(e.expressionTriggerId),void 0!==e.expressionTriggerTimestamp&&t.uint32(64).int64(e.expressionTriggerTimestamp),void 0!==e.talking&&t.uint32(72).bool(e.talking);for(const n of e.wearables)t.uint32(82).string(n);for(const n of e.emotes)t.uint32(90).string(n);return t},decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBAvatarShape();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.id=n.string();break;case 2:o.name=n.string();break;case 3:o.bodyShape=n.string();break;case 4:o.skinColor=Color3.decode(n,n.uint32());break;case 5:o.hairColor=Color3.decode(n,n.uint32());break;case 6:o.eyeColor=Color3.decode(n,n.uint32());break;case 7:o.expressionTriggerId=n.string();break;case 8:o.expressionTriggerTimestamp=longToNumber$1(n.int64());break;case 9:o.talking=n.bool();break;case 10:o.wearables.push(n.string());break;case 11:o.emotes.push(n.string());break;default:n.skipType(7&e)}}return o}};var globalThis$2=(()=>{if(void 0!==globalThis$2)return globalThis$2;if("undefined"!=typeof self)return self;if("undefined"!=typeof window)return window;if("undefined"!=typeof global)return global;throw"Unable to locate global object"})();function longToNumber$1(e){if(e.gt(Number.MAX_SAFE_INTEGER))throw new globalThis$2.Error("Value is larger than Number.MAX_SAFE_INTEGER");return e.toNumber()}minimalExports.util.Long!==longExports&&(minimalExports.util.Long=longExports,minimalExports.configure());const COMPONENT_ID$k=1080,AvatarShapeSchema={serialize(e,t){const n=PBAvatarShape.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBAvatarShape.decode(e.buffer(),e.remainingBytes()),create:()=>PBAvatarShape.decode(new Uint8Array)};var BillboardMode;function createBasePBBillboard(){return{billboardMode:void 0,oppositeDirection:void 0}}!function(e){e[e.BM_ALL_AXES=0]="BM_ALL_AXES",e[e.BM_Y_AXE=1]="BM_Y_AXE"}(BillboardMode||(BillboardMode={}));const PBBillboard={encode:(e,t=minimalExports.Writer.create())=>(void 0!==e.billboardMode&&t.uint32(8).int32(e.billboardMode),void 0!==e.oppositeDirection&&t.uint32(16).bool(e.oppositeDirection),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBBillboard();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.billboardMode=n.int32();break;case 2:o.oppositeDirection=n.bool();break;default:n.skipType(7&e)}}return o}},COMPONENT_ID$j=1090,BillboardSchema={serialize(e,t){const n=PBBillboard.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBBillboard.decode(e.buffer(),e.remainingBytes()),create:()=>PBBillboard.decode(new Uint8Array)};function createBasePBCameraMode(){return{mode:0}}const PBCameraMode={encode:(e,t=minimalExports.Writer.create())=>(0!==e.mode&&t.uint32(8).int32(e.mode),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBCameraMode();for(;n.pos<r;){const e=n.uint32();if(e>>>3==1)o.mode=n.int32();else n.skipType(7&e)}return o}},COMPONENT_ID$i=1072,CameraModeSchema={serialize(e,t){const n=PBCameraMode.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBCameraMode.decode(e.buffer(),e.remainingBytes()),create:()=>PBCameraMode.decode(new Uint8Array)};function createBasePBCameraModeArea(){return{area:void 0,mode:0}}const PBCameraModeArea={encode:(e,t=minimalExports.Writer.create())=>(void 0!==e.area&&Vector3.encode(e.area,t.uint32(10).fork()).ldelim(),0!==e.mode&&t.uint32(16).int32(e.mode),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBCameraModeArea();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.area=Vector3.decode(n,n.uint32());break;case 2:o.mode=n.int32();break;default:n.skipType(7&e)}}return o}},COMPONENT_ID$h=1071,CameraModeAreaSchema={serialize(e,t){const n=PBCameraModeArea.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBCameraModeArea.decode(e.buffer(),e.remainingBytes()),create:()=>PBCameraModeArea.decode(new Uint8Array)};function createBasePBGltfContainer(){return{src:""}}const PBGltfContainer={encode:(e,t=minimalExports.Writer.create())=>(""!==e.src&&t.uint32(10).string(e.src),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBGltfContainer();for(;n.pos<r;){const e=n.uint32();if(e>>>3==1)o.src=n.string();else n.skipType(7&e)}return o}},COMPONENT_ID$g=1041,GltfContainerSchema={serialize(e,t){const n=PBGltfContainer.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBGltfContainer.decode(e.buffer(),e.remainingBytes()),create:()=>PBGltfContainer.decode(new Uint8Array)};var TextureWrapMode,TextureFilterMode;function createBaseTexture(){return{src:"",wrapMode:void 0,filterMode:void 0}}!function(e){e[e.TWM_REPEAT=0]="TWM_REPEAT",e[e.TWM_CLAMP=1]="TWM_CLAMP",e[e.TWM_MIRROR=2]="TWM_MIRROR",e[e.TWM_MIRROR_ONCE=3]="TWM_MIRROR_ONCE"}(TextureWrapMode||(TextureWrapMode={})),function(e){e[e.TFM_POINT=0]="TFM_POINT",e[e.TFM_BILINEAR=1]="TFM_BILINEAR",e[e.TFM_TRILINEAR=2]="TFM_TRILINEAR"}(TextureFilterMode||(TextureFilterMode={}));const Texture={encode:(e,t=minimalExports.Writer.create())=>(""!==e.src&&t.uint32(10).string(e.src),void 0!==e.wrapMode&&t.uint32(16).int32(e.wrapMode),void 0!==e.filterMode&&t.uint32(24).int32(e.filterMode),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBaseTexture();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.src=n.string();break;case 2:o.wrapMode=n.int32();break;case 3:o.filterMode=n.int32();break;default:n.skipType(7&e)}}return o}};function createBaseAvatarTexture(){return{userId:"",wrapMode:void 0,filterMode:void 0}}const AvatarTexture={encode:(e,t=minimalExports.Writer.create())=>(""!==e.userId&&t.uint32(10).string(e.userId),void 0!==e.wrapMode&&t.uint32(16).int32(e.wrapMode),void 0!==e.filterMode&&t.uint32(24).int32(e.filterMode),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBaseAvatarTexture();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.userId=n.string();break;case 2:o.wrapMode=n.int32();break;case 3:o.filterMode=n.int32();break;default:n.skipType(7&e)}}return o}};function createBaseTextureUnion(){return{tex:void 0}}const TextureUnion={encode:(e,t=minimalExports.Writer.create())=>("texture"===e.tex?.$case&&Texture.encode(e.tex.texture,t.uint32(10).fork()).ldelim(),"avatarTexture"===e.tex?.$case&&AvatarTexture.encode(e.tex.avatarTexture,t.uint32(18).fork()).ldelim(),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBaseTextureUnion();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.tex={$case:"texture",texture:Texture.decode(n,n.uint32())};break;case 2:o.tex={$case:"avatarTexture",avatarTexture:AvatarTexture.decode(n,n.uint32())};break;default:n.skipType(7&e)}}return o}};var MaterialTransparencyMode;function createBasePBMaterial(){return{texture:void 0,alphaTest:void 0,castShadows:void 0,alphaTexture:void 0,emissiveTexture:void 0,bumpTexture:void 0,albedoColor:void 0,emissiveColor:void 0,reflectivityColor:void 0,transparencyMode:void 0,metallic:void 0,roughness:void 0,glossiness:void 0,specularIntensity:void 0,emissiveIntensity:void 0,directIntensity:void 0}}!function(e){e[e.MTM_OPAQUE=0]="MTM_OPAQUE",e[e.MTM_ALPHA_TEST=1]="MTM_ALPHA_TEST",e[e.MTM_ALPHA_BLEND=2]="MTM_ALPHA_BLEND",e[e.MTM_ALPHA_TEST_AND_ALPHA_BLEND=3]="MTM_ALPHA_TEST_AND_ALPHA_BLEND",e[e.MTM_AUTO=4]="MTM_AUTO"}(MaterialTransparencyMode||(MaterialTransparencyMode={}));const PBMaterial={encode:(e,t=minimalExports.Writer.create())=>(void 0!==e.texture&&TextureUnion.encode(e.texture,t.uint32(10).fork()).ldelim(),void 0!==e.alphaTest&&t.uint32(21).float(e.alphaTest),void 0!==e.castShadows&&t.uint32(24).bool(e.castShadows),void 0!==e.alphaTexture&&TextureUnion.encode(e.alphaTexture,t.uint32(34).fork()).ldelim(),void 0!==e.emissiveTexture&&TextureUnion.encode(e.emissiveTexture,t.uint32(42).fork()).ldelim(),void 0!==e.bumpTexture&&TextureUnion.encode(e.bumpTexture,t.uint32(50).fork()).ldelim(),void 0!==e.albedoColor&&Color3.encode(e.albedoColor,t.uint32(58).fork()).ldelim(),void 0!==e.emissiveColor&&Color3.encode(e.emissiveColor,t.uint32(66).fork()).ldelim(),void 0!==e.reflectivityColor&&Color3.encode(e.reflectivityColor,t.uint32(74).fork()).ldelim(),void 0!==e.transparencyMode&&t.uint32(80).int32(e.transparencyMode),void 0!==e.metallic&&t.uint32(93).float(e.metallic),void 0!==e.roughness&&t.uint32(101).float(e.roughness),void 0!==e.glossiness&&t.uint32(109).float(e.glossiness),void 0!==e.specularIntensity&&t.uint32(117).float(e.specularIntensity),void 0!==e.emissiveIntensity&&t.uint32(125).float(e.emissiveIntensity),void 0!==e.directIntensity&&t.uint32(133).float(e.directIntensity),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBMaterial();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.texture=TextureUnion.decode(n,n.uint32());break;case 2:o.alphaTest=n.float();break;case 3:o.castShadows=n.bool();break;case 4:o.alphaTexture=TextureUnion.decode(n,n.uint32());break;case 5:o.emissiveTexture=TextureUnion.decode(n,n.uint32());break;case 6:o.bumpTexture=TextureUnion.decode(n,n.uint32());break;case 7:o.albedoColor=Color3.decode(n,n.uint32());break;case 8:o.emissiveColor=Color3.decode(n,n.uint32());break;case 9:o.reflectivityColor=Color3.decode(n,n.uint32());break;case 10:o.transparencyMode=n.int32();break;case 11:o.metallic=n.float();break;case 12:o.roughness=n.float();break;case 13:o.glossiness=n.float();break;case 14:o.specularIntensity=n.float();break;case 15:o.emissiveIntensity=n.float();break;case 16:o.directIntensity=n.float();break;default:n.skipType(7&e)}}return o}},COMPONENT_ID$f=1017,MaterialSchema={serialize(e,t){const n=PBMaterial.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBMaterial.decode(e.buffer(),e.remainingBytes()),create:()=>PBMaterial.decode(new Uint8Array)};var ColliderLayer;function createBasePBMeshCollider(){return{collisionMask:void 0,mesh:void 0}}!function(e){e[e.CL_NONE=0]="CL_NONE",e[e.CL_POINTER=1]="CL_POINTER",e[e.CL_PHYSICS=2]="CL_PHYSICS"}(ColliderLayer||(ColliderLayer={}));const PBMeshCollider={encode:(e,t=minimalExports.Writer.create())=>(void 0!==e.collisionMask&&t.uint32(8).int32(e.collisionMask),"box"===e.mesh?.$case&&PBMeshCollider_BoxMesh.encode(e.mesh.box,t.uint32(18).fork()).ldelim(),"sphere"===e.mesh?.$case&&PBMeshCollider_SphereMesh.encode(e.mesh.sphere,t.uint32(26).fork()).ldelim(),"cylinder"===e.mesh?.$case&&PBMeshCollider_CylinderMesh.encode(e.mesh.cylinder,t.uint32(34).fork()).ldelim(),"plane"===e.mesh?.$case&&PBMeshCollider_PlaneMesh.encode(e.mesh.plane,t.uint32(42).fork()).ldelim(),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBMeshCollider();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.collisionMask=n.int32();break;case 2:o.mesh={$case:"box",box:PBMeshCollider_BoxMesh.decode(n,n.uint32())};break;case 3:o.mesh={$case:"sphere",sphere:PBMeshCollider_SphereMesh.decode(n,n.uint32())};break;case 4:o.mesh={$case:"cylinder",cylinder:PBMeshCollider_CylinderMesh.decode(n,n.uint32())};break;case 5:o.mesh={$case:"plane",plane:PBMeshCollider_PlaneMesh.decode(n,n.uint32())};break;default:n.skipType(7&e)}}return o}};function createBasePBMeshCollider_BoxMesh(){return{}}const PBMeshCollider_BoxMesh={encode:(e,t=minimalExports.Writer.create())=>t,decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBMeshCollider_BoxMesh();for(;n.pos<r;){const e=n.uint32();n.skipType(7&e)}return o}};function createBasePBMeshCollider_CylinderMesh(){return{radiusTop:void 0,radiusBottom:void 0}}const PBMeshCollider_CylinderMesh={encode:(e,t=minimalExports.Writer.create())=>(void 0!==e.radiusTop&&t.uint32(13).float(e.radiusTop),void 0!==e.radiusBottom&&t.uint32(21).float(e.radiusBottom),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBMeshCollider_CylinderMesh();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.radiusTop=n.float();break;case 2:o.radiusBottom=n.float();break;default:n.skipType(7&e)}}return o}};function createBasePBMeshCollider_PlaneMesh(){return{}}const PBMeshCollider_PlaneMesh={encode:(e,t=minimalExports.Writer.create())=>t,decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBMeshCollider_PlaneMesh();for(;n.pos<r;){const e=n.uint32();n.skipType(7&e)}return o}};function createBasePBMeshCollider_SphereMesh(){return{}}const PBMeshCollider_SphereMesh={encode:(e,t=minimalExports.Writer.create())=>t,decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBMeshCollider_SphereMesh();for(;n.pos<r;){const e=n.uint32();n.skipType(7&e)}return o}},COMPONENT_ID$e=1019,MeshColliderSchema={serialize(e,t){const n=PBMeshCollider.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBMeshCollider.decode(e.buffer(),e.remainingBytes()),create:()=>PBMeshCollider.decode(new Uint8Array)};function createBasePBMeshRenderer(){return{mesh:void 0}}const PBMeshRenderer={encode:(e,t=minimalExports.Writer.create())=>("box"===e.mesh?.$case&&PBMeshRenderer_BoxMesh.encode(e.mesh.box,t.uint32(10).fork()).ldelim(),"sphere"===e.mesh?.$case&&PBMeshRenderer_SphereMesh.encode(e.mesh.sphere,t.uint32(18).fork()).ldelim(),"cylinder"===e.mesh?.$case&&PBMeshRenderer_CylinderMesh.encode(e.mesh.cylinder,t.uint32(26).fork()).ldelim(),"plane"===e.mesh?.$case&&PBMeshRenderer_PlaneMesh.encode(e.mesh.plane,t.uint32(34).fork()).ldelim(),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBMeshRenderer();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.mesh={$case:"box",box:PBMeshRenderer_BoxMesh.decode(n,n.uint32())};break;case 2:o.mesh={$case:"sphere",sphere:PBMeshRenderer_SphereMesh.decode(n,n.uint32())};break;case 3:o.mesh={$case:"cylinder",cylinder:PBMeshRenderer_CylinderMesh.decode(n,n.uint32())};break;case 4:o.mesh={$case:"plane",plane:PBMeshRenderer_PlaneMesh.decode(n,n.uint32())};break;default:n.skipType(7&e)}}return o}};function createBasePBMeshRenderer_BoxMesh(){return{uvs:[]}}const PBMeshRenderer_BoxMesh={encode(e,t=minimalExports.Writer.create()){t.uint32(10).fork();for(const n of e.uvs)t.float(n);return t.ldelim(),t},decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBMeshRenderer_BoxMesh();for(;n.pos<r;){const e=n.uint32();if(e>>>3==1)if(2==(7&e)){const e=n.uint32()+n.pos;for(;n.pos<e;)o.uvs.push(n.float())}else o.uvs.push(n.float());else n.skipType(7&e)}return o}};function createBasePBMeshRenderer_CylinderMesh(){return{radiusTop:void 0,radiusBottom:void 0}}const PBMeshRenderer_CylinderMesh={encode:(e,t=minimalExports.Writer.create())=>(void 0!==e.radiusTop&&t.uint32(13).float(e.radiusTop),void 0!==e.radiusBottom&&t.uint32(21).float(e.radiusBottom),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBMeshRenderer_CylinderMesh();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.radiusTop=n.float();break;case 2:o.radiusBottom=n.float();break;default:n.skipType(7&e)}}return o}};function createBasePBMeshRenderer_PlaneMesh(){return{uvs:[]}}const PBMeshRenderer_PlaneMesh={encode(e,t=minimalExports.Writer.create()){t.uint32(10).fork();for(const n of e.uvs)t.float(n);return t.ldelim(),t},decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBMeshRenderer_PlaneMesh();for(;n.pos<r;){const e=n.uint32();if(e>>>3==1)if(2==(7&e)){const e=n.uint32()+n.pos;for(;n.pos<e;)o.uvs.push(n.float())}else o.uvs.push(n.float());else n.skipType(7&e)}return o}};function createBasePBMeshRenderer_SphereMesh(){return{}}const PBMeshRenderer_SphereMesh={encode:(e,t=minimalExports.Writer.create())=>t,decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBMeshRenderer_SphereMesh();for(;n.pos<r;){const e=n.uint32();n.skipType(7&e)}return o}},COMPONENT_ID$d=1018,MeshRendererSchema={serialize(e,t){const n=PBMeshRenderer.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBMeshRenderer.decode(e.buffer(),e.remainingBytes()),create:()=>PBMeshRenderer.decode(new Uint8Array)};var NftFrameType;function createBasePBNftShape(){return{src:"",style:void 0,color:void 0}}!function(e){e[e.NFT_CLASSIC=0]="NFT_CLASSIC",e[e.NFT_BAROQUE_ORNAMENT=1]="NFT_BAROQUE_ORNAMENT",e[e.NFT_DIAMOND_ORNAMENT=2]="NFT_DIAMOND_ORNAMENT",e[e.NFT_MINIMAL_WIDE=3]="NFT_MINIMAL_WIDE",e[e.NFT_MINIMAL_GREY=4]="NFT_MINIMAL_GREY",e[e.NFT_BLOCKY=5]="NFT_BLOCKY",e[e.NFT_GOLD_EDGES=6]="NFT_GOLD_EDGES",e[e.NFT_GOLD_CARVED=7]="NFT_GOLD_CARVED",e[e.NFT_GOLD_WIDE=8]="NFT_GOLD_WIDE",e[e.NFT_GOLD_ROUNDED=9]="NFT_GOLD_ROUNDED",e[e.NFT_METAL_MEDIUM=10]="NFT_METAL_MEDIUM",e[e.NFT_METAL_WIDE=11]="NFT_METAL_WIDE",e[e.NFT_METAL_SLIM=12]="NFT_METAL_SLIM",e[e.NFT_METAL_ROUNDED=13]="NFT_METAL_ROUNDED",e[e.NFT_PINS=14]="NFT_PINS",e[e.NFT_MINIMAL_BLACK=15]="NFT_MINIMAL_BLACK",e[e.NFT_MINIMAL_WHITE=16]="NFT_MINIMAL_WHITE",e[e.NFT_TAPE=17]="NFT_TAPE",e[e.NFT_WOOD_SLIM=18]="NFT_WOOD_SLIM",e[e.NFT_WOOD_WIDE=19]="NFT_WOOD_WIDE",e[e.NFT_WOOD_TWIGS=20]="NFT_WOOD_TWIGS",e[e.NFT_CANVAS=21]="NFT_CANVAS",e[e.NFT_NONE=22]="NFT_NONE"}(NftFrameType||(NftFrameType={}));const PBNftShape={encode:(e,t=minimalExports.Writer.create())=>(""!==e.src&&t.uint32(10).string(e.src),void 0!==e.style&&t.uint32(16).int32(e.style),void 0!==e.color&&Color3.encode(e.color,t.uint32(26).fork()).ldelim(),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBNftShape();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.src=n.string();break;case 2:o.style=n.int32();break;case 3:o.color=Color3.decode(n,n.uint32());break;default:n.skipType(7&e)}}return o}},COMPONENT_ID$c=1040,NftShapeSchema={serialize(e,t){const n=PBNftShape.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBNftShape.decode(e.buffer(),e.remainingBytes()),create:()=>PBNftShape.decode(new Uint8Array)};function createBasePBRaycastResult(){return{timestamp:0,origin:void 0,direction:void 0,hits:[]}}const PBRaycastResult={encode(e,t=minimalExports.Writer.create()){0!==e.timestamp&&t.uint32(8).int32(e.timestamp),void 0!==e.origin&&Vector3.encode(e.origin,t.uint32(18).fork()).ldelim(),void 0!==e.direction&&Vector3.encode(e.direction,t.uint32(26).fork()).ldelim();for(const n of e.hits)RaycastHit.encode(n,t.uint32(34).fork()).ldelim();return t},decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBRaycastResult();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.timestamp=n.int32();break;case 2:o.origin=Vector3.decode(n,n.uint32());break;case 3:o.direction=Vector3.decode(n,n.uint32());break;case 4:o.hits.push(RaycastHit.decode(n,n.uint32()));break;default:n.skipType(7&e)}}return o}};function createBaseRaycastHit(){return{position:void 0,origin:void 0,direction:void 0,normalHit:void 0,length:0,meshName:void 0,entityId:void 0}}const RaycastHit={encode:(e,t=minimalExports.Writer.create())=>(void 0!==e.position&&Vector3.encode(e.position,t.uint32(10).fork()).ldelim(),void 0!==e.origin&&Vector3.encode(e.origin,t.uint32(18).fork()).ldelim(),void 0!==e.direction&&Vector3.encode(e.direction,t.uint32(26).fork()).ldelim(),void 0!==e.normalHit&&Vector3.encode(e.normalHit,t.uint32(34).fork()).ldelim(),0!==e.length&&t.uint32(45).float(e.length),void 0!==e.meshName&&t.uint32(50).string(e.meshName),void 0!==e.entityId&&t.uint32(56).int64(e.entityId),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBaseRaycastHit();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.position=Vector3.decode(n,n.uint32());break;case 2:o.origin=Vector3.decode(n,n.uint32());break;case 3:o.direction=Vector3.decode(n,n.uint32());break;case 4:o.normalHit=Vector3.decode(n,n.uint32());break;case 5:o.length=n.float();break;case 6:o.meshName=n.string();break;case 7:o.entityId=longToNumber(n.int64());break;default:n.skipType(7&e)}}return o}};var globalThis$1=(()=>{if(void 0!==globalThis$1)return globalThis$1;if("undefined"!=typeof self)return self;if("undefined"!=typeof window)return window;if("undefined"!=typeof global)return global;throw"Unable to locate global object"})();function longToNumber(e){if(e.gt(Number.MAX_SAFE_INTEGER))throw new globalThis$1.Error("Value is larger than Number.MAX_SAFE_INTEGER");return e.toNumber()}function createBasePBPointerEventsResult(){return{commands:[]}}minimalExports.util.Long!==longExports&&(minimalExports.util.Long=longExports,minimalExports.configure());const PBPointerEventsResult={encode(e,t=minimalExports.Writer.create()){for(const n of e.commands)PBPointerEventsResult_PointerCommand.encode(n,t.uint32(10).fork()).ldelim();return t},decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBPointerEventsResult();for(;n.pos<r;){const e=n.uint32();if(e>>>3==1)o.commands.push(PBPointerEventsResult_PointerCommand.decode(n,n.uint32()));else n.skipType(7&e)}return o}};function createBasePBPointerEventsResult_PointerCommand(){return{button:0,hit:void 0,state:0,timestamp:0,analog:void 0}}const PBPointerEventsResult_PointerCommand={encode:(e,t=minimalExports.Writer.create())=>(0!==e.button&&t.uint32(8).int32(e.button),void 0!==e.hit&&RaycastHit.encode(e.hit,t.uint32(18).fork()).ldelim(),0!==e.state&&t.uint32(32).int32(e.state),0!==e.timestamp&&t.uint32(40).int32(e.timestamp),void 0!==e.analog&&t.uint32(53).float(e.analog),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBPointerEventsResult_PointerCommand();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.button=n.int32();break;case 2:o.hit=RaycastHit.decode(n,n.uint32());break;case 4:o.state=n.int32();break;case 5:o.timestamp=n.int32();break;case 6:o.analog=n.float();break;default:n.skipType(7&e)}}return o}},COMPONENT_ID$b=1063,PointerEventsResultSchema={serialize(e,t){const n=PBPointerEventsResult.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBPointerEventsResult.decode(e.buffer(),e.remainingBytes()),create:()=>PBPointerEventsResult.decode(new Uint8Array)};var PointerEventType;function createBasePBPointerHoverFeedback(){return{pointerEvents:[]}}!function(e){e[e.PET_UP=0]="PET_UP",e[e.PET_DOWN=1]="PET_DOWN",e[e.PET_HOVER_ENTER=2]="PET_HOVER_ENTER",e[e.PET_HOVER_LEAVE=3]="PET_HOVER_LEAVE"}(PointerEventType||(PointerEventType={}));const PBPointerHoverFeedback={encode(e,t=minimalExports.Writer.create()){for(const n of e.pointerEvents)PBPointerHoverFeedback_Entry.encode(n,t.uint32(10).fork()).ldelim();return t},decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBPointerHoverFeedback();for(;n.pos<r;){const e=n.uint32();if(e>>>3==1)o.pointerEvents.push(PBPointerHoverFeedback_Entry.decode(n,n.uint32()));else n.skipType(7&e)}return o}};function createBasePBPointerHoverFeedback_Info(){return{button:void 0,hoverText:void 0,maxDistance:void 0,showFeedback:void 0}}const PBPointerHoverFeedback_Info={encode:(e,t=minimalExports.Writer.create())=>(void 0!==e.button&&t.uint32(8).int32(e.button),void 0!==e.hoverText&&t.uint32(18).string(e.hoverText),void 0!==e.maxDistance&&t.uint32(29).float(e.maxDistance),void 0!==e.showFeedback&&t.uint32(32).bool(e.showFeedback),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBPointerHoverFeedback_Info();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.button=n.int32();break;case 2:o.hoverText=n.string();break;case 3:o.maxDistance=n.float();break;case 4:o.showFeedback=n.bool();break;default:n.skipType(7&e)}}return o}};function createBasePBPointerHoverFeedback_Entry(){return{eventType:0,eventInfo:void 0}}const PBPointerHoverFeedback_Entry={encode:(e,t=minimalExports.Writer.create())=>(0!==e.eventType&&t.uint32(8).int32(e.eventType),void 0!==e.eventInfo&&PBPointerHoverFeedback_Info.encode(e.eventInfo,t.uint32(18).fork()).ldelim(),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBPointerHoverFeedback_Entry();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.eventType=n.int32();break;case 2:o.eventInfo=PBPointerHoverFeedback_Info.decode(n,n.uint32());break;default:n.skipType(7&e)}}return o}},COMPONENT_ID$a=1062,PointerHoverFeedbackSchema={serialize(e,t){const n=PBPointerHoverFeedback.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBPointerHoverFeedback.decode(e.buffer(),e.remainingBytes()),create:()=>PBPointerHoverFeedback.decode(new Uint8Array)};function createBasePBPointerLock(){return{isPointerLocked:!1}}const PBPointerLock={encode:(e,t=minimalExports.Writer.create())=>(!0===e.isPointerLocked&&t.uint32(8).bool(e.isPointerLocked),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBPointerLock();for(;n.pos<r;){const e=n.uint32();if(e>>>3==1)o.isPointerLocked=n.bool();else n.skipType(7&e)}return o}},COMPONENT_ID$9=1074,PointerLockSchema={serialize(e,t){const n=PBPointerLock.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBPointerLock.decode(e.buffer(),e.remainingBytes()),create:()=>PBPointerLock.decode(new Uint8Array)};var RaycastQueryType;function createBasePBRaycast(){return{timestamp:0,origin:void 0,direction:void 0,maxDistance:0,queryType:0}}!function(e){e[e.RQT_HIT_FIRST=0]="RQT_HIT_FIRST",e[e.RQT_QUERY_ALL=1]="RQT_QUERY_ALL"}(RaycastQueryType||(RaycastQueryType={}));const PBRaycast={encode:(e,t=minimalExports.Writer.create())=>(0!==e.timestamp&&t.uint32(8).int32(e.timestamp),void 0!==e.origin&&Vector3.encode(e.origin,t.uint32(18).fork()).ldelim(),void 0!==e.direction&&Vector3.encode(e.direction,t.uint32(26).fork()).ldelim(),0!==e.maxDistance&&t.uint32(37).float(e.maxDistance),0!==e.queryType&&t.uint32(40).int32(e.queryType),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBRaycast();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.timestamp=n.int32();break;case 2:o.origin=Vector3.decode(n,n.uint32());break;case 3:o.direction=Vector3.decode(n,n.uint32());break;case 4:o.maxDistance=n.float();break;case 5:o.queryType=n.int32();break;default:n.skipType(7&e)}}return o}},COMPONENT_ID$8=1067,RaycastSchema={serialize(e,t){const n=PBRaycast.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBRaycast.decode(e.buffer(),e.remainingBytes()),create:()=>PBRaycast.decode(new Uint8Array)},COMPONENT_ID$7=1068,RaycastResultSchema={serialize(e,t){const n=PBRaycastResult.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBRaycastResult.decode(e.buffer(),e.remainingBytes()),create:()=>PBRaycastResult.decode(new Uint8Array)};function createBasePBTextShape(){return{text:"",font:void 0,fontSize:void 0,fontAutoSize:void 0,textAlign:void 0,width:void 0,height:void 0,paddingTop:void 0,paddingRight:void 0,paddingBottom:void 0,paddingLeft:void 0,lineSpacing:void 0,lineCount:void 0,textWrapping:void 0,shadowBlur:void 0,shadowOffsetX:void 0,shadowOffsetY:void 0,outlineWidth:void 0,shadowColor:void 0,outlineColor:void 0,textColor:void 0}}const PBTextShape={encode:(e,t=minimalExports.Writer.create())=>(""!==e.text&&t.uint32(10).string(e.text),void 0!==e.font&&t.uint32(16).int32(e.font),void 0!==e.fontSize&&t.uint32(29).float(e.fontSize),void 0!==e.fontAutoSize&&t.uint32(32).bool(e.fontAutoSize),void 0!==e.textAlign&&t.uint32(40).int32(e.textAlign),void 0!==e.width&&t.uint32(53).float(e.width),void 0!==e.height&&t.uint32(61).float(e.height),void 0!==e.paddingTop&&t.uint32(69).float(e.paddingTop),void 0!==e.paddingRight&&t.uint32(77).float(e.paddingRight),void 0!==e.paddingBottom&&t.uint32(85).float(e.paddingBottom),void 0!==e.paddingLeft&&t.uint32(93).float(e.paddingLeft),void 0!==e.lineSpacing&&t.uint32(101).float(e.lineSpacing),void 0!==e.lineCount&&t.uint32(104).int32(e.lineCount),void 0!==e.textWrapping&&t.uint32(112).bool(e.textWrapping),void 0!==e.shadowBlur&&t.uint32(125).float(e.shadowBlur),void 0!==e.shadowOffsetX&&t.uint32(133).float(e.shadowOffsetX),void 0!==e.shadowOffsetY&&t.uint32(141).float(e.shadowOffsetY),void 0!==e.outlineWidth&&t.uint32(149).float(e.outlineWidth),void 0!==e.shadowColor&&Color3.encode(e.shadowColor,t.uint32(154).fork()).ldelim(),void 0!==e.outlineColor&&Color3.encode(e.outlineColor,t.uint32(162).fork()).ldelim(),void 0!==e.textColor&&Color4.encode(e.textColor,t.uint32(170).fork()).ldelim(),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBTextShape();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.text=n.string();break;case 2:o.font=n.int32();break;case 3:o.fontSize=n.float();break;case 4:o.fontAutoSize=n.bool();break;case 5:o.textAlign=n.int32();break;case 6:o.width=n.float();break;case 7:o.height=n.float();break;case 8:o.paddingTop=n.float();break;case 9:o.paddingRight=n.float();break;case 10:o.paddingBottom=n.float();break;case 11:o.paddingLeft=n.float();break;case 12:o.lineSpacing=n.float();break;case 13:o.lineCount=n.int32();break;case 14:o.textWrapping=n.bool();break;case 15:o.shadowBlur=n.float();break;case 16:o.shadowOffsetX=n.float();break;case 17:o.shadowOffsetY=n.float();break;case 18:o.outlineWidth=n.float();break;case 19:o.shadowColor=Color3.decode(n,n.uint32());break;case 20:o.outlineColor=Color3.decode(n,n.uint32());break;case 21:o.textColor=Color4.decode(n,n.uint32());break;default:n.skipType(7&e)}}return o}},COMPONENT_ID$6=1030,TextShapeSchema={serialize(e,t){const n=PBTextShape.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBTextShape.decode(e.buffer(),e.remainingBytes()),create:()=>PBTextShape.decode(new Uint8Array)};function createBasePBUiBackground(){return{backgroundColor:void 0}}const PBUiBackground={encode:(e,t=minimalExports.Writer.create())=>(void 0!==e.backgroundColor&&Color4.encode(e.backgroundColor,t.uint32(10).fork()).ldelim(),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBUiBackground();for(;n.pos<r;){const e=n.uint32();if(e>>>3==1)o.backgroundColor=Color4.decode(n,n.uint32());else n.skipType(7&e)}return o}},COMPONENT_ID$5=1053,UiBackgroundSchema={serialize(e,t){const n=PBUiBackground.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBUiBackground.decode(e.buffer(),e.remainingBytes()),create:()=>PBUiBackground.decode(new Uint8Array)};function createBasePBUiText(){return{value:"",color:void 0,textAlign:void 0,font:void 0,fontSize:void 0}}const PBUiText={encode:(e,t=minimalExports.Writer.create())=>(""!==e.value&&t.uint32(10).string(e.value),void 0!==e.color&&Color3.encode(e.color,t.uint32(18).fork()).ldelim(),void 0!==e.textAlign&&t.uint32(24).int32(e.textAlign),void 0!==e.font&&t.uint32(32).int32(e.font),void 0!==e.fontSize&&t.uint32(40).int32(e.fontSize),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBUiText();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 1:o.value=n.string();break;case 2:o.color=Color3.decode(n,n.uint32());break;case 3:o.textAlign=n.int32();break;case 4:o.font=n.int32();break;case 5:o.fontSize=n.int32();break;default:n.skipType(7&e)}}return o}},COMPONENT_ID$4=1052,UiTextSchema={serialize(e,t){const n=PBUiText.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBUiText.decode(e.buffer(),e.remainingBytes()),create:()=>PBUiText.decode(new Uint8Array)};var YGPositionType,YGAlign,YGUnit,YGDirection,YGFlexDirection,YGWrap,YGJustify,YGOverflow,YGDisplay,YGEdge;function createBasePBUiTransform(){return{parent:0,rightOf:0,positionType:0,alignContent:0,alignItems:0,alignSelf:0,flexDirection:0,flexWrap:0,justifyContent:0,overflow:0,display:0,direction:0,flex:0,flexBasisUnit:0,flexBasis:0,flexGrow:0,flexShrink:0,widthUnit:0,width:0,heightUnit:0,height:0,minWidthUnit:0,minWidth:0,minHeightUnit:0,minHeight:0,maxWidthUnit:0,maxWidth:0,maxHeightUnit:0,maxHeight:0,positionLeftUnit:0,positionLeft:0,positionTopUnit:0,positionTop:0,positionRightUnit:0,positionRight:0,positionBottomUnit:0,positionBottom:0,marginLeftUnit:0,marginLeft:0,marginTopUnit:0,marginTop:0,marginRightUnit:0,marginRight:0,marginBottomUnit:0,marginBottom:0,paddingLeftUnit:0,paddingLeft:0,paddingTopUnit:0,paddingTop:0,paddingRightUnit:0,paddingRight:0,paddingBottomUnit:0,paddingBottom:0,borderLeft:0,borderTop:0,borderRight:0,borderBottom:0}}!function(e){e[e.YGPT_STATIC=0]="YGPT_STATIC",e[e.YGPT_RELATIVE=1]="YGPT_RELATIVE",e[e.YGPT_ABSOLUTE=2]="YGPT_ABSOLUTE"}(YGPositionType||(YGPositionType={})),function(e){e[e.YGA_AUTO=0]="YGA_AUTO",e[e.YGA_FLEX_START=1]="YGA_FLEX_START",e[e.YGA_CENTER=2]="YGA_CENTER",e[e.YGA_FLEX_END=3]="YGA_FLEX_END",e[e.YGA_STRETCH=4]="YGA_STRETCH",e[e.YGA_BASELINE=5]="YGA_BASELINE",e[e.YGA_SPACE_BETWEEN=6]="YGA_SPACE_BETWEEN",e[e.YGA_SPACE_AROUND=7]="YGA_SPACE_AROUND"}(YGAlign||(YGAlign={})),function(e){e[e.YGU_UNDEFINED=0]="YGU_UNDEFINED",e[e.YGU_POINT=1]="YGU_POINT",e[e.YGU_PERCENT=2]="YGU_PERCENT",e[e.YGU_AUTO=3]="YGU_AUTO"}(YGUnit||(YGUnit={})),function(e){e[e.YGD_INHERIT=0]="YGD_INHERIT",e[e.YGD_LTR=1]="YGD_LTR",e[e.YGD_RTL=2]="YGD_RTL"}(YGDirection||(YGDirection={})),function(e){e[e.YGFD_COLUMN=0]="YGFD_COLUMN",e[e.YGFD_COLUMN_REVERSE=1]="YGFD_COLUMN_REVERSE",e[e.YGFD_ROW=2]="YGFD_ROW",e[e.YGFD_ROW_REVERSE=3]="YGFD_ROW_REVERSE"}(YGFlexDirection||(YGFlexDirection={})),function(e){e[e.YGW_NO_WRAP=0]="YGW_NO_WRAP",e[e.YGW_WRAP=1]="YGW_WRAP",e[e.YGW_WRAP_REVERSE=2]="YGW_WRAP_REVERSE"}(YGWrap||(YGWrap={})),function(e){e[e.YGJ_FLEX_START=0]="YGJ_FLEX_START",e[e.YGJ_CENTER=1]="YGJ_CENTER",e[e.YGJ_FLEX_END=2]="YGJ_FLEX_END",e[e.YGJ_SPACE_BETWEEN=3]="YGJ_SPACE_BETWEEN",e[e.YGJ_SPACE_AROUND=4]="YGJ_SPACE_AROUND",e[e.YGJ_SPACE_EVENLY=5]="YGJ_SPACE_EVENLY"}(YGJustify||(YGJustify={})),function(e){e[e.YGO_VISIBLE=0]="YGO_VISIBLE",e[e.YGO_HIDDEN=1]="YGO_HIDDEN",e[e.YGO_SCROLL=2]="YGO_SCROLL"}(YGOverflow||(YGOverflow={})),function(e){e[e.YGD_FLEX=0]="YGD_FLEX",e[e.YGD_NONE=1]="YGD_NONE"}(YGDisplay||(YGDisplay={})),function(e){e[e.YGE_LEFT=0]="YGE_LEFT",e[e.YGE_TOP=1]="YGE_TOP",e[e.YGE_RIGHT=2]="YGE_RIGHT",e[e.YGE_BOTTOM=3]="YGE_BOTTOM",e[e.YGE_START=4]="YGE_START",e[e.YGE_END=5]="YGE_END",e[e.YGE_HORIZONTAL=6]="YGE_HORIZONTAL",e[e.YGE_VERTICAL=7]="YGE_VERTICAL",e[e.YGE_ALL=8]="YGE_ALL"}(YGEdge||(YGEdge={}));const PBUiTransform={encode:(e,t=minimalExports.Writer.create())=>(0!==e.parent&&t.uint32(632).int32(e.parent),0!==e.rightOf&&t.uint32(640).int32(e.rightOf),0!==e.positionType&&t.uint32(8).int32(e.positionType),0!==e.alignContent&&t.uint32(16).int32(e.alignContent),0!==e.alignItems&&t.uint32(24).int32(e.alignItems),0!==e.alignSelf&&t.uint32(32).int32(e.alignSelf),0!==e.flexDirection&&t.uint32(40).int32(e.flexDirection),0!==e.flexWrap&&t.uint32(48).int32(e.flexWrap),0!==e.justifyContent&&t.uint32(56).int32(e.justifyContent),0!==e.overflow&&t.uint32(64).int32(e.overflow),0!==e.display&&t.uint32(72).int32(e.display),0!==e.direction&&t.uint32(80).int32(e.direction),0!==e.flex&&t.uint32(93).float(e.flex),0!==e.flexBasisUnit&&t.uint32(104).int32(e.flexBasisUnit),0!==e.flexBasis&&t.uint32(117).float(e.flexBasis),0!==e.flexGrow&&t.uint32(125).float(e.flexGrow),0!==e.flexShrink&&t.uint32(133).float(e.flexShrink),0!==e.widthUnit&&t.uint32(136).int32(e.widthUnit),0!==e.width&&t.uint32(149).float(e.width),0!==e.heightUnit&&t.uint32(152).int32(e.heightUnit),0!==e.height&&t.uint32(165).float(e.height),0!==e.minWidthUnit&&t.uint32(168).int32(e.minWidthUnit),0!==e.minWidth&&t.uint32(181).float(e.minWidth),0!==e.minHeightUnit&&t.uint32(184).int32(e.minHeightUnit),0!==e.minHeight&&t.uint32(197).float(e.minHeight),0!==e.maxWidthUnit&&t.uint32(248).int32(e.maxWidthUnit),0!==e.maxWidth&&t.uint32(261).float(e.maxWidth),0!==e.maxHeightUnit&&t.uint32(264).int32(e.maxHeightUnit),0!==e.maxHeight&&t.uint32(277).float(e.maxHeight),0!==e.positionLeftUnit&&t.uint32(328).int32(e.positionLeftUnit),0!==e.positionLeft&&t.uint32(341).float(e.positionLeft),0!==e.positionTopUnit&&t.uint32(344).int32(e.positionTopUnit),0!==e.positionTop&&t.uint32(357).float(e.positionTop),0!==e.positionRightUnit&&t.uint32(360).int32(e.positionRightUnit),0!==e.positionRight&&t.uint32(373).float(e.positionRight),0!==e.positionBottomUnit&&t.uint32(376).int32(e.positionBottomUnit),0!==e.positionBottom&&t.uint32(389).float(e.positionBottom),0!==e.marginLeftUnit&&t.uint32(408).int32(e.marginLeftUnit),0!==e.marginLeft&&t.uint32(421).float(e.marginLeft),0!==e.marginTopUnit&&t.uint32(424).int32(e.marginTopUnit),0!==e.marginTop&&t.uint32(437).float(e.marginTop),0!==e.marginRightUnit&&t.uint32(440).int32(e.marginRightUnit),0!==e.marginRight&&t.uint32(453).float(e.marginRight),0!==e.marginBottomUnit&&t.uint32(456).int32(e.marginBottomUnit),0!==e.marginBottom&&t.uint32(469).float(e.marginBottom),0!==e.paddingLeftUnit&&t.uint32(488).int32(e.paddingLeftUnit),0!==e.paddingLeft&&t.uint32(501).float(e.paddingLeft),0!==e.paddingTopUnit&&t.uint32(504).int32(e.paddingTopUnit),0!==e.paddingTop&&t.uint32(517).float(e.paddingTop),0!==e.paddingRightUnit&&t.uint32(520).int32(e.paddingRightUnit),0!==e.paddingRight&&t.uint32(533).float(e.paddingRight),0!==e.paddingBottomUnit&&t.uint32(536).int32(e.paddingBottomUnit),0!==e.paddingBottom&&t.uint32(549).float(e.paddingBottom),0!==e.borderLeft&&t.uint32(581).float(e.borderLeft),0!==e.borderTop&&t.uint32(597).float(e.borderTop),0!==e.borderRight&&t.uint32(613).float(e.borderRight),0!==e.borderBottom&&t.uint32(629).float(e.borderBottom),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBUiTransform();for(;n.pos<r;){const e=n.uint32();switch(e>>>3){case 79:o.parent=n.int32();break;case 80:o.rightOf=n.int32();break;case 1:o.positionType=n.int32();break;case 2:o.alignContent=n.int32();break;case 3:o.alignItems=n.int32();break;case 4:o.alignSelf=n.int32();break;case 5:o.flexDirection=n.int32();break;case 6:o.flexWrap=n.int32();break;case 7:o.justifyContent=n.int32();break;case 8:o.overflow=n.int32();break;case 9:o.display=n.int32();break;case 10:o.direction=n.int32();break;case 11:o.flex=n.float();break;case 13:o.flexBasisUnit=n.int32();break;case 14:o.flexBasis=n.float();break;case 15:o.flexGrow=n.float();break;case 16:o.flexShrink=n.float();break;case 17:o.widthUnit=n.int32();break;case 18:o.width=n.float();break;case 19:o.heightUnit=n.int32();break;case 20:o.height=n.float();break;case 21:o.minWidthUnit=n.int32();break;case 22:o.minWidth=n.float();break;case 23:o.minHeightUnit=n.int32();break;case 24:o.minHeight=n.float();break;case 31:o.maxWidthUnit=n.int32();break;case 32:o.maxWidth=n.float();break;case 33:o.maxHeightUnit=n.int32();break;case 34:o.maxHeight=n.float();break;case 41:o.positionLeftUnit=n.int32();break;case 42:o.positionLeft=n.float();break;case 43:o.positionTopUnit=n.int32();break;case 44:o.positionTop=n.float();break;case 45:o.positionRightUnit=n.int32();break;case 46:o.positionRight=n.float();break;case 47:o.positionBottomUnit=n.int32();break;case 48:o.positionBottom=n.float();break;case 51:o.marginLeftUnit=n.int32();break;case 52:o.marginLeft=n.float();break;case 53:o.marginTopUnit=n.int32();break;case 54:o.marginTop=n.float();break;case 55:o.marginRightUnit=n.int32();break;case 56:o.marginRight=n.float();break;case 57:o.marginBottomUnit=n.int32();break;case 58:o.marginBottom=n.float();break;case 61:o.paddingLeftUnit=n.int32();break;case 62:o.paddingLeft=n.float();break;case 63:o.paddingTopUnit=n.int32();break;case 64:o.paddingTop=n.float();break;case 65:o.paddingRightUnit=n.int32();break;case 66:o.paddingRight=n.float();break;case 67:o.paddingBottomUnit=n.int32();break;case 68:o.paddingBottom=n.float();break;case 72:o.borderLeft=n.float();break;case 74:o.borderTop=n.float();break;case 76:o.borderRight=n.float();break;case 78:o.borderBottom=n.float();break;default:n.skipType(7&e)}}return o}},COMPONENT_ID$3=1050,UiTransformSchema={serialize(e,t){const n=PBUiTransform.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBUiTransform.decode(e.buffer(),e.remainingBytes()),create:()=>PBUiTransform.decode(new Uint8Array)};function createBasePBVisibilityComponent(){return{visible:void 0}}const PBVisibilityComponent={encode:(e,t=minimalExports.Writer.create())=>(void 0!==e.visible&&t.uint32(8).bool(e.visible),t),decode(e,t){const n=e instanceof minimalExports.Reader?e:new minimalExports.Reader(e);let r=void 0===t?n.len:n.pos+t;const o=createBasePBVisibilityComponent();for(;n.pos<r;){const e=n.uint32();if(e>>>3==1)o.visible=n.bool();else n.skipType(7&e)}return o}},COMPONENT_ID$2=1081,VisibilityComponentSchema={serialize(e,t){const n=PBVisibilityComponent.encode(e),r=new Uint8Array(n.finish(),0,n.len);t.writeBuffer(r,!1)},deserialize:e=>PBVisibilityComponent.decode(e.buffer(),e.remainingBytes()),create:()=>PBVisibilityComponent.decode(new Uint8Array)};function defineLibraryComponents({defineComponentFromSchema:e}){return{Animator:e(AnimatorSchema,COMPONENT_ID$p),AudioSource:e(AudioSourceSchema,COMPONENT_ID$o),AudioStream:e(AudioStreamSchema,COMPONENT_ID$n),AvatarAttach:e(AvatarAttachSchema,COMPONENT_ID$m),AvatarModifierArea:e(AvatarModifierAreaSchema,COMPONENT_ID$l),AvatarShape:e(AvatarShapeSchema,COMPONENT_ID$k),Billboard:e(BillboardSchema,COMPONENT_ID$j),CameraMode:e(CameraModeSchema,COMPONENT_ID$i),CameraModeArea:e(CameraModeAreaSchema,COMPONENT_ID$h),GltfContainer:e(GltfContainerSchema,COMPONENT_ID$g),Material:e(MaterialSchema,COMPONENT_ID$f),MeshCollider:e(MeshColliderSchema,COMPONENT_ID$e),MeshRenderer:e(MeshRendererSchema,COMPONENT_ID$d),NftShape:e(NftShapeSchema,COMPONENT_ID$c),PointerEventsResult:e(PointerEventsResultSchema,COMPONENT_ID$b),PointerHoverFeedback:e(PointerHoverFeedbackSchema,COMPONENT_ID$a),PointerLock:e(PointerLockSchema,COMPONENT_ID$9),Raycast:e(RaycastSchema,COMPONENT_ID$8),RaycastResult:e(RaycastResultSchema,COMPONENT_ID$7),TextShape:e(TextShapeSchema,COMPONENT_ID$6),UiBackground:e(UiBackgroundSchema,COMPONENT_ID$5),UiText:e(UiTextSchema,COMPONENT_ID$4),UiTransform:e(UiTransformSchema,COMPONENT_ID$3),VisibilityComponent:e(VisibilityComponentSchema,COMPONENT_ID$2)}}const COMPONENT_ID$1=1,TRANSFORM_LENGTH=44,TransformSchema={serialize(e,t){const n=t.incrementWriteOffset(TRANSFORM_LENGTH);t.setFloat32(n,e.position.x),t.setFloat32(n+4,e.position.y),t.setFloat32(n+8,e.position.z),t.setFloat32(n+12,e.rotation.x),t.setFloat32(n+16,e.rotation.y),t.setFloat32(n+20,e.rotation.z),t.setFloat32(n+24,e.rotation.w),t.setFloat32(n+28,e.scale.x),t.setFloat32(n+32,e.scale.y),t.setFloat32(n+36,e.scale.z),t.setUint32(n+40,e.parent||0)},deserialize(e){const t=e.incrementReadOffset(TRANSFORM_LENGTH);return{position:{x:e.getFloat32(t),y:e.getFloat32(t+4),z:e.getFloat32(t+8)},rotation:{x:e.getFloat32(t+12),y:e.getFloat32(t+16),z:e.getFloat32(t+20),w:e.getFloat32(t+24)},scale:{x:e.getFloat32(t+28),y:e.getFloat32(t+32),z:e.getFloat32(t+36)},parent:e.getUint32(t+40)}},create:()=>({position:{x:0,y:0,z:0},scale:{x:1,y:1,z:1},rotation:{x:0,y:0,z:0,w:1}})};function defineTransformComponent({defineComponentFromSchema:e}){return e(TransformSchema,COMPONENT_ID$1)}var COMPONENT_ID;function defineSdkComponents(e){return{...defineLibraryComponents(e),Transform:defineTransformComponent(e)}}function IArray(e){return{serialize(t,n){n.writeUint32(t.length);for(const r of t)e.serialize(r,n)},deserialize(t){const n=[],r=t.readUint32();for(let o=0;o<r;o++)n.push(e.deserialize(t));return n},create:()=>[]}}!function(e){e[e.SYNC=1e3]="SYNC"}(COMPONENT_ID||(COMPONENT_ID={}));const Bool={serialize(e,t){t.writeInt8(e?1:0)},deserialize:e=>1===e.readInt8(),create:()=>!1};function IEnum(e){return{serialize(t,n){e.serialize(t,n)},deserialize:t=>e.deserialize(t),create:()=>e.create()}}const Float32={serialize(e,t){t.writeFloat32(e)},deserialize:e=>e.readFloat32(),create:()=>0},Float64={serialize(e,t){t.writeFloat64(e)},deserialize:e=>e.readFloat64(),create:()=>0},Int64={serialize(e,t){t.writeInt64(BigInt(e))},deserialize:e=>Number(e.readInt64()),create:()=>0},Int32={serialize(e,t){t.writeInt32(e)},deserialize:e=>e.readInt32(),create:()=>0},Int16={serialize(e,t){t.writeInt16(e)},deserialize:e=>e.readInt16(),create:()=>0},Int8={serialize(e,t){t.writeInt8(e)},deserialize:e=>e.readInt8(),create:()=>0},FlatString={serialize(e,t){t.writeBuffer((new TextEncoder).encode(e))},deserialize:e=>(new TextDecoder).decode(e.readBuffer()),create:()=>""},EcsString=FlatString,Color3Schema={serialize(e,t){t.writeFloat32(e.r),t.writeFloat32(e.g),t.writeFloat32(e.b)},deserialize:e=>({r:e.readFloat32(),g:e.readFloat32(),b:e.readFloat32()}),create:()=>({r:0,g:0,b:0})},Color4Schema={serialize(e,t){t.writeFloat32(e.r),t.writeFloat32(e.g),t.writeFloat32(e.b),t.writeFloat32(e.a)},deserialize:e=>({r:e.readFloat32(),g:e.readFloat32(),b:e.readFloat32(),a:e.readFloat32()}),create:()=>({r:0,g:0,b:0,a:0})},QuaternionSchema={serialize(e,t){t.writeFloat32(e.x),t.writeFloat32(e.y),t.writeFloat32(e.z),t.writeFloat32(e.w)},deserialize:e=>({x:e.readFloat32(),y:e.readFloat32(),z:e.readFloat32(),w:e.readFloat32()}),create:()=>({x:0,y:0,z:0,w:0})},Vector3Schema={serialize(e,t){t.writeFloat32(e.x),t.writeFloat32(e.y),t.writeFloat32(e.z)},deserialize:e=>({x:e.readFloat32(),y:e.readFloat32(),z:e.readFloat32()}),create:()=>({x:0,y:0,z:0})};function IMap(e){return{serialize(t,n){for(const r in e)e[r].serialize(t[r],n)},deserialize(t){const n={};for(const r in e)n[r]=e[r].deserialize(t);return n},create(){const t={};for(const n in e)t[n]=e[n].create();return t}}}function IOptional(e){return{serialize(t,n){t?(n.writeInt8(1),e.serialize(t,n)):n.writeInt8(0)},deserialize(t){if(t.readInt8())return e.deserialize(t)},create(){}}}var Schemas;exports.Schemas=void 0,Schemas=exports.Schemas||(exports.Schemas={}),Schemas.Boolean=Bool,Schemas.String=EcsString,Schemas.Float=Float32,Schemas.Double=Float64,Schemas.Byte=Int8,Schemas.Short=Int16,Schemas.Int=Int32,Schemas.Int64=Int64,Schemas.Number=Float32,Schemas.Vector3=Vector3Schema,Schemas.Quaternion=QuaternionSchema,Schemas.Color3=Color3Schema,Schemas.Color4=Color4Schema,Schemas.Enum=IEnum,Schemas.Array=IArray,Schemas.Map=IMap,Schemas.Optional=IOptional;var dist={},types={},hasRequiredTypes,hasRequiredDist;function requireTypes(){return hasRequiredTypes||(hasRequiredTypes=1,Object.defineProperty(types,"__esModule",{value:!0})),types}function requireDist(){return hasRequiredDist||(hasRequiredDist=1,function(e){var t=commonjsGlobal&&commonjsGlobal.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),n=commonjsGlobal&&commonjsGlobal.__exportStar||function(e,n){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(n,r)||t(n,e,r)};Object.defineProperty(e,"__esModule",{value:!0}),e.crdtProtocol=e.stateIterator=e.sameData=void 0,n(requireTypes(),e);const r=globalThis.Buffer;function o(e,t){if(e===t)return!0;if(e instanceof Uint8Array&&t instanceof Uint8Array){if(e.byteLength!==t.byteLength)return!1;for(let n=0;n<e.byteLength;n++)if(e[n]!==t[n])return!1;return!0}return!!(r&&e instanceof r&&t instanceof r)&&e.equals(t)}e.sameData=o,e.stateIterator=function*(e){for(const[t,n]of e.entries())for(const[e,r]of n.entries())yield[t,e,r]},e.crdtProtocol=function(){const e=new Map;function t(t,n,r,o){const i=e.get(t),a=Math.max(o,i?.get(n)?.timestamp||0);if(i)i.set(n,{timestamp:a,data:r});else{const o=new Map;o.set(n,{timestamp:a,data:r}),e.set(t,o)}return{timestamp:a,data:r}}return{createEvent:function(n,r,o){const i=(e.get(n)?.get(r)?.timestamp||0)+1;return t(n,r,o,i),{key1:n,key2:r,data:o,timestamp:i}},processMessage:function(n){const{key1:r,key2:i,data:a,timestamp:s}=n,c=e.get(r)?.get(i);return!c||c.timestamp<s?(t(r,i,a,s),n):c.timestamp>s?{key1:r,key2:i,data:c.data,timestamp:c.timestamp}:o(c.data,a)?n:function(e,t){return e>t}(c.data,a)?{key1:r,key2:i,data:c.data,timestamp:c.timestamp}:(t(r,i,a,s).data,n)},getState:function(){return e}}}}(dist)),dist}var distExports=requireDist();function getNextSize(e,t){const n=Math.max(e,t)+1024;return 1024*Math.ceil(n/1024)}const defaultInitialCapacity=10240;function createByteBuffer(e={}){const t=e.reading?.currentOffset||0;let n=null,r=0;e.writing?(n=e.writing.buffer,e.writing.currentOffset&&(r=e.writing.currentOffset)):e.reading?(n=e.reading.buffer,r=e.reading.length||e.reading.buffer.length):n=new Uint8Array(e.initialCapacity||defaultInitialCapacity);let o=n,i=new DataView(o.buffer,o.byteOffset),a=r,s=t;const c=e=>{if(a+e>o.byteLength){const t=getNextSize(o.byteLength,a+e),n=new Uint8Array(t);n.set(o),o=n,i=new DataView(o.buffer)}return a+=e,a-e},u=e=>{if(s+e>a)throw new Error("Outside of the bounds of writen data.");return s+=e,s-e};return{buffer:()=>o,bufferLength:()=>o.length,resetBuffer(){s=0,a=0},currentReadOffset:()=>s,currentWriteOffset:()=>a,incrementReadOffset:e=>u(e),remainingBytes:()=>a-s,readFloat32:()=>i.getFloat32(u(4)),readFloat64:()=>i.getFloat64(u(8)),readInt8:()=>i.getInt8(u(1)),readInt16:()=>i.getInt16(u(2)),readInt32:()=>i.getInt32(u(4)),readInt64:()=>i.getBigInt64(u(8)),readUint8:()=>i.getUint8(u(1)),readUint16:()=>i.getUint16(u(2)),readUint32:()=>i.getUint32(u(4)),readUint64:()=>i.getBigUint64(u(8)),readBuffer(){const e=i.getUint32(u(4));return o.subarray(u(e),u(0))},incrementWriteOffset:e=>c(e),size:()=>a,toBinary:()=>o.subarray(0,a),toCopiedBinary(){return new Uint8Array(this.toBinary())},writeBuffer(e,t=!0){t&&this.writeUint32(e.byteLength);const n=c(e.byteLength);o.set(e,n)},writeFloat32(e){const t=c(4);i.setFloat32(t,e)},writeFloat64(e){const t=c(8);i.setFloat64(t,e)},writeInt8(e){const t=c(1);i.setInt8(t,e)},writeInt16(e){const t=c(2);i.setInt16(t,e)},writeInt32(e){const t=c(4);i.setInt32(t,e)},writeInt64(e){const t=c(8);i.setBigInt64(t,e)},writeUint8(e){const t=c(1);i.setUint8(t,e)},writeUint16(e){const t=c(2);i.setUint16(t,e)},writeUint32(e){const t=c(4);i.setUint32(t,e)},writeUint64(e){const t=c(8);i.setBigUint64(t,e)},getFloat32:e=>i.getFloat32(e),getFloat64:e=>i.getFloat64(e),getInt8:e=>i.getInt8(e),getInt16:e=>i.getInt16(e),getInt32:e=>i.getInt32(e),getInt64:e=>i.getBigInt64(e),getUint8:e=>i.getUint8(e),getUint16:e=>i.getUint16(e),getUint32:e=>i.getUint32(e),getUint64:e=>i.getBigUint64(e),setFloat32(e,t){i.setFloat32(e,t)},setFloat64(e,t){i.setFloat64(e,t)},setInt8(e,t){i.setInt8(e,t)},setInt16(e,t){i.setInt16(e,t)},setInt32(e,t){i.setInt32(e,t)},setInt64(e,t){i.setBigInt64(e,t)},setUint8(e,t){i.setUint8(e,t)},setUint16(e,t){i.setUint16(e,t)},setUint32(e,t){i.setUint32(e,t)},setUint64(e,t){i.setBigUint64(e,t)}}}var WireMessage;!function(e){var t;function n(t){const n=t.remainingBytes();if(n<e.HEADER_LENGTH)return!1;return!(n<t.getUint32(t.currentReadOffset()))}(t=e.Enum||(e.Enum={}))[t.RESERVED=0]="RESERVED",t[t.PUT_COMPONENT=1]="PUT_COMPONENT",t[t.DELETE_COMPONENT=2]="DELETE_COMPONENT",t[t.MAX_MESSAGE_TYPE=3]="MAX_MESSAGE_TYPE",e.HEADER_LENGTH=8,e.validate=n,e.readHeader=function(e){return n(e)?{length:e.readUint32(),type:e.readUint32()}:null}}(WireMessage||(WireMessage={}));var WireMessage$1=WireMessage,ComponentOperation,EntityUtils;function crdtSceneSystem({engine:e}){const t=[],n=distExports.crdtProtocol(),r=[],o=[];function i(e){const t=Array.from(e);return e.length=0,t}return{createMessages:function(r){const a=i(o),s=createByteBuffer();for(const[o,i]of r)for(const r of i){const i=e.getComponent(r),c=i.has(o)?i.toBinary(o).toBinary():null,u=n.createEvent(o,r,c),l=s.currentWriteOffset(),f=i.has(o)?WireMessage$1.Enum.PUT_COMPONENT:WireMessage$1.Enum.DELETE_COMPONENT,d={type:f,componentId:r,entity:o,timestamp:u.timestamp};t.some((e=>e.filter(d)))&&(ComponentOperation.write(f,o,u.timestamp,i,s),a.push({...d,messageBuffer:s.buffer().subarray(l,s.currentWriteOffset())}))}const c=createByteBuffer();for(const e of t){c.resetBuffer();for(const t of a)e.filter(t)&&c.writeBuffer(t.messageBuffer,!1);c.size()&&e.send(c.toBinary())}},receiveMessages:function(){const a=i(r);for(const r of t){const t=createByteBuffer();for(const r of a){const{data:i,timestamp:a,componentId:s,entity:c,type:u}=r,l={key1:c,key2:s,data:i||null,timestamp:a},f=e.getComponent(s),d=n.processMessage(l);if(l!==d){const e=f.has(c)?WireMessage$1.Enum.PUT_COMPONENT:WireMessage$1.Enum.DELETE_COMPONENT;ComponentOperation.write(e,c,d.timestamp,f,t)}else{if(u===WireMessage$1.Enum.DELETE_COMPONENT)f.deleteFrom(c);else{const e=createByteBuffer({reading:{buffer:r.data,currentOffset:0}});f.upsertFromBinary(r.entity,e),f.clearDirty()}o.push(r)}}t.size()&&r.send(t.toBinary())}},addTransport:function(e){var n;t.push(e),e.onmessage=(n=e.type,function(e){const t=createByteBuffer({reading:{buffer:e,currentOffset:0}});for(;WireMessage$1.validate(t);){const e=t.currentReadOffset(),o=ComponentOperation.read(t),{type:i,entity:a,componentId:s,data:c,timestamp:u}=o;r.push({type:i,entity:a,componentId:s,data:c,timestamp:u,transportType:n,messageBuffer:t.buffer().subarray(e,t.currentReadOffset())})}})}}}function deepReadonly(e){return Object.freeze({...e})}function defineComponent(e,t,n){const r=new Map,o=new Set,i=createByteBuffer();function a(){return n?t.deserialize(createByteBuffer({writing:{buffer:i.buffer(),currentOffset:i.currentWriteOffset()}})):t.create()}function s(e){return{...a(),...e}}return n&&t.serialize(n,i),{_id:e,default:function(){return a()},isDirty:function(e){return o.has(e)},has:function(e){return r.has(e)},deleteFrom:function(e){const t=r.get(e);return r.delete(e),o.add(e),t||null},getOrNull:function(e){const t=r.get(e);return t?deepReadonly(t):null},get:function(t){const n=r.get(t);if(!n)throw new Error(`[getFrom] Component ${e} for ${t} not found`);return deepReadonly(n)},create:function(t,n){if(r.get(t))throw new Error(`[create] Component ${e} for ${t} already exists`);const i=void 0===n?a():s(n);return r.set(t,i),o.add(t),i},createOrReplace:function(e,t){const n=void 0===t?a():s(t);return r.set(e,n),o.add(e),n},getMutableOrNull:function(e){const t=r.get(e);return t?(o.add(e),t):null},getMutable:function(t){const n=this.getMutableOrNull(t);if(null===n)throw new Error(`[mutable] Component ${e} for ${t} not found`);return n},iterator:function*(){for(const[e,t]of r)yield[e,t]},dirtyIterator:function*(){for(const e of o)yield e},toBinary(n){const o=r.get(n);if(!o)throw new Error(`[toBinary] Component ${e} for ${n} not found`);const i=createByteBuffer();return t.serialize(o,i),i},writeToByteBuffer(n,o){const i=r.get(n);if(!i)throw new Error(`[writeToByteBuffer] Component ${e} for ${n} not found`);t.serialize(i,o)},updateFromBinary(t,n){if(!r.get(t))throw new Error(`[updateFromBinary] Component ${e} for ${t} not found`);return this.upsertFromBinary(t,n)},upsertFromBinary(e,n){const i=t.deserialize(n);return r.set(e,i),o.add(e),i},clearDirty:function(){o.clear()}}}function EntityContainer(){const e=Entity(EntityUtils.STATIC_ENTITIES_RANGE),t=Entity(EntityUtils.DYNAMIC_ENTITIES_RANGE);return{generateEntity:(n=!1)=>n?t.generateEntity():e.generateEntity(),removeEntity:n=>e.removeEntity(n)||t.removeEntity(n),entityExists:n=>EntityUtils.isReservedEntity(n)||e.getExistingEntities().has(n)||t.getExistingEntities().has(n),getExistingEntities:()=>new Set([...e.getExistingEntities(),...t.getExistingEntities()])}}function Entity(e){let t=e[0];const n=new Set;return{getExistingEntities:()=>new Set(n),generateEntity:function(){if(t>=e[1])throw new Error(`It fails trying to generate an entity out of range [${e[0]}, ${e[1]}].`);const r=t;return t++,n.add(r),r},removeEntity:function(e){return n.delete(e)}}}!function(e){e.MESSAGE_HEADER_LENGTH=20,e.write=function(t,n,r,o,i){const a=i.incrementWriteOffset(WireMessage$1.HEADER_LENGTH+e.MESSAGE_HEADER_LENGTH);t===WireMessage$1.Enum.PUT_COMPONENT&&o.writeToByteBuffer(n,i);const s=i.size()-a;i.setUint32(a,s),i.setUint32(a+4,t),i.setUint32(a+8,n),i.setUint32(a+12,o._id),i.setUint64(a+16,BigInt(r)),i.setUint32(a+24,s-e.MESSAGE_HEADER_LENGTH-WireMessage$1.HEADER_LENGTH)},e.read=function(e){const t=WireMessage$1.readHeader(e);if(!t)return null;const n={...t,entity:e.readUint32(),componentId:e.readInt32(),timestamp:Number(e.readUint64())};return t.type===WireMessage$1.Enum.DELETE_COMPONENT?n:{...n,data:e.readBuffer()}}}(ComponentOperation||(ComponentOperation={})),function(e){function t(e,t){return e>=t[0]&&e<=t[1]}e.MAX_ENTITIES=4294967295,e.DYNAMIC_ENTITIES_START_AT=1e5,e.RESERVED_STATIC_ENTITIES=512,e.RESERVED_ENTITIES_RANGE=[0,e.RESERVED_STATIC_ENTITIES-1],e.STATIC_ENTITIES_RANGE=[e.RESERVED_STATIC_ENTITIES,e.DYNAMIC_ENTITIES_START_AT-1],e.DYNAMIC_ENTITIES_RANGE=[e.DYNAMIC_ENTITIES_START_AT,e.MAX_ENTITIES],e.isDynamicEntity=function(n){return t(n,e.DYNAMIC_ENTITIES_RANGE)},e.isStaticEntity=function(n){return t(n,e.STATIC_ENTITIES_RANGE)},e.isReservedEntity=function(n){return t(n,e.RESERVED_ENTITIES_RANGE)}}(EntityUtils||(EntityUtils={}));const SYSTEMS_REGULAR_PRIORITY=1e5;function SystemContainer(){const e=[];function t(){e.sort(((e,t)=>t.priority-e.priority))}return{add:function(n,r,o){if(e.find((e=>e.fn===n)))throw new Error("System already added");if(o&&e.find((e=>e.name===o)))throw new Error("System name already used");e.push({fn:n,priority:r,name:o}),t()},remove:function(n){let r=-1;return r="string"==typeof n?e.findIndex((e=>e.name===n)):e.findIndex((e=>e.fn===n)),-1!==r&&(e.splice(r,1),t(),!0)},getSystems:()=>e}}function preEngine(){const e=EntityContainer(),t=new Map,n=SystemContainer();function r(t=!1){return e.generateEntity(t)}function o(e,n,r){if(t.get(n))throw new Error(`Component ${n} already declared`);const o=defineComponent(n,e,r);return t.set(n,o),o}return{entityExists:function(t){return e.entityExists(t)},componentsDefinition:t,addEntity:r,addDynamicEntity:function(){return r(!0)},removeEntity:function(n){for(const[,e]of t)e.has(n)&&e.deleteFrom(n);return e.removeEntity(n)},addSystem:function(e,t=SYSTEMS_REGULAR_PRIORITY,r){n.add(e,t,r)},getSystems:function(){return n.getSystems()},removeSystem:function(e){return n.remove(e)},defineComponent:function(e,t,n){return o(exports.Schemas.Map(e),t,n)},defineComponentFromSchema:o,getEntitiesWith:function*(...e){for(const[t,...n]of function*(...e){const[t,...n]=e;for(const[r]of t.iterator()){let t=!0;for(const e of n)if(!e.has(r)){t=!1;break}t&&(yield[r,...e])}}(...e))yield[t,...n.map((e=>e.get(t)))]},getComponent:function(e){const n=t.get(e);if(!n)throw new Error(`Component ${e} not found. You need to declare the components at the beginnig of the engine declaration`);return n},removeComponentDefinition:function(e){t.delete(e)}}}function Engine({transports:e}={}){const t=preEngine(),n=crdtSceneSystem({engine:t}),r=defineSdkComponents(t);if(e)for(const t of e)n.addTransport(t);function*o(e,n){if(!n.find((t=>e===t))){n.push(e);for(const[i,a]of t.getEntitiesWith(r.Transform))a.parent===e&&(yield*o(i,n));yield e}}return{addEntity:t.addEntity,addDynamicEntity:t.addDynamicEntity,removeEntity:t.removeEntity,removeEntityWithChildren:function(e){for(const n of o(e,[]))t.removeEntity(n)},addSystem:t.addSystem,removeSystem:t.removeSystem,defineComponent:t.defineComponent,defineComponentFromSchema:t.defineComponentFromSchema,getEntitiesWith:t.getEntitiesWith,getComponent:t.getComponent,removeComponentDefinition:t.removeComponentDefinition,update:function(e){n.receiveMessages();for(const n of t.getSystems())n.fn(e);const r=new Map;for(const[e,n]of t.componentsDefinition)for(const t of n.dirtyIterator())r.has(t)||r.set(t,new Set),r.get(t).add(e);n.createMessages(r);for(const[e,n]of t.componentsDefinition)n.clearDirty()},RootEntity:0,PlayerEntity:1,CameraEntity:2,baseComponents:r,entityExists:t.entityExists,addTransport:n.addTransport}}var ECSComponentIDs;!function(e){e[e.Transform=1]="Transform",e[e.Animator=1042]="Animator",e[e.AudioSource=1020]="AudioSource",e[e.AudioStream=1021]="AudioStream",e[e.AvatarAttach=1073]="AvatarAttach",e[e.AvatarModifierArea=1070]="AvatarModifierArea",e[e.AvatarShape=1080]="AvatarShape",e[e.Billboard=1090]="Billboard",e[e.CameraMode=1072]="CameraMode",e[e.CameraModeArea=1071]="CameraModeArea",e[e.GltfContainer=1041]="GltfContainer",e[e.Material=1017]="Material",e[e.MeshCollider=1019]="MeshCollider",e[e.MeshRenderer=1018]="MeshRenderer",e[e.NftShape=1040]="NftShape",e[e.PointerEventsResult=1063]="PointerEventsResult",e[e.PointerHoverFeedback=1062]="PointerHoverFeedback",e[e.PointerLock=1074]="PointerLock",e[e.Raycast=1067]="Raycast",e[e.RaycastResult=1068]="RaycastResult",e[e.TextShape=1030]="TextShape",e[e.UiBackground=1053]="UiBackground",e[e.UiText=1052]="UiText",e[e.UiTransform=1050]="UiTransform",e[e.VisibilityComponent=1081]="VisibilityComponent"}(ECSComponentIDs||(ECSComponentIDs={}));const componentIds=Object.values(ECSComponentIDs).filter((e=>"number"==typeof e)).map(Number);function createRendererTransport(){if("undefined"==typeof dcl)throw new Error("Cannot create createRendererTransport without global dcl object");const e="renderer";return{type:e,send(e){dcl.callRpc("~system/EngineApi","crdtSendToRenderer",[{data:new Uint8Array(e)}]).catch(dcl.error)},filter:t=>t.transportType!==e&&(!!componentIds.includes(t.componentId)&&!!t)}}const InputCommands=[0,1,2,4,5,6,7,8,9,10,11,12,13],InternalInputStateSchema={timestampLastUpdate:exports.Schemas.Number,currentTimestamp:exports.Schemas.Number,buttonState:exports.Schemas.Array(exports.Schemas.Map({value:exports.Schemas.Boolean,ts:exports.Schemas.Number}))},InternalInputStateComponentId=1500,TimestampUpdateSystemPriority=1<<20,ButtonStateUpdateSystemPriority=0;function createInput(e){const t=e.defineComponent(InternalInputStateSchema,InternalInputStateComponentId);function n(e,t){if(3!==e)return r(e,t);for(const e of InputCommands){const n=r(e,t);if(n)return n}return null}function r(n,r){const o=e.baseComponents.PointerEventsResult.getOrNull(e.RootEntity);if(!o)return null;const i=o.commands,a=findLastAction(i,1,n,r);if(!a)return null;const s=findLastAction(i,0,n,r);if(!s)return null;const c=t.get(e.RootEntity);return a.timestamp<s.timestamp&&s.timestamp>c.timestampLastUpdate?(t.getMutable(e.RootEntity).currentTimestamp=Math.max(s.timestamp,c.currentTimestamp),{up:s,down:a}):null}function o(e,t,n){if(3!==e)return i(e,t,n);for(const e of InputCommands){const r=i(e,t,n);if(r)return r}return null}function i(n,r,o){const i=e.baseComponents.PointerEventsResult.getOrNull(e.RootEntity);if(!i)return null;const a=findLastAction(i.commands,r,n,o);if(!a)return null;const s=t.get(e.RootEntity);return a.timestamp>s.timestampLastUpdate?(t.getMutable(e.RootEntity).currentTimestamp=Math.max(a.timestamp,s.currentTimestamp),a):null}return t.create(e.RootEntity,{buttonState:Array.from({length:InputCommands.length},(()=>({ts:0,value:!1})))}),e.addSystem((function(){const n=e.baseComponents.PointerEventsResult.getOrNull(e.RootEntity);if(!n)return;const r=t.getMutable(e.RootEntity);for(const e of n.commands)e.timestamp>r.buttonState[e.button].ts&&(1===e.state?r.buttonState[e.button].value=!0:0===e.state&&(r.buttonState[e.button].value=!1))}),ButtonStateUpdateSystemPriority),e.addSystem((function(){const n=t.get(e.RootEntity);n.currentTimestamp>n.timestampLastUpdate&&(t.getMutable(e.RootEntity).timestampLastUpdate=n.currentTimestamp)}),TimestampUpdateSystemPriority),{isPressed:function(n){return t.get(e.RootEntity).buttonState[n].value},getClick:n,getInputCommand:o,isClicked:function(e,t){return null!==n(e,t)},isTriggered:function(e,t,n){return null!==o(e,t,n)}}}function findLastAction(e,t,n,r){let o;for(const i of e)i.button===n&&i.state===t&&(!r||i.hit&&r===i.hit.entityId)&&(!o||i.timestamp>=o.timestamp)&&(o=i);return o}class ObserverEventState{constructor(e,t=!1,n,r){this.initalize(e,t,n,r)}initalize(e,t=!1,n,r){return this.mask=e,this.skipNextObservers=t,this.target=n,this.currentTarget=r,this}}class Observer{constructor(e,t,n=null){this.callback=e,this.mask=t,this.scope=n,this.unregisterOnNextCall=!1,this._willBeUnregistered=!1}}class Observable{constructor(e){this._observers=new Array,this._onObserverAdded=null,this._eventState=new ObserverEventState(0),e&&(this._onObserverAdded=e)}add(e,t=-1,n=!1,r=null,o=!1){if(!e)return null;const i=new Observer(e,t,r);return i.unregisterOnNextCall=o,n?this._observers.unshift(i):this._observers.push(i),this._onObserverAdded&&this._onObserverAdded(i),i}addOnce(e){return this.add(e,void 0,void 0,void 0,!0)}remove(e){if(!e)return!1;return-1!==this._observers.indexOf(e)&&(this._deferUnregister(e),!0)}removeCallback(e,t){for(let n=0;n<this._observers.length;n++)if(this._observers[n].callback===e&&(!t||t===this._observers[n].scope))return this._deferUnregister(this._observers[n]),!0;return!1}notifyObservers(e,t=-1,n,r){if(!this._observers.length)return!0;const o=this._eventState;o.mask=t,o.target=n,o.currentTarget=r,o.skipNextObservers=!1,o.lastReturnValue=e;for(const n of this._observers)if(!n._willBeUnregistered&&(n.mask&t&&(n.scope?o.lastReturnValue=n.callback.apply(n.scope,[e,o]):o.lastReturnValue=n.callback(e,o),n.unregisterOnNextCall&&this._deferUnregister(n)),o.skipNextObservers))return!1;return!0}notifyObserversWithPromise(e,t=-1,n,r){let o=Promise.resolve(e);if(!this._observers.length)return o;const i=this._eventState;return i.mask=t,i.target=n,i.currentTarget=r,i.skipNextObservers=!1,this._observers.forEach((n=>{i.skipNextObservers||n._willBeUnregistered||n.mask&t&&(o=n.scope?o.then((t=>(i.lastReturnValue=t,n.callback.apply(n.scope,[e,i])))):o.then((t=>(i.lastReturnValue=t,n.callback(e,i)))),n.unregisterOnNextCall&&this._deferUnregister(n))})),o.then((()=>e))}notifyObserver(e,t,n=-1){const r=this._eventState;r.mask=n,r.skipNextObservers=!1,e.callback(t,r)}hasObservers(){return this._observers.length>0}clear(){this._observers=new Array,this._onObserverAdded=null}clone(){const e=new Observable;return e._observers=this._observers.slice(0),e}hasSpecificMask(e=-1){for(const t of this._observers)if(t.mask&e||t.mask===e)return!0;return!1}_deferUnregister(e){e.unregisterOnNextCall=!1,e._willBeUnregistered=!0,Promise.resolve().then.bind(Promise.resolve())((async()=>this._remove(e)))}_remove(e){if(!e)return!1;const t=this._observers.indexOf(e);return-1!==t&&(this._observers.splice(t,1),!0)}}function createSubscriber(e){return()=>{"undefined"!=typeof dcl&&dcl.subscribe(e)}}const onEnterSceneObservable=new Observable(createSubscriber("onEnterScene")),onEnterScene=onEnterSceneObservable,onLeaveSceneObservable=new Observable(createSubscriber("onLeaveScene")),onLeaveScene=onLeaveSceneObservable,onSceneReadyObservable=new Observable(createSubscriber("sceneStart")),onPlayerExpressionObservable=new Observable(createSubscriber("playerExpression")),onVideoEvent=new Observable(createSubscriber("videoEvent")),onProfileChanged=new Observable(createSubscriber("profileChanged")),onPlayerConnectedObservable=new Observable(createSubscriber("playerConnected")),onPlayerDisconnectedObservable=new Observable(createSubscriber("playerDisconnected")),onRealmChangedObservable=new Observable(createSubscriber("onRealmChanged")),onPlayerClickedObservable=new Observable(createSubscriber("playerClicked"));function _initEventObservables(){"undefined"!=typeof dcl&&dcl.onEvent((e=>{switch(e.type){case"onEnterScene":return void onEnterSceneObservable.notifyObservers(e.data);case"onLeaveScene":return void onLeaveSceneObservable.notifyObservers(e.data);case"sceneStart":return void onSceneReadyObservable.notifyObservers(e.data);case"playerExpression":return void onPlayerExpressionObservable.notifyObservers(e.data);case"videoEvent":{const t=e.data;return void onVideoEvent.notifyObservers(t)}case"profileChanged":return void onProfileChanged.notifyObservers(e.data);case"playerConnected":return void onPlayerConnectedObservable.notifyObservers(e.data);case"playerDisconnected":return void onPlayerDisconnectedObservable.notifyObservers(e.data);case"onRealmChanged":return void onRealmChangedObservable.notifyObservers(e.data);case"playerClicked":return void onPlayerClickedObservable.notifyObservers(e.data)}}))}function initializeDcl(e,t){if("undefined"!=typeof dcl){async function n(){const e=await dcl.callRpc("~system/EngineApi","crdtGetMessageFromRenderer",[]);if(e.data?.length&&t.onmessage)for(const n of e.data)t.onmessage(n)}return dcl.loadModule("~system/EngineApi",{}).catch(dcl.error),dcl.onUpdate((t=>{n().catch(dcl.error).finally((()=>e.update(t)))})),_initEventObservables(),{log:dcl.log,error:dcl.error}}return{log:voidFn,error:voidFn}}function voidFn(){}function getAndClean(e){const t=Array.from(e);return e.length=0,t}function taskSystem(e){const t=[];return e.addSystem((function(){getAndClean(t).forEach((e=>async function(e){try{return await e()}catch(e){dcl.error(`executeTask: FAILED. ${e.toString()}`,e)}}(e)))})),{executeTask(e){t.push(e)}}}exports.EventsSystem=void 0,function(e){let t;!function(e){e[e.Click=0]="Click",e[e.Down=1]="Down",e[e.Up=2]="Up"}(t||(t={}));const n=(e={})=>({button:3,hoverText:"Interact",maxDistance:100,...e}),r=new Map;function o(e){return r.get(e)||r.set(e,new Map).get(e)}function i(e,t,n){const{PointerHoverFeedback:r}=engine.baseComponents;if(n.hoverText){(r.getMutableOrNull(e)||r.create(e)).pointerEvents.push({eventType:t,eventInfo:{button:n.button,showFeedback:!0,hoverText:n.hoverText,maxDistance:n.maxDistance}})}}function a(e){return e===t.Up?0:1}function s(e,t){const n=o(e),r=n.get(t);r?.opts.hoverText&&function(e,t,n){const{PointerHoverFeedback:r}=engine.baseComponents,o=r.getMutableOrNull(e);o&&(o.pointerEvents=o.pointerEvents.filter((e=>!(e.eventInfo?.button===n&&e.eventType===t))))}(e,a(t),r.opts.button),n.delete(t)}e.removeOnClick=function(e){s(e,t.Click)},e.removeOnPointerDown=function(e){s(e,t.Down)},e.removeOnPointerUp=function(e){s(e,t.Up)},e.onClick=function(e,r,a){const c=n(a);s(e,t.Click),o(e).set(t.Click,{cb:r,opts:c}),i(e,1,c)},e.onPointerDown=function(e,r,a){const c=n(a);s(e,t.Down),o(e).set(t.Down,{cb:r,opts:c}),i(e,1,c)},e.onPointerUp=function(e,r,a){const c=n(a);s(e,t.Up),o(e).set(t.Up,{cb:r,opts:c}),i(e,0,c)},e.update=function(e){return function(){for(const[n,o]of r)if(engine.entityExists(n))for(const[r,{cb:i,opts:s}]of o){if(r===t.Click){const t=e.getClick(s.button,n);t&&i(t.up)}if(r===t.Down||r===t.Up){const t=e.getInputCommand(s.button,a(r),n);t&&i(t)}}else r.delete(n)}}}(exports.EventsSystem||(exports.EventsSystem={}));const rendererTransport=createRendererTransport(),engine$1=Engine({transports:[rendererTransport]}),dclInterface=initializeDcl(engine$1,rendererTransport),log=dclInterface.log,error=dclInterface.error,Input=createInput(engine$1),executeTask=taskSystem(engine$1).executeTask;function cyclicParentingChecker(e){const t=e.baseComponents.Transform;return()=>{for(const e of t.dirtyIterator()){let n=t.getOrNull(e);for(;n&&n.parent;){if(n.parent===e){dcl.error(`There is a cyclic parent with entity ${e}`);break}n=t.getOrNull(n.parent)}}}}engine$1.addSystem(exports.EventsSystem.update(Input));const Transform=engine$1.baseComponents.Transform,Animator=engine$1.baseComponents.Animator,AudioSource=engine$1.baseComponents.AudioSource,AudioStream=engine$1.baseComponents.AudioStream,AvatarAttach=engine$1.baseComponents.AvatarAttach,AvatarModifierArea=engine$1.baseComponents.AvatarModifierArea,AvatarShape=engine$1.baseComponents.AvatarShape,Billboard=engine$1.baseComponents.Billboard,CameraMode=engine$1.baseComponents.CameraMode,CameraModeArea=engine$1.baseComponents.CameraModeArea,GltfContainer=engine$1.baseComponents.GltfContainer,Material=engine$1.baseComponents.Material,MeshCollider=engine$1.baseComponents.MeshCollider,MeshRenderer=engine$1.baseComponents.MeshRenderer,NftShape=engine$1.baseComponents.NftShape,PointerEventsResult=engine$1.baseComponents.PointerEventsResult,PointerHoverFeedback=engine$1.baseComponents.PointerHoverFeedback,PointerLock=engine$1.baseComponents.PointerLock,Raycast=engine$1.baseComponents.Raycast,RaycastResult=engine$1.baseComponents.RaycastResult,TextShape=engine$1.baseComponents.TextShape,UiBackground=engine$1.baseComponents.UiBackground,UiText=engine$1.baseComponents.UiText,UiTransform=engine$1.baseComponents.UiTransform,VisibilityComponent=engine$1.baseComponents.VisibilityComponent;var Components;exports.Components=void 0,Components=exports.Components||(exports.Components={}),Components.Transform=engine$1.baseComponents.Transform,Components.Animator=engine$1.baseComponents.Animator,Components.AudioSource=engine$1.baseComponents.AudioSource,Components.AudioStream=engine$1.baseComponents.AudioStream,Components.AvatarAttach=engine$1.baseComponents.AvatarAttach,Components.AvatarModifierArea=engine$1.baseComponents.AvatarModifierArea,Components.AvatarShape=engine$1.baseComponents.AvatarShape,Components.Billboard=engine$1.baseComponents.Billboard,Components.CameraMode=engine$1.baseComponents.CameraMode,Components.CameraModeArea=engine$1.baseComponents.CameraModeArea,Components.GltfContainer=engine$1.baseComponents.GltfContainer,Components.Material=engine$1.baseComponents.Material,Components.MeshCollider=engine$1.baseComponents.MeshCollider,Components.MeshRenderer=engine$1.baseComponents.MeshRenderer,Components.NftShape=engine$1.baseComponents.NftShape,Components.PointerEventsResult=engine$1.baseComponents.PointerEventsResult,Components.PointerHoverFeedback=engine$1.baseComponents.PointerHoverFeedback,Components.PointerLock=engine$1.baseComponents.PointerLock,Components.Raycast=engine$1.baseComponents.Raycast,Components.RaycastResult=engine$1.baseComponents.RaycastResult,Components.TextShape=engine$1.baseComponents.TextShape,Components.UiBackground=engine$1.baseComponents.UiBackground,Components.UiText=engine$1.baseComponents.UiText,Components.UiTransform=engine$1.baseComponents.UiTransform,Components.VisibilityComponent=engine$1.baseComponents.VisibilityComponent;let communicationsController=null,communicationsControllerPromise=null,_messageObserver=null;function getMessageObserver(){return _messageObserver||(_messageObserver=new Observable),_messageObserver}function ensureCommunicationsController(){if(!communicationsControllerPromise){communicationsControllerPromise=dcl.loadModule("~system/CommunicationsController",{}),communicationsControllerPromise.then((e=>{communicationsController=e}));const e=getMessageObserver();dcl.subscribe("comms"),dcl.onEvent((t=>{"comms"===t.type&&e.notifyObservers(t.data)}))}return communicationsControllerPromise}class MessageBus{constructor(){this.messageQueue=[],this.connected=!1,this.flushing=!1,ensureCommunicationsController().then((()=>{this.connected=!0,this.flush()}))}on(e,t){return getMessageObserver().add((n=>{try{const r=JSON.parse(n.message);r.message===e&&t(r.payload,n.sender)}catch(n){dcl.error("Error parsing comms message "+(n.message||""),n)}}))}sendRaw(e){this.messageQueue.push(e),this.connected&&this.flush()}emit(e,t){const n=JSON.stringify({message:e,payload:t});this.sendRaw(n),getMessageObserver().notifyObservers({message:n,sender:"self"})}flush(){if(0===this.messageQueue.length)return;if(!this.connected)return;if(!communicationsController)return;if(this.flushing)return;const e=this.messageQueue.shift();this.flushing=!0,dcl.callRpc(communicationsController.rpcHandle,"send",[e]).then((e=>{this.flushing=!1,this.flush()}),(e=>{this.flushing=!1}))}}exports.Animator=Animator,exports.AudioSource=AudioSource,exports.AudioStream=AudioStream,exports.AvatarAttach=AvatarAttach,exports.AvatarModifierArea=AvatarModifierArea,exports.AvatarShape=AvatarShape,exports.Billboard=Billboard,exports.CameraMode=CameraMode,exports.CameraModeArea=CameraModeArea,exports.Color3=distExports$1.Color3,exports.Color4=distExports$1.Color4,exports.DEG2RAD=distExports$1.DEG2RAD,exports.Engine=Engine,exports.GltfContainer=GltfContainer,exports.Input=Input,exports.Material=Material,exports.MeshCollider=MeshCollider,exports.MeshRenderer=MeshRenderer,exports.MessageBus=MessageBus,exports.NftShape=NftShape,exports.Observable=Observable,exports.Observer=Observer,exports.ObserverEventState=ObserverEventState,exports.PointerEventsResult=PointerEventsResult,exports.PointerHoverFeedback=PointerHoverFeedback,exports.PointerLock=PointerLock,exports.Quaternion=distExports$1.Quaternion,exports.RAD2DEG=distExports$1.RAD2DEG,exports.Raycast=Raycast,exports.RaycastResult=RaycastResult,exports.Scalar=distExports$1.Scalar,exports.TextShape=TextShape,exports.Transform=Transform,exports.UiBackground=UiBackground,exports.UiText=UiText,exports.UiTransform=UiTransform,exports.Vector3=distExports$1.Vector3,exports.VisibilityComponent=VisibilityComponent,exports._initEventObservables=_initEventObservables,exports.cyclicParentingChecker=cyclicParentingChecker,exports.deepReadonly=deepReadonly,exports.engine=engine$1,exports.error=error,exports.executeTask=executeTask,exports.getMessageObserver=getMessageObserver,exports.log=log,exports.onEnterScene=onEnterScene,exports.onEnterSceneObservable=onEnterSceneObservable,exports.onLeaveScene=onLeaveScene,exports.onLeaveSceneObservable=onLeaveSceneObservable,exports.onPlayerClickedObservable=onPlayerClickedObservable,exports.onPlayerConnectedObservable=onPlayerConnectedObservable,exports.onPlayerDisconnectedObservable=onPlayerDisconnectedObservable,exports.onPlayerExpressionObservable=onPlayerExpressionObservable,exports.onProfileChanged=onProfileChanged,exports.onRealmChangedObservable=onRealmChangedObservable,exports.onSceneReadyObservable=onSceneReadyObservable,exports.onVideoEvent=onVideoEvent,Object.defineProperty(exports,"__esModule",{value:!0})})(this.self=this.self||{});
|