@realsee/five 6.0.0-alpha.91 → 6.0.0-alpha.92
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/docs/classes/five.Five.html +17 -17
- package/docs/classes/five.PBMMeshMaterial.html +1 -1
- package/five/index.js +6 -6
- package/five/index.mjs +8 -9
- package/gltf-loader/index.js +3 -3
- package/gltf-loader/index.mjs +3 -3
- package/line/index.js +3 -3
- package/line/index.mjs +3 -3
- package/package.json +1 -1
- package/plugins/index.js +2 -2
- package/plugins/index.mjs +2 -2
- package/react/index.js +2 -2
- package/react/index.mjs +2 -2
- package/sticker/index.js +3 -3
- package/sticker/index.mjs +3 -3
- package/umd/five-gltf-loader.js +3 -3
- package/umd/five-line.js +3 -3
- package/umd/five-plugins.js +2 -2
- package/umd/five-react.js +2 -2
- package/umd/five-sticker.js +3 -3
- package/umd/five-vfx.js +2 -2
- package/umd/five-vue.js +2 -2
- package/umd/five.js +6 -6
- package/vfx/index.js +2 -2
- package/vfx/index.mjs +2 -2
- package/vue/index.js +2 -2
- package/vue/index.mjs +2 -2
package/five/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @license
|
|
3
3
|
* @realsee/five
|
|
4
|
-
* Generated:
|
|
5
|
-
* Version: 6.0.0-alpha.
|
|
4
|
+
* Generated: 5/8/2024
|
|
5
|
+
* Version: 6.0.0-alpha.92
|
|
6
6
|
* Terms:
|
|
7
7
|
* Realsee SDK License Agreement
|
|
8
8
|
* Update: July 28, 2021
|
|
@@ -414,7 +414,7 @@ varying vec2 vUv;
|
|
|
414
414
|
void main() {
|
|
415
415
|
gl_FragColor = texture2D(map, vUv);
|
|
416
416
|
}
|
|
417
|
-
`,su=[];function pc(){var n=su.pop();return n||new d.ShaderMaterial({uniforms:{map:{value:null},flipY:{value:0}},vertexShader:fc,fragmentShader:hc,depthTest:!1,depthWrite:!1,stencilWrite:!1,blending:d.NoBlending,lights:!1,toneMapped:!1,fog:!1})}function vc(n){n.uniforms.map.value=null,su.push(n)}function Ac(n,t,e){var r=new d.Scene;r.matrixAutoUpdate=!1;var i=new d.Group;i.scale.set(1,1,-1),r.add(i);for(var a=[],o=0,s=n;o<s.length;o++){var l=s[o],u=pc();a.push(u),u.uniforms.map.value=l.texture,u.uniforms.flipY.value=l.flipY?1:0;var c=new d.Group,f=new d.Mesh(dc,u);f.position.set(l.position.x+l.size.x/2-.5,1-(l.position.y+l.size.y/2)-.5,-.5),f.scale.set(l.size.x,l.size.y,1),c.quaternion.copy(cc[l.face]),c.add(f),i.add(c)}var A=e.autoClear;e.autoClear=!1;var p=new d.CubeCamera(.1,2,t);p.matrixAutoUpdate=!1,p.update(e,r),e.autoClear=A;for(var y=0,v=a;y<v.length;y++){var u=v[y];vc(u)}}var mc=function(){return!1}();function pi(){var n=Object.assign(document.createElementNS("http://www.w3.org/1999/xhtml","img"),{crossOrigin:"",close:function(){n.onerror=n.onload=n.close=D,n.decoding="async";var t=n.src;n.removeAttribute("src"),/^blob\:/.test(t)&&URL.revokeObjectURL(t)}});return n}function pa(n){return new Promise(function(t,e){var r=pi();r.onload=function(){/^blob\:/.test(r.src)&&URL.revokeObjectURL(r.src),r.onload=r.onerror=D,setTimeout(function(){t(r)},10)},r.onerror=function(){var i=r.src;r.onload=r.onerror=D,r.close(),e(new Error("image load error: ".concat(i)))},r.src=URL.createObjectURL(n)})}var Eo=[];function gc(n,t){var e=Eo.shift();if(e)return e.width=n,e.height=t,e;var r=Object.assign(document.createElementNS("http://www.w3.org/1999/xhtml","canvas"),{close:function(){r.close=D,Eo.push(r)}});return r}function xo(n,t){if(t&&(n.width>t.width||n.height>t.height)){var e=gc(Math.min(n.width,t.width),Math.min(n.height,t.height)),r=e.getContext("2d");r.clearRect(0,0,e.width,e.height),r.drawImage(n,0,0,e.width,e.height),n.close();var i=new d.Texture(e);i.needsUpdate=!0,i.flipY=!0;var a=i.dispose;return i.dispose=function(){e.close(),a.call(i),i.dispose=a},i}else{var o=new d.Texture(n);o.needsUpdate=!0,typeof ImageBitmap!="undefined"&&n instanceof ImageBitmap?o.flipY=!1:o.flipY=!0;var s=o.dispose;return o.dispose=function(){n.close(),s.call(o),o.dispose=s},o}}function yc(n){var t=new d.CubeTexture(n);t.needsUpdate=!0,t.flipY=!1;var e=t.dispose;return t.dispose=function(){for(var r=0,i=n;r<i.length;r++){var a=i[r];a.close()}e.call(t),t.dispose=e},t}var qr=["right","left","up","down","front","back"],bc=3,ke=function(){function n(t,e,r,i,a){this.tileTree=e,this.tileSources=r,this.options=i,this.renderer=a,this.name="",this.needsRender=!1,this.disposed=!1,this.loadedCubeNodes=new Set,this.loadingCubeNodes=new Set,this.baseCubeTexture=null,this._cubeRenderTarget=null,this.textures=[],this.baseCubeTexture=t}return Object.defineProperty(n.prototype,"cubeRenderTarget",{get:function(){return this._cubeRenderTarget},set:function(t){var e,r,i,a,o,s;if(t===null)throw new Error("cannot set cubeRenderTarget to null.");t.width!==this.options.textureSize&&t.setSize(this.options.textureSize,this.options.textureSize),t.texture.format=(e=this.options.format)!==null&&e!==void 0?e:d.RGBAFormat,t.texture.minFilter=(r=this.options.minFilter)!==null&&r!==void 0?r:d.LinearFilter,t.texture.magFilter=(i=this.options.magFilter)!==null&&i!==void 0?i:d.LinearFilter,t.texture.wrapS=(a=this.options.wrapS)!==null&&a!==void 0?a:d.ClampToEdgeWrapping,t.texture.wrapT=(o=this.options.wrapT)!==null&&o!==void 0?o:d.ClampToEdgeWrapping,t.texture.generateMipmaps=(s=this.options.generateMipmaps)!==null&&s!==void 0?s:!0,this.baseCubeTexture&&(ha(this.baseCubeTexture,t,this.renderer),this.baseCubeTexture.dispose(),this.baseCubeTexture=null),this._cubeRenderTarget&&ha(this._cubeRenderTarget.texture,t,this.renderer),this._cubeRenderTarget=t},enumerable:!1,configurable:!0}),n.prototype.requestTile=function(t){var e=this,r,i,a,o,s,l,u=this.tileSources.filter(function(v){return v.level===t.level})[0];if(!u){this.loadedCubeNodes.add(t);return}var c=u.size,f=Math.pow(2,t.level)*t.position.y,A=Math.pow(2,t.level)*t.position.x,p="".concat(((a=(i=(r=this.options.imageURL)===null||r===void 0?void 0:r.options)===null||i===void 0?void 0:i.key)!==null&&a!==void 0?a:"pano.0").replace(/^pano/,"pano_tile"),".").concat(t.face,".").concat(t.level,".").concat(f,".").concat(A),y=F(F({},(s=(o=this.options.imageURL)===null||o===void 0?void 0:o.options)!==null&&s!==void 0?s:{key:"unknown"}),{key:p,size:u.scale>=1?void 0:c*t.size*u.scale,quality:void 0,cut:[c*t.position.x,c*t.position.y,c*t.size,c*t.size]});this.loadingCubeNodes.add(t),this.options.textureLoader.loadTexture(u[t.face],{imageURL:{transform:(l=this.options.imageURL)===null||l===void 0?void 0:l.transform,options:F({},y)},format:d.RGBAFormat,timeout:this.options.timeout,magFilter:this.options.magFilter,minFilter:this.options.minFilter,fetcher:this.options.fetcher}).then(function(v){if(e.disposed){v.body.dispose();return}e.textures.push({face:t.face,level:t.level,position:t.position,size:new d.Vector2(t.size,t.size),texture:v.body,flipY:!v.body.flipY}),e.loadedCubeNodes.add(t)}).catch(D).then(function(){e.disposed||e.loadingCubeNodes.delete(t)})},n.prototype.update=function(t,e){var r=this;if(!this.disposed){var i=[];Ua(this.tileTree,function(A){if(r.loadingCubeNodes.has(A)||A.level>e||!t.intersectsBox(A.box))return!1;if(!r.loadedCubeNodes.has(A))return i.push(A),!1});for(var a=0,o=i;a<o.length;a++){var s=o[a];this.requestTile(s)}if(this.cubeRenderTarget&&this.textures.length){var l=this.textures.splice(0,bc);Ac(l,this.cubeRenderTarget,this.renderer),this.needsRender=!0;for(var u=0,c=l;u<c.length;u++){var f=c[u];f.texture.dispose()}}}},Object.defineProperty(n.prototype,"tilePending",{get:function(){return this.loadingCubeNodes.size},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"texture",{get:function(){if(!this._cubeRenderTarget)throw new Error("cubeRenderTarget never set.");return this._cubeRenderTarget.texture},enumerable:!1,configurable:!0}),n.prototype.dispose=function(){if(!this.disposed){this.disposed=!0,this.baseCubeTexture&&(this.baseCubeTexture.dispose(),this.baseCubeTexture=null),this.loadingCubeNodes.clear(),this.loadedCubeNodes.clear();for(var t=0,e=this.textures;t<e.length;t++){var r=e[t];r.texture.dispose()}this.textures.length=0}},n}(),Gn=function(){function n(){}return n.prototype.loadTexture=function(t,e,r,i,a,o){var s,l,u,c,f,A;r===void 0&&(r=D),i===void 0&&(i=D),a===void 0&&(a=D);var p={};typeof e.flipY!="undefined"&&(p.flipY=e.flipY),typeof e.format!="undefined"&&(p.format=e.format),typeof e.generateMipmaps!="undefined"&&(p.generateMipmaps=e.generateMipmaps),p.minFilter=(s=e.minFilter)!==null&&s!==void 0?s:d.LinearFilter,p.magFilter=(l=e.magFilter)!==null&&l!==void 0?l:d.LinearFilter;var y=(c=(u=e.imageURL)===null||u===void 0?void 0:u.options)!==null&&c!==void 0?c:{key:"unknown"};t=hi(t,(f=e.imageURL)===null||f===void 0?void 0:f.transform,y);var v=bo(t),m=(A=e.viaAjax)!==null&&A!==void 0?A:mc,h=yo(t),g=/^https?:/.test(v);if(h?m=!0:g||(m=!1),m){var b=null,w="blob";return e.fetcher.ajax(t,{timeout:e.timeout,responseType:w},void 0,void 0,a).then(function(x){return pa(x.body)}).then(function(x){return xo(x,e.maxSize)}).then(function(x){return Object.assign(x,p),x}).then(function(x){var M={meta:b,body:x};return r(M),M}).catch(function(x){return i(x),Promise.reject(x)})}else{var E=null,C;return Promise.resolve().then(function(){return pi()}).then(function(x){return C=x,e.fetcher.loadImage(t,{timeout:e.timeout},void 0,void 0,a,x)}).then(function(x){return E=x.meta,xo(x.body,e.maxSize)}).then(function(x){return Object.assign(x,p),x}).then(function(x){var M={meta:E,body:x};return r(M),M}).catch(function(x){return C&&C.close(),i(x),Promise.reject(x)})}},n.prototype.loadCubeTexture=function(t,e,r,i,a,o){var s,l,u,c,f,A;r===void 0&&(r=D),i===void 0&&(i=D),a===void 0&&(a=D);var p={};typeof e.format!="undefined"&&(p.format=e.format),typeof e.generateMipmaps!="undefined"&&(p.generateMipmaps=e.generateMipmaps),p.minFilter=(s=e.minFilter)!==null&&s!==void 0?s:d.LinearFilter,p.magFilter=(l=e.magFilter)!==null&&l!==void 0?l:d.LinearFilter;for(var y=[t[qr[0]],t[qr[1]],t[qr[2]],t[qr[3]],t[qr[4]],t[qr[5]]],v=[],m=[0,0,0,0,0,0],h=[],g=function(w){var E=(c=(u=e.imageURL)===null||u===void 0?void 0:u.options)!==null&&c!==void 0?c:{key:"unknown"},C=hi(y[w],(f=e.imageURL)===null||f===void 0?void 0:f.transform,F(F({},E),{key:E.key+"."+qr[w]})),x=bo(C),M=function(O){m[w]=O,a(m.reduce(function(Q,N){return Q+N},0)/6)},S=(A=e.viaAjax)!==null&&A!==void 0?A:!1,P=/^https?:$/.test(x),I=yo(C);if(I?S=!0:P||(S=!1),S){var B="blob",k=e.fetcher.ajax(C,{timeout:e.timeout,responseType:B},void 0,void 0,M).then(function(O){return h[w]=O.meta,pa(O.body)});v.push(k)}else{var L,k=Promise.resolve().then(function(){return pi()}).then(function(Q){return L=Q,e.fetcher.loadImage(C,{timeout:e.timeout},void 0,void 0,M,Q)}).then(function(Q){return h[w]=Q.meta,Q.body}).catch(function(Q){return L&&L.close(),Promise.reject(Q)});v.push(k)}},b=0;b<6;b++)g(b);return Promise.all(v).then(function(w){return yc(w)}).then(function(w){return Object.assign(w,F({encoding:d.sRGBEncoding},p)),w}).then(function(w){var E={body:w,meta:h};return r(E),E}).catch(function(w){for(var E=0,C=v;E<C.length;E++){var x=C[E];x.then(function(M){return M.close()}).catch(D)}return i(w),Promise.reject(w)})},n.prototype.loadTiledCubeTexture=function(t,e,r,i,a,o,s){var l=this;return i===void 0&&(i=D),a===void 0&&(a=D),o===void 0&&(o=D),new Promise(function(u,c){var f,A;l.loadCubeTexture(t,{imageURL:{transform:(f=r.imageURL)===null||f===void 0?void 0:f.transform,options:(A=r.imageURL)===null||A===void 0?void 0:A.options},format:d.RGBAFormat,viaAjax:r.viaAjax,timeout:r.timeout,fetcher:r.fetcher,magFilter:r.magFilter,minFilter:r.minFilter,generateMipmaps:r.generateMipmaps},function(p){var y,v=p.meta,m=p.body,h=(y=r.tileMaxLevel)!==null&&y!==void 0?y:2,g=Math.max(1024*h,512),b=da(h),w=new ke(m,b,e,{textureSize:g,textureLoader:l,imageURL:r.imageURL,magFilter:r.magFilter,minFilter:r.minFilter,generateMipmaps:r.generateMipmaps,timeout:r.timeout,fetcher:r.fetcher},s),E={meta:v,body:w};i(E),u(E)},function(p){a(p),c(p)},o,s).catch(D)})},n}();const wc=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var r=113,i=126,a=0,o="";return t[a].split(o).map(function(s){return s.charCodeAt(a)>i?s:String.fromCharCode((s.charCodeAt(a)+r)%i)}).join(o)}("0vs-qrsv{rq5b`RlcR_aRelSY\\\\_6--nvor-sy|n-sy||H--n\bv{t-sy|n-Sy||H0r{qvsnvor-sy|n-v_||sZnxHn\bv{t-sy|n-V_||sZnxHn\bv{t-rp@-[|znyHn\bv{t-rp@-cvr]|vv|{Hn\bv{t-rpA-|yq]|vv|{Hn\bv{t-sy|n-Y|tQr}uHn\bv{t-znA-cvrZnv\x07H0v{pyqr-Ip|zz|{K0v{pyqr-Il}nlrr\x07K0v{pyqr-I?l}nlrr\x07K0v{pyqr-Ip|y|l}nlrr\x07K0v{pyqr-Iunq|zn}l}nlrr\x07K|vq-znv{56-\n--0v{pyqr-Ilrr\x07K--0v{pyqr-I?lrr\x07K--0v{pyqr-Ip|y|lrr\x07K--0v{pyqr-Iortv{{|znylrr\x07K--0v{pyqr-Iqrsny{|znylrr\x07K--rpA-n{s|zrq-J-rpA5}|vv|{9->;=6H--rpA-z]|vv|{-J-z|qrycvrZnv\x07-7-n{s|zrqH--[|zny-J-{|znyv r5n{s|zrq[|zny6H--0vs-qrsv{rq5b`RlcR_aRelSY\\\\_6----Sy||-J-sy||H--0r{qvs--cvr]|vv|{-J-:z]|vv|{;\x07\b H--|yq]|vv|{-J-z|qryZnv\x07-7-n{s|zrqH--tyl]|vv|{-J-}|wrpv|{Znv\x07-7-z|qrycvrZnv\x07-7-n{s|zrqH--0v{pyqr-Iunq|zn}lrr\x07K--Y|tQr}u-J-y|t?5:z]|vv|{; 6H--cvrZnv\x07-J-vrZnv\x07H--V_||sZnx-J-v_||sZnxH\f"),Ec=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var r=113,i=126,a=0,o="";return t[a].split(o).map(function(s){return s.charCodeAt(a)>i?s:String.fromCharCode((s.charCodeAt(a)+r)%i)}).join(o)}("0qrsv{r-OYNPXlP\\Y\\_-rpA5=;=EC9-=;>=C9-=;>AF9->;=60qrsv{r-aNb-C;?E@>EB?{vs|z-nz}yrPor-}n{|=lzn}H{vs|z-znA-}n{|=lznv\x07H0vs-qrsv{rq5b`RlYbZV[N[PR6--{vs|z-nz}yrPor-}n{|=lyzv{n{prZn}H0r{qvs{vs|z-nz}yrPor-}n{|>lzn}H{vs|z-znA-}n{|>lznv\x07H0vs-qrsv{rq5b`RlYbZV[N[PR6--{vs|z-nz}yrPor-}n{|>lyzv{n{prZn}H0r{qvs{vs|z-rp@-qvssrH{vs|z-rp@-rzvvrH{vs|z-rp@-}rpynH{vs|z-sy|n-uv{v{rH{vs|z-sy|n-r\x07}|rH{vs|z-sy|n-|}npv\bH{vs|z-sy|n-z|qryNy}unH{vs|z-sy|n-}|trH{vs|z-sy|n-u|{Sy||V{qr\x07H{vs|z-rp?-r|yv|{H{vs|z-sy|n-}v\x07ry_nv|Hn\bv{t-sy|n-V_||sZnxH0vs-qrsv{rq5b`RlP\\[`aN[alP\\Y\\_6--{vs|z-rp@-p|{n{P|y|H0r{qvs0vs-qrsv{rq5b`Rl]N[\\lcVQR\\6--{vs|z-rp?-}n{|cvqr|lv rH--{vs|z-znA-}n{|cvqr|lznv\x07H--{vs|z-sy|n-}n{|cvqr|lny}unH--{vs|z-nz}yr?Q-}n{|cvqr|lzn}H0r{qvs0vs-qrsv{rq5b`RlcR_aRelSY\\\\_6--n\bv{t-sy|n-Sy||H0ryr--{vs|z-sy|n-sy||H0r{qvsn\bv{t-rpA-|yq]|vv|{Hn\bv{t-sy|n-Y|tQr}uHn\bv{t-znA-cvrZnv\x07Hp-Pyv}}r-\n--znA-znv\x07V{rrH--sy|n-sy||V{qr\x07H\fH0vs-[bZlPYV]]R_`-K-=--{vs|z-Pyv}}r-pyv}}rh[bZlPYV]]R_`jH0r{qvs0v{pyqr-Ip|zz|{K0v{pyqr-I}npxv{tK0v{pyqr-Ip|y|l}nlsntzr{K0v{pyqr-Il}nlsntzr{K0v{pyqr-I?l}nlsntzr{K0v{pyqr-Izn}l}nlsntzr{K0v{pyqr-Iny}unzn}l}nlsntzr{K0v{pyqr-In|zn}l}nlsntzr{K0v{pyqr-Iyvtuzn}l}nlsntzr{K0v{pyqr-Irzvvrzn}l}nlsntzr{K0v{pyqr-Ir{zn}l}nlsntzr{K0v{pyqr-Itnqvr{zn}l}nlsntzr{K0v{pyqr-Is|tl}nlsntzr{K0v{pyqr-IoqsK0v{pyqr-Iyvtul}nlortv{K0v{pyqr-Iyvtul}u|{tl}nlsntzr{K0v{pyqr-Iunq|zn}l}nlsntzr{Krp?-|P||q5rp@-rp|6-\n--sy|n--J-yr{tu5rp|6H--sy|n-urn-J-np|5rp|;\b-<-6H--sy|n-}uv-J-nn{5rp|;\x079-rp|; 6H--r{-rp?5=;B-8-}uv-<-aNb9-urn-<-]V6H\f|vq-znv{56-\n--sy|n-ory|{tv{tSY||-J-=;=H--0vs-qrsv{rq5b`RlcR_aRelSY\\\\_6----ory|{tv{tSY||-J-Sy||H--0ryr----ory|{tv{tSY||-J-sy||H--0r{qvs--zn@-pnzrn_|nv|{Znv\x07-J-zn@5cvrZnv\x07h=jh=j9-cvrZnv\x07h>jh=j9-cvrZnv\x07h?jh=j9-cvrZnv\x07h=jh>j9-cvrZnv\x07h>jh>j9-cvrZnv\x07h?jh>j9-cvrZnv\x07h=jh?j9-cvrZnv\x07h>jh?j9-cvrZnv\x07h?jh?j6H--rp@-pnzrnQvrpv|{-J-{|znyv r5pnzrn_|nv|{Znv\x07-7-rp@5=;=9-=;=9->;=66H--vs5pnzrnQvrpv|{;\b-K-=;E-33-no5V_||sZnx-:->;=6-I-=;>6-\n----qvpnqH--\f--<<前置裁切计算--0vs-[bZlPYV]]R_`-K-=----o||y-pyv}}rqH----rpA-pyv}}r]|vv|{H----0}ntzn-{|yyly||}ln----s|-5-v{-v-J-=H-v-I-[bZlPYV]]R_`H-v-88-6-\n------pyv}}r]|vv|{-J-pyv}}rh-v-j;znv\x07V{rr-7-|yq]|vv|{H------pyv}}rq-J-5pyv}}rh-v-j;sy||V{qr\x07-I-=;=-\v\v-no5ory|{tv{tSY||-:-pyv}}rh-v-j;sy||V{qr\x076-I->;=6H------pyv}}rq-J-pyv}}rq-33-pyv}}r]|vv|{;\x07-K-:=;B-33-pyv}}r]|vv|{;\x07-I-=;BH------pyv}}rq-J-pyv}}rq-33-pyv}}r]|vv|{;\b-K-:=;B-33-pyv}}r]|vv|{;\b-I-=;BH------pyv}}rq-J-pyv}}rq-33-pyv}}r]|vv|{; -K-:=;B-33-pyv}}r]|vv|{; -I-=;BH------vs-5pyv}}rq6-\n--------qvpnqH------\f----\f----0}ntzn-{|yyly||}lr{q--0r{qvs--0vs-qrsv{rq5b`RlP\\[`aN[alP\\Y\\_6----tylSntP|y|-J-rpA5p|{n{P|y|;9-p|{n{P|y|;t9-p|{n{P|y|;o9->;=6H----r{H--0r{qvs--<<楼层选择计算--sy|n-sy||\\}npv\b-J->;=H--vs-5u|{Sy||V{qr\x07-KJ-=;=-33-no5ory|{tv{tSY||-:-u|{Sy||V{qr\x076-KJ->;=6-\n----sy||\\}npv\b-J-=;>H--\f--rpA-qvssrP|y|-J-rpA5qvssr;to9-|}npv\b6H--_rsyrprqYvtu-rsyrprqYvtu-J-_rsyrprqYvtu5rp@5=;=69-rp@5=;=69-rp@5=;=69-rp@5=;=66H--rp@-|nyRzvvr_nqvn{pr-J-rzvvrH--0v{pyqr-Izn}lsntzr{K--0v{pyqr-Ip|y|lsntzr{K--0v{pyqr-Iny}unzn}lsntzr{K--0v{pyqr-Iny}unrlsntzr{K--0v{pyqr-I}rpynzn}lsntzr{K--0v{pyqr-I{|znylsntzr{lortv{K--0v{pyqr-I{|znylsntzr{lzn}K--0v{pyqr-Irzvvrzn}lsntzr{K--0v{pyqr-Iyvtul}u|{tlsntzr{K--0v{pyqr-Iyvtulsntzr{lortv{K--<<-调整曝光值--vnqvn{pr-J-vnqvn{pr-7-r\x07}|rH--0v{pyqr-Iyvtulsntzr{lzn}K--0v{pyqr-Iyvtulsntzr{lr{qK--0v{pyqr-In|zn}lsntzr{K--<<-减少方向光对模型的影响--rp@-|t|v{tYvtu-J-5rsyrprqYvtu;qvrpQvssr-7-=;?6-8----rsyrprqYvtu;v{qvrpQvssr-8----rsyrprqYvtu;v{qvrp`}rpyn-8----|nyRzvvr_nqvn{prH--<<-修复黑色面片的问题--vs-5|t|v{tYvtu;-K-=;=-\v\v-|t|v{tYvtu;t-K-=;=-\v\v-|t|v{tYvtu;o-K-=;=6-\n----tylSntP|y|-J-rpA5|t|v{tYvtu9-qvssrP|y|;n6H--\f-ryr-\n----tylSntP|y|-J-rpA5OYNPXlP\\Y\\_;\x07\b 9-qvssrP|y|;n6H--\f--rp@-}n{|=a|crr\x07-J-5|yq]|vv|{;\x07\b -:-}n{|=lznv\x07h@j;\x07\b 6-7-zn@5}n{|=lznv\x076H--rp@-}n{|>a|crr\x07-J-5|yq]|vv|{;\x07\b -:-}n{|>lznv\x07h@j;\x07\b 6-7-zn@5}n{|>lznv\x076H--rpA-}n{|P|y|H--rpA-}n{|=P|y|-J-r\x07rPor5}n{|=lzn}9-}n{|=a|crr\x076H--rpA-}n{|>P|y|-J-r\x07rPor5}n{|>lzn}9-}n{|>a|crr\x076H--0vs-qrsv{rq5b`RlYbZV[N[PR6----}n{|=P|y|;n-J->;=-:-r\x07rPor5}n{|=lyzv{n{prZn}9-}n{|=a|crr\x076;H----}n{|>P|y|;n-J->;=-:-r\x07rPor5}n{|>lyzv{n{prZn}9-}n{|>a|crr\x076;H--0r{qvs--0vs-qrsv{rq5b`RlOYNPXla_N[`VaV\\[6----sy|n-oynpx]|tr-J-np|5:?;=-7-}|tr-8->;=6H----}n{|P|y|-J-zv\x075}n{|=P|y|9-OYNPXlP\\Y\\_9-zv{5>;=9-oynpx]|tr66H----}n{|P|y|-J-zv\x075}n{|P|y|9-}n{|>P|y|9-zn\x075=;=9-oynpx]|tr-:-?;=66H--0ryvs-qrsv{rq5b`Rl`]_RNQla_N[`VaV\\[6----rp?-prr{Pr{rP||q-J-r|yv|{-7-}v\x07ry_nv|-<-?;=H----sy|n-n{vv|{_nqv-J-qvn{pr5rp?5=;=9-=;=69-prr{Pr{rP||q6-7->;?H----sy|n-n{vv|{]|tr-J--qvn{pr5tylSntP||q;\x07\b9-prr{Pr{rP||q6-<-n{vv|{_nqvH----}n{|P|y|-J-zv\x075}n{|=P|y|9-}n{|>P|y|9-z||ur}5=;=9-=;?9-}|tr-:-n{vv|{]|tr66H--0ryr----}n{|P|y|-J-zv\x075}n{|=P|y|9-}n{|>P|y|9-}|tr6H--0r{qvs--0vs-qrsv{rq5b`Rl]N[\\lcVQR\\6----rp@-pnzrna|crr\x07-J-|yq]|vv|{;\x07\b -:-pnzrn]|vv|{H----rpA-zn}P||q-J-rpA5pnzrna|crr\x079->;=6-7-}n{|cvqr|lznv\x07H----rp?--J-rp?5------=;B-8-zn}P||q;\x07-<-zn}P||q; -<-}n{|cvqr|lv r;\x079------=;B-:-zn}P||q;\b-<-zn}P||q; -<-}n{|cvqr|lv r;\b----6H----rpA-vqr|P|y|-J-r\x07r?Q5}n{|cvqr|lzn}9-6H----sy|n-znpu-J-5>;=-:-r}5=;=9-zn}P||q; 66-7-5>;=-:-r}5=;B9-no5;\x07-:-=;B666-7-5>;=-:-r}5=;B9-no5;\b-:-=;B666H----sy|n-ny}un-J-pynz}5=;=9->;=9-B;=-7-5>;=-:-pynz}5qvn{pr59-rp?5=;B9-=;B66-<-=;BB-9-=;=9->;=666H----}n{|P|y|-J-zv\x075}n{|P|y|9-vqr|P|y|9-znpu-7-ny}un-7-}n{|cvqr|lny}un6H--0r{qvs--0vs-qrsv{rq5b`Rl]N[\\l\\]NPVaf6----tylSntP|y|-J-zv\x075}n{|P|y|9-tylSntP|y|9-z|qryNy}un6H----tylSntP|y|;n-J-|}npv\bH--0ryr----tylSntP|y|-J-rpA5tylSntP|y|;to9-|}npv\b-7-sy||\\}npv\b6H----tylSntP|y|-J-zv\x075}n{|P|y|9-tylSntP|y|9-z|qryNy}un6H--0r{qvs--0vs-qrsv{rq5b`RlRQY6----tylSntP|y|;n-J-Y|tQr}uH--0r{qvs\f");function Ft(n,t){var e=Math.abs(Math.cos(n.latitude)),r=-Math.sin(n.longitude)*e,i=-Math.sin(n.latitude),a=-Math.cos(n.longitude)*e;return t?t.set(r,i,a):new d.Vector3(r,i,a)}var xc=1,Cc=.1,Mc=2e3,Zn=Math.PI*2,Co=Math.PI/2;function Mo(n){return n>0&&n<=Zn?n:(n%Zn+Zn)%Zn}function Sc(n,t,e,r){e=Math.pow(e,4);for(var i=0;i<16;i++)r.elements[i]=n.elements[i]+(t.elements[i]-n.elements[i])*e;return r}var Si=function(n){de(t,n);function t(e,r,i,a,o,s,l){r===void 0&&(r=xc),i===void 0&&(i=Cc),a===void 0&&(a=Mc),o===void 0&&(o=new d.Vector2),s===void 0&&(s=new d.Vector2(512,512)),l===void 0&&(l=1);var u=n.call(this)||this;u.fov=e,u.aspect=r,u.near=i,u.far=a,u.perspToOrtho=o,u.resolution=s,u.pixelRatio=l,u.needsRender=!0,u.refineModel=!0,u.pose={longitude:0,latitude:0,fov:e,distance:0,offset:new d.Vector3},u.computePose(),u.perspectiveCamera=new d.PerspectiveCamera(u.fov,u.aspect,.001,u.far);var c=Math.max(u.orthoDistance,.01)*Math.tan(.5*u.fov/180*Math.PI),f=-.5*u.aspect*2*c;return u.orthographicCamera=new d.OrthographicCamera(f,-f,c,-c,.001,u.far),u.computeProjectionMatrix(),u.lastValues={position:u.position.clone(),quaternion:u.quaternion.clone(),scale:u.scale.clone(),fov:u.fov,aspect:u.aspect,near:u.near,far:u.far,perspToOrtho:u.perspToOrtho.clone()},u.type=u.perspToOrtho.x<1?"PerspectiveCamera":"OrthographicCamera",u}return Object.defineProperty(t.prototype,"orthoDistance",{get:function(){return this.pose.distance>1?this.pose.distance:1+(this.pose.distance-1)*this.perspToOrtho.x},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"zoom",{get:function(){return this.type==="OrthographicCamera"?this.orthographicCamera.zoom:this.type==="PerspectiveCamera"?this.perspectiveCamera.zoom:1},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"top",{get:function(){return this.type==="OrthographicCamera"?this.orthographicCamera.top:0},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"bottom",{get:function(){return this.type==="OrthographicCamera"?this.orthographicCamera.bottom:0},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"left",{get:function(){return this.type==="OrthographicCamera"?this.orthographicCamera.left:0},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"right",{get:function(){return this.type==="OrthographicCamera"?this.orthographicCamera.right:0},enumerable:!1,configurable:!0}),t.prototype.getDirection=function(e){return Ft(this.pose,e)},t.prototype.computePose=function(e){e===void 0&&(e=0),this.updateMatrix();var r=this.matrix.elements,i=new d.Vector3().set(-r[8],-r[9],-r[10]).normalize();this.pose.longitude=Mo(-Math.atan2(i.x,-i.z)),this.pose.latitude=-Math.asin(i.y/1),this.pose.fov=this.fov,this.pose.distance=e;var a=new d.Vector3().add(this.position).add(i.clone().setLength(this.pose.distance));return this.pose.offset.copy(a),this},t.prototype.setFromPose=function(e){var r,i,a,o,s,l=Mo((r=e.longitude)!==null&&r!==void 0?r:this.pose.longitude),u=Math.max(-Co+1e-4,Math.min(Co-1e-4,(i=e.latitude)!==null&&i!==void 0?i:this.pose.latitude)),c=(a=e.fov)!==null&&a!==void 0?a:this.pose.fov,f=(o=e.distance)!==null&&o!==void 0?o:this.pose.distance,A=(s=e.offset)!==null&&s!==void 0?s:this.pose.offset,p=Ft({longitude:l,latitude:u}).normalize();return this.position.set(0,0,0),this.lookAt(p),this.position.add(A).sub(p.clone().setLength(f)),this.fov!==c&&(this.fov=c,this.updateProjectionMatrix()),this.updateMatrixWorld(),this.pose.longitude=l,this.pose.latitude=u,this.pose.fov=c,this.pose.distance=f,this.pose.offset.copy(A),this.needsRender=!0,this},t.prototype.copyPose=function(){return{longitude:this.pose.longitude,latitude:this.pose.latitude,fov:this.pose.fov,distance:this.pose.distance,offset:this.pose.offset.clone()}},t.prototype.computeProjectionMatrix=function(){Sc(this.orthographicCamera.projectionMatrix,this.perspectiveCamera.projectionMatrix,1-this.perspToOrtho.x,this.projectionMatrix),this.projectionMatrixInverse.getInverse(this.projectionMatrix),this.needsRender=!0},t.prototype.setViewOffset=function(e,r,i,a,o,s){this.perspectiveCamera.setViewOffset(e,r,i,a,o,s),this.orthographicCamera.setViewOffset(e,r,i,a,o,s),this.computeProjectionMatrix()},t.prototype.clearViewOffset=function(){this.perspectiveCamera.clearViewOffset(),this.orthographicCamera.clearViewOffset(),this.computeProjectionMatrix()},t.prototype.updateProjectionMatrix=function(){this.perspectiveCamera.updateProjectionMatrix(),this.orthographicCamera.updateProjectionMatrix(),this.computeProjectionMatrix()},Object.defineProperty(t.prototype,"perspectiveProjectionMatrix",{get:function(){return this.perspectiveCamera.projectionMatrix},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"perspectiveProjectionMatrixInverse",{get:function(){return this.perspectiveCamera.projectionMatrixInverse},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"orthographicProjectionMatrix",{get:function(){return this.orthographicCamera.projectionMatrix},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"orthographicProjectionMatrixInverse",{get:function(){return this.orthographicCamera.projectionMatrixInverse},enumerable:!1,configurable:!0}),t.prototype.updateTime=function(e,r){var i=!1;if((this.lastValues.fov!==this.fov||this.lastValues.near!==this.near||this.lastValues.far!==this.far||this.lastValues.aspect!==this.aspect)&&(this.perspectiveCamera.fov=this.fov,this.perspectiveCamera.near=this.near,this.perspectiveCamera.far=this.far,this.perspectiveCamera.aspect=this.aspect,this.perspectiveCamera.updateProjectionMatrix(),i=!0),!this.lastValues.position.equals(this.position)||!this.lastValues.quaternion.equals(this.quaternion)||!this.lastValues.scale.equals(this.scale)||!this.lastValues.perspToOrtho.equals(this.perspToOrtho)||this.lastValues.fov!==this.fov||this.lastValues.near!==this.near||this.lastValues.far!==this.far||this.lastValues.aspect!==this.aspect){var a=Math.max(this.orthoDistance,.01)*Math.tan(.5*this.fov/180*Math.PI),o=-.5*this.aspect*2*a;this.orthographicCamera.left=o,this.orthographicCamera.right=-o,this.orthographicCamera.top=a,this.orthographicCamera.bottom=-a,this.orthographicCamera.near=this.near,this.orthographicCamera.far=this.far,this.orthographicCamera.updateProjectionMatrix(),i=!0}i&&this.computeProjectionMatrix(),this.lastValues.position.copy(this.position),this.lastValues.quaternion.copy(this.quaternion),this.lastValues.scale.copy(this.scale),this.lastValues.fov=this.fov,this.lastValues.aspect=this.aspect,this.lastValues.near=this.near,this.lastValues.far=this.far,this.lastValues.perspToOrtho.copy(this.perspToOrtho),this.type=this.perspToOrtho.x<1?"PerspectiveCamera":"OrthographicCamera"},Object.defineProperty(t.prototype,"isPerspectiveCamera",{get:function(){return this.perspToOrtho.x<1},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"isOrthographicCamera",{get:function(){return this.perspToOrtho.x>=1},enumerable:!1,configurable:!0}),t.prototype.copy=function(e,r){return n.prototype.copy.call(this,e,r),this.fov=e.fov,this.aspect=e.aspect,this.near=e.near,this.far=e.far,this.perspToOrtho.copy(e.perspToOrtho),this.updateTime(be(),0),this},t}(d.Camera),Ic=new d.Vector4,Qn=new d.WebGLCubeRenderTarget(1).texture;Qn.name="EMPTY_TEXTURE";var Tc=Object.assign({modelAlpha:new d.Uniform(0),progress:new d.Uniform(0),pano0_map:new d.Uniform(Qn),pano0_luminanceMap:new d.Uniform(null),pano0_matrix:new d.Uniform(new d.Matrix4),pano1_map:new d.Uniform(Qn),pano1_luminanceMap:new d.Uniform(null),pano1_matrix:new d.Uniform(new d.Matrix4),clippers:new d.Uniform([]),shownFloorIndex:new d.Uniform(-1),constantColor:new d.Uniform(null),geometricError:new d.Uniform(0),pixelRatio:new d.Uniform(1),resolution:new d.Uniform(new d.Vector2(512,512)),floor:new d.Uniform(0)},{exposure:new d.Uniform(1),emissive:new d.Uniform(new d.Color(0)),emissiveMap:new d.Uniform(null),specular:new d.Uniform(new d.Color(1118481)),specularMap:new d.Uniform(null),normalMap:new d.Uniform(null),bumpMap:new d.Uniform(null),shininess:new d.Uniform(30)},d.UniformsUtils.clone(d.UniformsLib.common),d.UniformsUtils.clone(d.UniformsLib.lights)),Hn=function(n){de(t,n);function t(e){e===void 0&&(e={});var r,i,a,o,s,l,u,c,f,A,p,y,v,m,h,g,b,w,E,C,x=n.call(this,{vertexShader:wc,fragmentShader:Ec,uniforms:d.UniformsUtils.clone(Tc),defines:{USE_CONSTANT_COLOR:!1,USE_EDL:!1,USE_HQ_WEIGHT:!1,USE_HQ_DEPTH:!1,NUM_CLIPPING_BOX:!1,USE_CLIPFLOOR:!1,USE_VERTEX_FLOOR:!1,USE_MAP:!0,USE_UV:!0,USE_LUMINANCE:!1,USE_PANO_OPACITY:!1,USE_BLACK_TRANSITION:!1,USE_SPREAD_TRANSITION:!1,USE_PANO_VIDEO:!1,USE_POINT_NORMAL:!1,USE_POINT_CIRCLE:!1,USE_POINT_ADAPTIVE_SIZE:!1,USE_POINT_COLOR_ALTITUDE:!1},lights:!0})||this,M,S=null,P=null;return Object.defineProperties(x,{pano0:{get:function(){return S},set:function(I){if(S!==I){S=I,I===null?(this.uniforms.pano0_map.value=Qn,this.uniforms.pano0_luminanceMap.value=null,this.uniforms.pano0_matrix.value.identity()):(this.uniforms.pano0_map.value=I.map instanceof ke?I.map.texture:I.map,this.uniforms.pano0_luminanceMap.value=I.luminanceMap instanceof ke?I.luminanceMap.texture:I.luminanceMap,this.uniforms.pano0_matrix.value.copy(I.matrix));var B=this.uniforms.pano0_luminanceMap.value!==null&&this.uniforms.pano1_luminanceMap.value!==null,k=this.defines.USE_LUMINANCE;k!==B&&(this.defines.USE_LUMINANCE=B,this.needsUpdate=!0)}}},pano1:{get:function(){return P},set:function(I){if(P!==I){P=I,I===null?(this.uniforms.pano1_map.value=Qn,this.uniforms.pano1_luminanceMap.value=null,this.uniforms.pano1_matrix.value.identity()):(this.uniforms.pano1_map.value=I.map instanceof ke?I.map.texture:I.map,this.uniforms.pano1_luminanceMap.value=I.luminanceMap instanceof ke?I.luminanceMap.texture:I.luminanceMap,this.uniforms.pano1_matrix.value.copy(I.matrix));var B=this.uniforms.pano0_luminanceMap.value!==null&&this.uniforms.pano1_luminanceMap.value!==null,k=this.defines.USE_LUMINANCE;k!==B&&(this.defines.USE_LUMINANCE=B,this.needsUpdate=!0)}}},modelAlpha:{get:function(){return this.uniforms.modelAlpha.value},set:function(I){this.uniforms.modelAlpha.value=I}},progress:{get:function(){return this.uniforms.progress.value},set:function(I){this.uniforms.progress.value=I}},transition:{get:function(){return this.defines.USE_BLACK_TRANSITION?"BLACK":this.defines.USE_SPREAD_TRANSITION?"SPREAD":"FADE"},set:function(I){var B=this.defines.USE_BLACK_TRANSITION,k=this.defines.USE_SPREAD_TRANSITION;this.defines.USE_BLACK_TRANSITION=!1,this.defines.USE_SPREAD_TRANSITION=!1,this.defines["USE_".concat(I,"_TRANSITION")]=!0;var L=!1;B!==this.defines.USE_BLACK_TRANSITION&&(L=!0),k!==this.defines.USE_SPREAD_TRANSITION&&(L=!0),L&&(this.needsUpdate=!0)}},constantColor:{get:function(){return this.uniforms.constantColor.value},set:function(I){this.uniforms.constantColor.value=I;var B=this.defines.USE_CONSTANT_COLOR,k=I!==null;B!==k&&(this.defines.USE_CONSTANT_COLOR=k,this.needsUpdate=!0)}},opacity:{get:function(){return this.uniforms.opacity.value},set:function(I){this.uniforms.opacity.value=I}},shownFloorIndex:{get:function(){return this.uniforms.shownFloorIndex.value},set:function(I){this.uniforms.shownFloorIndex.value=I}},clippers:{get:function(){return M},set:function(I){M!==I&&(M=I,this.uniforms.clippers.value=(M||[]).map(function(B){var k=typeof B.floorIndex=="number"?B.floorIndex:-1,L=new d.Matrix4().getInverse(B.clippingBoxMatrix);return{matrixInverse:L,floorIndex:k}}),this.needsUpdate=!0)}},useEDL:{get:function(){return this.defines.USE_EDL},set:function(I){I!==this.defines.USE_EDL&&(this.defines.USE_EDL=I,this.needsUpdate=!0)}},useHQWeight:{get:function(){return this.defines.USE_HQ_WEIGHT},set:function(I){I!==this.defines.USE_HQ_WEIGHT&&(this.defines.USE_HQ_WEIGHT=I,this.needsUpdate=!0)}},useHQDepth:{get:function(){return this.defines.USE_HQ_DEPTH},set:function(I){I!==this.defines.USE_HQ_DEPTH&&(this.defines.USE_HQ_DEPTH=I,this.needsUpdate=!0)}},floor:{get:function(){return this.uniforms.floor.value},set:function(I){this.uniforms.floor.value=I}}}),x.pano0=(r=e.pano0)!==null&&r!==void 0?r:we.pano0,x.pano1=(i=e.pano1)!==null&&i!==void 0?i:we.pano1,x.modelAlpha=(a=e.modelAlpha)!==null&&a!==void 0?a:we.modelAlpha,x.progress=(o=e.progress)!==null&&o!==void 0?o:we.progress,x.transition=(s=e.transition)!==null&&s!==void 0?s:we.transition,x.constantColor=(l=e.constantColor)!==null&&l!==void 0?l:we.constantColor,x.opacity=(u=e.opacity)!==null&&u!==void 0?u:we.opacity,x.shownFloorIndex=(c=e.shownFloorIndex)!==null&&c!==void 0?c:we.shownFloorIndex,x.clippers=(f=e.clippers)!==null&&f!==void 0?f:we.clippers,x.useEDL=(A=e.useEDL)!==null&&A!==void 0?A:we.useEDL,x.useHQWeight=(p=e.useHQWeight)!==null&&p!==void 0?p:we.useHQWeight,x.useHQDepth=(y=e.useHQDepth)!==null&&y!==void 0?y:we.useHQDepth,x.pointSize=(v=e.pointSize)!==null&&v!==void 0?v:we.pointSize,x.pointColor=(m=e.pointColor)!==null&&m!==void 0?m:we.pointColor,x.pointShape=(h=e.pointShape)!==null&&h!==void 0?h:we.pointShape,x.pointScale=(g=e.pointScale)!==null&&g!==void 0?g:we.pointScale,x.pointBack=(b=e.pointBack)!==null&&b!==void 0?b:we.pointBack,x.pointMinPixel=(w=e.pointMinPixel)!==null&&w!==void 0?w:we.pointMinPixel,x.pointMaxPixel=(E=e.pointMaxPixel)!==null&&E!==void 0?E:we.pointMaxPixel,x.gradientTexture=(C=e.gradientTexture)!==null&&C!==void 0?C:we.gradientTexture,x.floor=0,x}return t.prototype.onBeforeCompile=function(e,r){var i,a,o=String((a=(i=this.clippers)===null||i===void 0?void 0:i.length)!==null&&a!==void 0?a:0);e.vertexShader=e.vertexShader.replace(/NUM_CLIPPERS/g,o),e.fragmentShader=e.fragmentShader.replace(/NUM_CLIPPERS/g,o)},t.prototype.update=function(e,r){this.transparent=this.shownFloorIndex>-1||this.opacity<1,this.blending=this.transparent?d.NormalBlending:d.NoBlending;var i;if(this.uniforms.map.value&&(i=this.uniforms.map.value),i?(i.updateMatrix(),this.uniforms.uvTransform.value.copy(i.matrix)):this.uniforms.uvTransform.value.identity(),r instanceof Si)this.uniforms.pixelRatio.value=r.pixelRatio,this.uniforms.resolution.value.copy(r.resolution);else{this.uniforms.pixelRatio.value=e.getPixelRatio();var a=e.getViewport(Ic);this.uniforms.resolution.value.set(a.z,a.w)}},t.prototype.syncModel=function(e){var r="".concat(e.id,":").concat(e.materialVersion);r!==this.syncModelVersion&&(Object.assign(this,e.getMaterial()),this.syncModelVersion=r)},t}(d.ShaderMaterial),jr=function(n){de(t,n);function t(e){var r=e.preserveDrawingBuffer,i=r===void 0?!0:r,a=e.premultipliedAlpha,o=a===void 0?!0:a,s=e.stencil,l=s===void 0?!0:s,u=e.backgroundColor,c=u===void 0?1579548:u,f=e.backgroundAlpha,A=f===void 0?1:f,p=e.pixelRatio,y=p===void 0?1:p,v=e.antialias,m=e.webgl2,h=this,g={antialias:v,alpha:!0,preserveDrawingBuffer:i,stencil:l,premultipliedAlpha:o,powerPreference:"high-performance"};if(m){var b=document.createElement("canvas"),w=b.getContext("webgl2",g);w?h=n.call(this,F(F({},g),{antialias:!0,canvas:b,context:w}))||this:(console.error("error occurred when getting webgl2 canvas context, mybe webgl2 not support, fallback to webgl."),h=n.call(this,g)||this)}else h=n.call(this,g)||this;return h.setPixelRatio(y),h.setClearColor(c,A),h.outputEncoding=d.sRGBEncoding,h.autoClear=!0,h}return t}(d.WebGLRenderer),uu=function(n){de(t,n);function t(){return n!==null&&n.apply(this,arguments)||this}return t.prototype.add=function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];return n.prototype.add.apply(this,e)},t.prototype.remove=function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];return n.prototype.remove.apply(this,e)},t}(d.Scene),dt;(function(n){n[n.Outside=-1]="Outside",n[n.Intersecting=0]="Intersecting",n[n.Inside=1]="Inside"})(dt||(dt={}));var lu=1e-6,De=new d.Vector3,Lr=new d.Matrix4,Ir=new d.Vector3,Tr=new d.Vector3,Pr=new d.Vector3,va=new d.Vector3,So=new d.Box3,Io=new d.Sphere,To=new d.Matrix4,Po=new d.Ray,lt=new d.Object3D,Bo=new d.Frustum;function cu(n,t){var e=n.elements;return t.setFromRotationMatrix(Lr.set(e[0],e[3],e[6],0,e[1],e[4],e[7],0,e[2],e[5],e[8],0,0,0,0,1)),t}var Rn=function(){function n(t){t===void 0&&(t=[]),this.planes=t}return Object.defineProperty(n,"MASK_OUTSIDE",{get:function(){return 4294967295},enumerable:!1,configurable:!0}),Object.defineProperty(n,"MASK_INSIDE",{get:function(){return 0},enumerable:!1,configurable:!0}),Object.defineProperty(n,"MASK_INDETERMINATE",{get:function(){return 2147483647},enumerable:!1,configurable:!0}),n.prototype.setFromFrustum=function(t){return this.planes=t.planes.map(function(e){return e.clone()}),this},n.prototype.setFromCamera=function(t){return Lr.multiplyMatrices(t.projectionMatrix,t.matrixWorldInverse),Bo.setFromProjectionMatrix(Lr),this.setFromFrustum(Bo),this},n.prototype.applyMatrix4=function(t){for(var e=0,r=this.planes;e<r.length;e++){var i=r[e];i.applyMatrix4(t)}},n.prototype.copy=function(t){return this.planes=t.planes.map(function(e){return e.clone()}),this},n.prototype.clone=function(){return new n().copy(this)},n.prototype.computeVisibility=function(t){for(var e=dt.Inside,r=0,i=this.planes;r<i.length;r++){var a=i[r],o=t.intersectPlane(a);switch(o){case dt.Outside:return dt.Outside;case dt.Intersecting:e=dt.Intersecting;break}}return e},n.prototype.computeVisibilityWithPlaneMask=function(t,e){if(e===n.MASK_OUTSIDE||e===n.MASK_INSIDE)return e;for(var r=n.MASK_INSIDE,i=Math.min(32,this.planes.length),a=0;a<i;++a){var o=1<<a;if(e&o){var s=this.planes[a],l=t.intersectPlane(s);if(l===dt.Outside)return n.MASK_OUTSIDE;l===dt.Intersecting&&(r|=o)}}return r},n}(),du=function(){function n(){this.type="box",this.center=new d.Vector3,this.halfSize=new d.Vector3,this.rotation=new d.Matrix3}return n.prototype.fromJson=function(t){var e=t.box;this.center.set(e[0],e[1],e[2]);var r=e[3],i=e[4],a=e[5],o=e[6],s=e[7],l=e[8],u=e[9],c=e[10],f=e[11],A=Math.sqrt(r*r+i*i+a*a),p=Math.sqrt(o*o+s*s+l*l),y=Math.sqrt(u*u+c*c+f*f);this.halfSize.set(A,p,y);var v=this.halfSize.toArray().reduce(function(m,h){return m+h},0);return(isNaN(v)||v<=0)&&this.halfSize.setScalar(lu),this.rotation.fromArray([r/A,i/A,a/A,o/p,s/p,l/p,u/y,c/y,f/y]),isNaN(this.rotation.toArray().reduce(function(m,h){return m+h},0))&&this.rotation.identity(),this},n.prototype.toJson=function(){return this.rotation.extractBasis(Ir,Tr,Pr),{box:ht(ht(ht(ht([],this.center.toArray(),!0),Ir.multiplyScalar(this.halfSize.x).toArray(),!0),Tr.multiplyScalar(this.halfSize.y).toArray(),!0),Pr.multiplyScalar(this.halfSize.z).toArray(),!0)}},n.prototype.copy=function(t){return this.center.copy(t.center),this.halfSize.copy(t.halfSize),this.rotation.copy(t.rotation),this},n.prototype.clone=function(){return new n().copy(this)},n.prototype.applyMatrix4=function(t){return lt.position.copy(this.center),cu(this.rotation,lt.quaternion),lt.scale.copy(this.halfSize),lt.matrix.compose(lt.position,lt.quaternion,lt.scale),lt.matrix.premultiply(t),lt.matrix.decompose(lt.position,lt.quaternion,lt.scale),this.center.copy(lt.position),this.rotation.setFromMatrix4(Lr.makeRotationFromQuaternion(lt.quaternion)),this.halfSize.copy(lt.scale),this},n.prototype.getCenter=function(t){return t.copy(this.center)},n.prototype.distanceSquaredToPoint=function(t){var e=this.rotation.elements,r=t.x-this.center.x,i=t.y-this.center.y,a=t.z-this.center.z,o=0,s;return s=r*e[0]+i*e[1]+a*e[2],s<0&&(s=-s),s-=this.halfSize.x,s>0&&(o+=s*s),s=r*e[3]+i*e[4]+a*e[5],s<0&&(s=-s),s-=this.halfSize.y,s>0&&(o+=s*s),s=r*e[6]+i*e[7]+a*e[8],s<0&&(s=-s),s-=this.halfSize.z,s>0&&(o+=s*s),o},n.prototype.distanceToPoint=function(t){return Math.sqrt(this.distanceSquaredToPoint(t))},n.prototype.distanceToPlane=function(t){var e=t.projectPoint(this.center,new d.Vector3);return this.distanceToPoint(e)},n.prototype.getBoundingBox=function(t){return t.makeEmpty(),this.rotation.extractBasis(Ir,Tr,Pr),Ir.setLength(this.halfSize.x),Tr.setLength(this.halfSize.y),Pr.setLength(this.halfSize.z),t.expandByPoint(De.copy(this.center).add(Ir)),t.expandByPoint(De.copy(this.center).sub(Ir)),t.expandByPoint(De.copy(this.center).add(Tr)),t.expandByPoint(De.copy(this.center).sub(Tr)),t.expandByPoint(De.copy(this.center).add(Pr)),t.expandByPoint(De.copy(this.center).sub(Pr)),t},n.prototype.toGeometry=function(){var t=new Uint16Array([0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,1,5,2,6,3,7]),e=new Float32Array(8*3);De.set(this.halfSize.x,this.halfSize.y,this.halfSize.z).applyMatrix3(this.rotation).add(this.center).toArray(e,0),De.set(-this.halfSize.x,this.halfSize.y,this.halfSize.z).applyMatrix3(this.rotation).add(this.center).toArray(e,3),De.set(-this.halfSize.x,-this.halfSize.y,this.halfSize.z).applyMatrix3(this.rotation).add(this.center).toArray(e,6),De.set(this.halfSize.x,-this.halfSize.y,this.halfSize.z).applyMatrix3(this.rotation).add(this.center).toArray(e,9),De.set(this.halfSize.x,this.halfSize.y,-this.halfSize.z).applyMatrix3(this.rotation).add(this.center).toArray(e,12),De.set(-this.halfSize.x,this.halfSize.y,-this.halfSize.z).applyMatrix3(this.rotation).add(this.center).toArray(e,15),De.set(-this.halfSize.x,-this.halfSize.y,-this.halfSize.z).applyMatrix3(this.rotation).add(this.center).toArray(e,18),De.set(this.halfSize.x,-this.halfSize.y,-this.halfSize.z).applyMatrix3(this.rotation).add(this.center).toArray(e,21);var r=new d.BufferGeometry;return r.setIndex(new d.BufferAttribute(t,1)),r.setAttribute("position",new d.BufferAttribute(e,3)),r.computeBoundingBox(),r.computeBoundingSphere(),r},n.prototype.intersectPlane=function(t){var e=this.center,r=t.normal,i=this.rotation.elements,a=this.halfSize,o=r.x,s=r.y,l=r.z,u=Math.abs(o*i[0]*a.x+s*i[1]*a.x+l*i[2]*a.x)+Math.abs(o*i[3]*a.y+s*i[4]*a.y+l*i[5]*a.y)+Math.abs(o*i[6]*a.z+s*i[7]*a.z+l*i[8]*a.z),c=r.dot(e)+t.constant;return c<=-u?dt.Outside:c>=u?dt.Inside:dt.Intersecting},n.prototype.intersectRay=function(t,e){va.copy(this.halfSize).multiplyScalar(2),So.setFromCenterAndSize(De.set(0,0,0),va),this.rotation.extractBasis(Ir,Tr,Pr),Lr.makeBasis(Ir,Tr,Pr),Lr.setPosition(this.center),To.getInverse(Lr),Po.copy(t).applyMatrix4(To);var r=Po.intersectBox(So,De);return r?e!==void 0?r.applyMatrix4(Lr).distanceTo(t.origin)<e:!0:!1},n}(),fu=function(){function n(){this.type="sphere",this.center=new d.Vector3,this.radius=-1}return n.prototype.fromJson=function(t){var e=t.sphere;return this.center.set(e[0],e[1],e[2]),this.radius=Math.max(e[3],lu),this},n.prototype.toJson=function(){return{sphere:ht(ht([],this.center.toArray(),!0),[this.radius],!1)}},n.prototype.copy=function(t){return this.center.copy(t.center),this.radius=t.radius,this},n.prototype.clone=function(){return new n().copy(this)},n.prototype.getBoundingBox=function(t){return t.setFromCenterAndSize(this.center,va.set(1,1,1).multiplyScalar(this.radius*2)),t},n.prototype.toGeometry=function(){for(var t=32,e=new Float32Array(t*3*2*2),r=0;r<=t;r++){var i=0;i=r/t*Math.PI*2,e[r*6+0]=this.center.x+Math.cos(i)*this.radius,e[r*6+1]=this.center.y+Math.sin(i)*this.radius,e[r*6+2]=this.center.z+0,i=(r+1)/t*Math.PI*2,e[r*6+3]=this.center.x+Math.cos(i)*this.radius,e[r*6+4]=this.center.y+Math.sin(i)*this.radius,e[r*6+5]=this.center.z+0}for(var r=t;r<=t*2;r++){var i=0;i=r/t*Math.PI*2,e[r*6+0]=this.center.x+Math.cos(i)*this.radius,e[r*6+1]=this.center.y+0,e[r*6+2]=this.center.z+Math.sin(i)*this.radius,i=(r+1)/t*Math.PI*2,e[r*6+3]=this.center.x+Math.cos(i)*this.radius,e[r*6+4]=this.center.y+0,e[r*6+5]=this.center.z+Math.sin(i)*this.radius}var a=new d.BufferGeometry;return a.setAttribute("position",new d.BufferAttribute(e,3)),a.computeBoundingBox(),a.computeBoundingSphere(),a},n.prototype.applyMatrix4=function(t){return this.center.applyMatrix4(t),this.radius=this.radius*t.getMaxScaleOnAxis(),this},n.prototype.getCenter=function(t){return t.copy(this.center)},n.prototype.distanceSquaredToPoint=function(t){var e=this.distanceToPoint(t);return e*e},n.prototype.distanceToPoint=function(t){var e=this.center.distanceTo(t)-this.radius;return e<=0?0:e},n.prototype.distanceToPlane=function(t){var e=Math.abs(t.distanceToPoint(this.center));return Math.max(0,e-this.radius)},n.prototype.intersectPlane=function(t){var e=this.center,r=this.radius,i=t.normal,a=i.dot(e)+t.constant;return a<-r?dt.Outside:a<r?dt.Intersecting:dt.Inside},n.prototype.intersectRay=function(t,e){Io.set(this.center,this.radius);var r=t.intersectSphere(Io,De);return r?e!==void 0?t.origin.distanceTo(r)<e:!0:!1},n}(),Pc=function(){function n(){throw this.type="regin",this.west=0,this.south=0,this.east=0,this.north=0,this.minHeight=0,this.maxHeight=0,new Error("Region bounding volume not supported.")}return n.prototype.fromJson=function(t){var e=t.region;return this.west=e[0],this.south=e[1],this.east=e[2],this.north=e[3],this.minHeight=e[4],this.maxHeight=e[5],this},n.prototype.toJson=function(){return{region:[this.west,this.south,this.east,this.north,this.minHeight,this.maxHeight]}},n.prototype.copy=function(t){return this.west=t.west,this.south=t.south,this.east=t.east,this.north=t.north,this.minHeight=t.minHeight,this.maxHeight=t.maxHeight,this},n.prototype.clone=function(){return new n().copy(this)},n.prototype.getBoundingBox=function(t){throw new Error("not implemented")},n.prototype.toGeometry=function(){throw new Error("not implemented")},n.prototype.applyMatrix4=function(t){throw new Error("not implemented")},n.prototype.getCenter=function(t){throw new Error("not implemented")},n.prototype.distanceToPoint=function(t){throw new Error("not implemented")},n.prototype.distanceSquaredToPoint=function(t){throw new Error("not implemented")},n.prototype.distanceToPlane=function(t){throw new Error("not implemented")},n.prototype.intersectPlane=function(t){throw new Error("not implemented")},n.prototype.intersectRay=function(t){throw new Error("not implemented")},n}();function ai(n){if("box"in n)return new du().fromJson(n);if("sphere"in n)return new fu().fromJson(n);if("region"in n)return new Pc().fromJson(n);throw new Error("BoundingVolume ".concat(JSON.stringify(n)," never suppored."))}var Yn=[4821759,8191922,16637280,16739958,5822969,376977,16747077,9259235,14514687].map(function(n){return new d.LineBasicMaterial({color:n,depthWrite:!1,depthTest:!1,transparent:!0})}),Bc=function(){var n=new Uint16Array([0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,1,5,2,6,3,7]),t=new Float32Array(8*3);De.set(1,1,1).toArray(t,0),De.set(-1,1,1).toArray(t,3),De.set(-1,-1,1).toArray(t,6),De.set(1,-1,1).toArray(t,9),De.set(1,1,-1).toArray(t,12),De.set(-1,1,-1).toArray(t,15),De.set(-1,-1,-1).toArray(t,18),De.set(1,-1,-1).toArray(t,21);var e=new d.BufferGeometry;return e.setIndex(new d.BufferAttribute(n,1)),e.setAttribute("position",new d.BufferAttribute(t,3)),e.computeBoundingBox(),e.computeBoundingSphere(),e}(),Rc=function(){for(var n=32,t=new Float32Array(n*3*2*2),e=0;e<=n;e++){var r=0;r=e/n*Math.PI*2,t[e*6+0]=Math.cos(r),t[e*6+1]=Math.sin(r),t[e*6+2]=0,r=(e+1)/n*Math.PI*2,t[e*6+3]=Math.cos(r),t[e*6+4]=Math.sin(r),t[e*6+5]=0}for(var e=n;e<=n*2;e++){var r=0;r=e/n*Math.PI*2,t[e*6+0]=Math.cos(r),t[e*6+1]=0,t[e*6+2]=Math.sin(r),r=(e+1)/n*Math.PI*2,t[e*6+3]=Math.cos(r),t[e*6+4]=0,t[e*6+5]=Math.sin(r)}var i=new d.BufferGeometry;return i.setAttribute("position",new d.BufferAttribute(t,3)),i.computeBoundingBox(),i.computeBoundingSphere(),i}();function Fc(n,t){if(n instanceof du){var e=new d.LineSegments(Bc,Yn[Math.min(t,Yn.length-1)]);return e.position.copy(n.center),cu(n.rotation,e.quaternion),e.scale.set(n.halfSize.x,n.halfSize.y,n.halfSize.z),e.matrix.compose(e.position,e.quaternion,e.scale),e}else if(n instanceof fu){var e=new d.LineSegments(Rc,Yn[Math.min(t,Yn.length-1)]);return e.position.copy(n.center),e.scale.set(n.radius,n.radius,n.radius),e.matrix.compose(e.position,e.quaternion,e.scale),e}throw new Error("never")}var Ga=function(){function n(t,e,r,i){var a=this,o,s,l;this.parent=null,this.id=t,this.state={visible:!1,frameNumber:0,selectedFrameNumber:0,requestedFrameNumber:0,touchedFrameNumber:0,selectionDepth:0,shouldRefine:!1,distanceToCamera:0,screenSpaceError:0,visibilityPlaneMask:0,inRequestVolume:!1},this.parent=i!=null?i:null,this.tileset=r,this.refine=(o=e.refine)!==null&&o!==void 0?o:this.parent?this.parent.refine:"REPLACE",this.transform=new d.Matrix4,e.transform&&this.transform.fromArray(e.transform),this.parent&&this.transform.premultiply(this.parent.transform),typeof e.geometricError=="number"?this.geometricError=e.geometricError*this.transform.getMaxScaleOnAxis():this.geometricError=(l=(s=this.parent)===null||s===void 0?void 0:s.geometricError)!==null&&l!==void 0?l:0,e.content&&e.content.uri?(this.content={uri:e.content.uri,loadState:"UNLOADED",byteLength:0},e.content.group!==void 0&&(this.content.group=e.content.group),e.content.boundingVolume&&(this.content.boundingVolume=ai(e.content.boundingVolume).applyMatrix4(this.transform)),/\.json$/.test(this.content.uri)?this.type="TILESET":this.type="SCENEGRAPH"):(this.content=null,this.type="EMPTY"),e.boundingVolume&&(this.boundingVolume=ai(e.boundingVolume).applyMatrix4(this.transform)),e.viewerRequestVolume&&(this.viewerRequestVolume=ai(e.viewerRequestVolume).applyMatrix4(this.transform)),this.extras=e.extras||{},e.children?this.children=e.children.map(function(u,c){return new n("".concat(a.id,".").concat(c),u,r,a)}):this.children=[]}return n.prototype.updateState=function(t){this.state.frameNumber=t.frameNumber;var e=this.tileset.transformIsIdentity?null:this.tileset.transform;if(this.boundingVolume){var r=e?this.boundingVolume.clone().applyMatrix4(e):this.boundingVolume;if(t.camera.type==="OrthographicCamera"){var i=new d.Plane().setFromNormalAndCoplanarPoint(t.camera.direction,t.camera.position);this.state.distanceToCamera=r.distanceToPlane(i)}else this.state.distanceToCamera=r.distanceToPoint(t.camera.position);var a=this.parent?this.parent.state.visibilityPlaneMask:Rn.MASK_INDETERMINATE;this.state.visibilityPlaneMask=t.cullingVolume.computeVisibilityWithPlaneMask(r,a),this.state.visible=this.state.visibilityPlaneMask!==Rn.MASK_OUTSIDE}else this.state.distanceToCamera=0,this.state.visibilityPlaneMask=Rn.MASK_INDETERMINATE,this.state.visible=!0;if(this.viewerRequestVolume){var o=e?this.viewerRequestVolume.clone().applyMatrix4(e):this.viewerRequestVolume;this.state.inRequestVolume=o.distanceSquaredToPoint(t.camera.position)<=0}else this.state.inRequestVolume=!0;this.state.screenSpaceError=this.getScreenSpaceError(t,this.state.distanceToCamera,!1)},Object.defineProperty(n.prototype,"selected",{get:function(){return this.state.selectedFrameNumber===this.tileset.frameNumber},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"hasChildren",{get:function(){return this.children.length>0},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"siblingIndex",{get:function(){var t,e;return(e=(t=this.parent)===null||t===void 0?void 0:t.children.indexOf(this))!==null&&e!==void 0?e:0},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"hasTilesetContent",{get:function(){return this.children.length>0&&this.type==="TILESET"},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"hasRenderContent",{get:function(){return this.type==="MESH"||this.type==="SCENEGRAPH"},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"contentAvailable",{get:function(){var t;return this.hasRenderContent&&((t=this.content)===null||t===void 0?void 0:t.loadState)==="READY"},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"hasUnloadedContent",{get:function(){var t;return((t=this.content)===null||t===void 0?void 0:t.loadState)==="UNLOADED"},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"hasEmptyContent",{get:function(){return this.type==="EMPTY"},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"contentReady",{get:function(){var t;return((t=this.content)===null||t===void 0?void 0:t.loadState)==="READY"||this.hasEmptyContent},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"contentByteLength",{get:function(){return this.content?this.content.byteLength:0},enumerable:!1,configurable:!0}),n.prototype.loadContent=function(){var t=this,e;if(this.hasEmptyContent||!(!((e=this.content)===null||e===void 0)&&e.uri))return Promise.resolve(!1);var r=this.content;return r.data?Promise.resolve(!0):(r.loadState="LOADING",this.tileset.requestScheduler.scheduleRequest(this.id,function(){return t.getPriority()}).then(function(i){return i?t.tileset.options.contentLoader(t).then(function(a){return i.done(),r.loadState=a?"READY":"UNLOADED",a}).catch(function(a){return r.loadState="FAILED",i.done(),Promise.reject(a)}):(r.loadState="UNLOADED",Promise.resolve(!1))}))},n.prototype.unloadContent=function(){return this.content&&(this.content.loadState="UNLOADED",this.content.byteLength=0),!0},n.prototype.getScreenSpaceError=function(t,e,r){var i=this.tileset.transformIsIdentity?1:this.tileset.transform.getMaxScaleOnAxis(),a=this.parent?this.parent.geometricError:this.tileset.geometricError,o=i*(r?a:this.geometricError);if(o===0)return 0;var s=Math.max(e,.001),l=o*t.height/(s*t.sseDenominator);return l},n.prototype.getPriority=function(){var t=this.refine==="ADD"||this.tileset.skipLevelOfDetail;if(t&&!this.state.visible||this.tileset.frameNumber-this.state.touchedFrameNumber>=1||this.content.loadState==="UNLOADED")return-1;var e=this.parent,r=e&&(!t||this.state.screenSpaceError===0),i=r?e.state.screenSpaceError:this.state.screenSpaceError,a=this.tileset.root?this.tileset.root.state.screenSpaceError:0,o=Math.max(a-i,0);return o},n}(),Aa=function(){function n(){this.maxRequests=n.DEFAULT_MAX_REQUESTS,this.activeRequests=0,this.requestQueue=[],this.requestMap=new Map,this.deferred=null}return n.prototype.scheduleRequest=function(t,e){var r=this.requestMap.get(t);if(r)return r;var i={identiy:t,priority:0,getPriority:e,resolve:function(){}},a=new Promise(function(o){return i.resolve=o});return this.requestQueue.push(i),this.requestMap.set(t,a),this.issueNewRequests(),a},n.prototype.reset=function(){for(var t=0,e=this.requestQueue;t<e.length;t++){var r=e[t];r.resolve(null)}this.requestQueue.length=0,this.requestMap.clear(),this.activeRequests=0},n.prototype.issueRequest=function(t){var e=this,r=t.identiy,i=t.resolve,a=!1,o=function(){a||(a=!0,e.requestMap.delete(r),e.activeRequests--,e.issueNewRequests())};this.activeRequests++,i({done:o})},n.prototype.issueNewRequests=function(){var t=this;this.deferred||(this.deferred=setTimeout(function(){return t.issueNewRequestsAsync()},0))},n.prototype.issueNewRequestsAsync=function(){this.deferred=null;var t=Math.max(this.maxRequests-this.activeRequests,0);if(t!==0){this.updateAllRequests();for(var e=0;e<t;e++){var r=this.requestQueue.shift();if(r)this.issueRequest(r);else break}}},n.prototype.updateAllRequests=function(){for(var t=this.requestQueue,e=0;e<t.length;e++){var r=t[e];this.updateRequest(r)===!1&&(t.splice(e,1),this.requestMap.delete(r.identiy),e--)}t.sort(function(i,a){return i.priority-a.priority})},n.prototype.updateRequest=function(t){return t.priority=t.getPriority(t.identiy),t.priority<0?(t.resolve(null),!1):!0},n.DEFAULT_MAX_REQUESTS=6,n}(),kc=function(){function n(t,e,r){this.item=t,this.previous=e,this.next=r}return n}(),Lc=function(){function n(){this.head=null,this.tail=null,this._length=0}return Object.defineProperty(n.prototype,"length",{get:function(){return this._length},enumerable:!1,configurable:!0}),n.prototype.add=function(t){var e=new kc(t,this.tail,null);return this.tail?(this.tail.next=e,this.tail=e):(this.head=e,this.tail=e),this._length++,e},n.prototype.remove=function(t){t.previous&&t.next?(t.previous.next=t.next,t.next.previous=t.previous):t.previous?(t.previous.next=null,this.tail=t.previous):t.next?(t.next.previous=null,this.head=t.next):(this.head=null,this.tail=null),t.next=null,t.previous=null,this._length--},n.prototype.splice=function(t,e){t!==e&&(this.remove(e),this.insert(t,e))},n.prototype.insert=function(t,e){var r=t.next;t.next=e,this.tail===t?this.tail=e:r.previous=e,e.next=r,e.previous=t,this._length++},n.prototype.toArray=function(){for(var t=[],e=this.head;e;)t.push(e),e=e.next;return t},n}(),hu=function(){function n(){this.cacheNodeMap=new Map,this.list=new Lc,this.sentinel=this.list.add("sentinel")}return n.prototype.reset=function(){this.list.tail&&this.list.splice(this.list.tail,this.sentinel)},n.prototype.touch=function(t){var e=this.cacheNodeMap.get(t);e&&this.list.splice(this.sentinel,e)},n.prototype.add=function(t,e){if(!this.cacheNodeMap.has(t)){var r=this.list.add(t);this.cacheNodeMap.set(t,r),e&&e(t)}},n.prototype.unloadTile=function(t,e){var r=this.cacheNodeMap.get(t);r&&(this.list.remove(r),this.cacheNodeMap.delete(t),e&&e(t))},n.prototype.unloadTiles=function(t,e){for(var r=this.list.head;r!==this.sentinel&&t();){var i=r.item;r=r.next,this.unloadTile(i,e)}},n.prototype.toArray=function(){for(var t=[],e=0,r=this.list.toArray();e<r.length;e++){var i=r[e];i.item!=="sentinel"&&t.push(i.item)}return t},n}(),Ro=function(){function n(){this.map=new Map,this.array=[],this._length=0}return Object.defineProperty(n.prototype,"length",{get:function(){return this._length},enumerable:!1,configurable:!0}),n.prototype.get=function(t){return this.array[t]},n.prototype.set=function(t,e){t>=this.length&&(this._length=t+1),this.map.has(this.array[t])&&this.map.delete(this.array[t]),this.array[t]=e,this.map.set(e,t)},n.prototype.delete=function(t){var e=this.map.get(t);e!==void 0&&e>=0&&(this.array.splice(e,1),this.map.delete(t),this._length--)},n.prototype.push=function(t){if(!this.map.has(t)){var e=this._length++;this.array[e]=t,this.map.set(t,e)}},n.prototype.pop=function(){var t=this.array[--this._length];return this.map.delete(t),t},n.prototype.reset=function(){this.array=[],this.map=new Map,this._length=0},n.prototype.find=function(t){return this.map.has(t)},n}(),ma=function(){function n(){this.loadSiblings=n.DEFAULT_LOAD_SIBLINGS,this.skipLevelOfDetail=n.DEFAULT_SKIP_LEVEL_OF_DETAIL,this.maxScreenSpaceError=n.DEFAULT_MAX_SCREEN_SPACE_ERROR,this._canSelectTile=!0,this._traversalStack=new Ro,this._emptyTraversalStack=new Ro,this.root=null,this.selectedTiles=new Map,this.requestedTiles=new Map,this.needsRefinedTiles=new Map,this.emptyTiles=new Map}return n.prototype.traverse=function(t,e,r){r===void 0&&(r=[]),this.root=t,this.reset();for(var i=0,a=r;i<a.length;i++){var o=a[i];this._traversalStack.reset(),this._emptyTraversalStack.reset(),o.camera.refine&&(this._canSelectTile=o.camera.visible,this.updateTile(t,o),this.executeTraversal(t,o))}this._traversalStack.reset(),this._emptyTraversalStack.reset(),e.camera.refine&&(this._canSelectTile=e.camera.visible,this.updateTile(t,e),this.executeTraversal(t,e))},n.prototype.reset=function(){this.needsRefinedTiles.clear(),this.requestedTiles.clear(),this.selectedTiles.clear(),this.emptyTiles.clear(),this._traversalStack.reset(),this._emptyTraversalStack.reset()},n.prototype.executeTraversal=function(t,e){var r=this._traversalStack;if(t.state.selectionDepth=0,e.maxLevelOfDetail>=0)for(t.state.visible&&t.state.inRequestVolume&&r.push(t);r.length>0;){var i=r.pop(),a=!1;if(this.canTraverse(i,e,!1,!1)){var o=i.hasRenderContent?i.state.selectionDepth+1:i.state.selectionDepth;this.updateChildTiles(i,e,o),a=this.updateAndPushChildren(i,e,r)}var s=i.parent,l=!s||s.state.shouldRefine,u=!a;i.hasRenderContent?i.refine==="ADD"?(this.loadTile(i,e.frameNumber),this.selectTile(i,e)):i.refine==="REPLACE"&&(this.loadTile(i,e.frameNumber),u&&this.selectTile(i,e)):(this.emptyTiles.set(i.id,i),this.loadTile(i,e.frameNumber),u&&this.selectTile(i,e)),this.touchTile(i,e),i.state.shouldRefine=a&&l}},n.prototype.updateChildTiles=function(t,e,r){for(var i=t.children,a=0,o=i;a<o.length;a++){var s=o[a];s.state.selectionDepth=r,this.updateTile(s,e)}return!0},n.prototype.updateAndPushChildren=function(t,e,r){for(var i=t.children,a=t.refine==="REPLACE"&&t.hasRenderContent&&!this.skipLevelOfDetail,o=!1,s=!0,l=0,u=i;l<u.length;l++){var c=u[l];if(c.state.visible&&c.state.inRequestVolume?(r.find(c)&&r.delete(c),r.push(c),o=!0):(a||this.loadSiblings)&&(this.loadTile(c,e.frameNumber),this.touchTile(c,e)),a){var f=void 0;c.state.inRequestVolume?c.hasRenderContent?f=c.contentAvailable:f=this.executeEmptyTraversal(c,e):f=!1,s=s&&f}}return o||(s=!1),s},n.prototype.updateTile=function(t,e){this.updateTileVisibility(t,e)},n.prototype.selectTile=function(t,e){this.shouldSelectTile(t)&&(t.state.selectedFrameNumber=e.frameNumber,this.selectedTiles.set(t.id,t)),this.needsRefinedTiles.set(t.id,t)},n.prototype.loadTile=function(t,e){this.shouldLoadTile(t)&&(t.state.requestedFrameNumber=e,this.requestedTiles.set(t.id,t)),this.needsRefinedTiles.set(t.id,t)},n.prototype.touchTile=function(t,e){t.tileset.cache.touch(t),t.state.touchedFrameNumber=e.frameNumber},n.prototype.canTraverse=function(t,e,r,i){return t.hasChildren?t.hasTilesetContent?!0:!i&&!t.state.visible?!1:this.shouldRefine(t,e,r):!1},n.prototype.shouldLoadTile=function(t){return t.hasUnloadedContent},n.prototype.shouldSelectTile=function(t){return t.contentAvailable&&!this.skipLevelOfDetail&&this._canSelectTile},n.prototype.shouldRefine=function(t,e,r){if(t.hasEmptyContent)return!0;if(t.state.selectionDepth>=e.maxLevelOfDetail)return!1;if(t.state.selectionDepth<e.minLevelOfDetail)return!0;var i=t.state.screenSpaceError;return r&&(i=t.getScreenSpaceError(e,t.state.distanceToCamera,!0)),i>this.maxScreenSpaceError},n.prototype.updateTileVisibility=function(t,e){if(t.updateState(e),!(!t.state.visible||!t.state.inRequestVolume)){var r=t.children.length>0;if(t.hasTilesetContent&&r){var i=t.children[0];this.updateTileVisibility(i,e),t.state.visible=i.state.visible;return}if(this.meetsScreenSpaceErrorEarly(t,e)){t.state.visible=!1;return}}},n.prototype.meetsScreenSpaceErrorEarly=function(t,e){var r=t.parent;return!r||r.refine!=="ADD"?!1:!this.shouldRefine(t,e,!0)},n.prototype.compareDistanceToCamera=function(t,e){return e.state.distanceToCamera-t.state.distanceToCamera},n.prototype.executeEmptyTraversal=function(t,e){var r=!0,i=this._emptyTraversalStack;for(i.push(t);i.length>0&&r;){var a=i.pop();this.updateTile(a,e),a.state.visible||this.loadTile(a,e.frameNumber),this.touchTile(a,e);var o=!a.hasRenderContent&&this.canTraverse(a,e,!1,!0);if(o)for(var s=a.children,l=0,u=s;l<u.length;l++){var c=u[l];i.find(c)&&i.delete(c),i.push(c)}else a.contentAvailable||(r=!1)}return r},n.DEFAULT_SKIP_LEVEL_OF_DETAIL=!1,n.DEFAULT_LOAD_SIBLINGS=!1,n.DEFAULT_MAX_SCREEN_SPACE_ERROR=4,n}(),Oc=new d.Matrix4,oi=function(){function n(t,e,r){var i,a;this.id=t,this.transform=new d.Matrix4,this.transformIsIdentity=!0,this.asset={version:e.asset.version,tilesetVersion:e.asset.tilesetVersion||"",gltfUpAxis:(i=e.asset.gltfUpAxis)!==null&&i!==void 0?i:"Y",overview:e.asset.overview},this.properties=(a=e.properties)!==null&&a!==void 0?a:{},this.options=r,this.traverser=new ma,this.cache=new hu,this.requestScheduler=new Aa,this.frameNumber=0,this.pendingCount=0,this.tiles=new Map,this.memoryUsageInBytes=0,this.root=new Ga("".concat(this.id,".0"),e.root,this),this.geometricError=e.geometricError,this.maxMemoryUsage=n.DEFAULT_MAX_MEMORY_USAGE}return Object.defineProperty(n.prototype,"maxRequests",{get:function(){return this.requestScheduler.maxRequests},set:function(t){this.requestScheduler.maxRequests=t},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"skipLevelOfDetail",{get:function(){return this.traverser.skipLevelOfDetail},set:function(t){this.traverser.skipLevelOfDetail=t},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"maxScreenSpaceError",{get:function(){return this.traverser.maxScreenSpaceError},set:function(t){this.traverser.maxScreenSpaceError=t},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"selectedTiles",{get:function(){return this.traverser.selectedTiles},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"needsRefinedTiles",{get:function(){return this.traverser.needsRefinedTiles},enumerable:!1,configurable:!0}),n.prototype.reset=function(){for(var t=this,e=[this.root],r;r=e.pop();){for(var i=0,a=r.children.length;i<a;i++)e.push(r.children[i]);this.cache.unloadTile(r,function(o){return t.unloadTile(o)})}this.cache.reset(),this.traverser.reset(),this.requestScheduler.reset(),this.tiles.clear()},n.prototype.isLoaded=function(){return this.pendingCount===0&&this.frameNumber!==0},n.prototype.traverse=function(t,e){var r=this;e===void 0&&(e=[]),this.transformIsIdentity=this.transform.equals(Oc),this.traverser.traverse(this.root,t,e),this.selectedTiles.forEach(function(i){r.tiles.set(i.id,i)}),this.traverser.requestedTiles.forEach(function(i){i.hasUnloadedContent&&r.loadTile(i)}),this.cache.unloadTiles(function(){var i=r.memoryUsageInBytes>r.maxMemoryUsage*1024*1024;return i},function(i){r.unloadTile(i),r.tiles.delete(i.id)})},n.prototype.loadTile=function(t){var e=this;this.pendingCount++,t.loadContent().catch(function(r){return e.options.onTileError(t,r),!1}).then(function(r){var i;e.pendingCount--,r&&(!((i=t.content)===null||i===void 0)&&i.data&&e.cache.add(t,function(){e.memoryUsageInBytes+=t.contentByteLength}),e.options.onTileLoad(t))})},n.prototype.unloadTile=function(t){this.memoryUsageInBytes-=t.contentByteLength,this.options.onTileUnload(t),t.unloadContent()},n.DEFAULT_VIEW_DISTANCE_SCALE=1,n.DEFAULT_MAX_MEMORY_USAGE=16,n.DEFAULT_MAX_SCREEN_SPACE_ERROR=ma.DEFAULT_MAX_SCREEN_SPACE_ERROR,n.DEFAULT_MAX_REQUESTS=Aa.DEFAULT_MAX_REQUESTS,n}(),hn=function(){function n(t,e,r,i,a){this.id=t,this.extents=e,this.startIndex=r,this.endIndex=i,this.deepth=a}return n}(),yr=6*4+4+4+2+2;function pu(n,t){for(var e=new ArrayBuffer(t*yr),r=new Float32Array(e),i=new Uint32Array(e),a=new Uint16Array(e),o=[n],s,l;s=o.pop();)l=s.id*yr/4,r[l]=s.extents[0],r[l+1]=s.extents[1],r[l+2]=s.extents[2],r[l+3]=s.extents[3],r[l+4]=s.extents[4],r[l+5]=s.extents[5],i[l+6]=s.startIndex,i[l+7]=s.endIndex,l=s.id*yr/2,s.node0&&(a[l+16]=s.node0.id,o.push(s.node0)),s.node1&&(a[l+17]=s.node1.id,o.push(s.node1));return e}function vu(n,t,e,r,i,a,o,s,l){l===void 0&&(l=0),e=e-l,r=r-l,i=i-l,a=a+l,o=o+l,s=s+l;var u={min:0,max:0};t.x>=0?(u.min=(e-n.x)*t.x,u.max=(a-n.x)*t.x):(u.min=(a-n.x)*t.x,u.max=(e-n.x)*t.x);var c={min:0,max:0};if(t.y>=0?(c.min=(r-n.y)*t.y,c.max=(o-n.y)*t.y):(c.min=(o-n.y)*t.y,c.max=(r-n.y)*t.y),u.min>c.max||c.min>u.max)return!1;c.min>u.min&&(u.min=c.min),c.max<u.max&&(u.max=c.max);var f={min:0,max:0};return t.z>=0?(f.min=(i-n.z)*t.z,f.max=(s-n.z)*t.z):(f.min=(s-n.z)*t.z,f.max=(i-n.z)*t.z),!(u.min>f.max||f.min>u.max||(f.min>u.min&&(u.min=f.min),f.max<u.max&&(u.max=f.max),u.max<0))}var Au=function(){function n(t,e,r){this.x=t,this.y=e,this.z=r}return n.prototype.copy=function(t){return this.x=t.x,this.y=t.y,this.z=t.z,this},n.prototype.set=function(t,e,r){return this.x=t,this.y=e,this.z=r,this},n.prototype.fromArray=function(t,e){return e===void 0&&(e=0),this.x=t[e],this.y=t[e+1],this.z=t[e+2],this},n.prototype.toArray=function(t,e){return t===void 0&&(t=[]),e===void 0&&(e=0),t[e]=this.x,t[e+1]=this.y,t[e+2]=this.z,t},n.prototype.add=function(t){return this.x+=t.x,this.y+=t.y,this.z+=t.z,this},n.prototype.multiplyScalar=function(t){return this.x*=t,this.y*=t,this.z*=t,this},n.prototype.subVectors=function(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this.z=t.z-e.z,this},n.prototype.addScaledVector=function(t,e){return this.x+=t.x*e,this.y+=t.y*e,this.z+=t.z*e,this},n.prototype.dot=function(t){return this.x*t.x+this.y*t.y+this.z*t.z},n.prototype.cross=function(t){var e=this.x,r=this.y,i=this.z;return this.x=r*t.z-i*t.y,this.y=i*t.x-e*t.z,this.z=e*t.y-r*t.x,this},n.prototype.crossVectors=function(t,e){var r=t.x,i=t.y,a=t.z,o=e.x,s=e.y,l=e.z;return this.x=i*l-a*s,this.y=a*o-r*l,this.z=r*s-i*o,this},n.prototype.distanceTo=function(t){return Math.sqrt(this.distanceToSquared(t))},n.prototype.distanceToSquared=function(t){var e=this.x-t.x,r=this.y-t.y,i=this.z-t.z;return e*e+r*r+i*i},n.prototype.clone=function(){return new n(this.x,this.y,this.z)},n}(),mu=function(){function n(t,e,r){this.triangle=t,this.intersectionPoint=e,this.index=r}return n}(),Fo=1e-6,ko=function(){function n(t,e){if(this.positionArray=t,e)this.indicesArray=e;else{for(var r=t.length/3,i=r>65535?new Uint32Array(r):new Uint16Array(r),a=0;a<r;a++)i[a]=a;this.indicesArray=i}}return n.prototype.createTree=function(t,e,r){e=Math.min(e,16);var i=this.positionArray,a=this.indicesArray,o=a.length/3,s=o>65535?new Uint32Array(o):new Uint16Array(o),l=new Float32Array(o*6),u=[],c=0,f=-1;if(r)for(var A=0,p=0,y=0,v=void 0,m=void 0,h=void 0,g=void 0,b=void 0,w=void 0,E=void 0;A<o;A+=1,p+=3,y+=6)s[A]=A,v=g=i[a[p]*3],E=i[a[p+1]*3],E<v&&(v=E),E>g&&(g=E),E=i[a[p+2]*3],E<v&&(v=E),E>g&&(g=E),m=b=i[a[p]*3+1],E=i[a[p+1]*3+1],E<m&&(m=E),E>b&&(b=E),E=i[a[p+2]*3+1],E<m&&(m=E),E>b&&(b=E),h=w=i[a[p]*3+2],E=i[a[p+1]*3+2],E<h&&(h=E),E>w&&(w=E),E=i[a[p+2]*3+2],E<h&&(h=E),E>w&&(w=E),l[y]=v,l[y+1]=m,l[y+2]=h,l[y+3]=g,l[y+4]=b,l[y+5]=w;else{for(var C=1/0,x=1/0,M=1/0,S=-1/0,P=-1/0,I=-1/0,A=0,p=0,y=0,v=void 0,m=void 0,h=void 0,g=void 0,b=void 0,w=void 0,E=void 0;A<o;A+=1,p+=3,y+=6)s[A]=A,v=g=i[a[p]*3],E=i[a[p+1]*3],E<v&&(v=E),E>g&&(g=E),E=i[a[p+2]*3],E<v&&(v=E),E>g&&(g=E),m=b=i[a[p]*3+1],E=i[a[p+1]*3+1],E<m&&(m=E),E>b&&(b=E),E=i[a[p+2]*3+1],E<m&&(m=E),E>b&&(b=E),h=w=i[a[p]*3+2],E=i[a[p+1]*3+2],E<h&&(h=E),E>w&&(w=E),E=i[a[p+2]*3+2],E<h&&(h=E),E>w&&(w=E),l[y]=v,l[y+1]=m,l[y+2]=h,l[y+3]=g,l[y+4]=b,l[y+5]=w,v<C&&(C=v),g>S&&(S=g),m<x&&(x=m),b>P&&(P=b),h<M&&(M=h),w>I&&(I=w);r=[C,x,M,S,P,I]}var B=new hn(++f,r,0,o,0);u[c++]=B;var k=[],L=[0,1,2],O=function(N,K){return k[K]-k[N]};function Q(N){var K=N.startIndex,j=N.endIndex,U=N.extents;k[0]=U[3]-U[0],k[1]=U[4]-U[1],k[2]=U[5]-U[2],L.sort(O);for(var G=0;G<3;G++){for(var H=L[G],Y=U[H]+U[H+3],W=K,_=j-1,Z=-1,fe=void 0;W<=_;)Z===-1?(fe=s[W],l[fe*6+H]+l[fe*6+H+3]<Y?W++:Z=fe):(fe=s[_],l[fe*6+H]+l[fe*6+H+3]>=Y||(s[W]=fe,s[_]=Z,Z=-1,W++),_--);if(W>K&&W<j){var re=new hn(++f,Lo(s,l,K,W,Fo),K,W,N.deepth+1);re.deepth<e&&re.endIndex-re.startIndex>t&&(u[c++]=re);var ie=new hn(++f,Lo(s,l,W,j,Fo),W,j,N.deepth+1);ie.deepth<e&&ie.endIndex-ie.startIndex>t&&(u[c++]=ie),N.node0=re,N.node1=ie,N.startIndex=0,N.endIndex=0;break}}}for(;c;)Q(u[--c]);return this.offsetArray=s,this.rootNodePacked=pu(B,f+1),u.length=0,this},n.prototype.trianglesInSphere=function(t,e){for(var r=this.positionArray,i=this.indicesArray,a=this.offsetArray,o=this.rootNodePacked,s=new Float32Array(o),l=new Uint32Array(o),u=new Uint16Array(o),c=[0],f=[],A,p,y,v;(A=c.pop())!==void 0;){v=A*yr/4;var m=zi(t.x,s[v],s[v+3])-t.x,h=zi(t.y,s[v+1],s[v+4])-t.y,g=zi(t.z,s[v+2],s[v+5])-t.z;if(m*m+h*h+g*g<=e*e){for(var b=l[v+6];b<l[v+7];b++)f.push(a[b]);v=A*yr/2,p=u[v+16],y=u[v+17],p&&c.push(p),y&&c.push(y)}}for(var w=f.length,E=new Float32Array(w*9),b=0;b<w;b++){var C=f[b];E[b*9]=r[i[C]*3],E[b*9+1]=r[i[C]*3+1],E[b*9+2]=r[i[C]*3+2],E[b*9+3]=r[i[C+1]*3],E[b*9+4]=r[i[C+1]*3+1],E[b*9+5]=r[i[C+1]*3+2],E[b*9+6]=r[i[C+2]*3],E[b*9+7]=r[i[C+2]*3+1],E[b*9+8]=r[i[C+2]*3+2]}return E},n.prototype.intersectRay=function(t,e,r){for(var i=this.positionArray,a=this.indicesArray,o=this.offsetArray,s=this.rootNodePacked,l=new Float32Array(s),u=new Uint32Array(s),c=new Uint16Array(s),f=new Au(1/e.x,1/e.y,1/e.z),A=[0],p,y,v,m;(p=A.pop())!==void 0;)if(m=p*yr/4,vu(t,f,l[m],l[m+1],l[m+2],l[m+3],l[m+4],l[m+5])){for(var h=u[m+6],g=u[m+7],b=void 0,w=void 0,E=void 0,C=t.x,x=t.y,M=t.z,S=e.x,P=e.y,I=e.z,B=void 0,k=void 0,L=void 0,O=void 0,Q=void 0,N=void 0,K=void 0,j=void 0,U=void 0,G=void 0,H=void 0,Y=void 0,W=void 0,_=void 0,Z=void 0,fe=void 0,re=void 0,ie=void 0,ne=void 0,ve=void 0,te=void 0,he=void 0,Ae=void 0,ce=void 0,Ie=void 0,$=void 0,oe=void 0;h<g;h++){if(b=o[h],w=b*3,E=a[w]*3,B=i[E],k=i[++E],L=i[++E],E=a[w+1]*3,O=i[E],Q=i[++E],N=i[++E],E=a[w+2]*3,K=i[E],j=i[++E],U=i[++E],G=O-B,H=Q-k,Y=N-L,W=K-B,_=j-k,Z=U-L,fe=H*Z-Y*_,re=Y*W-G*Z,ie=G*_-H*W,Ae=S*fe+P*re+I*ie,Ae>0)he=1;else if(Ae<0)he=-1,Ae=-Ae;else continue;ne=C-B,ve=x-k,te=M-L,ce=he*(S*(ve*Z-te*_)+P*(te*W-ne*Z)+I*(ne*_-ve*W)),!(ce<0)&&(Ie=he*(S*(H*te-Y*ve)+P*(Y*ne-G*te)+I*(G*ve-H*ne)),!(Ie<0)&&(ce+Ie>Ae||($=-he*(ne*fe+ve*re+te*ie),!($<0)&&(oe=$/Ae,r.push(new mu([B,k,L,O,Q,N,K,j,U],[C+S*oe,x+P*oe,M+I*oe],b))))))}m=p*yr/2,y=c[m+16],v=c[m+17],y&&A.push(y),v&&A.push(v)}return r},n}();function zi(n,t,e){return n<t?t:n>e?e:n}function Lo(n,t,e,r,i){if(e>=r)return[0,0,0,0,0,0];for(var a=1/0,o=1/0,s=1/0,l=-1/0,u=-1/0,c=-1/0,f=e,A=void 0,p=void 0;f<r;f++)A=n[f]*6,p=t[A],p<a&&(a=p),p=t[A+1],p<o&&(o=p),p=t[A+2],p<s&&(s=p),p=t[A+3],p>l&&(l=p),p=t[A+4],p>u&&(u=p),p=t[A+5],p>c&&(c=p);return[a-i,o-i,s-i,l+i,u+i,c+i]}var Oo=1e-6,Vo=function(){function n(t,e){this.positionArray=t,this.indicesArray=e}return n.prototype.createTree=function(t,e,r){e=Math.min(e,16);var i=this.positionArray,a=this.indicesArray,o=a?a.length:i.length/3,s=o>65535?new Uint32Array(o):new Uint16Array(o),l=[],u=0,c=-1;if(r)for(var f=0;f<o;f+=1)s[f]=f;else{for(var A=a?a[0]*3:0,p=i[A],y=i[A+1],v=i[A+2],m=p,h=y,g=v,f=0,b=0,w=void 0,E=void 0,C=void 0;f<o;f+=1,b+=3)s[f]=f,A=(a?a[b]:b)*3,w=i[A],E=i[A+1],C=i[A+2],w<p?p=w:w>m&&(m=w),E<y?y=E:E>h&&(h=E),C<v?v=C:C>g&&(g=C);r=[p,y,v,m,h,g]}var x=new hn(++c,r,0,o,0);l[u++]=x;var M=[],S=[0,1,2],P=function(B,k){return M[k]-M[B]};function I(B){var k=B.startIndex,L=B.endIndex,O=B.extents;M[0]=O[3]-O[0],M[1]=O[4]-O[1],M[2]=O[5]-O[2];for(var Q=S.sort(P)[0],N=(O[Q]+O[Q+3])/2,K=k,j=L-1,U=-1,G,H;K<=j;)U===-1?(G=s[K],H=(a?a[G]:G)*3,i[H+Q]<N?K++:U=G):(G=s[j],H=(a?a[G]:G)*3,i[H+Q]>=N||(s[K]=G,s[j]=U,U=-1,K++),j--);if(K>k){var Y=O.slice();Y[Q+3]=N+Oo;var W=new hn(++c,Y,k,K,B.deepth+1);W.deepth<e&&W.endIndex-W.startIndex>t&&(l[u++]=W),B.node0=W}if(L>K){var _=O.slice();_[Q]=N-Oo;var Z=new hn(++c,_,K,L,B.deepth+1);Z.deepth<e&&Z.endIndex-Z.startIndex>t&&(l[u++]=Z),B.node1=Z}B.startIndex=0,B.endIndex=0}for(;u;)I(l[--u]);return this.offsetArray=s,this.rootNodePacked=pu(x,c+1),l.length=0,this},n.prototype.intersectRay=function(t,e,r,i){for(var a=this.positionArray,o=this.indicesArray,s=this.offsetArray,l=this.rootNodePacked,u=new Float32Array(l),c=new Uint32Array(l),f=new Uint16Array(l),A=r*r,p=new Au(1/e.x,1/e.y,1/e.z),y=[0],v,m,h,g;(v=y.pop())!==void 0;)if(g=v*yr/4,vu(t,p,u[g],u[g+1],u[g+2],u[g+3],u[g+4],u[g+5],r)){for(var b=c[g+6],w=c[g+7],E=void 0,C=void 0,x=void 0,M=void 0,S=void 0,P=void 0,I=void 0,B=void 0,k=void 0,L=void 0,O=void 0,Q=void 0,N=void 0;b<w;b++)E=s[b],C=(o?o[E]:E)*3,x=a[C],M=a[++C],S=a[++C],P=t.x,I=t.y,B=t.z,k=e.x,L=e.y,O=e.z,Q=k*(x-P)+L*(M-I)+O*(S-B),Q>0&&(P+=k*Q,I+=L*Q,B+=O*Q),k=x-P,L=M-I,O=S-B,Q=k*k+L*L+O*O,Q<=A&&i.push(new mu([x,M,S,x,M,S,x,M,S],[P,I,B],E));g=v*yr/2,m=f[g+16],h=f[g+17],m&&y.push(m),h&&y.push(h)}return i},n}();const gu="KGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO3ZhciBYPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gaChyLHQsYSxvLHMpe3RoaXMuaWQ9cix0aGlzLmV4dGVudHM9dCx0aGlzLnN0YXJ0SW5kZXg9YSx0aGlzLmVuZEluZGV4PW8sdGhpcy5kZWVwdGg9c31yZXR1cm4gaH0oKSxSPTYqNCs0KzQrMisyO2Z1bmN0aW9uIG5yKGgscil7Zm9yKHZhciB0PW5ldyBBcnJheUJ1ZmZlcihyKlIpLGE9bmV3IEZsb2F0MzJBcnJheSh0KSxvPW5ldyBVaW50MzJBcnJheSh0KSxzPW5ldyBVaW50MTZBcnJheSh0KSxlPVtoXSx2LG47dj1lLnBvcCgpOyluPXYuaWQqUi80LGFbbl09di5leHRlbnRzWzBdLGFbbisxXT12LmV4dGVudHNbMV0sYVtuKzJdPXYuZXh0ZW50c1syXSxhW24rM109di5leHRlbnRzWzNdLGFbbis0XT12LmV4dGVudHNbNF0sYVtuKzVdPXYuZXh0ZW50c1s1XSxvW24rNl09di5zdGFydEluZGV4LG9bbis3XT12LmVuZEluZGV4LG49di5pZCpSLzIsdi5ub2RlMCYmKHNbbisxNl09di5ub2RlMC5pZCxlLnB1c2godi5ub2RlMCkpLHYubm9kZTEmJihzW24rMTddPXYubm9kZTEuaWQsZS5wdXNoKHYubm9kZTEpKTtyZXR1cm4gdH1mdW5jdGlvbiBhcihoLHIsdCxhLG8scyxlLHYsbil7bj09PXZvaWQgMCYmKG49MCksdD10LW4sYT1hLW4sbz1vLW4scz1zK24sZT1lK24sdj12K247dmFyIHk9e21pbjowLG1heDowfTtyLng+PTA/KHkubWluPSh0LWgueCkqci54LHkubWF4PShzLWgueCkqci54KTooeS5taW49KHMtaC54KSpyLngseS5tYXg9KHQtaC54KSpyLngpO3ZhciBBPXttaW46MCxtYXg6MH07aWYoci55Pj0wPyhBLm1pbj0oYS1oLnkpKnIueSxBLm1heD0oZS1oLnkpKnIueSk6KEEubWluPShlLWgueSkqci55LEEubWF4PShhLWgueSkqci55KSx5Lm1pbj5BLm1heHx8QS5taW4+eS5tYXgpcmV0dXJuITE7QS5taW4+eS5taW4mJih5Lm1pbj1BLm1pbiksQS5tYXg8eS5tYXgmJih5Lm1heD1BLm1heCk7dmFyIHc9e21pbjowLG1heDowfTtyZXR1cm4gci56Pj0wPyh3Lm1pbj0oby1oLnopKnIueix3Lm1heD0odi1oLnopKnIueik6KHcubWluPSh2LWgueikqci56LHcubWF4PShvLWgueikqci56KSwhKHkubWluPncubWF4fHx3Lm1pbj55Lm1heHx8KHcubWluPnkubWluJiYoeS5taW49dy5taW4pLHcubWF4PHkubWF4JiYoeS5tYXg9dy5tYXgpLHkubWF4PDApKX12YXIgdnI9ZnVuY3Rpb24oKXtmdW5jdGlvbiBoKHIsdCxhKXt0aGlzLng9cix0aGlzLnk9dCx0aGlzLno9YX1yZXR1cm4gaC5wcm90b3R5cGUuY29weT1mdW5jdGlvbihyKXtyZXR1cm4gdGhpcy54PXIueCx0aGlzLnk9ci55LHRoaXMuej1yLnosdGhpc30saC5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKHIsdCxhKXtyZXR1cm4gdGhpcy54PXIsdGhpcy55PXQsdGhpcy56PWEsdGhpc30saC5wcm90b3R5cGUuZnJvbUFycmF5PWZ1bmN0aW9uKHIsdCl7cmV0dXJuIHQ9PT12b2lkIDAmJih0PTApLHRoaXMueD1yW3RdLHRoaXMueT1yW3QrMV0sdGhpcy56PXJbdCsyXSx0aGlzfSxoLnByb3RvdHlwZS50b0FycmF5PWZ1bmN0aW9uKHIsdCl7cmV0dXJuIHI9PT12b2lkIDAmJihyPVtdKSx0PT09dm9pZCAwJiYodD0wKSxyW3RdPXRoaXMueCxyW3QrMV09dGhpcy55LHJbdCsyXT10aGlzLnoscn0saC5wcm90b3R5cGUuYWRkPWZ1bmN0aW9uKHIpe3JldHVybiB0aGlzLngrPXIueCx0aGlzLnkrPXIueSx0aGlzLnorPXIueix0aGlzfSxoLnByb3RvdHlwZS5tdWx0aXBseVNjYWxhcj1mdW5jdGlvbihyKXtyZXR1cm4gdGhpcy54Kj1yLHRoaXMueSo9cix0aGlzLnoqPXIsdGhpc30saC5wcm90b3R5cGUuc3ViVmVjdG9ycz1mdW5jdGlvbihyLHQpe3JldHVybiB0aGlzLng9ci54LXQueCx0aGlzLnk9ci55LXQueSx0aGlzLno9ci56LXQueix0aGlzfSxoLnByb3RvdHlwZS5hZGRTY2FsZWRWZWN0b3I9ZnVuY3Rpb24ocix0KXtyZXR1cm4gdGhpcy54Kz1yLngqdCx0aGlzLnkrPXIueSp0LHRoaXMueis9ci56KnQsdGhpc30saC5wcm90b3R5cGUuZG90PWZ1bmN0aW9uKHIpe3JldHVybiB0aGlzLngqci54K3RoaXMueSpyLnkrdGhpcy56KnIuen0saC5wcm90b3R5cGUuY3Jvc3M9ZnVuY3Rpb24ocil7dmFyIHQ9dGhpcy54LGE9dGhpcy55LG89dGhpcy56O3JldHVybiB0aGlzLng9YSpyLnotbypyLnksdGhpcy55PW8qci54LXQqci56LHRoaXMuej10KnIueS1hKnIueCx0aGlzfSxoLnByb3RvdHlwZS5jcm9zc1ZlY3RvcnM9ZnVuY3Rpb24ocix0KXt2YXIgYT1yLngsbz1yLnkscz1yLnosZT10Lngsdj10Lnksbj10Lno7cmV0dXJuIHRoaXMueD1vKm4tcyp2LHRoaXMueT1zKmUtYSpuLHRoaXMuej1hKnYtbyplLHRoaXN9LGgucHJvdG90eXBlLmRpc3RhbmNlVG89ZnVuY3Rpb24ocil7cmV0dXJuIE1hdGguc3FydCh0aGlzLmRpc3RhbmNlVG9TcXVhcmVkKHIpKX0saC5wcm90b3R5cGUuZGlzdGFuY2VUb1NxdWFyZWQ9ZnVuY3Rpb24ocil7dmFyIHQ9dGhpcy54LXIueCxhPXRoaXMueS1yLnksbz10aGlzLnotci56O3JldHVybiB0KnQrYSphK28qb30saC5wcm90b3R5cGUuY2xvbmU9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IGgodGhpcy54LHRoaXMueSx0aGlzLnopfSxofSgpLHNyPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gaChyLHQsYSl7dGhpcy50cmlhbmdsZT1yLHRoaXMuaW50ZXJzZWN0aW9uUG9pbnQ9dCx0aGlzLmluZGV4PWF9cmV0dXJuIGh9KCksdXI9MWUtNix5cj1mdW5jdGlvbigpe2Z1bmN0aW9uIGgocix0KXtpZih0aGlzLnBvc2l0aW9uQXJyYXk9cix0KXRoaXMuaW5kaWNlc0FycmF5PXQ7ZWxzZXtmb3IodmFyIGE9ci5sZW5ndGgvMyxvPWE+NjU1MzU/bmV3IFVpbnQzMkFycmF5KGEpOm5ldyBVaW50MTZBcnJheShhKSxzPTA7czxhO3MrKylvW3NdPXM7dGhpcy5pbmRpY2VzQXJyYXk9b319cmV0dXJuIGgucHJvdG90eXBlLmNyZWF0ZVRyZWU9ZnVuY3Rpb24ocix0LGEpe3Q9TWF0aC5taW4odCwxNik7dmFyIG89dGhpcy5wb3NpdGlvbkFycmF5LHM9dGhpcy5pbmRpY2VzQXJyYXksZT1zLmxlbmd0aC8zLHY9ZT42NTUzNT9uZXcgVWludDMyQXJyYXkoZSk6bmV3IFVpbnQxNkFycmF5KGUpLG49bmV3IEZsb2F0MzJBcnJheShlKjYpLHk9W10sQT0wLHc9LTE7aWYoYSlmb3IodmFyIGw9MCx1PTAscD0wLGM9dm9pZCAwLGQ9dm9pZCAwLFU9dm9pZCAwLEk9dm9pZCAwLGY9dm9pZCAwLE49dm9pZCAwLGk9dm9pZCAwO2w8ZTtsKz0xLHUrPTMscCs9Nil2W2xdPWwsYz1JPW9bc1t1XSozXSxpPW9bc1t1KzFdKjNdLGk8YyYmKGM9aSksaT5JJiYoST1pKSxpPW9bc1t1KzJdKjNdLGk8YyYmKGM9aSksaT5JJiYoST1pKSxkPWY9b1tzW3VdKjMrMV0saT1vW3NbdSsxXSozKzFdLGk8ZCYmKGQ9aSksaT5mJiYoZj1pKSxpPW9bc1t1KzJdKjMrMV0saTxkJiYoZD1pKSxpPmYmJihmPWkpLFU9Tj1vW3NbdV0qMysyXSxpPW9bc1t1KzFdKjMrMl0saTxVJiYoVT1pKSxpPk4mJihOPWkpLGk9b1tzW3UrMl0qMysyXSxpPFUmJihVPWkpLGk+TiYmKE49aSksbltwXT1jLG5bcCsxXT1kLG5bcCsyXT1VLG5bcCszXT1JLG5bcCs0XT1mLG5bcCs1XT1OO2Vsc2V7Zm9yKHZhciB6PTEvMCxqPTEvMCxQPTEvMCxxPS0xLzAsRz0tMS8wLEo9LTEvMCxsPTAsdT0wLHA9MCxjPXZvaWQgMCxkPXZvaWQgMCxVPXZvaWQgMCxJPXZvaWQgMCxmPXZvaWQgMCxOPXZvaWQgMCxpPXZvaWQgMDtsPGU7bCs9MSx1Kz0zLHArPTYpdltsXT1sLGM9ST1vW3NbdV0qM10saT1vW3NbdSsxXSozXSxpPGMmJihjPWkpLGk+SSYmKEk9aSksaT1vW3NbdSsyXSozXSxpPGMmJihjPWkpLGk+SSYmKEk9aSksZD1mPW9bc1t1XSozKzFdLGk9b1tzW3UrMV0qMysxXSxpPGQmJihkPWkpLGk+ZiYmKGY9aSksaT1vW3NbdSsyXSozKzFdLGk8ZCYmKGQ9aSksaT5mJiYoZj1pKSxVPU49b1tzW3VdKjMrMl0saT1vW3NbdSsxXSozKzJdLGk8VSYmKFU9aSksaT5OJiYoTj1pKSxpPW9bc1t1KzJdKjMrMl0saTxVJiYoVT1pKSxpPk4mJihOPWkpLG5bcF09YyxuW3ArMV09ZCxuW3ArMl09VSxuW3ArM109SSxuW3ArNF09ZixuW3ArNV09TixjPHomJih6PWMpLEk+cSYmKHE9SSksZDxqJiYoaj1kKSxmPkcmJihHPWYpLFU8UCYmKFA9VSksTj5KJiYoSj1OKTthPVt6LGosUCxxLEcsSl19dmFyIFM9bmV3IFgoKyt3LGEsMCxlLDApO3lbQSsrXT1TO3ZhciBWPVtdLE09WzAsMSwyXSxUPWZ1bmN0aW9uKEIsRil7cmV0dXJuIFZbRl0tVltCXX07ZnVuY3Rpb24gSChCKXt2YXIgRj1CLnN0YXJ0SW5kZXgsQz1CLmVuZEluZGV4LCQ9Qi5leHRlbnRzO1ZbMF09JFszXS0kWzBdLFZbMV09JFs0XS0kWzFdLFZbMl09JFs1XS0kWzJdLE0uc29ydChUKTtmb3IodmFyIEw9MDtMPDM7TCsrKXtmb3IodmFyIFc9TVtMXSxRPSRbV10rJFtXKzNdLGs9RixfPUMtMSxLPS0xLEU9dm9pZCAwO2s8PV87KUs9PT0tMT8oRT12W2tdLG5bRSo2K1ddK25bRSo2K1crM108UT9rKys6Sz1FKTooRT12W19dLG5bRSo2K1ddK25bRSo2K1crM10+PVF8fCh2W2tdPUUsdltfXT1LLEs9LTEsaysrKSxfLS0pO2lmKGs+RiYmazxDKXt2YXIgeD1uZXcgWCgrK3csaHIodixuLEYsayx1ciksRixrLEIuZGVlcHRoKzEpO3guZGVlcHRoPHQmJnguZW5kSW5kZXgteC5zdGFydEluZGV4PnImJih5W0ErK109eCk7dmFyIFk9bmV3IFgoKyt3LGhyKHYsbixrLEMsdXIpLGssQyxCLmRlZXB0aCsxKTtZLmRlZXB0aDx0JiZZLmVuZEluZGV4LVkuc3RhcnRJbmRleD5yJiYoeVtBKytdPVkpLEIubm9kZTA9eCxCLm5vZGUxPVksQi5zdGFydEluZGV4PTAsQi5lbmRJbmRleD0wO2JyZWFrfX19Zm9yKDtBOylIKHlbLS1BXSk7cmV0dXJuIHRoaXMub2Zmc2V0QXJyYXk9dix0aGlzLnJvb3ROb2RlUGFja2VkPW5yKFMsdysxKSx5Lmxlbmd0aD0wLHRoaXN9LGgucHJvdG90eXBlLnRyaWFuZ2xlc0luU3BoZXJlPWZ1bmN0aW9uKHIsdCl7Zm9yKHZhciBhPXRoaXMucG9zaXRpb25BcnJheSxvPXRoaXMuaW5kaWNlc0FycmF5LHM9dGhpcy5vZmZzZXRBcnJheSxlPXRoaXMucm9vdE5vZGVQYWNrZWQsdj1uZXcgRmxvYXQzMkFycmF5KGUpLG49bmV3IFVpbnQzMkFycmF5KGUpLHk9bmV3IFVpbnQxNkFycmF5KGUpLEE9WzBdLHc9W10sbCx1LHAsYzsobD1BLnBvcCgpKSE9PXZvaWQgMDspe2M9bCpSLzQ7dmFyIGQ9cnIoci54LHZbY10sdltjKzNdKS1yLngsVT1ycihyLnksdltjKzFdLHZbYys0XSktci55LEk9cnIoci56LHZbYysyXSx2W2MrNV0pLXIuejtpZihkKmQrVSpVK0kqSTw9dCp0KXtmb3IodmFyIGY9bltjKzZdO2Y8bltjKzddO2YrKyl3LnB1c2goc1tmXSk7Yz1sKlIvMix1PXlbYysxNl0scD15W2MrMTddLHUmJkEucHVzaCh1KSxwJiZBLnB1c2gocCl9fWZvcih2YXIgTj13Lmxlbmd0aCxpPW5ldyBGbG9hdDMyQXJyYXkoTio5KSxmPTA7ZjxOO2YrKyl7dmFyIHo9d1tmXTtpW2YqOV09YVtvW3pdKjNdLGlbZio5KzFdPWFbb1t6XSozKzFdLGlbZio5KzJdPWFbb1t6XSozKzJdLGlbZio5KzNdPWFbb1t6KzFdKjNdLGlbZio5KzRdPWFbb1t6KzFdKjMrMV0saVtmKjkrNV09YVtvW3orMV0qMysyXSxpW2YqOSs2XT1hW29beisyXSozXSxpW2YqOSs3XT1hW29beisyXSozKzFdLGlbZio5KzhdPWFbb1t6KzJdKjMrMl19cmV0dXJuIGl9LGgucHJvdG90eXBlLmludGVyc2VjdFJheT1mdW5jdGlvbihyLHQsYSl7Zm9yKHZhciBvPXRoaXMucG9zaXRpb25BcnJheSxzPXRoaXMuaW5kaWNlc0FycmF5LGU9dGhpcy5vZmZzZXRBcnJheSx2PXRoaXMucm9vdE5vZGVQYWNrZWQsbj1uZXcgRmxvYXQzMkFycmF5KHYpLHk9bmV3IFVpbnQzMkFycmF5KHYpLEE9bmV3IFVpbnQxNkFycmF5KHYpLHc9bmV3IHZyKDEvdC54LDEvdC55LDEvdC56KSxsPVswXSx1LHAsYyxkOyh1PWwucG9wKCkpIT09dm9pZCAwOylpZihkPXUqUi80LGFyKHIsdyxuW2RdLG5bZCsxXSxuW2QrMl0sbltkKzNdLG5bZCs0XSxuW2QrNV0pKXtmb3IodmFyIFU9eVtkKzZdLEk9eVtkKzddLGY9dm9pZCAwLE49dm9pZCAwLGk9dm9pZCAwLHo9ci54LGo9ci55LFA9ci56LHE9dC54LEc9dC55LEo9dC56LFM9dm9pZCAwLFY9dm9pZCAwLE09dm9pZCAwLFQ9dm9pZCAwLEg9dm9pZCAwLEI9dm9pZCAwLEY9dm9pZCAwLEM9dm9pZCAwLCQ9dm9pZCAwLEw9dm9pZCAwLFc9dm9pZCAwLFE9dm9pZCAwLGs9dm9pZCAwLF89dm9pZCAwLEs9dm9pZCAwLEU9dm9pZCAwLHg9dm9pZCAwLFk9dm9pZCAwLFo9dm9pZCAwLGI9dm9pZCAwLGc9dm9pZCAwLE89dm9pZCAwLEQ9dm9pZCAwLGlyPXZvaWQgMCx0cj12b2lkIDAsb3I9dm9pZCAwLG09dm9pZCAwO1U8STtVKyspe2lmKGY9ZVtVXSxOPWYqMyxpPXNbTl0qMyxTPW9baV0sVj1vWysraV0sTT1vWysraV0saT1zW04rMV0qMyxUPW9baV0sSD1vWysraV0sQj1vWysraV0saT1zW04rMl0qMyxGPW9baV0sQz1vWysraV0sJD1vWysraV0sTD1ULVMsVz1ILVYsUT1CLU0saz1GLVMsXz1DLVYsSz0kLU0sRT1XKkstUSpfLHg9USprLUwqSyxZPUwqXy1XKmssRD1xKkUrRyp4K0oqWSxEPjApTz0xO2Vsc2UgaWYoRDwwKU89LTEsRD0tRDtlbHNlIGNvbnRpbnVlO1o9ei1TLGI9ai1WLGc9UC1NLGlyPU8qKHEqKGIqSy1nKl8pK0cqKGcqay1aKkspK0oqKFoqXy1iKmspKSwhKGlyPDApJiYodHI9TyoocSooVypnLVEqYikrRyooUSpaLUwqZykrSiooTCpiLVcqWikpLCEodHI8MCkmJihpcit0cj5EfHwob3I9LU8qKFoqRStiKngrZypZKSwhKG9yPDApJiYobT1vci9ELGEucHVzaChuZXcgc3IoW1MsVixNLFQsSCxCLEYsQywkXSxbeitxKm0saitHKm0sUCtKKm1dLGYpKSkpKSl9ZD11KlIvMixwPUFbZCsxNl0sYz1BW2QrMTddLHAmJmwucHVzaChwKSxjJiZsLnB1c2goYyl9cmV0dXJuIGF9LGh9KCk7ZnVuY3Rpb24gcnIoaCxyLHQpe3JldHVybiBoPHI/cjpoPnQ/dDpofWZ1bmN0aW9uIGhyKGgscix0LGEsbyl7aWYodD49YSlyZXR1cm5bMCwwLDAsMCwwLDBdO2Zvcih2YXIgcz0xLzAsZT0xLzAsdj0xLzAsbj0tMS8wLHk9LTEvMCxBPS0xLzAsdz10LGw9dm9pZCAwLHU9dm9pZCAwO3c8YTt3KyspbD1oW3ddKjYsdT1yW2xdLHU8cyYmKHM9dSksdT1yW2wrMV0sdTxlJiYoZT11KSx1PXJbbCsyXSx1PHYmJih2PXUpLHU9cltsKzNdLHU+biYmKG49dSksdT1yW2wrNF0sdT55JiYoeT11KSx1PXJbbCs1XSx1PkEmJihBPXUpO3JldHVybltzLW8sZS1vLHYtbyxuK28seStvLEErb119dmFyIGVyPTFlLTYsZnI9ZnVuY3Rpb24oKXtmdW5jdGlvbiBoKHIsdCl7dGhpcy5wb3NpdGlvbkFycmF5PXIsdGhpcy5pbmRpY2VzQXJyYXk9dH1yZXR1cm4gaC5wcm90b3R5cGUuY3JlYXRlVHJlZT1mdW5jdGlvbihyLHQsYSl7dD1NYXRoLm1pbih0LDE2KTt2YXIgbz10aGlzLnBvc2l0aW9uQXJyYXkscz10aGlzLmluZGljZXNBcnJheSxlPXM/cy5sZW5ndGg6by5sZW5ndGgvMyx2PWU+NjU1MzU/bmV3IFVpbnQzMkFycmF5KGUpOm5ldyBVaW50MTZBcnJheShlKSxuPVtdLHk9MCxBPS0xO2lmKGEpZm9yKHZhciB3PTA7dzxlO3crPTEpdlt3XT13O2Vsc2V7Zm9yKHZhciBsPXM/c1swXSozOjAsdT1vW2xdLHA9b1tsKzFdLGM9b1tsKzJdLGQ9dSxVPXAsST1jLHc9MCxmPTAsTj12b2lkIDAsaT12b2lkIDAsej12b2lkIDA7dzxlO3crPTEsZis9Myl2W3ddPXcsbD0ocz9zW2ZdOmYpKjMsTj1vW2xdLGk9b1tsKzFdLHo9b1tsKzJdLE48dT91PU46Tj5kJiYoZD1OKSxpPHA/cD1pOmk+VSYmKFU9aSksejxjP2M9ejp6PkkmJihJPXopO2E9W3UscCxjLGQsVSxJXX12YXIgaj1uZXcgWCgrK0EsYSwwLGUsMCk7blt5KytdPWo7dmFyIFA9W10scT1bMCwxLDJdLEc9ZnVuY3Rpb24oUyxWKXtyZXR1cm4gUFtWXS1QW1NdfTtmdW5jdGlvbiBKKFMpe3ZhciBWPVMuc3RhcnRJbmRleCxNPVMuZW5kSW5kZXgsVD1TLmV4dGVudHM7UFswXT1UWzNdLVRbMF0sUFsxXT1UWzRdLVRbMV0sUFsyXT1UWzVdLVRbMl07Zm9yKHZhciBIPXEuc29ydChHKVswXSxCPShUW0hdK1RbSCszXSkvMixGPVYsQz1NLTEsJD0tMSxMLFc7Rjw9QzspJD09PS0xPyhMPXZbRl0sVz0ocz9zW0xdOkwpKjMsb1tXK0hdPEI/RisrOiQ9TCk6KEw9dltDXSxXPShzP3NbTF06TCkqMyxvW1crSF0+PUJ8fCh2W0ZdPUwsdltDXT0kLCQ9LTEsRisrKSxDLS0pO2lmKEY+Vil7dmFyIFE9VC5zbGljZSgpO1FbSCszXT1CK2VyO3ZhciBrPW5ldyBYKCsrQSxRLFYsRixTLmRlZXB0aCsxKTtrLmRlZXB0aDx0JiZrLmVuZEluZGV4LWsuc3RhcnRJbmRleD5yJiYoblt5KytdPWspLFMubm9kZTA9a31pZihNPkYpe3ZhciBfPVQuc2xpY2UoKTtfW0hdPUItZXI7dmFyIEs9bmV3IFgoKytBLF8sRixNLFMuZGVlcHRoKzEpO0suZGVlcHRoPHQmJksuZW5kSW5kZXgtSy5zdGFydEluZGV4PnImJihuW3krK109SyksUy5ub2RlMT1LfVMuc3RhcnRJbmRleD0wLFMuZW5kSW5kZXg9MH1mb3IoO3k7KUooblstLXldKTtyZXR1cm4gdGhpcy5vZmZzZXRBcnJheT12LHRoaXMucm9vdE5vZGVQYWNrZWQ9bnIoaixBKzEpLG4ubGVuZ3RoPTAsdGhpc30saC5wcm90b3R5cGUuaW50ZXJzZWN0UmF5PWZ1bmN0aW9uKHIsdCxhLG8pe2Zvcih2YXIgcz10aGlzLnBvc2l0aW9uQXJyYXksZT10aGlzLmluZGljZXNBcnJheSx2PXRoaXMub2Zmc2V0QXJyYXksbj10aGlzLnJvb3ROb2RlUGFja2VkLHk9bmV3IEZsb2F0MzJBcnJheShuKSxBPW5ldyBVaW50MzJBcnJheShuKSx3PW5ldyBVaW50MTZBcnJheShuKSxsPWEqYSx1PW5ldyB2cigxL3QueCwxL3QueSwxL3QueikscD1bMF0sYyxkLFUsSTsoYz1wLnBvcCgpKSE9PXZvaWQgMDspaWYoST1jKlIvNCxhcihyLHUseVtJXSx5W0krMV0seVtJKzJdLHlbSSszXSx5W0krNF0seVtJKzVdLGEpKXtmb3IodmFyIGY9QVtJKzZdLE49QVtJKzddLGk9dm9pZCAwLHo9dm9pZCAwLGo9dm9pZCAwLFA9dm9pZCAwLHE9dm9pZCAwLEc9dm9pZCAwLEo9dm9pZCAwLFM9dm9pZCAwLFY9dm9pZCAwLE09dm9pZCAwLFQ9dm9pZCAwLEg9dm9pZCAwLEI9dm9pZCAwO2Y8TjtmKyspaT12W2ZdLHo9KGU/ZVtpXTppKSozLGo9c1t6XSxQPXNbKyt6XSxxPXNbKyt6XSxHPXIueCxKPXIueSxTPXIueixWPXQueCxNPXQueSxUPXQueixIPVYqKGotRykrTSooUC1KKStUKihxLVMpLEg+MCYmKEcrPVYqSCxKKz1NKkgsUys9VCpIKSxWPWotRyxNPVAtSixUPXEtUyxIPVYqVitNKk0rVCpULEg8PWwmJm8ucHVzaChuZXcgc3IoW2osUCxxLGosUCxxLGosUCxxXSxbRyxKLFNdLGkpKTtJPWMqUi8yLGQ9d1tJKzE2XSxVPXdbSSsxN10sZCYmcC5wdXNoKGQpLFUmJnAucHVzaChVKX1yZXR1cm4gb30saH0oKTtmdW5jdGlvbiBBcihoKXtvbm1lc3NhZ2U9ZnVuY3Rpb24ocil7UHJvbWlzZS5yZXNvbHZlKHIuZGF0YSkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gaCh0KX0pLnRoZW4oZnVuY3Rpb24odCl7dmFyIGE9dC5vdXRwdXQsbz10LnRyYW5zZmVyO3JldHVybiBwb3N0TWVzc2FnZShhLG8pfSkuY2F0Y2goZnVuY3Rpb24odCl7cmV0dXJuIHBvc3RNZXNzYWdlKHskJGVycm9yOnR9KX0pfX1BcihmdW5jdGlvbihoKXtyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGgpLnRoZW4oZnVuY3Rpb24ocil7Zm9yKHZhciB0PVtdLGE9W10sbz0wLHM9cjtvPHMubGVuZ3RoO28rKyl7dmFyIGU9c1tvXSx2PXZvaWQgMDtpZihlLnR5cGU9PT0ibWVzaCIpdj1uZXcgeXIoZS5wb3NpdGlvbkFycmF5LGUuaW5kaWNlc0FycmF5KTtlbHNlIGlmKGUudHlwZT09PSJwb2ludHMiKXY9bmV3IGZyKGUucG9zaXRpb25BcnJheSxlLmluZGljZXNBcnJheSk7ZWxzZSB0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgVHlwZSIpO3YuY3JlYXRlVHJlZShlLm1heEl0ZW1QZXJOb2RlLGUubWF4VHJlZURlcHRoLGUuZXh0ZW50cyk7dmFyIG49e29mZnNldEFycmF5OnYub2Zmc2V0QXJyYXksaW5kaWNlc0FycmF5OnYuaW5kaWNlc0FycmF5LHBvc2l0aW9uQXJyYXk6di5wb3NpdGlvbkFycmF5LHJvb3ROb2RlUGFja2VkOnYucm9vdE5vZGVQYWNrZWR9O3QucHVzaChuKTtmb3IodmFyIHkgaW4gbil7dmFyIEE9blt5XTtBJiYoQSBpbnN0YW5jZW9mIEFycmF5QnVmZmVyP2EuaW5kZXhPZihBKT09PS0xJiZhLnB1c2goQSk6QS5idWZmZXIgaW5zdGFuY2VvZiBBcnJheUJ1ZmZlciYmYS5pbmRleE9mKEEuYnVmZmVyKT09LTEmJmEucHVzaChBLmJ1ZmZlcikpfX1yZXR1cm57b3V0cHV0OnQsdHJhbnNmZXI6YX19KX0pfSkoKTsK",No=typeof window!="undefined"&&window.Blob&&new Blob([atob(gu)],{type:"text/javascript;charset=utf-8"});function Vc(n){let t;try{if(t=No&&(window.URL||window.webkitURL).createObjectURL(No),!t)throw"";const e=new Worker(t,{name:n==null?void 0:n.name});return e.addEventListener("error",()=>{(window.URL||window.webkitURL).revokeObjectURL(t)}),e}catch(e){return new Worker("data:application/javascript;base64,"+gu,{name:n==null?void 0:n.name})}finally{t&&(window.URL||window.webkitURL).revokeObjectURL(t)}}var yu=function(){function n(t,e){this.pool=e,this.workerCreator=t,this.queue=[],this.workers=[],this.workersResolver=[],this.workerStatus=0}return n.prototype.initWorker=function(t){if(this.workerCreator&&!this.workers[t]){var e=this.workerCreator();e.addEventListener("message",this.onMessage.bind(this,t)),this.workers[t]=e}},n.prototype.getIdleWorker=function(){for(var t=0;t<this.pool;t++)if(!(this.workerStatus&1<<t))return t;return-1},n.prototype.onMessage=function(t,e){var r=this.workersResolver[t],i=r.resolve,a=r.reject;if(e.data&&"$$error"in e.data?a(e.data.$$error):i(e.data),this.queue.length){var o=this.queue.shift(),s=o.resolve,l=o.reject,u=o.input,c=o.transfer;this.workersResolver[t]={resolve:s,reject:l},this.workers[t].postMessage(u,c)}else this.workerStatus^=1<<t},n.prototype.postMessage=function(t,e){var r=this;return e===void 0&&(e=[]),new Promise(function(i,a){var o=r.getIdleWorker();o!==-1?(r.initWorker(o),r.workerStatus|=1<<o,r.workersResolver[o]={resolve:i,reject:a},r.workers[o].postMessage(t,e)):r.queue.push({resolve:i,reject:a,input:t,transfer:e})})},n.prototype.dispose=function(){this.workers.forEach(function(t){return t.terminate()}),this.workersResolver.length=0,this.workers.length=0,this.queue.length=0,this.workerStatus=0},n}(),Nc=new yu(function(){return new Vc},4),si=new Map,Gi=new Map,pn=new d.Ray,Qo=new d.Matrix3,Fn=new d.Matrix4,bu=new d.Vector3,Qc=new d.Vector3,Dc=new d.Vector3,Uc=new d.Triangle;function Jn(n){for(var t=n.count,e=n.itemSize,r=n.data,i=n.offset,a=t*e,o=new n.array.constructor(a),s=0;s<t;s++)for(var l=s*r.stride+i,u=0;u<e;u++)o[s*e+u]=r.array[l+u];return new d.BufferAttribute(o,n.itemSize,n.normalized)}function zc(n,t,e,r){var i,a=n.matrixWorld;Fn.getInverse(a),pn.copy(e.ray).applyMatrix4(Fn);for(var o=t.intersectRay(pn.origin,pn.direction,[]),s=n.geometry,l=n.material,u=s.groups,c=s.index,f=0,A=o.length;f<A;f++){var p=o[f],y=p.triangle,v=p.index,m=p.intersectionPoint,h=new d.Vector3(m[0],m[1],m[2]).applyMatrix4(a),g=e.ray.origin.distanceTo(h);if(!(g<e.near||g>e.far)){var b=void 0;if(Array.isArray(l)){if(u)for(var w=v*3,E=0,C=u;E<C.length;E++){var x=C[E];if(w>=x.start&&w-x.start<x.count){b=l[(i=x.materialIndex)!==null&&i!==void 0?i:0];break}}}else b=l;if(b){var M=Uc.set(bu.set(y[0],y[1],y[2]).applyMatrix4(a),Qc.set(y[3],y[4],y[5]).applyMatrix4(a),Dc.set(y[6],y[7],y[8]).applyMatrix4(a)).getNormal(new d.Vector3),S=v*3,P=new d.Face3(c?c.array[S]:S,c?c.array[S+1]:S+1,c?c.array[S+2]:S+2,M),I=e.ray.direction.dot(M);b.side===d.FrontSide&&I>=0||b.side===d.BackSide&&I<=0||r.push({distance:g,object:n,face:P,point:h,distanceToRay:0,faceIndex:v})}}}}function Gc(n,t,e,r){var i,a,o=n.matrixWorld;Qo.getNormalMatrix(o),Fn.getInverse(o);var s=((a=(i=e.params.Points)===null||i===void 0?void 0:i.threshold)!==null&&a!==void 0?a:1)*Fn.getMaxScaleOnAxis();pn.copy(e.ray).applyMatrix4(Fn);for(var l=t.intersectRay(pn.origin,pn.direction,s,[]),u=n.geometry,c=u.index,f=u.getAttribute("normal"),A=0,p=l.length;A<p;A++){var y=l[A],v=y.triangle,m=y.index,h=y.intersectionPoint,g=new d.Vector3(h[0],h[1],h[2]).applyMatrix4(o),b=e.ray.origin.distanceTo(g);if(!(b<e.near||b>e.far)){var w=bu.set(v[0],v[1],v[2]).applyMatrix4(o),E=c?c.array[m]:m,C=void 0;f instanceof d.BufferAttribute&&(C=new d.Vector3().fromBufferAttribute(f,E).applyNormalMatrix(Qo));var x=new d.Face3(E,E,E,C);r.push({distance:b,object:n,face:x,point:g,distanceToRay:g.distanceTo(w),index:m})}}}function Do(n,t){var e=n.raycast,r=function(i,a){var o=si.get(this);o?zc(this,o,i,a):e.call(this,i,a)};return n.raycast=r,si.set(n,t),function(){si.delete(n),n.raycast===r&&(n.raycast=e)}}function Uo(n,t){var e=n.raycast,r=function(i,a){var o=Gi.get(this);o?Gc(this,o,i,a):e.call(this,i,a)};return n.raycast=r,Gi.set(n,t),function(){Gi.delete(n),n.raycast===r&&(n.raycast=e)}}function Hc(n,t,e,r){t===void 0&&(t=!0),e===void 0&&(e=100),r===void 0&&(r=10);var i=[];return n.traverse(function(a){if((a instanceof d.Mesh||a instanceof d.Points)&&a.geometry instanceof d.BufferGeometry){var o=a.geometry.getAttribute("position"),s=a.geometry.index;(o instanceof d.InterleavedBufferAttribute||s&&s instanceof d.InterleavedBufferAttribute)&&(t=!1,i.push(a)),o instanceof d.BufferAttribute&&i.push(a)}}),t?Promise.resolve().then(function(){for(var a,o,s=[],l=[],u=0;u<i.length;u++){var c=i[u];if(c instanceof d.Mesh){if(c.geometry instanceof d.BufferGeometry){var f=c.geometry.getAttribute("position");if(f instanceof d.BufferAttribute){var A=f.array,p=(a=c.geometry.getIndex())===null||a===void 0?void 0:a.array,y=c.geometry.boundingBox,v=y?[y.min.x,y.min.y,y.min.z,y.max.x,y.max.y,y.max.z]:void 0,m={type:"mesh",positionArray:A,indicesArray:p,maxItemPerNode:e,maxTreeDepth:r,extents:v};s.push(m);for(var h in m){var g=m[h];g&&(g instanceof ArrayBuffer?l.indexOf(g)===-1&&l.push(g):g.buffer instanceof ArrayBuffer&&l.indexOf(g.buffer)===-1&&l.push(g.buffer))}}}}else if(c instanceof d.Points&&c.geometry instanceof d.BufferGeometry){var f=c.geometry.getAttribute("position");if(f instanceof d.BufferAttribute){var A=f.array,p=(o=c.geometry.getIndex())===null||o===void 0?void 0:o.array,y=c.geometry.boundingBox,v=y?[y.min.x,y.min.y,y.min.z,y.max.x,y.max.y,y.max.z]:void 0,m={type:"points",positionArray:A,indicesArray:p,maxItemPerNode:e,maxTreeDepth:r,extents:v};s.push(m);for(var b in m){var g=m[b];g&&(g instanceof ArrayBuffer?l.indexOf(g)===-1&&l.push(g):g.buffer instanceof ArrayBuffer&&l.indexOf(g.buffer)===-1&&l.push(g.buffer))}}}}return Nc.postMessage(s,l)}).then(function(a){for(var o=[],s=0;s<i.length;s++){var l=i[s],u=a[s];if(l instanceof d.Mesh){if(l.geometry instanceof d.BufferGeometry){var c=l.geometry.getAttribute("position");if(c instanceof d.BufferAttribute){c.array=u.positionArray;var f=l.geometry.getIndex();f&&u.indicesArray&&(f.array=u.indicesArray);var A=new ko(u.positionArray,u.indicesArray);A.offsetArray=u.offsetArray,A.rootNodePacked=u.rootNodePacked;var p=Do(l,A);o.push(p)}}}else if(l instanceof d.Points&&l.geometry instanceof d.BufferGeometry){var c=l.geometry.getAttribute("position");if(c instanceof d.BufferAttribute){c.array=u.positionArray;var f=l.geometry.getIndex();f&&u.indicesArray&&(f.array=u.indicesArray);var A=new Vo(u.positionArray,u.indicesArray);A.offsetArray=u.offsetArray,A.rootNodePacked=u.rootNodePacked;var p=Uo(l,A);o.push(p)}}}return function(){for(var y=0,v=o;y<v.length;y++){var m=v[y];m()}o.length=0}}):Promise.resolve().then(function(){for(var a=[],o=0,s=i;o<s.length;o++){var l=s[o];if(l instanceof d.Mesh){if(l.geometry instanceof d.BufferGeometry){var u=l.geometry.getAttribute("position"),c=l.geometry.getIndex();if(u instanceof d.InterleavedBufferAttribute&&(u=Jn(u)),c&&c instanceof d.InterleavedBufferAttribute&&(c=Jn(c)),u instanceof d.BufferAttribute){var f=u.array,A=c==null?void 0:c.array,p=l.geometry.boundingBox,y=p?[p.min.x,p.min.y,p.min.z,p.max.x,p.max.y,p.max.z]:void 0,v=new ko(f,A);v.createTree(e,r,y);var m=Do(l,v);a.push(m)}}}else if(l instanceof d.Points&&l.geometry instanceof d.BufferGeometry){var u=l.geometry.getAttribute("position"),c=l.geometry.getIndex();if(u instanceof d.InterleavedBufferAttribute&&(u=Jn(u)),c&&c instanceof d.InterleavedBufferAttribute&&(c=Jn(c)),u instanceof d.BufferAttribute){var f=u.array,A=c==null?void 0:c.array,p=l.geometry.boundingBox,y=p?[p.min.x,p.min.y,p.min.z,p.max.x,p.max.y,p.max.z]:void 0,v=new Vo(f,A);v.createTree(e,r,y);var m=Uo(l,v);a.push(m)}}}return function(){for(var h=0,g=a;h<g.length;h++){var b=g[h];b()}a.length=0}})}var Kc=new d.Vector3,qc=new d.Vector3,jc=new d.Vector3,wu=function(n){de(t,n);function t(e,r){var i=n.call(this)||this;return i.renderOrder=-4,i.disposers=[r],i.add(e),i}return t.prototype.generateBvhTree=function(){var e=this;return Hc(this,!0,200,10).then(function(r){e.disposers.push(r)})},t.prototype.intersectRaycaster=function(e,r,i){var a=this;r===void 0&&(r=!0),i===void 0&&(i=[]);for(var o=this.children.slice(),s;s=o.pop();)if(s.visible){s.raycast(e,i);for(var l=0,u=s.children.length;l<u;l++)o.push(s.children[l])}return i.forEach(function(c){var f,A,p=0;if((c.object instanceof Ct||c.object instanceof ar)&&c.face){var y=Array.isArray(c.object.material)?c.object.material[c.face.materialIndex]:c.object.material;if(y)if(y.defines.USE_VERTEX_FLOOR){var v=(f=c.object.geometry.attributes.position)===null||f===void 0?void 0:f.array,m=(A=c.object.geometry.attributes.floor)===null||A===void 0?void 0:A.array;if(v&&m){var h=Kc.set(v[c.face.a*3],v[c.face.a*3+1],v[c.face.a*3+2]).applyMatrix4(a.matrixWorld),g=qc.set(v[c.face.b*3],v[c.face.b*3+1],v[c.face.b*3+2]).applyMatrix4(a.matrixWorld),b=jc.set(v[c.face.c*3],v[c.face.c*3+1],v[c.face.c*3+2]).applyMatrix4(a.matrixWorld),w=c.point.distanceTo(h),E=c.point.distanceTo(g),C=c.point.distanceTo(b);p=Math.round((w*m[c.face.a]+E*m[c.face.b]+C*m[c.face.c])/(w+E+C))}}else p=y.floor}c.floor=p}),r&&i.sort(function(c,f){return c.distance-f.distance}),i},t.prototype.dispose=function(){for(var e=0,r=this.disposers;e<r.length;e++){var i=r[e];i()}this.disposers.length=0},t}(d.Group);function gt(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];var e=[];n=n.map(function(s){return(s!=null?s:"").trim()}).filter(function(s){return s.length>0&&!/^\/+$/.test(s)});for(var r=0;r<n.length;r++){var i=r===0,a=r===n.length-1,o=n[r];i||(o=o.replace(/^\.\//,"").replace(/^\/+/,"")),a||(o=o.replace(/\/+$/,"")),e.push(o)}return e.join("/")}function wr(n){return n.indexOf("//")===0||/^[0-9a-z]+\:/i.test(n)}function Eu(n,t){if(n.content&&n.content.uri&&(wr(n.content.uri)||(n.content.uri=gt(t,n.content.uri))),n.children)for(var e=0,r=n.children;e<r.length;e++){var i=r[e];Eu(i,t)}return n}function zo(n,t){return n.asset.overview&&(wr(n.asset.overview.imageFile)||(n.asset.overview.imageFile=gt(t,n.asset.overview.imageFile)),wr(n.asset.overview.worldFile)||(n.asset.overview.worldFile=gt(t,n.asset.overview.worldFile))),Eu(n.root,t),n}function xu(n,t){return(t[0]==="?"||t[0]==="&")&&(t=t.slice(1)),t?((n[n.length-1]==="?"||n[n.length-1]==="&")&&(n=n.slice(0,-1)),n.indexOf("?")>=0?"".concat(n,"&").concat(t):"".concat(n,"?").concat(t)):n}var Hi=4;function Cu(n,t,e){var r=new DataView(t);if(n.magic=r.getUint32(e,!0),e+=Hi,n.version=r.getUint32(e,!0),e+=Hi,n.byteLength=r.getUint32(e,!0),e+=Hi,n.version!==1)throw new Error("3D Tile Version ".concat(n.version," not supported"));return e}var tr,Ze;(function(n){n[n.BYTE=5120]="BYTE",n[n.UNSIGNED_BYTE=5121]="UNSIGNED_BYTE",n[n.SHORT=5122]="SHORT",n[n.UNSIGNED_SHORT=5123]="UNSIGNED_SHORT",n[n.INT=5124]="INT",n[n.UNSIGNED_INT=5125]="UNSIGNED_INT",n[n.FLOAT=5126]="FLOAT",n[n.DOUBLE=5130]="DOUBLE"})(Ze||(Ze={}));var Wc=(tr={},tr[Ze.DOUBLE]=Float64Array,tr[Ze.FLOAT]=Float32Array,tr[Ze.UNSIGNED_SHORT]=Uint16Array,tr[Ze.UNSIGNED_INT]=Uint32Array,tr[Ze.UNSIGNED_BYTE]=Uint8Array,tr[Ze.BYTE]=Int8Array,tr[Ze.SHORT]=Int16Array,tr[Ze.INT]=Int32Array,tr),Xc={DOUBLE:Ze.DOUBLE,FLOAT:Ze.FLOAT,UNSIGNED_SHORT:Ze.UNSIGNED_SHORT,UNSIGNED_INT:Ze.UNSIGNED_INT,UNSIGNED_BYTE:Ze.UNSIGNED_BYTE,BYTE:Ze.BYTE,SHORT:Ze.SHORT,INT:Ze.INT};function vi(n){var t=Wc[n];if(!t)throw new Error("Failed to convert GL type");return t}function Ki(n){var t=vi(n);return t.BYTES_PER_ELEMENT}function Go(n,t,e,r){e===void 0&&(e=0);var i=vi(n);if(e%Ki(n)!==0){var a=r?t.slice(e,e+r*Ki(n)):t.slice(e);return new i(a)}else return new i(t,e,r!=null?r:(t.byteLength-e)/Ki(n))}function _c(n){var t=Xc[n];if(!t)throw new Error("Failed to convert GL type");return t}var Mu=function(){function n(t,e){this.featuresLength=0,this.cachedTypedArrays={},this.json=t,this.buffer=e;var r=this.getGlobalProperty("POINTS_LENGTH",Ze.UNSIGNED_INT,1);r&&r.length&&(this.featuresLength=r[0])}return n.prototype.getExtension=function(t){return this.json.extensions&&this.json.extensions[t]},n.prototype.hasProperty=function(t){return!!this.json[t]},n.prototype.getGlobalProperty=function(t,e,r){var i=this.json[t];if(typeof i=="number"){var a=vi(e);return new a([i])}else if(Array.isArray(i)){var a=vi(e);return new a(i)}else if(i&&Number.isFinite(i.byteOffset))return this.getTypedArrayFromBinary(t,e,r,1,i.byteOffset);return null},n.prototype.getPropertyArray=function(t,e,r){var i=this.json[t];return i&&Number.isFinite(i.byteOffset)?("componentType"in i&&(e=_c(i.componentType)),this.getTypedArrayFromBinary(t,e,r,this.featuresLength,i.byteOffset)):this.getTypedArrayFromArray(t,e,i)},n.prototype.getProperty=function(t,e,r,i,a){var o=this.json[t];if(!o)return null;var s=this.getPropertyArray(t,e,r);if(r===1)return a[0]=s[i],a;for(var l=0;l<r;++l)a[l]=s[r*i+l];return a},n.prototype.getTypedArrayFromBinary=function(t,e,r,i,a){var o=this.cachedTypedArrays,s=o[t];return s||(s=Go(e,this.buffer.buffer,this.buffer.byteOffset+a,i*r),o[t]=s),s},n.prototype.getTypedArrayFromArray=function(t,e,r){var i=this.cachedTypedArrays,a=i[t];return a||(a=Go(e,r),i[t]=a),a},n}(),nn=4,Ho="b3dm tile in legacy format.";function Su(n,t,e){var r=new TextDecoder("utf8"),i=new Uint8Array(n,t,e),a=r.decode(i);return a}function Iu(n,t,e){return e=Zc(n,t,e),e=Yc(n,t,e),e=Jc(n,t,e),e}function Zc(n,t,e){var r=new DataView(t),i=0;n.header=n.header||{};var a=r.getUint32(e,!0);e+=nn;var o=r.getUint32(e,!0);e+=nn;var s=r.getUint32(e,!0);e+=nn;var l=r.getUint32(e,!0);return e+=nn,s>=570425344?(e-=nn*2,i=a,s=o,l=0,a=0,o=0,console.warn(Ho)):l>=570425344&&(e-=nn,i=s,s=a,l=o,a=0,o=0,console.warn(Ho)),n.header.featureTableJsonByteLength=a,n.header.featureTableBinaryByteLength=o,n.header.batchTableJsonByteLength=s,n.header.batchTableBinaryByteLength=l,n.header.batchLength=i,e}function Yc(n,t,e){var r=n.header||{},i=r.featureTableJsonByteLength,a=r.featureTableBinaryByteLength,o=r.batchLength;if(n.featureTableJson={BATCH_LENGTH:o||0},i&&i>0){var s=Su(t,e,i);n.featureTableJson=JSON.parse(s)}e+=i||0,n.featureTableBinary=new Uint8Array(t,e,a),e+=a||0,n.rtcCenter=[0,0,0];var l=new Mu(n.featureTableJson,n.featureTableBinary);if(Array.isArray(l.json.RTC_CENTER)){var u=l.json.RTC_CENTER;n.rtcCenter[0]=u[0],n.rtcCenter[1]=u[1],n.rtcCenter[2]=u[2]}else{var u=l.getGlobalProperty("RTC_CENTER",Ze.FLOAT,3);u&&(n.rtcCenter[0]=u[0],n.rtcCenter[1]=u[1],n.rtcCenter[2]=u[2])}return e}function Jc(n,t,e){var r=n.header||{},i=r.batchTableJsonByteLength,a=r.batchTableBinaryByteLength;if(i&&i>0){var o=Su(t,e,i);n.batchTableJson=JSON.parse(o),e+=i,a&&a>0&&(n.batchTableBinary=new Uint8Array(t,e,a),n.batchTableBinary=new Uint8Array(n.batchTableBinary),e+=a)}return e}function $c(n,t,e){var r=e!==void 0?new Uint8Array(n).subarray(t,t+e):new Uint8Array(n).subarray(t),i=new Uint8Array(r);return i.buffer}function ed(n,t,e){var r=n.byteLength-e;if(r===0)throw new Error("glTF byte length must be greater than 0.");return e%4!==0&&console.warn("".concat(n.type,": embedded glb is not aligned to a 4-byte boundary.")),n.gltfArrayBuffer=$c(t,e,r),n.byteLength}function ga(n){if(typeof TextDecoder!="undefined")return new TextDecoder().decode(n);for(var t="",e=0,r=n.length;e<r;e++)t+=String.fromCharCode(n[e]);try{return decodeURIComponent(escape(t))}catch(i){return t}}var Fe={FLOAT:5126,FLOAT_MAT3:35675,FLOAT_MAT4:35676,FLOAT_VEC2:35664,FLOAT_VEC3:35665,FLOAT_VEC4:35666,LINEAR:9729,REPEAT:10497,SAMPLER_2D:35678,POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6,UNSIGNED_BYTE:5121,UNSIGNED_SHORT:5123},xn={5120:Int8Array,5121:Uint8Array,5122:Int16Array,5123:Uint16Array,5125:Uint32Array,5126:Float32Array},Ai={9728:d.NearestFilter,9729:d.LinearFilter,9984:d.NearestMipmapNearestFilter,9985:d.LinearMipmapNearestFilter,9986:d.NearestMipmapLinearFilter,9987:d.LinearMipmapLinearFilter},mi={33071:d.ClampToEdgeWrapping,33648:d.MirroredRepeatWrapping,10497:d.RepeatWrapping},Ko={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},xt={POSITION:"position",NORMAL:"normal",TANGENT:"tangent",TEXCOORD_0:"uv",TEXCOORD_1:"uv2",COLOR_0:"color",WEIGHTS_0:"skinWeight",JOINTS_0:"skinIndex"},Br={scale:"scale",translation:"position",rotation:"quaternion",weights:"morphTargetInfluences"},td={CUBICSPLINE:void 0,LINEAR:d.InterpolateLinear,STEP:d.InterpolateDiscrete},Ar={OPAQUE:"OPAQUE",MASK:"MASK",BLEND:"BLEND"};function ct(n){var t=[];for(var e in n)t.push(n[e]);return t}var rd=function(){function n(t,e,r){this.json=t,this.extensions=e,this.options=r,this.cache=new Map,this.disposeSet=new Set,this.nodeNamesUsed={}}return n.prototype.dispose=function(){this.cache.clear(),this.disposeSet.forEach(function(t){typeof t.dispose=="function"&&t.dispose(),typeof t.close=="function"&&t.close()}),this.disposeSet.clear(),delete this.cache,delete this.disposeSet,delete this.json,delete this.extensions,delete this.options},n.prototype.markDefs=function(){for(var t=this.json.nodes||[],e=this.json.skins||[],r=this.json.meshes||[],i=0,a=e.length;i<a;i++)for(var o=e[i].joints,s=0,l=o.length;s<l;s++)t[o[s]].isBone=!0;for(var u=0,c=t.length;u<c;u++){var f=t[u];f.mesh!==void 0&&f.skin!==void 0&&(r[f.mesh].isSkinnedMesh=!0)}},n.prototype.parse=function(){var t=this,e=this.json,r=this.extensions;this.markDefs();for(var i=0,a=ct(r);i<a.length;i++){var o=a[i];o.markDefs(this)}return Promise.all(ct(r).map(function(s){return s.prepare(t)})).then(function(){var s,l,u;return Promise.all([Promise.all(((s=e.scenes)!==null&&s!==void 0?s:[]).map(function(c,f){return t.loadScene(f)})),Promise.all(((l=e.animations)!==null&&l!==void 0?l:[]).map(function(c,f){return t.loadAnimation(f)})),Promise.all(((u=e.cameras)!==null&&u!==void 0?u:[]).map(function(c,f){return t.loadCamera(f)}))])}).then(function(s){var l=s[0],u=s[1],c=s[2],f={json:t.json,scene:l[e.scene||0],scenes:l,animations:u,cameras:c,dispose:function(){return t.dispose()}};return Promise.all(ct(r).map(function(A){return A.emitResult(f,t)})).then(function(){return f})})},n.prototype.loadCamera=function(t){var e="camera:"+t,r=this.cache.get(e);if(r)return r;for(var i=null,a=0,o=ct(this.extensions);a<o.length;a++){var s=o[a];if(i=s.loadCamera(t,this),i)break}if(!i){var l=void 0,u=this.json.cameras[t],c=u[u.type];c?u.type==="perspective"?l=new d.PerspectiveCamera(d.MathUtils.radToDeg(c.yfov),c.aspectRatio||1,c.znear||1,c.zfar||2e6):u.type==="orthographic"?l=new d.OrthographicCamera(-c.xmag,c.xmag,c.ymag,-c.ymag,c.znear,c.zfar):(console.warn("glTF: Invalid camera type ".concat(u.type,".")),l=new d.Camera):(console.warn("glTF: Missing camera parameters."),l=new d.Camera),u.name&&(l.name=this.createUniqueName(u.name)),i=Promise.resolve(l)}return this.cache.set(e,i),i},n.prototype.loadSkin=function(t){var e="animation:"+t,r=this.cache.get(e);if(r)return r;var i,a=this.json.skins[t],o={joints:a.joints};return a.inverseBindMatrices===void 0?i=Promise.resolve(o):i=this.loadAccessor(a.inverseBindMatrices).then(function(s){return s&&(o.inverseBindMatrices=s),o}),this.cache.set(e,i),i},n.prototype.loadAnimation=function(t){var e="animation:"+t,r=this.cache.get(e);if(r)return r;for(var i=null,a=0,o=ct(this.extensions);a<o.length;a++){var s=o[a];if(i=s.loadAnimation(t,this),i)break}if(!i){for(var l=this.json,u=l.animations[t],c=[],f=[],A=[],p=[],y=[],v=0,m=u.channels.length;v<m;v++){var h=u.channels[v],g=u.samplers[h.sampler],b=h.target,w=b.node!==void 0?b.node:b.id,E=u.parameters!==void 0?u.parameters[g.input]:g.input,C=u.parameters!==void 0?u.parameters[g.output]:g.output;c.push(this.loadNode(w)),f.push(this.loadAccessor(E)),A.push(this.loadAccessor(C)),p.push(g),y.push(b)}i=Promise.all([Promise.all(c),Promise.all(f),Promise.all(A),Promise.all(p),Promise.all(y)]).then(function(x){for(var M=x[0],S=x[1],P=x[2],I=x[3],B=x[4],k=[],L=function(K,j){var U=M[K],G=S[K],H=P[K],Y=I[K],W=B[K];if(U===void 0)return"continue";U.updateMatrix(),U.matrixAutoUpdate=!0;var _=void 0;switch(Br[W.path]){case Br.weights:_=d.NumberKeyframeTrack;break;case Br.rotation:_=d.QuaternionKeyframeTrack;break;case Br.position:case Br.scale:default:_=d.VectorKeyframeTrack;break}var Z=U.name?U.name:U.uuid,fe=Y.interpolation!==void 0?td[Y.interpolation]:d.InterpolateLinear,re=[];Br[W.path]===Br.weights?U.traverse(function(ce){ce.morphTargetInfluences&&re.push(ce.name?ce.name:ce.uuid)}):re.push(Z);var ie=H.array;if(H.normalized){for(var ne=qi(ie.constructor),ve=new Float32Array(ie.length),te=0,he=ie.length;te<he;te++)ve[te]=ie[te]*ne;ie=ve}for(var te=0,he=re.length;te<he;te++){var Ae=new _(re[te]+"."+Br[W.path],G.array,ie,fe);k.push(Ae)}},O=0,Q=M.length;O<Q;O++)L(O);var N=u.name?u.name:"animation_"+t;return new d.AnimationClip(N,void 0,k)})}return this.cache.set(e,i),i},n.prototype.loadBuffer=function(t){var e=this.json.buffers[t];if(e.type&&e.type!=="arraybuffer")throw new Error("glTF: "+e.type+" buffer type is not supported.");var r="buffer:"+t,i=this.cache.get(r);if(i)return i;for(var a=null,o=0,s=ct(this.extensions);o<s.length;o++){var l=s[o];if(a=l.loadBuffer(t,this),a)break}if(!a){var u=this.json.buffers[t];a=this.options.fetcher.ajax(this.resolveResouce(u.uri),{responseType:"arraybuffer"}).then(function(c){return c.body})}return this.cache.set(r,a),a},n.prototype.loadBufferView=function(t){var e="bufferView:"+t,r=this.cache.get(e);if(r)return r;for(var i=null,a=0,o=ct(this.extensions);a<o.length;a++){var s=o[a];if(i=s.loadBufferView(t,this),i)break}if(!i){var l=this.json.bufferViews[t];i=this.loadBuffer(l.buffer).then(function(u){var c=l.byteLength||0,f=l.byteOffset||0;return u.slice(f,f+c)})}return this.cache.set(e,i),i},n.prototype.loadAccessor=function(t){var e=this,r="accessor:"+t,i=this.cache.get(r);if(i)return i;var a=null;if(!a){var o=this.json.accessors[t];if(o.bufferView===void 0&&o.sparse===void 0)a=Promise.resolve(null);else{var s=[];o.bufferView!==void 0?s.push(this.loadBufferView(o.bufferView)):s.push(Promise.resolve(null)),o.sparse!==void 0&&(s.push(this.loadBufferView(o.sparse.indices.bufferView)),s.push(this.loadBufferView(o.sparse.values.bufferView))),a=Promise.all(s).then(function(l){var u=l[0],c=Ko[o.type],f=xn[o.componentType],A=f.BYTES_PER_ELEMENT,p=A*c,y=o.byteOffset||0,v=o.bufferView!==void 0?e.json.bufferViews[o.bufferView].byteStride:void 0,m=o.normalized===!0,h,g;if(v&&v!==p){var b=Math.floor(y/v),w="InterleavedBuffer:"+o.bufferView+":"+o.componentType+":"+b+":"+o.count,E=e.cache.get(w);E||(h=new f(u,b*v,o.count*v/A),E=new d.InterleavedBuffer(h,v/A),e.cache.set(w,E)),g=new d.InterleavedBufferAttribute(E,c,y%v/A,m)}else u===null?h=new f(o.count*c):h=new f(u,y,o.count*c),g=new d.BufferAttribute(h,c,m);if(o.sparse!==void 0){var C=Ko.SCALAR,x=xn[o.sparse.indices.componentType],M=o.sparse.indices.byteOffset||0,S=o.sparse.values.byteOffset||0,P=new x(l[1],M,o.sparse.count*C),I=new f(l[2],S,o.sparse.count*c);u!==null&&(g=new d.BufferAttribute(g.array.slice(),g.itemSize,g.normalized));for(var B=0,k=P.length;B<k;B++){var L=P[B];if(g.setX(L,I[B*c]),c>=2&&g.setY(L,I[B*c+1]),c>=3&&g.setZ(L,I[B*c+2]),c>=4&&g.setW(L,I[B*c+3]),c>=5)throw new Error("THREE.GLTFLoader: Unsupported itemSize in sparse BufferAttribute.")}}return g})}}return this.cache.set(r,a),a},n.prototype.createPrimitiveKey=function(t){for(var e=0,r=ct(this.extensions);e<r.length;e++){var i=r[e],a=i.createPrimitiveKey(t,this);if(a)return a}for(var o="",s=Object.keys(t.attributes).sort(),l=0,u=s.length;l<u;l++)o+=s[l]+":"+t.attributes[s[l]]+";";return t.indices+":"+o+":"+t.mode},n.prototype.loadGeometry=function(t){for(var e=this,r=null,i=0,a=ct(this.extensions);i<a.length;i++){var o=a[i];if(r=o.loadGeometry(t,this),r)break}return r||(r=this.addGeometryPrimitiveAttributes(new d.BufferGeometry,t)),r=r.then(function(s){return e.disposeSet.add(s),s}),r},n.prototype.loadImage=function(t){for(var e=this,r=null,i=0,a=ct(this.extensions);i<a.length;i++){var o=a[i];if(r=o.loadImage(t,this),r)break}if(!r){var s=this.json.images[t];if(s.bufferView!==void 0){var l=this.json.bufferViews[s.bufferView];r=this.loadBuffer(l.buffer).then(function(c){var f=l.byteOffset||0,A=l.byteLength||0,p=new Uint8Array(c,f,A),y=new Blob([p],{type:s.mimeType});return pa(y)})}else if(s.uri){var u=this.resolveResouce(s.uri);r=this.options.fetcher.loadImage(u,{},void 0,void 0,void 0,pi()).then(function(c){return c.body})}else throw new Error("glTF: Invalid image defs.")}return r=r.then(function(c){return e.disposeSet.add(c),c}),r},n.prototype.loadMaterialAsMeshStandardMaterial=function(t){var e=this,r=[],i=new d.MeshStandardMaterial;if(i.color=new d.Color(1,1,1),i.opacity=1,Object.keys(t.attributes).filter(function(c){return xt[c]==="color"}).length>0&&(i.vertexColors=!0),Object.keys(t.attributes).filter(function(c){return xt[c]==="normal"}).length===0&&(i.flatShading=!0),Object.keys(t.attributes).filter(function(c){return xt[c]==="tangent"}).length===0&&(i.normalScale&&(i.normalScale.y*=-1),i.clearcoatNormalScale&&(i.clearcoatNormalScale.y*=-1)),t.material!==void 0){var a=this.json.materials[t.material];a.name&&(i.name=a.name);var o=a.pbrMetallicRoughness||{};if(Array.isArray(o.baseColorFactor)){var s=o.baseColorFactor;i.color.fromArray(s),i.opacity=s[3]}o.baseColorTexture!==void 0&&r.push(this.createMaterialTexture(o.baseColorTexture).then(function(c){c.encoding=d.sRGBEncoding,i.map=c,e.disposeSet.add(c)})),i.metalness=o.metallicFactor!==void 0?o.metallicFactor:1,i.roughness=o.roughnessFactor!==void 0?o.roughnessFactor:1,o.metallicRoughnessTexture!==void 0&&r.push(this.createMaterialTexture(o.metallicRoughnessTexture).then(function(c){c.encoding=d.sRGBEncoding,i.metalnessMap=c,i.roughnessMap=c,e.disposeSet.add(c)})),a.doubleSided===!0&&(i.side=d.DoubleSide);var l=a.alphaMode||Ar.OPAQUE;if(l===Ar.BLEND?(i.transparent=!0,i.depthWrite=!1):(i.transparent=!1,l===Ar.MASK&&(i.alphaTest=a.alphaCutoff!==void 0?a.alphaCutoff:.5)),a.normalTexture!==void 0&&(r.push(this.createMaterialTexture(a.normalTexture).then(function(c){i.normalMap=c,e.disposeSet.add(c)})),i.normalScale=new d.Vector2(1,1),a.normalTexture.scale!==void 0)){var u=a.normalTexture.scale;i.normalScale.set(u,u)}a.occlusionTexture!==void 0&&(r.push(this.createMaterialTexture(a.occlusionTexture).then(function(c){i.aoMap=c,e.disposeSet.add(c)})),a.occlusionTexture.strength!==void 0&&(i.aoMapIntensity=a.occlusionTexture.strength)),a.emissiveFactor!==void 0&&(i.emissive=new d.Color().fromArray(a.emissiveFactor)),a.emissiveTexture!==void 0&&r.push(this.createMaterialTexture(a.emissiveTexture).then(function(c){i.emissiveMap=c,e.disposeSet.add(c)}))}return this.disposeSet.add(i),Promise.all(r).then(function(){return i})},n.prototype.loadMaterialAsLineBasicMaterial=function(t){var e=[],r=new d.LineBasicMaterial;if(r.color=new d.Color(1,1,1),r.opacity=1,Object.keys(t.attributes).filter(function(l){return xt[l]==="color"}).length>0&&(r.vertexColors=!0),Object.keys(t.attributes).filter(function(l){return xt[l]==="tangent"}).length===0&&(r.normalScale&&(r.normalScale.y*=-1),r.clearcoatNormalScale&&(r.clearcoatNormalScale.y*=-1)),t.material!==void 0){var i=this.json.materials[t.material];i.name&&(r.name=i.name);var a=i.pbrMetallicRoughness||{};if(Array.isArray(a.baseColorFactor)){var o=a.baseColorFactor;r.color.fromArray(o),r.opacity=o[3]}i.doubleSided===!0&&(r.side=d.DoubleSide);var s=i.alphaMode||Ar.OPAQUE;s===Ar.BLEND?(r.transparent=!0,r.depthWrite=!1):(r.transparent=!1,s===Ar.MASK&&(r.alphaTest=i.alphaCutoff!==void 0?i.alphaCutoff:.5))}return this.disposeSet.add(r),Promise.all(e).then(function(){return r})},n.prototype.loadMaterialAsPointsMaterial=function(t){var e=this,r=[],i=new d.PointsMaterial;if(i.color=new d.Color(1,1,1),i.opacity=1,i.sizeAttenuation=!1,Object.keys(t.attributes).filter(function(u){return xt[u]==="color"}).length>0&&(i.vertexColors=!0),Object.keys(t.attributes).filter(function(u){return xt[u]==="tangent"}).length===0&&(i.normalScale&&(i.normalScale.y*=-1),i.clearcoatNormalScale&&(i.clearcoatNormalScale.y*=-1)),t.material!==void 0){var a=this.json.materials[t.material];a.name&&(i.name=a.name);var o=a.pbrMetallicRoughness||{};if(Array.isArray(o.baseColorFactor)){var s=o.baseColorFactor;i.color.fromArray(s),i.opacity=s[3]}o.baseColorTexture!==void 0&&r.push(this.createMaterialTexture(o.baseColorTexture).then(function(u){u.encoding=d.sRGBEncoding,i.map=u,e.disposeSet.add(u)})),a.doubleSided===!0&&(i.side=d.DoubleSide);var l=a.alphaMode||Ar.OPAQUE;l===Ar.BLEND?(i.transparent=!0,i.depthWrite=!1):(i.transparent=!1,l===Ar.MASK&&(i.alphaTest=a.alphaCutoff!==void 0?a.alphaCutoff:.5))}return this.disposeSet.add(i),Promise.all(r).then(function(){return i})},n.prototype.loadMaterial=function(t){var e,r=(e=t.mode)!==null&&e!==void 0?e:Fe.TRIANGLES,i="material:"+this.createPrimitiveKey(t),a=this.cache.get(i);if(a)return a;for(var o=null,s=0,l=ct(this.extensions);s<l.length;s++){var u=l[s];if(o=u.loadMaterial(t,this),o)break}if(r===Fe.TRIANGLES||r===Fe.TRIANGLE_STRIP||r===Fe.TRIANGLE_FAN)o=this.loadMaterialAsMeshStandardMaterial(t);else if(r===Fe.LINES||r===Fe.LINE_STRIP||r===Fe.LINE_LOOP)o=this.loadMaterialAsLineBasicMaterial(t);else if(r===Fe.POINTS)o=this.loadMaterialAsPointsMaterial(t);else throw new Error("glTF: Primitive mode unsupported: "+r);return this.cache.set(i,o),o},n.prototype.loadTexture=function(t){var e=this,r="texture:"+t,i=this.cache.get(r);if(i)return i;for(var a=null,o=0,s=ct(this.extensions);o<s.length;o++){var l=s[o];if(a=l.loadTexture(t,this),a)break}if(!a){var u=this.json.textures[t];a=this.loadImage(u.source).then(function(c){var f=new d.Texture(c);f.needsUpdate=!0,f.flipY=!1,u.name&&(f.name=u.name);var A=e.json.samplers||{},p=A[u.sampler]||{};return f.magFilter=Ai[p.magFilter]||d.LinearFilter,f.minFilter=Ai[p.minFilter]||d.LinearMipmapLinearFilter,f.wrapS=mi[p.wrapS]||d.RepeatWrapping,f.wrapT=mi[p.wrapT]||d.RepeatWrapping,f.onUpdate=function(){c.close()},f})}return a=a.then(function(c){return e.disposeSet.add(c),c}),this.cache.set(r,a),a},n.prototype.loadMesh=function(t){for(var e=this,r=null,i=0,a=ct(this.extensions);i<a.length;i++){var o=a[i];if(r=o.loadMesh(t,this),r)break}if(!r){var s=this.json.meshes[t],l=s.primitives,u=Promise.all(l.map(function(f){return e.loadGeometry(f)})),c=Promise.all(l.map(function(f){return e.loadMaterial(f)}));r=Promise.all([u,c]).then(function(f){for(var A=f[0],p=f[1],y=[],v=0;v<l.length;v++){var m=l[v],h=A[v],g=p[v],b=m.mode||Fe.TRIANGLES,w=void 0;if(b===Fe.TRIANGLES||b===Fe.TRIANGLE_STRIP||b===Fe.TRIANGLE_FAN)if(b===Fe.TRIANGLE_STRIP?h=e.toGeometryTrianglesDrawMode(h,d.TriangleStripDrawMode):b===Fe.TRIANGLE_FAN&&(h=e.toGeometryTrianglesDrawMode(h,d.TriangleFanDrawMode)),e.disposeSet.add(h),s.isSkinnedMesh){var E=new d.SkinnedMesh(h,g);h.attributes.skinWeight.normalized||E.normalizeSkinWeights(),w=E}else w=new d.Mesh(h,g);else if(b===Fe.POINTS)w=new d.Points(h,g);else if(b===Fe.LINES)w=new d.LineSegments(h,g);else if(b===Fe.LINE_STRIP)w=new d.Line(h,g);else if(b===Fe.LINE_LOOP)w=new d.LineLoop(h,g);else throw new Error("glTF: Primitive mode unsupported: "+b);if(Object.keys(h.morphAttributes).length>0){if(s.weights!==void 0)for(var C=0,x=s.weights.length;C<x;C++)w.morphTargetInfluences[C]=s.weights[C];if(s.extras&&Array.isArray(s.extras.targetNames)){var M=s.extras.targetNames;if(w.morphTargetInfluences.length===M.length){w.morphTargetDictionary={};for(var C=0,x=M.length;C<x;C++)w.morphTargetDictionary[M[C]]=C}else console.warn("glTF: Invalid extras.targetNames length. Ignoring names.")}}w.name=e.createUniqueName(s.name||"mesh_"+t),y.push(w)}if(y.length===1)return y[0];for(var S=new d.Group,P=0,I=y;P<I.length;P++){var w=I[P];S.add(w)}return S})}return r},n.prototype.loadNodeAttachments=function(t){for(var e=[],r=0,i=ct(this.extensions);r<i.length;r++){var a=i[r],o=a.loadNodeAttachments(t,this);o&&e.push(o)}return e},n.prototype.loadNode=function(t){var e="node:"+t,r=this.cache.get(e);if(r)return r;var i=this.json,a=i.nodes[t],o=a.name?this.createUniqueName(a.name):"",s=[];a.mesh!==void 0&&s.push(this.loadMesh(a.mesh).then(function(A){if(a.weights!==void 0){var p=a.weights;A.traverse(function(y){if(y instanceof d.Mesh||y instanceof d.Line||y instanceof d.Points)for(var v=0,m=p.length;v<m;v++)y.morphTargetInfluences[v]=p[v]})}return A})),a.camera!==void 0&&s.push(this.loadCamera(a.camera));for(var l=this.loadNodeAttachments(t),u=0,c=l;u<c.length;u++){var f=c[u];s.push(f)}return Promise.all(s).then(function(A){var p;if(a.isBone===!0?p=new d.Bone:A.length>1?p=new d.Group:A.length===1?p=A[0]:p=new d.Object3D,p!==A[0])for(var y=0,v=A.length;y<v;y++)p.add(A[y]);if(a.name&&(p.name=o),a.matrix!==void 0){var m=new d.Matrix4;m.fromArray(a.matrix),p.applyMatrix4(m)}else a.translation!==void 0&&p.position.fromArray(a.translation),a.rotation!==void 0&&p.quaternion.fromArray(a.rotation),a.scale!==void 0&&p.scale.fromArray(a.scale);return p})},n.prototype.loadScene=function(t){var e=this.json,r=e.scenes[t],i=new d.Group;r.name&&(i.name=this.createUniqueName(r.name));for(var a=r.nodes||[],o=[],s=0,l=a.length;s<l;s++)o.push(this.buildNodeHierarchy(a[s],i));return Promise.all(o).then(function(){return i})},n.prototype.createMaterialTexture=function(t){var e=this;return this.loadTexture(t.index).then(function(r){for(var i=0,a=ct(e.extensions);i<a.length;i++){var o=a[i],s=o.extendTexture(r,t,e);s&&(r=s,e.disposeSet.add(r))}return r})},n.prototype.addGeometryPrimitiveAttributes=function(t,e){var r=this,i=e.attributes,a=[],o=function(E){var C=xt[E]||E.toLowerCase();if(C in t.attributes)return"continue";a.push(s.loadAccessor(i[E]).then(function(x){x&&t.setAttribute(C,x)}))},s=this;for(var l in i)o(l);e.indices!==void 0&&!t.index&&a.push(this.loadAccessor(e.indices).then(function(E){E&&t.setIndex(E)}));var u=new d.Box3;if(i.POSITION!==void 0){var c=this.json.accessors[i.POSITION],f=c.min,A=c.max;if(f!==void 0&&A!==void 0){if(u.set(new d.Vector3(f[0],f[1],f[2]),new d.Vector3(A[0],A[1],A[2])),c.normalized){var p=qi(xn[c.componentType]);u.min.multiplyScalar(p),u.max.multiplyScalar(p)}}else console.warn("glTF: Missing min/max properties for accessor POSITION.")}var y=e.targets;if(y!==void 0){for(var v=new d.Vector3,m=new d.Vector3,h=0,g=y.length;h<g;h++){var b=y[h];if(b.POSITION!==void 0){var c=this.json.accessors[b.POSITION],f=c.min,A=c.max;if(f!==void 0&&A!==void 0){if(m.setX(Math.max(Math.abs(f[0]),Math.abs(A[0]))),m.setY(Math.max(Math.abs(f[1]),Math.abs(A[1]))),m.setZ(Math.max(Math.abs(f[2]),Math.abs(A[2]))),c.normalized){var p=qi(xn[c.componentType]);m.multiplyScalar(p)}v.max(m)}else console.warn("glTF: Missing min/max properties for accessor POSITION.")}}u.expandByVector(v)}t.boundingBox=u;var w=new d.Sphere;return u.getCenter(w.center),w.radius=u.min.distanceTo(u.max)/2,t.boundingSphere=w,Promise.all(a).then(function(){if(t.attributes.uv&&!t.attributes.uv2&&r.options.copyUV2&&t.setAttribute("uv2",t.attributes.uv),e.targets){for(var E=!1,C=!1,x=0,M=e.targets.length;x<M;x++){var S=e.targets[x];if(S.POSITION!==void 0&&(E=!0),S.NORMAL!==void 0&&(C=!0),E&&C)break}if(!E&&!C)return t;var P=[];t.morphTargetsRelative=!0;for(var I=function(B,k){var L=e.targets[B];E?P.push(r.loadAccessor(L.POSITION).then(function(O){O&&(t.morphAttributes.position[B]=O)})):t.morphAttributes.position[B]=t.attributes.position,C?P.push(r.loadAccessor(L.NORMAL).then(function(O){O&&(t.morphAttributes.normal[B]=O)})):t.morphAttributes.normal[B]=t.attributes.normal},x=0,M=e.targets.length;x<M;x++)I(x,M);return Promise.all(P).then(function(){return t})}else return t})},n.prototype.buildNodeHierarchy=function(t,e){var r=this,i=this.json.nodes[t];return this.loadNode(t).then(function(a){if(i.skin===void 0)return a;var o;return r.loadSkin(i.skin).then(function(s){o=s;for(var l=[],u=0,c=o.joints.length;u<c;u++)l.push(r.loadNode(o.joints[u]));return Promise.all(l)}).then(function(s){return a.traverse(function(l){if(l instanceof d.SkinnedMesh){for(var u=[],c=[],f=0,A=s.length;f<A;f++){var p=s[f];if(p instanceof d.Bone){u.push(p);var y=new d.Matrix4;o.inverseBindMatrices!==void 0&&y.fromArray(o.inverseBindMatrices.array,f*16),c.push(y)}else console.warn('glTF: Joint "%s" could not be found.',o.joints[f])}l.bind(new d.Skeleton(u,c),l.matrixWorld)}}),a})}).then(function(a){e.add(a);var o=[];if(i.children)for(var s=i.children,l=0,u=s.length;l<u;l++){var c=s[l];o.push(r.buildNodeHierarchy(c,a))}return Promise.all(o).then(function(){return a})})},n.prototype.createUniqueName=function(t){for(var e=d.PropertyBinding.sanitizeNodeName(t||""),r=e,i=1;this.nodeNamesUsed[r];++i)r=e+"_"+i;return this.nodeNamesUsed[r]=!0,r},n.prototype.resolveResouce=function(t){return gt(this.options.resourcePath,xu(t,this.options.search))},n.prototype.toGeometryTrianglesDrawMode=function(t,e){var r=t.getIndex();if(r===null){var i=[],a=t.getAttribute("position");if(a!==void 0){for(var o=0;o<a.count;o++)i.push(o);t.setIndex(i),r=t.getIndex()}}if(r===null)return console.error("glTF: Undefined position attribute. Processing not possible."),t;var s=r.count-2,l=[];if(e===d.TriangleFanDrawMode)for(var o=1;o<=s;o++)l.push(r.getX(0)),l.push(r.getX(o)),l.push(r.getX(o+1));else for(var o=0;o<s;o++)o%2===0?(l.push(r.getX(o)),l.push(r.getX(o+1)),l.push(r.getX(o+2))):(l.push(r.getX(o+2)),l.push(r.getX(o+1)),l.push(r.getX(o)));l.length/3!==s&&console.error("glTF: Unable to generate correct amount of triangles.");var u=t.clone();return u.setIndex(l),this.disposeSet.add(u),u},n}();function qi(n){switch(n){case Int8Array:return 1/127;case Uint8Array:return 1/255;case Int16Array:return 1/32767;case Uint16Array:return 1/65535;default:throw new Error("glTF: Unsupported normalized accessor component type.")}}var Er=function(){function n(){}return n.prototype.markDefs=function(t){},n.prototype.prepare=function(t){},n.prototype.emitResult=function(t,e){},n.prototype.createPrimitiveKey=function(t,e){},n.prototype.extendTexture=function(t,e,r){return null},n.prototype.loadBuffer=function(t,e){return null},n.prototype.loadBufferView=function(t,e){return null},n.prototype.loadImage=function(t,e){return null},n.prototype.loadTexture=function(t,e){return null},n.prototype.loadGeometry=function(t,e){return null},n.prototype.loadMaterial=function(t,e){return null},n.prototype.loadMesh=function(t,e){return null},n.prototype.loadNodeAttachments=function(t,e){return null},n.prototype.loadCamera=function(t,e){return null},n.prototype.loadAnimation=function(t,e){return null},n}(),nd=function(n){de(t,n);function t(){var e=n.call(this)||this;return e.header={magic:"",version:0,length:0},e.content="",e.body=null,e}return t.getMagic=function(e){return ga(new Uint8Array(e.slice(0,4)))},t.prototype.loadGlbBinary=function(e){var r=new DataView(e,0,t.HEADER_LENGTH);if(this.header={magic:t.getMagic(e),version:r.getUint32(4,!0),length:r.getUint32(8,!0)},this.header.magic!==t.HEADER_MAGIC)throw new Error("glTF:KHR_binary_glTF: Unsupported.");if(this.header.version<2)throw new Error("glTF:KHR_binary_glTF: Legacy binary file detected.");for(var i=new DataView(e,t.HEADER_LENGTH),a=0,o=null,s=null;a<i.byteLength;){var l=i.getUint32(a,!0);if(a+=4,l!==0){var u=i.getUint32(a,!0);if(a+=4,u===t.CHUNK_TYPES.JSON){var c=new Uint8Array(e,t.HEADER_LENGTH+a,l);o=ga(c)}else if(u===t.CHUNK_TYPES.BIN){var f=t.HEADER_LENGTH+a;s=e.slice(f,f+l)}a+=l}}if(o===null)throw new Error("glTF:KHR_binary_glTF: JSON content not found.");this.content=o,this.body=s},t.prototype.loadBuffer=function(e,r){var i=r.json.buffers[e];return i.uri===void 0&&e===0&&this.body?Promise.resolve(this.body):null},t.HEADER_MAGIC="glTF",t.HEADER_LENGTH=12,t.CHUNK_TYPES={JSON:1313821514,BIN:5130562},t}(Er),id="https://vr-public.realsee-cdn.cn/release/static/image/release/five/resource/draco/1.5.6/",qo={position:"POSITION",normal:"NORMAL",color:"COLOR",uv:"TEX_COORD"},jo={position:"Float32Array",normal:"Float32Array",color:"Float32Array",uv:"Float32Array"},ad=function(){function n(){this.decoderPath=id,this.decoderConfig={},this.decoderPending=null,this.workerLimit=4,this.workerPool=[],this.workerNextTaskID=1,this.workerSourceURL=""}return n.prototype.setDecoderPath=function(t){this.decoderPath=t},n.prototype.setDecoderConfig=function(t){return this.decoderConfig=t,this},n.prototype.setWorkerLimit=function(t){return this.workerLimit=t,this},n.prototype.decodeDracoFile=function(t,e,r,i){var a={attributeIDs:r||qo,attributeTypes:i||jo,useUniqueIDs:!!r};this.decodeGeometry(t,a).then(e)},n.prototype.decodeGeometry=function(t,e){var r=this;e===void 0&&(e={attributeIDs:qo,attributeTypes:jo,useUniqueIDs:!1});for(var i in e.attributeTypes){var a=e.attributeTypes[i];a.BYTES_PER_ELEMENT!==void 0&&(e.attributeTypes[i]=a.name)}var o,s=this.workerNextTaskID++,l=t.byteLength,u=this._getWorker(s,l).then(function(c){return o=c,new Promise(function(f,A){o._callbacks[s]={resolve:f,reject:A},o.postMessage({type:"decode",id:s,taskConfig:e,buffer:t},[t])})}).then(function(c){return r._createGeometry(c.geometry)});return u.catch(function(){return!0}).then(function(){o&&s&&r._releaseTask(o,s)}),u},n.prototype._createGeometry=function(t){var e=new d.BufferGeometry;t.index&&e.setIndex(new d.BufferAttribute(t.index.array,1));for(var r=0;r<t.attributes.length;r++){var i=t.attributes[r],a=i.name,o=i.array,s=i.itemSize;e.setAttribute(a,new d.BufferAttribute(o,s))}return e},n.prototype._initDecoder=function(){var t=this;if(this.decoderPending)return this.decoderPending;var e=typeof WebAssembly!="object"||this.decoderConfig.type==="js";if(e){var r=fn(this.decoderPath+"draco_decoder.js",{responseType:"text"}).then(function(a){return a.body});this.decoderPending=r.then(function(a){var o=["/* draco decoder */",a,"","/* worker */",Wo].join(`
|
|
417
|
+
`,su=[];function pc(){var n=su.pop();return n||new d.ShaderMaterial({uniforms:{map:{value:null},flipY:{value:0}},vertexShader:fc,fragmentShader:hc,depthTest:!1,depthWrite:!1,stencilWrite:!1,blending:d.NoBlending,lights:!1,toneMapped:!1,fog:!1})}function vc(n){n.uniforms.map.value=null,su.push(n)}function Ac(n,t,e){var r=new d.Scene;r.matrixAutoUpdate=!1;var i=new d.Group;i.scale.set(1,1,-1),r.add(i);for(var a=[],o=0,s=n;o<s.length;o++){var l=s[o],u=pc();a.push(u),u.uniforms.map.value=l.texture,u.uniforms.flipY.value=l.flipY?1:0;var c=new d.Group,f=new d.Mesh(dc,u);f.position.set(l.position.x+l.size.x/2-.5,1-(l.position.y+l.size.y/2)-.5,-.5),f.scale.set(l.size.x,l.size.y,1),c.quaternion.copy(cc[l.face]),c.add(f),i.add(c)}var A=e.autoClear;e.autoClear=!1;var p=new d.CubeCamera(.1,2,t);p.matrixAutoUpdate=!1,p.update(e,r),e.autoClear=A;for(var y=0,v=a;y<v.length;y++){var u=v[y];vc(u)}}var mc=function(){return!1}();function pi(){var n=Object.assign(document.createElementNS("http://www.w3.org/1999/xhtml","img"),{crossOrigin:"",close:function(){n.onerror=n.onload=n.close=D,n.decoding="async";var t=n.src;n.removeAttribute("src"),/^blob\:/.test(t)&&URL.revokeObjectURL(t)}});return n}function pa(n){return new Promise(function(t,e){var r=pi();r.onload=function(){/^blob\:/.test(r.src)&&URL.revokeObjectURL(r.src),r.onload=r.onerror=D,setTimeout(function(){t(r)},10)},r.onerror=function(){var i=r.src;r.onload=r.onerror=D,r.close(),e(new Error("image load error: ".concat(i)))},r.src=URL.createObjectURL(n)})}var Eo=[];function gc(n,t){var e=Eo.shift();if(e)return e.width=n,e.height=t,e;var r=Object.assign(document.createElementNS("http://www.w3.org/1999/xhtml","canvas"),{close:function(){r.close=D,Eo.push(r)}});return r}function xo(n,t){if(t&&(n.width>t.width||n.height>t.height)){var e=gc(Math.min(n.width,t.width),Math.min(n.height,t.height)),r=e.getContext("2d");r.clearRect(0,0,e.width,e.height),r.drawImage(n,0,0,e.width,e.height),n.close();var i=new d.Texture(e);i.needsUpdate=!0,i.flipY=!0;var a=i.dispose;return i.dispose=function(){e.close(),a.call(i),i.dispose=a},i}else{var o=new d.Texture(n);o.needsUpdate=!0,typeof ImageBitmap!="undefined"&&n instanceof ImageBitmap?o.flipY=!1:o.flipY=!0;var s=o.dispose;return o.dispose=function(){n.close(),s.call(o),o.dispose=s},o}}function yc(n){var t=new d.CubeTexture(n);t.needsUpdate=!0,t.flipY=!1;var e=t.dispose;return t.dispose=function(){for(var r=0,i=n;r<i.length;r++){var a=i[r];a.close()}e.call(t),t.dispose=e},t}var qr=["right","left","up","down","front","back"],bc=3,ke=function(){function n(t,e,r,i,a){this.tileTree=e,this.tileSources=r,this.options=i,this.renderer=a,this.name="",this.needsRender=!1,this.disposed=!1,this.loadedCubeNodes=new Set,this.loadingCubeNodes=new Set,this.baseCubeTexture=null,this._cubeRenderTarget=null,this.textures=[],this.baseCubeTexture=t}return Object.defineProperty(n.prototype,"cubeRenderTarget",{get:function(){return this._cubeRenderTarget},set:function(t){var e,r,i,a,o,s;if(t===null)throw new Error("cannot set cubeRenderTarget to null.");t.width!==this.options.textureSize&&t.setSize(this.options.textureSize,this.options.textureSize),t.texture.format=(e=this.options.format)!==null&&e!==void 0?e:d.RGBAFormat,t.texture.minFilter=(r=this.options.minFilter)!==null&&r!==void 0?r:d.LinearFilter,t.texture.magFilter=(i=this.options.magFilter)!==null&&i!==void 0?i:d.LinearFilter,t.texture.wrapS=(a=this.options.wrapS)!==null&&a!==void 0?a:d.ClampToEdgeWrapping,t.texture.wrapT=(o=this.options.wrapT)!==null&&o!==void 0?o:d.ClampToEdgeWrapping,t.texture.generateMipmaps=(s=this.options.generateMipmaps)!==null&&s!==void 0?s:!0,this.baseCubeTexture&&(ha(this.baseCubeTexture,t,this.renderer),this.baseCubeTexture.dispose(),this.baseCubeTexture=null),this._cubeRenderTarget&&ha(this._cubeRenderTarget.texture,t,this.renderer),this._cubeRenderTarget=t},enumerable:!1,configurable:!0}),n.prototype.requestTile=function(t){var e=this,r,i,a,o,s,l,u=this.tileSources.filter(function(v){return v.level===t.level})[0];if(!u){this.loadedCubeNodes.add(t);return}var c=u.size,f=Math.pow(2,t.level)*t.position.y,A=Math.pow(2,t.level)*t.position.x,p="".concat(((a=(i=(r=this.options.imageURL)===null||r===void 0?void 0:r.options)===null||i===void 0?void 0:i.key)!==null&&a!==void 0?a:"pano.0").replace(/^pano/,"pano_tile"),".").concat(t.face,".").concat(t.level,".").concat(f,".").concat(A),y=F(F({},(s=(o=this.options.imageURL)===null||o===void 0?void 0:o.options)!==null&&s!==void 0?s:{key:"unknown"}),{key:p,size:u.scale>=1?void 0:c*t.size*u.scale,quality:void 0,cut:[c*t.position.x,c*t.position.y,c*t.size,c*t.size]});this.loadingCubeNodes.add(t),this.options.textureLoader.loadTexture(u[t.face],{imageURL:{transform:(l=this.options.imageURL)===null||l===void 0?void 0:l.transform,options:F({},y)},format:d.RGBAFormat,timeout:this.options.timeout,magFilter:this.options.magFilter,minFilter:this.options.minFilter,fetcher:this.options.fetcher}).then(function(v){if(e.disposed){v.body.dispose();return}e.textures.push({face:t.face,level:t.level,position:t.position,size:new d.Vector2(t.size,t.size),texture:v.body,flipY:!v.body.flipY}),e.loadedCubeNodes.add(t)}).catch(D).then(function(){e.disposed||e.loadingCubeNodes.delete(t)})},n.prototype.update=function(t,e){var r=this;if(!this.disposed){var i=[];Ua(this.tileTree,function(A){if(r.loadingCubeNodes.has(A)||A.level>e||!t.intersectsBox(A.box))return!1;if(!r.loadedCubeNodes.has(A))return i.push(A),!1});for(var a=0,o=i;a<o.length;a++){var s=o[a];this.requestTile(s)}if(this.cubeRenderTarget&&this.textures.length){var l=this.textures.splice(0,bc);Ac(l,this.cubeRenderTarget,this.renderer),this.needsRender=!0;for(var u=0,c=l;u<c.length;u++){var f=c[u];f.texture.dispose()}}}},Object.defineProperty(n.prototype,"tilePending",{get:function(){return this.loadingCubeNodes.size},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"texture",{get:function(){if(!this._cubeRenderTarget)throw new Error("cubeRenderTarget never set.");return this._cubeRenderTarget.texture},enumerable:!1,configurable:!0}),n.prototype.dispose=function(){if(!this.disposed){this.disposed=!0,this.baseCubeTexture&&(this.baseCubeTexture.dispose(),this.baseCubeTexture=null),this.loadingCubeNodes.clear(),this.loadedCubeNodes.clear();for(var t=0,e=this.textures;t<e.length;t++){var r=e[t];r.texture.dispose()}this.textures.length=0}},n}(),Gn=function(){function n(){}return n.prototype.loadTexture=function(t,e,r,i,a,o){var s,l,u,c,f,A;r===void 0&&(r=D),i===void 0&&(i=D),a===void 0&&(a=D);var p={};typeof e.flipY!="undefined"&&(p.flipY=e.flipY),typeof e.format!="undefined"&&(p.format=e.format),typeof e.generateMipmaps!="undefined"&&(p.generateMipmaps=e.generateMipmaps),p.minFilter=(s=e.minFilter)!==null&&s!==void 0?s:d.LinearFilter,p.magFilter=(l=e.magFilter)!==null&&l!==void 0?l:d.LinearFilter;var y=(c=(u=e.imageURL)===null||u===void 0?void 0:u.options)!==null&&c!==void 0?c:{key:"unknown"};t=hi(t,(f=e.imageURL)===null||f===void 0?void 0:f.transform,y);var v=bo(t),m=(A=e.viaAjax)!==null&&A!==void 0?A:mc,h=yo(t),g=/^https?:/.test(v);if(h?m=!0:g||(m=!1),m){var b=null,w="blob";return e.fetcher.ajax(t,{timeout:e.timeout,responseType:w},void 0,void 0,a).then(function(x){return pa(x.body)}).then(function(x){return xo(x,e.maxSize)}).then(function(x){return Object.assign(x,p),x}).then(function(x){var M={meta:b,body:x};return r(M),M}).catch(function(x){return i(x),Promise.reject(x)})}else{var E=null,C;return Promise.resolve().then(function(){return pi()}).then(function(x){return C=x,e.fetcher.loadImage(t,{timeout:e.timeout},void 0,void 0,a,x)}).then(function(x){return E=x.meta,xo(x.body,e.maxSize)}).then(function(x){return Object.assign(x,p),x}).then(function(x){var M={meta:E,body:x};return r(M),M}).catch(function(x){return C&&C.close(),i(x),Promise.reject(x)})}},n.prototype.loadCubeTexture=function(t,e,r,i,a,o){var s,l,u,c,f,A;r===void 0&&(r=D),i===void 0&&(i=D),a===void 0&&(a=D);var p={};typeof e.format!="undefined"&&(p.format=e.format),typeof e.generateMipmaps!="undefined"&&(p.generateMipmaps=e.generateMipmaps),p.minFilter=(s=e.minFilter)!==null&&s!==void 0?s:d.LinearFilter,p.magFilter=(l=e.magFilter)!==null&&l!==void 0?l:d.LinearFilter;for(var y=[t[qr[0]],t[qr[1]],t[qr[2]],t[qr[3]],t[qr[4]],t[qr[5]]],v=[],m=[0,0,0,0,0,0],h=[],g=function(w){var E=(c=(u=e.imageURL)===null||u===void 0?void 0:u.options)!==null&&c!==void 0?c:{key:"unknown"},C=hi(y[w],(f=e.imageURL)===null||f===void 0?void 0:f.transform,F(F({},E),{key:E.key+"."+qr[w]})),x=bo(C),M=function(O){m[w]=O,a(m.reduce(function(Q,N){return Q+N},0)/6)},S=(A=e.viaAjax)!==null&&A!==void 0?A:!1,P=/^https?:$/.test(x),I=yo(C);if(I?S=!0:P||(S=!1),S){var B="blob",k=e.fetcher.ajax(C,{timeout:e.timeout,responseType:B},void 0,void 0,M).then(function(O){return h[w]=O.meta,pa(O.body)});v.push(k)}else{var L,k=Promise.resolve().then(function(){return pi()}).then(function(Q){return L=Q,e.fetcher.loadImage(C,{timeout:e.timeout},void 0,void 0,M,Q)}).then(function(Q){return h[w]=Q.meta,Q.body}).catch(function(Q){return L&&L.close(),Promise.reject(Q)});v.push(k)}},b=0;b<6;b++)g(b);return Promise.all(v).then(function(w){return yc(w)}).then(function(w){return Object.assign(w,F({encoding:d.sRGBEncoding},p)),w}).then(function(w){var E={body:w,meta:h};return r(E),E}).catch(function(w){for(var E=0,C=v;E<C.length;E++){var x=C[E];x.then(function(M){return M.close()}).catch(D)}return i(w),Promise.reject(w)})},n.prototype.loadTiledCubeTexture=function(t,e,r,i,a,o,s){var l=this;return i===void 0&&(i=D),a===void 0&&(a=D),o===void 0&&(o=D),new Promise(function(u,c){var f,A;l.loadCubeTexture(t,{imageURL:{transform:(f=r.imageURL)===null||f===void 0?void 0:f.transform,options:(A=r.imageURL)===null||A===void 0?void 0:A.options},format:d.RGBAFormat,viaAjax:r.viaAjax,timeout:r.timeout,fetcher:r.fetcher,magFilter:r.magFilter,minFilter:r.minFilter,generateMipmaps:r.generateMipmaps},function(p){var y,v=p.meta,m=p.body,h=(y=r.tileMaxLevel)!==null&&y!==void 0?y:2,g=Math.max(1024*h,512),b=da(h),w=new ke(m,b,e,{textureSize:g,textureLoader:l,imageURL:r.imageURL,magFilter:r.magFilter,minFilter:r.minFilter,generateMipmaps:r.generateMipmaps,timeout:r.timeout,fetcher:r.fetcher},s),E={meta:v,body:w};i(E),u(E)},function(p){a(p),c(p)},o,s).catch(D)})},n}();const wc=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var r=113,i=126,a=0,o="";return t[a].split(o).map(function(s){return s.charCodeAt(a)>i?s:String.fromCharCode((s.charCodeAt(a)+r)%i)}).join(o)}("0vs-qrsv{rq5b`RlcR_aRelSY\\\\_6--nvor-sy|n-sy||H--n\bv{t-sy|n-Sy||H0r{qvsnvor-sy|n-v_||sZnxHn\bv{t-sy|n-V_||sZnxHn\bv{t-rp@-[|znyHn\bv{t-rp@-cvr]|vv|{Hn\bv{t-rpA-|yq]|vv|{Hn\bv{t-sy|n-Y|tQr}uHn\bv{t-znA-cvrZnv\x07H0v{pyqr-Ip|zz|{K0v{pyqr-Il}nlrr\x07K0v{pyqr-I?l}nlrr\x07K0v{pyqr-Ip|y|l}nlrr\x07K0v{pyqr-Iunq|zn}l}nlrr\x07K|vq-znv{56-\n--0v{pyqr-Ilrr\x07K--0v{pyqr-I?lrr\x07K--0v{pyqr-Ip|y|lrr\x07K--0v{pyqr-Iortv{{|znylrr\x07K--0v{pyqr-Iqrsny{|znylrr\x07K--rpA-n{s|zrq-J-rpA5}|vv|{9->;=6H--rpA-z]|vv|{-J-z|qrycvrZnv\x07-7-n{s|zrqH--[|zny-J-{|znyv r5n{s|zrq[|zny6H--0vs-qrsv{rq5b`RlcR_aRelSY\\\\_6----Sy||-J-sy||H--0r{qvs--cvr]|vv|{-J-:z]|vv|{;\x07\b H--|yq]|vv|{-J-z|qryZnv\x07-7-n{s|zrqH--tyl]|vv|{-J-}|wrpv|{Znv\x07-7-z|qrycvrZnv\x07-7-n{s|zrqH--0v{pyqr-Iunq|zn}lrr\x07K--Y|tQr}u-J-y|t?5:z]|vv|{; 6H--cvrZnv\x07-J-vrZnv\x07H--V_||sZnx-J-v_||sZnxH\f"),Ec=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var r=113,i=126,a=0,o="";return t[a].split(o).map(function(s){return s.charCodeAt(a)>i?s:String.fromCharCode((s.charCodeAt(a)+r)%i)}).join(o)}("0qrsv{r-OYNPXlP\\Y\\_-rpA5=;=EC9-=;>=C9-=;>AF9->;=60qrsv{r-aNb-C;?E@>EB?{vs|z-nz}yrPor-}n{|=lzn}H{vs|z-znA-}n{|=lznv\x07H0vs-qrsv{rq5b`RlYbZV[N[PR6--{vs|z-nz}yrPor-}n{|=lyzv{n{prZn}H0r{qvs{vs|z-nz}yrPor-}n{|>lzn}H{vs|z-znA-}n{|>lznv\x07H0vs-qrsv{rq5b`RlYbZV[N[PR6--{vs|z-nz}yrPor-}n{|>lyzv{n{prZn}H0r{qvs{vs|z-rp@-qvssrH{vs|z-rp@-rzvvrH{vs|z-rp@-}rpynH{vs|z-sy|n-uv{v{rH{vs|z-sy|n-r\x07}|rH{vs|z-sy|n-|}npv\bH{vs|z-sy|n-z|qryNy}unH{vs|z-sy|n-}|trH{vs|z-sy|n-u|{Sy||V{qr\x07H{vs|z-rp?-r|yv|{H{vs|z-sy|n-}v\x07ry_nv|Hn\bv{t-sy|n-V_||sZnxH0vs-qrsv{rq5b`RlP\\[`aN[alP\\Y\\_6--{vs|z-rp@-p|{n{P|y|H0r{qvs0vs-qrsv{rq5b`RlcR_aRelSY\\\\_6--n\bv{t-sy|n-Sy||H0ryr--{vs|z-sy|n-sy||H0r{qvsn\bv{t-rpA-|yq]|vv|{Hn\bv{t-sy|n-Y|tQr}uHn\bv{t-znA-cvrZnv\x07Hp-Pyv}}r-\n--znA-znv\x07V{rrH--sy|n-sy||V{qr\x07H\fH0vs-[bZlPYV]]R_`-K-=--{vs|z-Pyv}}r-pyv}}rh[bZlPYV]]R_`jH0r{qvs0v{pyqr-Ip|zz|{K0v{pyqr-I}npxv{tK0v{pyqr-Ip|y|l}nlsntzr{K0v{pyqr-Il}nlsntzr{K0v{pyqr-I?l}nlsntzr{K0v{pyqr-Izn}l}nlsntzr{K0v{pyqr-Iny}unzn}l}nlsntzr{K0v{pyqr-In|zn}l}nlsntzr{K0v{pyqr-Iyvtuzn}l}nlsntzr{K0v{pyqr-Irzvvrzn}l}nlsntzr{K0v{pyqr-Ir{zn}l}nlsntzr{K0v{pyqr-Itnqvr{zn}l}nlsntzr{K0v{pyqr-Is|tl}nlsntzr{K0v{pyqr-IoqsK0v{pyqr-Iyvtul}nlortv{K0v{pyqr-Iyvtul}u|{tl}nlsntzr{K0v{pyqr-Iunq|zn}l}nlsntzr{Krp?-|P||q5rp@-rp|6-\n--sy|n--J-yr{tu5rp|6H--sy|n-urn-J-np|5rp|;\b-<-6H--sy|n-}uv-J-nn{5rp|;\x079-rp|; 6H--r{-rp?5=;B-8-}uv-<-aNb9-urn-<-]V6H\f|vq-znv{56-\n--sy|n-ory|{tv{tSY||-J-=;=H--0vs-qrsv{rq5b`RlcR_aRelSY\\\\_6----ory|{tv{tSY||-J-Sy||H--0ryr----ory|{tv{tSY||-J-sy||H--0r{qvs--zn@-pnzrn_|nv|{Znv\x07-J-zn@5cvrZnv\x07h=jh=j9-cvrZnv\x07h>jh=j9-cvrZnv\x07h?jh=j9-cvrZnv\x07h=jh>j9-cvrZnv\x07h>jh>j9-cvrZnv\x07h?jh>j9-cvrZnv\x07h=jh?j9-cvrZnv\x07h>jh?j9-cvrZnv\x07h?jh?j6H--rp@-pnzrnQvrpv|{-J-{|znyv r5pnzrn_|nv|{Znv\x07-7-rp@5=;=9-=;=9->;=66H--vs5pnzrnQvrpv|{;\b-K-=;E-33-no5V_||sZnx-:->;=6-I-=;>6-\n----qvpnqH--\f--<<前置裁切计算--0vs-[bZlPYV]]R_`-K-=----o||y-pyv}}rqH----rpA-pyv}}r]|vv|{H----0}ntzn-{|yyly||}ln----s|-5-v{-v-J-=H-v-I-[bZlPYV]]R_`H-v-88-6-\n------pyv}}r]|vv|{-J-pyv}}rh-v-j;znv\x07V{rr-7-|yq]|vv|{H------pyv}}rq-J-5pyv}}rh-v-j;sy||V{qr\x07-I-=;=-\v\v-no5ory|{tv{tSY||-:-pyv}}rh-v-j;sy||V{qr\x076-I->;=6H------pyv}}rq-J-pyv}}rq-33-pyv}}r]|vv|{;\x07-K-:=;B-33-pyv}}r]|vv|{;\x07-I-=;BH------pyv}}rq-J-pyv}}rq-33-pyv}}r]|vv|{;\b-K-:=;B-33-pyv}}r]|vv|{;\b-I-=;BH------pyv}}rq-J-pyv}}rq-33-pyv}}r]|vv|{; -K-:=;B-33-pyv}}r]|vv|{; -I-=;BH------vs-5pyv}}rq6-\n--------qvpnqH------\f----\f----0}ntzn-{|yyly||}lr{q--0r{qvs--0vs-qrsv{rq5b`RlP\\[`aN[alP\\Y\\_6----tylSntP|y|-J-rpA5p|{n{P|y|;9-p|{n{P|y|;t9-p|{n{P|y|;o9->;=6H----r{H--0r{qvs--<<楼层选择计算--sy|n-sy||\\}npv\b-J->;=H--vs-5u|{Sy||V{qr\x07-KJ-=;=-33-no5ory|{tv{tSY||-:-u|{Sy||V{qr\x076-KJ->;=6-\n----sy||\\}npv\b-J-=;>H--\f--rpA-qvssrP|y|-J-rpA5qvssr;to9-|}npv\b6H--_rsyrprqYvtu-rsyrprqYvtu-J-_rsyrprqYvtu5rp@5=;=69-rp@5=;=69-rp@5=;=69-rp@5=;=66H--rp@-|nyRzvvr_nqvn{pr-J-rzvvrH--0v{pyqr-Izn}lsntzr{K--0v{pyqr-Ip|y|lsntzr{K--0v{pyqr-Iny}unzn}lsntzr{K--0v{pyqr-Iny}unrlsntzr{K--0v{pyqr-I}rpynzn}lsntzr{K--0v{pyqr-I{|znylsntzr{lortv{K--0v{pyqr-I{|znylsntzr{lzn}K--0v{pyqr-Irzvvrzn}lsntzr{K--0v{pyqr-Iyvtul}u|{tlsntzr{K--0v{pyqr-Iyvtulsntzr{lortv{K--<<-调整曝光值--vnqvn{pr-J-vnqvn{pr-7-r\x07}|rH--0v{pyqr-Iyvtulsntzr{lzn}K--0v{pyqr-Iyvtulsntzr{lr{qK--0v{pyqr-In|zn}lsntzr{K--<<-减少方向光对模型的影响--rp@-|t|v{tYvtu-J-5rsyrprqYvtu;qvrpQvssr-7-=;?6-8----rsyrprqYvtu;v{qvrpQvssr-8----rsyrprqYvtu;v{qvrp`}rpyn-8----|nyRzvvr_nqvn{prH--<<-修复黑色面片的问题--vs-5|t|v{tYvtu;-K-=;=-\v\v-|t|v{tYvtu;t-K-=;=-\v\v-|t|v{tYvtu;o-K-=;=6-\n----tylSntP|y|-J-rpA5|t|v{tYvtu9-qvssrP|y|;n6H--\f-ryr-\n----tylSntP|y|-J-rpA5OYNPXlP\\Y\\_;\x07\b 9-qvssrP|y|;n6H--\f--rp@-}n{|=a|crr\x07-J-5|yq]|vv|{;\x07\b -:-}n{|=lznv\x07h@j;\x07\b 6-7-zn@5}n{|=lznv\x076H--rp@-}n{|>a|crr\x07-J-5|yq]|vv|{;\x07\b -:-}n{|>lznv\x07h@j;\x07\b 6-7-zn@5}n{|>lznv\x076H--rpA-}n{|P|y|H--rpA-}n{|=P|y|-J-r\x07rPor5}n{|=lzn}9-}n{|=a|crr\x076H--rpA-}n{|>P|y|-J-r\x07rPor5}n{|>lzn}9-}n{|>a|crr\x076H--0vs-qrsv{rq5b`RlYbZV[N[PR6----}n{|=P|y|;n-J->;=-:-r\x07rPor5}n{|=lyzv{n{prZn}9-}n{|=a|crr\x076;H----}n{|>P|y|;n-J->;=-:-r\x07rPor5}n{|>lyzv{n{prZn}9-}n{|>a|crr\x076;H--0r{qvs--0vs-qrsv{rq5b`RlOYNPXla_N[`VaV\\[6----sy|n-oynpx]|tr-J-np|5:?;=-7-}|tr-8->;=6H----}n{|P|y|-J-zv\x075}n{|=P|y|9-OYNPXlP\\Y\\_9-zv{5>;=9-oynpx]|tr66H----}n{|P|y|-J-zv\x075}n{|P|y|9-}n{|>P|y|9-zn\x075=;=9-oynpx]|tr-:-?;=66H--0ryvs-qrsv{rq5b`Rl`]_RNQla_N[`VaV\\[6----rp?-prr{Pr{rP||q-J-r|yv|{-7-}v\x07ry_nv|-<-?;=H----sy|n-n{vv|{_nqv-J-qvn{pr5rp?5=;=9-=;=69-prr{Pr{rP||q6-7->;?H----sy|n-n{vv|{]|tr-J--qvn{pr5tylSntP||q;\x07\b9-prr{Pr{rP||q6-<-n{vv|{_nqvH----}n{|P|y|-J-zv\x075}n{|=P|y|9-}n{|>P|y|9-z||ur}5=;=9-=;?9-}|tr-:-n{vv|{]|tr66H--0ryr----}n{|P|y|-J-zv\x075}n{|=P|y|9-}n{|>P|y|9-}|tr6H--0r{qvs--0vs-qrsv{rq5b`Rl]N[\\l\\]NPVaf6----tylSntP|y|-J-zv\x075}n{|P|y|9-tylSntP|y|9-z|qryNy}un6H----tylSntP|y|;n-J-|}npv\bH--0ryr----tylSntP|y|-J-rpA5tylSntP|y|;to9-|}npv\b-7-sy||\\}npv\b6H----tylSntP|y|-J-zv\x075}n{|P|y|9-tylSntP|y|9-z|qryNy}un6H--0r{qvs--0vs-qrsv{rq5b`RlRQY6----tylSntP|y|;n-J-Y|tQr}uH--0r{qvs\f");function Ft(n,t){var e=Math.abs(Math.cos(n.latitude)),r=-Math.sin(n.longitude)*e,i=-Math.sin(n.latitude),a=-Math.cos(n.longitude)*e;return t?t.set(r,i,a):new d.Vector3(r,i,a)}var xc=1,Cc=.1,Mc=2e3,Zn=Math.PI*2,Co=Math.PI/2;function Mo(n){return n>0&&n<=Zn?n:(n%Zn+Zn)%Zn}function Sc(n,t,e,r){e=Math.pow(e,4);for(var i=0;i<16;i++)r.elements[i]=n.elements[i]+(t.elements[i]-n.elements[i])*e;return r}var Si=function(n){de(t,n);function t(e,r,i,a,o,s,l){r===void 0&&(r=xc),i===void 0&&(i=Cc),a===void 0&&(a=Mc),o===void 0&&(o=new d.Vector2),s===void 0&&(s=new d.Vector2(512,512)),l===void 0&&(l=1);var u=n.call(this)||this;u.fov=e,u.aspect=r,u.near=i,u.far=a,u.perspToOrtho=o,u.resolution=s,u.pixelRatio=l,u.needsRender=!0,u.refineModel=!0,u.pose={longitude:0,latitude:0,fov:e,distance:0,offset:new d.Vector3},u.computePose(),u.perspectiveCamera=new d.PerspectiveCamera(u.fov,u.aspect,.001,u.far);var c=Math.max(u.orthoDistance,.01)*Math.tan(.5*u.fov/180*Math.PI),f=-.5*u.aspect*2*c;return u.orthographicCamera=new d.OrthographicCamera(f,-f,c,-c,.001,u.far),u.computeProjectionMatrix(),u.lastValues={position:u.position.clone(),quaternion:u.quaternion.clone(),scale:u.scale.clone(),fov:u.fov,aspect:u.aspect,near:u.near,far:u.far,perspToOrtho:u.perspToOrtho.clone()},u.type=u.perspToOrtho.x<1?"PerspectiveCamera":"OrthographicCamera",u}return Object.defineProperty(t.prototype,"orthoDistance",{get:function(){return this.pose.distance>1?this.pose.distance:1+(this.pose.distance-1)*this.perspToOrtho.x},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"zoom",{get:function(){return this.type==="OrthographicCamera"?this.orthographicCamera.zoom:this.type==="PerspectiveCamera"?this.perspectiveCamera.zoom:1},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"top",{get:function(){return this.type==="OrthographicCamera"?this.orthographicCamera.top:0},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"bottom",{get:function(){return this.type==="OrthographicCamera"?this.orthographicCamera.bottom:0},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"left",{get:function(){return this.type==="OrthographicCamera"?this.orthographicCamera.left:0},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"right",{get:function(){return this.type==="OrthographicCamera"?this.orthographicCamera.right:0},enumerable:!1,configurable:!0}),t.prototype.getDirection=function(e){return Ft(this.pose,e)},t.prototype.computePose=function(e){e===void 0&&(e=0),this.updateMatrix();var r=this.matrix.elements,i=new d.Vector3().set(-r[8],-r[9],-r[10]).normalize();this.pose.longitude=Mo(-Math.atan2(i.x,-i.z)),this.pose.latitude=-Math.asin(i.y/1),this.pose.fov=this.fov,this.pose.distance=e;var a=new d.Vector3().add(this.position).add(i.clone().setLength(this.pose.distance));return this.pose.offset.copy(a),this},t.prototype.setFromPose=function(e){var r,i,a,o,s,l=Mo((r=e.longitude)!==null&&r!==void 0?r:this.pose.longitude),u=Math.max(-Co+1e-4,Math.min(Co-1e-4,(i=e.latitude)!==null&&i!==void 0?i:this.pose.latitude)),c=(a=e.fov)!==null&&a!==void 0?a:this.pose.fov,f=(o=e.distance)!==null&&o!==void 0?o:this.pose.distance,A=(s=e.offset)!==null&&s!==void 0?s:this.pose.offset,p=Ft({longitude:l,latitude:u}).normalize();return this.position.set(0,0,0),this.lookAt(p),this.position.add(A).sub(p.clone().setLength(f)),this.fov!==c&&(this.fov=c,this.updateProjectionMatrix()),this.updateMatrixWorld(),this.pose.longitude=l,this.pose.latitude=u,this.pose.fov=c,this.pose.distance=f,this.pose.offset.copy(A),this.needsRender=!0,this},t.prototype.copyPose=function(){return{longitude:this.pose.longitude,latitude:this.pose.latitude,fov:this.pose.fov,distance:this.pose.distance,offset:this.pose.offset.clone()}},t.prototype.computeProjectionMatrix=function(){Sc(this.orthographicCamera.projectionMatrix,this.perspectiveCamera.projectionMatrix,1-this.perspToOrtho.x,this.projectionMatrix),this.projectionMatrixInverse.getInverse(this.projectionMatrix),this.needsRender=!0},t.prototype.setViewOffset=function(e,r,i,a,o,s){this.perspectiveCamera.setViewOffset(e,r,i,a,o,s),this.orthographicCamera.setViewOffset(e,r,i,a,o,s),this.computeProjectionMatrix()},t.prototype.clearViewOffset=function(){this.perspectiveCamera.clearViewOffset(),this.orthographicCamera.clearViewOffset(),this.computeProjectionMatrix()},t.prototype.updateProjectionMatrix=function(){this.perspectiveCamera.updateProjectionMatrix(),this.orthographicCamera.updateProjectionMatrix(),this.computeProjectionMatrix()},Object.defineProperty(t.prototype,"perspectiveProjectionMatrix",{get:function(){return this.perspectiveCamera.projectionMatrix},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"perspectiveProjectionMatrixInverse",{get:function(){return this.perspectiveCamera.projectionMatrixInverse},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"orthographicProjectionMatrix",{get:function(){return this.orthographicCamera.projectionMatrix},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"orthographicProjectionMatrixInverse",{get:function(){return this.orthographicCamera.projectionMatrixInverse},enumerable:!1,configurable:!0}),t.prototype.updateTime=function(e,r){var i=!1;if((this.lastValues.fov!==this.fov||this.lastValues.near!==this.near||this.lastValues.far!==this.far||this.lastValues.aspect!==this.aspect)&&(this.perspectiveCamera.fov=this.fov,this.perspectiveCamera.near=this.near,this.perspectiveCamera.far=this.far,this.perspectiveCamera.aspect=this.aspect,this.perspectiveCamera.updateProjectionMatrix(),i=!0),!this.lastValues.position.equals(this.position)||!this.lastValues.quaternion.equals(this.quaternion)||!this.lastValues.scale.equals(this.scale)||!this.lastValues.perspToOrtho.equals(this.perspToOrtho)||this.lastValues.fov!==this.fov||this.lastValues.near!==this.near||this.lastValues.far!==this.far||this.lastValues.aspect!==this.aspect){var a=Math.max(this.orthoDistance,.01)*Math.tan(.5*this.fov/180*Math.PI),o=-.5*this.aspect*2*a;this.orthographicCamera.left=o,this.orthographicCamera.right=-o,this.orthographicCamera.top=a,this.orthographicCamera.bottom=-a,this.orthographicCamera.near=this.near,this.orthographicCamera.far=this.far,this.orthographicCamera.updateProjectionMatrix(),i=!0}i&&this.computeProjectionMatrix(),this.lastValues.position.copy(this.position),this.lastValues.quaternion.copy(this.quaternion),this.lastValues.scale.copy(this.scale),this.lastValues.fov=this.fov,this.lastValues.aspect=this.aspect,this.lastValues.near=this.near,this.lastValues.far=this.far,this.lastValues.perspToOrtho.copy(this.perspToOrtho),this.type=this.perspToOrtho.x<1?"PerspectiveCamera":"OrthographicCamera"},Object.defineProperty(t.prototype,"isPerspectiveCamera",{get:function(){return this.perspToOrtho.x<1},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"isOrthographicCamera",{get:function(){return this.perspToOrtho.x>=1},enumerable:!1,configurable:!0}),t.prototype.copy=function(e,r){return n.prototype.copy.call(this,e,r),this.fov=e.fov,this.aspect=e.aspect,this.near=e.near,this.far=e.far,this.perspToOrtho.copy(e.perspToOrtho),this.updateTime(be(),0),this},t}(d.Camera),Ic=new d.Vector4,Qn=new d.WebGLCubeRenderTarget(1).texture;Qn.name="EMPTY_TEXTURE";var Tc=Object.assign({modelAlpha:new d.Uniform(0),progress:new d.Uniform(0),pano0_map:new d.Uniform(Qn),pano0_luminanceMap:new d.Uniform(null),pano0_matrix:new d.Uniform(new d.Matrix4),pano1_map:new d.Uniform(Qn),pano1_luminanceMap:new d.Uniform(null),pano1_matrix:new d.Uniform(new d.Matrix4),clippers:new d.Uniform([]),shownFloorIndex:new d.Uniform(-1),constantColor:new d.Uniform(null),geometricError:new d.Uniform(0),pixelRatio:new d.Uniform(1),resolution:new d.Uniform(new d.Vector2(512,512)),floor:new d.Uniform(0)},{exposure:new d.Uniform(1),emissive:new d.Uniform(new d.Color(0)),emissiveMap:new d.Uniform(null),specular:new d.Uniform(new d.Color(1118481)),specularMap:new d.Uniform(null),normalMap:new d.Uniform(null),bumpMap:new d.Uniform(null),shininess:new d.Uniform(30)},d.UniformsUtils.clone(d.UniformsLib.common),d.UniformsUtils.clone(d.UniformsLib.lights)),Hn=function(n){de(t,n);function t(e){e===void 0&&(e={});var r,i,a,o,s,l,u,c,f,A,p,y,v,m,h,g,b,w,E,C,x=n.call(this,{vertexShader:wc,fragmentShader:Ec,uniforms:d.UniformsUtils.clone(Tc),defines:{USE_CONSTANT_COLOR:!1,USE_EDL:!1,USE_HQ_WEIGHT:!1,USE_HQ_DEPTH:!1,NUM_CLIPPING_BOX:!1,USE_CLIPFLOOR:!1,USE_VERTEX_FLOOR:!1,USE_MAP:!0,USE_UV:!0,USE_LUMINANCE:!1,USE_PANO_OPACITY:!1,USE_BLACK_TRANSITION:!1,USE_SPREAD_TRANSITION:!1,USE_POINT_NORMAL:!1,USE_POINT_CIRCLE:!1,USE_POINT_ADAPTIVE_SIZE:!1,USE_POINT_COLOR_ALTITUDE:!1},lights:!0})||this,M,S=null,P=null;return Object.defineProperties(x,{pano0:{get:function(){return S},set:function(I){if(S!==I){S=I,I===null?(this.uniforms.pano0_map.value=Qn,this.uniforms.pano0_luminanceMap.value=null,this.uniforms.pano0_matrix.value.identity()):(this.uniforms.pano0_map.value=I.map instanceof ke?I.map.texture:I.map,this.uniforms.pano0_luminanceMap.value=I.luminanceMap instanceof ke?I.luminanceMap.texture:I.luminanceMap,this.uniforms.pano0_matrix.value.copy(I.matrix));var B=this.uniforms.pano0_luminanceMap.value!==null&&this.uniforms.pano1_luminanceMap.value!==null,k=this.defines.USE_LUMINANCE;k!==B&&(this.defines.USE_LUMINANCE=B,this.needsUpdate=!0)}}},pano1:{get:function(){return P},set:function(I){if(P!==I){P=I,I===null?(this.uniforms.pano1_map.value=Qn,this.uniforms.pano1_luminanceMap.value=null,this.uniforms.pano1_matrix.value.identity()):(this.uniforms.pano1_map.value=I.map instanceof ke?I.map.texture:I.map,this.uniforms.pano1_luminanceMap.value=I.luminanceMap instanceof ke?I.luminanceMap.texture:I.luminanceMap,this.uniforms.pano1_matrix.value.copy(I.matrix));var B=this.uniforms.pano0_luminanceMap.value!==null&&this.uniforms.pano1_luminanceMap.value!==null,k=this.defines.USE_LUMINANCE;k!==B&&(this.defines.USE_LUMINANCE=B,this.needsUpdate=!0)}}},modelAlpha:{get:function(){return this.uniforms.modelAlpha.value},set:function(I){this.uniforms.modelAlpha.value=I}},progress:{get:function(){return this.uniforms.progress.value},set:function(I){this.uniforms.progress.value=I}},transition:{get:function(){return this.defines.USE_BLACK_TRANSITION?"BLACK":this.defines.USE_SPREAD_TRANSITION?"SPREAD":"FADE"},set:function(I){var B=this.defines.USE_BLACK_TRANSITION,k=this.defines.USE_SPREAD_TRANSITION;this.defines.USE_BLACK_TRANSITION=!1,this.defines.USE_SPREAD_TRANSITION=!1,this.defines["USE_".concat(I,"_TRANSITION")]=!0;var L=!1;B!==this.defines.USE_BLACK_TRANSITION&&(L=!0),k!==this.defines.USE_SPREAD_TRANSITION&&(L=!0),L&&(this.needsUpdate=!0)}},constantColor:{get:function(){return this.uniforms.constantColor.value},set:function(I){this.uniforms.constantColor.value=I;var B=this.defines.USE_CONSTANT_COLOR,k=I!==null;B!==k&&(this.defines.USE_CONSTANT_COLOR=k,this.needsUpdate=!0)}},opacity:{get:function(){return this.uniforms.opacity.value},set:function(I){this.uniforms.opacity.value=I}},shownFloorIndex:{get:function(){return this.uniforms.shownFloorIndex.value},set:function(I){this.uniforms.shownFloorIndex.value=I}},clippers:{get:function(){return M},set:function(I){M!==I&&(M=I,this.uniforms.clippers.value=(M||[]).map(function(B){var k=typeof B.floorIndex=="number"?B.floorIndex:-1,L=new d.Matrix4().getInverse(B.clippingBoxMatrix);return{matrixInverse:L,floorIndex:k}}),this.needsUpdate=!0)}},useEDL:{get:function(){return this.defines.USE_EDL},set:function(I){I!==this.defines.USE_EDL&&(this.defines.USE_EDL=I,this.needsUpdate=!0)}},useHQWeight:{get:function(){return this.defines.USE_HQ_WEIGHT},set:function(I){I!==this.defines.USE_HQ_WEIGHT&&(this.defines.USE_HQ_WEIGHT=I,this.needsUpdate=!0)}},useHQDepth:{get:function(){return this.defines.USE_HQ_DEPTH},set:function(I){I!==this.defines.USE_HQ_DEPTH&&(this.defines.USE_HQ_DEPTH=I,this.needsUpdate=!0)}},floor:{get:function(){return this.uniforms.floor.value},set:function(I){this.uniforms.floor.value=I}}}),x.pano0=(r=e.pano0)!==null&&r!==void 0?r:we.pano0,x.pano1=(i=e.pano1)!==null&&i!==void 0?i:we.pano1,x.modelAlpha=(a=e.modelAlpha)!==null&&a!==void 0?a:we.modelAlpha,x.progress=(o=e.progress)!==null&&o!==void 0?o:we.progress,x.transition=(s=e.transition)!==null&&s!==void 0?s:we.transition,x.constantColor=(l=e.constantColor)!==null&&l!==void 0?l:we.constantColor,x.opacity=(u=e.opacity)!==null&&u!==void 0?u:we.opacity,x.shownFloorIndex=(c=e.shownFloorIndex)!==null&&c!==void 0?c:we.shownFloorIndex,x.clippers=(f=e.clippers)!==null&&f!==void 0?f:we.clippers,x.useEDL=(A=e.useEDL)!==null&&A!==void 0?A:we.useEDL,x.useHQWeight=(p=e.useHQWeight)!==null&&p!==void 0?p:we.useHQWeight,x.useHQDepth=(y=e.useHQDepth)!==null&&y!==void 0?y:we.useHQDepth,x.pointSize=(v=e.pointSize)!==null&&v!==void 0?v:we.pointSize,x.pointColor=(m=e.pointColor)!==null&&m!==void 0?m:we.pointColor,x.pointShape=(h=e.pointShape)!==null&&h!==void 0?h:we.pointShape,x.pointScale=(g=e.pointScale)!==null&&g!==void 0?g:we.pointScale,x.pointBack=(b=e.pointBack)!==null&&b!==void 0?b:we.pointBack,x.pointMinPixel=(w=e.pointMinPixel)!==null&&w!==void 0?w:we.pointMinPixel,x.pointMaxPixel=(E=e.pointMaxPixel)!==null&&E!==void 0?E:we.pointMaxPixel,x.gradientTexture=(C=e.gradientTexture)!==null&&C!==void 0?C:we.gradientTexture,x.floor=0,x}return t.prototype.onBeforeCompile=function(e,r){var i,a,o=String((a=(i=this.clippers)===null||i===void 0?void 0:i.length)!==null&&a!==void 0?a:0);e.vertexShader=e.vertexShader.replace(/NUM_CLIPPERS/g,o),e.fragmentShader=e.fragmentShader.replace(/NUM_CLIPPERS/g,o)},t.prototype.update=function(e,r){this.transparent=this.shownFloorIndex>-1||this.opacity<1,this.blending=this.transparent?d.NormalBlending:d.NoBlending;var i;if(this.uniforms.map.value&&(i=this.uniforms.map.value),i?(i.updateMatrix(),this.uniforms.uvTransform.value.copy(i.matrix)):this.uniforms.uvTransform.value.identity(),r instanceof Si)this.uniforms.pixelRatio.value=r.pixelRatio,this.uniforms.resolution.value.copy(r.resolution);else{this.uniforms.pixelRatio.value=e.getPixelRatio();var a=e.getViewport(Ic);this.uniforms.resolution.value.set(a.z,a.w)}},t.prototype.syncModel=function(e){var r="".concat(e.id,":").concat(e.materialVersion);r!==this.syncModelVersion&&(Object.assign(this,e.getMaterial()),this.syncModelVersion=r)},t}(d.ShaderMaterial),jr=function(n){de(t,n);function t(e){var r=e.preserveDrawingBuffer,i=r===void 0?!0:r,a=e.premultipliedAlpha,o=a===void 0?!0:a,s=e.stencil,l=s===void 0?!0:s,u=e.backgroundColor,c=u===void 0?1579548:u,f=e.backgroundAlpha,A=f===void 0?1:f,p=e.pixelRatio,y=p===void 0?1:p,v=e.antialias,m=e.webgl2,h=this,g={antialias:v,alpha:!0,preserveDrawingBuffer:i,stencil:l,premultipliedAlpha:o,powerPreference:"high-performance"};if(m){var b=document.createElement("canvas"),w=b.getContext("webgl2",g);w?h=n.call(this,F(F({},g),{antialias:!0,canvas:b,context:w}))||this:(console.error("error occurred when getting webgl2 canvas context, mybe webgl2 not support, fallback to webgl."),h=n.call(this,g)||this)}else h=n.call(this,g)||this;return h.setPixelRatio(y),h.setClearColor(c,A),h.outputEncoding=d.sRGBEncoding,h.autoClear=!0,h}return t}(d.WebGLRenderer),uu=function(n){de(t,n);function t(){return n!==null&&n.apply(this,arguments)||this}return t.prototype.add=function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];return n.prototype.add.apply(this,e)},t.prototype.remove=function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];return n.prototype.remove.apply(this,e)},t}(d.Scene),dt;(function(n){n[n.Outside=-1]="Outside",n[n.Intersecting=0]="Intersecting",n[n.Inside=1]="Inside"})(dt||(dt={}));var lu=1e-6,De=new d.Vector3,Lr=new d.Matrix4,Ir=new d.Vector3,Tr=new d.Vector3,Pr=new d.Vector3,va=new d.Vector3,So=new d.Box3,Io=new d.Sphere,To=new d.Matrix4,Po=new d.Ray,lt=new d.Object3D,Bo=new d.Frustum;function cu(n,t){var e=n.elements;return t.setFromRotationMatrix(Lr.set(e[0],e[3],e[6],0,e[1],e[4],e[7],0,e[2],e[5],e[8],0,0,0,0,1)),t}var Rn=function(){function n(t){t===void 0&&(t=[]),this.planes=t}return Object.defineProperty(n,"MASK_OUTSIDE",{get:function(){return 4294967295},enumerable:!1,configurable:!0}),Object.defineProperty(n,"MASK_INSIDE",{get:function(){return 0},enumerable:!1,configurable:!0}),Object.defineProperty(n,"MASK_INDETERMINATE",{get:function(){return 2147483647},enumerable:!1,configurable:!0}),n.prototype.setFromFrustum=function(t){return this.planes=t.planes.map(function(e){return e.clone()}),this},n.prototype.setFromCamera=function(t){return Lr.multiplyMatrices(t.projectionMatrix,t.matrixWorldInverse),Bo.setFromProjectionMatrix(Lr),this.setFromFrustum(Bo),this},n.prototype.applyMatrix4=function(t){for(var e=0,r=this.planes;e<r.length;e++){var i=r[e];i.applyMatrix4(t)}},n.prototype.copy=function(t){return this.planes=t.planes.map(function(e){return e.clone()}),this},n.prototype.clone=function(){return new n().copy(this)},n.prototype.computeVisibility=function(t){for(var e=dt.Inside,r=0,i=this.planes;r<i.length;r++){var a=i[r],o=t.intersectPlane(a);switch(o){case dt.Outside:return dt.Outside;case dt.Intersecting:e=dt.Intersecting;break}}return e},n.prototype.computeVisibilityWithPlaneMask=function(t,e){if(e===n.MASK_OUTSIDE||e===n.MASK_INSIDE)return e;for(var r=n.MASK_INSIDE,i=Math.min(32,this.planes.length),a=0;a<i;++a){var o=1<<a;if(e&o){var s=this.planes[a],l=t.intersectPlane(s);if(l===dt.Outside)return n.MASK_OUTSIDE;l===dt.Intersecting&&(r|=o)}}return r},n}(),du=function(){function n(){this.type="box",this.center=new d.Vector3,this.halfSize=new d.Vector3,this.rotation=new d.Matrix3}return n.prototype.fromJson=function(t){var e=t.box;this.center.set(e[0],e[1],e[2]);var r=e[3],i=e[4],a=e[5],o=e[6],s=e[7],l=e[8],u=e[9],c=e[10],f=e[11],A=Math.sqrt(r*r+i*i+a*a),p=Math.sqrt(o*o+s*s+l*l),y=Math.sqrt(u*u+c*c+f*f);this.halfSize.set(A,p,y);var v=this.halfSize.toArray().reduce(function(m,h){return m+h},0);return(isNaN(v)||v<=0)&&this.halfSize.setScalar(lu),this.rotation.fromArray([r/A,i/A,a/A,o/p,s/p,l/p,u/y,c/y,f/y]),isNaN(this.rotation.toArray().reduce(function(m,h){return m+h},0))&&this.rotation.identity(),this},n.prototype.toJson=function(){return this.rotation.extractBasis(Ir,Tr,Pr),{box:ht(ht(ht(ht([],this.center.toArray(),!0),Ir.multiplyScalar(this.halfSize.x).toArray(),!0),Tr.multiplyScalar(this.halfSize.y).toArray(),!0),Pr.multiplyScalar(this.halfSize.z).toArray(),!0)}},n.prototype.copy=function(t){return this.center.copy(t.center),this.halfSize.copy(t.halfSize),this.rotation.copy(t.rotation),this},n.prototype.clone=function(){return new n().copy(this)},n.prototype.applyMatrix4=function(t){return lt.position.copy(this.center),cu(this.rotation,lt.quaternion),lt.scale.copy(this.halfSize),lt.matrix.compose(lt.position,lt.quaternion,lt.scale),lt.matrix.premultiply(t),lt.matrix.decompose(lt.position,lt.quaternion,lt.scale),this.center.copy(lt.position),this.rotation.setFromMatrix4(Lr.makeRotationFromQuaternion(lt.quaternion)),this.halfSize.copy(lt.scale),this},n.prototype.getCenter=function(t){return t.copy(this.center)},n.prototype.distanceSquaredToPoint=function(t){var e=this.rotation.elements,r=t.x-this.center.x,i=t.y-this.center.y,a=t.z-this.center.z,o=0,s;return s=r*e[0]+i*e[1]+a*e[2],s<0&&(s=-s),s-=this.halfSize.x,s>0&&(o+=s*s),s=r*e[3]+i*e[4]+a*e[5],s<0&&(s=-s),s-=this.halfSize.y,s>0&&(o+=s*s),s=r*e[6]+i*e[7]+a*e[8],s<0&&(s=-s),s-=this.halfSize.z,s>0&&(o+=s*s),o},n.prototype.distanceToPoint=function(t){return Math.sqrt(this.distanceSquaredToPoint(t))},n.prototype.distanceToPlane=function(t){var e=t.projectPoint(this.center,new d.Vector3);return this.distanceToPoint(e)},n.prototype.getBoundingBox=function(t){return t.makeEmpty(),this.rotation.extractBasis(Ir,Tr,Pr),Ir.setLength(this.halfSize.x),Tr.setLength(this.halfSize.y),Pr.setLength(this.halfSize.z),t.expandByPoint(De.copy(this.center).add(Ir)),t.expandByPoint(De.copy(this.center).sub(Ir)),t.expandByPoint(De.copy(this.center).add(Tr)),t.expandByPoint(De.copy(this.center).sub(Tr)),t.expandByPoint(De.copy(this.center).add(Pr)),t.expandByPoint(De.copy(this.center).sub(Pr)),t},n.prototype.toGeometry=function(){var t=new Uint16Array([0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,1,5,2,6,3,7]),e=new Float32Array(8*3);De.set(this.halfSize.x,this.halfSize.y,this.halfSize.z).applyMatrix3(this.rotation).add(this.center).toArray(e,0),De.set(-this.halfSize.x,this.halfSize.y,this.halfSize.z).applyMatrix3(this.rotation).add(this.center).toArray(e,3),De.set(-this.halfSize.x,-this.halfSize.y,this.halfSize.z).applyMatrix3(this.rotation).add(this.center).toArray(e,6),De.set(this.halfSize.x,-this.halfSize.y,this.halfSize.z).applyMatrix3(this.rotation).add(this.center).toArray(e,9),De.set(this.halfSize.x,this.halfSize.y,-this.halfSize.z).applyMatrix3(this.rotation).add(this.center).toArray(e,12),De.set(-this.halfSize.x,this.halfSize.y,-this.halfSize.z).applyMatrix3(this.rotation).add(this.center).toArray(e,15),De.set(-this.halfSize.x,-this.halfSize.y,-this.halfSize.z).applyMatrix3(this.rotation).add(this.center).toArray(e,18),De.set(this.halfSize.x,-this.halfSize.y,-this.halfSize.z).applyMatrix3(this.rotation).add(this.center).toArray(e,21);var r=new d.BufferGeometry;return r.setIndex(new d.BufferAttribute(t,1)),r.setAttribute("position",new d.BufferAttribute(e,3)),r.computeBoundingBox(),r.computeBoundingSphere(),r},n.prototype.intersectPlane=function(t){var e=this.center,r=t.normal,i=this.rotation.elements,a=this.halfSize,o=r.x,s=r.y,l=r.z,u=Math.abs(o*i[0]*a.x+s*i[1]*a.x+l*i[2]*a.x)+Math.abs(o*i[3]*a.y+s*i[4]*a.y+l*i[5]*a.y)+Math.abs(o*i[6]*a.z+s*i[7]*a.z+l*i[8]*a.z),c=r.dot(e)+t.constant;return c<=-u?dt.Outside:c>=u?dt.Inside:dt.Intersecting},n.prototype.intersectRay=function(t,e){va.copy(this.halfSize).multiplyScalar(2),So.setFromCenterAndSize(De.set(0,0,0),va),this.rotation.extractBasis(Ir,Tr,Pr),Lr.makeBasis(Ir,Tr,Pr),Lr.setPosition(this.center),To.getInverse(Lr),Po.copy(t).applyMatrix4(To);var r=Po.intersectBox(So,De);return r?e!==void 0?r.applyMatrix4(Lr).distanceTo(t.origin)<e:!0:!1},n}(),fu=function(){function n(){this.type="sphere",this.center=new d.Vector3,this.radius=-1}return n.prototype.fromJson=function(t){var e=t.sphere;return this.center.set(e[0],e[1],e[2]),this.radius=Math.max(e[3],lu),this},n.prototype.toJson=function(){return{sphere:ht(ht([],this.center.toArray(),!0),[this.radius],!1)}},n.prototype.copy=function(t){return this.center.copy(t.center),this.radius=t.radius,this},n.prototype.clone=function(){return new n().copy(this)},n.prototype.getBoundingBox=function(t){return t.setFromCenterAndSize(this.center,va.set(1,1,1).multiplyScalar(this.radius*2)),t},n.prototype.toGeometry=function(){for(var t=32,e=new Float32Array(t*3*2*2),r=0;r<=t;r++){var i=0;i=r/t*Math.PI*2,e[r*6+0]=this.center.x+Math.cos(i)*this.radius,e[r*6+1]=this.center.y+Math.sin(i)*this.radius,e[r*6+2]=this.center.z+0,i=(r+1)/t*Math.PI*2,e[r*6+3]=this.center.x+Math.cos(i)*this.radius,e[r*6+4]=this.center.y+Math.sin(i)*this.radius,e[r*6+5]=this.center.z+0}for(var r=t;r<=t*2;r++){var i=0;i=r/t*Math.PI*2,e[r*6+0]=this.center.x+Math.cos(i)*this.radius,e[r*6+1]=this.center.y+0,e[r*6+2]=this.center.z+Math.sin(i)*this.radius,i=(r+1)/t*Math.PI*2,e[r*6+3]=this.center.x+Math.cos(i)*this.radius,e[r*6+4]=this.center.y+0,e[r*6+5]=this.center.z+Math.sin(i)*this.radius}var a=new d.BufferGeometry;return a.setAttribute("position",new d.BufferAttribute(e,3)),a.computeBoundingBox(),a.computeBoundingSphere(),a},n.prototype.applyMatrix4=function(t){return this.center.applyMatrix4(t),this.radius=this.radius*t.getMaxScaleOnAxis(),this},n.prototype.getCenter=function(t){return t.copy(this.center)},n.prototype.distanceSquaredToPoint=function(t){var e=this.distanceToPoint(t);return e*e},n.prototype.distanceToPoint=function(t){var e=this.center.distanceTo(t)-this.radius;return e<=0?0:e},n.prototype.distanceToPlane=function(t){var e=Math.abs(t.distanceToPoint(this.center));return Math.max(0,e-this.radius)},n.prototype.intersectPlane=function(t){var e=this.center,r=this.radius,i=t.normal,a=i.dot(e)+t.constant;return a<-r?dt.Outside:a<r?dt.Intersecting:dt.Inside},n.prototype.intersectRay=function(t,e){Io.set(this.center,this.radius);var r=t.intersectSphere(Io,De);return r?e!==void 0?t.origin.distanceTo(r)<e:!0:!1},n}(),Pc=function(){function n(){throw this.type="regin",this.west=0,this.south=0,this.east=0,this.north=0,this.minHeight=0,this.maxHeight=0,new Error("Region bounding volume not supported.")}return n.prototype.fromJson=function(t){var e=t.region;return this.west=e[0],this.south=e[1],this.east=e[2],this.north=e[3],this.minHeight=e[4],this.maxHeight=e[5],this},n.prototype.toJson=function(){return{region:[this.west,this.south,this.east,this.north,this.minHeight,this.maxHeight]}},n.prototype.copy=function(t){return this.west=t.west,this.south=t.south,this.east=t.east,this.north=t.north,this.minHeight=t.minHeight,this.maxHeight=t.maxHeight,this},n.prototype.clone=function(){return new n().copy(this)},n.prototype.getBoundingBox=function(t){throw new Error("not implemented")},n.prototype.toGeometry=function(){throw new Error("not implemented")},n.prototype.applyMatrix4=function(t){throw new Error("not implemented")},n.prototype.getCenter=function(t){throw new Error("not implemented")},n.prototype.distanceToPoint=function(t){throw new Error("not implemented")},n.prototype.distanceSquaredToPoint=function(t){throw new Error("not implemented")},n.prototype.distanceToPlane=function(t){throw new Error("not implemented")},n.prototype.intersectPlane=function(t){throw new Error("not implemented")},n.prototype.intersectRay=function(t){throw new Error("not implemented")},n}();function ai(n){if("box"in n)return new du().fromJson(n);if("sphere"in n)return new fu().fromJson(n);if("region"in n)return new Pc().fromJson(n);throw new Error("BoundingVolume ".concat(JSON.stringify(n)," never suppored."))}var Yn=[4821759,8191922,16637280,16739958,5822969,376977,16747077,9259235,14514687].map(function(n){return new d.LineBasicMaterial({color:n,depthWrite:!1,depthTest:!1,transparent:!0})}),Bc=function(){var n=new Uint16Array([0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,1,5,2,6,3,7]),t=new Float32Array(8*3);De.set(1,1,1).toArray(t,0),De.set(-1,1,1).toArray(t,3),De.set(-1,-1,1).toArray(t,6),De.set(1,-1,1).toArray(t,9),De.set(1,1,-1).toArray(t,12),De.set(-1,1,-1).toArray(t,15),De.set(-1,-1,-1).toArray(t,18),De.set(1,-1,-1).toArray(t,21);var e=new d.BufferGeometry;return e.setIndex(new d.BufferAttribute(n,1)),e.setAttribute("position",new d.BufferAttribute(t,3)),e.computeBoundingBox(),e.computeBoundingSphere(),e}(),Rc=function(){for(var n=32,t=new Float32Array(n*3*2*2),e=0;e<=n;e++){var r=0;r=e/n*Math.PI*2,t[e*6+0]=Math.cos(r),t[e*6+1]=Math.sin(r),t[e*6+2]=0,r=(e+1)/n*Math.PI*2,t[e*6+3]=Math.cos(r),t[e*6+4]=Math.sin(r),t[e*6+5]=0}for(var e=n;e<=n*2;e++){var r=0;r=e/n*Math.PI*2,t[e*6+0]=Math.cos(r),t[e*6+1]=0,t[e*6+2]=Math.sin(r),r=(e+1)/n*Math.PI*2,t[e*6+3]=Math.cos(r),t[e*6+4]=0,t[e*6+5]=Math.sin(r)}var i=new d.BufferGeometry;return i.setAttribute("position",new d.BufferAttribute(t,3)),i.computeBoundingBox(),i.computeBoundingSphere(),i}();function Fc(n,t){if(n instanceof du){var e=new d.LineSegments(Bc,Yn[Math.min(t,Yn.length-1)]);return e.position.copy(n.center),cu(n.rotation,e.quaternion),e.scale.set(n.halfSize.x,n.halfSize.y,n.halfSize.z),e.matrix.compose(e.position,e.quaternion,e.scale),e}else if(n instanceof fu){var e=new d.LineSegments(Rc,Yn[Math.min(t,Yn.length-1)]);return e.position.copy(n.center),e.scale.set(n.radius,n.radius,n.radius),e.matrix.compose(e.position,e.quaternion,e.scale),e}throw new Error("never")}var Ga=function(){function n(t,e,r,i){var a=this,o,s,l;this.parent=null,this.id=t,this.state={visible:!1,frameNumber:0,selectedFrameNumber:0,requestedFrameNumber:0,touchedFrameNumber:0,selectionDepth:0,shouldRefine:!1,distanceToCamera:0,screenSpaceError:0,visibilityPlaneMask:0,inRequestVolume:!1},this.parent=i!=null?i:null,this.tileset=r,this.refine=(o=e.refine)!==null&&o!==void 0?o:this.parent?this.parent.refine:"REPLACE",this.transform=new d.Matrix4,e.transform&&this.transform.fromArray(e.transform),this.parent&&this.transform.premultiply(this.parent.transform),typeof e.geometricError=="number"?this.geometricError=e.geometricError*this.transform.getMaxScaleOnAxis():this.geometricError=(l=(s=this.parent)===null||s===void 0?void 0:s.geometricError)!==null&&l!==void 0?l:0,e.content&&e.content.uri?(this.content={uri:e.content.uri,loadState:"UNLOADED",byteLength:0},e.content.group!==void 0&&(this.content.group=e.content.group),e.content.boundingVolume&&(this.content.boundingVolume=ai(e.content.boundingVolume).applyMatrix4(this.transform)),/\.json$/.test(this.content.uri)?this.type="TILESET":this.type="SCENEGRAPH"):(this.content=null,this.type="EMPTY"),e.boundingVolume&&(this.boundingVolume=ai(e.boundingVolume).applyMatrix4(this.transform)),e.viewerRequestVolume&&(this.viewerRequestVolume=ai(e.viewerRequestVolume).applyMatrix4(this.transform)),this.extras=e.extras||{},e.children?this.children=e.children.map(function(u,c){return new n("".concat(a.id,".").concat(c),u,r,a)}):this.children=[]}return n.prototype.updateState=function(t){this.state.frameNumber=t.frameNumber;var e=this.tileset.transformIsIdentity?null:this.tileset.transform;if(this.boundingVolume){var r=e?this.boundingVolume.clone().applyMatrix4(e):this.boundingVolume;if(t.camera.type==="OrthographicCamera"){var i=new d.Plane().setFromNormalAndCoplanarPoint(t.camera.direction,t.camera.position);this.state.distanceToCamera=r.distanceToPlane(i)}else this.state.distanceToCamera=r.distanceToPoint(t.camera.position);var a=this.parent?this.parent.state.visibilityPlaneMask:Rn.MASK_INDETERMINATE;this.state.visibilityPlaneMask=t.cullingVolume.computeVisibilityWithPlaneMask(r,a),this.state.visible=this.state.visibilityPlaneMask!==Rn.MASK_OUTSIDE}else this.state.distanceToCamera=0,this.state.visibilityPlaneMask=Rn.MASK_INDETERMINATE,this.state.visible=!0;if(this.viewerRequestVolume){var o=e?this.viewerRequestVolume.clone().applyMatrix4(e):this.viewerRequestVolume;this.state.inRequestVolume=o.distanceSquaredToPoint(t.camera.position)<=0}else this.state.inRequestVolume=!0;this.state.screenSpaceError=this.getScreenSpaceError(t,this.state.distanceToCamera,!1)},Object.defineProperty(n.prototype,"selected",{get:function(){return this.state.selectedFrameNumber===this.tileset.frameNumber},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"hasChildren",{get:function(){return this.children.length>0},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"siblingIndex",{get:function(){var t,e;return(e=(t=this.parent)===null||t===void 0?void 0:t.children.indexOf(this))!==null&&e!==void 0?e:0},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"hasTilesetContent",{get:function(){return this.children.length>0&&this.type==="TILESET"},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"hasRenderContent",{get:function(){return this.type==="MESH"||this.type==="SCENEGRAPH"},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"contentAvailable",{get:function(){var t;return this.hasRenderContent&&((t=this.content)===null||t===void 0?void 0:t.loadState)==="READY"},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"hasUnloadedContent",{get:function(){var t;return((t=this.content)===null||t===void 0?void 0:t.loadState)==="UNLOADED"},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"hasEmptyContent",{get:function(){return this.type==="EMPTY"},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"contentReady",{get:function(){var t;return((t=this.content)===null||t===void 0?void 0:t.loadState)==="READY"||this.hasEmptyContent},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"contentByteLength",{get:function(){return this.content?this.content.byteLength:0},enumerable:!1,configurable:!0}),n.prototype.loadContent=function(){var t=this,e;if(this.hasEmptyContent||!(!((e=this.content)===null||e===void 0)&&e.uri))return Promise.resolve(!1);var r=this.content;return r.data?Promise.resolve(!0):(r.loadState="LOADING",this.tileset.requestScheduler.scheduleRequest(this.id,function(){return t.getPriority()}).then(function(i){return i?t.tileset.options.contentLoader(t).then(function(a){return i.done(),r.loadState=a?"READY":"UNLOADED",a}).catch(function(a){return r.loadState="FAILED",i.done(),Promise.reject(a)}):(r.loadState="UNLOADED",Promise.resolve(!1))}))},n.prototype.unloadContent=function(){return this.content&&(this.content.loadState="UNLOADED",this.content.byteLength=0),!0},n.prototype.getScreenSpaceError=function(t,e,r){var i=this.tileset.transformIsIdentity?1:this.tileset.transform.getMaxScaleOnAxis(),a=this.parent?this.parent.geometricError:this.tileset.geometricError,o=i*(r?a:this.geometricError);if(o===0)return 0;var s=Math.max(e,.001),l=o*t.height/(s*t.sseDenominator);return l},n.prototype.getPriority=function(){var t=this.refine==="ADD"||this.tileset.skipLevelOfDetail;if(t&&!this.state.visible||this.tileset.frameNumber-this.state.touchedFrameNumber>=1||this.content.loadState==="UNLOADED")return-1;var e=this.parent,r=e&&(!t||this.state.screenSpaceError===0),i=r?e.state.screenSpaceError:this.state.screenSpaceError,a=this.tileset.root?this.tileset.root.state.screenSpaceError:0,o=Math.max(a-i,0);return o},n}(),Aa=function(){function n(){this.maxRequests=n.DEFAULT_MAX_REQUESTS,this.activeRequests=0,this.requestQueue=[],this.requestMap=new Map,this.deferred=null}return n.prototype.scheduleRequest=function(t,e){var r=this.requestMap.get(t);if(r)return r;var i={identiy:t,priority:0,getPriority:e,resolve:function(){}},a=new Promise(function(o){return i.resolve=o});return this.requestQueue.push(i),this.requestMap.set(t,a),this.issueNewRequests(),a},n.prototype.reset=function(){for(var t=0,e=this.requestQueue;t<e.length;t++){var r=e[t];r.resolve(null)}this.requestQueue.length=0,this.requestMap.clear(),this.activeRequests=0},n.prototype.issueRequest=function(t){var e=this,r=t.identiy,i=t.resolve,a=!1,o=function(){a||(a=!0,e.requestMap.delete(r),e.activeRequests--,e.issueNewRequests())};this.activeRequests++,i({done:o})},n.prototype.issueNewRequests=function(){var t=this;this.deferred||(this.deferred=setTimeout(function(){return t.issueNewRequestsAsync()},0))},n.prototype.issueNewRequestsAsync=function(){this.deferred=null;var t=Math.max(this.maxRequests-this.activeRequests,0);if(t!==0){this.updateAllRequests();for(var e=0;e<t;e++){var r=this.requestQueue.shift();if(r)this.issueRequest(r);else break}}},n.prototype.updateAllRequests=function(){for(var t=this.requestQueue,e=0;e<t.length;e++){var r=t[e];this.updateRequest(r)===!1&&(t.splice(e,1),this.requestMap.delete(r.identiy),e--)}t.sort(function(i,a){return i.priority-a.priority})},n.prototype.updateRequest=function(t){return t.priority=t.getPriority(t.identiy),t.priority<0?(t.resolve(null),!1):!0},n.DEFAULT_MAX_REQUESTS=6,n}(),kc=function(){function n(t,e,r){this.item=t,this.previous=e,this.next=r}return n}(),Lc=function(){function n(){this.head=null,this.tail=null,this._length=0}return Object.defineProperty(n.prototype,"length",{get:function(){return this._length},enumerable:!1,configurable:!0}),n.prototype.add=function(t){var e=new kc(t,this.tail,null);return this.tail?(this.tail.next=e,this.tail=e):(this.head=e,this.tail=e),this._length++,e},n.prototype.remove=function(t){t.previous&&t.next?(t.previous.next=t.next,t.next.previous=t.previous):t.previous?(t.previous.next=null,this.tail=t.previous):t.next?(t.next.previous=null,this.head=t.next):(this.head=null,this.tail=null),t.next=null,t.previous=null,this._length--},n.prototype.splice=function(t,e){t!==e&&(this.remove(e),this.insert(t,e))},n.prototype.insert=function(t,e){var r=t.next;t.next=e,this.tail===t?this.tail=e:r.previous=e,e.next=r,e.previous=t,this._length++},n.prototype.toArray=function(){for(var t=[],e=this.head;e;)t.push(e),e=e.next;return t},n}(),hu=function(){function n(){this.cacheNodeMap=new Map,this.list=new Lc,this.sentinel=this.list.add("sentinel")}return n.prototype.reset=function(){this.list.tail&&this.list.splice(this.list.tail,this.sentinel)},n.prototype.touch=function(t){var e=this.cacheNodeMap.get(t);e&&this.list.splice(this.sentinel,e)},n.prototype.add=function(t,e){if(!this.cacheNodeMap.has(t)){var r=this.list.add(t);this.cacheNodeMap.set(t,r),e&&e(t)}},n.prototype.unloadTile=function(t,e){var r=this.cacheNodeMap.get(t);r&&(this.list.remove(r),this.cacheNodeMap.delete(t),e&&e(t))},n.prototype.unloadTiles=function(t,e){for(var r=this.list.head;r!==this.sentinel&&t();){var i=r.item;r=r.next,this.unloadTile(i,e)}},n.prototype.toArray=function(){for(var t=[],e=0,r=this.list.toArray();e<r.length;e++){var i=r[e];i.item!=="sentinel"&&t.push(i.item)}return t},n}(),Ro=function(){function n(){this.map=new Map,this.array=[],this._length=0}return Object.defineProperty(n.prototype,"length",{get:function(){return this._length},enumerable:!1,configurable:!0}),n.prototype.get=function(t){return this.array[t]},n.prototype.set=function(t,e){t>=this.length&&(this._length=t+1),this.map.has(this.array[t])&&this.map.delete(this.array[t]),this.array[t]=e,this.map.set(e,t)},n.prototype.delete=function(t){var e=this.map.get(t);e!==void 0&&e>=0&&(this.array.splice(e,1),this.map.delete(t),this._length--)},n.prototype.push=function(t){if(!this.map.has(t)){var e=this._length++;this.array[e]=t,this.map.set(t,e)}},n.prototype.pop=function(){var t=this.array[--this._length];return this.map.delete(t),t},n.prototype.reset=function(){this.array=[],this.map=new Map,this._length=0},n.prototype.find=function(t){return this.map.has(t)},n}(),ma=function(){function n(){this.loadSiblings=n.DEFAULT_LOAD_SIBLINGS,this.skipLevelOfDetail=n.DEFAULT_SKIP_LEVEL_OF_DETAIL,this.maxScreenSpaceError=n.DEFAULT_MAX_SCREEN_SPACE_ERROR,this._canSelectTile=!0,this._traversalStack=new Ro,this._emptyTraversalStack=new Ro,this.root=null,this.selectedTiles=new Map,this.requestedTiles=new Map,this.needsRefinedTiles=new Map,this.emptyTiles=new Map}return n.prototype.traverse=function(t,e,r){r===void 0&&(r=[]),this.root=t,this.reset();for(var i=0,a=r;i<a.length;i++){var o=a[i];this._traversalStack.reset(),this._emptyTraversalStack.reset(),o.camera.refine&&(this._canSelectTile=o.camera.visible,this.updateTile(t,o),this.executeTraversal(t,o))}this._traversalStack.reset(),this._emptyTraversalStack.reset(),e.camera.refine&&(this._canSelectTile=e.camera.visible,this.updateTile(t,e),this.executeTraversal(t,e))},n.prototype.reset=function(){this.needsRefinedTiles.clear(),this.requestedTiles.clear(),this.selectedTiles.clear(),this.emptyTiles.clear(),this._traversalStack.reset(),this._emptyTraversalStack.reset()},n.prototype.executeTraversal=function(t,e){var r=this._traversalStack;if(t.state.selectionDepth=0,e.maxLevelOfDetail>=0)for(t.state.visible&&t.state.inRequestVolume&&r.push(t);r.length>0;){var i=r.pop(),a=!1;if(this.canTraverse(i,e,!1,!1)){var o=i.hasRenderContent?i.state.selectionDepth+1:i.state.selectionDepth;this.updateChildTiles(i,e,o),a=this.updateAndPushChildren(i,e,r)}var s=i.parent,l=!s||s.state.shouldRefine,u=!a;i.hasRenderContent?i.refine==="ADD"?(this.loadTile(i,e.frameNumber),this.selectTile(i,e)):i.refine==="REPLACE"&&(this.loadTile(i,e.frameNumber),u&&this.selectTile(i,e)):(this.emptyTiles.set(i.id,i),this.loadTile(i,e.frameNumber),u&&this.selectTile(i,e)),this.touchTile(i,e),i.state.shouldRefine=a&&l}},n.prototype.updateChildTiles=function(t,e,r){for(var i=t.children,a=0,o=i;a<o.length;a++){var s=o[a];s.state.selectionDepth=r,this.updateTile(s,e)}return!0},n.prototype.updateAndPushChildren=function(t,e,r){for(var i=t.children,a=t.refine==="REPLACE"&&t.hasRenderContent&&!this.skipLevelOfDetail,o=!1,s=!0,l=0,u=i;l<u.length;l++){var c=u[l];if(c.state.visible&&c.state.inRequestVolume?(r.find(c)&&r.delete(c),r.push(c),o=!0):(a||this.loadSiblings)&&(this.loadTile(c,e.frameNumber),this.touchTile(c,e)),a){var f=void 0;c.state.inRequestVolume?c.hasRenderContent?f=c.contentAvailable:f=this.executeEmptyTraversal(c,e):f=!1,s=s&&f}}return o||(s=!1),s},n.prototype.updateTile=function(t,e){this.updateTileVisibility(t,e)},n.prototype.selectTile=function(t,e){this.shouldSelectTile(t)&&(t.state.selectedFrameNumber=e.frameNumber,this.selectedTiles.set(t.id,t)),this.needsRefinedTiles.set(t.id,t)},n.prototype.loadTile=function(t,e){this.shouldLoadTile(t)&&(t.state.requestedFrameNumber=e,this.requestedTiles.set(t.id,t)),this.needsRefinedTiles.set(t.id,t)},n.prototype.touchTile=function(t,e){t.tileset.cache.touch(t),t.state.touchedFrameNumber=e.frameNumber},n.prototype.canTraverse=function(t,e,r,i){return t.hasChildren?t.hasTilesetContent?!0:!i&&!t.state.visible?!1:this.shouldRefine(t,e,r):!1},n.prototype.shouldLoadTile=function(t){return t.hasUnloadedContent},n.prototype.shouldSelectTile=function(t){return t.contentAvailable&&!this.skipLevelOfDetail&&this._canSelectTile},n.prototype.shouldRefine=function(t,e,r){if(t.hasEmptyContent)return!0;if(t.state.selectionDepth>=e.maxLevelOfDetail)return!1;if(t.state.selectionDepth<e.minLevelOfDetail)return!0;var i=t.state.screenSpaceError;return r&&(i=t.getScreenSpaceError(e,t.state.distanceToCamera,!0)),i>this.maxScreenSpaceError},n.prototype.updateTileVisibility=function(t,e){if(t.updateState(e),!(!t.state.visible||!t.state.inRequestVolume)){var r=t.children.length>0;if(t.hasTilesetContent&&r){var i=t.children[0];this.updateTileVisibility(i,e),t.state.visible=i.state.visible;return}if(this.meetsScreenSpaceErrorEarly(t,e)){t.state.visible=!1;return}}},n.prototype.meetsScreenSpaceErrorEarly=function(t,e){var r=t.parent;return!r||r.refine!=="ADD"?!1:!this.shouldRefine(t,e,!0)},n.prototype.compareDistanceToCamera=function(t,e){return e.state.distanceToCamera-t.state.distanceToCamera},n.prototype.executeEmptyTraversal=function(t,e){var r=!0,i=this._emptyTraversalStack;for(i.push(t);i.length>0&&r;){var a=i.pop();this.updateTile(a,e),a.state.visible||this.loadTile(a,e.frameNumber),this.touchTile(a,e);var o=!a.hasRenderContent&&this.canTraverse(a,e,!1,!0);if(o)for(var s=a.children,l=0,u=s;l<u.length;l++){var c=u[l];i.find(c)&&i.delete(c),i.push(c)}else a.contentAvailable||(r=!1)}return r},n.DEFAULT_SKIP_LEVEL_OF_DETAIL=!1,n.DEFAULT_LOAD_SIBLINGS=!1,n.DEFAULT_MAX_SCREEN_SPACE_ERROR=4,n}(),Oc=new d.Matrix4,oi=function(){function n(t,e,r){var i,a;this.id=t,this.transform=new d.Matrix4,this.transformIsIdentity=!0,this.asset={version:e.asset.version,tilesetVersion:e.asset.tilesetVersion||"",gltfUpAxis:(i=e.asset.gltfUpAxis)!==null&&i!==void 0?i:"Y",overview:e.asset.overview},this.properties=(a=e.properties)!==null&&a!==void 0?a:{},this.options=r,this.traverser=new ma,this.cache=new hu,this.requestScheduler=new Aa,this.frameNumber=0,this.pendingCount=0,this.tiles=new Map,this.memoryUsageInBytes=0,this.root=new Ga("".concat(this.id,".0"),e.root,this),this.geometricError=e.geometricError,this.maxMemoryUsage=n.DEFAULT_MAX_MEMORY_USAGE}return Object.defineProperty(n.prototype,"maxRequests",{get:function(){return this.requestScheduler.maxRequests},set:function(t){this.requestScheduler.maxRequests=t},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"skipLevelOfDetail",{get:function(){return this.traverser.skipLevelOfDetail},set:function(t){this.traverser.skipLevelOfDetail=t},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"maxScreenSpaceError",{get:function(){return this.traverser.maxScreenSpaceError},set:function(t){this.traverser.maxScreenSpaceError=t},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"selectedTiles",{get:function(){return this.traverser.selectedTiles},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"needsRefinedTiles",{get:function(){return this.traverser.needsRefinedTiles},enumerable:!1,configurable:!0}),n.prototype.reset=function(){for(var t=this,e=[this.root],r;r=e.pop();){for(var i=0,a=r.children.length;i<a;i++)e.push(r.children[i]);this.cache.unloadTile(r,function(o){return t.unloadTile(o)})}this.cache.reset(),this.traverser.reset(),this.requestScheduler.reset(),this.tiles.clear()},n.prototype.isLoaded=function(){return this.pendingCount===0&&this.frameNumber!==0},n.prototype.traverse=function(t,e){var r=this;e===void 0&&(e=[]),this.transformIsIdentity=this.transform.equals(Oc),this.traverser.traverse(this.root,t,e),this.selectedTiles.forEach(function(i){r.tiles.set(i.id,i)}),this.traverser.requestedTiles.forEach(function(i){i.hasUnloadedContent&&r.loadTile(i)}),this.cache.unloadTiles(function(){var i=r.memoryUsageInBytes>r.maxMemoryUsage*1024*1024;return i},function(i){r.unloadTile(i),r.tiles.delete(i.id)})},n.prototype.loadTile=function(t){var e=this;this.pendingCount++,t.loadContent().catch(function(r){return e.options.onTileError(t,r),!1}).then(function(r){var i;e.pendingCount--,r&&(!((i=t.content)===null||i===void 0)&&i.data&&e.cache.add(t,function(){e.memoryUsageInBytes+=t.contentByteLength}),e.options.onTileLoad(t))})},n.prototype.unloadTile=function(t){this.memoryUsageInBytes-=t.contentByteLength,this.options.onTileUnload(t),t.unloadContent()},n.DEFAULT_VIEW_DISTANCE_SCALE=1,n.DEFAULT_MAX_MEMORY_USAGE=16,n.DEFAULT_MAX_SCREEN_SPACE_ERROR=ma.DEFAULT_MAX_SCREEN_SPACE_ERROR,n.DEFAULT_MAX_REQUESTS=Aa.DEFAULT_MAX_REQUESTS,n}(),hn=function(){function n(t,e,r,i,a){this.id=t,this.extents=e,this.startIndex=r,this.endIndex=i,this.deepth=a}return n}(),yr=6*4+4+4+2+2;function pu(n,t){for(var e=new ArrayBuffer(t*yr),r=new Float32Array(e),i=new Uint32Array(e),a=new Uint16Array(e),o=[n],s,l;s=o.pop();)l=s.id*yr/4,r[l]=s.extents[0],r[l+1]=s.extents[1],r[l+2]=s.extents[2],r[l+3]=s.extents[3],r[l+4]=s.extents[4],r[l+5]=s.extents[5],i[l+6]=s.startIndex,i[l+7]=s.endIndex,l=s.id*yr/2,s.node0&&(a[l+16]=s.node0.id,o.push(s.node0)),s.node1&&(a[l+17]=s.node1.id,o.push(s.node1));return e}function vu(n,t,e,r,i,a,o,s,l){l===void 0&&(l=0),e=e-l,r=r-l,i=i-l,a=a+l,o=o+l,s=s+l;var u={min:0,max:0};t.x>=0?(u.min=(e-n.x)*t.x,u.max=(a-n.x)*t.x):(u.min=(a-n.x)*t.x,u.max=(e-n.x)*t.x);var c={min:0,max:0};if(t.y>=0?(c.min=(r-n.y)*t.y,c.max=(o-n.y)*t.y):(c.min=(o-n.y)*t.y,c.max=(r-n.y)*t.y),u.min>c.max||c.min>u.max)return!1;c.min>u.min&&(u.min=c.min),c.max<u.max&&(u.max=c.max);var f={min:0,max:0};return t.z>=0?(f.min=(i-n.z)*t.z,f.max=(s-n.z)*t.z):(f.min=(s-n.z)*t.z,f.max=(i-n.z)*t.z),!(u.min>f.max||f.min>u.max||(f.min>u.min&&(u.min=f.min),f.max<u.max&&(u.max=f.max),u.max<0))}var Au=function(){function n(t,e,r){this.x=t,this.y=e,this.z=r}return n.prototype.copy=function(t){return this.x=t.x,this.y=t.y,this.z=t.z,this},n.prototype.set=function(t,e,r){return this.x=t,this.y=e,this.z=r,this},n.prototype.fromArray=function(t,e){return e===void 0&&(e=0),this.x=t[e],this.y=t[e+1],this.z=t[e+2],this},n.prototype.toArray=function(t,e){return t===void 0&&(t=[]),e===void 0&&(e=0),t[e]=this.x,t[e+1]=this.y,t[e+2]=this.z,t},n.prototype.add=function(t){return this.x+=t.x,this.y+=t.y,this.z+=t.z,this},n.prototype.multiplyScalar=function(t){return this.x*=t,this.y*=t,this.z*=t,this},n.prototype.subVectors=function(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this.z=t.z-e.z,this},n.prototype.addScaledVector=function(t,e){return this.x+=t.x*e,this.y+=t.y*e,this.z+=t.z*e,this},n.prototype.dot=function(t){return this.x*t.x+this.y*t.y+this.z*t.z},n.prototype.cross=function(t){var e=this.x,r=this.y,i=this.z;return this.x=r*t.z-i*t.y,this.y=i*t.x-e*t.z,this.z=e*t.y-r*t.x,this},n.prototype.crossVectors=function(t,e){var r=t.x,i=t.y,a=t.z,o=e.x,s=e.y,l=e.z;return this.x=i*l-a*s,this.y=a*o-r*l,this.z=r*s-i*o,this},n.prototype.distanceTo=function(t){return Math.sqrt(this.distanceToSquared(t))},n.prototype.distanceToSquared=function(t){var e=this.x-t.x,r=this.y-t.y,i=this.z-t.z;return e*e+r*r+i*i},n.prototype.clone=function(){return new n(this.x,this.y,this.z)},n}(),mu=function(){function n(t,e,r){this.triangle=t,this.intersectionPoint=e,this.index=r}return n}(),Fo=1e-6,ko=function(){function n(t,e){if(this.positionArray=t,e)this.indicesArray=e;else{for(var r=t.length/3,i=r>65535?new Uint32Array(r):new Uint16Array(r),a=0;a<r;a++)i[a]=a;this.indicesArray=i}}return n.prototype.createTree=function(t,e,r){e=Math.min(e,16);var i=this.positionArray,a=this.indicesArray,o=a.length/3,s=o>65535?new Uint32Array(o):new Uint16Array(o),l=new Float32Array(o*6),u=[],c=0,f=-1;if(r)for(var A=0,p=0,y=0,v=void 0,m=void 0,h=void 0,g=void 0,b=void 0,w=void 0,E=void 0;A<o;A+=1,p+=3,y+=6)s[A]=A,v=g=i[a[p]*3],E=i[a[p+1]*3],E<v&&(v=E),E>g&&(g=E),E=i[a[p+2]*3],E<v&&(v=E),E>g&&(g=E),m=b=i[a[p]*3+1],E=i[a[p+1]*3+1],E<m&&(m=E),E>b&&(b=E),E=i[a[p+2]*3+1],E<m&&(m=E),E>b&&(b=E),h=w=i[a[p]*3+2],E=i[a[p+1]*3+2],E<h&&(h=E),E>w&&(w=E),E=i[a[p+2]*3+2],E<h&&(h=E),E>w&&(w=E),l[y]=v,l[y+1]=m,l[y+2]=h,l[y+3]=g,l[y+4]=b,l[y+5]=w;else{for(var C=1/0,x=1/0,M=1/0,S=-1/0,P=-1/0,I=-1/0,A=0,p=0,y=0,v=void 0,m=void 0,h=void 0,g=void 0,b=void 0,w=void 0,E=void 0;A<o;A+=1,p+=3,y+=6)s[A]=A,v=g=i[a[p]*3],E=i[a[p+1]*3],E<v&&(v=E),E>g&&(g=E),E=i[a[p+2]*3],E<v&&(v=E),E>g&&(g=E),m=b=i[a[p]*3+1],E=i[a[p+1]*3+1],E<m&&(m=E),E>b&&(b=E),E=i[a[p+2]*3+1],E<m&&(m=E),E>b&&(b=E),h=w=i[a[p]*3+2],E=i[a[p+1]*3+2],E<h&&(h=E),E>w&&(w=E),E=i[a[p+2]*3+2],E<h&&(h=E),E>w&&(w=E),l[y]=v,l[y+1]=m,l[y+2]=h,l[y+3]=g,l[y+4]=b,l[y+5]=w,v<C&&(C=v),g>S&&(S=g),m<x&&(x=m),b>P&&(P=b),h<M&&(M=h),w>I&&(I=w);r=[C,x,M,S,P,I]}var B=new hn(++f,r,0,o,0);u[c++]=B;var k=[],L=[0,1,2],O=function(N,K){return k[K]-k[N]};function Q(N){var K=N.startIndex,j=N.endIndex,U=N.extents;k[0]=U[3]-U[0],k[1]=U[4]-U[1],k[2]=U[5]-U[2],L.sort(O);for(var G=0;G<3;G++){for(var H=L[G],Y=U[H]+U[H+3],W=K,_=j-1,Z=-1,fe=void 0;W<=_;)Z===-1?(fe=s[W],l[fe*6+H]+l[fe*6+H+3]<Y?W++:Z=fe):(fe=s[_],l[fe*6+H]+l[fe*6+H+3]>=Y||(s[W]=fe,s[_]=Z,Z=-1,W++),_--);if(W>K&&W<j){var re=new hn(++f,Lo(s,l,K,W,Fo),K,W,N.deepth+1);re.deepth<e&&re.endIndex-re.startIndex>t&&(u[c++]=re);var ie=new hn(++f,Lo(s,l,W,j,Fo),W,j,N.deepth+1);ie.deepth<e&&ie.endIndex-ie.startIndex>t&&(u[c++]=ie),N.node0=re,N.node1=ie,N.startIndex=0,N.endIndex=0;break}}}for(;c;)Q(u[--c]);return this.offsetArray=s,this.rootNodePacked=pu(B,f+1),u.length=0,this},n.prototype.trianglesInSphere=function(t,e){for(var r=this.positionArray,i=this.indicesArray,a=this.offsetArray,o=this.rootNodePacked,s=new Float32Array(o),l=new Uint32Array(o),u=new Uint16Array(o),c=[0],f=[],A,p,y,v;(A=c.pop())!==void 0;){v=A*yr/4;var m=zi(t.x,s[v],s[v+3])-t.x,h=zi(t.y,s[v+1],s[v+4])-t.y,g=zi(t.z,s[v+2],s[v+5])-t.z;if(m*m+h*h+g*g<=e*e){for(var b=l[v+6];b<l[v+7];b++)f.push(a[b]);v=A*yr/2,p=u[v+16],y=u[v+17],p&&c.push(p),y&&c.push(y)}}for(var w=f.length,E=new Float32Array(w*9),b=0;b<w;b++){var C=f[b];E[b*9]=r[i[C]*3],E[b*9+1]=r[i[C]*3+1],E[b*9+2]=r[i[C]*3+2],E[b*9+3]=r[i[C+1]*3],E[b*9+4]=r[i[C+1]*3+1],E[b*9+5]=r[i[C+1]*3+2],E[b*9+6]=r[i[C+2]*3],E[b*9+7]=r[i[C+2]*3+1],E[b*9+8]=r[i[C+2]*3+2]}return E},n.prototype.intersectRay=function(t,e,r){for(var i=this.positionArray,a=this.indicesArray,o=this.offsetArray,s=this.rootNodePacked,l=new Float32Array(s),u=new Uint32Array(s),c=new Uint16Array(s),f=new Au(1/e.x,1/e.y,1/e.z),A=[0],p,y,v,m;(p=A.pop())!==void 0;)if(m=p*yr/4,vu(t,f,l[m],l[m+1],l[m+2],l[m+3],l[m+4],l[m+5])){for(var h=u[m+6],g=u[m+7],b=void 0,w=void 0,E=void 0,C=t.x,x=t.y,M=t.z,S=e.x,P=e.y,I=e.z,B=void 0,k=void 0,L=void 0,O=void 0,Q=void 0,N=void 0,K=void 0,j=void 0,U=void 0,G=void 0,H=void 0,Y=void 0,W=void 0,_=void 0,Z=void 0,fe=void 0,re=void 0,ie=void 0,ne=void 0,ve=void 0,te=void 0,he=void 0,Ae=void 0,ce=void 0,Ie=void 0,$=void 0,oe=void 0;h<g;h++){if(b=o[h],w=b*3,E=a[w]*3,B=i[E],k=i[++E],L=i[++E],E=a[w+1]*3,O=i[E],Q=i[++E],N=i[++E],E=a[w+2]*3,K=i[E],j=i[++E],U=i[++E],G=O-B,H=Q-k,Y=N-L,W=K-B,_=j-k,Z=U-L,fe=H*Z-Y*_,re=Y*W-G*Z,ie=G*_-H*W,Ae=S*fe+P*re+I*ie,Ae>0)he=1;else if(Ae<0)he=-1,Ae=-Ae;else continue;ne=C-B,ve=x-k,te=M-L,ce=he*(S*(ve*Z-te*_)+P*(te*W-ne*Z)+I*(ne*_-ve*W)),!(ce<0)&&(Ie=he*(S*(H*te-Y*ve)+P*(Y*ne-G*te)+I*(G*ve-H*ne)),!(Ie<0)&&(ce+Ie>Ae||($=-he*(ne*fe+ve*re+te*ie),!($<0)&&(oe=$/Ae,r.push(new mu([B,k,L,O,Q,N,K,j,U],[C+S*oe,x+P*oe,M+I*oe],b))))))}m=p*yr/2,y=c[m+16],v=c[m+17],y&&A.push(y),v&&A.push(v)}return r},n}();function zi(n,t,e){return n<t?t:n>e?e:n}function Lo(n,t,e,r,i){if(e>=r)return[0,0,0,0,0,0];for(var a=1/0,o=1/0,s=1/0,l=-1/0,u=-1/0,c=-1/0,f=e,A=void 0,p=void 0;f<r;f++)A=n[f]*6,p=t[A],p<a&&(a=p),p=t[A+1],p<o&&(o=p),p=t[A+2],p<s&&(s=p),p=t[A+3],p>l&&(l=p),p=t[A+4],p>u&&(u=p),p=t[A+5],p>c&&(c=p);return[a-i,o-i,s-i,l+i,u+i,c+i]}var Oo=1e-6,Vo=function(){function n(t,e){this.positionArray=t,this.indicesArray=e}return n.prototype.createTree=function(t,e,r){e=Math.min(e,16);var i=this.positionArray,a=this.indicesArray,o=a?a.length:i.length/3,s=o>65535?new Uint32Array(o):new Uint16Array(o),l=[],u=0,c=-1;if(r)for(var f=0;f<o;f+=1)s[f]=f;else{for(var A=a?a[0]*3:0,p=i[A],y=i[A+1],v=i[A+2],m=p,h=y,g=v,f=0,b=0,w=void 0,E=void 0,C=void 0;f<o;f+=1,b+=3)s[f]=f,A=(a?a[b]:b)*3,w=i[A],E=i[A+1],C=i[A+2],w<p?p=w:w>m&&(m=w),E<y?y=E:E>h&&(h=E),C<v?v=C:C>g&&(g=C);r=[p,y,v,m,h,g]}var x=new hn(++c,r,0,o,0);l[u++]=x;var M=[],S=[0,1,2],P=function(B,k){return M[k]-M[B]};function I(B){var k=B.startIndex,L=B.endIndex,O=B.extents;M[0]=O[3]-O[0],M[1]=O[4]-O[1],M[2]=O[5]-O[2];for(var Q=S.sort(P)[0],N=(O[Q]+O[Q+3])/2,K=k,j=L-1,U=-1,G,H;K<=j;)U===-1?(G=s[K],H=(a?a[G]:G)*3,i[H+Q]<N?K++:U=G):(G=s[j],H=(a?a[G]:G)*3,i[H+Q]>=N||(s[K]=G,s[j]=U,U=-1,K++),j--);if(K>k){var Y=O.slice();Y[Q+3]=N+Oo;var W=new hn(++c,Y,k,K,B.deepth+1);W.deepth<e&&W.endIndex-W.startIndex>t&&(l[u++]=W),B.node0=W}if(L>K){var _=O.slice();_[Q]=N-Oo;var Z=new hn(++c,_,K,L,B.deepth+1);Z.deepth<e&&Z.endIndex-Z.startIndex>t&&(l[u++]=Z),B.node1=Z}B.startIndex=0,B.endIndex=0}for(;u;)I(l[--u]);return this.offsetArray=s,this.rootNodePacked=pu(x,c+1),l.length=0,this},n.prototype.intersectRay=function(t,e,r,i){for(var a=this.positionArray,o=this.indicesArray,s=this.offsetArray,l=this.rootNodePacked,u=new Float32Array(l),c=new Uint32Array(l),f=new Uint16Array(l),A=r*r,p=new Au(1/e.x,1/e.y,1/e.z),y=[0],v,m,h,g;(v=y.pop())!==void 0;)if(g=v*yr/4,vu(t,p,u[g],u[g+1],u[g+2],u[g+3],u[g+4],u[g+5],r)){for(var b=c[g+6],w=c[g+7],E=void 0,C=void 0,x=void 0,M=void 0,S=void 0,P=void 0,I=void 0,B=void 0,k=void 0,L=void 0,O=void 0,Q=void 0,N=void 0;b<w;b++)E=s[b],C=(o?o[E]:E)*3,x=a[C],M=a[++C],S=a[++C],P=t.x,I=t.y,B=t.z,k=e.x,L=e.y,O=e.z,Q=k*(x-P)+L*(M-I)+O*(S-B),Q>0&&(P+=k*Q,I+=L*Q,B+=O*Q),k=x-P,L=M-I,O=S-B,Q=k*k+L*L+O*O,Q<=A&&i.push(new mu([x,M,S,x,M,S,x,M,S],[P,I,B],E));g=v*yr/2,m=f[g+16],h=f[g+17],m&&y.push(m),h&&y.push(h)}return i},n}();const gu="KGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO3ZhciBYPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gaChyLHQsYSxvLHMpe3RoaXMuaWQ9cix0aGlzLmV4dGVudHM9dCx0aGlzLnN0YXJ0SW5kZXg9YSx0aGlzLmVuZEluZGV4PW8sdGhpcy5kZWVwdGg9c31yZXR1cm4gaH0oKSxSPTYqNCs0KzQrMisyO2Z1bmN0aW9uIG5yKGgscil7Zm9yKHZhciB0PW5ldyBBcnJheUJ1ZmZlcihyKlIpLGE9bmV3IEZsb2F0MzJBcnJheSh0KSxvPW5ldyBVaW50MzJBcnJheSh0KSxzPW5ldyBVaW50MTZBcnJheSh0KSxlPVtoXSx2LG47dj1lLnBvcCgpOyluPXYuaWQqUi80LGFbbl09di5leHRlbnRzWzBdLGFbbisxXT12LmV4dGVudHNbMV0sYVtuKzJdPXYuZXh0ZW50c1syXSxhW24rM109di5leHRlbnRzWzNdLGFbbis0XT12LmV4dGVudHNbNF0sYVtuKzVdPXYuZXh0ZW50c1s1XSxvW24rNl09di5zdGFydEluZGV4LG9bbis3XT12LmVuZEluZGV4LG49di5pZCpSLzIsdi5ub2RlMCYmKHNbbisxNl09di5ub2RlMC5pZCxlLnB1c2godi5ub2RlMCkpLHYubm9kZTEmJihzW24rMTddPXYubm9kZTEuaWQsZS5wdXNoKHYubm9kZTEpKTtyZXR1cm4gdH1mdW5jdGlvbiBhcihoLHIsdCxhLG8scyxlLHYsbil7bj09PXZvaWQgMCYmKG49MCksdD10LW4sYT1hLW4sbz1vLW4scz1zK24sZT1lK24sdj12K247dmFyIHk9e21pbjowLG1heDowfTtyLng+PTA/KHkubWluPSh0LWgueCkqci54LHkubWF4PShzLWgueCkqci54KTooeS5taW49KHMtaC54KSpyLngseS5tYXg9KHQtaC54KSpyLngpO3ZhciBBPXttaW46MCxtYXg6MH07aWYoci55Pj0wPyhBLm1pbj0oYS1oLnkpKnIueSxBLm1heD0oZS1oLnkpKnIueSk6KEEubWluPShlLWgueSkqci55LEEubWF4PShhLWgueSkqci55KSx5Lm1pbj5BLm1heHx8QS5taW4+eS5tYXgpcmV0dXJuITE7QS5taW4+eS5taW4mJih5Lm1pbj1BLm1pbiksQS5tYXg8eS5tYXgmJih5Lm1heD1BLm1heCk7dmFyIHc9e21pbjowLG1heDowfTtyZXR1cm4gci56Pj0wPyh3Lm1pbj0oby1oLnopKnIueix3Lm1heD0odi1oLnopKnIueik6KHcubWluPSh2LWgueikqci56LHcubWF4PShvLWgueikqci56KSwhKHkubWluPncubWF4fHx3Lm1pbj55Lm1heHx8KHcubWluPnkubWluJiYoeS5taW49dy5taW4pLHcubWF4PHkubWF4JiYoeS5tYXg9dy5tYXgpLHkubWF4PDApKX12YXIgdnI9ZnVuY3Rpb24oKXtmdW5jdGlvbiBoKHIsdCxhKXt0aGlzLng9cix0aGlzLnk9dCx0aGlzLno9YX1yZXR1cm4gaC5wcm90b3R5cGUuY29weT1mdW5jdGlvbihyKXtyZXR1cm4gdGhpcy54PXIueCx0aGlzLnk9ci55LHRoaXMuej1yLnosdGhpc30saC5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKHIsdCxhKXtyZXR1cm4gdGhpcy54PXIsdGhpcy55PXQsdGhpcy56PWEsdGhpc30saC5wcm90b3R5cGUuZnJvbUFycmF5PWZ1bmN0aW9uKHIsdCl7cmV0dXJuIHQ9PT12b2lkIDAmJih0PTApLHRoaXMueD1yW3RdLHRoaXMueT1yW3QrMV0sdGhpcy56PXJbdCsyXSx0aGlzfSxoLnByb3RvdHlwZS50b0FycmF5PWZ1bmN0aW9uKHIsdCl7cmV0dXJuIHI9PT12b2lkIDAmJihyPVtdKSx0PT09dm9pZCAwJiYodD0wKSxyW3RdPXRoaXMueCxyW3QrMV09dGhpcy55LHJbdCsyXT10aGlzLnoscn0saC5wcm90b3R5cGUuYWRkPWZ1bmN0aW9uKHIpe3JldHVybiB0aGlzLngrPXIueCx0aGlzLnkrPXIueSx0aGlzLnorPXIueix0aGlzfSxoLnByb3RvdHlwZS5tdWx0aXBseVNjYWxhcj1mdW5jdGlvbihyKXtyZXR1cm4gdGhpcy54Kj1yLHRoaXMueSo9cix0aGlzLnoqPXIsdGhpc30saC5wcm90b3R5cGUuc3ViVmVjdG9ycz1mdW5jdGlvbihyLHQpe3JldHVybiB0aGlzLng9ci54LXQueCx0aGlzLnk9ci55LXQueSx0aGlzLno9ci56LXQueix0aGlzfSxoLnByb3RvdHlwZS5hZGRTY2FsZWRWZWN0b3I9ZnVuY3Rpb24ocix0KXtyZXR1cm4gdGhpcy54Kz1yLngqdCx0aGlzLnkrPXIueSp0LHRoaXMueis9ci56KnQsdGhpc30saC5wcm90b3R5cGUuZG90PWZ1bmN0aW9uKHIpe3JldHVybiB0aGlzLngqci54K3RoaXMueSpyLnkrdGhpcy56KnIuen0saC5wcm90b3R5cGUuY3Jvc3M9ZnVuY3Rpb24ocil7dmFyIHQ9dGhpcy54LGE9dGhpcy55LG89dGhpcy56O3JldHVybiB0aGlzLng9YSpyLnotbypyLnksdGhpcy55PW8qci54LXQqci56LHRoaXMuej10KnIueS1hKnIueCx0aGlzfSxoLnByb3RvdHlwZS5jcm9zc1ZlY3RvcnM9ZnVuY3Rpb24ocix0KXt2YXIgYT1yLngsbz1yLnkscz1yLnosZT10Lngsdj10Lnksbj10Lno7cmV0dXJuIHRoaXMueD1vKm4tcyp2LHRoaXMueT1zKmUtYSpuLHRoaXMuej1hKnYtbyplLHRoaXN9LGgucHJvdG90eXBlLmRpc3RhbmNlVG89ZnVuY3Rpb24ocil7cmV0dXJuIE1hdGguc3FydCh0aGlzLmRpc3RhbmNlVG9TcXVhcmVkKHIpKX0saC5wcm90b3R5cGUuZGlzdGFuY2VUb1NxdWFyZWQ9ZnVuY3Rpb24ocil7dmFyIHQ9dGhpcy54LXIueCxhPXRoaXMueS1yLnksbz10aGlzLnotci56O3JldHVybiB0KnQrYSphK28qb30saC5wcm90b3R5cGUuY2xvbmU9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IGgodGhpcy54LHRoaXMueSx0aGlzLnopfSxofSgpLHNyPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gaChyLHQsYSl7dGhpcy50cmlhbmdsZT1yLHRoaXMuaW50ZXJzZWN0aW9uUG9pbnQ9dCx0aGlzLmluZGV4PWF9cmV0dXJuIGh9KCksdXI9MWUtNix5cj1mdW5jdGlvbigpe2Z1bmN0aW9uIGgocix0KXtpZih0aGlzLnBvc2l0aW9uQXJyYXk9cix0KXRoaXMuaW5kaWNlc0FycmF5PXQ7ZWxzZXtmb3IodmFyIGE9ci5sZW5ndGgvMyxvPWE+NjU1MzU/bmV3IFVpbnQzMkFycmF5KGEpOm5ldyBVaW50MTZBcnJheShhKSxzPTA7czxhO3MrKylvW3NdPXM7dGhpcy5pbmRpY2VzQXJyYXk9b319cmV0dXJuIGgucHJvdG90eXBlLmNyZWF0ZVRyZWU9ZnVuY3Rpb24ocix0LGEpe3Q9TWF0aC5taW4odCwxNik7dmFyIG89dGhpcy5wb3NpdGlvbkFycmF5LHM9dGhpcy5pbmRpY2VzQXJyYXksZT1zLmxlbmd0aC8zLHY9ZT42NTUzNT9uZXcgVWludDMyQXJyYXkoZSk6bmV3IFVpbnQxNkFycmF5KGUpLG49bmV3IEZsb2F0MzJBcnJheShlKjYpLHk9W10sQT0wLHc9LTE7aWYoYSlmb3IodmFyIGw9MCx1PTAscD0wLGM9dm9pZCAwLGQ9dm9pZCAwLFU9dm9pZCAwLEk9dm9pZCAwLGY9dm9pZCAwLE49dm9pZCAwLGk9dm9pZCAwO2w8ZTtsKz0xLHUrPTMscCs9Nil2W2xdPWwsYz1JPW9bc1t1XSozXSxpPW9bc1t1KzFdKjNdLGk8YyYmKGM9aSksaT5JJiYoST1pKSxpPW9bc1t1KzJdKjNdLGk8YyYmKGM9aSksaT5JJiYoST1pKSxkPWY9b1tzW3VdKjMrMV0saT1vW3NbdSsxXSozKzFdLGk8ZCYmKGQ9aSksaT5mJiYoZj1pKSxpPW9bc1t1KzJdKjMrMV0saTxkJiYoZD1pKSxpPmYmJihmPWkpLFU9Tj1vW3NbdV0qMysyXSxpPW9bc1t1KzFdKjMrMl0saTxVJiYoVT1pKSxpPk4mJihOPWkpLGk9b1tzW3UrMl0qMysyXSxpPFUmJihVPWkpLGk+TiYmKE49aSksbltwXT1jLG5bcCsxXT1kLG5bcCsyXT1VLG5bcCszXT1JLG5bcCs0XT1mLG5bcCs1XT1OO2Vsc2V7Zm9yKHZhciB6PTEvMCxqPTEvMCxQPTEvMCxxPS0xLzAsRz0tMS8wLEo9LTEvMCxsPTAsdT0wLHA9MCxjPXZvaWQgMCxkPXZvaWQgMCxVPXZvaWQgMCxJPXZvaWQgMCxmPXZvaWQgMCxOPXZvaWQgMCxpPXZvaWQgMDtsPGU7bCs9MSx1Kz0zLHArPTYpdltsXT1sLGM9ST1vW3NbdV0qM10saT1vW3NbdSsxXSozXSxpPGMmJihjPWkpLGk+SSYmKEk9aSksaT1vW3NbdSsyXSozXSxpPGMmJihjPWkpLGk+SSYmKEk9aSksZD1mPW9bc1t1XSozKzFdLGk9b1tzW3UrMV0qMysxXSxpPGQmJihkPWkpLGk+ZiYmKGY9aSksaT1vW3NbdSsyXSozKzFdLGk8ZCYmKGQ9aSksaT5mJiYoZj1pKSxVPU49b1tzW3VdKjMrMl0saT1vW3NbdSsxXSozKzJdLGk8VSYmKFU9aSksaT5OJiYoTj1pKSxpPW9bc1t1KzJdKjMrMl0saTxVJiYoVT1pKSxpPk4mJihOPWkpLG5bcF09YyxuW3ArMV09ZCxuW3ArMl09VSxuW3ArM109SSxuW3ArNF09ZixuW3ArNV09TixjPHomJih6PWMpLEk+cSYmKHE9SSksZDxqJiYoaj1kKSxmPkcmJihHPWYpLFU8UCYmKFA9VSksTj5KJiYoSj1OKTthPVt6LGosUCxxLEcsSl19dmFyIFM9bmV3IFgoKyt3LGEsMCxlLDApO3lbQSsrXT1TO3ZhciBWPVtdLE09WzAsMSwyXSxUPWZ1bmN0aW9uKEIsRil7cmV0dXJuIFZbRl0tVltCXX07ZnVuY3Rpb24gSChCKXt2YXIgRj1CLnN0YXJ0SW5kZXgsQz1CLmVuZEluZGV4LCQ9Qi5leHRlbnRzO1ZbMF09JFszXS0kWzBdLFZbMV09JFs0XS0kWzFdLFZbMl09JFs1XS0kWzJdLE0uc29ydChUKTtmb3IodmFyIEw9MDtMPDM7TCsrKXtmb3IodmFyIFc9TVtMXSxRPSRbV10rJFtXKzNdLGs9RixfPUMtMSxLPS0xLEU9dm9pZCAwO2s8PV87KUs9PT0tMT8oRT12W2tdLG5bRSo2K1ddK25bRSo2K1crM108UT9rKys6Sz1FKTooRT12W19dLG5bRSo2K1ddK25bRSo2K1crM10+PVF8fCh2W2tdPUUsdltfXT1LLEs9LTEsaysrKSxfLS0pO2lmKGs+RiYmazxDKXt2YXIgeD1uZXcgWCgrK3csaHIodixuLEYsayx1ciksRixrLEIuZGVlcHRoKzEpO3guZGVlcHRoPHQmJnguZW5kSW5kZXgteC5zdGFydEluZGV4PnImJih5W0ErK109eCk7dmFyIFk9bmV3IFgoKyt3LGhyKHYsbixrLEMsdXIpLGssQyxCLmRlZXB0aCsxKTtZLmRlZXB0aDx0JiZZLmVuZEluZGV4LVkuc3RhcnRJbmRleD5yJiYoeVtBKytdPVkpLEIubm9kZTA9eCxCLm5vZGUxPVksQi5zdGFydEluZGV4PTAsQi5lbmRJbmRleD0wO2JyZWFrfX19Zm9yKDtBOylIKHlbLS1BXSk7cmV0dXJuIHRoaXMub2Zmc2V0QXJyYXk9dix0aGlzLnJvb3ROb2RlUGFja2VkPW5yKFMsdysxKSx5Lmxlbmd0aD0wLHRoaXN9LGgucHJvdG90eXBlLnRyaWFuZ2xlc0luU3BoZXJlPWZ1bmN0aW9uKHIsdCl7Zm9yKHZhciBhPXRoaXMucG9zaXRpb25BcnJheSxvPXRoaXMuaW5kaWNlc0FycmF5LHM9dGhpcy5vZmZzZXRBcnJheSxlPXRoaXMucm9vdE5vZGVQYWNrZWQsdj1uZXcgRmxvYXQzMkFycmF5KGUpLG49bmV3IFVpbnQzMkFycmF5KGUpLHk9bmV3IFVpbnQxNkFycmF5KGUpLEE9WzBdLHc9W10sbCx1LHAsYzsobD1BLnBvcCgpKSE9PXZvaWQgMDspe2M9bCpSLzQ7dmFyIGQ9cnIoci54LHZbY10sdltjKzNdKS1yLngsVT1ycihyLnksdltjKzFdLHZbYys0XSktci55LEk9cnIoci56LHZbYysyXSx2W2MrNV0pLXIuejtpZihkKmQrVSpVK0kqSTw9dCp0KXtmb3IodmFyIGY9bltjKzZdO2Y8bltjKzddO2YrKyl3LnB1c2goc1tmXSk7Yz1sKlIvMix1PXlbYysxNl0scD15W2MrMTddLHUmJkEucHVzaCh1KSxwJiZBLnB1c2gocCl9fWZvcih2YXIgTj13Lmxlbmd0aCxpPW5ldyBGbG9hdDMyQXJyYXkoTio5KSxmPTA7ZjxOO2YrKyl7dmFyIHo9d1tmXTtpW2YqOV09YVtvW3pdKjNdLGlbZio5KzFdPWFbb1t6XSozKzFdLGlbZio5KzJdPWFbb1t6XSozKzJdLGlbZio5KzNdPWFbb1t6KzFdKjNdLGlbZio5KzRdPWFbb1t6KzFdKjMrMV0saVtmKjkrNV09YVtvW3orMV0qMysyXSxpW2YqOSs2XT1hW29beisyXSozXSxpW2YqOSs3XT1hW29beisyXSozKzFdLGlbZio5KzhdPWFbb1t6KzJdKjMrMl19cmV0dXJuIGl9LGgucHJvdG90eXBlLmludGVyc2VjdFJheT1mdW5jdGlvbihyLHQsYSl7Zm9yKHZhciBvPXRoaXMucG9zaXRpb25BcnJheSxzPXRoaXMuaW5kaWNlc0FycmF5LGU9dGhpcy5vZmZzZXRBcnJheSx2PXRoaXMucm9vdE5vZGVQYWNrZWQsbj1uZXcgRmxvYXQzMkFycmF5KHYpLHk9bmV3IFVpbnQzMkFycmF5KHYpLEE9bmV3IFVpbnQxNkFycmF5KHYpLHc9bmV3IHZyKDEvdC54LDEvdC55LDEvdC56KSxsPVswXSx1LHAsYyxkOyh1PWwucG9wKCkpIT09dm9pZCAwOylpZihkPXUqUi80LGFyKHIsdyxuW2RdLG5bZCsxXSxuW2QrMl0sbltkKzNdLG5bZCs0XSxuW2QrNV0pKXtmb3IodmFyIFU9eVtkKzZdLEk9eVtkKzddLGY9dm9pZCAwLE49dm9pZCAwLGk9dm9pZCAwLHo9ci54LGo9ci55LFA9ci56LHE9dC54LEc9dC55LEo9dC56LFM9dm9pZCAwLFY9dm9pZCAwLE09dm9pZCAwLFQ9dm9pZCAwLEg9dm9pZCAwLEI9dm9pZCAwLEY9dm9pZCAwLEM9dm9pZCAwLCQ9dm9pZCAwLEw9dm9pZCAwLFc9dm9pZCAwLFE9dm9pZCAwLGs9dm9pZCAwLF89dm9pZCAwLEs9dm9pZCAwLEU9dm9pZCAwLHg9dm9pZCAwLFk9dm9pZCAwLFo9dm9pZCAwLGI9dm9pZCAwLGc9dm9pZCAwLE89dm9pZCAwLEQ9dm9pZCAwLGlyPXZvaWQgMCx0cj12b2lkIDAsb3I9dm9pZCAwLG09dm9pZCAwO1U8STtVKyspe2lmKGY9ZVtVXSxOPWYqMyxpPXNbTl0qMyxTPW9baV0sVj1vWysraV0sTT1vWysraV0saT1zW04rMV0qMyxUPW9baV0sSD1vWysraV0sQj1vWysraV0saT1zW04rMl0qMyxGPW9baV0sQz1vWysraV0sJD1vWysraV0sTD1ULVMsVz1ILVYsUT1CLU0saz1GLVMsXz1DLVYsSz0kLU0sRT1XKkstUSpfLHg9USprLUwqSyxZPUwqXy1XKmssRD1xKkUrRyp4K0oqWSxEPjApTz0xO2Vsc2UgaWYoRDwwKU89LTEsRD0tRDtlbHNlIGNvbnRpbnVlO1o9ei1TLGI9ai1WLGc9UC1NLGlyPU8qKHEqKGIqSy1nKl8pK0cqKGcqay1aKkspK0oqKFoqXy1iKmspKSwhKGlyPDApJiYodHI9TyoocSooVypnLVEqYikrRyooUSpaLUwqZykrSiooTCpiLVcqWikpLCEodHI8MCkmJihpcit0cj5EfHwob3I9LU8qKFoqRStiKngrZypZKSwhKG9yPDApJiYobT1vci9ELGEucHVzaChuZXcgc3IoW1MsVixNLFQsSCxCLEYsQywkXSxbeitxKm0saitHKm0sUCtKKm1dLGYpKSkpKSl9ZD11KlIvMixwPUFbZCsxNl0sYz1BW2QrMTddLHAmJmwucHVzaChwKSxjJiZsLnB1c2goYyl9cmV0dXJuIGF9LGh9KCk7ZnVuY3Rpb24gcnIoaCxyLHQpe3JldHVybiBoPHI/cjpoPnQ/dDpofWZ1bmN0aW9uIGhyKGgscix0LGEsbyl7aWYodD49YSlyZXR1cm5bMCwwLDAsMCwwLDBdO2Zvcih2YXIgcz0xLzAsZT0xLzAsdj0xLzAsbj0tMS8wLHk9LTEvMCxBPS0xLzAsdz10LGw9dm9pZCAwLHU9dm9pZCAwO3c8YTt3KyspbD1oW3ddKjYsdT1yW2xdLHU8cyYmKHM9dSksdT1yW2wrMV0sdTxlJiYoZT11KSx1PXJbbCsyXSx1PHYmJih2PXUpLHU9cltsKzNdLHU+biYmKG49dSksdT1yW2wrNF0sdT55JiYoeT11KSx1PXJbbCs1XSx1PkEmJihBPXUpO3JldHVybltzLW8sZS1vLHYtbyxuK28seStvLEErb119dmFyIGVyPTFlLTYsZnI9ZnVuY3Rpb24oKXtmdW5jdGlvbiBoKHIsdCl7dGhpcy5wb3NpdGlvbkFycmF5PXIsdGhpcy5pbmRpY2VzQXJyYXk9dH1yZXR1cm4gaC5wcm90b3R5cGUuY3JlYXRlVHJlZT1mdW5jdGlvbihyLHQsYSl7dD1NYXRoLm1pbih0LDE2KTt2YXIgbz10aGlzLnBvc2l0aW9uQXJyYXkscz10aGlzLmluZGljZXNBcnJheSxlPXM/cy5sZW5ndGg6by5sZW5ndGgvMyx2PWU+NjU1MzU/bmV3IFVpbnQzMkFycmF5KGUpOm5ldyBVaW50MTZBcnJheShlKSxuPVtdLHk9MCxBPS0xO2lmKGEpZm9yKHZhciB3PTA7dzxlO3crPTEpdlt3XT13O2Vsc2V7Zm9yKHZhciBsPXM/c1swXSozOjAsdT1vW2xdLHA9b1tsKzFdLGM9b1tsKzJdLGQ9dSxVPXAsST1jLHc9MCxmPTAsTj12b2lkIDAsaT12b2lkIDAsej12b2lkIDA7dzxlO3crPTEsZis9Myl2W3ddPXcsbD0ocz9zW2ZdOmYpKjMsTj1vW2xdLGk9b1tsKzFdLHo9b1tsKzJdLE48dT91PU46Tj5kJiYoZD1OKSxpPHA/cD1pOmk+VSYmKFU9aSksejxjP2M9ejp6PkkmJihJPXopO2E9W3UscCxjLGQsVSxJXX12YXIgaj1uZXcgWCgrK0EsYSwwLGUsMCk7blt5KytdPWo7dmFyIFA9W10scT1bMCwxLDJdLEc9ZnVuY3Rpb24oUyxWKXtyZXR1cm4gUFtWXS1QW1NdfTtmdW5jdGlvbiBKKFMpe3ZhciBWPVMuc3RhcnRJbmRleCxNPVMuZW5kSW5kZXgsVD1TLmV4dGVudHM7UFswXT1UWzNdLVRbMF0sUFsxXT1UWzRdLVRbMV0sUFsyXT1UWzVdLVRbMl07Zm9yKHZhciBIPXEuc29ydChHKVswXSxCPShUW0hdK1RbSCszXSkvMixGPVYsQz1NLTEsJD0tMSxMLFc7Rjw9QzspJD09PS0xPyhMPXZbRl0sVz0ocz9zW0xdOkwpKjMsb1tXK0hdPEI/RisrOiQ9TCk6KEw9dltDXSxXPShzP3NbTF06TCkqMyxvW1crSF0+PUJ8fCh2W0ZdPUwsdltDXT0kLCQ9LTEsRisrKSxDLS0pO2lmKEY+Vil7dmFyIFE9VC5zbGljZSgpO1FbSCszXT1CK2VyO3ZhciBrPW5ldyBYKCsrQSxRLFYsRixTLmRlZXB0aCsxKTtrLmRlZXB0aDx0JiZrLmVuZEluZGV4LWsuc3RhcnRJbmRleD5yJiYoblt5KytdPWspLFMubm9kZTA9a31pZihNPkYpe3ZhciBfPVQuc2xpY2UoKTtfW0hdPUItZXI7dmFyIEs9bmV3IFgoKytBLF8sRixNLFMuZGVlcHRoKzEpO0suZGVlcHRoPHQmJksuZW5kSW5kZXgtSy5zdGFydEluZGV4PnImJihuW3krK109SyksUy5ub2RlMT1LfVMuc3RhcnRJbmRleD0wLFMuZW5kSW5kZXg9MH1mb3IoO3k7KUooblstLXldKTtyZXR1cm4gdGhpcy5vZmZzZXRBcnJheT12LHRoaXMucm9vdE5vZGVQYWNrZWQ9bnIoaixBKzEpLG4ubGVuZ3RoPTAsdGhpc30saC5wcm90b3R5cGUuaW50ZXJzZWN0UmF5PWZ1bmN0aW9uKHIsdCxhLG8pe2Zvcih2YXIgcz10aGlzLnBvc2l0aW9uQXJyYXksZT10aGlzLmluZGljZXNBcnJheSx2PXRoaXMub2Zmc2V0QXJyYXksbj10aGlzLnJvb3ROb2RlUGFja2VkLHk9bmV3IEZsb2F0MzJBcnJheShuKSxBPW5ldyBVaW50MzJBcnJheShuKSx3PW5ldyBVaW50MTZBcnJheShuKSxsPWEqYSx1PW5ldyB2cigxL3QueCwxL3QueSwxL3QueikscD1bMF0sYyxkLFUsSTsoYz1wLnBvcCgpKSE9PXZvaWQgMDspaWYoST1jKlIvNCxhcihyLHUseVtJXSx5W0krMV0seVtJKzJdLHlbSSszXSx5W0krNF0seVtJKzVdLGEpKXtmb3IodmFyIGY9QVtJKzZdLE49QVtJKzddLGk9dm9pZCAwLHo9dm9pZCAwLGo9dm9pZCAwLFA9dm9pZCAwLHE9dm9pZCAwLEc9dm9pZCAwLEo9dm9pZCAwLFM9dm9pZCAwLFY9dm9pZCAwLE09dm9pZCAwLFQ9dm9pZCAwLEg9dm9pZCAwLEI9dm9pZCAwO2Y8TjtmKyspaT12W2ZdLHo9KGU/ZVtpXTppKSozLGo9c1t6XSxQPXNbKyt6XSxxPXNbKyt6XSxHPXIueCxKPXIueSxTPXIueixWPXQueCxNPXQueSxUPXQueixIPVYqKGotRykrTSooUC1KKStUKihxLVMpLEg+MCYmKEcrPVYqSCxKKz1NKkgsUys9VCpIKSxWPWotRyxNPVAtSixUPXEtUyxIPVYqVitNKk0rVCpULEg8PWwmJm8ucHVzaChuZXcgc3IoW2osUCxxLGosUCxxLGosUCxxXSxbRyxKLFNdLGkpKTtJPWMqUi8yLGQ9d1tJKzE2XSxVPXdbSSsxN10sZCYmcC5wdXNoKGQpLFUmJnAucHVzaChVKX1yZXR1cm4gb30saH0oKTtmdW5jdGlvbiBBcihoKXtvbm1lc3NhZ2U9ZnVuY3Rpb24ocil7UHJvbWlzZS5yZXNvbHZlKHIuZGF0YSkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gaCh0KX0pLnRoZW4oZnVuY3Rpb24odCl7dmFyIGE9dC5vdXRwdXQsbz10LnRyYW5zZmVyO3JldHVybiBwb3N0TWVzc2FnZShhLG8pfSkuY2F0Y2goZnVuY3Rpb24odCl7cmV0dXJuIHBvc3RNZXNzYWdlKHskJGVycm9yOnR9KX0pfX1BcihmdW5jdGlvbihoKXtyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGgpLnRoZW4oZnVuY3Rpb24ocil7Zm9yKHZhciB0PVtdLGE9W10sbz0wLHM9cjtvPHMubGVuZ3RoO28rKyl7dmFyIGU9c1tvXSx2PXZvaWQgMDtpZihlLnR5cGU9PT0ibWVzaCIpdj1uZXcgeXIoZS5wb3NpdGlvbkFycmF5LGUuaW5kaWNlc0FycmF5KTtlbHNlIGlmKGUudHlwZT09PSJwb2ludHMiKXY9bmV3IGZyKGUucG9zaXRpb25BcnJheSxlLmluZGljZXNBcnJheSk7ZWxzZSB0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgVHlwZSIpO3YuY3JlYXRlVHJlZShlLm1heEl0ZW1QZXJOb2RlLGUubWF4VHJlZURlcHRoLGUuZXh0ZW50cyk7dmFyIG49e29mZnNldEFycmF5OnYub2Zmc2V0QXJyYXksaW5kaWNlc0FycmF5OnYuaW5kaWNlc0FycmF5LHBvc2l0aW9uQXJyYXk6di5wb3NpdGlvbkFycmF5LHJvb3ROb2RlUGFja2VkOnYucm9vdE5vZGVQYWNrZWR9O3QucHVzaChuKTtmb3IodmFyIHkgaW4gbil7dmFyIEE9blt5XTtBJiYoQSBpbnN0YW5jZW9mIEFycmF5QnVmZmVyP2EuaW5kZXhPZihBKT09PS0xJiZhLnB1c2goQSk6QS5idWZmZXIgaW5zdGFuY2VvZiBBcnJheUJ1ZmZlciYmYS5pbmRleE9mKEEuYnVmZmVyKT09LTEmJmEucHVzaChBLmJ1ZmZlcikpfX1yZXR1cm57b3V0cHV0OnQsdHJhbnNmZXI6YX19KX0pfSkoKTsK",No=typeof window!="undefined"&&window.Blob&&new Blob([atob(gu)],{type:"text/javascript;charset=utf-8"});function Vc(n){let t;try{if(t=No&&(window.URL||window.webkitURL).createObjectURL(No),!t)throw"";const e=new Worker(t,{name:n==null?void 0:n.name});return e.addEventListener("error",()=>{(window.URL||window.webkitURL).revokeObjectURL(t)}),e}catch(e){return new Worker("data:application/javascript;base64,"+gu,{name:n==null?void 0:n.name})}finally{t&&(window.URL||window.webkitURL).revokeObjectURL(t)}}var yu=function(){function n(t,e){this.pool=e,this.workerCreator=t,this.queue=[],this.workers=[],this.workersResolver=[],this.workerStatus=0}return n.prototype.initWorker=function(t){if(this.workerCreator&&!this.workers[t]){var e=this.workerCreator();e.addEventListener("message",this.onMessage.bind(this,t)),this.workers[t]=e}},n.prototype.getIdleWorker=function(){for(var t=0;t<this.pool;t++)if(!(this.workerStatus&1<<t))return t;return-1},n.prototype.onMessage=function(t,e){var r=this.workersResolver[t],i=r.resolve,a=r.reject;if(e.data&&"$$error"in e.data?a(e.data.$$error):i(e.data),this.queue.length){var o=this.queue.shift(),s=o.resolve,l=o.reject,u=o.input,c=o.transfer;this.workersResolver[t]={resolve:s,reject:l},this.workers[t].postMessage(u,c)}else this.workerStatus^=1<<t},n.prototype.postMessage=function(t,e){var r=this;return e===void 0&&(e=[]),new Promise(function(i,a){var o=r.getIdleWorker();o!==-1?(r.initWorker(o),r.workerStatus|=1<<o,r.workersResolver[o]={resolve:i,reject:a},r.workers[o].postMessage(t,e)):r.queue.push({resolve:i,reject:a,input:t,transfer:e})})},n.prototype.dispose=function(){this.workers.forEach(function(t){return t.terminate()}),this.workersResolver.length=0,this.workers.length=0,this.queue.length=0,this.workerStatus=0},n}(),Nc=new yu(function(){return new Vc},4),si=new Map,Gi=new Map,pn=new d.Ray,Qo=new d.Matrix3,Fn=new d.Matrix4,bu=new d.Vector3,Qc=new d.Vector3,Dc=new d.Vector3,Uc=new d.Triangle;function Jn(n){for(var t=n.count,e=n.itemSize,r=n.data,i=n.offset,a=t*e,o=new n.array.constructor(a),s=0;s<t;s++)for(var l=s*r.stride+i,u=0;u<e;u++)o[s*e+u]=r.array[l+u];return new d.BufferAttribute(o,n.itemSize,n.normalized)}function zc(n,t,e,r){var i,a=n.matrixWorld;Fn.getInverse(a),pn.copy(e.ray).applyMatrix4(Fn);for(var o=t.intersectRay(pn.origin,pn.direction,[]),s=n.geometry,l=n.material,u=s.groups,c=s.index,f=0,A=o.length;f<A;f++){var p=o[f],y=p.triangle,v=p.index,m=p.intersectionPoint,h=new d.Vector3(m[0],m[1],m[2]).applyMatrix4(a),g=e.ray.origin.distanceTo(h);if(!(g<e.near||g>e.far)){var b=void 0;if(Array.isArray(l)){if(u)for(var w=v*3,E=0,C=u;E<C.length;E++){var x=C[E];if(w>=x.start&&w-x.start<x.count){b=l[(i=x.materialIndex)!==null&&i!==void 0?i:0];break}}}else b=l;if(b){var M=Uc.set(bu.set(y[0],y[1],y[2]).applyMatrix4(a),Qc.set(y[3],y[4],y[5]).applyMatrix4(a),Dc.set(y[6],y[7],y[8]).applyMatrix4(a)).getNormal(new d.Vector3),S=v*3,P=new d.Face3(c?c.array[S]:S,c?c.array[S+1]:S+1,c?c.array[S+2]:S+2,M),I=e.ray.direction.dot(M);b.side===d.FrontSide&&I>=0||b.side===d.BackSide&&I<=0||r.push({distance:g,object:n,face:P,point:h,distanceToRay:0,faceIndex:v})}}}}function Gc(n,t,e,r){var i,a,o=n.matrixWorld;Qo.getNormalMatrix(o),Fn.getInverse(o);var s=((a=(i=e.params.Points)===null||i===void 0?void 0:i.threshold)!==null&&a!==void 0?a:1)*Fn.getMaxScaleOnAxis();pn.copy(e.ray).applyMatrix4(Fn);for(var l=t.intersectRay(pn.origin,pn.direction,s,[]),u=n.geometry,c=u.index,f=u.getAttribute("normal"),A=0,p=l.length;A<p;A++){var y=l[A],v=y.triangle,m=y.index,h=y.intersectionPoint,g=new d.Vector3(h[0],h[1],h[2]).applyMatrix4(o),b=e.ray.origin.distanceTo(g);if(!(b<e.near||b>e.far)){var w=bu.set(v[0],v[1],v[2]).applyMatrix4(o),E=c?c.array[m]:m,C=void 0;f instanceof d.BufferAttribute&&(C=new d.Vector3().fromBufferAttribute(f,E).applyNormalMatrix(Qo));var x=new d.Face3(E,E,E,C);r.push({distance:b,object:n,face:x,point:g,distanceToRay:g.distanceTo(w),index:m})}}}function Do(n,t){var e=n.raycast,r=function(i,a){var o=si.get(this);o?zc(this,o,i,a):e.call(this,i,a)};return n.raycast=r,si.set(n,t),function(){si.delete(n),n.raycast===r&&(n.raycast=e)}}function Uo(n,t){var e=n.raycast,r=function(i,a){var o=Gi.get(this);o?Gc(this,o,i,a):e.call(this,i,a)};return n.raycast=r,Gi.set(n,t),function(){Gi.delete(n),n.raycast===r&&(n.raycast=e)}}function Hc(n,t,e,r){t===void 0&&(t=!0),e===void 0&&(e=100),r===void 0&&(r=10);var i=[];return n.traverse(function(a){if((a instanceof d.Mesh||a instanceof d.Points)&&a.geometry instanceof d.BufferGeometry){var o=a.geometry.getAttribute("position"),s=a.geometry.index;(o instanceof d.InterleavedBufferAttribute||s&&s instanceof d.InterleavedBufferAttribute)&&(t=!1,i.push(a)),o instanceof d.BufferAttribute&&i.push(a)}}),t?Promise.resolve().then(function(){for(var a,o,s=[],l=[],u=0;u<i.length;u++){var c=i[u];if(c instanceof d.Mesh){if(c.geometry instanceof d.BufferGeometry){var f=c.geometry.getAttribute("position");if(f instanceof d.BufferAttribute){var A=f.array,p=(a=c.geometry.getIndex())===null||a===void 0?void 0:a.array,y=c.geometry.boundingBox,v=y?[y.min.x,y.min.y,y.min.z,y.max.x,y.max.y,y.max.z]:void 0,m={type:"mesh",positionArray:A,indicesArray:p,maxItemPerNode:e,maxTreeDepth:r,extents:v};s.push(m);for(var h in m){var g=m[h];g&&(g instanceof ArrayBuffer?l.indexOf(g)===-1&&l.push(g):g.buffer instanceof ArrayBuffer&&l.indexOf(g.buffer)===-1&&l.push(g.buffer))}}}}else if(c instanceof d.Points&&c.geometry instanceof d.BufferGeometry){var f=c.geometry.getAttribute("position");if(f instanceof d.BufferAttribute){var A=f.array,p=(o=c.geometry.getIndex())===null||o===void 0?void 0:o.array,y=c.geometry.boundingBox,v=y?[y.min.x,y.min.y,y.min.z,y.max.x,y.max.y,y.max.z]:void 0,m={type:"points",positionArray:A,indicesArray:p,maxItemPerNode:e,maxTreeDepth:r,extents:v};s.push(m);for(var b in m){var g=m[b];g&&(g instanceof ArrayBuffer?l.indexOf(g)===-1&&l.push(g):g.buffer instanceof ArrayBuffer&&l.indexOf(g.buffer)===-1&&l.push(g.buffer))}}}}return Nc.postMessage(s,l)}).then(function(a){for(var o=[],s=0;s<i.length;s++){var l=i[s],u=a[s];if(l instanceof d.Mesh){if(l.geometry instanceof d.BufferGeometry){var c=l.geometry.getAttribute("position");if(c instanceof d.BufferAttribute){c.array=u.positionArray;var f=l.geometry.getIndex();f&&u.indicesArray&&(f.array=u.indicesArray);var A=new ko(u.positionArray,u.indicesArray);A.offsetArray=u.offsetArray,A.rootNodePacked=u.rootNodePacked;var p=Do(l,A);o.push(p)}}}else if(l instanceof d.Points&&l.geometry instanceof d.BufferGeometry){var c=l.geometry.getAttribute("position");if(c instanceof d.BufferAttribute){c.array=u.positionArray;var f=l.geometry.getIndex();f&&u.indicesArray&&(f.array=u.indicesArray);var A=new Vo(u.positionArray,u.indicesArray);A.offsetArray=u.offsetArray,A.rootNodePacked=u.rootNodePacked;var p=Uo(l,A);o.push(p)}}}return function(){for(var y=0,v=o;y<v.length;y++){var m=v[y];m()}o.length=0}}):Promise.resolve().then(function(){for(var a=[],o=0,s=i;o<s.length;o++){var l=s[o];if(l instanceof d.Mesh){if(l.geometry instanceof d.BufferGeometry){var u=l.geometry.getAttribute("position"),c=l.geometry.getIndex();if(u instanceof d.InterleavedBufferAttribute&&(u=Jn(u)),c&&c instanceof d.InterleavedBufferAttribute&&(c=Jn(c)),u instanceof d.BufferAttribute){var f=u.array,A=c==null?void 0:c.array,p=l.geometry.boundingBox,y=p?[p.min.x,p.min.y,p.min.z,p.max.x,p.max.y,p.max.z]:void 0,v=new ko(f,A);v.createTree(e,r,y);var m=Do(l,v);a.push(m)}}}else if(l instanceof d.Points&&l.geometry instanceof d.BufferGeometry){var u=l.geometry.getAttribute("position"),c=l.geometry.getIndex();if(u instanceof d.InterleavedBufferAttribute&&(u=Jn(u)),c&&c instanceof d.InterleavedBufferAttribute&&(c=Jn(c)),u instanceof d.BufferAttribute){var f=u.array,A=c==null?void 0:c.array,p=l.geometry.boundingBox,y=p?[p.min.x,p.min.y,p.min.z,p.max.x,p.max.y,p.max.z]:void 0,v=new Vo(f,A);v.createTree(e,r,y);var m=Uo(l,v);a.push(m)}}}return function(){for(var h=0,g=a;h<g.length;h++){var b=g[h];b()}a.length=0}})}var Kc=new d.Vector3,qc=new d.Vector3,jc=new d.Vector3,wu=function(n){de(t,n);function t(e,r){var i=n.call(this)||this;return i.renderOrder=-4,i.disposers=[r],i.add(e),i}return t.prototype.generateBvhTree=function(){var e=this;return Hc(this,!0,200,10).then(function(r){e.disposers.push(r)})},t.prototype.intersectRaycaster=function(e,r,i){var a=this;r===void 0&&(r=!0),i===void 0&&(i=[]);for(var o=this.children.slice(),s;s=o.pop();)if(s.visible){s.raycast(e,i);for(var l=0,u=s.children.length;l<u;l++)o.push(s.children[l])}return i.forEach(function(c){var f,A,p=0;if((c.object instanceof Ct||c.object instanceof ar)&&c.face){var y=Array.isArray(c.object.material)?c.object.material[c.face.materialIndex]:c.object.material;if(y)if(y.defines.USE_VERTEX_FLOOR){var v=(f=c.object.geometry.attributes.position)===null||f===void 0?void 0:f.array,m=(A=c.object.geometry.attributes.floor)===null||A===void 0?void 0:A.array;if(v&&m){var h=Kc.set(v[c.face.a*3],v[c.face.a*3+1],v[c.face.a*3+2]).applyMatrix4(a.matrixWorld),g=qc.set(v[c.face.b*3],v[c.face.b*3+1],v[c.face.b*3+2]).applyMatrix4(a.matrixWorld),b=jc.set(v[c.face.c*3],v[c.face.c*3+1],v[c.face.c*3+2]).applyMatrix4(a.matrixWorld),w=c.point.distanceTo(h),E=c.point.distanceTo(g),C=c.point.distanceTo(b);p=Math.round((w*m[c.face.a]+E*m[c.face.b]+C*m[c.face.c])/(w+E+C))}}else p=y.floor}c.floor=p}),r&&i.sort(function(c,f){return c.distance-f.distance}),i},t.prototype.dispose=function(){for(var e=0,r=this.disposers;e<r.length;e++){var i=r[e];i()}this.disposers.length=0},t}(d.Group);function gt(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];var e=[];n=n.map(function(s){return(s!=null?s:"").trim()}).filter(function(s){return s.length>0&&!/^\/+$/.test(s)});for(var r=0;r<n.length;r++){var i=r===0,a=r===n.length-1,o=n[r];i||(o=o.replace(/^\.\//,"").replace(/^\/+/,"")),a||(o=o.replace(/\/+$/,"")),e.push(o)}return e.join("/")}function wr(n){return n.indexOf("//")===0||/^[0-9a-z]+\:/i.test(n)}function Eu(n,t){if(n.content&&n.content.uri&&(wr(n.content.uri)||(n.content.uri=gt(t,n.content.uri))),n.children)for(var e=0,r=n.children;e<r.length;e++){var i=r[e];Eu(i,t)}return n}function zo(n,t){return n.asset.overview&&(wr(n.asset.overview.imageFile)||(n.asset.overview.imageFile=gt(t,n.asset.overview.imageFile)),wr(n.asset.overview.worldFile)||(n.asset.overview.worldFile=gt(t,n.asset.overview.worldFile))),Eu(n.root,t),n}function xu(n,t){return(t[0]==="?"||t[0]==="&")&&(t=t.slice(1)),t?((n[n.length-1]==="?"||n[n.length-1]==="&")&&(n=n.slice(0,-1)),n.indexOf("?")>=0?"".concat(n,"&").concat(t):"".concat(n,"?").concat(t)):n}var Hi=4;function Cu(n,t,e){var r=new DataView(t);if(n.magic=r.getUint32(e,!0),e+=Hi,n.version=r.getUint32(e,!0),e+=Hi,n.byteLength=r.getUint32(e,!0),e+=Hi,n.version!==1)throw new Error("3D Tile Version ".concat(n.version," not supported"));return e}var tr,Ze;(function(n){n[n.BYTE=5120]="BYTE",n[n.UNSIGNED_BYTE=5121]="UNSIGNED_BYTE",n[n.SHORT=5122]="SHORT",n[n.UNSIGNED_SHORT=5123]="UNSIGNED_SHORT",n[n.INT=5124]="INT",n[n.UNSIGNED_INT=5125]="UNSIGNED_INT",n[n.FLOAT=5126]="FLOAT",n[n.DOUBLE=5130]="DOUBLE"})(Ze||(Ze={}));var Wc=(tr={},tr[Ze.DOUBLE]=Float64Array,tr[Ze.FLOAT]=Float32Array,tr[Ze.UNSIGNED_SHORT]=Uint16Array,tr[Ze.UNSIGNED_INT]=Uint32Array,tr[Ze.UNSIGNED_BYTE]=Uint8Array,tr[Ze.BYTE]=Int8Array,tr[Ze.SHORT]=Int16Array,tr[Ze.INT]=Int32Array,tr),Xc={DOUBLE:Ze.DOUBLE,FLOAT:Ze.FLOAT,UNSIGNED_SHORT:Ze.UNSIGNED_SHORT,UNSIGNED_INT:Ze.UNSIGNED_INT,UNSIGNED_BYTE:Ze.UNSIGNED_BYTE,BYTE:Ze.BYTE,SHORT:Ze.SHORT,INT:Ze.INT};function vi(n){var t=Wc[n];if(!t)throw new Error("Failed to convert GL type");return t}function Ki(n){var t=vi(n);return t.BYTES_PER_ELEMENT}function Go(n,t,e,r){e===void 0&&(e=0);var i=vi(n);if(e%Ki(n)!==0){var a=r?t.slice(e,e+r*Ki(n)):t.slice(e);return new i(a)}else return new i(t,e,r!=null?r:(t.byteLength-e)/Ki(n))}function _c(n){var t=Xc[n];if(!t)throw new Error("Failed to convert GL type");return t}var Mu=function(){function n(t,e){this.featuresLength=0,this.cachedTypedArrays={},this.json=t,this.buffer=e;var r=this.getGlobalProperty("POINTS_LENGTH",Ze.UNSIGNED_INT,1);r&&r.length&&(this.featuresLength=r[0])}return n.prototype.getExtension=function(t){return this.json.extensions&&this.json.extensions[t]},n.prototype.hasProperty=function(t){return!!this.json[t]},n.prototype.getGlobalProperty=function(t,e,r){var i=this.json[t];if(typeof i=="number"){var a=vi(e);return new a([i])}else if(Array.isArray(i)){var a=vi(e);return new a(i)}else if(i&&Number.isFinite(i.byteOffset))return this.getTypedArrayFromBinary(t,e,r,1,i.byteOffset);return null},n.prototype.getPropertyArray=function(t,e,r){var i=this.json[t];return i&&Number.isFinite(i.byteOffset)?("componentType"in i&&(e=_c(i.componentType)),this.getTypedArrayFromBinary(t,e,r,this.featuresLength,i.byteOffset)):this.getTypedArrayFromArray(t,e,i)},n.prototype.getProperty=function(t,e,r,i,a){var o=this.json[t];if(!o)return null;var s=this.getPropertyArray(t,e,r);if(r===1)return a[0]=s[i],a;for(var l=0;l<r;++l)a[l]=s[r*i+l];return a},n.prototype.getTypedArrayFromBinary=function(t,e,r,i,a){var o=this.cachedTypedArrays,s=o[t];return s||(s=Go(e,this.buffer.buffer,this.buffer.byteOffset+a,i*r),o[t]=s),s},n.prototype.getTypedArrayFromArray=function(t,e,r){var i=this.cachedTypedArrays,a=i[t];return a||(a=Go(e,r),i[t]=a),a},n}(),nn=4,Ho="b3dm tile in legacy format.";function Su(n,t,e){var r=new TextDecoder("utf8"),i=new Uint8Array(n,t,e),a=r.decode(i);return a}function Iu(n,t,e){return e=Zc(n,t,e),e=Yc(n,t,e),e=Jc(n,t,e),e}function Zc(n,t,e){var r=new DataView(t),i=0;n.header=n.header||{};var a=r.getUint32(e,!0);e+=nn;var o=r.getUint32(e,!0);e+=nn;var s=r.getUint32(e,!0);e+=nn;var l=r.getUint32(e,!0);return e+=nn,s>=570425344?(e-=nn*2,i=a,s=o,l=0,a=0,o=0,console.warn(Ho)):l>=570425344&&(e-=nn,i=s,s=a,l=o,a=0,o=0,console.warn(Ho)),n.header.featureTableJsonByteLength=a,n.header.featureTableBinaryByteLength=o,n.header.batchTableJsonByteLength=s,n.header.batchTableBinaryByteLength=l,n.header.batchLength=i,e}function Yc(n,t,e){var r=n.header||{},i=r.featureTableJsonByteLength,a=r.featureTableBinaryByteLength,o=r.batchLength;if(n.featureTableJson={BATCH_LENGTH:o||0},i&&i>0){var s=Su(t,e,i);n.featureTableJson=JSON.parse(s)}e+=i||0,n.featureTableBinary=new Uint8Array(t,e,a),e+=a||0,n.rtcCenter=[0,0,0];var l=new Mu(n.featureTableJson,n.featureTableBinary);if(Array.isArray(l.json.RTC_CENTER)){var u=l.json.RTC_CENTER;n.rtcCenter[0]=u[0],n.rtcCenter[1]=u[1],n.rtcCenter[2]=u[2]}else{var u=l.getGlobalProperty("RTC_CENTER",Ze.FLOAT,3);u&&(n.rtcCenter[0]=u[0],n.rtcCenter[1]=u[1],n.rtcCenter[2]=u[2])}return e}function Jc(n,t,e){var r=n.header||{},i=r.batchTableJsonByteLength,a=r.batchTableBinaryByteLength;if(i&&i>0){var o=Su(t,e,i);n.batchTableJson=JSON.parse(o),e+=i,a&&a>0&&(n.batchTableBinary=new Uint8Array(t,e,a),n.batchTableBinary=new Uint8Array(n.batchTableBinary),e+=a)}return e}function $c(n,t,e){var r=e!==void 0?new Uint8Array(n).subarray(t,t+e):new Uint8Array(n).subarray(t),i=new Uint8Array(r);return i.buffer}function ed(n,t,e){var r=n.byteLength-e;if(r===0)throw new Error("glTF byte length must be greater than 0.");return e%4!==0&&console.warn("".concat(n.type,": embedded glb is not aligned to a 4-byte boundary.")),n.gltfArrayBuffer=$c(t,e,r),n.byteLength}function ga(n){if(typeof TextDecoder!="undefined")return new TextDecoder().decode(n);for(var t="",e=0,r=n.length;e<r;e++)t+=String.fromCharCode(n[e]);try{return decodeURIComponent(escape(t))}catch(i){return t}}var Fe={FLOAT:5126,FLOAT_MAT3:35675,FLOAT_MAT4:35676,FLOAT_VEC2:35664,FLOAT_VEC3:35665,FLOAT_VEC4:35666,LINEAR:9729,REPEAT:10497,SAMPLER_2D:35678,POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6,UNSIGNED_BYTE:5121,UNSIGNED_SHORT:5123},xn={5120:Int8Array,5121:Uint8Array,5122:Int16Array,5123:Uint16Array,5125:Uint32Array,5126:Float32Array},Ai={9728:d.NearestFilter,9729:d.LinearFilter,9984:d.NearestMipmapNearestFilter,9985:d.LinearMipmapNearestFilter,9986:d.NearestMipmapLinearFilter,9987:d.LinearMipmapLinearFilter},mi={33071:d.ClampToEdgeWrapping,33648:d.MirroredRepeatWrapping,10497:d.RepeatWrapping},Ko={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},xt={POSITION:"position",NORMAL:"normal",TANGENT:"tangent",TEXCOORD_0:"uv",TEXCOORD_1:"uv2",COLOR_0:"color",WEIGHTS_0:"skinWeight",JOINTS_0:"skinIndex"},Br={scale:"scale",translation:"position",rotation:"quaternion",weights:"morphTargetInfluences"},td={CUBICSPLINE:void 0,LINEAR:d.InterpolateLinear,STEP:d.InterpolateDiscrete},Ar={OPAQUE:"OPAQUE",MASK:"MASK",BLEND:"BLEND"};function ct(n){var t=[];for(var e in n)t.push(n[e]);return t}var rd=function(){function n(t,e,r){this.json=t,this.extensions=e,this.options=r,this.cache=new Map,this.disposeSet=new Set,this.nodeNamesUsed={}}return n.prototype.dispose=function(){this.cache.clear(),this.disposeSet.forEach(function(t){typeof t.dispose=="function"&&t.dispose(),typeof t.close=="function"&&t.close()}),this.disposeSet.clear(),delete this.cache,delete this.disposeSet,delete this.json,delete this.extensions,delete this.options},n.prototype.markDefs=function(){for(var t=this.json.nodes||[],e=this.json.skins||[],r=this.json.meshes||[],i=0,a=e.length;i<a;i++)for(var o=e[i].joints,s=0,l=o.length;s<l;s++)t[o[s]].isBone=!0;for(var u=0,c=t.length;u<c;u++){var f=t[u];f.mesh!==void 0&&f.skin!==void 0&&(r[f.mesh].isSkinnedMesh=!0)}},n.prototype.parse=function(){var t=this,e=this.json,r=this.extensions;this.markDefs();for(var i=0,a=ct(r);i<a.length;i++){var o=a[i];o.markDefs(this)}return Promise.all(ct(r).map(function(s){return s.prepare(t)})).then(function(){var s,l,u;return Promise.all([Promise.all(((s=e.scenes)!==null&&s!==void 0?s:[]).map(function(c,f){return t.loadScene(f)})),Promise.all(((l=e.animations)!==null&&l!==void 0?l:[]).map(function(c,f){return t.loadAnimation(f)})),Promise.all(((u=e.cameras)!==null&&u!==void 0?u:[]).map(function(c,f){return t.loadCamera(f)}))])}).then(function(s){var l=s[0],u=s[1],c=s[2],f={json:t.json,scene:l[e.scene||0],scenes:l,animations:u,cameras:c,dispose:function(){return t.dispose()}};return Promise.all(ct(r).map(function(A){return A.emitResult(f,t)})).then(function(){return f})})},n.prototype.loadCamera=function(t){var e="camera:"+t,r=this.cache.get(e);if(r)return r;for(var i=null,a=0,o=ct(this.extensions);a<o.length;a++){var s=o[a];if(i=s.loadCamera(t,this),i)break}if(!i){var l=void 0,u=this.json.cameras[t],c=u[u.type];c?u.type==="perspective"?l=new d.PerspectiveCamera(d.MathUtils.radToDeg(c.yfov),c.aspectRatio||1,c.znear||1,c.zfar||2e6):u.type==="orthographic"?l=new d.OrthographicCamera(-c.xmag,c.xmag,c.ymag,-c.ymag,c.znear,c.zfar):(console.warn("glTF: Invalid camera type ".concat(u.type,".")),l=new d.Camera):(console.warn("glTF: Missing camera parameters."),l=new d.Camera),u.name&&(l.name=this.createUniqueName(u.name)),i=Promise.resolve(l)}return this.cache.set(e,i),i},n.prototype.loadSkin=function(t){var e="animation:"+t,r=this.cache.get(e);if(r)return r;var i,a=this.json.skins[t],o={joints:a.joints};return a.inverseBindMatrices===void 0?i=Promise.resolve(o):i=this.loadAccessor(a.inverseBindMatrices).then(function(s){return s&&(o.inverseBindMatrices=s),o}),this.cache.set(e,i),i},n.prototype.loadAnimation=function(t){var e="animation:"+t,r=this.cache.get(e);if(r)return r;for(var i=null,a=0,o=ct(this.extensions);a<o.length;a++){var s=o[a];if(i=s.loadAnimation(t,this),i)break}if(!i){for(var l=this.json,u=l.animations[t],c=[],f=[],A=[],p=[],y=[],v=0,m=u.channels.length;v<m;v++){var h=u.channels[v],g=u.samplers[h.sampler],b=h.target,w=b.node!==void 0?b.node:b.id,E=u.parameters!==void 0?u.parameters[g.input]:g.input,C=u.parameters!==void 0?u.parameters[g.output]:g.output;c.push(this.loadNode(w)),f.push(this.loadAccessor(E)),A.push(this.loadAccessor(C)),p.push(g),y.push(b)}i=Promise.all([Promise.all(c),Promise.all(f),Promise.all(A),Promise.all(p),Promise.all(y)]).then(function(x){for(var M=x[0],S=x[1],P=x[2],I=x[3],B=x[4],k=[],L=function(K,j){var U=M[K],G=S[K],H=P[K],Y=I[K],W=B[K];if(U===void 0)return"continue";U.updateMatrix(),U.matrixAutoUpdate=!0;var _=void 0;switch(Br[W.path]){case Br.weights:_=d.NumberKeyframeTrack;break;case Br.rotation:_=d.QuaternionKeyframeTrack;break;case Br.position:case Br.scale:default:_=d.VectorKeyframeTrack;break}var Z=U.name?U.name:U.uuid,fe=Y.interpolation!==void 0?td[Y.interpolation]:d.InterpolateLinear,re=[];Br[W.path]===Br.weights?U.traverse(function(ce){ce.morphTargetInfluences&&re.push(ce.name?ce.name:ce.uuid)}):re.push(Z);var ie=H.array;if(H.normalized){for(var ne=qi(ie.constructor),ve=new Float32Array(ie.length),te=0,he=ie.length;te<he;te++)ve[te]=ie[te]*ne;ie=ve}for(var te=0,he=re.length;te<he;te++){var Ae=new _(re[te]+"."+Br[W.path],G.array,ie,fe);k.push(Ae)}},O=0,Q=M.length;O<Q;O++)L(O);var N=u.name?u.name:"animation_"+t;return new d.AnimationClip(N,void 0,k)})}return this.cache.set(e,i),i},n.prototype.loadBuffer=function(t){var e=this.json.buffers[t];if(e.type&&e.type!=="arraybuffer")throw new Error("glTF: "+e.type+" buffer type is not supported.");var r="buffer:"+t,i=this.cache.get(r);if(i)return i;for(var a=null,o=0,s=ct(this.extensions);o<s.length;o++){var l=s[o];if(a=l.loadBuffer(t,this),a)break}if(!a){var u=this.json.buffers[t];a=this.options.fetcher.ajax(this.resolveResouce(u.uri),{responseType:"arraybuffer"}).then(function(c){return c.body})}return this.cache.set(r,a),a},n.prototype.loadBufferView=function(t){var e="bufferView:"+t,r=this.cache.get(e);if(r)return r;for(var i=null,a=0,o=ct(this.extensions);a<o.length;a++){var s=o[a];if(i=s.loadBufferView(t,this),i)break}if(!i){var l=this.json.bufferViews[t];i=this.loadBuffer(l.buffer).then(function(u){var c=l.byteLength||0,f=l.byteOffset||0;return u.slice(f,f+c)})}return this.cache.set(e,i),i},n.prototype.loadAccessor=function(t){var e=this,r="accessor:"+t,i=this.cache.get(r);if(i)return i;var a=null;if(!a){var o=this.json.accessors[t];if(o.bufferView===void 0&&o.sparse===void 0)a=Promise.resolve(null);else{var s=[];o.bufferView!==void 0?s.push(this.loadBufferView(o.bufferView)):s.push(Promise.resolve(null)),o.sparse!==void 0&&(s.push(this.loadBufferView(o.sparse.indices.bufferView)),s.push(this.loadBufferView(o.sparse.values.bufferView))),a=Promise.all(s).then(function(l){var u=l[0],c=Ko[o.type],f=xn[o.componentType],A=f.BYTES_PER_ELEMENT,p=A*c,y=o.byteOffset||0,v=o.bufferView!==void 0?e.json.bufferViews[o.bufferView].byteStride:void 0,m=o.normalized===!0,h,g;if(v&&v!==p){var b=Math.floor(y/v),w="InterleavedBuffer:"+o.bufferView+":"+o.componentType+":"+b+":"+o.count,E=e.cache.get(w);E||(h=new f(u,b*v,o.count*v/A),E=new d.InterleavedBuffer(h,v/A),e.cache.set(w,E)),g=new d.InterleavedBufferAttribute(E,c,y%v/A,m)}else u===null?h=new f(o.count*c):h=new f(u,y,o.count*c),g=new d.BufferAttribute(h,c,m);if(o.sparse!==void 0){var C=Ko.SCALAR,x=xn[o.sparse.indices.componentType],M=o.sparse.indices.byteOffset||0,S=o.sparse.values.byteOffset||0,P=new x(l[1],M,o.sparse.count*C),I=new f(l[2],S,o.sparse.count*c);u!==null&&(g=new d.BufferAttribute(g.array.slice(),g.itemSize,g.normalized));for(var B=0,k=P.length;B<k;B++){var L=P[B];if(g.setX(L,I[B*c]),c>=2&&g.setY(L,I[B*c+1]),c>=3&&g.setZ(L,I[B*c+2]),c>=4&&g.setW(L,I[B*c+3]),c>=5)throw new Error("THREE.GLTFLoader: Unsupported itemSize in sparse BufferAttribute.")}}return g})}}return this.cache.set(r,a),a},n.prototype.createPrimitiveKey=function(t){for(var e=0,r=ct(this.extensions);e<r.length;e++){var i=r[e],a=i.createPrimitiveKey(t,this);if(a)return a}for(var o="",s=Object.keys(t.attributes).sort(),l=0,u=s.length;l<u;l++)o+=s[l]+":"+t.attributes[s[l]]+";";return t.indices+":"+o+":"+t.mode},n.prototype.loadGeometry=function(t){for(var e=this,r=null,i=0,a=ct(this.extensions);i<a.length;i++){var o=a[i];if(r=o.loadGeometry(t,this),r)break}return r||(r=this.addGeometryPrimitiveAttributes(new d.BufferGeometry,t)),r=r.then(function(s){return e.disposeSet.add(s),s}),r},n.prototype.loadImage=function(t){for(var e=this,r=null,i=0,a=ct(this.extensions);i<a.length;i++){var o=a[i];if(r=o.loadImage(t,this),r)break}if(!r){var s=this.json.images[t];if(s.bufferView!==void 0){var l=this.json.bufferViews[s.bufferView];r=this.loadBuffer(l.buffer).then(function(c){var f=l.byteOffset||0,A=l.byteLength||0,p=new Uint8Array(c,f,A),y=new Blob([p],{type:s.mimeType});return pa(y)})}else if(s.uri){var u=this.resolveResouce(s.uri);r=this.options.fetcher.loadImage(u,{},void 0,void 0,void 0,pi()).then(function(c){return c.body})}else throw new Error("glTF: Invalid image defs.")}return r=r.then(function(c){return e.disposeSet.add(c),c}),r},n.prototype.loadMaterialAsMeshStandardMaterial=function(t){var e=this,r=[],i=new d.MeshStandardMaterial;if(i.color=new d.Color(1,1,1),i.opacity=1,Object.keys(t.attributes).filter(function(c){return xt[c]==="color"}).length>0&&(i.vertexColors=!0),Object.keys(t.attributes).filter(function(c){return xt[c]==="normal"}).length===0&&(i.flatShading=!0),Object.keys(t.attributes).filter(function(c){return xt[c]==="tangent"}).length===0&&(i.normalScale&&(i.normalScale.y*=-1),i.clearcoatNormalScale&&(i.clearcoatNormalScale.y*=-1)),t.material!==void 0){var a=this.json.materials[t.material];a.name&&(i.name=a.name);var o=a.pbrMetallicRoughness||{};if(Array.isArray(o.baseColorFactor)){var s=o.baseColorFactor;i.color.fromArray(s),i.opacity=s[3]}o.baseColorTexture!==void 0&&r.push(this.createMaterialTexture(o.baseColorTexture).then(function(c){c.encoding=d.sRGBEncoding,i.map=c,e.disposeSet.add(c)})),i.metalness=o.metallicFactor!==void 0?o.metallicFactor:1,i.roughness=o.roughnessFactor!==void 0?o.roughnessFactor:1,o.metallicRoughnessTexture!==void 0&&r.push(this.createMaterialTexture(o.metallicRoughnessTexture).then(function(c){c.encoding=d.sRGBEncoding,i.metalnessMap=c,i.roughnessMap=c,e.disposeSet.add(c)})),a.doubleSided===!0&&(i.side=d.DoubleSide);var l=a.alphaMode||Ar.OPAQUE;if(l===Ar.BLEND?(i.transparent=!0,i.depthWrite=!1):(i.transparent=!1,l===Ar.MASK&&(i.alphaTest=a.alphaCutoff!==void 0?a.alphaCutoff:.5)),a.normalTexture!==void 0&&(r.push(this.createMaterialTexture(a.normalTexture).then(function(c){i.normalMap=c,e.disposeSet.add(c)})),i.normalScale=new d.Vector2(1,1),a.normalTexture.scale!==void 0)){var u=a.normalTexture.scale;i.normalScale.set(u,u)}a.occlusionTexture!==void 0&&(r.push(this.createMaterialTexture(a.occlusionTexture).then(function(c){i.aoMap=c,e.disposeSet.add(c)})),a.occlusionTexture.strength!==void 0&&(i.aoMapIntensity=a.occlusionTexture.strength)),a.emissiveFactor!==void 0&&(i.emissive=new d.Color().fromArray(a.emissiveFactor)),a.emissiveTexture!==void 0&&r.push(this.createMaterialTexture(a.emissiveTexture).then(function(c){i.emissiveMap=c,e.disposeSet.add(c)}))}return this.disposeSet.add(i),Promise.all(r).then(function(){return i})},n.prototype.loadMaterialAsLineBasicMaterial=function(t){var e=[],r=new d.LineBasicMaterial;if(r.color=new d.Color(1,1,1),r.opacity=1,Object.keys(t.attributes).filter(function(l){return xt[l]==="color"}).length>0&&(r.vertexColors=!0),Object.keys(t.attributes).filter(function(l){return xt[l]==="tangent"}).length===0&&(r.normalScale&&(r.normalScale.y*=-1),r.clearcoatNormalScale&&(r.clearcoatNormalScale.y*=-1)),t.material!==void 0){var i=this.json.materials[t.material];i.name&&(r.name=i.name);var a=i.pbrMetallicRoughness||{};if(Array.isArray(a.baseColorFactor)){var o=a.baseColorFactor;r.color.fromArray(o),r.opacity=o[3]}i.doubleSided===!0&&(r.side=d.DoubleSide);var s=i.alphaMode||Ar.OPAQUE;s===Ar.BLEND?(r.transparent=!0,r.depthWrite=!1):(r.transparent=!1,s===Ar.MASK&&(r.alphaTest=i.alphaCutoff!==void 0?i.alphaCutoff:.5))}return this.disposeSet.add(r),Promise.all(e).then(function(){return r})},n.prototype.loadMaterialAsPointsMaterial=function(t){var e=this,r=[],i=new d.PointsMaterial;if(i.color=new d.Color(1,1,1),i.opacity=1,i.sizeAttenuation=!1,Object.keys(t.attributes).filter(function(u){return xt[u]==="color"}).length>0&&(i.vertexColors=!0),Object.keys(t.attributes).filter(function(u){return xt[u]==="tangent"}).length===0&&(i.normalScale&&(i.normalScale.y*=-1),i.clearcoatNormalScale&&(i.clearcoatNormalScale.y*=-1)),t.material!==void 0){var a=this.json.materials[t.material];a.name&&(i.name=a.name);var o=a.pbrMetallicRoughness||{};if(Array.isArray(o.baseColorFactor)){var s=o.baseColorFactor;i.color.fromArray(s),i.opacity=s[3]}o.baseColorTexture!==void 0&&r.push(this.createMaterialTexture(o.baseColorTexture).then(function(u){u.encoding=d.sRGBEncoding,i.map=u,e.disposeSet.add(u)})),a.doubleSided===!0&&(i.side=d.DoubleSide);var l=a.alphaMode||Ar.OPAQUE;l===Ar.BLEND?(i.transparent=!0,i.depthWrite=!1):(i.transparent=!1,l===Ar.MASK&&(i.alphaTest=a.alphaCutoff!==void 0?a.alphaCutoff:.5))}return this.disposeSet.add(i),Promise.all(r).then(function(){return i})},n.prototype.loadMaterial=function(t){var e,r=(e=t.mode)!==null&&e!==void 0?e:Fe.TRIANGLES,i="material:"+this.createPrimitiveKey(t),a=this.cache.get(i);if(a)return a;for(var o=null,s=0,l=ct(this.extensions);s<l.length;s++){var u=l[s];if(o=u.loadMaterial(t,this),o)break}if(r===Fe.TRIANGLES||r===Fe.TRIANGLE_STRIP||r===Fe.TRIANGLE_FAN)o=this.loadMaterialAsMeshStandardMaterial(t);else if(r===Fe.LINES||r===Fe.LINE_STRIP||r===Fe.LINE_LOOP)o=this.loadMaterialAsLineBasicMaterial(t);else if(r===Fe.POINTS)o=this.loadMaterialAsPointsMaterial(t);else throw new Error("glTF: Primitive mode unsupported: "+r);return this.cache.set(i,o),o},n.prototype.loadTexture=function(t){var e=this,r="texture:"+t,i=this.cache.get(r);if(i)return i;for(var a=null,o=0,s=ct(this.extensions);o<s.length;o++){var l=s[o];if(a=l.loadTexture(t,this),a)break}if(!a){var u=this.json.textures[t];a=this.loadImage(u.source).then(function(c){var f=new d.Texture(c);f.needsUpdate=!0,f.flipY=!1,u.name&&(f.name=u.name);var A=e.json.samplers||{},p=A[u.sampler]||{};return f.magFilter=Ai[p.magFilter]||d.LinearFilter,f.minFilter=Ai[p.minFilter]||d.LinearMipmapLinearFilter,f.wrapS=mi[p.wrapS]||d.RepeatWrapping,f.wrapT=mi[p.wrapT]||d.RepeatWrapping,f.onUpdate=function(){c.close()},f})}return a=a.then(function(c){return e.disposeSet.add(c),c}),this.cache.set(r,a),a},n.prototype.loadMesh=function(t){for(var e=this,r=null,i=0,a=ct(this.extensions);i<a.length;i++){var o=a[i];if(r=o.loadMesh(t,this),r)break}if(!r){var s=this.json.meshes[t],l=s.primitives,u=Promise.all(l.map(function(f){return e.loadGeometry(f)})),c=Promise.all(l.map(function(f){return e.loadMaterial(f)}));r=Promise.all([u,c]).then(function(f){for(var A=f[0],p=f[1],y=[],v=0;v<l.length;v++){var m=l[v],h=A[v],g=p[v],b=m.mode||Fe.TRIANGLES,w=void 0;if(b===Fe.TRIANGLES||b===Fe.TRIANGLE_STRIP||b===Fe.TRIANGLE_FAN)if(b===Fe.TRIANGLE_STRIP?h=e.toGeometryTrianglesDrawMode(h,d.TriangleStripDrawMode):b===Fe.TRIANGLE_FAN&&(h=e.toGeometryTrianglesDrawMode(h,d.TriangleFanDrawMode)),e.disposeSet.add(h),s.isSkinnedMesh){var E=new d.SkinnedMesh(h,g);h.attributes.skinWeight.normalized||E.normalizeSkinWeights(),w=E}else w=new d.Mesh(h,g);else if(b===Fe.POINTS)w=new d.Points(h,g);else if(b===Fe.LINES)w=new d.LineSegments(h,g);else if(b===Fe.LINE_STRIP)w=new d.Line(h,g);else if(b===Fe.LINE_LOOP)w=new d.LineLoop(h,g);else throw new Error("glTF: Primitive mode unsupported: "+b);if(Object.keys(h.morphAttributes).length>0){if(s.weights!==void 0)for(var C=0,x=s.weights.length;C<x;C++)w.morphTargetInfluences[C]=s.weights[C];if(s.extras&&Array.isArray(s.extras.targetNames)){var M=s.extras.targetNames;if(w.morphTargetInfluences.length===M.length){w.morphTargetDictionary={};for(var C=0,x=M.length;C<x;C++)w.morphTargetDictionary[M[C]]=C}else console.warn("glTF: Invalid extras.targetNames length. Ignoring names.")}}w.name=e.createUniqueName(s.name||"mesh_"+t),y.push(w)}if(y.length===1)return y[0];for(var S=new d.Group,P=0,I=y;P<I.length;P++){var w=I[P];S.add(w)}return S})}return r},n.prototype.loadNodeAttachments=function(t){for(var e=[],r=0,i=ct(this.extensions);r<i.length;r++){var a=i[r],o=a.loadNodeAttachments(t,this);o&&e.push(o)}return e},n.prototype.loadNode=function(t){var e="node:"+t,r=this.cache.get(e);if(r)return r;var i=this.json,a=i.nodes[t],o=a.name?this.createUniqueName(a.name):"",s=[];a.mesh!==void 0&&s.push(this.loadMesh(a.mesh).then(function(A){if(a.weights!==void 0){var p=a.weights;A.traverse(function(y){if(y instanceof d.Mesh||y instanceof d.Line||y instanceof d.Points)for(var v=0,m=p.length;v<m;v++)y.morphTargetInfluences[v]=p[v]})}return A})),a.camera!==void 0&&s.push(this.loadCamera(a.camera));for(var l=this.loadNodeAttachments(t),u=0,c=l;u<c.length;u++){var f=c[u];s.push(f)}return Promise.all(s).then(function(A){var p;if(a.isBone===!0?p=new d.Bone:A.length>1?p=new d.Group:A.length===1?p=A[0]:p=new d.Object3D,p!==A[0])for(var y=0,v=A.length;y<v;y++)p.add(A[y]);if(a.name&&(p.name=o),a.matrix!==void 0){var m=new d.Matrix4;m.fromArray(a.matrix),p.applyMatrix4(m)}else a.translation!==void 0&&p.position.fromArray(a.translation),a.rotation!==void 0&&p.quaternion.fromArray(a.rotation),a.scale!==void 0&&p.scale.fromArray(a.scale);return p})},n.prototype.loadScene=function(t){var e=this.json,r=e.scenes[t],i=new d.Group;r.name&&(i.name=this.createUniqueName(r.name));for(var a=r.nodes||[],o=[],s=0,l=a.length;s<l;s++)o.push(this.buildNodeHierarchy(a[s],i));return Promise.all(o).then(function(){return i})},n.prototype.createMaterialTexture=function(t){var e=this;return this.loadTexture(t.index).then(function(r){for(var i=0,a=ct(e.extensions);i<a.length;i++){var o=a[i],s=o.extendTexture(r,t,e);s&&(r=s,e.disposeSet.add(r))}return r})},n.prototype.addGeometryPrimitiveAttributes=function(t,e){var r=this,i=e.attributes,a=[],o=function(E){var C=xt[E]||E.toLowerCase();if(C in t.attributes)return"continue";a.push(s.loadAccessor(i[E]).then(function(x){x&&t.setAttribute(C,x)}))},s=this;for(var l in i)o(l);e.indices!==void 0&&!t.index&&a.push(this.loadAccessor(e.indices).then(function(E){E&&t.setIndex(E)}));var u=new d.Box3;if(i.POSITION!==void 0){var c=this.json.accessors[i.POSITION],f=c.min,A=c.max;if(f!==void 0&&A!==void 0){if(u.set(new d.Vector3(f[0],f[1],f[2]),new d.Vector3(A[0],A[1],A[2])),c.normalized){var p=qi(xn[c.componentType]);u.min.multiplyScalar(p),u.max.multiplyScalar(p)}}else console.warn("glTF: Missing min/max properties for accessor POSITION.")}var y=e.targets;if(y!==void 0){for(var v=new d.Vector3,m=new d.Vector3,h=0,g=y.length;h<g;h++){var b=y[h];if(b.POSITION!==void 0){var c=this.json.accessors[b.POSITION],f=c.min,A=c.max;if(f!==void 0&&A!==void 0){if(m.setX(Math.max(Math.abs(f[0]),Math.abs(A[0]))),m.setY(Math.max(Math.abs(f[1]),Math.abs(A[1]))),m.setZ(Math.max(Math.abs(f[2]),Math.abs(A[2]))),c.normalized){var p=qi(xn[c.componentType]);m.multiplyScalar(p)}v.max(m)}else console.warn("glTF: Missing min/max properties for accessor POSITION.")}}u.expandByVector(v)}t.boundingBox=u;var w=new d.Sphere;return u.getCenter(w.center),w.radius=u.min.distanceTo(u.max)/2,t.boundingSphere=w,Promise.all(a).then(function(){if(t.attributes.uv&&!t.attributes.uv2&&r.options.copyUV2&&t.setAttribute("uv2",t.attributes.uv),e.targets){for(var E=!1,C=!1,x=0,M=e.targets.length;x<M;x++){var S=e.targets[x];if(S.POSITION!==void 0&&(E=!0),S.NORMAL!==void 0&&(C=!0),E&&C)break}if(!E&&!C)return t;var P=[];t.morphTargetsRelative=!0;for(var I=function(B,k){var L=e.targets[B];E?P.push(r.loadAccessor(L.POSITION).then(function(O){O&&(t.morphAttributes.position[B]=O)})):t.morphAttributes.position[B]=t.attributes.position,C?P.push(r.loadAccessor(L.NORMAL).then(function(O){O&&(t.morphAttributes.normal[B]=O)})):t.morphAttributes.normal[B]=t.attributes.normal},x=0,M=e.targets.length;x<M;x++)I(x,M);return Promise.all(P).then(function(){return t})}else return t})},n.prototype.buildNodeHierarchy=function(t,e){var r=this,i=this.json.nodes[t];return this.loadNode(t).then(function(a){if(i.skin===void 0)return a;var o;return r.loadSkin(i.skin).then(function(s){o=s;for(var l=[],u=0,c=o.joints.length;u<c;u++)l.push(r.loadNode(o.joints[u]));return Promise.all(l)}).then(function(s){return a.traverse(function(l){if(l instanceof d.SkinnedMesh){for(var u=[],c=[],f=0,A=s.length;f<A;f++){var p=s[f];if(p instanceof d.Bone){u.push(p);var y=new d.Matrix4;o.inverseBindMatrices!==void 0&&y.fromArray(o.inverseBindMatrices.array,f*16),c.push(y)}else console.warn('glTF: Joint "%s" could not be found.',o.joints[f])}l.bind(new d.Skeleton(u,c),l.matrixWorld)}}),a})}).then(function(a){e.add(a);var o=[];if(i.children)for(var s=i.children,l=0,u=s.length;l<u;l++){var c=s[l];o.push(r.buildNodeHierarchy(c,a))}return Promise.all(o).then(function(){return a})})},n.prototype.createUniqueName=function(t){for(var e=d.PropertyBinding.sanitizeNodeName(t||""),r=e,i=1;this.nodeNamesUsed[r];++i)r=e+"_"+i;return this.nodeNamesUsed[r]=!0,r},n.prototype.resolveResouce=function(t){return gt(this.options.resourcePath,xu(t,this.options.search))},n.prototype.toGeometryTrianglesDrawMode=function(t,e){var r=t.getIndex();if(r===null){var i=[],a=t.getAttribute("position");if(a!==void 0){for(var o=0;o<a.count;o++)i.push(o);t.setIndex(i),r=t.getIndex()}}if(r===null)return console.error("glTF: Undefined position attribute. Processing not possible."),t;var s=r.count-2,l=[];if(e===d.TriangleFanDrawMode)for(var o=1;o<=s;o++)l.push(r.getX(0)),l.push(r.getX(o)),l.push(r.getX(o+1));else for(var o=0;o<s;o++)o%2===0?(l.push(r.getX(o)),l.push(r.getX(o+1)),l.push(r.getX(o+2))):(l.push(r.getX(o+2)),l.push(r.getX(o+1)),l.push(r.getX(o)));l.length/3!==s&&console.error("glTF: Unable to generate correct amount of triangles.");var u=t.clone();return u.setIndex(l),this.disposeSet.add(u),u},n}();function qi(n){switch(n){case Int8Array:return 1/127;case Uint8Array:return 1/255;case Int16Array:return 1/32767;case Uint16Array:return 1/65535;default:throw new Error("glTF: Unsupported normalized accessor component type.")}}var Er=function(){function n(){}return n.prototype.markDefs=function(t){},n.prototype.prepare=function(t){},n.prototype.emitResult=function(t,e){},n.prototype.createPrimitiveKey=function(t,e){},n.prototype.extendTexture=function(t,e,r){return null},n.prototype.loadBuffer=function(t,e){return null},n.prototype.loadBufferView=function(t,e){return null},n.prototype.loadImage=function(t,e){return null},n.prototype.loadTexture=function(t,e){return null},n.prototype.loadGeometry=function(t,e){return null},n.prototype.loadMaterial=function(t,e){return null},n.prototype.loadMesh=function(t,e){return null},n.prototype.loadNodeAttachments=function(t,e){return null},n.prototype.loadCamera=function(t,e){return null},n.prototype.loadAnimation=function(t,e){return null},n}(),nd=function(n){de(t,n);function t(){var e=n.call(this)||this;return e.header={magic:"",version:0,length:0},e.content="",e.body=null,e}return t.getMagic=function(e){return ga(new Uint8Array(e.slice(0,4)))},t.prototype.loadGlbBinary=function(e){var r=new DataView(e,0,t.HEADER_LENGTH);if(this.header={magic:t.getMagic(e),version:r.getUint32(4,!0),length:r.getUint32(8,!0)},this.header.magic!==t.HEADER_MAGIC)throw new Error("glTF:KHR_binary_glTF: Unsupported.");if(this.header.version<2)throw new Error("glTF:KHR_binary_glTF: Legacy binary file detected.");for(var i=new DataView(e,t.HEADER_LENGTH),a=0,o=null,s=null;a<i.byteLength;){var l=i.getUint32(a,!0);if(a+=4,l!==0){var u=i.getUint32(a,!0);if(a+=4,u===t.CHUNK_TYPES.JSON){var c=new Uint8Array(e,t.HEADER_LENGTH+a,l);o=ga(c)}else if(u===t.CHUNK_TYPES.BIN){var f=t.HEADER_LENGTH+a;s=e.slice(f,f+l)}a+=l}}if(o===null)throw new Error("glTF:KHR_binary_glTF: JSON content not found.");this.content=o,this.body=s},t.prototype.loadBuffer=function(e,r){var i=r.json.buffers[e];return i.uri===void 0&&e===0&&this.body?Promise.resolve(this.body):null},t.HEADER_MAGIC="glTF",t.HEADER_LENGTH=12,t.CHUNK_TYPES={JSON:1313821514,BIN:5130562},t}(Er),id="https://vr-public.realsee-cdn.cn/release/static/image/release/five/resource/draco/1.5.6/",qo={position:"POSITION",normal:"NORMAL",color:"COLOR",uv:"TEX_COORD"},jo={position:"Float32Array",normal:"Float32Array",color:"Float32Array",uv:"Float32Array"},ad=function(){function n(){this.decoderPath=id,this.decoderConfig={},this.decoderPending=null,this.workerLimit=4,this.workerPool=[],this.workerNextTaskID=1,this.workerSourceURL=""}return n.prototype.setDecoderPath=function(t){this.decoderPath=t},n.prototype.setDecoderConfig=function(t){return this.decoderConfig=t,this},n.prototype.setWorkerLimit=function(t){return this.workerLimit=t,this},n.prototype.decodeDracoFile=function(t,e,r,i){var a={attributeIDs:r||qo,attributeTypes:i||jo,useUniqueIDs:!!r};this.decodeGeometry(t,a).then(e)},n.prototype.decodeGeometry=function(t,e){var r=this;e===void 0&&(e={attributeIDs:qo,attributeTypes:jo,useUniqueIDs:!1});for(var i in e.attributeTypes){var a=e.attributeTypes[i];a.BYTES_PER_ELEMENT!==void 0&&(e.attributeTypes[i]=a.name)}var o,s=this.workerNextTaskID++,l=t.byteLength,u=this._getWorker(s,l).then(function(c){return o=c,new Promise(function(f,A){o._callbacks[s]={resolve:f,reject:A},o.postMessage({type:"decode",id:s,taskConfig:e,buffer:t},[t])})}).then(function(c){return r._createGeometry(c.geometry)});return u.catch(function(){return!0}).then(function(){o&&s&&r._releaseTask(o,s)}),u},n.prototype._createGeometry=function(t){var e=new d.BufferGeometry;t.index&&e.setIndex(new d.BufferAttribute(t.index.array,1));for(var r=0;r<t.attributes.length;r++){var i=t.attributes[r],a=i.name,o=i.array,s=i.itemSize;e.setAttribute(a,new d.BufferAttribute(o,s))}return e},n.prototype._initDecoder=function(){var t=this;if(this.decoderPending)return this.decoderPending;var e=typeof WebAssembly!="object"||this.decoderConfig.type==="js";if(e){var r=fn(this.decoderPath+"draco_decoder.js",{responseType:"text"}).then(function(a){return a.body});this.decoderPending=r.then(function(a){var o=["/* draco decoder */",a,"","/* worker */",Wo].join(`
|
|
418
418
|
`);t.workerSourceURL=URL.createObjectURL(new Blob([o]))})}else{var r=fn(this.decoderPath+"draco_wasm_wrapper.js",{responseType:"text"}).then(function(o){return o.body}),i=fn(this.decoderPath+"draco_decoder.wasm",{responseType:"arraybuffer"}).then(function(o){return o.body});this.decoderPending=Promise.all([r,i]).then(function(o){var s=o[0],l=o[1];t.decoderConfig.wasmBinary=l;var u=["/* draco decoder */",s,"","/* worker */",Wo].join(`
|
|
419
419
|
`);t.workerSourceURL=URL.createObjectURL(new Blob([u]))})}return this.decoderPending},n.prototype._getWorker=function(t,e){var r=this;return this._initDecoder().then(function(){if(r.workerPool.length<r.workerLimit){var i=new Worker(r.workerSourceURL);i._callbacks={},i._taskCosts={},i._taskLoad=0,i.postMessage({type:"init",decoderConfig:r.decoderConfig}),i.onmessage=function(o){var s=o.data;switch(s.type){case"decode":i._callbacks[s.id].resolve(s);break;case"error":i._callbacks[s.id].reject(s);break;default:console.error('DRACO: Unexpected message, "'+s.type+'"')}},r.workerPool.push(i)}else r.workerPool.sort(function(o,s){return o._taskLoad>s._taskLoad?-1:1});var a=r.workerPool[r.workerPool.length-1];return a._taskCosts[t]=e,a._taskLoad+=e,a})},n.prototype._releaseTask=function(t,e){t._taskLoad-=t._taskCosts[e],delete t._callbacks[e],delete t._taskCosts[e]},n.prototype.dispose=function(){for(var t=0;t<this.workerPool.length;++t)this.workerPool[t].terminate();return this.workerPool.length=0,this},n}(),gi=new ad,Wo=`
|
|
420
420
|
let decoderConfig;
|
|
@@ -880,7 +880,7 @@ void main() {
|
|
|
880
880
|
return ( value & ( value - 1 ) ) === 0 && value !== 0;
|
|
881
881
|
|
|
882
882
|
}
|
|
883
|
-
`,Xo="KHR_texture_basisu",Ad=function(n){de(t,n);function t(){return n!==null&&n.apply(this,arguments)||this}return t.prototype.loadTexture=function(e,r){var i=r.json.textures[e];if(!i.extensions||!i.extensions[Xo])return null;var a=i.extensions[Xo],o=r.json.images[a.source],s=null;if(o.bufferView!==void 0)s=r.loadBufferView(o.bufferView).then(function(l){return kn.parse(l)});else if(o.uri)s=r.options.fetcher.ajax(r.resolveResouce(o.uri),{responseType:"arraybuffer"}).then(function(l){return kn.parse(l.body)});else throw new Error("glTF: Invalid image defs.");return s},t}(Er),_o="KHR_texture_transform",md=function(n){de(t,n);function t(){return n!==null&&n.apply(this,arguments)||this}return t.prototype.extendTexture=function(e,r,i){var a=r.extensions!==void 0?r.extensions[_o]:void 0;return a?(a.texCoord!==void 0&&console.warn('glTF: Custom UV sets in "'+_o+'" extension not yet supported.'),a.offset===void 0&&a.rotation===void 0&&a.scale===void 0||(e=e.clone(),e.needsUpdate=!0,a.offset!==void 0&&e.offset.fromArray(a.offset),a.rotation!==void 0&&(e.rotation=a.rotation),a.scale!==void 0&&e.repeat.fromArray(a.scale)),e):null},t}(Er),gd=function(n){de(t,n);function t(){return n!==null&&n.apply(this,arguments)||this}return t}(Er),Wi=function(){var n="b9H79Tebbbe8Fv9Gbb9Gvuuuuueu9Giuuub9Geueu9Giuuueuikqbeeedddillviebeoweuec:q;iekr;leDo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9KW9J9V9KW9wWVtW949c919M9MWVbeY9TW79O9V9Wt9F9KW9J9V9KW69U9KW949c919M9MWVbdE9TW79O9V9Wt9F9KW9J9V9KW69U9KW949tWG91W9U9JWbiL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9p9JtblK9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9r919HtbvL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVT949Wbol79IV9Rbrq:78Yqdbk:qzezu8Jjjjjbcj;eb9Rgv8Kjjjjbc9:hodnadcefal0mbcuhoaiRbbc:Ge9hmbavaialfgrad9Radz1jjjbhwcj;abad9UhlaicefhodnadTmbalc;WFbGglcjdalcjd6EhDcbhqinaqae9pmeaDaeaq9RaqaDfae6Egkcsfglcl4cifcd4hxdndndndnalc9WGgmTmbcbhPcehsawcjdfhzaohHinaraH9Rax6midnaraHaxfgo9RcK6mbczhlinalgic9Wfglawcj;cbffhOdndndndndnaHalco4fRbbalci4coG4ciGPlbedibkaO9cb83ibaOcwf9cb83ibxikaOaoRblaoRbbgAco4glalciSgCE86bbawcj;cbfaifglcGfaoclfaCfgORbbaAcl4ciGgCaCciSgCE86bbalcVfaOaCfgORbbaAcd4ciGgCaCciSgCE86bbalc7faOaCfgORbbaAciGgAaAciSgAE86bbalctfaOaAfgARbbaoRbegOco4gCaCciSgCE86bbalc91faAaCfgARbbaOcl4ciGgCaCciSgCE86bbalc4faAaCfgARbbaOcd4ciGgCaCciSgCE86bbalc93faAaCfgARbbaOciGgOaOciSgOE86bbalc94faAaOfgARbbaoRbdgOco4gCaCciSgCE86bbalc95faAaCfgARbbaOcl4ciGgCaCciSgCE86bbalc96faAaCfgARbbaOcd4ciGgCaCciSgCE86bbalc97faAaCfgARbbaOciGgOaOciSgOE86bbalc98faAaOfgORbbaoRbigoco4gAaAciSgAE86bbalc99faOaAfgORbbaocl4ciGgAaAciSgAE86bbalc9:faOaAfgORbbaocd4ciGgAaAciSgAE86bbalcufaOaAfglRbbaociGgoaociSgoE86bbalaofhoxdkaOaoRbwaoRbbgAcl4glalcsSgCE86bbawcj;cbfaifglcGfaocwfaCfgORbbaAcsGgAaAcsSgAE86bbalcVfaOaAfgORbbaoRbegAcl4gCaCcsSgCE86bbalc7faOaCfgORbbaAcsGgAaAcsSgAE86bbalctfaOaAfgORbbaoRbdgAcl4gCaCcsSgCE86bbalc91faOaCfgORbbaAcsGgAaAcsSgAE86bbalc4faOaAfgORbbaoRbigAcl4gCaCcsSgCE86bbalc93faOaCfgORbbaAcsGgAaAcsSgAE86bbalc94faOaAfgORbbaoRblgAcl4gCaCcsSgCE86bbalc95faOaCfgORbbaAcsGgAaAcsSgAE86bbalc96faOaAfgORbbaoRbvgAcl4gCaCcsSgCE86bbalc97faOaCfgORbbaAcsGgAaAcsSgAE86bbalc98faOaAfgORbbaoRbogAcl4gCaCcsSgCE86bbalc99faOaCfgORbbaAcsGgAaAcsSgAE86bbalc9:faOaAfgORbbaoRbrgocl4gAaAcsSgAE86bbalcufaOaAfglRbbaocsGgoaocsSgoE86bbalaofhoxekaOao8Pbb83bbaOcwfaocwf8Pbb83bbaoczfhokdnaiam9pmbaiczfhlarao9RcL0mekkaiam6miaoTmidnakTmbawaPfRbbhOawcj;cbfhlazhiakhHinaialRbbgAce4cbaAceG9R7aOfgO86bbaiadfhialcefhlaHcufgHmbkkazcefhzaPcefgPad6hsaohHaPad9hmexvkkcbhoasceGmdxikaoaxad2fhPdnakTmbcbhmcehsawcjdfhCinarao9Rax6miaoTmdaoaxfhoawamfRbbhOawcj;cbfhlaChiakhHinaialRbbgAce4cbaAceG9R7aOfgO86bbaiadfhialcefhlaHcufgHmbkaCcefhCamcefgmad6hsamad9hmbkaPhoxikcbhlcehsinarao9Rax6mdaoTmeaoaxfhoalcefglad6hsadal9hmbkaPhoxdkcbhoasceGTmekc9:hoxikabaqad2fawcjdfakad2z1jjjb8Aawawcjdfakcufad2fadz1jjjb8Aakaqfhqaombkc9:hoxekcbc99arao9Radcaadca0ESEhokavcj;ebf8Kjjjjbaok;xzeHu8Jjjjjbc;ae9Rgv8Kjjjjbc9:hodnaeci9UgrcHfal0mbcuhoaiRbbgwc;WeGc;Ge9hmbawcsGgDce0mbavc;abfcFecjez:jjjjb8AavcUf9cu83ibavc8Wf9cu83ibavcyf9cu83ibavcaf9cu83ibavcKf9cu83ibavczf9cu83ibav9cu83iwav9cu83ibaialfc9WfhqaicefgwarfhodnaeTmbcmcsaDceSEhkcbhxcbhmcbhrcbhicbhlindnaoaq9nmbc9:hoxikdndnawRbbgDc;Ve0mbavc;abfalaDcu7gPcl4fcsGcitfgsydlhzasydbhHdnaDcsGgDak9pmbavaiaPfcsGcdtfydbaxaDEhsaDThDdndnadcd9hmbabarcetfgPaH87ebaPcdfaz87ebaPclfas87ebxekabarcdtfgPaHBdbaPclfazBdbaPcwfasBdbkaxaDfhxavc;abfalcitfgPasBdbaPazBdlavaicdtfasBdbavc;abfalcefcsGglcitfgPaHBdbaPasBdlaiaDfhialcefhlxdkdndnaDcsSmbamaDfaDc987fcefhmxekaocefhDao8SbbgscFeGhPdndnascu9mmbaDhoxekaocvfhoaPcFbGhPcrhsdninaD8SbbgOcFbGastaPVhPaOcu9kmeaDcefhDascrfgsc8J9hmbxdkkaDcefhokaPce4cbaPceG9R7amfhmkdndnadcd9hmbabarcetfgDaH87ebaDcdfaz87ebaDclfam87ebxekabarcdtfgDaHBdbaDclfazBdbaDcwfamBdbkavc;abfalcitfgDamBdbaDazBdlavaicdtfamBdbavc;abfalcefcsGglcitfgDaHBdbaDamBdlaicefhialcefhlxekdnaDcpe0mbaxcefgOavaiaqaDcsGfRbbgscl49RcsGcdtfydbascz6gPEhDavaias9RcsGcdtfydbaOaPfgzascsGgOEhsaOThOdndnadcd9hmbabarcetfgHax87ebaHcdfaD87ebaHclfas87ebxekabarcdtfgHaxBdbaHclfaDBdbaHcwfasBdbkavaicdtfaxBdbavc;abfalcitfgHaDBdbaHaxBdlavaicefgicsGcdtfaDBdbavc;abfalcefcsGcitfgHasBdbaHaDBdlavaiaPfcsGgicdtfasBdbavc;abfalcdfcsGglcitfgDaxBdbaDasBdlalcefhlaiaOfhiazaOfhxxekaxcbaoRbbgHEgAaDc;:eSgDfhzaHcsGhCaHcl4hXdndnaHcs0mbazcefhOxekazhOavaiaX9RcsGcdtfydbhzkdndnaCmbaOcefhxxekaOhxavaiaH9RcsGcdtfydbhOkdndnaDTmbaocefhDxekaocdfhDao8SbegPcFeGhsdnaPcu9kmbaocofhAascFbGhscrhodninaD8SbbgPcFbGaotasVhsaPcu9kmeaDcefhDaocrfgoc8J9hmbkaAhDxekaDcefhDkasce4cbasceG9R7amfgmhAkdndnaXcsSmbaDhsxekaDcefhsaD8SbbgocFeGhPdnaocu9kmbaDcvfhzaPcFbGhPcrhodninas8SbbgDcFbGaotaPVhPaDcu9kmeascefhsaocrfgoc8J9hmbkazhsxekascefhskaPce4cbaPceG9R7amfgmhzkdndnaCcsSmbashoxekascefhoas8SbbgDcFeGhPdnaDcu9kmbascvfhOaPcFbGhPcrhDdninao8SbbgscFbGaDtaPVhPascu9kmeaocefhoaDcrfgDc8J9hmbkaOhoxekaocefhokaPce4cbaPceG9R7amfgmhOkdndnadcd9hmbabarcetfgDaA87ebaDcdfaz87ebaDclfaO87ebxekabarcdtfgDaABdbaDclfazBdbaDcwfaOBdbkavc;abfalcitfgDazBdbaDaABdlavaicdtfaABdbavc;abfalcefcsGcitfgDaOBdbaDazBdlavaicefgicsGcdtfazBdbavc;abfalcdfcsGcitfgDaABdbaDaOBdlavaiaHcz6aXcsSVfgicsGcdtfaOBdbaiaCTaCcsSVfhialcifhlkawcefhwalcsGhlaicsGhiarcifgrae6mbkkcbc99aoaqSEhokavc;aef8Kjjjjbaok:flevu8Jjjjjbcz9Rhvc9:hodnaecvfal0mbcuhoaiRbbc;:eGc;qe9hmbav9cb83iwaicefhraialfc98fhwdnaeTmbdnadcdSmbcbhDindnaraw6mbc9:skarcefhoar8SbbglcFeGhidndnalcu9mmbaohrxekarcvfhraicFbGhicrhldninao8SbbgdcFbGaltaiVhiadcu9kmeaocefhoalcrfglc8J9hmbxdkkaocefhrkabaDcdtfaic8Etc8F91aicd47avcwfaiceGcdtVgoydbfglBdbaoalBdbaDcefgDae9hmbxdkkcbhDindnaraw6mbc9:skarcefhoar8SbbglcFeGhidndnalcu9mmbaohrxekarcvfhraicFbGhicrhldninao8SbbgdcFbGaltaiVhiadcu9kmeaocefhoalcrfglc8J9hmbxdkkaocefhrkabaDcetfaic8Etc8F91aicd47avcwfaiceGcdtVgoydbfgl87ebaoalBdbaDcefgDae9hmbkkcbc99arawSEhokaok:Lvoeue99dud99eud99dndnadcl9hmbaeTmeindndnabcdfgd8Sbb:Yab8Sbbgi:Ygl:l:tabcefgv8Sbbgo:Ygr:l:tgwJbb;:9cawawNJbbbbawawJbbbb9GgDEgq:mgkaqaicb9iEalMgwawNakaqaocb9iEarMgqaqNMM:r:vglNJbbbZJbbb:;aDEMgr:lJbbb9p9DTmbar:Ohixekcjjjj94hikadai86bbdndnaqalNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:Ohdxekcjjjj94hdkavad86bbdndnawalNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohdxekcjjjj94hdkabad86bbabclfhbaecufgembxdkkaeTmbindndnabclfgd8Ueb:Yab8Uebgi:Ygl:l:tabcdfgv8Uebgo:Ygr:l:tgwJb;:FSawawNJbbbbawawJbbbb9GgDEgq:mgkaqaicb9iEalMgwawNakaqaocb9iEarMgqaqNMM:r:vglNJbbbZJbbb:;aDEMgr:lJbbb9p9DTmbar:Ohixekcjjjj94hikadai87ebdndnaqalNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:Ohdxekcjjjj94hdkavad87ebdndnawalNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohdxekcjjjj94hdkabad87ebabcwfhbaecufgembkkk;siliui99iue99dnaeTmbcbhiabhlindndnJ;Zl81Zalcof8UebgvciV:Y:vgoal8Ueb:YNgrJb;:FSNJbbbZJbbb:;arJbbbb9GEMgw:lJbbb9p9DTmbaw:OhDxekcjjjj94hDkalclf8Uebhqalcdf8UebhkabavcefciGaiVcetfaD87ebdndnaoak:YNgwJb;:FSNJbbbZJbbb:;awJbbbb9GEMgx:lJbbb9p9DTmbax:Ohkxekcjjjj94hkkabavcdfciGaiVcetfak87ebdndnaoaq:YNgoJb;:FSNJbbbZJbbb:;aoJbbbb9GEMgx:lJbbb9p9DTmbax:Ohqxekcjjjj94hqkabavcufciGaiVcetfaq87ebdndnJbbjZararN:tawawN:taoaoN:tgrJbbbbarJbbbb9GE:rJb;:FSNJbbbZMgr:lJbbb9p9DTmbar:Ohqxekcjjjj94hqkabavciGaiVcetfaq87ebalcwfhlaiclfhiaecufgembkkk9mbdnadcd4ae2gdTmbinababydbgecwtcw91:Yaece91cjjj;8ifcjjj98G::NUdbabclfhbadcufgdmbkkk9teiucbcbydj1jjbgeabcifc98GfgbBdj1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;LeeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiclfaeclfydbBdbaicwfaecwfydbBdbaicxfaecxfydbBdbaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk;aeedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdbaicxfalBdbaicwfalBdbaiclfalBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabkkkebcjwklz9Kbb",t="b9H79TebbbeKl9Gbb9Gvuuuuueu9Giuuub9Geueuikqbbebeedddilve9Weeeviebeoweuec:q;Aekr;leDo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9KW9J9V9KW9wWVtW949c919M9MWVbdY9TW79O9V9Wt9F9KW9J9V9KW69U9KW949c919M9MWVblE9TW79O9V9Wt9F9KW9J9V9KW69U9KW949tWG91W9U9JWbvL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9p9JtboK9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9r919HtbrL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVT949Wbwl79IV9RbDq;a9tqlbzik9:evu8Jjjjjbcz9Rhbcbheincbhdcbhiinabcwfadfaicjuaead4ceGglE86bbaialfhiadcefgdcw9hmbkaec:q:yjjbfai86bbaecitc:q1jjbfab8Piw83ibaecefgecjd9hmbkk;d8JlHud97euo978Jjjjjbcj;kb9Rgv8Kjjjjbc9:hodnadcefal0mbcuhoaiRbbc:Ge9hmbavaialfgrad9Rad;8qbbcj;abad9UhoaicefhldnadTmbaoc;WFbGgocjdaocjd6EhwcbhDinaDae9pmeawaeaD9RaDawfae6Egqcsfgoc9WGgkci2hxakcethmaocl4cifcd4hPabaDad2fhscbhzdnincehHalhOcbhAdninaraO9RaP6miavcj;cbfaAak2fhCaOaPfhlcbhidnakc;ab6mbaral9Rc;Gb6mbcbhoinaCaofhidndndndndnaOaoco4fRbbgXciGPlbedibkaipxbbbbbbbbbbbbbbbbpklbxikaialpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklbalclfaYpQbfaKc:q:yjjbfRbbfhlxdkaialpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklbalcwfaYpQbfaKc:q:yjjbfRbbfhlxekaialpbbbpklbalczfhlkdndndndndnaXcd4ciGPlbedibkaipxbbbbbbbbbbbbbbbbpklzxikaialpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklzalclfaYpQbfaKc:q:yjjbfRbbfhlxdkaialpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklzalcwfaYpQbfaKc:q:yjjbfRbbfhlxekaialpbbbpklzalczfhlkdndndndndnaXcl4ciGPlbedibkaipxbbbbbbbbbbbbbbbbpklaxikaialpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklaalclfaYpQbfaKc:q:yjjbfRbbfhlxdkaialpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklaalcwfaYpQbfaKc:q:yjjbfRbbfhlxekaialpbbbpklaalczfhlkdndndndndnaXco4Plbedibkaipxbbbbbbbbbbbbbbbbpkl8WxikaialpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgXcitc:q1jjbfpbibaXc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgXcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spkl8WalclfaYpQbfaXc:q:yjjbfRbbfhlxdkaialpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgXcitc:q1jjbfpbibaXc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgXcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spkl8WalcwfaYpQbfaXc:q:yjjbfRbbfhlxekaialpbbbpkl8Walczfhlkaoc;abfhiaocjefak0meaihoaral9Rc;Fb0mbkkdndnaiak9pmbaici4hoinaral9RcK6mdaCaifhXdndndndndnaOaico4fRbbaocoG4ciGPlbedibkaXpxbbbbbbbbbbbbbbbbpklbxikaXalpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklbalclfaYpQbfaKc:q:yjjbfRbbfhlxdkaXalpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklbalcwfaYpQbfaKc:q:yjjbfRbbfhlxekaXalpbbbpklbalczfhlkaocdfhoaiczfgiak6mbkkalTmbaAci6hHalhOaAcefgAclSmdxekkcbhlaHceGmdkdnakTmbavcjdfazfhiavazfpbdbhYcbhXinaiavcj;cbfaXfgopblbgLcep9TaLpxeeeeeeeeeeeeeeeegQp9op9Hp9rgLaoakfpblbg8Acep9Ta8AaQp9op9Hp9rg8ApmbzeHdOiAlCvXoQrLgEaoamfpblbg3cep9Ta3aQp9op9Hp9rg3aoaxfpblbg5cep9Ta5aQp9op9Hp9rg5pmbzeHdOiAlCvXoQrLg8EpmbezHdiOAlvCXorQLgQaQpmbedibedibedibediaYp9UgYp9AdbbaiadfgoaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaoadfgoaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaoadfgoaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaoadfgoaYaEa8EpmwDKYqk8AExm35Ps8E8FgQaQpmbedibedibedibedip9UgYp9AdbbaoadfgoaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaoadfgoaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaoadfgoaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaoadfgoaYaLa8ApmwKDYq8AkEx3m5P8Es8FgLa3a5pmwKDYq8AkEx3m5P8Es8Fg8ApmbezHdiOAlvCXorQLgQaQpmbedibedibedibedip9UgYp9AdbbaoadfgoaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaoadfgoaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaoadfgoaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaoadfgoaYaLa8ApmwDKYqk8AExm35Ps8E8FgQaQpmbedibedibedibedip9UgYp9AdbbaoadfgoaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaoadfgoaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaoadfgoaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaoadfhiaXczfgXak6mbkkazclfgzad6mbkasavcjdfaqad2;8qbbavavcjdfaqcufad2fad;8qbbaqaDfhDc9:hoalmexikkc9:hoxekcbc99aral9Radcaadca0ESEhokavcj;kbf8Kjjjjbaokwbz:bjjjbk;tzeHu8Jjjjjbc;ae9Rgv8Kjjjjbc9:hodnaeci9UgrcHfal0mbcuhoaiRbbgwc;WeGc;Ge9hmbawcsGgDce0mbavc;abfcFecje;8kbavcUf9cu83ibavc8Wf9cu83ibavcyf9cu83ibavcaf9cu83ibavcKf9cu83ibavczf9cu83ibav9cu83iwav9cu83ibaialfc9WfhqaicefgwarfhodnaeTmbcmcsaDceSEhkcbhxcbhmcbhrcbhicbhlindnaoaq9nmbc9:hoxikdndnawRbbgDc;Ve0mbavc;abfalaDcu7gPcl4fcsGcitfgsydlhzasydbhHdnaDcsGgDak9pmbavaiaPfcsGcdtfydbaxaDEhsaDThDdndnadcd9hmbabarcetfgPaH87ebaPcdfaz87ebaPclfas87ebxekabarcdtfgPaHBdbaPclfazBdbaPcwfasBdbkaxaDfhxavc;abfalcitfgPasBdbaPazBdlavaicdtfasBdbavc;abfalcefcsGglcitfgPaHBdbaPasBdlaiaDfhialcefhlxdkdndnaDcsSmbamaDfaDc987fcefhmxekaocefhDao8SbbgscFeGhPdndnascu9mmbaDhoxekaocvfhoaPcFbGhPcrhsdninaD8SbbgOcFbGastaPVhPaOcu9kmeaDcefhDascrfgsc8J9hmbxdkkaDcefhokaPce4cbaPceG9R7amfhmkdndnadcd9hmbabarcetfgDaH87ebaDcdfaz87ebaDclfam87ebxekabarcdtfgDaHBdbaDclfazBdbaDcwfamBdbkavc;abfalcitfgDamBdbaDazBdlavaicdtfamBdbavc;abfalcefcsGglcitfgDaHBdbaDamBdlaicefhialcefhlxekdnaDcpe0mbaxcefgOavaiaqaDcsGfRbbgscl49RcsGcdtfydbascz6gPEhDavaias9RcsGcdtfydbaOaPfgzascsGgOEhsaOThOdndnadcd9hmbabarcetfgHax87ebaHcdfaD87ebaHclfas87ebxekabarcdtfgHaxBdbaHclfaDBdbaHcwfasBdbkavaicdtfaxBdbavc;abfalcitfgHaDBdbaHaxBdlavaicefgicsGcdtfaDBdbavc;abfalcefcsGcitfgHasBdbaHaDBdlavaiaPfcsGgicdtfasBdbavc;abfalcdfcsGglcitfgDaxBdbaDasBdlalcefhlaiaOfhiazaOfhxxekaxcbaoRbbgHEgAaDc;:eSgDfhzaHcsGhCaHcl4hXdndnaHcs0mbazcefhOxekazhOavaiaX9RcsGcdtfydbhzkdndnaCmbaOcefhxxekaOhxavaiaH9RcsGcdtfydbhOkdndnaDTmbaocefhDxekaocdfhDao8SbegPcFeGhsdnaPcu9kmbaocofhAascFbGhscrhodninaD8SbbgPcFbGaotasVhsaPcu9kmeaDcefhDaocrfgoc8J9hmbkaAhDxekaDcefhDkasce4cbasceG9R7amfgmhAkdndnaXcsSmbaDhsxekaDcefhsaD8SbbgocFeGhPdnaocu9kmbaDcvfhzaPcFbGhPcrhodninas8SbbgDcFbGaotaPVhPaDcu9kmeascefhsaocrfgoc8J9hmbkazhsxekascefhskaPce4cbaPceG9R7amfgmhzkdndnaCcsSmbashoxekascefhoas8SbbgDcFeGhPdnaDcu9kmbascvfhOaPcFbGhPcrhDdninao8SbbgscFbGaDtaPVhPascu9kmeaocefhoaDcrfgDc8J9hmbkaOhoxekaocefhokaPce4cbaPceG9R7amfgmhOkdndnadcd9hmbabarcetfgDaA87ebaDcdfaz87ebaDclfaO87ebxekabarcdtfgDaABdbaDclfazBdbaDcwfaOBdbkavc;abfalcitfgDazBdbaDaABdlavaicdtfaABdbavc;abfalcefcsGcitfgDaOBdbaDazBdlavaicefgicsGcdtfazBdbavc;abfalcdfcsGcitfgDaABdbaDaOBdlavaiaHcz6aXcsSVfgicsGcdtfaOBdbaiaCTaCcsSVfhialcifhlkawcefhwalcsGhlaicsGhiarcifgrae6mbkkcbc99aoaqSEhokavc;aef8Kjjjjbaok:flevu8Jjjjjbcz9Rhvc9:hodnaecvfal0mbcuhoaiRbbc;:eGc;qe9hmbav9cb83iwaicefhraialfc98fhwdnaeTmbdnadcdSmbcbhDindnaraw6mbc9:skarcefhoar8SbbglcFeGhidndnalcu9mmbaohrxekarcvfhraicFbGhicrhldninao8SbbgdcFbGaltaiVhiadcu9kmeaocefhoalcrfglc8J9hmbxdkkaocefhrkabaDcdtfaic8Etc8F91aicd47avcwfaiceGcdtVgoydbfglBdbaoalBdbaDcefgDae9hmbxdkkcbhDindnaraw6mbc9:skarcefhoar8SbbglcFeGhidndnalcu9mmbaohrxekarcvfhraicFbGhicrhldninao8SbbgdcFbGaltaiVhiadcu9kmeaocefhoalcrfglc8J9hmbxdkkaocefhrkabaDcetfaic8Etc8F91aicd47avcwfaiceGcdtVgoydbfgl87ebaoalBdbaDcefgDae9hmbkkcbc99arawSEhokaok:wPliuo97eue978Jjjjjbca9Rhiaec98Ghldndnadcl9hmbdnalTmbcbhvabhdinadadpbbbgocKp:RecKp:Sep;6egraocwp:RecKp:Sep;6earp;Geaoczp:RecKp:Sep;6egwp;Gep;Kep;LegDpxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgkp9op9rp;Kegrpxbb;:9cbb;:9cbb;:9cbb;:9cararp;MeaDaDp;Meawaqawakp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFbbbFbbbFbbbFbbbp9oaopxbbbFbbbFbbbFbbbFp9op9qarawp;Meaqp;Kecwp:RepxbFbbbFbbbFbbbFbbp9op9qaDawp;Meaqp;Keczp:RepxbbFbbbFbbbFbbbFbp9op9qpkbbadczfhdavclfgval6mbkkalae9pmeaipxbbbbbbbbbbbbbbbbgqpklbaiabalcdtfgdaeciGglcdtgv;8qbbdnalTmbaiaipblbgocKp:RecKp:Sep;6egraocwp:RecKp:Sep;6earp;Geaoczp:RecKp:Sep;6egwp;Gep;Kep;LegDaqp:2egqarpxbbbjbbbjbbbjbbbjgkp9op9rp;Kegrpxbb;:9cbb;:9cbb;:9cbb;:9cararp;MeaDaDp;Meawaqawakp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFbbbFbbbFbbbFbbbp9oaopxbbbFbbbFbbbFbbbFp9op9qarawp;Meaqp;Kecwp:RepxbFbbbFbbbFbbbFbbp9op9qaDawp;Meaqp;Keczp:RepxbbFbbbFbbbFbbbFbp9op9qpklbkadaiav;8qbbskdnalTmbcbhvabhdinadczfgxaxpbbbgopxbbbbbbFFbbbbbbFFgkp9oadpbbbgDaopmlvorxmPsCXQL358E8FpxFubbFubbFubbFubbp9op;6eaDaopmbediwDqkzHOAKY8AEgoczp:Sep;6egrp;Geaoczp:Reczp:Sep;6egwp;Gep;Kep;Legopxb;:FSb;:FSb;:FSb;:FSawaopxbbbbbbbbbbbbbbbbp:2egqawpxbbbjbbbjbbbjbbbjgmp9op9rp;Kegwawp;Meaoaop;Mearaqaramp9op9rp;Kegoaop;Mep;Kep;Kep;Jep;Negrp;Mepxbbn0bbn0bbn0bbn0gqp;Keczp:Reawarp;Meaqp;KepxFFbbFFbbFFbbFFbbp9op9qgwaoarp;Meaqp;KepxFFbbFFbbFFbbFFbbp9ogopmwDKYqk8AExm35Ps8E8Fp9qpkbbadaDakp9oawaopmbezHdiOAlvCXorQLp9qpkbbadcafhdavclfgval6mbkkalae9pmbaiaeciGgvcitgdfcbcaad9R;8kbaiabalcitfglad;8qbbdnavTmbaiaipblzgopxbbbbbbFFbbbbbbFFgkp9oaipblbgDaopmlvorxmPsCXQL358E8FpxFubbFubbFubbFubbp9op;6eaDaopmbediwDqkzHOAKY8AEgoczp:Sep;6egrp;Geaoczp:Reczp:Sep;6egwp;Gep;Kep;Legopxb;:FSb;:FSb;:FSb;:FSawaopxbbbbbbbbbbbbbbbbp:2egqawpxbbbjbbbjbbbjbbbjgmp9op9rp;Kegwawp;Meaoaop;Mearaqaramp9op9rp;Kegoaop;Mep;Kep;Kep;Jep;Negrp;Mepxbbn0bbn0bbn0bbn0gqp;Keczp:Reawarp;Meaqp;KepxFFbbFFbbFFbbFFbbp9op9qgwaoarp;Meaqp;KepxFFbbFFbbFFbbFFbbp9ogopmwDKYqk8AExm35Ps8E8Fp9qpklzaiaDakp9oawaopmbezHdiOAlvCXorQLp9qpklbkalaiad;8qbbkk;4wllue97euv978Jjjjjbc8W9Rhidnaec98GglTmbcbhvabhoinaiaopbbbgraoczfgwpbbbgDpmlvorxmPsCXQL358E8Fgqczp:Segkclp:RepklbaopxbbjZbbjZbbjZbbjZpx;Zl81Z;Zl81Z;Zl81Z;Zl81Zakpxibbbibbbibbbibbbp9qp;6ep;NegkaraDpmbediwDqkzHOAKY8AEgrczp:Reczp:Sep;6ep;MegDaDp;Meakarczp:Sep;6ep;Megxaxp;Meakaqczp:Reczp:Sep;6ep;Megqaqp;Mep;Kep;Kep;Lepxbbbbbbbbbbbbbbbbp:4ep;Jepxb;:FSb;:FSb;:FSb;:FSgkp;Mepxbbn0bbn0bbn0bbn0grp;KepxFFbbFFbbFFbbFFbbgmp9oaxakp;Mearp;Keczp:Rep9qgxaqakp;Mearp;Keczp:ReaDakp;Mearp;Keamp9op9qgkpmbezHdiOAlvCXorQLgrp5baipblbpEb:T:j83ibaocwfarp5eaipblbpEe:T:j83ibawaxakpmwDKYqk8AExm35Ps8E8Fgkp5baipblbpEd:T:j83ibaocKfakp5eaipblbpEi:T:j83ibaocafhoavclfgval6mbkkdnalae9pmbaiaeciGgvcitgofcbcaao9R;8kbaiabalcitfgwao;8qbbdnavTmbaiaipblbgraipblzgDpmlvorxmPsCXQL358E8Fgqczp:Segkclp:RepklaaipxbbjZbbjZbbjZbbjZpx;Zl81Z;Zl81Z;Zl81Z;Zl81Zakpxibbbibbbibbbibbbp9qp;6ep;NegkaraDpmbediwDqkzHOAKY8AEgrczp:Reczp:Sep;6ep;MegDaDp;Meakarczp:Sep;6ep;Megxaxp;Meakaqczp:Reczp:Sep;6ep;Megqaqp;Mep;Kep;Kep;Lepxbbbbbbbbbbbbbbbbp:4ep;Jepxb;:FSb;:FSb;:FSb;:FSgkp;Mepxbbn0bbn0bbn0bbn0grp;KepxFFbbFFbbFFbbFFbbgmp9oaxakp;Mearp;Keczp:Rep9qgxaqakp;Mearp;Keczp:ReaDakp;Mearp;Keamp9op9qgkpmbezHdiOAlvCXorQLgrp5baipblapEb:T:j83ibaiarp5eaipblapEe:T:j83iwaiaxakpmwDKYqk8AExm35Ps8E8Fgkp5baipblapEd:T:j83izaiakp5eaipblapEi:T:j83iKkawaiao;8qbbkk:Pddiue978Jjjjjbc;ab9Rhidnadcd4ae2glc98GgvTmbcbheabhdinadadpbbbgocwp:Recwp:Sep;6eaocep:SepxbbjZbbjZbbjZbbjZp:UepxbbjFbbjFbbjFbbjFp9op;Mepkbbadczfhdaeclfgeav6mbkkdnaval9pmbaialciGgecdtgdVcbc;abad9R;8kbaiabavcdtfgvad;8qbbdnaeTmbaiaipblbgocwp:Recwp:Sep;6eaocep:SepxbbjZbbjZbbjZbbjZp:UepxbbjFbbjFbbjFbbjFp9op;Mepklbkavaiad;8qbbkk9teiucbcbydj1jjbgeabcifc98GfgbBdj1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaikkkebcjwklz9Tbb",e=new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,3,2,0,0,5,3,1,0,1,12,1,0,10,22,2,12,0,65,0,65,0,65,0,252,10,0,0,11,7,0,65,0,253,15,26,11]),r=new Uint8Array([32,0,65,2,1,106,34,33,3,128,11,4,13,64,6,253,10,7,15,116,127,5,8,12,40,16,19,54,20,9,27,255,113,17,42,67,24,23,146,148,18,14,22,45,70,69,56,114,101,21,25,63,75,136,108,28,118,29,73,115]);if(typeof WebAssembly!="object")return{supported:!1};var i=WebAssembly.validate(e)?t:n,a,o=WebAssembly.instantiate(s(i),{}).then(function(h){a=h.instance,a.exports.__wasm_call_ctors()});function s(h){for(var g=new Uint8Array(h.length),b=0;b<h.length;++b){var w=h.charCodeAt(b);g[b]=w>96?w-97:w>64?w-39:w+4}for(var E=0,b=0;b<h.length;++b)g[E++]=g[b]<60?r[g[b]]:(g[b]-60)*64+g[++b];return g.buffer.slice(0,E)}function l(h,g,b,w,E,C){var x=a.exports.sbrk,M=b+3&-4,S=x(M*w),P=x(E.length),I=new Uint8Array(a.exports.memory.buffer);I.set(E,P);var B=h(S,b,w,P,E.length);if(B==0&&C&&C(S,M,w),g.set(I.subarray(S,S+b*w)),x(S-x(0)),B!=0)throw new Error("Malformed buffer data: "+B)}var u={NONE:"",OCTAHEDRAL:"meshopt_decodeFilterOct",QUATERNION:"meshopt_decodeFilterQuat",EXPONENTIAL:"meshopt_decodeFilterExp"},c={ATTRIBUTES:"meshopt_decodeVertexBuffer",TRIANGLES:"meshopt_decodeIndexBuffer",INDICES:"meshopt_decodeIndexSequence"},f=[],A=0;function p(h){var g={object:new Worker(h),pending:0,requests:{}};return g.object.onmessage=function(b){var w=b.data;g.pending-=w.count,g.requests[w.id][w.action](w.value),delete g.requests[w.id]},g}function y(h){for(var g="var instance; var ready = WebAssembly.instantiate(new Uint8Array(["+new Uint8Array(s(i))+"]), {}).then(function(result) { instance = result.instance; instance.exports.__wasm_call_ctors(); });self.onmessage = workerProcess;"+l.toString()+m.toString(),b=new Blob([g],{type:"text/javascript"}),w=URL.createObjectURL(b),E=0;E<h;++E)f[E]=p(w);URL.revokeObjectURL(w)}function v(h,g,b,w,E){for(var C=f[0],x=1;x<f.length;++x)f[x].pending<C.pending&&(C=f[x]);return new Promise(function(M,S){var P=new Uint8Array(b),I=A++;C.pending+=h,C.requests[I]={resolve:M,reject:S},C.object.postMessage({id:I,count:h,size:g,source:P,mode:w,filter:E},[P.buffer])})}function m(h){o.then(function(){var g=h.data;try{var b=new Uint8Array(g.count*g.size);l(a.exports[g.mode],b,g.count,g.size,g.source,a.exports[g.filter]),self.postMessage({id:g.id,count:g.count,action:"resolve",value:b},[b.buffer])}catch(w){self.postMessage({id:g.id,count:g.count,action:"reject",value:w})}})}return{ready:o,supported:!0,useWorkers:function(h){y(h)},decodeVertexBuffer:function(h,g,b,w,E){l(a.exports.meshopt_decodeVertexBuffer,h,g,b,w,a.exports[u[E]])},decodeIndexBuffer:function(h,g,b,w){l(a.exports.meshopt_decodeIndexBuffer,h,g,b,w)},decodeIndexSequence:function(h,g,b,w){l(a.exports.meshopt_decodeIndexSequence,h,g,b,w)},decodeGltfBuffer:function(h,g,b,w,E,C){l(a.exports[c[E]],h,g,b,w,a.exports[u[C]])},decodeGltfBufferAsync:function(h,g,b,w,E){return f.length>0?v(h,g,b,c[w],u[E]):o.then(function(){var C=new Uint8Array(h*g);return l(a.exports[c[w]],C,h,g,b,a.exports[u[E]]),C})}}}(),Xi="EXT_meshopt_compression",yd=function(n){de(t,n);function t(){return n!==null&&n.apply(this,arguments)||this}return t.prototype.loadBufferView=function(e,r){var i=r.json,a=i.bufferViews[e];if(a.extensions&&a.extensions[Xi]){var o=a.extensions[Xi],s=r.loadBuffer(o.buffer);if(!Wi.supported){if(i.extensionsRequired&&i.extensionsRequired.indexOf(Xi)>=0)throw new Error("THREE.GLTFLoader: setMeshoptDecoder must be called before loading compressed files");return null}return Promise.all([s,Wi.ready]).then(function(l){var u=l[0],c=o.byteOffset||0,f=o.byteLength||0,A=o.count,p=o.byteStride,y=new ArrayBuffer(A*p),v=new Uint8Array(u,c,f);return Wi.decodeGltfBuffer(new Uint8Array(y),A,p,v,o.mode,o.filter),y})}else return null},t}(Er),Zo="EXT_texture_webp",bd=function(n){de(t,n);function t(){var e=n!==null&&n.apply(this,arguments)||this;return e.supportsWep=!1,e}return t.prototype.prepare=function(e){var r=this;return $s().then(function(i){r.supportsWep=i.webp})},t.prototype.loadTexture=function(e,r){var i=r.json,a=i.textures[e];if(!a.extensions||!a.extensions[Zo]||!this.supportsWep)return null;var o=a.extensions[Zo];return r.loadImage(o.source).then(function(s){var l=new d.Texture(s);l.needsUpdate=!0,l.flipY=!1,a.name&&(l.name=a.name);var u=r.json.samplers||{},c=u[a.sampler]||{};return l.magFilter=Ai[c.magFilter]||d.LinearFilter,l.minFilter=Ai[c.minFilter]||d.LinearMipmapLinearFilter,l.wrapS=mi[c.wrapS]||d.RepeatWrapping,l.wrapT=mi[c.wrapT]||d.RepeatWrapping,l.onUpdate=function(){s.close()},l})},t}(Er),_i="CESIUM_RTC",wd=function(n){de(t,n);function t(){return n!==null&&n.apply(this,arguments)||this}return t.prototype.emitResult=function(e,r){if(r.json.extensions[_i]&&r.json.extensions[_i].center){var i=r.json.extensions[_i].center;e.CESIUM_RTC={center:new d.Vector3().fromArray(i)}}},t}(Er);const Ed=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var r=113,i=126,a=0,o="";return t[a].split(o).map(function(s){return s.charCodeAt(a)>i?s:String.fromCharCode((s.charCodeAt(a)+r)%i)}).join(o)}("{vs|z-sy|n-|}npv\bH{vs|z-sy|n-z|qryNy}unH{vs|z-sy|n-u|{Sy||V{qr\x07H0vs-qrsv{rq5b`RlP\\[`aN[alP\\Y\\_6--{vs|z-rp@-p|{n{P|y|H0r{qvs0vs-qrsv{rq5b`Rl]\\V[al[\\_ZNY6n\bv{t-rp@-[|znyH0r{qvs0vs-qrsv{rq5b`RlcR_aRelSY\\\\_6--n\bv{t-sy|n-Sy||H0ryr--{vs|z-sy|n-sy||H0r{qvsn\bv{t-rpA-|yq]|vv|{Hn\bv{t-rp@-P|y|Hn\bv{t-sy|n-Y|tQr}uHn\bv{t-sy|n-]|v{`v rHp-Pyv}}r-\n--znA-znv\x07V{rrH--sy|n-sy||V{qr\x07H\fH0vs-[bZlPYV]]R_`-K-=--{vs|z-Pyv}}r-pyv}}rh[bZlPYV]]R_`jH0r{qvs|vq-znv{56-\n--sy|n-ory|{tv{tSY||-J-=;=H--0vs-qrsv{rq5b`RlcR_aRelSY\\\\_6----ory|{tv{tSY||-J-Sy||H--0ryr----ory|{tv{tSY||-J-sy||H--0r{qvs--<<前置裁切计算--0vs-[bZlPYV]]R_`-K-=----o||y-pyv}}rqH----rpA-pyv}}r]|vv|{H----0}ntzn-{|yyly||}ln----s|-5-v{-v-J-=H-v-I-[bZlPYV]]R_`H-v-88-6-\n------pyv}}r]|vv|{-J-pyv}}rh-v-j;znv\x07V{rr-7-|yq]|vv|{H------pyv}}rq-J-5pyv}}rh-v-j;sy||V{qr\x07-I-=;=-\v\v-no5ory|{tv{tSY||-:-pyv}}rh-v-j;sy||V{qr\x076-I->;=6H------pyv}}rq-J-pyv}}rq-33-pyv}}r]|vv|{;\x07-K-:=;B-33-pyv}}r]|vv|{;\x07-I-=;BH------pyv}}rq-J-pyv}}rq-33-pyv}}r]|vv|{;\b-K-:=;B-33-pyv}}r]|vv|{;\b-I-=;BH------pyv}}rq-J-pyv}}rq-33-pyv}}r]|vv|{; -K-:=;B-33-pyv}}r]|vv|{; -I-=;BH------vs-5pyv}}rq6-\n--------qvpnqH------\f----\f----0}ntzn-{|yyly||}lr{q--0r{qvs--<<楼层选择计算--sy|n-sy||\\}npv\b-J->;=H--vs-5u|{Sy||V{qr\x07-KJ-=;=-33-no5ory|{tv{tSY||-:-u|{Sy||V{qr\x076-KJ->;=6-\n----sy||\\}npv\b-J-=;>H--\f--rp@-sv{nyP|y|-J-P|y|H--0vs-qrsv{rq5b`Rl]\\V[al[\\_ZNY6----0vs-qrsv{rq5b`Rl]\\V[alONPXlUVQQR[6------rp@-pnzrnQvrpv|{-J-{|znyv r5pnzrn]|vv|{-:-|yq]|vv|{;\x07\b 6H------vs-5q|5pnzrnQvrpv|{9-[|zny6-I-=;=6-\n--------qvpnqH------\f----0ryvs-qrsv{rq5b`Rl]\\V[alONPXlQN_X6------rp@-pnzrnQvrpv|{-J-{|znyv r5pnzrn]|vv|{-:-|yq]|vv|{;\x07\b 6H------vs-5q|5pnzrnQvrpv|{9-[|zny6-I-=;=6-\n--------sv{nyP|y|-J-sv{nyP|y|-7-=;EH------\f----0r{qvs--0r{qvs--0vs-qrsv{rq5b`Rl]\\V[al`UN]RlPV_PYR6----sy|n--J-?;=-7-tyl]|v{P||q;\x07-:->;=H----sy|n--J-?;=-7-tyl]|v{P||q;\b-:->;=H----sy|n-pp-J-7-8-7H----vs-5]|v{`v r-K-E;=-33-pp-K->;=6-\n------qvpnqH----\f--0r{qvs--0vs-qrsv{rq5b`RlP\\[`aN[alP\\Y\\_6----tylSntP|y|-J-rpA5p|{n{P|y|;9-p|{n{P|y|;t9-p|{n{P|y|;o9->;=6H--0ryr----tylSntP|y|-J-rpA5sv{nyP|y|9-z|qryNy}un-7-|}npv\b-7-sy||\\}npv\b6H--0r{qvs--0vs-qrsv{rq5b`RlRQY6----tylSntP|y|;n-J-Y|tQr}uH--0r{qvs--0vs-qrsv{rq5b`RlU^ldRVTUa6----sy|n-qvn{pr-J-?;=-7-yr{tu5tyl]|v{P||q;\x07\b-:-=;B6H----sy|n-rvtu-J-zn\x075=;=9->;=-:-qvn{pr6H----rvtu-J-}|5rvtu9->;B6H----tylSntP|y|;n-J-rvtuH----tylSntP|y|;\x07\b -J-tylSntP|y|;\x07\b -7-rvtuH--0r{qvs\f"),xd=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var r=113,i=126,a=0,o="";return t[a].split(o).map(function(s){return s.charCodeAt(a)>i?s:String.fromCharCode((s.charCodeAt(a)+r)%i)}).join(o)}("nvor-rp@-p|y|H0vs-qrsv{rq5b`RlcR_aRelSY\\\\_6--nvor-sy|n-sy||H--n\bv{t-sy|n-Sy||H0r{qvs{vs|z-rp?-r|yv|{H{vs|z-sy|n-}v\x07ry_nv|H{vs|z-sy|n-}|v{`pnyrH{vs|z-sy|n-}|v{Zv{]v\x07ryH{vs|z-sy|n-}|v{Zn\x07]v\x07ryH{vs|z-sy|n-|}npv\bH{vs|z-sy|n-tr|zrvpR|H0vs-qrsv{rq5b`Rl]\\V[alP\\Y\\_lNYaVabQR6--{vs|z-nz}yr?Q-tnqvr{ar\x07rH0r{qvsn\bv{t-rpA-|yq]|vv|{Hn\bv{t-rp@-P|y|H0vs-qrsv{rq5b`Rl]\\V[al[\\_ZNY6--n\bv{t-rp@-[|znyH0r{qvs0vs-qrsv{rq5b`RlRQY6--n\bv{t-sy|n-Y|tQr}uH0r{qvsn\bv{t-sy|n-]|v{`v rH0qrsv{r-]V-@;>A>BF?CB@BEFDF@rp@-_TOa|Yv{rn5-rp@-nyr-6-\n--r{-rp@5-zv\x075-}|5-nyr;to-7-=;FADECD?FEC-8-rp@5-=;=B?>@?D=>A-69-rp@5-?;A-6-69-nyr;to-7-=;=DD@FF@E=E9-rp@5-yraun{R\0ny5-nyr;to9-rp@5-=;=A=AB-6-6-6-66H\frp@-Yv{rna|_TO5-rp@-nyr-6-\nr{-rp@5-zv\x075-}|5-nyr;to9-rp@5-=;A>CCC-6-6-7->;=BB-:-rp@5-=;=BB-69-nyr;to-7->?;F?9-rp@5-yraun{R\0ny5-nyr;to9-rp@5-=;==@>@=E-6-6-6-66H\frp@-trP|y|O\bUrvtu5nz}yr?Q-tnqvr{ar\x07r9-rpA-|yq]|vv|{6-\n--r{-r\x07r?Q5tnqvr{ar\x07r9-rp?5|yq]|vv|{;\b-<->=;=9-=;B66;toH\f|vq-znv{56-\n--rpA-n{s|zrq-J-rpA5}|vv|{9->;=6H--rpA-z]|vv|{-J-z|qrycvrZnv\x07-7-n{s|zrqH--|yq]|vv|{-J-z|qryZnv\x07-7-n{s|zrqH--0vs-qrsv{rq5b`RlcR_aRelSY\\\\_6----Sy||-J-sy||H--0r{qvs--tyl]|vv|{-J-}|wrpv|{Znv\x07-7-z]|vv|{H--<<传递nvor的p|y|到s里使用--<<动态调整}|v{`v r--sy|n-rny]|v{`v r-J-}|v{`pnyr-7-}v\x07ry_nv|H--0vs-qrsv{rq5b`Rl]\\V[al`VgRlTR\\ZRa_VP6----rny]|v{`v r-7J-tr|zrvpR|H----sy|n-urvtu-J->;=-<-}|wrpv|{Znv\x07h>jh>j-7-zv\x075>;=9-:z]|vv|{; 9-:}|wrpv|{Znv\x07h?jh@j6-7-?;=H----rny]|v{`v r-J-r|yv|{;\b-7-rny]|v{`v r-<-urvtuH--0ryvs-qrsv{rq5b`Rl]\\V[al`VgRlNaaR[bNaV\\[6----sy|n-urvtu-J->;=-<-}|wrpv|{Znv\x07h>jh>j-7-zv\x075>;=9-:z]|vv|{; 9-:}|wrpv|{Znv\x07h?jh@j6-7-?;=H----rny]|v{`v r-J-r|yv|{;\b-7-rny]|v{`v r-<-urvtuH--0r{qvs--tyl]|v{`v r-J-pynz}5rny]|v{`v r9-}|v{Zv{]v\x07ry-7-}v\x07ry_nv|9-}|v{Zn\x07]v\x07ry-7-}v\x07ry_nv|6H--]|v{`v r-J-tyl]|v{`v rH--0vs-qrsv{rq5b`Rl]\\V[alP\\Y\\_lNYaVabQR6----P|y|-J-trP|y|O\bUrvtu5tnqvr{ar\x07r9-|yq]|vv|{6H--0ryr----P|y|-J-p|y|H--0r{qvs--0vs-qrsv{rq5b`Rl]\\V[al[\\_ZNY6----[|zny-J-{|znyv r5zn@5z|qryZnv\x076-7-{|zny6H--0r{qvs--0vs-qrsv{rq5b`RlRQY6----Y|tQr}u-J-y|t?5:z]|vv|{; 6H--0r{qvs--0vs-qrsv{rq5b`RlU^lQR]aU6----<<-sy|n-}|wSnp|-J-:=;B-7-r|yv|{;\b-<-5n{5s|-<-?;=6-7-z]|vv|{; 6H----<<-sy|n-_nqv-J-rny]|v{`v r-<-}|wSnp|H----sy|n-|vtv{nyQr}u-J-tyl]|vv|{;H----sy|n-nqwrqQr}u-J-|vtv{nyQr}u-8-=;>H----sy|n-nqw-J-nqwrqQr}u-<-|vtv{nyQr}uH----z]|vv|{;\x07\b -J-z]|vv|{;\x07\b -7-nqwH----tyl]|vv|{-J-}|wrpv|{Znv\x07-7-z]|vv|{H--0r{qvs\f");var Cd=new d.Vector4,Md=Object.assign({pointScale:new d.Uniform(1),pointMinPixel:new d.Uniform(1),pointMaxPixel:new d.Uniform(1),opacity:new d.Uniform(1),gradientTexture:new d.Uniform(null),modelAlpha:new d.Uniform(0),clippers:new d.Uniform([]),shownFloorIndex:new d.Uniform(-1),constantColor:new d.Uniform(null),geometricError:new d.Uniform(0),pixelRatio:new d.Uniform(1),resolution:new d.Uniform(new d.Vector2(512,512)),floor:new d.Uniform(0)},d.UniformsUtils.clone(d.UniformsLib.common)),Tu=function(n){de(t,n);function t(e){e===void 0&&(e={});var r,i,a,o,s,l,u,c,f,A,p,y,v,m,h,g,b,w,E,C,x=n.call(this,{vertexShader:xd,fragmentShader:Ed,uniforms:d.UniformsUtils.clone(Md),defines:{USE_CONSTANT_COLOR:!1,USE_EDL:!1,USE_HQ_WEIGHT:!1,USE_HQ_DEPTH:!1,NUM_CLIPPING_BOX:!1,USE_CLIPFLOOR:!1,USE_VERTEX_FLOOR:!1,USE_MAP:!0,USE_UV:!0,USE_LUMINANCE:!1,USE_PANO_OPACITY:!1,USE_BLACK_TRANSITION:!1,USE_PANO_VIDEO:!1,USE_POINT_NORMAL:!1,USE_POINT_SHAPE_CIRCLE:!1,USE_POINT_SIZE_ATTENUATION:!1,USE_POINT_SIZE_GEOMETRIC:!1,USE_POINT_BACK_HIDDEN:!1,USE_POINT_BACK_DARK:!1}})||this,M;return Object.defineProperties(x,{constantColor:{get:function(){return this.uniforms.constantColor.value},set:function(S){this.uniforms.constantColor.value=S;var P=this.defines.USE_CONSTANT_COLOR,I=S!==null;P!==I&&(this.defines.USE_CONSTANT_COLOR=I,this.needsUpdate=!0)}},opacity:{get:function(){return this.uniforms.opacity.value},set:function(S){this.uniforms.opacity.value=S}},modelAlpha:{get:function(){return this.uniforms.modelAlpha.value},set:function(S){this.uniforms.modelAlpha.value=S}},shownFloorIndex:{get:function(){return this.uniforms.shownFloorIndex.value},set:function(S){this.uniforms.shownFloorIndex.value=S}},clippers:{get:function(){return M},set:function(S){M!==S&&(M=S,this.uniforms.clippers.value=(M||[]).map(function(P){var I=typeof P.floorIndex=="number"?P.floorIndex:-1,B=new d.Matrix4().getInverse(P.clippingBoxMatrix);return{matrixInverse:B,floorIndex:I}}),this.needsUpdate=!0)}},pointColor:{get:function(){return this.defines.USE_POINT_COLOR_ALTITUDE===!0?"ALTITUDE":"RGB"},set:function(S){var P=S==="ALTITUDE";this.defines.USE_POINT_COLOR_ALTITUDE!==P&&(this.defines.USE_POINT_COLOR_ALTITUDE=P,this.needsUpdate=!0)}},pointSize:{get:function(){return this.defines.USE_POINT_SIZE_GEOMETRIC===!0?"GEOMETRIC":this.defines.USE_POINT_SIZE_ATTENUATION===!0?"ATTENUATION":"FIXED"},set:function(S){var P=S==="ATTENUATION",I=S==="GEOMETRIC";this.defines.USE_POINT_SIZE_GEOMETRIC!==I&&(this.defines.USE_POINT_SIZE_GEOMETRIC=I,this.needsUpdate=!0),this.defines.USE_POINT_SIZE_ATTENUATION!==P&&(this.defines.USE_POINT_SIZE_ATTENUATION=P,this.needsUpdate=!0)}},pointShape:{get:function(){return this.defines.USE_POINT_SHAPE_CIRCLE===!0?"CIRCLE":"SQUARE"},set:function(S){var P=S==="CIRCLE";this.defines.USE_POINT_SHAPE_CIRCLE!==P&&(this.defines.USE_POINT_SHAPE_CIRCLE=P,this.needsUpdate=!0)}},pointScale:{get:function(){return this.uniforms.pointScale.value},set:function(S){this.uniforms.pointScale.value=S}},pointBack:{get:function(){return this.defines.USE_POINT_BACK_HIDDEN===!0?"HIDDEN":this.defines.USE_POINT_BACK_DARK===!0?"DARK":"VISIBLE"},set:function(S){var P=S==="HIDDEN",I=S==="DARK";this.defines.USE_POINT_BACK_HIDDEN!==P&&(this.defines.USE_POINT_BACK_HIDDEN=P,this.needsUpdate=!0),this.defines.USE_POINT_BACK_DARK!==I&&(this.defines.USE_POINT_BACK_DARK=I,this.needsUpdate=!0)}},pointMinPixel:{get:function(){return this.uniforms.pointMinPixel.value},set:function(S){this.uniforms.pointMinPixel.value=S}},pointMaxPixel:{get:function(){return this.uniforms.pointMaxPixel.value},set:function(S){this.uniforms.pointMaxPixel.value=S}},useEDL:{get:function(){return this.defines.USE_EDL},set:function(S){S!==this.defines.USE_EDL&&(this.defines.USE_EDL=S,this.needsUpdate=!0)}},useHQWeight:{get:function(){return this.defines.USE_HQ_WEIGHT},set:function(S){S!==this.defines.USE_HQ_WEIGHT&&(this.defines.USE_HQ_WEIGHT=S,this.needsUpdate=!0)}},useHQDepth:{get:function(){return this.defines.USE_HQ_DEPTH},set:function(S){S!==this.defines.USE_HQ_DEPTH&&(this.defines.USE_HQ_DEPTH=S,this.needsUpdate=!0)}},gradientTexture:{get:function(){return this.uniforms.gradientTexture.value},set:function(S){this.uniforms.gradientTexture.value=S}},floor:{get:function(){return this.uniforms.floor.value},set:function(S){this.uniforms.floor.value=S}}}),x.pano0=(r=e.pano0)!==null&&r!==void 0?r:we.pano0,x.pano1=(i=e.pano1)!==null&&i!==void 0?i:we.pano1,x.modelAlpha=(a=e.modelAlpha)!==null&&a!==void 0?a:we.modelAlpha,x.progress=(o=e.progress)!==null&&o!==void 0?o:we.progress,x.transition=(s=e.transition)!==null&&s!==void 0?s:we.transition,x.constantColor=(l=e.constantColor)!==null&&l!==void 0?l:we.constantColor,x.opacity=(u=e.opacity)!==null&&u!==void 0?u:we.opacity,x.shownFloorIndex=(c=e.shownFloorIndex)!==null&&c!==void 0?c:we.shownFloorIndex,x.clippers=(f=e.clippers)!==null&&f!==void 0?f:we.clippers,x.useEDL=(A=e.useEDL)!==null&&A!==void 0?A:we.useEDL,x.useHQWeight=(p=e.useHQWeight)!==null&&p!==void 0?p:we.useHQWeight,x.useHQDepth=(y=e.useHQDepth)!==null&&y!==void 0?y:we.useHQDepth,x.pointColor=(v=e.pointColor)!==null&&v!==void 0?v:we.pointColor,x.pointShape=(m=e.pointShape)!==null&&m!==void 0?m:we.pointShape,x.pointSize=(h=e.pointSize)!==null&&h!==void 0?h:we.pointSize,x.pointScale=(g=e.pointScale)!==null&&g!==void 0?g:we.pointScale,x.pointBack=(b=e.pointBack)!==null&&b!==void 0?b:we.pointBack,x.pointMinPixel=(w=e.pointMinPixel)!==null&&w!==void 0?w:we.pointMinPixel,x.pointMaxPixel=(E=e.pointMaxPixel)!==null&&E!==void 0?E:we.pointMaxPixel,x.gradientTexture=(C=e.gradientTexture)!==null&&C!==void 0?C:we.gradientTexture,x.floor=0,x.transparent=!1,x}return t.prototype.onBeforeCompile=function(e,r){var i,a,o=String((a=(i=this.clippers)===null||i===void 0?void 0:i.length)!==null&&a!==void 0?a:0);e.vertexShader=e.vertexShader.replace(/NUM_CLIPPERS/g,o),e.fragmentShader=e.fragmentShader.replace(/NUM_CLIPPERS/g,o)},t.prototype.update=function(e,r){if(r instanceof Si)this.uniforms.pixelRatio.value=r.pixelRatio,this.uniforms.resolution.value.copy(r.resolution);else{this.uniforms.pixelRatio.value=e.getPixelRatio();var i=e.getViewport(Cd);this.uniforms.resolution.value.set(i.z,i.w)}this.transparent=this.shownFloorIndex>-1||this.opacity<1||this.modelAlpha<1,this.useEDL&&(this.transparent=!1),this.useHQDepth&&(this.depthTest=!0,this.depthWrite=!0),this.useHQWeight?(this.depthWrite=!1,this.blending=d.CustomBlending,this.blendSrc=d.SrcAlphaFactor,this.blendSrcAlpha=d.SrcAlphaFactor,this.blendDst=d.OneFactor,this.blendDstAlpha=d.OneFactor):(this.depthWrite=!0,this.transparent=this.shownFloorIndex>-1||this.opacity<1||this.modelAlpha<1,this.blendDst=d.OneMinusSrcAlphaFactor,this.blendEquation=d.AddEquation,this.blendSrcAlpha=null,this.blendDstAlpha=null,this.blendEquationAlpha=null,this.blending=d.NormalBlending)},t.prototype.syncModel=function(e){var r="".concat(e.id,":").concat(e.materialVersion);r!==this.syncModelVersion&&(Object.assign(this,e.getMaterial()),this.syncModelVersion=r)},t}(d.ShaderMaterial),Sd=function(n){de(t,n);function t(){return n!==null&&n.apply(this,arguments)||this}return t.prototype.loadMesh=function(e,r){var i=this,a=r.json.meshes[e],o=a.primitives,s=Promise.all(o.map(function(c){return r.loadGeometry(c)})),l=Promise.all(o.map(function(c){return i.loadPBMMaterial(c,r)})),u=Promise.all([s,l]).then(function(c){for(var f=c[0],A=c[1],p=[],y=0;y<o.length;y++){var v=o[y],m=f[y],h=A[y];m.attributes.normal===void 0&&(h.flatShading=!0),m.attributes.tangent===void 0&&h.normalScale&&(h.normalScale.y*=-1);var g=v.mode||Fe.TRIANGLES,b=void 0;if(g===Fe.TRIANGLES||g===Fe.TRIANGLE_STRIP||g===Fe.TRIANGLE_FAN)g===Fe.TRIANGLE_STRIP?m=r.toGeometryTrianglesDrawMode(m,d.TriangleStripDrawMode):g===Fe.TRIANGLE_FAN&&(m=r.toGeometryTrianglesDrawMode(m,d.TriangleFanDrawMode)),m.clearGroups(),m.addGroup(0,m.index?m.index.count:m.attributes.position.count,0),m.attributes.normal||m.computeVertexNormals(),r.disposeSet.add(m),b=new Ct(m,[h]);else if(g===Fe.POINTS)b=new ar(m,h);else throw new Error("glTF: Primitive mode unsupported: "+g);b.name=r.createUniqueName(a.name||"mesh_"+e),p.push(b)}if(p.length===1)return p[0];for(var w=new d.Group,E=0,C=p;E<C.length;E++){var b=C[E];w.add(b)}return w});return u},t.prototype.loadPBMMaterial=function(e,r){var i,a=(i=e.mode)!==null&&i!==void 0?i:Fe.TRIANGLES,o=null;if(a===Fe.TRIANGLES||a===Fe.TRIANGLE_STRIP||a===Fe.TRIANGLE_FAN)o=this.loadPBMMeshMaterial(e,r);else if(a===Fe.POINTS)o=this.loadPBMPointCloudMaterial(e,r);else throw new Error("glTF: Primitive mode unsupported: "+a);return o},t.prototype.extendTexture=function(e,r,i){return e.minFilter=d.LinearFilter,e.magFilter=d.LinearFilter,e.generateMipmaps=!1,e},t.prototype.loadPBMPointCloudMaterial=function(e,r){var i=new Tu;return Object.keys(e.attributes).filter(function(a){return xt[a]==="normal"}).length>0&&(i.defines.USE_POINT_NORMAL=!0),r.disposeSet.add(i),Promise.resolve(i)},t.prototype.loadPBMMeshMaterial=function(e,r){var i=[],a=new Hn;if(a.uniforms.diffuse.value=new d.Color(1,1,1),a.uniforms.exposure.value=3.3,a.defines.USE_MAP=!1,Object.keys(e.attributes).filter(function(c){return xt[c]==="color"}).length>0&&(a.vertexColors=!0),Object.keys(e.attributes).filter(function(c){return xt[c]==="tangent"}).length===0&&(a.normalScale&&(a.normalScale.y*=-1),a.clearcoatNormalScale&&(a.clearcoatNormalScale.y*=-1)),e.material!==void 0){var o=r.json.materials[e.material];o.name&&(a.name=o.name);var s=o.pbrMetallicRoughness||{};if(Array.isArray(s.baseColorFactor)){var l=s.baseColorFactor;a.uniforms.diffuse.value.fromArray(l)}if(s.baseColorTexture!==void 0&&i.push(r.createMaterialTexture(s.baseColorTexture).then(function(c){r.disposeSet.add(c),a.uniforms.map.value=c,a.defines.USE_MAP=!0})),o.doubleSided===!0&&(a.side=d.DoubleSide),o.normalTexture!==void 0&&(i.push(r.createMaterialTexture(o.normalTexture).then(function(c){r.disposeSet.add(c),a.uniforms.normalMap.value=c})),a.uniforms.normalScale.value=new d.Vector2(1,1),o.normalTexture.scale!==void 0)){var u=o.normalTexture.scale;a.uniforms.normalScale.value.set(u,u)}}return r.disposeSet.add(a),Promise.all(i).then(function(){return a})},t}(Er),an={KHR_binary_glTF:nd,KHR_draco_mesh_compression:od,KHR_texture_basisu:Ad,KHR_texture_transform:md,KHR_mesh_quantization:gd,EXT_meshopt_compression:yd,EXT_texture_webp:bd,CESIUM_RTC:wd,PBM_mesh:Sd};function Ha(n,t){var e,r,i,a={};if(t.addonExtensions)for(var o=0,s=t.addonExtensions;o<s.length;o++){var l=s[o];a[l]=new an[l]}var u;if(typeof n=="string")u=n;else{var c=an.KHR_binary_glTF.getMagic(n);if(c===an.KHR_binary_glTF.HEADER_MAGIC){var f=new an.KHR_binary_glTF;try{f.loadGlbBinary(n)}catch(h){return Promise.reject(h)}a.KHR_binary_glTF=f,u=f.content}else u=ga(new Uint8Array(n))}var A=JSON.parse(u);if(A.asset===void 0||Number(A.asset.version[0])<2)return Promise.reject(new Error("glTF: Unsupported asset. glTF versions >=2.0 are supported."));if(A.extensionsUsed)for(var p=A.extensionsRequired||[],y=0;y<A.extensionsUsed.length;y++){var v=A.extensionsUsed[y];a[v]||(an[v]?a[v]=new an[v]:p.indexOf(v)>=0&&console.warn('glTF: Unknown extension "'+v+'".'))}var m=new rd(A,a,{copyUV2:(e=t.copyUV2)!==null&&e!==void 0?e:!0,resourcePath:(r=t.resourcePath)!==null&&r!==void 0?r:"",search:(i=t.search)!==null&&i!==void 0?i:"",fetcher:t.fetcher});return m.parse()}var Id=new d.Matrix4().fromArray([1,0,0,0,0,0,1,0,0,-1,0,0,0,0,0,1]);function Pu(n,t){var e={uri:n,gltfUpAxis:t.upAxis};return Promise.resolve().then(function(){return t.fetcher.ajax(n,{responseType:"arraybuffer"}).then(function(r){return r.body})}).then(function(r){return Promise.resolve(0).then(function(i){return Cu(e,r,i)}).then(function(i){return Iu(e,r,i)}).then(function(i){return ed(e,r,i)})}).then(function(){var r;return Ha(e.gltfArrayBuffer,{copyUV2:!1,addonExtensions:["PBM_mesh"],resourcePath:n.slice(0,n.lastIndexOf("/")+1),search:(r=n.split("?")[1])!==null&&r!==void 0?r:"",fetcher:t.fetcher}).then(function(i){var a=new d.Matrix4;t.upAxis!=="Z"&&a.premultiply(Id);var o=new d.Matrix4().setPosition(e.rtcCenter[0],e.rtcCenter[1],e.rtcCenter[2]);if(a.premultiply(o),i.CESIUM_RTC){var s=new d.Matrix4().setPosition(i.CESIUM_RTC.center);a.premultiply(s)}var l=i.scene;return l.applyMatrix4(a),{type:"b3dm",uri:e.uri,byteLength:e.byteLength,object:l,dispose:function(){return i.dispose()}}})})}const Bu="KGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIEIoYSl7b25tZXNzYWdlPWZ1bmN0aW9uKHIpe1Byb21pc2UucmVzb2x2ZShyLmRhdGEpLnRoZW4oZnVuY3Rpb24obil7cmV0dXJuIGEobil9KS50aGVuKGZ1bmN0aW9uKG4pe3ZhciBlPW4ub3V0cHV0LHQ9bi50cmFuc2ZlcjtyZXR1cm4gcG9zdE1lc3NhZ2UoZSx0KX0pLmNhdGNoKGZ1bmN0aW9uKG4pe3JldHVybiBwb3N0TWVzc2FnZSh7JCRlcnJvcjpufSl9KX19dmFyIHUseTsoZnVuY3Rpb24oYSl7YVthLkJZVEU9NTEyMF09IkJZVEUiLGFbYS5VTlNJR05FRF9CWVRFPTUxMjFdPSJVTlNJR05FRF9CWVRFIixhW2EuU0hPUlQ9NTEyMl09IlNIT1JUIixhW2EuVU5TSUdORURfU0hPUlQ9NTEyM109IlVOU0lHTkVEX1NIT1JUIixhW2EuSU5UPTUxMjRdPSJJTlQiLGFbYS5VTlNJR05FRF9JTlQ9NTEyNV09IlVOU0lHTkVEX0lOVCIsYVthLkZMT0FUPTUxMjZdPSJGTE9BVCIsYVthLkRPVUJMRT01MTMwXT0iRE9VQkxFIn0pKHl8fCh5PXt9KSk7dmFyIGM9KHU9e30sdVt5LkRPVUJMRV09RmxvYXQ2NEFycmF5LHVbeS5GTE9BVF09RmxvYXQzMkFycmF5LHVbeS5VTlNJR05FRF9TSE9SVF09VWludDE2QXJyYXksdVt5LlVOU0lHTkVEX0lOVF09VWludDMyQXJyYXksdVt5LlVOU0lHTkVEX0JZVEVdPVVpbnQ4QXJyYXksdVt5LkJZVEVdPUludDhBcnJheSx1W3kuU0hPUlRdPUludDE2QXJyYXksdVt5LklOVF09SW50MzJBcnJheSx1KSxGPXtET1VCTEU6eS5ET1VCTEUsRkxPQVQ6eS5GTE9BVCxVTlNJR05FRF9TSE9SVDp5LlVOU0lHTkVEX1NIT1JULFVOU0lHTkVEX0lOVDp5LlVOU0lHTkVEX0lOVCxVTlNJR05FRF9CWVRFOnkuVU5TSUdORURfQllURSxCWVRFOnkuQllURSxTSE9SVDp5LlNIT1JULElOVDp5LklOVH07ZnVuY3Rpb24gTyhhKXt2YXIgcj1jW2FdO2lmKCFyKXRocm93IG5ldyBFcnJvcigiRmFpbGVkIHRvIGNvbnZlcnQgR0wgdHlwZSIpO3JldHVybiByfWZ1bmN0aW9uIHAoYSl7dmFyIHI9TyhhKTtyZXR1cm4gci5CWVRFU19QRVJfRUxFTUVOVH1mdW5jdGlvbiBfKGEscixuLGUpe249PT12b2lkIDAmJihuPTApO3ZhciB0PU8oYSk7aWYobiVwKGEpIT09MCl7dmFyIGk9ZT9yLnNsaWNlKG4sbitlKnAoYSkpOnIuc2xpY2Uobik7cmV0dXJuIG5ldyB0KGkpfWVsc2UgcmV0dXJuIG5ldyB0KHIsbixlIT1udWxsP2U6KHIuYnl0ZUxlbmd0aC1uKS9wKGEpKX1mdW5jdGlvbiBsKGEpe3ZhciByPUZbYV07aWYoIXIpdGhyb3cgbmV3IEVycm9yKCJGYWlsZWQgdG8gY29udmVydCBHTCB0eXBlIik7cmV0dXJuIHJ9dmFyIFI9ZnVuY3Rpb24oKXtmdW5jdGlvbiBhKHIsbil7dGhpcy5mZWF0dXJlc0xlbmd0aD0wLHRoaXMuY2FjaGVkVHlwZWRBcnJheXM9e30sdGhpcy5qc29uPXIsdGhpcy5idWZmZXI9bjt2YXIgZT10aGlzLmdldEdsb2JhbFByb3BlcnR5KCJQT0lOVFNfTEVOR1RIIix5LlVOU0lHTkVEX0lOVCwxKTtlJiZlLmxlbmd0aCYmKHRoaXMuZmVhdHVyZXNMZW5ndGg9ZVswXSl9cmV0dXJuIGEucHJvdG90eXBlLmdldEV4dGVuc2lvbj1mdW5jdGlvbihyKXtyZXR1cm4gdGhpcy5qc29uLmV4dGVuc2lvbnMmJnRoaXMuanNvbi5leHRlbnNpb25zW3JdfSxhLnByb3RvdHlwZS5oYXNQcm9wZXJ0eT1mdW5jdGlvbihyKXtyZXR1cm4hIXRoaXMuanNvbltyXX0sYS5wcm90b3R5cGUuZ2V0R2xvYmFsUHJvcGVydHk9ZnVuY3Rpb24ocixuLGUpe3ZhciB0PXRoaXMuanNvbltyXTtpZih0eXBlb2YgdD09Im51bWJlciIpe3ZhciBpPU8obik7cmV0dXJuIG5ldyBpKFt0XSl9ZWxzZSBpZihBcnJheS5pc0FycmF5KHQpKXt2YXIgaT1PKG4pO3JldHVybiBuZXcgaSh0KX1lbHNlIGlmKHQmJk51bWJlci5pc0Zpbml0ZSh0LmJ5dGVPZmZzZXQpKXJldHVybiB0aGlzLmdldFR5cGVkQXJyYXlGcm9tQmluYXJ5KHIsbixlLDEsdC5ieXRlT2Zmc2V0KTtyZXR1cm4gbnVsbH0sYS5wcm90b3R5cGUuZ2V0UHJvcGVydHlBcnJheT1mdW5jdGlvbihyLG4sZSl7dmFyIHQ9dGhpcy5qc29uW3JdO3JldHVybiB0JiZOdW1iZXIuaXNGaW5pdGUodC5ieXRlT2Zmc2V0KT8oImNvbXBvbmVudFR5cGUiaW4gdCYmKG49bCh0LmNvbXBvbmVudFR5cGUpKSx0aGlzLmdldFR5cGVkQXJyYXlGcm9tQmluYXJ5KHIsbixlLHRoaXMuZmVhdHVyZXNMZW5ndGgsdC5ieXRlT2Zmc2V0KSk6dGhpcy5nZXRUeXBlZEFycmF5RnJvbUFycmF5KHIsbix0KX0sYS5wcm90b3R5cGUuZ2V0UHJvcGVydHk9ZnVuY3Rpb24ocixuLGUsdCxpKXt2YXIgbz10aGlzLmpzb25bcl07aWYoIW8pcmV0dXJuIG51bGw7dmFyIHY9dGhpcy5nZXRQcm9wZXJ0eUFycmF5KHIsbixlKTtpZihlPT09MSlyZXR1cm4gaVswXT12W3RdLGk7Zm9yKHZhciBBPTA7QTxlOysrQSlpW0FdPXZbZSp0K0FdO3JldHVybiBpfSxhLnByb3RvdHlwZS5nZXRUeXBlZEFycmF5RnJvbUJpbmFyeT1mdW5jdGlvbihyLG4sZSx0LGkpe3ZhciBvPXRoaXMuY2FjaGVkVHlwZWRBcnJheXMsdj1vW3JdO3JldHVybiB2fHwodj1fKG4sdGhpcy5idWZmZXIuYnVmZmVyLHRoaXMuYnVmZmVyLmJ5dGVPZmZzZXQraSx0KmUpLG9bcl09diksdn0sYS5wcm90b3R5cGUuZ2V0VHlwZWRBcnJheUZyb21BcnJheT1mdW5jdGlvbihyLG4sZSl7dmFyIHQ9dGhpcy5jYWNoZWRUeXBlZEFycmF5cyxpPXRbcl07cmV0dXJuIGl8fChpPV8obixlKSx0W3JdPWkpLGl9LGF9KCk7QihmdW5jdGlvbihhKXtyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGEpLnRoZW4oZnVuY3Rpb24ocil7dmFyIG49bmV3IFIoci5mZWF0dXJlVGFibGVKc29uLHIuZmVhdHVyZVRhYmxlQmluYXJ5KSxlPWQobiksdD1nKG4pLGk9UChuKSxvPVtdO3JldHVybiBlJiZvLnB1c2goZS5hcnJheS5idWZmZXIpLHQmJm8ucHVzaCh0LmFycmF5LmJ1ZmZlciksaSYmby5wdXNoKGkuYXJyYXkuYnVmZmVyKSx7b3V0cHV0Ontwb3NpdGlvbjplLGNvbG9yOnQsbm9ybWFsOml9LHRyYW5zZmVyOm99fSl9KTt2YXIgVT02NTUzNTtmdW5jdGlvbiBkKGEpe2lmKGEuaGFzUHJvcGVydHkoIlBPU0lUSU9OIikpe3ZhciByPWEuZ2V0UHJvcGVydHlBcnJheSgiUE9TSVRJT04iLHkuRkxPQVQsMyk7cmV0dXJue2FycmF5OnIsaXRlbVNpemU6Myxub3JtYWxpemVkOiExfX1lbHNlIGlmKGEuaGFzUHJvcGVydHkoIlBPU0lUSU9OX1FVQU5USVpFRCIpKXt2YXIgbj1hLmdldFByb3BlcnR5QXJyYXkoIlBPU0lUSU9OX1FVQU5USVpFRCIseS5VTlNJR05FRF9TSE9SVCwzKSxlPWEuZ2V0R2xvYmFsUHJvcGVydHkoIlFVQU5USVpFRF9WT0xVTUVfU0NBTEUiLHkuRkxPQVQsMyksdD1hLmdldEdsb2JhbFByb3BlcnR5KCJRVUFOVElaRURfVk9MVU1FX09GRlNFVCIseS5GTE9BVCwzKTtpZighZXx8IXQpdGhyb3cgbmV3IEVycm9yKCJRVUFOVElaRURfVk9MVU1FX1NDQUxFIG9yIFFVQU5USVpFRF9WT0xVTUVfT0ZGU0VUIG5ldmVyIGZvdW5kLiIpO2Zvcih2YXIgaT1uZXcgRmxvYXQzMkFycmF5KG4ubGVuZ3RoKSxvPW4ubGVuZ3RoLzMsdj1lWzBdL1UsQT1lWzFdL1UsTj1lWzJdL1UsRT10WzBdLFM9dFsxXSxzPXRbMl0sVD0wLEk9dm9pZCAwO1Q8bztUKyspST1UKjMsaVtJXT1uW0ldKnYrRSxpWysrSV09bltJXSpBK1MsaVsrK0ldPW5bSV0qTitzO3JldHVybnthcnJheTppLGl0ZW1TaXplOjMsbm9ybWFsaXplZDohMX19cmV0dXJuIG51bGx9ZnVuY3Rpb24gZyhhKXtpZihhLmhhc1Byb3BlcnR5KCJSR0IiKSl7Zm9yKHZhciByPWEuZ2V0UHJvcGVydHlBcnJheSgiUkdCIix5LlVOU0lHTkVEX0JZVEUsMyksbj1yLmxlbmd0aC8zLGU9bmV3IFVpbnQ4QXJyYXkobio0KSx0PTAsaT12b2lkIDAsbz12b2lkIDA7dDxuO3QrKylvPXQqNCxpPXQqMyxlW29dPXJbaV0sZVsrK29dPXJbKytpXSxlWysrb109clsrK2ldO3JldHVybnthcnJheTplLGl0ZW1TaXplOjQsbm9ybWFsaXplZDohMH19ZWxzZSBpZihhLmhhc1Byb3BlcnR5KCJSR0JBIikpe3ZhciByPWEuZ2V0UHJvcGVydHlBcnJheSgiUkdCQSIseS5VTlNJR05FRF9CWVRFLDQpO3JldHVybnthcnJheTpyLGl0ZW1TaXplOjQsbm9ybWFsaXplZDohMH19ZWxzZSBpZihhLmhhc1Byb3BlcnR5KCJSR0I1NjUiKSl7Zm9yKHZhciByPWEuZ2V0UHJvcGVydHlBcnJheSgiUkdCNTY1Iix5LlVOU0lHTkVEX1NIT1JULDEpLG49ci5sZW5ndGgsZT1uZXcgVWludDhBcnJheShuKjQpLHQ9MCx2PXZvaWQgMCxBPXZvaWQgMDt0PG47dCsrKUE9clt0XSx2PXQqNCxlW3ZdPShBPj4xMSYzMSk8PDMsZVsrK3ZdPShBPj41JjYzKTw8MixlWysrdl09KEEmMzEpPDwzO3JldHVybnthcnJheTplLGl0ZW1TaXplOjQsbm9ybWFsaXplZDohMH19cmV0dXJuIG51bGx9dmFyIEc9MjU1LGg9MTI3LEQ9Mi9HO2Z1bmN0aW9uIFAoYSl7aWYoYS5oYXNQcm9wZXJ0eSgiTk9STUFMIikpe2Zvcih2YXIgcj1hLmdldFByb3BlcnR5QXJyYXkoIk5PUk1BTCIseS5GTE9BVCwzKSxuPXIubGVuZ3RoLzMsZT1uZXcgSW50OEFycmF5KG4qNCksdD0wLGk9dm9pZCAwLG89dm9pZCAwO3Q8bjt0Kyspbz10KjQsaT10KjMsZVtvXT1yW2ldKmgsZVsrK29dPXJbKytpXSpoLGVbKytvXT1yWysraV0qaDtyZXR1cm57YXJyYXk6ZSxpdGVtU2l6ZTo0LG5vcm1hbGl6ZWQ6ITB9fWVsc2UgaWYoYS5oYXNQcm9wZXJ0eSgiTk9STUFMX09DVDE2UCIpKXtmb3IodmFyIHI9YS5nZXRQcm9wZXJ0eUFycmF5KCJOT1JNQUxfT0NUMTZQIix5LlVOU0lHTkVEX0JZVEUsMiksbj1yLmxlbmd0aC8yLGU9bmV3IEludDhBcnJheShuKjQpLHQ9MCx2PXZvaWQgMCxBPXZvaWQgMCxOPXZvaWQgMCxFPXZvaWQgMCxTPXZvaWQgMCxzPXZvaWQgMCxUPXZvaWQgMDt0PG47dCsrKXY9dCoyLEE9clt2XSpELTEsTj1yWysrdl0qRC0xLFM9QTwwPy1BOkEscz1OPDA/LU46TixFPTEtKFMrcyksRTwwJiYoQT0oMS1zKSooQTwwPy0xOjEpLE49KDEtUykqKE48MD8tMToxKSksVD1NYXRoLnNxcnQoQSpBK04qTitFKkUpLHY9dCo0LGVbdl09QS9UKmgsZVsrK3ZdPU4vVCpoLGVbKyt2XT1FL1QqaDtyZXR1cm57YXJyYXk6ZSxpdGVtU2l6ZTo0LG5vcm1hbGl6ZWQ6ITB9fXJldHVybiBudWxsfX0pKCk7Cg==",Yo=typeof window!="undefined"&&window.Blob&&new Blob([atob(Bu)],{type:"text/javascript;charset=utf-8"});function Td(n){let t;try{if(t=Yo&&(window.URL||window.webkitURL).createObjectURL(Yo),!t)throw"";const e=new Worker(t,{name:n==null?void 0:n.name});return e.addEventListener("error",()=>{(window.URL||window.webkitURL).revokeObjectURL(t)}),e}catch(e){return new Worker("data:application/javascript;base64,"+Bu,{name:n==null?void 0:n.name})}finally{t&&(window.URL||window.webkitURL).revokeObjectURL(t)}}var Pd=new yu(function(){return new Td},2);function Bd(n,t,e){var r=new Mu(n.featureTableJson,n.featureTableBinary);return Promise.resolve().then(function(){var i=r.getExtension("3DTILES_draco_point_compression");return i?Rd(i,r):Pd.postMessage({featureTableBinary:r.buffer,featureTableJson:r.json},[r.buffer.buffer])}).then(function(i){return n.attributes=i,e})}function Rd(n,t){return xi(this,void 0,void 0,function(){var e,r,i,a,o,s;return Ci(this,function(l){if(e=n.properties||{},r=n.byteOffset,i=n.byteLength,!e||!Number.isFinite(r)||!i)throw new Error("Draco properties, byteOffset, and byteLength must be defined");return a=t.buffer.slice(r,r+i),o=n.properties,s={POSITION:"Float32Array",NORMAL:"Float32Array",RGB:"Uint8Array",RGBA:"Uint8Array"},[2,gi.decodeGeometry(a.buffer,{attributeIDs:o,attributeTypes:s,useUniqueIDs:!0}).then(function(u){var c=u.getAttribute("POSITION"),f=u.getAttribute("RGB"),A=u.getAttribute("RGBA"),p=u.getAttribute("NORMAL"),y;if(A)y=A;else if(f){for(var v=f.count,m=f.array,h=new Uint8Array(v*4),g=0,b=void 0,w=void 0;g<v;g++)w=g*4,b=g*3,h[w]=m[b],h[++w]=m[++b],h[++w]=m[++b];y=new d.BufferAttribute(h,4,f.normalized)}return{position:c?{array:c.array,itemSize:c.itemSize,normalized:c.normalized}:null,color:y?{array:y.array,itemSize:y.itemSize,normalized:y.normalized}:null,normal:p?{array:p.array,itemSize:p.itemSize,normalized:p.normalized}:null}})]})})}function Ru(n,t){var e={uri:n};return Promise.resolve().then(function(){return t.fetcher.ajax(n,{responseType:"arraybuffer"}).then(function(r){return r.body})}).then(function(r){return Promise.resolve(0).then(function(i){return Cu(e,r,i)}).then(function(i){return Iu(e,r,i)}).then(function(i){return Bd(e,r,i)})}).then(function(){var r;return Fd(e.attributes,{computeBoundingBox:(r=t.computeBoundingBox)!==null&&r!==void 0?r:!0})}).then(function(r){var i=new d.Matrix4,a=new d.Matrix4().setPosition(e.rtcCenter[0],e.rtcCenter[1],e.rtcCenter[2]);return i.premultiply(a),r.object.applyMatrix4(i),{type:"pnts",uri:e.uri,byteLength:e.byteLength,object:r.object,dispose:function(){return r.dispose()}}})}function Fd(n,t){var e=new Set,r=new d.BufferGeometry;e.add(r);var i=new Tu;e.add(i),n.position&&r.setAttribute("position",new d.BufferAttribute(n.position.array,n.position.itemSize,n.position.normalized)),n.color&&r.setAttribute("color",new d.BufferAttribute(n.color.array,n.color.itemSize,n.color.normalized)),n.normal&&(r.setAttribute("normal",new d.BufferAttribute(n.normal.array,n.normal.itemSize,n.normal.normalized)),i.defines.USE_POINT_NORMAL=!0),t.computeBoundingBox&&r.computeBoundingBox();var a=new ar(r,i);return a.matrix.compose(a.position,a.quaternion,a.scale),a.matrixAutoUpdate=!1,a.frustumCulled=!1,a.renderOrder=-1e3,Promise.resolve({object:a,dispose:function(){e.forEach(function(o){o.dispose()}),e.clear()}})}function Fu(){var n={};return n.OutWindow=function(){this._windowSize=0},n.OutWindow.prototype.create=function(t){(!this._buffer||this._windowSize!==t)&&(this._buffer=[]),this._windowSize=t,this._pos=0,this._streamPos=0},n.OutWindow.prototype.flush=function(){var t=this._pos-this._streamPos;if(t!==0){for(;t--;)this._stream.writeByte(this._buffer[this._streamPos++]);this._pos>=this._windowSize&&(this._pos=0),this._streamPos=this._pos}},n.OutWindow.prototype.releaseStream=function(){this.flush(),this._stream=null},n.OutWindow.prototype.setStream=function(t){this.releaseStream(),this._stream=t},n.OutWindow.prototype.init=function(t){t||(this._streamPos=0,this._pos=0)},n.OutWindow.prototype.copyBlock=function(t,e){var r=this._pos-t-1;for(r<0&&(r+=this._windowSize);e--;)r>=this._windowSize&&(r=0),this._buffer[this._pos++]=this._buffer[r++],this._pos>=this._windowSize&&this.flush()},n.OutWindow.prototype.putByte=function(t){this._buffer[this._pos++]=t,this._pos>=this._windowSize&&this.flush()},n.OutWindow.prototype.getByte=function(t){var e=this._pos-t-1;return e<0&&(e+=this._windowSize),this._buffer[e]},n.RangeDecoder=function(){},n.RangeDecoder.prototype.setStream=function(t){this._stream=t},n.RangeDecoder.prototype.releaseStream=function(){this._stream=null},n.RangeDecoder.prototype.init=function(){var t=5;for(this._code=0,this._range=-1;t--;)this._code=this._code<<8|this._stream.readByte()},n.RangeDecoder.prototype.decodeDirectBits=function(t){for(var e=0,r=t,i;r--;)this._range>>>=1,i=this._code-this._range>>>31,this._code-=this._range&i-1,e=e<<1|1-i,this._range&4278190080||(this._code=this._code<<8|this._stream.readByte(),this._range<<=8);return e},n.RangeDecoder.prototype.decodeBit=function(t,e){var r=t[e],i=(this._range>>>11)*r;return(this._code^2147483648)<(i^2147483648)?(this._range=i,t[e]+=2048-r>>>5,this._range&4278190080||(this._code=this._code<<8|this._stream.readByte(),this._range<<=8),0):(this._range-=i,this._code-=i,t[e]-=r>>>5,this._range&4278190080||(this._code=this._code<<8|this._stream.readByte(),this._range<<=8),1)},n.initBitModels=function(t,e){for(;e--;)t[e]=1024},n.BitTreeDecoder=function(t){this._models=[],this._numBitLevels=t},n.BitTreeDecoder.prototype.init=function(){n.initBitModels(this._models,1<<this._numBitLevels)},n.BitTreeDecoder.prototype.decode=function(t){for(var e=1,r=this._numBitLevels;r--;)e=e<<1|t.decodeBit(this._models,e);return e-(1<<this._numBitLevels)},n.BitTreeDecoder.prototype.reverseDecode=function(t){for(var e=1,r=0,i=0,a;i<this._numBitLevels;++i)a=t.decodeBit(this._models,e),e=e<<1|a,r|=a<<i;return r},n.reverseDecode2=function(t,e,r,i){for(var a=1,o=0,s=0,l;s<i;++s)l=r.decodeBit(t,e+a),a=a<<1|l,o|=l<<s;return o},n.LenDecoder=function(){this._choice=[],this._lowCoder=[],this._midCoder=[],this._highCoder=new n.BitTreeDecoder(8),this._numPosStates=0},n.LenDecoder.prototype.create=function(t){for(;this._numPosStates<t;++this._numPosStates)this._lowCoder[this._numPosStates]=new n.BitTreeDecoder(3),this._midCoder[this._numPosStates]=new n.BitTreeDecoder(3)},n.LenDecoder.prototype.init=function(){var t=this._numPosStates;for(n.initBitModels(this._choice,2);t--;)this._lowCoder[t].init(),this._midCoder[t].init();this._highCoder.init()},n.LenDecoder.prototype.decode=function(t,e){return t.decodeBit(this._choice,0)===0?this._lowCoder[e].decode(t):t.decodeBit(this._choice,1)===0?8+this._midCoder[e].decode(t):16+this._highCoder.decode(t)},n.Decoder2=function(){this._decoders=[]},n.Decoder2.prototype.init=function(){n.initBitModels(this._decoders,768)},n.Decoder2.prototype.decodeNormal=function(t){var e=1;do e=e<<1|t.decodeBit(this._decoders,e);while(e<256);return e&255},n.Decoder2.prototype.decodeWithMatchByte=function(t,e){var r=1,i,a;do if(i=e>>7&1,e<<=1,a=t.decodeBit(this._decoders,(1+i<<8)+r),r=r<<1|a,i!==a){for(;r<256;)r=r<<1|t.decodeBit(this._decoders,r);break}while(r<256);return r&255},n.LiteralDecoder=function(){},n.LiteralDecoder.prototype.create=function(t,e){var r;if(!(this._coders&&this._numPrevBits===e&&this._numPosBits===t))for(this._numPosBits=t,this._posMask=(1<<t)-1,this._numPrevBits=e,this._coders=[],r=1<<this._numPrevBits+this._numPosBits;r--;)this._coders[r]=new n.Decoder2},n.LiteralDecoder.prototype.init=function(){for(var t=1<<this._numPrevBits+this._numPosBits;t--;)this._coders[t].init()},n.LiteralDecoder.prototype.getDecoder=function(t,e){return this._coders[((t&this._posMask)<<this._numPrevBits)+((e&255)>>>8-this._numPrevBits)]},n.Decoder=function(){this._outWindow=new n.OutWindow,this._rangeDecoder=new n.RangeDecoder,this._isMatchDecoders=[],this._isRepDecoders=[],this._isRepG0Decoders=[],this._isRepG1Decoders=[],this._isRepG2Decoders=[],this._isRep0LongDecoders=[],this._posSlotDecoder=[],this._posDecoders=[],this._posAlignDecoder=new n.BitTreeDecoder(4),this._lenDecoder=new n.LenDecoder,this._repLenDecoder=new n.LenDecoder,this._literalDecoder=new n.LiteralDecoder,this._dictionarySize=-1,this._dictionarySizeCheck=-1,this._posSlotDecoder[0]=new n.BitTreeDecoder(6),this._posSlotDecoder[1]=new n.BitTreeDecoder(6),this._posSlotDecoder[2]=new n.BitTreeDecoder(6),this._posSlotDecoder[3]=new n.BitTreeDecoder(6)},n.Decoder.prototype.setDictionarySize=function(t){return t<0?!1:(this._dictionarySize!==t&&(this._dictionarySize=t,this._dictionarySizeCheck=Math.max(this._dictionarySize,1),this._outWindow.create(Math.max(this._dictionarySizeCheck,4096))),!0)},n.Decoder.prototype.setLcLpPb=function(t,e,r){var i=1<<r;return t>8||e>4||r>4?!1:(this._literalDecoder.create(e,t),this._lenDecoder.create(i),this._repLenDecoder.create(i),this._posStateMask=i-1,!0)},n.Decoder.prototype.init=function(){var t=4;for(this._outWindow.init(!1),n.initBitModels(this._isMatchDecoders,192),n.initBitModels(this._isRep0LongDecoders,192),n.initBitModels(this._isRepDecoders,12),n.initBitModels(this._isRepG0Decoders,12),n.initBitModels(this._isRepG1Decoders,12),n.initBitModels(this._isRepG2Decoders,12),n.initBitModels(this._posDecoders,114),this._literalDecoder.init();t--;)this._posSlotDecoder[t].init();this._lenDecoder.init(),this._repLenDecoder.init(),this._posAlignDecoder.init(),this._rangeDecoder.init()},n.Decoder.prototype.decode=function(t,e,r){var i=0,a=0,o=0,s=0,l=0,u=0,c=0,f,A,p,y,v,m;for(this._rangeDecoder.setStream(t),this._outWindow.setStream(e),this.init();r<0||u<r;)if(f=u&this._posStateMask,this._rangeDecoder.decodeBit(this._isMatchDecoders,(i<<4)+f)===0)A=this._literalDecoder.getDecoder(u++,c),i>=7?c=A.decodeWithMatchByte(this._rangeDecoder,this._outWindow.getByte(a)):c=A.decodeNormal(this._rangeDecoder),this._outWindow.putByte(c),i=i<4?0:i-(i<10?3:6);else{if(this._rangeDecoder.decodeBit(this._isRepDecoders,i)===1)p=0,this._rangeDecoder.decodeBit(this._isRepG0Decoders,i)===0?this._rangeDecoder.decodeBit(this._isRep0LongDecoders,(i<<4)+f)===0&&(i=i<7?9:11,p=1):(this._rangeDecoder.decodeBit(this._isRepG1Decoders,i)===0?y=o:(this._rangeDecoder.decodeBit(this._isRepG2Decoders,i)===0?y=s:(y=l,l=s),s=o),o=a,a=y),p===0&&(p=2+this._repLenDecoder.decode(this._rangeDecoder,f),i=i<7?8:11);else if(l=s,s=o,o=a,p=2+this._lenDecoder.decode(this._rangeDecoder,f),i=i<7?7:10,v=this._posSlotDecoder[p<=5?p-2:3].decode(this._rangeDecoder),v>=4){if(m=(v>>1)-1,a=(2|v&1)<<m,v<14)a+=n.reverseDecode2(this._posDecoders,a-v-1,this._rangeDecoder,m);else if(a+=this._rangeDecoder.decodeDirectBits(m-4)<<4,a+=this._posAlignDecoder.reverseDecode(this._rangeDecoder),a<0){if(a===-1)break;return!1}}else a=v;if(a>=u||a>=this._dictionarySizeCheck)return!1;this._outWindow.copyBlock(a,p),u+=p,c=this._outWindow.getByte(0)}return this._outWindow.flush(),this._outWindow.releaseStream(),this._rangeDecoder.releaseStream(),!0},n.Decoder.prototype.setDecoderProperties=function(t){var e,r,i,a,o;return t.size<5||(e=t.readByte(),r=e%9,e=~~(e/9),i=e%5,a=~~(e/5),!this.setLcLpPb(r,i,a))?!1:(o=t.readByte(),o|=t.readByte()<<8,o|=t.readByte()<<16,o+=t.readByte()*16777216,this.setDictionarySize(o))},n.decompress=function(t,e,r,i){var a=new n.Decoder;if(!a.setDecoderProperties(t))throw"Incorrect stream properties";if(!a.decode(e,r,i))throw"Error in data stream";return!0},n.decompressFile=function(t,e){var r=new n.Decoder,i;if(!r.setDecoderProperties(t))throw"Incorrect stream properties";if(i=t.readByte(),i|=t.readByte()<<8,i|=t.readByte()<<16,i+=t.readByte()*16777216,t.readByte(),t.readByte(),t.readByte(),t.readByte(),!r.decode(t,e,i))throw"Error in data stream";return!0},n}var kd=Fu();function Ld(){function n(e){for(var r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",i=new Uint8Array(256),a=0;a<r.length;a++)i[r.charCodeAt(a)]=a;var o=e.length*.75,s=e.length,l,u=0,c,f,A,p;e[e.length-1]==="="&&(o--,e[e.length-2]==="="&&o--);var y=new ArrayBuffer(o),v=new Uint8Array(y);for(l=0;l<s;l+=4)c=i[e.charCodeAt(l)],f=i[e.charCodeAt(l+1)],A=i[e.charCodeAt(l+2)],p=i[e.charCodeAt(l+3)],v[u++]=c<<2|f>>4,v[u++]=(f&15)<<4|A>>2,v[u++]=(A&3)<<6|p&63;return y}var t="AGFzbQEAAAABSg1gAABgAX8Bf2ACf38Bf2AEf39/fwBgA39/fwBgAX8AYAJ/fwBgA39/fwF/YAR/f39/AX9gAn9/AGABfwF/YAABf2AEf39/fwF/AhsCA2VudgVhYm9ydAADA2VudgZtZW1vcnkCAAEDJiUBAQkKAgoKCwsLCwsAAgoBAgQKAQYFCAoFBQQEBwgCBwwCAQAABAQBcAABBhoFfwFBAAt/AUEAC38BQQALfwFBAAt/AUEACwc9BgZtZW1vcnkCAAV0YWJsZQEABXJlc2V0AA0KbmV3VThBcnJheQAQCnVucGFja1NpemUAFAZkZWNvZGUAIwgBJAkHAQBBAAsBJQqAViVoAQN/IABBgICAgARLBEAACyMBIgEgAEEBIABBAUsbakEHakF4cSICPwAiA0EQdEsEQCADIAIgAWtB//8DakGAgHxxQRB2IgAgAyAAShtAAEEASARAIABAAEEASARAAAsLCyACJAEgAQsbAQF/QQFBICAAQQdqZ2t0EAEiASAANgIAIAELkQMBAX8gAUUEQA8LIABBADoAACAAIAFqQQFrQQA6AAAgAUECTQRADwsgAEEBakEAOgAAIABBAmpBADoAACAAIAFqIgJBAmtBADoAACACQQNrQQA6AAAgAUEGTQRADwsgAEEDakEAOgAAIAAgAWpBBGtBADoAACABQQhNBEAPC0EAIABrQQNxIgIgAGoiAEEANgIAIAEgAmtBfHEiASAAakEEa0EANgIAIAFBCE0EQA8LIABBBGpBADYCACAAQQhqQQA2AgAgACABaiICQQxrQQA2AgAgAkEIa0EANgIAIAFBGE0EQA8LIABBDGpBADYCACAAQRBqQQA2AgAgAEEUakEANgIAIABBGGpBADYCACAAIAFqIgJBHGtBADYCACACQRhrQQA2AgAgAkEUa0EANgIAIAJBEGtBADYCACAAQQRxQRhqIgIgAGohACABIAJrIQEDQCABQSBPBEAgAEIANwMAIABBCGpCADcDACAAQRBqQgA3AwAgAEEYakIANwMAIAFBIGshASAAQSBqIQAMAQsLC1EBA38gAEH+////AEsEQEEAQSBBLUEnEAAACyAAQQJ0IgMQAiECQQgQASIBQQA2AgAgAUEANgIEIAEgAjYCACABIAA2AgQgAkEIaiADEAMgAQtmAQF/IAFB/P///wFLBEBBAEHAAEEXQSIQAAALIAFBAXQiARACIgJBCGogARADIABFBEBBDBABIQALIABBADYCACAAQQA2AgQgAEEANgIIIAAgAjYCACAAQQA2AgQgACABNgIIIAALCgBBDBABIAAQBQsuAQF/QQgQASIBQQA2AgAgAUEANgIEIAEgADYCBCABQQEgASgCBHQQBjYCACABC6EBAQR/QRAQASIBQQA2AgAgAUEANgIEIAFBADYCCCABQQA2AgxBEBAEIQIDQCAAQRBIBEBBAxAHIQMgAigCACAAQQJ0aiADNgIIIABBAWohAAwBCwsgASACNgIEQRAQBCECQQAhAANAIABBEEgEQEEDEAchAyACKAIAIABBAnRqIAM2AgggAEEBaiEADAELCyABIAI2AgggAUEIEAc2AgwgAQs0AQF/QRQQASIAQQA2AgAgAEEAOgAEIABBADYCCCAAQQA2AgwgAEEANgIQIABBDTYCCCAAC0IBAX9BGRABIgBBADYCACAAQQA2AgQgAEEANgIIIABBADYCDCAAQQA2AhAgAEEANgIUIABBADoAGCAAQQA2AhAgAAu1AgEEf0HQABABIgBBADoAACAAQQA2AgQgAEEANgIIIABBADYCDCAAQQA2AhAgAEEAOgAUIABBADYCGCAAQQA2AhwgAEEANgIgIABBADYCJCAAQQA2AiggAEEANgIsIABBADYCMCAAQQA2AjQgAEEANgI4IABBADYCPCAAQQA2AkAgAEEANgJEIABBADYCSCAAQQA2AkxBBBAEIQIDQCABQQRIBEBBBhAHIQMgAigCACABQQJ0aiADNgIIIAFBAWohAQwBCwsgACACNgIkIABBBBAHNgIoIABB8wAQBjYCLCAAQcABEAY2AjAgAEEMEAY2AjQgAEEMEAY2AjggAEEMEAY2AjwgAEEMEAY2AkAgAEHAARAGNgJEIAAQCDYCSCAAEAg2AkwgABAJNgIEIAAQCjYCCCAACx8BAX9BCBABIgBBADYCACAAQQA2AgQgABALNgIAIAALCgAjACQBEAwkAwthAQF/IAFB+P///wNLBEBBAEHAAEEXQSIQAAALIAEQAiICQQhqIAEQAyAARQRAQQwQASEACyAAQQA2AgAgAEEANgIEIABBADYCCCAAIAI2AgAgAEEANgIEIAAgATYCCCAACwoAQQwQASAAEA4LBgAgABAPCyoAIAEgACgCCE8EQEEAQcAAQSdBPxAAAAsgACgCBCABIAAoAgBqai0ACAssACABIAAoAghPBEBBAEHAAEEyQT8QAAALIAAoAgQgASAAKAIAamogAjoACAtkAQJ/QQ0QDyECA0AgAUENSARAIAIgASAAIAEQEUH/AXEQEiABQQFqIQEMAQsLQQAhAEEAIQEDQCABQQhIBEAgAiABQQVqEBFB/wFxIAFBA3R0IAByIQAgAUEBaiEBDAELCyAACwYAIAAQEwsnACAAIAEQDzYCCCAAQQA2AgwgACABNgIUIABBADoAGCAAQQA2AgALJAAgACgCCCAAKAIYEBUgAEGABiAAKAIMIAAtABRqdBAGNgIgC5UBAQR/IAEhBSAAIgYoAgAhASAAKAIEIQcgACgCCEEBdiEEIAJBAEgEfyACIARqIgBBACAAQQBKGwUgAiIAIAQgACAESBsLIQIgA0EASAR/IAMgBGoiAEEAIABBAEobBSADIgAgBCAAIARIGwshAwNAIAIgA05FBEAgAkEBdCABaiAHaiAFOwEIIAJBAWohAgwBCwsgBgssAQF/AkACQAJAIwRBAWsOAwEBAgALAAtB/////wchAQsgAEGACEEAIAEQFwvBAQECfyAAQQIQBjYCACAAKAIAIgEoAgAgASgCBGpBgAg7AQggACgCACICKAIAIQEgAigCBCABQQJqakGACDsBCCAAKAIMKAIAQQEkBBAYGkEAIQIDQCACQRBIBEAgAiAAKAIEKAIAIgEoAgBBAnZJBH8gAkECdCABaigCCAUACygCAEEBJAQQGBogAiAAKAIIKAIAIgEoAgBBAnZJBH8gAkECdCABaigCCAUACygCAEEBJAQQGBogAkEBaiECDAELCwuHAgEFfyAAIQJBgAYgACgCDCAALQAUanQhAQNAIAMgAUgEQCACKAIgIgQoAgAhBSAEKAIEIANBAXQgBWpqQYAIOwEIIANBAWohAwwBCwsgAiEBQQAhAgNAIAJBBEkEQCACIAEoAiQoAgAiAygCAEECdkkEfyACQQJ0IANqKAIIBQALKAIAQQEkBBAYGiACQQFqIQIMAQsLIAEoAigoAgBBASQEEBgaIAEoAixBASQEEBgaIAAoAjBBASQEEBgaIAAoAjRBASQEEBgaIAAoAjhBASQEEBgaIAAoAjxBASQEEBgaIAAoAkBBASQEEBgaIAAoAkRBASQEEBgaIAAoAkgQGSAAKAJMEBkLyAwBA38DQCABQQNxIAIgAhsEQCAAIgRBAWohACABIgNBAWohASAEIAMtAAA6AAAgAkEBayECDAELCyAAQQNxRQRAA0AgAkEQTwRAIAAgASgCADYCACAAQQRqIAFBBGooAgA2AgAgAEEIaiABQQhqKAIANgIAIABBDGogAUEMaigCADYCACABQRBqIQEgAEEQaiEAIAJBEGshAgwBCwsgAkEIcQRAIAAgASgCADYCACAAQQRqIAFBBGooAgA2AgAgAUEIaiEBIABBCGohAAsgAkEEcQRAIAAgASgCADYCACABQQRqIQEgAEEEaiEACyACQQJxBEAgACABLwEAOwEAIAFBAmohASAAQQJqIQALIAJBAXEEQCAAIAEtAAA6AAALDwsgAkEgTwRAAkACQAJAIABBA3EiA0EBRwRAIANBAkYNASADQQNGDQIMAwsgASgCACEFIAAgASIDLQAAOgAAIABBAWoiASABIANBAWoiAS0AADoAAEEBaiIEQQFqIQAgAUEBaiIDQQFqIQEgBCADLQAAOgAAIAJBA2shAgNAIAJBEU8EQCAAIAFBAWooAgAiA0EIdCAFQRh2cjYCACAAQQRqIAFBBWooAgAiBUEIdCADQRh2cjYCACAAQQhqIAFBCWooAgAiA0EIdCAFQRh2cjYCACAAQQxqIAFBDWooAgAiBUEIdCADQRh2cjYCACABQRBqIQEgAEEQaiEAIAJBEGshAgwBCwsMAgsgASgCACEFIAAgAS0AADoAACAAQQFqIgRBAWohACABQQFqIgNBAWohASAEIAMtAAA6AAAgAkECayECA0AgAkESTwRAIAAgAUECaigCACIDQRB0IAVBEHZyNgIAIABBBGogAUEGaigCACIFQRB0IANBEHZyNgIAIABBCGogAUEKaigCACIDQRB0IAVBEHZyNgIAIABBDGogAUEOaigCACIFQRB0IANBEHZyNgIAIAFBEGohASAAQRBqIQAgAkEQayECDAELCwwBCyABKAIAIQUgACIEQQFqIQAgASIDQQFqIQEgBCADLQAAOgAAIAJBAWshAgNAIAJBE08EQCAAIAFBA2ooAgAiA0EYdCAFQQh2cjYCACAAQQRqIAFBB2ooAgAiBUEYdCADQQh2cjYCACAAQQhqIAFBC2ooAgAiA0EY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";return n(t)}function Od(n,t,e){try{var r={data:t,offset:0,readByte:function(){return this.data[this.offset++]}},i=r.data.length,a={data:[],offset:0,writeByte:function(l){var u=Math.floor(this.offset/i);this.data[u]||(this.data[u]=new Uint8Array(i)),this.data[u][this.offset%i]=l,this.offset++}};n.decompressFile(r,a);for(var o=new Uint8Array(a.offset),s=0;s<a.offset;s++)o[s]=a.data[Math.floor(s/i)][s%i];e(null,o)}catch(l){e(l)}}function Vd(n,t,e){var r=24;try{var i=new WebAssembly.Memory({initial:16}),a=new WebAssembly.Module(n),o=new WebAssembly.Instance(a,{env:{memory:i,abort:function(){e(new Error("webAssembly abort"))}}}),s=o.exports,l=s.newU8Array(t.length),u=new Uint8Array(i.buffer,l+r,t.length);u.set(t);var c=s.decode(l),f=new Uint32Array(i.buffer,c,4),A=f[0],p=f[2],y=f[3];A?e(null,new Uint8Array(i.buffer,y+r,p).slice(0,p)):e(new Error("lzma deocder error"))}catch(v){e(v)}}var Nd=`
|
|
883
|
+
`,Xo="KHR_texture_basisu",Ad=function(n){de(t,n);function t(){return n!==null&&n.apply(this,arguments)||this}return t.prototype.loadTexture=function(e,r){var i=r.json.textures[e];if(!i.extensions||!i.extensions[Xo])return null;var a=i.extensions[Xo],o=r.json.images[a.source],s=null;if(o.bufferView!==void 0)s=r.loadBufferView(o.bufferView).then(function(l){return kn.parse(l)});else if(o.uri)s=r.options.fetcher.ajax(r.resolveResouce(o.uri),{responseType:"arraybuffer"}).then(function(l){return kn.parse(l.body)});else throw new Error("glTF: Invalid image defs.");return s},t}(Er),_o="KHR_texture_transform",md=function(n){de(t,n);function t(){return n!==null&&n.apply(this,arguments)||this}return t.prototype.extendTexture=function(e,r,i){var a=r.extensions!==void 0?r.extensions[_o]:void 0;return a?(a.texCoord!==void 0&&console.warn('glTF: Custom UV sets in "'+_o+'" extension not yet supported.'),a.offset===void 0&&a.rotation===void 0&&a.scale===void 0||(e=e.clone(),e.needsUpdate=!0,a.offset!==void 0&&e.offset.fromArray(a.offset),a.rotation!==void 0&&(e.rotation=a.rotation),a.scale!==void 0&&e.repeat.fromArray(a.scale)),e):null},t}(Er),gd=function(n){de(t,n);function t(){return n!==null&&n.apply(this,arguments)||this}return t}(Er),Wi=function(){var n="b9H79Tebbbe8Fv9Gbb9Gvuuuuueu9Giuuub9Geueu9Giuuueuikqbeeedddillviebeoweuec:q;iekr;leDo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9KW9J9V9KW9wWVtW949c919M9MWVbeY9TW79O9V9Wt9F9KW9J9V9KW69U9KW949c919M9MWVbdE9TW79O9V9Wt9F9KW9J9V9KW69U9KW949tWG91W9U9JWbiL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9p9JtblK9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9r919HtbvL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVT949Wbol79IV9Rbrq:78Yqdbk:qzezu8Jjjjjbcj;eb9Rgv8Kjjjjbc9:hodnadcefal0mbcuhoaiRbbc:Ge9hmbavaialfgrad9Radz1jjjbhwcj;abad9UhlaicefhodnadTmbalc;WFbGglcjdalcjd6EhDcbhqinaqae9pmeaDaeaq9RaqaDfae6Egkcsfglcl4cifcd4hxdndndndnalc9WGgmTmbcbhPcehsawcjdfhzaohHinaraH9Rax6midnaraHaxfgo9RcK6mbczhlinalgic9Wfglawcj;cbffhOdndndndndnaHalco4fRbbalci4coG4ciGPlbedibkaO9cb83ibaOcwf9cb83ibxikaOaoRblaoRbbgAco4glalciSgCE86bbawcj;cbfaifglcGfaoclfaCfgORbbaAcl4ciGgCaCciSgCE86bbalcVfaOaCfgORbbaAcd4ciGgCaCciSgCE86bbalc7faOaCfgORbbaAciGgAaAciSgAE86bbalctfaOaAfgARbbaoRbegOco4gCaCciSgCE86bbalc91faAaCfgARbbaOcl4ciGgCaCciSgCE86bbalc4faAaCfgARbbaOcd4ciGgCaCciSgCE86bbalc93faAaCfgARbbaOciGgOaOciSgOE86bbalc94faAaOfgARbbaoRbdgOco4gCaCciSgCE86bbalc95faAaCfgARbbaOcl4ciGgCaCciSgCE86bbalc96faAaCfgARbbaOcd4ciGgCaCciSgCE86bbalc97faAaCfgARbbaOciGgOaOciSgOE86bbalc98faAaOfgORbbaoRbigoco4gAaAciSgAE86bbalc99faOaAfgORbbaocl4ciGgAaAciSgAE86bbalc9:faOaAfgORbbaocd4ciGgAaAciSgAE86bbalcufaOaAfglRbbaociGgoaociSgoE86bbalaofhoxdkaOaoRbwaoRbbgAcl4glalcsSgCE86bbawcj;cbfaifglcGfaocwfaCfgORbbaAcsGgAaAcsSgAE86bbalcVfaOaAfgORbbaoRbegAcl4gCaCcsSgCE86bbalc7faOaCfgORbbaAcsGgAaAcsSgAE86bbalctfaOaAfgORbbaoRbdgAcl4gCaCcsSgCE86bbalc91faOaCfgORbbaAcsGgAaAcsSgAE86bbalc4faOaAfgORbbaoRbigAcl4gCaCcsSgCE86bbalc93faOaCfgORbbaAcsGgAaAcsSgAE86bbalc94faOaAfgORbbaoRblgAcl4gCaCcsSgCE86bbalc95faOaCfgORbbaAcsGgAaAcsSgAE86bbalc96faOaAfgORbbaoRbvgAcl4gCaCcsSgCE86bbalc97faOaCfgORbbaAcsGgAaAcsSgAE86bbalc98faOaAfgORbbaoRbogAcl4gCaCcsSgCE86bbalc99faOaCfgORbbaAcsGgAaAcsSgAE86bbalc9:faOaAfgORbbaoRbrgocl4gAaAcsSgAE86bbalcufaOaAfglRbbaocsGgoaocsSgoE86bbalaofhoxekaOao8Pbb83bbaOcwfaocwf8Pbb83bbaoczfhokdnaiam9pmbaiczfhlarao9RcL0mekkaiam6miaoTmidnakTmbawaPfRbbhOawcj;cbfhlazhiakhHinaialRbbgAce4cbaAceG9R7aOfgO86bbaiadfhialcefhlaHcufgHmbkkazcefhzaPcefgPad6hsaohHaPad9hmexvkkcbhoasceGmdxikaoaxad2fhPdnakTmbcbhmcehsawcjdfhCinarao9Rax6miaoTmdaoaxfhoawamfRbbhOawcj;cbfhlaChiakhHinaialRbbgAce4cbaAceG9R7aOfgO86bbaiadfhialcefhlaHcufgHmbkaCcefhCamcefgmad6hsamad9hmbkaPhoxikcbhlcehsinarao9Rax6mdaoTmeaoaxfhoalcefglad6hsadal9hmbkaPhoxdkcbhoasceGTmekc9:hoxikabaqad2fawcjdfakad2z1jjjb8Aawawcjdfakcufad2fadz1jjjb8Aakaqfhqaombkc9:hoxekcbc99arao9Radcaadca0ESEhokavcj;ebf8Kjjjjbaok;xzeHu8Jjjjjbc;ae9Rgv8Kjjjjbc9:hodnaeci9UgrcHfal0mbcuhoaiRbbgwc;WeGc;Ge9hmbawcsGgDce0mbavc;abfcFecjez:jjjjb8AavcUf9cu83ibavc8Wf9cu83ibavcyf9cu83ibavcaf9cu83ibavcKf9cu83ibavczf9cu83ibav9cu83iwav9cu83ibaialfc9WfhqaicefgwarfhodnaeTmbcmcsaDceSEhkcbhxcbhmcbhrcbhicbhlindnaoaq9nmbc9:hoxikdndnawRbbgDc;Ve0mbavc;abfalaDcu7gPcl4fcsGcitfgsydlhzasydbhHdnaDcsGgDak9pmbavaiaPfcsGcdtfydbaxaDEhsaDThDdndnadcd9hmbabarcetfgPaH87ebaPcdfaz87ebaPclfas87ebxekabarcdtfgPaHBdbaPclfazBdbaPcwfasBdbkaxaDfhxavc;abfalcitfgPasBdbaPazBdlavaicdtfasBdbavc;abfalcefcsGglcitfgPaHBdbaPasBdlaiaDfhialcefhlxdkdndnaDcsSmbamaDfaDc987fcefhmxekaocefhDao8SbbgscFeGhPdndnascu9mmbaDhoxekaocvfhoaPcFbGhPcrhsdninaD8SbbgOcFbGastaPVhPaOcu9kmeaDcefhDascrfgsc8J9hmbxdkkaDcefhokaPce4cbaPceG9R7amfhmkdndnadcd9hmbabarcetfgDaH87ebaDcdfaz87ebaDclfam87ebxekabarcdtfgDaHBdbaDclfazBdbaDcwfamBdbkavc;abfalcitfgDamBdbaDazBdlavaicdtfamBdbavc;abfalcefcsGglcitfgDaHBdbaDamBdlaicefhialcefhlxekdnaDcpe0mbaxcefgOavaiaqaDcsGfRbbgscl49RcsGcdtfydbascz6gPEhDavaias9RcsGcdtfydbaOaPfgzascsGgOEhsaOThOdndnadcd9hmbabarcetfgHax87ebaHcdfaD87ebaHclfas87ebxekabarcdtfgHaxBdbaHclfaDBdbaHcwfasBdbkavaicdtfaxBdbavc;abfalcitfgHaDBdbaHaxBdlavaicefgicsGcdtfaDBdbavc;abfalcefcsGcitfgHasBdbaHaDBdlavaiaPfcsGgicdtfasBdbavc;abfalcdfcsGglcitfgDaxBdbaDasBdlalcefhlaiaOfhiazaOfhxxekaxcbaoRbbgHEgAaDc;:eSgDfhzaHcsGhCaHcl4hXdndnaHcs0mbazcefhOxekazhOavaiaX9RcsGcdtfydbhzkdndnaCmbaOcefhxxekaOhxavaiaH9RcsGcdtfydbhOkdndnaDTmbaocefhDxekaocdfhDao8SbegPcFeGhsdnaPcu9kmbaocofhAascFbGhscrhodninaD8SbbgPcFbGaotasVhsaPcu9kmeaDcefhDaocrfgoc8J9hmbkaAhDxekaDcefhDkasce4cbasceG9R7amfgmhAkdndnaXcsSmbaDhsxekaDcefhsaD8SbbgocFeGhPdnaocu9kmbaDcvfhzaPcFbGhPcrhodninas8SbbgDcFbGaotaPVhPaDcu9kmeascefhsaocrfgoc8J9hmbkazhsxekascefhskaPce4cbaPceG9R7amfgmhzkdndnaCcsSmbashoxekascefhoas8SbbgDcFeGhPdnaDcu9kmbascvfhOaPcFbGhPcrhDdninao8SbbgscFbGaDtaPVhPascu9kmeaocefhoaDcrfgDc8J9hmbkaOhoxekaocefhokaPce4cbaPceG9R7amfgmhOkdndnadcd9hmbabarcetfgDaA87ebaDcdfaz87ebaDclfaO87ebxekabarcdtfgDaABdbaDclfazBdbaDcwfaOBdbkavc;abfalcitfgDazBdbaDaABdlavaicdtfaABdbavc;abfalcefcsGcitfgDaOBdbaDazBdlavaicefgicsGcdtfazBdbavc;abfalcdfcsGcitfgDaABdbaDaOBdlavaiaHcz6aXcsSVfgicsGcdtfaOBdbaiaCTaCcsSVfhialcifhlkawcefhwalcsGhlaicsGhiarcifgrae6mbkkcbc99aoaqSEhokavc;aef8Kjjjjbaok:flevu8Jjjjjbcz9Rhvc9:hodnaecvfal0mbcuhoaiRbbc;:eGc;qe9hmbav9cb83iwaicefhraialfc98fhwdnaeTmbdnadcdSmbcbhDindnaraw6mbc9:skarcefhoar8SbbglcFeGhidndnalcu9mmbaohrxekarcvfhraicFbGhicrhldninao8SbbgdcFbGaltaiVhiadcu9kmeaocefhoalcrfglc8J9hmbxdkkaocefhrkabaDcdtfaic8Etc8F91aicd47avcwfaiceGcdtVgoydbfglBdbaoalBdbaDcefgDae9hmbxdkkcbhDindnaraw6mbc9:skarcefhoar8SbbglcFeGhidndnalcu9mmbaohrxekarcvfhraicFbGhicrhldninao8SbbgdcFbGaltaiVhiadcu9kmeaocefhoalcrfglc8J9hmbxdkkaocefhrkabaDcetfaic8Etc8F91aicd47avcwfaiceGcdtVgoydbfgl87ebaoalBdbaDcefgDae9hmbkkcbc99arawSEhokaok:Lvoeue99dud99eud99dndnadcl9hmbaeTmeindndnabcdfgd8Sbb:Yab8Sbbgi:Ygl:l:tabcefgv8Sbbgo:Ygr:l:tgwJbb;:9cawawNJbbbbawawJbbbb9GgDEgq:mgkaqaicb9iEalMgwawNakaqaocb9iEarMgqaqNMM:r:vglNJbbbZJbbb:;aDEMgr:lJbbb9p9DTmbar:Ohixekcjjjj94hikadai86bbdndnaqalNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:Ohdxekcjjjj94hdkavad86bbdndnawalNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohdxekcjjjj94hdkabad86bbabclfhbaecufgembxdkkaeTmbindndnabclfgd8Ueb:Yab8Uebgi:Ygl:l:tabcdfgv8Uebgo:Ygr:l:tgwJb;:FSawawNJbbbbawawJbbbb9GgDEgq:mgkaqaicb9iEalMgwawNakaqaocb9iEarMgqaqNMM:r:vglNJbbbZJbbb:;aDEMgr:lJbbb9p9DTmbar:Ohixekcjjjj94hikadai87ebdndnaqalNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:Ohdxekcjjjj94hdkavad87ebdndnawalNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohdxekcjjjj94hdkabad87ebabcwfhbaecufgembkkk;siliui99iue99dnaeTmbcbhiabhlindndnJ;Zl81Zalcof8UebgvciV:Y:vgoal8Ueb:YNgrJb;:FSNJbbbZJbbb:;arJbbbb9GEMgw:lJbbb9p9DTmbaw:OhDxekcjjjj94hDkalclf8Uebhqalcdf8UebhkabavcefciGaiVcetfaD87ebdndnaoak:YNgwJb;:FSNJbbbZJbbb:;awJbbbb9GEMgx:lJbbb9p9DTmbax:Ohkxekcjjjj94hkkabavcdfciGaiVcetfak87ebdndnaoaq:YNgoJb;:FSNJbbbZJbbb:;aoJbbbb9GEMgx:lJbbb9p9DTmbax:Ohqxekcjjjj94hqkabavcufciGaiVcetfaq87ebdndnJbbjZararN:tawawN:taoaoN:tgrJbbbbarJbbbb9GE:rJb;:FSNJbbbZMgr:lJbbb9p9DTmbar:Ohqxekcjjjj94hqkabavciGaiVcetfaq87ebalcwfhlaiclfhiaecufgembkkk9mbdnadcd4ae2gdTmbinababydbgecwtcw91:Yaece91cjjj;8ifcjjj98G::NUdbabclfhbadcufgdmbkkk9teiucbcbydj1jjbgeabcifc98GfgbBdj1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;LeeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiclfaeclfydbBdbaicwfaecwfydbBdbaicxfaecxfydbBdbaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk;aeedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdbaicxfalBdbaicwfalBdbaiclfalBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabkkkebcjwklz9Kbb",t="b9H79TebbbeKl9Gbb9Gvuuuuueu9Giuuub9Geueuikqbbebeedddilve9Weeeviebeoweuec:q;Aekr;leDo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9KW9J9V9KW9wWVtW949c919M9MWVbdY9TW79O9V9Wt9F9KW9J9V9KW69U9KW949c919M9MWVblE9TW79O9V9Wt9F9KW9J9V9KW69U9KW949tWG91W9U9JWbvL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9p9JtboK9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9r919HtbrL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVT949Wbwl79IV9RbDq;a9tqlbzik9:evu8Jjjjjbcz9Rhbcbheincbhdcbhiinabcwfadfaicjuaead4ceGglE86bbaialfhiadcefgdcw9hmbkaec:q:yjjbfai86bbaecitc:q1jjbfab8Piw83ibaecefgecjd9hmbkk;d8JlHud97euo978Jjjjjbcj;kb9Rgv8Kjjjjbc9:hodnadcefal0mbcuhoaiRbbc:Ge9hmbavaialfgrad9Rad;8qbbcj;abad9UhoaicefhldnadTmbaoc;WFbGgocjdaocjd6EhwcbhDinaDae9pmeawaeaD9RaDawfae6Egqcsfgoc9WGgkci2hxakcethmaocl4cifcd4hPabaDad2fhscbhzdnincehHalhOcbhAdninaraO9RaP6miavcj;cbfaAak2fhCaOaPfhlcbhidnakc;ab6mbaral9Rc;Gb6mbcbhoinaCaofhidndndndndnaOaoco4fRbbgXciGPlbedibkaipxbbbbbbbbbbbbbbbbpklbxikaialpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklbalclfaYpQbfaKc:q:yjjbfRbbfhlxdkaialpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklbalcwfaYpQbfaKc:q:yjjbfRbbfhlxekaialpbbbpklbalczfhlkdndndndndnaXcd4ciGPlbedibkaipxbbbbbbbbbbbbbbbbpklzxikaialpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklzalclfaYpQbfaKc:q:yjjbfRbbfhlxdkaialpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklzalcwfaYpQbfaKc:q:yjjbfRbbfhlxekaialpbbbpklzalczfhlkdndndndndnaXcl4ciGPlbedibkaipxbbbbbbbbbbbbbbbbpklaxikaialpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklaalclfaYpQbfaKc:q:yjjbfRbbfhlxdkaialpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklaalcwfaYpQbfaKc:q:yjjbfRbbfhlxekaialpbbbpklaalczfhlkdndndndndnaXco4Plbedibkaipxbbbbbbbbbbbbbbbbpkl8WxikaialpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgXcitc:q1jjbfpbibaXc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgXcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spkl8WalclfaYpQbfaXc:q:yjjbfRbbfhlxdkaialpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgXcitc:q1jjbfpbibaXc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgXcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spkl8WalcwfaYpQbfaXc:q:yjjbfRbbfhlxekaialpbbbpkl8Walczfhlkaoc;abfhiaocjefak0meaihoaral9Rc;Fb0mbkkdndnaiak9pmbaici4hoinaral9RcK6mdaCaifhXdndndndndnaOaico4fRbbaocoG4ciGPlbedibkaXpxbbbbbbbbbbbbbbbbpklbxikaXalpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklbalclfaYpQbfaKc:q:yjjbfRbbfhlxdkaXalpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklbalcwfaYpQbfaKc:q:yjjbfRbbfhlxekaXalpbbbpklbalczfhlkaocdfhoaiczfgiak6mbkkalTmbaAci6hHalhOaAcefgAclSmdxekkcbhlaHceGmdkdnakTmbavcjdfazfhiavazfpbdbhYcbhXinaiavcj;cbfaXfgopblbgLcep9TaLpxeeeeeeeeeeeeeeeegQp9op9Hp9rgLaoakfpblbg8Acep9Ta8AaQp9op9Hp9rg8ApmbzeHdOiAlCvXoQrLgEaoamfpblbg3cep9Ta3aQp9op9Hp9rg3aoaxfpblbg5cep9Ta5aQp9op9Hp9rg5pmbzeHdOiAlCvXoQrLg8EpmbezHdiOAlvCXorQLgQaQpmbedibedibedibediaYp9UgYp9AdbbaiadfgoaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaoadfgoaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaoadfgoaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaoadfgoaYaEa8EpmwDKYqk8AExm35Ps8E8FgQaQpmbedibedibedibedip9UgYp9AdbbaoadfgoaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaoadfgoaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaoadfgoaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaoadfgoaYaLa8ApmwKDYq8AkEx3m5P8Es8FgLa3a5pmwKDYq8AkEx3m5P8Es8Fg8ApmbezHdiOAlvCXorQLgQaQpmbedibedibedibedip9UgYp9AdbbaoadfgoaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaoadfgoaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaoadfgoaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaoadfgoaYaLa8ApmwDKYqk8AExm35Ps8E8FgQaQpmbedibedibedibedip9UgYp9AdbbaoadfgoaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaoadfgoaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaoadfgoaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaoadfhiaXczfgXak6mbkkazclfgzad6mbkasavcjdfaqad2;8qbbavavcjdfaqcufad2fad;8qbbaqaDfhDc9:hoalmexikkc9:hoxekcbc99aral9Radcaadca0ESEhokavcj;kbf8Kjjjjbaokwbz:bjjjbk;tzeHu8Jjjjjbc;ae9Rgv8Kjjjjbc9:hodnaeci9UgrcHfal0mbcuhoaiRbbgwc;WeGc;Ge9hmbawcsGgDce0mbavc;abfcFecje;8kbavcUf9cu83ibavc8Wf9cu83ibavcyf9cu83ibavcaf9cu83ibavcKf9cu83ibavczf9cu83ibav9cu83iwav9cu83ibaialfc9WfhqaicefgwarfhodnaeTmbcmcsaDceSEhkcbhxcbhmcbhrcbhicbhlindnaoaq9nmbc9:hoxikdndnawRbbgDc;Ve0mbavc;abfalaDcu7gPcl4fcsGcitfgsydlhzasydbhHdnaDcsGgDak9pmbavaiaPfcsGcdtfydbaxaDEhsaDThDdndnadcd9hmbabarcetfgPaH87ebaPcdfaz87ebaPclfas87ebxekabarcdtfgPaHBdbaPclfazBdbaPcwfasBdbkaxaDfhxavc;abfalcitfgPasBdbaPazBdlavaicdtfasBdbavc;abfalcefcsGglcitfgPaHBdbaPasBdlaiaDfhialcefhlxdkdndnaDcsSmbamaDfaDc987fcefhmxekaocefhDao8SbbgscFeGhPdndnascu9mmbaDhoxekaocvfhoaPcFbGhPcrhsdninaD8SbbgOcFbGastaPVhPaOcu9kmeaDcefhDascrfgsc8J9hmbxdkkaDcefhokaPce4cbaPceG9R7amfhmkdndnadcd9hmbabarcetfgDaH87ebaDcdfaz87ebaDclfam87ebxekabarcdtfgDaHBdbaDclfazBdbaDcwfamBdbkavc;abfalcitfgDamBdbaDazBdlavaicdtfamBdbavc;abfalcefcsGglcitfgDaHBdbaDamBdlaicefhialcefhlxekdnaDcpe0mbaxcefgOavaiaqaDcsGfRbbgscl49RcsGcdtfydbascz6gPEhDavaias9RcsGcdtfydbaOaPfgzascsGgOEhsaOThOdndnadcd9hmbabarcetfgHax87ebaHcdfaD87ebaHclfas87ebxekabarcdtfgHaxBdbaHclfaDBdbaHcwfasBdbkavaicdtfaxBdbavc;abfalcitfgHaDBdbaHaxBdlavaicefgicsGcdtfaDBdbavc;abfalcefcsGcitfgHasBdbaHaDBdlavaiaPfcsGgicdtfasBdbavc;abfalcdfcsGglcitfgDaxBdbaDasBdlalcefhlaiaOfhiazaOfhxxekaxcbaoRbbgHEgAaDc;:eSgDfhzaHcsGhCaHcl4hXdndnaHcs0mbazcefhOxekazhOavaiaX9RcsGcdtfydbhzkdndnaCmbaOcefhxxekaOhxavaiaH9RcsGcdtfydbhOkdndnaDTmbaocefhDxekaocdfhDao8SbegPcFeGhsdnaPcu9kmbaocofhAascFbGhscrhodninaD8SbbgPcFbGaotasVhsaPcu9kmeaDcefhDaocrfgoc8J9hmbkaAhDxekaDcefhDkasce4cbasceG9R7amfgmhAkdndnaXcsSmbaDhsxekaDcefhsaD8SbbgocFeGhPdnaocu9kmbaDcvfhzaPcFbGhPcrhodninas8SbbgDcFbGaotaPVhPaDcu9kmeascefhsaocrfgoc8J9hmbkazhsxekascefhskaPce4cbaPceG9R7amfgmhzkdndnaCcsSmbashoxekascefhoas8SbbgDcFeGhPdnaDcu9kmbascvfhOaPcFbGhPcrhDdninao8SbbgscFbGaDtaPVhPascu9kmeaocefhoaDcrfgDc8J9hmbkaOhoxekaocefhokaPce4cbaPceG9R7amfgmhOkdndnadcd9hmbabarcetfgDaA87ebaDcdfaz87ebaDclfaO87ebxekabarcdtfgDaABdbaDclfazBdbaDcwfaOBdbkavc;abfalcitfgDazBdbaDaABdlavaicdtfaABdbavc;abfalcefcsGcitfgDaOBdbaDazBdlavaicefgicsGcdtfazBdbavc;abfalcdfcsGcitfgDaABdbaDaOBdlavaiaHcz6aXcsSVfgicsGcdtfaOBdbaiaCTaCcsSVfhialcifhlkawcefhwalcsGhlaicsGhiarcifgrae6mbkkcbc99aoaqSEhokavc;aef8Kjjjjbaok:flevu8Jjjjjbcz9Rhvc9:hodnaecvfal0mbcuhoaiRbbc;:eGc;qe9hmbav9cb83iwaicefhraialfc98fhwdnaeTmbdnadcdSmbcbhDindnaraw6mbc9:skarcefhoar8SbbglcFeGhidndnalcu9mmbaohrxekarcvfhraicFbGhicrhldninao8SbbgdcFbGaltaiVhiadcu9kmeaocefhoalcrfglc8J9hmbxdkkaocefhrkabaDcdtfaic8Etc8F91aicd47avcwfaiceGcdtVgoydbfglBdbaoalBdbaDcefgDae9hmbxdkkcbhDindnaraw6mbc9:skarcefhoar8SbbglcFeGhidndnalcu9mmbaohrxekarcvfhraicFbGhicrhldninao8SbbgdcFbGaltaiVhiadcu9kmeaocefhoalcrfglc8J9hmbxdkkaocefhrkabaDcetfaic8Etc8F91aicd47avcwfaiceGcdtVgoydbfgl87ebaoalBdbaDcefgDae9hmbkkcbc99arawSEhokaok:wPliuo97eue978Jjjjjbca9Rhiaec98Ghldndnadcl9hmbdnalTmbcbhvabhdinadadpbbbgocKp:RecKp:Sep;6egraocwp:RecKp:Sep;6earp;Geaoczp:RecKp:Sep;6egwp;Gep;Kep;LegDpxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgkp9op9rp;Kegrpxbb;:9cbb;:9cbb;:9cbb;:9cararp;MeaDaDp;Meawaqawakp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFbbbFbbbFbbbFbbbp9oaopxbbbFbbbFbbbFbbbFp9op9qarawp;Meaqp;Kecwp:RepxbFbbbFbbbFbbbFbbp9op9qaDawp;Meaqp;Keczp:RepxbbFbbbFbbbFbbbFbp9op9qpkbbadczfhdavclfgval6mbkkalae9pmeaipxbbbbbbbbbbbbbbbbgqpklbaiabalcdtfgdaeciGglcdtgv;8qbbdnalTmbaiaipblbgocKp:RecKp:Sep;6egraocwp:RecKp:Sep;6earp;Geaoczp:RecKp:Sep;6egwp;Gep;Kep;LegDaqp:2egqarpxbbbjbbbjbbbjbbbjgkp9op9rp;Kegrpxbb;:9cbb;:9cbb;:9cbb;:9cararp;MeaDaDp;Meawaqawakp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFbbbFbbbFbbbFbbbp9oaopxbbbFbbbFbbbFbbbFp9op9qarawp;Meaqp;Kecwp:RepxbFbbbFbbbFbbbFbbp9op9qaDawp;Meaqp;Keczp:RepxbbFbbbFbbbFbbbFbp9op9qpklbkadaiav;8qbbskdnalTmbcbhvabhdinadczfgxaxpbbbgopxbbbbbbFFbbbbbbFFgkp9oadpbbbgDaopmlvorxmPsCXQL358E8FpxFubbFubbFubbFubbp9op;6eaDaopmbediwDqkzHOAKY8AEgoczp:Sep;6egrp;Geaoczp:Reczp:Sep;6egwp;Gep;Kep;Legopxb;:FSb;:FSb;:FSb;:FSawaopxbbbbbbbbbbbbbbbbp:2egqawpxbbbjbbbjbbbjbbbjgmp9op9rp;Kegwawp;Meaoaop;Mearaqaramp9op9rp;Kegoaop;Mep;Kep;Kep;Jep;Negrp;Mepxbbn0bbn0bbn0bbn0gqp;Keczp:Reawarp;Meaqp;KepxFFbbFFbbFFbbFFbbp9op9qgwaoarp;Meaqp;KepxFFbbFFbbFFbbFFbbp9ogopmwDKYqk8AExm35Ps8E8Fp9qpkbbadaDakp9oawaopmbezHdiOAlvCXorQLp9qpkbbadcafhdavclfgval6mbkkalae9pmbaiaeciGgvcitgdfcbcaad9R;8kbaiabalcitfglad;8qbbdnavTmbaiaipblzgopxbbbbbbFFbbbbbbFFgkp9oaipblbgDaopmlvorxmPsCXQL358E8FpxFubbFubbFubbFubbp9op;6eaDaopmbediwDqkzHOAKY8AEgoczp:Sep;6egrp;Geaoczp:Reczp:Sep;6egwp;Gep;Kep;Legopxb;:FSb;:FSb;:FSb;:FSawaopxbbbbbbbbbbbbbbbbp:2egqawpxbbbjbbbjbbbjbbbjgmp9op9rp;Kegwawp;Meaoaop;Mearaqaramp9op9rp;Kegoaop;Mep;Kep;Kep;Jep;Negrp;Mepxbbn0bbn0bbn0bbn0gqp;Keczp:Reawarp;Meaqp;KepxFFbbFFbbFFbbFFbbp9op9qgwaoarp;Meaqp;KepxFFbbFFbbFFbbFFbbp9ogopmwDKYqk8AExm35Ps8E8Fp9qpklzaiaDakp9oawaopmbezHdiOAlvCXorQLp9qpklbkalaiad;8qbbkk;4wllue97euv978Jjjjjbc8W9Rhidnaec98GglTmbcbhvabhoinaiaopbbbgraoczfgwpbbbgDpmlvorxmPsCXQL358E8Fgqczp:Segkclp:RepklbaopxbbjZbbjZbbjZbbjZpx;Zl81Z;Zl81Z;Zl81Z;Zl81Zakpxibbbibbbibbbibbbp9qp;6ep;NegkaraDpmbediwDqkzHOAKY8AEgrczp:Reczp:Sep;6ep;MegDaDp;Meakarczp:Sep;6ep;Megxaxp;Meakaqczp:Reczp:Sep;6ep;Megqaqp;Mep;Kep;Kep;Lepxbbbbbbbbbbbbbbbbp:4ep;Jepxb;:FSb;:FSb;:FSb;:FSgkp;Mepxbbn0bbn0bbn0bbn0grp;KepxFFbbFFbbFFbbFFbbgmp9oaxakp;Mearp;Keczp:Rep9qgxaqakp;Mearp;Keczp:ReaDakp;Mearp;Keamp9op9qgkpmbezHdiOAlvCXorQLgrp5baipblbpEb:T:j83ibaocwfarp5eaipblbpEe:T:j83ibawaxakpmwDKYqk8AExm35Ps8E8Fgkp5baipblbpEd:T:j83ibaocKfakp5eaipblbpEi:T:j83ibaocafhoavclfgval6mbkkdnalae9pmbaiaeciGgvcitgofcbcaao9R;8kbaiabalcitfgwao;8qbbdnavTmbaiaipblbgraipblzgDpmlvorxmPsCXQL358E8Fgqczp:Segkclp:RepklaaipxbbjZbbjZbbjZbbjZpx;Zl81Z;Zl81Z;Zl81Z;Zl81Zakpxibbbibbbibbbibbbp9qp;6ep;NegkaraDpmbediwDqkzHOAKY8AEgrczp:Reczp:Sep;6ep;MegDaDp;Meakarczp:Sep;6ep;Megxaxp;Meakaqczp:Reczp:Sep;6ep;Megqaqp;Mep;Kep;Kep;Lepxbbbbbbbbbbbbbbbbp:4ep;Jepxb;:FSb;:FSb;:FSb;:FSgkp;Mepxbbn0bbn0bbn0bbn0grp;KepxFFbbFFbbFFbbFFbbgmp9oaxakp;Mearp;Keczp:Rep9qgxaqakp;Mearp;Keczp:ReaDakp;Mearp;Keamp9op9qgkpmbezHdiOAlvCXorQLgrp5baipblapEb:T:j83ibaiarp5eaipblapEe:T:j83iwaiaxakpmwDKYqk8AExm35Ps8E8Fgkp5baipblapEd:T:j83izaiakp5eaipblapEi:T:j83iKkawaiao;8qbbkk:Pddiue978Jjjjjbc;ab9Rhidnadcd4ae2glc98GgvTmbcbheabhdinadadpbbbgocwp:Recwp:Sep;6eaocep:SepxbbjZbbjZbbjZbbjZp:UepxbbjFbbjFbbjFbbjFp9op;Mepkbbadczfhdaeclfgeav6mbkkdnaval9pmbaialciGgecdtgdVcbc;abad9R;8kbaiabavcdtfgvad;8qbbdnaeTmbaiaipblbgocwp:Recwp:Sep;6eaocep:SepxbbjZbbjZbbjZbbjZp:UepxbbjFbbjFbbjFbbjFp9op;Mepklbkavaiad;8qbbkk9teiucbcbydj1jjbgeabcifc98GfgbBdj1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaikkkebcjwklz9Tbb",e=new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,3,2,0,0,5,3,1,0,1,12,1,0,10,22,2,12,0,65,0,65,0,65,0,252,10,0,0,11,7,0,65,0,253,15,26,11]),r=new Uint8Array([32,0,65,2,1,106,34,33,3,128,11,4,13,64,6,253,10,7,15,116,127,5,8,12,40,16,19,54,20,9,27,255,113,17,42,67,24,23,146,148,18,14,22,45,70,69,56,114,101,21,25,63,75,136,108,28,118,29,73,115]);if(typeof WebAssembly!="object")return{supported:!1};var i=WebAssembly.validate(e)?t:n,a,o=WebAssembly.instantiate(s(i),{}).then(function(h){a=h.instance,a.exports.__wasm_call_ctors()});function s(h){for(var g=new Uint8Array(h.length),b=0;b<h.length;++b){var w=h.charCodeAt(b);g[b]=w>96?w-97:w>64?w-39:w+4}for(var E=0,b=0;b<h.length;++b)g[E++]=g[b]<60?r[g[b]]:(g[b]-60)*64+g[++b];return g.buffer.slice(0,E)}function l(h,g,b,w,E,C){var x=a.exports.sbrk,M=b+3&-4,S=x(M*w),P=x(E.length),I=new Uint8Array(a.exports.memory.buffer);I.set(E,P);var B=h(S,b,w,P,E.length);if(B==0&&C&&C(S,M,w),g.set(I.subarray(S,S+b*w)),x(S-x(0)),B!=0)throw new Error("Malformed buffer data: "+B)}var u={NONE:"",OCTAHEDRAL:"meshopt_decodeFilterOct",QUATERNION:"meshopt_decodeFilterQuat",EXPONENTIAL:"meshopt_decodeFilterExp"},c={ATTRIBUTES:"meshopt_decodeVertexBuffer",TRIANGLES:"meshopt_decodeIndexBuffer",INDICES:"meshopt_decodeIndexSequence"},f=[],A=0;function p(h){var g={object:new Worker(h),pending:0,requests:{}};return g.object.onmessage=function(b){var w=b.data;g.pending-=w.count,g.requests[w.id][w.action](w.value),delete g.requests[w.id]},g}function y(h){for(var g="var instance; var ready = WebAssembly.instantiate(new Uint8Array(["+new Uint8Array(s(i))+"]), {}).then(function(result) { instance = result.instance; instance.exports.__wasm_call_ctors(); });self.onmessage = workerProcess;"+l.toString()+m.toString(),b=new Blob([g],{type:"text/javascript"}),w=URL.createObjectURL(b),E=0;E<h;++E)f[E]=p(w);URL.revokeObjectURL(w)}function v(h,g,b,w,E){for(var C=f[0],x=1;x<f.length;++x)f[x].pending<C.pending&&(C=f[x]);return new Promise(function(M,S){var P=new Uint8Array(b),I=A++;C.pending+=h,C.requests[I]={resolve:M,reject:S},C.object.postMessage({id:I,count:h,size:g,source:P,mode:w,filter:E},[P.buffer])})}function m(h){o.then(function(){var g=h.data;try{var b=new Uint8Array(g.count*g.size);l(a.exports[g.mode],b,g.count,g.size,g.source,a.exports[g.filter]),self.postMessage({id:g.id,count:g.count,action:"resolve",value:b},[b.buffer])}catch(w){self.postMessage({id:g.id,count:g.count,action:"reject",value:w})}})}return{ready:o,supported:!0,useWorkers:function(h){y(h)},decodeVertexBuffer:function(h,g,b,w,E){l(a.exports.meshopt_decodeVertexBuffer,h,g,b,w,a.exports[u[E]])},decodeIndexBuffer:function(h,g,b,w){l(a.exports.meshopt_decodeIndexBuffer,h,g,b,w)},decodeIndexSequence:function(h,g,b,w){l(a.exports.meshopt_decodeIndexSequence,h,g,b,w)},decodeGltfBuffer:function(h,g,b,w,E,C){l(a.exports[c[E]],h,g,b,w,a.exports[u[C]])},decodeGltfBufferAsync:function(h,g,b,w,E){return f.length>0?v(h,g,b,c[w],u[E]):o.then(function(){var C=new Uint8Array(h*g);return l(a.exports[c[w]],C,h,g,b,a.exports[u[E]]),C})}}}(),Xi="EXT_meshopt_compression",yd=function(n){de(t,n);function t(){return n!==null&&n.apply(this,arguments)||this}return t.prototype.loadBufferView=function(e,r){var i=r.json,a=i.bufferViews[e];if(a.extensions&&a.extensions[Xi]){var o=a.extensions[Xi],s=r.loadBuffer(o.buffer);if(!Wi.supported){if(i.extensionsRequired&&i.extensionsRequired.indexOf(Xi)>=0)throw new Error("THREE.GLTFLoader: setMeshoptDecoder must be called before loading compressed files");return null}return Promise.all([s,Wi.ready]).then(function(l){var u=l[0],c=o.byteOffset||0,f=o.byteLength||0,A=o.count,p=o.byteStride,y=new ArrayBuffer(A*p),v=new Uint8Array(u,c,f);return Wi.decodeGltfBuffer(new Uint8Array(y),A,p,v,o.mode,o.filter),y})}else return null},t}(Er),Zo="EXT_texture_webp",bd=function(n){de(t,n);function t(){var e=n!==null&&n.apply(this,arguments)||this;return e.supportsWep=!1,e}return t.prototype.prepare=function(e){var r=this;return $s().then(function(i){r.supportsWep=i.webp})},t.prototype.loadTexture=function(e,r){var i=r.json,a=i.textures[e];if(!a.extensions||!a.extensions[Zo]||!this.supportsWep)return null;var o=a.extensions[Zo];return r.loadImage(o.source).then(function(s){var l=new d.Texture(s);l.needsUpdate=!0,l.flipY=!1,a.name&&(l.name=a.name);var u=r.json.samplers||{},c=u[a.sampler]||{};return l.magFilter=Ai[c.magFilter]||d.LinearFilter,l.minFilter=Ai[c.minFilter]||d.LinearMipmapLinearFilter,l.wrapS=mi[c.wrapS]||d.RepeatWrapping,l.wrapT=mi[c.wrapT]||d.RepeatWrapping,l.onUpdate=function(){s.close()},l})},t}(Er),_i="CESIUM_RTC",wd=function(n){de(t,n);function t(){return n!==null&&n.apply(this,arguments)||this}return t.prototype.emitResult=function(e,r){if(r.json.extensions[_i]&&r.json.extensions[_i].center){var i=r.json.extensions[_i].center;e.CESIUM_RTC={center:new d.Vector3().fromArray(i)}}},t}(Er);const Ed=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var r=113,i=126,a=0,o="";return t[a].split(o).map(function(s){return s.charCodeAt(a)>i?s:String.fromCharCode((s.charCodeAt(a)+r)%i)}).join(o)}("{vs|z-sy|n-|}npv\bH{vs|z-sy|n-z|qryNy}unH{vs|z-sy|n-u|{Sy||V{qr\x07H0vs-qrsv{rq5b`RlP\\[`aN[alP\\Y\\_6--{vs|z-rp@-p|{n{P|y|H0r{qvs0vs-qrsv{rq5b`Rl]\\V[al[\\_ZNY6n\bv{t-rp@-[|znyH0r{qvs0vs-qrsv{rq5b`RlcR_aRelSY\\\\_6--n\bv{t-sy|n-Sy||H0ryr--{vs|z-sy|n-sy||H0r{qvsn\bv{t-rpA-|yq]|vv|{Hn\bv{t-rp@-P|y|Hn\bv{t-sy|n-Y|tQr}uHn\bv{t-sy|n-]|v{`v rHp-Pyv}}r-\n--znA-znv\x07V{rrH--sy|n-sy||V{qr\x07H\fH0vs-[bZlPYV]]R_`-K-=--{vs|z-Pyv}}r-pyv}}rh[bZlPYV]]R_`jH0r{qvs|vq-znv{56-\n--sy|n-ory|{tv{tSY||-J-=;=H--0vs-qrsv{rq5b`RlcR_aRelSY\\\\_6----ory|{tv{tSY||-J-Sy||H--0ryr----ory|{tv{tSY||-J-sy||H--0r{qvs--<<前置裁切计算--0vs-[bZlPYV]]R_`-K-=----o||y-pyv}}rqH----rpA-pyv}}r]|vv|{H----0}ntzn-{|yyly||}ln----s|-5-v{-v-J-=H-v-I-[bZlPYV]]R_`H-v-88-6-\n------pyv}}r]|vv|{-J-pyv}}rh-v-j;znv\x07V{rr-7-|yq]|vv|{H------pyv}}rq-J-5pyv}}rh-v-j;sy||V{qr\x07-I-=;=-\v\v-no5ory|{tv{tSY||-:-pyv}}rh-v-j;sy||V{qr\x076-I->;=6H------pyv}}rq-J-pyv}}rq-33-pyv}}r]|vv|{;\x07-K-:=;B-33-pyv}}r]|vv|{;\x07-I-=;BH------pyv}}rq-J-pyv}}rq-33-pyv}}r]|vv|{;\b-K-:=;B-33-pyv}}r]|vv|{;\b-I-=;BH------pyv}}rq-J-pyv}}rq-33-pyv}}r]|vv|{; -K-:=;B-33-pyv}}r]|vv|{; -I-=;BH------vs-5pyv}}rq6-\n--------qvpnqH------\f----\f----0}ntzn-{|yyly||}lr{q--0r{qvs--<<楼层选择计算--sy|n-sy||\\}npv\b-J->;=H--vs-5u|{Sy||V{qr\x07-KJ-=;=-33-no5ory|{tv{tSY||-:-u|{Sy||V{qr\x076-KJ->;=6-\n----sy||\\}npv\b-J-=;>H--\f--rp@-sv{nyP|y|-J-P|y|H--0vs-qrsv{rq5b`Rl]\\V[al[\\_ZNY6----0vs-qrsv{rq5b`Rl]\\V[alONPXlUVQQR[6------rp@-pnzrnQvrpv|{-J-{|znyv r5pnzrn]|vv|{-:-|yq]|vv|{;\x07\b 6H------vs-5q|5pnzrnQvrpv|{9-[|zny6-I-=;=6-\n--------qvpnqH------\f----0ryvs-qrsv{rq5b`Rl]\\V[alONPXlQN_X6------rp@-pnzrnQvrpv|{-J-{|znyv r5pnzrn]|vv|{-:-|yq]|vv|{;\x07\b 6H------vs-5q|5pnzrnQvrpv|{9-[|zny6-I-=;=6-\n--------sv{nyP|y|-J-sv{nyP|y|-7-=;EH------\f----0r{qvs--0r{qvs--0vs-qrsv{rq5b`Rl]\\V[al`UN]RlPV_PYR6----sy|n--J-?;=-7-tyl]|v{P||q;\x07-:->;=H----sy|n--J-?;=-7-tyl]|v{P||q;\b-:->;=H----sy|n-pp-J-7-8-7H----vs-5]|v{`v r-K-E;=-33-pp-K->;=6-\n------qvpnqH----\f--0r{qvs--0vs-qrsv{rq5b`RlP\\[`aN[alP\\Y\\_6----tylSntP|y|-J-rpA5p|{n{P|y|;9-p|{n{P|y|;t9-p|{n{P|y|;o9->;=6H--0ryr----tylSntP|y|-J-rpA5sv{nyP|y|9-z|qryNy}un-7-|}npv\b-7-sy||\\}npv\b6H--0r{qvs--0vs-qrsv{rq5b`RlRQY6----tylSntP|y|;n-J-Y|tQr}uH--0r{qvs--0vs-qrsv{rq5b`RlU^ldRVTUa6----sy|n-qvn{pr-J-?;=-7-yr{tu5tyl]|v{P||q;\x07\b-:-=;B6H----sy|n-rvtu-J-zn\x075=;=9->;=-:-qvn{pr6H----rvtu-J-}|5rvtu9->;B6H----tylSntP|y|;n-J-rvtuH----tylSntP|y|;\x07\b -J-tylSntP|y|;\x07\b -7-rvtuH--0r{qvs\f"),xd=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var r=113,i=126,a=0,o="";return t[a].split(o).map(function(s){return s.charCodeAt(a)>i?s:String.fromCharCode((s.charCodeAt(a)+r)%i)}).join(o)}("nvor-rp@-p|y|H0vs-qrsv{rq5b`RlcR_aRelSY\\\\_6--nvor-sy|n-sy||H--n\bv{t-sy|n-Sy||H0r{qvs{vs|z-rp?-r|yv|{H{vs|z-sy|n-}v\x07ry_nv|H{vs|z-sy|n-}|v{`pnyrH{vs|z-sy|n-}|v{Zv{]v\x07ryH{vs|z-sy|n-}|v{Zn\x07]v\x07ryH{vs|z-sy|n-|}npv\bH{vs|z-sy|n-tr|zrvpR|H0vs-qrsv{rq5b`Rl]\\V[alP\\Y\\_lNYaVabQR6--{vs|z-nz}yr?Q-tnqvr{ar\x07rH0r{qvsn\bv{t-rpA-|yq]|vv|{Hn\bv{t-rp@-P|y|H0vs-qrsv{rq5b`Rl]\\V[al[\\_ZNY6--n\bv{t-rp@-[|znyH0r{qvs0vs-qrsv{rq5b`RlRQY6--n\bv{t-sy|n-Y|tQr}uH0r{qvsn\bv{t-sy|n-]|v{`v rH0qrsv{r-]V-@;>A>BF?CB@BEFDF@rp@-_TOa|Yv{rn5-rp@-nyr-6-\n--r{-rp@5-zv\x075-}|5-nyr;to-7-=;FADECD?FEC-8-rp@5-=;=B?>@?D=>A-69-rp@5-?;A-6-69-nyr;to-7-=;=DD@FF@E=E9-rp@5-yraun{R\0ny5-nyr;to9-rp@5-=;=A=AB-6-6-6-66H\frp@-Yv{rna|_TO5-rp@-nyr-6-\nr{-rp@5-zv\x075-}|5-nyr;to9-rp@5-=;A>CCC-6-6-7->;=BB-:-rp@5-=;=BB-69-nyr;to-7->?;F?9-rp@5-yraun{R\0ny5-nyr;to9-rp@5-=;==@>@=E-6-6-6-66H\frp@-trP|y|O\bUrvtu5nz}yr?Q-tnqvr{ar\x07r9-rpA-|yq]|vv|{6-\n--r{-r\x07r?Q5tnqvr{ar\x07r9-rp?5|yq]|vv|{;\b-<->=;=9-=;B66;toH\f|vq-znv{56-\n--rpA-n{s|zrq-J-rpA5}|vv|{9->;=6H--rpA-z]|vv|{-J-z|qrycvrZnv\x07-7-n{s|zrqH--|yq]|vv|{-J-z|qryZnv\x07-7-n{s|zrqH--0vs-qrsv{rq5b`RlcR_aRelSY\\\\_6----Sy||-J-sy||H--0r{qvs--tyl]|vv|{-J-}|wrpv|{Znv\x07-7-z]|vv|{H--<<传递nvor的p|y|到s里使用--<<动态调整}|v{`v r--sy|n-rny]|v{`v r-J-}|v{`pnyr-7-}v\x07ry_nv|H--0vs-qrsv{rq5b`Rl]\\V[al`VgRlTR\\ZRa_VP6----rny]|v{`v r-7J-tr|zrvpR|H----sy|n-urvtu-J->;=-<-}|wrpv|{Znv\x07h>jh>j-7-zv\x075>;=9-:z]|vv|{; 9-:}|wrpv|{Znv\x07h?jh@j6-7-?;=H----rny]|v{`v r-J-r|yv|{;\b-7-rny]|v{`v r-<-urvtuH--0ryvs-qrsv{rq5b`Rl]\\V[al`VgRlNaaR[bNaV\\[6----sy|n-urvtu-J->;=-<-}|wrpv|{Znv\x07h>jh>j-7-zv\x075>;=9-:z]|vv|{; 9-:}|wrpv|{Znv\x07h?jh@j6-7-?;=H----rny]|v{`v r-J-r|yv|{;\b-7-rny]|v{`v r-<-urvtuH--0r{qvs--tyl]|v{`v r-J-pynz}5rny]|v{`v r9-}|v{Zv{]v\x07ry-7-}v\x07ry_nv|9-}|v{Zn\x07]v\x07ry-7-}v\x07ry_nv|6H--]|v{`v r-J-tyl]|v{`v rH--0vs-qrsv{rq5b`Rl]\\V[alP\\Y\\_lNYaVabQR6----P|y|-J-trP|y|O\bUrvtu5tnqvr{ar\x07r9-|yq]|vv|{6H--0ryr----P|y|-J-p|y|H--0r{qvs--0vs-qrsv{rq5b`Rl]\\V[al[\\_ZNY6----[|zny-J-{|znyv r5zn@5z|qryZnv\x076-7-{|zny6H--0r{qvs--0vs-qrsv{rq5b`RlRQY6----Y|tQr}u-J-y|t?5:z]|vv|{; 6H--0r{qvs--0vs-qrsv{rq5b`RlU^lQR]aU6----<<-sy|n-}|wSnp|-J-:=;B-7-r|yv|{;\b-<-5n{5s|-<-?;=6-7-z]|vv|{; 6H----<<-sy|n-_nqv-J-rny]|v{`v r-<-}|wSnp|H----sy|n-|vtv{nyQr}u-J-tyl]|vv|{;H----sy|n-nqwrqQr}u-J-|vtv{nyQr}u-8-=;>H----sy|n-nqw-J-nqwrqQr}u-<-|vtv{nyQr}uH----z]|vv|{;\x07\b -J-z]|vv|{;\x07\b -7-nqwH----tyl]|vv|{-J-}|wrpv|{Znv\x07-7-z]|vv|{H--0r{qvs\f");var Cd=new d.Vector4,Md=Object.assign({pointScale:new d.Uniform(1),pointMinPixel:new d.Uniform(1),pointMaxPixel:new d.Uniform(1),opacity:new d.Uniform(1),gradientTexture:new d.Uniform(null),modelAlpha:new d.Uniform(0),clippers:new d.Uniform([]),shownFloorIndex:new d.Uniform(-1),constantColor:new d.Uniform(null),geometricError:new d.Uniform(0),pixelRatio:new d.Uniform(1),resolution:new d.Uniform(new d.Vector2(512,512)),floor:new d.Uniform(0)},d.UniformsUtils.clone(d.UniformsLib.common)),Tu=function(n){de(t,n);function t(e){e===void 0&&(e={});var r,i,a,o,s,l,u,c,f,A,p,y,v,m,h,g,b,w,E,C,x=n.call(this,{vertexShader:xd,fragmentShader:Ed,uniforms:d.UniformsUtils.clone(Md),defines:{USE_CONSTANT_COLOR:!1,USE_EDL:!1,USE_HQ_WEIGHT:!1,USE_HQ_DEPTH:!1,NUM_CLIPPING_BOX:!1,USE_CLIPFLOOR:!1,USE_VERTEX_FLOOR:!1,USE_MAP:!0,USE_UV:!0,USE_LUMINANCE:!1,USE_PANO_OPACITY:!1,USE_BLACK_TRANSITION:!1,USE_POINT_NORMAL:!1,USE_POINT_SHAPE_CIRCLE:!1,USE_POINT_SIZE_ATTENUATION:!1,USE_POINT_SIZE_GEOMETRIC:!1,USE_POINT_BACK_HIDDEN:!1,USE_POINT_BACK_DARK:!1}})||this,M;return Object.defineProperties(x,{constantColor:{get:function(){return this.uniforms.constantColor.value},set:function(S){this.uniforms.constantColor.value=S;var P=this.defines.USE_CONSTANT_COLOR,I=S!==null;P!==I&&(this.defines.USE_CONSTANT_COLOR=I,this.needsUpdate=!0)}},opacity:{get:function(){return this.uniforms.opacity.value},set:function(S){this.uniforms.opacity.value=S}},modelAlpha:{get:function(){return this.uniforms.modelAlpha.value},set:function(S){this.uniforms.modelAlpha.value=S}},shownFloorIndex:{get:function(){return this.uniforms.shownFloorIndex.value},set:function(S){this.uniforms.shownFloorIndex.value=S}},clippers:{get:function(){return M},set:function(S){M!==S&&(M=S,this.uniforms.clippers.value=(M||[]).map(function(P){var I=typeof P.floorIndex=="number"?P.floorIndex:-1,B=new d.Matrix4().getInverse(P.clippingBoxMatrix);return{matrixInverse:B,floorIndex:I}}),this.needsUpdate=!0)}},pointColor:{get:function(){return this.defines.USE_POINT_COLOR_ALTITUDE===!0?"ALTITUDE":"RGB"},set:function(S){var P=S==="ALTITUDE";this.defines.USE_POINT_COLOR_ALTITUDE!==P&&(this.defines.USE_POINT_COLOR_ALTITUDE=P,this.needsUpdate=!0)}},pointSize:{get:function(){return this.defines.USE_POINT_SIZE_GEOMETRIC===!0?"GEOMETRIC":this.defines.USE_POINT_SIZE_ATTENUATION===!0?"ATTENUATION":"FIXED"},set:function(S){var P=S==="ATTENUATION",I=S==="GEOMETRIC";this.defines.USE_POINT_SIZE_GEOMETRIC!==I&&(this.defines.USE_POINT_SIZE_GEOMETRIC=I,this.needsUpdate=!0),this.defines.USE_POINT_SIZE_ATTENUATION!==P&&(this.defines.USE_POINT_SIZE_ATTENUATION=P,this.needsUpdate=!0)}},pointShape:{get:function(){return this.defines.USE_POINT_SHAPE_CIRCLE===!0?"CIRCLE":"SQUARE"},set:function(S){var P=S==="CIRCLE";this.defines.USE_POINT_SHAPE_CIRCLE!==P&&(this.defines.USE_POINT_SHAPE_CIRCLE=P,this.needsUpdate=!0)}},pointScale:{get:function(){return this.uniforms.pointScale.value},set:function(S){this.uniforms.pointScale.value=S}},pointBack:{get:function(){return this.defines.USE_POINT_BACK_HIDDEN===!0?"HIDDEN":this.defines.USE_POINT_BACK_DARK===!0?"DARK":"VISIBLE"},set:function(S){var P=S==="HIDDEN",I=S==="DARK";this.defines.USE_POINT_BACK_HIDDEN!==P&&(this.defines.USE_POINT_BACK_HIDDEN=P,this.needsUpdate=!0),this.defines.USE_POINT_BACK_DARK!==I&&(this.defines.USE_POINT_BACK_DARK=I,this.needsUpdate=!0)}},pointMinPixel:{get:function(){return this.uniforms.pointMinPixel.value},set:function(S){this.uniforms.pointMinPixel.value=S}},pointMaxPixel:{get:function(){return this.uniforms.pointMaxPixel.value},set:function(S){this.uniforms.pointMaxPixel.value=S}},useEDL:{get:function(){return this.defines.USE_EDL},set:function(S){S!==this.defines.USE_EDL&&(this.defines.USE_EDL=S,this.needsUpdate=!0)}},useHQWeight:{get:function(){return this.defines.USE_HQ_WEIGHT},set:function(S){S!==this.defines.USE_HQ_WEIGHT&&(this.defines.USE_HQ_WEIGHT=S,this.needsUpdate=!0)}},useHQDepth:{get:function(){return this.defines.USE_HQ_DEPTH},set:function(S){S!==this.defines.USE_HQ_DEPTH&&(this.defines.USE_HQ_DEPTH=S,this.needsUpdate=!0)}},gradientTexture:{get:function(){return this.uniforms.gradientTexture.value},set:function(S){this.uniforms.gradientTexture.value=S}},floor:{get:function(){return this.uniforms.floor.value},set:function(S){this.uniforms.floor.value=S}}}),x.pano0=(r=e.pano0)!==null&&r!==void 0?r:we.pano0,x.pano1=(i=e.pano1)!==null&&i!==void 0?i:we.pano1,x.modelAlpha=(a=e.modelAlpha)!==null&&a!==void 0?a:we.modelAlpha,x.progress=(o=e.progress)!==null&&o!==void 0?o:we.progress,x.transition=(s=e.transition)!==null&&s!==void 0?s:we.transition,x.constantColor=(l=e.constantColor)!==null&&l!==void 0?l:we.constantColor,x.opacity=(u=e.opacity)!==null&&u!==void 0?u:we.opacity,x.shownFloorIndex=(c=e.shownFloorIndex)!==null&&c!==void 0?c:we.shownFloorIndex,x.clippers=(f=e.clippers)!==null&&f!==void 0?f:we.clippers,x.useEDL=(A=e.useEDL)!==null&&A!==void 0?A:we.useEDL,x.useHQWeight=(p=e.useHQWeight)!==null&&p!==void 0?p:we.useHQWeight,x.useHQDepth=(y=e.useHQDepth)!==null&&y!==void 0?y:we.useHQDepth,x.pointColor=(v=e.pointColor)!==null&&v!==void 0?v:we.pointColor,x.pointShape=(m=e.pointShape)!==null&&m!==void 0?m:we.pointShape,x.pointSize=(h=e.pointSize)!==null&&h!==void 0?h:we.pointSize,x.pointScale=(g=e.pointScale)!==null&&g!==void 0?g:we.pointScale,x.pointBack=(b=e.pointBack)!==null&&b!==void 0?b:we.pointBack,x.pointMinPixel=(w=e.pointMinPixel)!==null&&w!==void 0?w:we.pointMinPixel,x.pointMaxPixel=(E=e.pointMaxPixel)!==null&&E!==void 0?E:we.pointMaxPixel,x.gradientTexture=(C=e.gradientTexture)!==null&&C!==void 0?C:we.gradientTexture,x.floor=0,x.transparent=!1,x}return t.prototype.onBeforeCompile=function(e,r){var i,a,o=String((a=(i=this.clippers)===null||i===void 0?void 0:i.length)!==null&&a!==void 0?a:0);e.vertexShader=e.vertexShader.replace(/NUM_CLIPPERS/g,o),e.fragmentShader=e.fragmentShader.replace(/NUM_CLIPPERS/g,o)},t.prototype.update=function(e,r){if(r instanceof Si)this.uniforms.pixelRatio.value=r.pixelRatio,this.uniforms.resolution.value.copy(r.resolution);else{this.uniforms.pixelRatio.value=e.getPixelRatio();var i=e.getViewport(Cd);this.uniforms.resolution.value.set(i.z,i.w)}this.transparent=this.shownFloorIndex>-1||this.opacity<1||this.modelAlpha<1,this.useEDL&&(this.transparent=!1),this.useHQDepth&&(this.depthTest=!0,this.depthWrite=!0),this.useHQWeight?(this.depthWrite=!1,this.blending=d.CustomBlending,this.blendSrc=d.SrcAlphaFactor,this.blendSrcAlpha=d.SrcAlphaFactor,this.blendDst=d.OneFactor,this.blendDstAlpha=d.OneFactor):(this.depthWrite=!0,this.transparent=this.shownFloorIndex>-1||this.opacity<1||this.modelAlpha<1,this.blendDst=d.OneMinusSrcAlphaFactor,this.blendEquation=d.AddEquation,this.blendSrcAlpha=null,this.blendDstAlpha=null,this.blendEquationAlpha=null,this.blending=d.NormalBlending)},t.prototype.syncModel=function(e){var r="".concat(e.id,":").concat(e.materialVersion);r!==this.syncModelVersion&&(Object.assign(this,e.getMaterial()),this.syncModelVersion=r)},t}(d.ShaderMaterial),Sd=function(n){de(t,n);function t(){return n!==null&&n.apply(this,arguments)||this}return t.prototype.loadMesh=function(e,r){var i=this,a=r.json.meshes[e],o=a.primitives,s=Promise.all(o.map(function(c){return r.loadGeometry(c)})),l=Promise.all(o.map(function(c){return i.loadPBMMaterial(c,r)})),u=Promise.all([s,l]).then(function(c){for(var f=c[0],A=c[1],p=[],y=0;y<o.length;y++){var v=o[y],m=f[y],h=A[y];m.attributes.normal===void 0&&(h.flatShading=!0),m.attributes.tangent===void 0&&h.normalScale&&(h.normalScale.y*=-1);var g=v.mode||Fe.TRIANGLES,b=void 0;if(g===Fe.TRIANGLES||g===Fe.TRIANGLE_STRIP||g===Fe.TRIANGLE_FAN)g===Fe.TRIANGLE_STRIP?m=r.toGeometryTrianglesDrawMode(m,d.TriangleStripDrawMode):g===Fe.TRIANGLE_FAN&&(m=r.toGeometryTrianglesDrawMode(m,d.TriangleFanDrawMode)),m.clearGroups(),m.addGroup(0,m.index?m.index.count:m.attributes.position.count,0),m.attributes.normal||m.computeVertexNormals(),r.disposeSet.add(m),b=new Ct(m,[h]);else if(g===Fe.POINTS)b=new ar(m,h);else throw new Error("glTF: Primitive mode unsupported: "+g);b.name=r.createUniqueName(a.name||"mesh_"+e),p.push(b)}if(p.length===1)return p[0];for(var w=new d.Group,E=0,C=p;E<C.length;E++){var b=C[E];w.add(b)}return w});return u},t.prototype.loadPBMMaterial=function(e,r){var i,a=(i=e.mode)!==null&&i!==void 0?i:Fe.TRIANGLES,o=null;if(a===Fe.TRIANGLES||a===Fe.TRIANGLE_STRIP||a===Fe.TRIANGLE_FAN)o=this.loadPBMMeshMaterial(e,r);else if(a===Fe.POINTS)o=this.loadPBMPointCloudMaterial(e,r);else throw new Error("glTF: Primitive mode unsupported: "+a);return o},t.prototype.extendTexture=function(e,r,i){return e.minFilter=d.LinearFilter,e.magFilter=d.LinearFilter,e.generateMipmaps=!1,e},t.prototype.loadPBMPointCloudMaterial=function(e,r){var i=new Tu;return Object.keys(e.attributes).filter(function(a){return xt[a]==="normal"}).length>0&&(i.defines.USE_POINT_NORMAL=!0),r.disposeSet.add(i),Promise.resolve(i)},t.prototype.loadPBMMeshMaterial=function(e,r){var i=[],a=new Hn;if(a.uniforms.diffuse.value=new d.Color(1,1,1),a.uniforms.exposure.value=3.3,a.defines.USE_MAP=!1,Object.keys(e.attributes).filter(function(c){return xt[c]==="color"}).length>0&&(a.vertexColors=!0),Object.keys(e.attributes).filter(function(c){return xt[c]==="tangent"}).length===0&&(a.normalScale&&(a.normalScale.y*=-1),a.clearcoatNormalScale&&(a.clearcoatNormalScale.y*=-1)),e.material!==void 0){var o=r.json.materials[e.material];o.name&&(a.name=o.name);var s=o.pbrMetallicRoughness||{};if(Array.isArray(s.baseColorFactor)){var l=s.baseColorFactor;a.uniforms.diffuse.value.fromArray(l)}if(s.baseColorTexture!==void 0&&i.push(r.createMaterialTexture(s.baseColorTexture).then(function(c){r.disposeSet.add(c),a.uniforms.map.value=c,a.defines.USE_MAP=!0})),o.doubleSided===!0&&(a.side=d.DoubleSide),o.normalTexture!==void 0&&(i.push(r.createMaterialTexture(o.normalTexture).then(function(c){r.disposeSet.add(c),a.uniforms.normalMap.value=c})),a.uniforms.normalScale.value=new d.Vector2(1,1),o.normalTexture.scale!==void 0)){var u=o.normalTexture.scale;a.uniforms.normalScale.value.set(u,u)}}return r.disposeSet.add(a),Promise.all(i).then(function(){return a})},t}(Er),an={KHR_binary_glTF:nd,KHR_draco_mesh_compression:od,KHR_texture_basisu:Ad,KHR_texture_transform:md,KHR_mesh_quantization:gd,EXT_meshopt_compression:yd,EXT_texture_webp:bd,CESIUM_RTC:wd,PBM_mesh:Sd};function Ha(n,t){var e,r,i,a={};if(t.addonExtensions)for(var o=0,s=t.addonExtensions;o<s.length;o++){var l=s[o];a[l]=new an[l]}var u;if(typeof n=="string")u=n;else{var c=an.KHR_binary_glTF.getMagic(n);if(c===an.KHR_binary_glTF.HEADER_MAGIC){var f=new an.KHR_binary_glTF;try{f.loadGlbBinary(n)}catch(h){return Promise.reject(h)}a.KHR_binary_glTF=f,u=f.content}else u=ga(new Uint8Array(n))}var A=JSON.parse(u);if(A.asset===void 0||Number(A.asset.version[0])<2)return Promise.reject(new Error("glTF: Unsupported asset. glTF versions >=2.0 are supported."));if(A.extensionsUsed)for(var p=A.extensionsRequired||[],y=0;y<A.extensionsUsed.length;y++){var v=A.extensionsUsed[y];a[v]||(an[v]?a[v]=new an[v]:p.indexOf(v)>=0&&console.warn('glTF: Unknown extension "'+v+'".'))}var m=new rd(A,a,{copyUV2:(e=t.copyUV2)!==null&&e!==void 0?e:!0,resourcePath:(r=t.resourcePath)!==null&&r!==void 0?r:"",search:(i=t.search)!==null&&i!==void 0?i:"",fetcher:t.fetcher});return m.parse()}var Id=new d.Matrix4().fromArray([1,0,0,0,0,0,1,0,0,-1,0,0,0,0,0,1]);function Pu(n,t){var e={uri:n,gltfUpAxis:t.upAxis};return Promise.resolve().then(function(){return t.fetcher.ajax(n,{responseType:"arraybuffer"}).then(function(r){return r.body})}).then(function(r){return Promise.resolve(0).then(function(i){return Cu(e,r,i)}).then(function(i){return Iu(e,r,i)}).then(function(i){return ed(e,r,i)})}).then(function(){var r;return Ha(e.gltfArrayBuffer,{copyUV2:!1,addonExtensions:["PBM_mesh"],resourcePath:n.slice(0,n.lastIndexOf("/")+1),search:(r=n.split("?")[1])!==null&&r!==void 0?r:"",fetcher:t.fetcher}).then(function(i){var a=new d.Matrix4;t.upAxis!=="Z"&&a.premultiply(Id);var o=new d.Matrix4().setPosition(e.rtcCenter[0],e.rtcCenter[1],e.rtcCenter[2]);if(a.premultiply(o),i.CESIUM_RTC){var s=new d.Matrix4().setPosition(i.CESIUM_RTC.center);a.premultiply(s)}var l=i.scene;return l.applyMatrix4(a),{type:"b3dm",uri:e.uri,byteLength:e.byteLength,object:l,dispose:function(){return i.dispose()}}})})}const Bu="KGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIEIoYSl7b25tZXNzYWdlPWZ1bmN0aW9uKHIpe1Byb21pc2UucmVzb2x2ZShyLmRhdGEpLnRoZW4oZnVuY3Rpb24obil7cmV0dXJuIGEobil9KS50aGVuKGZ1bmN0aW9uKG4pe3ZhciBlPW4ub3V0cHV0LHQ9bi50cmFuc2ZlcjtyZXR1cm4gcG9zdE1lc3NhZ2UoZSx0KX0pLmNhdGNoKGZ1bmN0aW9uKG4pe3JldHVybiBwb3N0TWVzc2FnZSh7JCRlcnJvcjpufSl9KX19dmFyIHUseTsoZnVuY3Rpb24oYSl7YVthLkJZVEU9NTEyMF09IkJZVEUiLGFbYS5VTlNJR05FRF9CWVRFPTUxMjFdPSJVTlNJR05FRF9CWVRFIixhW2EuU0hPUlQ9NTEyMl09IlNIT1JUIixhW2EuVU5TSUdORURfU0hPUlQ9NTEyM109IlVOU0lHTkVEX1NIT1JUIixhW2EuSU5UPTUxMjRdPSJJTlQiLGFbYS5VTlNJR05FRF9JTlQ9NTEyNV09IlVOU0lHTkVEX0lOVCIsYVthLkZMT0FUPTUxMjZdPSJGTE9BVCIsYVthLkRPVUJMRT01MTMwXT0iRE9VQkxFIn0pKHl8fCh5PXt9KSk7dmFyIGM9KHU9e30sdVt5LkRPVUJMRV09RmxvYXQ2NEFycmF5LHVbeS5GTE9BVF09RmxvYXQzMkFycmF5LHVbeS5VTlNJR05FRF9TSE9SVF09VWludDE2QXJyYXksdVt5LlVOU0lHTkVEX0lOVF09VWludDMyQXJyYXksdVt5LlVOU0lHTkVEX0JZVEVdPVVpbnQ4QXJyYXksdVt5LkJZVEVdPUludDhBcnJheSx1W3kuU0hPUlRdPUludDE2QXJyYXksdVt5LklOVF09SW50MzJBcnJheSx1KSxGPXtET1VCTEU6eS5ET1VCTEUsRkxPQVQ6eS5GTE9BVCxVTlNJR05FRF9TSE9SVDp5LlVOU0lHTkVEX1NIT1JULFVOU0lHTkVEX0lOVDp5LlVOU0lHTkVEX0lOVCxVTlNJR05FRF9CWVRFOnkuVU5TSUdORURfQllURSxCWVRFOnkuQllURSxTSE9SVDp5LlNIT1JULElOVDp5LklOVH07ZnVuY3Rpb24gTyhhKXt2YXIgcj1jW2FdO2lmKCFyKXRocm93IG5ldyBFcnJvcigiRmFpbGVkIHRvIGNvbnZlcnQgR0wgdHlwZSIpO3JldHVybiByfWZ1bmN0aW9uIHAoYSl7dmFyIHI9TyhhKTtyZXR1cm4gci5CWVRFU19QRVJfRUxFTUVOVH1mdW5jdGlvbiBfKGEscixuLGUpe249PT12b2lkIDAmJihuPTApO3ZhciB0PU8oYSk7aWYobiVwKGEpIT09MCl7dmFyIGk9ZT9yLnNsaWNlKG4sbitlKnAoYSkpOnIuc2xpY2Uobik7cmV0dXJuIG5ldyB0KGkpfWVsc2UgcmV0dXJuIG5ldyB0KHIsbixlIT1udWxsP2U6KHIuYnl0ZUxlbmd0aC1uKS9wKGEpKX1mdW5jdGlvbiBsKGEpe3ZhciByPUZbYV07aWYoIXIpdGhyb3cgbmV3IEVycm9yKCJGYWlsZWQgdG8gY29udmVydCBHTCB0eXBlIik7cmV0dXJuIHJ9dmFyIFI9ZnVuY3Rpb24oKXtmdW5jdGlvbiBhKHIsbil7dGhpcy5mZWF0dXJlc0xlbmd0aD0wLHRoaXMuY2FjaGVkVHlwZWRBcnJheXM9e30sdGhpcy5qc29uPXIsdGhpcy5idWZmZXI9bjt2YXIgZT10aGlzLmdldEdsb2JhbFByb3BlcnR5KCJQT0lOVFNfTEVOR1RIIix5LlVOU0lHTkVEX0lOVCwxKTtlJiZlLmxlbmd0aCYmKHRoaXMuZmVhdHVyZXNMZW5ndGg9ZVswXSl9cmV0dXJuIGEucHJvdG90eXBlLmdldEV4dGVuc2lvbj1mdW5jdGlvbihyKXtyZXR1cm4gdGhpcy5qc29uLmV4dGVuc2lvbnMmJnRoaXMuanNvbi5leHRlbnNpb25zW3JdfSxhLnByb3RvdHlwZS5oYXNQcm9wZXJ0eT1mdW5jdGlvbihyKXtyZXR1cm4hIXRoaXMuanNvbltyXX0sYS5wcm90b3R5cGUuZ2V0R2xvYmFsUHJvcGVydHk9ZnVuY3Rpb24ocixuLGUpe3ZhciB0PXRoaXMuanNvbltyXTtpZih0eXBlb2YgdD09Im51bWJlciIpe3ZhciBpPU8obik7cmV0dXJuIG5ldyBpKFt0XSl9ZWxzZSBpZihBcnJheS5pc0FycmF5KHQpKXt2YXIgaT1PKG4pO3JldHVybiBuZXcgaSh0KX1lbHNlIGlmKHQmJk51bWJlci5pc0Zpbml0ZSh0LmJ5dGVPZmZzZXQpKXJldHVybiB0aGlzLmdldFR5cGVkQXJyYXlGcm9tQmluYXJ5KHIsbixlLDEsdC5ieXRlT2Zmc2V0KTtyZXR1cm4gbnVsbH0sYS5wcm90b3R5cGUuZ2V0UHJvcGVydHlBcnJheT1mdW5jdGlvbihyLG4sZSl7dmFyIHQ9dGhpcy5qc29uW3JdO3JldHVybiB0JiZOdW1iZXIuaXNGaW5pdGUodC5ieXRlT2Zmc2V0KT8oImNvbXBvbmVudFR5cGUiaW4gdCYmKG49bCh0LmNvbXBvbmVudFR5cGUpKSx0aGlzLmdldFR5cGVkQXJyYXlGcm9tQmluYXJ5KHIsbixlLHRoaXMuZmVhdHVyZXNMZW5ndGgsdC5ieXRlT2Zmc2V0KSk6dGhpcy5nZXRUeXBlZEFycmF5RnJvbUFycmF5KHIsbix0KX0sYS5wcm90b3R5cGUuZ2V0UHJvcGVydHk9ZnVuY3Rpb24ocixuLGUsdCxpKXt2YXIgbz10aGlzLmpzb25bcl07aWYoIW8pcmV0dXJuIG51bGw7dmFyIHY9dGhpcy5nZXRQcm9wZXJ0eUFycmF5KHIsbixlKTtpZihlPT09MSlyZXR1cm4gaVswXT12W3RdLGk7Zm9yKHZhciBBPTA7QTxlOysrQSlpW0FdPXZbZSp0K0FdO3JldHVybiBpfSxhLnByb3RvdHlwZS5nZXRUeXBlZEFycmF5RnJvbUJpbmFyeT1mdW5jdGlvbihyLG4sZSx0LGkpe3ZhciBvPXRoaXMuY2FjaGVkVHlwZWRBcnJheXMsdj1vW3JdO3JldHVybiB2fHwodj1fKG4sdGhpcy5idWZmZXIuYnVmZmVyLHRoaXMuYnVmZmVyLmJ5dGVPZmZzZXQraSx0KmUpLG9bcl09diksdn0sYS5wcm90b3R5cGUuZ2V0VHlwZWRBcnJheUZyb21BcnJheT1mdW5jdGlvbihyLG4sZSl7dmFyIHQ9dGhpcy5jYWNoZWRUeXBlZEFycmF5cyxpPXRbcl07cmV0dXJuIGl8fChpPV8obixlKSx0W3JdPWkpLGl9LGF9KCk7QihmdW5jdGlvbihhKXtyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGEpLnRoZW4oZnVuY3Rpb24ocil7dmFyIG49bmV3IFIoci5mZWF0dXJlVGFibGVKc29uLHIuZmVhdHVyZVRhYmxlQmluYXJ5KSxlPWQobiksdD1nKG4pLGk9UChuKSxvPVtdO3JldHVybiBlJiZvLnB1c2goZS5hcnJheS5idWZmZXIpLHQmJm8ucHVzaCh0LmFycmF5LmJ1ZmZlciksaSYmby5wdXNoKGkuYXJyYXkuYnVmZmVyKSx7b3V0cHV0Ontwb3NpdGlvbjplLGNvbG9yOnQsbm9ybWFsOml9LHRyYW5zZmVyOm99fSl9KTt2YXIgVT02NTUzNTtmdW5jdGlvbiBkKGEpe2lmKGEuaGFzUHJvcGVydHkoIlBPU0lUSU9OIikpe3ZhciByPWEuZ2V0UHJvcGVydHlBcnJheSgiUE9TSVRJT04iLHkuRkxPQVQsMyk7cmV0dXJue2FycmF5OnIsaXRlbVNpemU6Myxub3JtYWxpemVkOiExfX1lbHNlIGlmKGEuaGFzUHJvcGVydHkoIlBPU0lUSU9OX1FVQU5USVpFRCIpKXt2YXIgbj1hLmdldFByb3BlcnR5QXJyYXkoIlBPU0lUSU9OX1FVQU5USVpFRCIseS5VTlNJR05FRF9TSE9SVCwzKSxlPWEuZ2V0R2xvYmFsUHJvcGVydHkoIlFVQU5USVpFRF9WT0xVTUVfU0NBTEUiLHkuRkxPQVQsMyksdD1hLmdldEdsb2JhbFByb3BlcnR5KCJRVUFOVElaRURfVk9MVU1FX09GRlNFVCIseS5GTE9BVCwzKTtpZighZXx8IXQpdGhyb3cgbmV3IEVycm9yKCJRVUFOVElaRURfVk9MVU1FX1NDQUxFIG9yIFFVQU5USVpFRF9WT0xVTUVfT0ZGU0VUIG5ldmVyIGZvdW5kLiIpO2Zvcih2YXIgaT1uZXcgRmxvYXQzMkFycmF5KG4ubGVuZ3RoKSxvPW4ubGVuZ3RoLzMsdj1lWzBdL1UsQT1lWzFdL1UsTj1lWzJdL1UsRT10WzBdLFM9dFsxXSxzPXRbMl0sVD0wLEk9dm9pZCAwO1Q8bztUKyspST1UKjMsaVtJXT1uW0ldKnYrRSxpWysrSV09bltJXSpBK1MsaVsrK0ldPW5bSV0qTitzO3JldHVybnthcnJheTppLGl0ZW1TaXplOjMsbm9ybWFsaXplZDohMX19cmV0dXJuIG51bGx9ZnVuY3Rpb24gZyhhKXtpZihhLmhhc1Byb3BlcnR5KCJSR0IiKSl7Zm9yKHZhciByPWEuZ2V0UHJvcGVydHlBcnJheSgiUkdCIix5LlVOU0lHTkVEX0JZVEUsMyksbj1yLmxlbmd0aC8zLGU9bmV3IFVpbnQ4QXJyYXkobio0KSx0PTAsaT12b2lkIDAsbz12b2lkIDA7dDxuO3QrKylvPXQqNCxpPXQqMyxlW29dPXJbaV0sZVsrK29dPXJbKytpXSxlWysrb109clsrK2ldO3JldHVybnthcnJheTplLGl0ZW1TaXplOjQsbm9ybWFsaXplZDohMH19ZWxzZSBpZihhLmhhc1Byb3BlcnR5KCJSR0JBIikpe3ZhciByPWEuZ2V0UHJvcGVydHlBcnJheSgiUkdCQSIseS5VTlNJR05FRF9CWVRFLDQpO3JldHVybnthcnJheTpyLGl0ZW1TaXplOjQsbm9ybWFsaXplZDohMH19ZWxzZSBpZihhLmhhc1Byb3BlcnR5KCJSR0I1NjUiKSl7Zm9yKHZhciByPWEuZ2V0UHJvcGVydHlBcnJheSgiUkdCNTY1Iix5LlVOU0lHTkVEX1NIT1JULDEpLG49ci5sZW5ndGgsZT1uZXcgVWludDhBcnJheShuKjQpLHQ9MCx2PXZvaWQgMCxBPXZvaWQgMDt0PG47dCsrKUE9clt0XSx2PXQqNCxlW3ZdPShBPj4xMSYzMSk8PDMsZVsrK3ZdPShBPj41JjYzKTw8MixlWysrdl09KEEmMzEpPDwzO3JldHVybnthcnJheTplLGl0ZW1TaXplOjQsbm9ybWFsaXplZDohMH19cmV0dXJuIG51bGx9dmFyIEc9MjU1LGg9MTI3LEQ9Mi9HO2Z1bmN0aW9uIFAoYSl7aWYoYS5oYXNQcm9wZXJ0eSgiTk9STUFMIikpe2Zvcih2YXIgcj1hLmdldFByb3BlcnR5QXJyYXkoIk5PUk1BTCIseS5GTE9BVCwzKSxuPXIubGVuZ3RoLzMsZT1uZXcgSW50OEFycmF5KG4qNCksdD0wLGk9dm9pZCAwLG89dm9pZCAwO3Q8bjt0Kyspbz10KjQsaT10KjMsZVtvXT1yW2ldKmgsZVsrK29dPXJbKytpXSpoLGVbKytvXT1yWysraV0qaDtyZXR1cm57YXJyYXk6ZSxpdGVtU2l6ZTo0LG5vcm1hbGl6ZWQ6ITB9fWVsc2UgaWYoYS5oYXNQcm9wZXJ0eSgiTk9STUFMX09DVDE2UCIpKXtmb3IodmFyIHI9YS5nZXRQcm9wZXJ0eUFycmF5KCJOT1JNQUxfT0NUMTZQIix5LlVOU0lHTkVEX0JZVEUsMiksbj1yLmxlbmd0aC8yLGU9bmV3IEludDhBcnJheShuKjQpLHQ9MCx2PXZvaWQgMCxBPXZvaWQgMCxOPXZvaWQgMCxFPXZvaWQgMCxTPXZvaWQgMCxzPXZvaWQgMCxUPXZvaWQgMDt0PG47dCsrKXY9dCoyLEE9clt2XSpELTEsTj1yWysrdl0qRC0xLFM9QTwwPy1BOkEscz1OPDA/LU46TixFPTEtKFMrcyksRTwwJiYoQT0oMS1zKSooQTwwPy0xOjEpLE49KDEtUykqKE48MD8tMToxKSksVD1NYXRoLnNxcnQoQSpBK04qTitFKkUpLHY9dCo0LGVbdl09QS9UKmgsZVsrK3ZdPU4vVCpoLGVbKyt2XT1FL1QqaDtyZXR1cm57YXJyYXk6ZSxpdGVtU2l6ZTo0LG5vcm1hbGl6ZWQ6ITB9fXJldHVybiBudWxsfX0pKCk7Cg==",Yo=typeof window!="undefined"&&window.Blob&&new Blob([atob(Bu)],{type:"text/javascript;charset=utf-8"});function Td(n){let t;try{if(t=Yo&&(window.URL||window.webkitURL).createObjectURL(Yo),!t)throw"";const e=new Worker(t,{name:n==null?void 0:n.name});return e.addEventListener("error",()=>{(window.URL||window.webkitURL).revokeObjectURL(t)}),e}catch(e){return new Worker("data:application/javascript;base64,"+Bu,{name:n==null?void 0:n.name})}finally{t&&(window.URL||window.webkitURL).revokeObjectURL(t)}}var Pd=new yu(function(){return new Td},2);function Bd(n,t,e){var r=new Mu(n.featureTableJson,n.featureTableBinary);return Promise.resolve().then(function(){var i=r.getExtension("3DTILES_draco_point_compression");return i?Rd(i,r):Pd.postMessage({featureTableBinary:r.buffer,featureTableJson:r.json},[r.buffer.buffer])}).then(function(i){return n.attributes=i,e})}function Rd(n,t){return xi(this,void 0,void 0,function(){var e,r,i,a,o,s;return Ci(this,function(l){if(e=n.properties||{},r=n.byteOffset,i=n.byteLength,!e||!Number.isFinite(r)||!i)throw new Error("Draco properties, byteOffset, and byteLength must be defined");return a=t.buffer.slice(r,r+i),o=n.properties,s={POSITION:"Float32Array",NORMAL:"Float32Array",RGB:"Uint8Array",RGBA:"Uint8Array"},[2,gi.decodeGeometry(a.buffer,{attributeIDs:o,attributeTypes:s,useUniqueIDs:!0}).then(function(u){var c=u.getAttribute("POSITION"),f=u.getAttribute("RGB"),A=u.getAttribute("RGBA"),p=u.getAttribute("NORMAL"),y;if(A)y=A;else if(f){for(var v=f.count,m=f.array,h=new Uint8Array(v*4),g=0,b=void 0,w=void 0;g<v;g++)w=g*4,b=g*3,h[w]=m[b],h[++w]=m[++b],h[++w]=m[++b];y=new d.BufferAttribute(h,4,f.normalized)}return{position:c?{array:c.array,itemSize:c.itemSize,normalized:c.normalized}:null,color:y?{array:y.array,itemSize:y.itemSize,normalized:y.normalized}:null,normal:p?{array:p.array,itemSize:p.itemSize,normalized:p.normalized}:null}})]})})}function Ru(n,t){var e={uri:n};return Promise.resolve().then(function(){return t.fetcher.ajax(n,{responseType:"arraybuffer"}).then(function(r){return r.body})}).then(function(r){return Promise.resolve(0).then(function(i){return Cu(e,r,i)}).then(function(i){return Iu(e,r,i)}).then(function(i){return Bd(e,r,i)})}).then(function(){var r;return Fd(e.attributes,{computeBoundingBox:(r=t.computeBoundingBox)!==null&&r!==void 0?r:!0})}).then(function(r){var i=new d.Matrix4,a=new d.Matrix4().setPosition(e.rtcCenter[0],e.rtcCenter[1],e.rtcCenter[2]);return i.premultiply(a),r.object.applyMatrix4(i),{type:"pnts",uri:e.uri,byteLength:e.byteLength,object:r.object,dispose:function(){return r.dispose()}}})}function Fd(n,t){var e=new Set,r=new d.BufferGeometry;e.add(r);var i=new Tu;e.add(i),n.position&&r.setAttribute("position",new d.BufferAttribute(n.position.array,n.position.itemSize,n.position.normalized)),n.color&&r.setAttribute("color",new d.BufferAttribute(n.color.array,n.color.itemSize,n.color.normalized)),n.normal&&(r.setAttribute("normal",new d.BufferAttribute(n.normal.array,n.normal.itemSize,n.normal.normalized)),i.defines.USE_POINT_NORMAL=!0),t.computeBoundingBox&&r.computeBoundingBox();var a=new ar(r,i);return a.matrix.compose(a.position,a.quaternion,a.scale),a.matrixAutoUpdate=!1,a.frustumCulled=!1,a.renderOrder=-1e3,Promise.resolve({object:a,dispose:function(){e.forEach(function(o){o.dispose()}),e.clear()}})}function Fu(){var n={};return n.OutWindow=function(){this._windowSize=0},n.OutWindow.prototype.create=function(t){(!this._buffer||this._windowSize!==t)&&(this._buffer=[]),this._windowSize=t,this._pos=0,this._streamPos=0},n.OutWindow.prototype.flush=function(){var t=this._pos-this._streamPos;if(t!==0){for(;t--;)this._stream.writeByte(this._buffer[this._streamPos++]);this._pos>=this._windowSize&&(this._pos=0),this._streamPos=this._pos}},n.OutWindow.prototype.releaseStream=function(){this.flush(),this._stream=null},n.OutWindow.prototype.setStream=function(t){this.releaseStream(),this._stream=t},n.OutWindow.prototype.init=function(t){t||(this._streamPos=0,this._pos=0)},n.OutWindow.prototype.copyBlock=function(t,e){var r=this._pos-t-1;for(r<0&&(r+=this._windowSize);e--;)r>=this._windowSize&&(r=0),this._buffer[this._pos++]=this._buffer[r++],this._pos>=this._windowSize&&this.flush()},n.OutWindow.prototype.putByte=function(t){this._buffer[this._pos++]=t,this._pos>=this._windowSize&&this.flush()},n.OutWindow.prototype.getByte=function(t){var e=this._pos-t-1;return e<0&&(e+=this._windowSize),this._buffer[e]},n.RangeDecoder=function(){},n.RangeDecoder.prototype.setStream=function(t){this._stream=t},n.RangeDecoder.prototype.releaseStream=function(){this._stream=null},n.RangeDecoder.prototype.init=function(){var t=5;for(this._code=0,this._range=-1;t--;)this._code=this._code<<8|this._stream.readByte()},n.RangeDecoder.prototype.decodeDirectBits=function(t){for(var e=0,r=t,i;r--;)this._range>>>=1,i=this._code-this._range>>>31,this._code-=this._range&i-1,e=e<<1|1-i,this._range&4278190080||(this._code=this._code<<8|this._stream.readByte(),this._range<<=8);return e},n.RangeDecoder.prototype.decodeBit=function(t,e){var r=t[e],i=(this._range>>>11)*r;return(this._code^2147483648)<(i^2147483648)?(this._range=i,t[e]+=2048-r>>>5,this._range&4278190080||(this._code=this._code<<8|this._stream.readByte(),this._range<<=8),0):(this._range-=i,this._code-=i,t[e]-=r>>>5,this._range&4278190080||(this._code=this._code<<8|this._stream.readByte(),this._range<<=8),1)},n.initBitModels=function(t,e){for(;e--;)t[e]=1024},n.BitTreeDecoder=function(t){this._models=[],this._numBitLevels=t},n.BitTreeDecoder.prototype.init=function(){n.initBitModels(this._models,1<<this._numBitLevels)},n.BitTreeDecoder.prototype.decode=function(t){for(var e=1,r=this._numBitLevels;r--;)e=e<<1|t.decodeBit(this._models,e);return e-(1<<this._numBitLevels)},n.BitTreeDecoder.prototype.reverseDecode=function(t){for(var e=1,r=0,i=0,a;i<this._numBitLevels;++i)a=t.decodeBit(this._models,e),e=e<<1|a,r|=a<<i;return r},n.reverseDecode2=function(t,e,r,i){for(var a=1,o=0,s=0,l;s<i;++s)l=r.decodeBit(t,e+a),a=a<<1|l,o|=l<<s;return o},n.LenDecoder=function(){this._choice=[],this._lowCoder=[],this._midCoder=[],this._highCoder=new n.BitTreeDecoder(8),this._numPosStates=0},n.LenDecoder.prototype.create=function(t){for(;this._numPosStates<t;++this._numPosStates)this._lowCoder[this._numPosStates]=new n.BitTreeDecoder(3),this._midCoder[this._numPosStates]=new n.BitTreeDecoder(3)},n.LenDecoder.prototype.init=function(){var t=this._numPosStates;for(n.initBitModels(this._choice,2);t--;)this._lowCoder[t].init(),this._midCoder[t].init();this._highCoder.init()},n.LenDecoder.prototype.decode=function(t,e){return t.decodeBit(this._choice,0)===0?this._lowCoder[e].decode(t):t.decodeBit(this._choice,1)===0?8+this._midCoder[e].decode(t):16+this._highCoder.decode(t)},n.Decoder2=function(){this._decoders=[]},n.Decoder2.prototype.init=function(){n.initBitModels(this._decoders,768)},n.Decoder2.prototype.decodeNormal=function(t){var e=1;do e=e<<1|t.decodeBit(this._decoders,e);while(e<256);return e&255},n.Decoder2.prototype.decodeWithMatchByte=function(t,e){var r=1,i,a;do if(i=e>>7&1,e<<=1,a=t.decodeBit(this._decoders,(1+i<<8)+r),r=r<<1|a,i!==a){for(;r<256;)r=r<<1|t.decodeBit(this._decoders,r);break}while(r<256);return r&255},n.LiteralDecoder=function(){},n.LiteralDecoder.prototype.create=function(t,e){var r;if(!(this._coders&&this._numPrevBits===e&&this._numPosBits===t))for(this._numPosBits=t,this._posMask=(1<<t)-1,this._numPrevBits=e,this._coders=[],r=1<<this._numPrevBits+this._numPosBits;r--;)this._coders[r]=new n.Decoder2},n.LiteralDecoder.prototype.init=function(){for(var t=1<<this._numPrevBits+this._numPosBits;t--;)this._coders[t].init()},n.LiteralDecoder.prototype.getDecoder=function(t,e){return this._coders[((t&this._posMask)<<this._numPrevBits)+((e&255)>>>8-this._numPrevBits)]},n.Decoder=function(){this._outWindow=new n.OutWindow,this._rangeDecoder=new n.RangeDecoder,this._isMatchDecoders=[],this._isRepDecoders=[],this._isRepG0Decoders=[],this._isRepG1Decoders=[],this._isRepG2Decoders=[],this._isRep0LongDecoders=[],this._posSlotDecoder=[],this._posDecoders=[],this._posAlignDecoder=new n.BitTreeDecoder(4),this._lenDecoder=new n.LenDecoder,this._repLenDecoder=new n.LenDecoder,this._literalDecoder=new n.LiteralDecoder,this._dictionarySize=-1,this._dictionarySizeCheck=-1,this._posSlotDecoder[0]=new n.BitTreeDecoder(6),this._posSlotDecoder[1]=new n.BitTreeDecoder(6),this._posSlotDecoder[2]=new n.BitTreeDecoder(6),this._posSlotDecoder[3]=new n.BitTreeDecoder(6)},n.Decoder.prototype.setDictionarySize=function(t){return t<0?!1:(this._dictionarySize!==t&&(this._dictionarySize=t,this._dictionarySizeCheck=Math.max(this._dictionarySize,1),this._outWindow.create(Math.max(this._dictionarySizeCheck,4096))),!0)},n.Decoder.prototype.setLcLpPb=function(t,e,r){var i=1<<r;return t>8||e>4||r>4?!1:(this._literalDecoder.create(e,t),this._lenDecoder.create(i),this._repLenDecoder.create(i),this._posStateMask=i-1,!0)},n.Decoder.prototype.init=function(){var t=4;for(this._outWindow.init(!1),n.initBitModels(this._isMatchDecoders,192),n.initBitModels(this._isRep0LongDecoders,192),n.initBitModels(this._isRepDecoders,12),n.initBitModels(this._isRepG0Decoders,12),n.initBitModels(this._isRepG1Decoders,12),n.initBitModels(this._isRepG2Decoders,12),n.initBitModels(this._posDecoders,114),this._literalDecoder.init();t--;)this._posSlotDecoder[t].init();this._lenDecoder.init(),this._repLenDecoder.init(),this._posAlignDecoder.init(),this._rangeDecoder.init()},n.Decoder.prototype.decode=function(t,e,r){var i=0,a=0,o=0,s=0,l=0,u=0,c=0,f,A,p,y,v,m;for(this._rangeDecoder.setStream(t),this._outWindow.setStream(e),this.init();r<0||u<r;)if(f=u&this._posStateMask,this._rangeDecoder.decodeBit(this._isMatchDecoders,(i<<4)+f)===0)A=this._literalDecoder.getDecoder(u++,c),i>=7?c=A.decodeWithMatchByte(this._rangeDecoder,this._outWindow.getByte(a)):c=A.decodeNormal(this._rangeDecoder),this._outWindow.putByte(c),i=i<4?0:i-(i<10?3:6);else{if(this._rangeDecoder.decodeBit(this._isRepDecoders,i)===1)p=0,this._rangeDecoder.decodeBit(this._isRepG0Decoders,i)===0?this._rangeDecoder.decodeBit(this._isRep0LongDecoders,(i<<4)+f)===0&&(i=i<7?9:11,p=1):(this._rangeDecoder.decodeBit(this._isRepG1Decoders,i)===0?y=o:(this._rangeDecoder.decodeBit(this._isRepG2Decoders,i)===0?y=s:(y=l,l=s),s=o),o=a,a=y),p===0&&(p=2+this._repLenDecoder.decode(this._rangeDecoder,f),i=i<7?8:11);else if(l=s,s=o,o=a,p=2+this._lenDecoder.decode(this._rangeDecoder,f),i=i<7?7:10,v=this._posSlotDecoder[p<=5?p-2:3].decode(this._rangeDecoder),v>=4){if(m=(v>>1)-1,a=(2|v&1)<<m,v<14)a+=n.reverseDecode2(this._posDecoders,a-v-1,this._rangeDecoder,m);else if(a+=this._rangeDecoder.decodeDirectBits(m-4)<<4,a+=this._posAlignDecoder.reverseDecode(this._rangeDecoder),a<0){if(a===-1)break;return!1}}else a=v;if(a>=u||a>=this._dictionarySizeCheck)return!1;this._outWindow.copyBlock(a,p),u+=p,c=this._outWindow.getByte(0)}return this._outWindow.flush(),this._outWindow.releaseStream(),this._rangeDecoder.releaseStream(),!0},n.Decoder.prototype.setDecoderProperties=function(t){var e,r,i,a,o;return t.size<5||(e=t.readByte(),r=e%9,e=~~(e/9),i=e%5,a=~~(e/5),!this.setLcLpPb(r,i,a))?!1:(o=t.readByte(),o|=t.readByte()<<8,o|=t.readByte()<<16,o+=t.readByte()*16777216,this.setDictionarySize(o))},n.decompress=function(t,e,r,i){var a=new n.Decoder;if(!a.setDecoderProperties(t))throw"Incorrect stream properties";if(!a.decode(e,r,i))throw"Error in data stream";return!0},n.decompressFile=function(t,e){var r=new n.Decoder,i;if(!r.setDecoderProperties(t))throw"Incorrect stream properties";if(i=t.readByte(),i|=t.readByte()<<8,i|=t.readByte()<<16,i+=t.readByte()*16777216,t.readByte(),t.readByte(),t.readByte(),t.readByte(),!r.decode(t,e,i))throw"Error in data stream";return!0},n}var kd=Fu();function Ld(){function n(e){for(var r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",i=new Uint8Array(256),a=0;a<r.length;a++)i[r.charCodeAt(a)]=a;var o=e.length*.75,s=e.length,l,u=0,c,f,A,p;e[e.length-1]==="="&&(o--,e[e.length-2]==="="&&o--);var y=new ArrayBuffer(o),v=new Uint8Array(y);for(l=0;l<s;l+=4)c=i[e.charCodeAt(l)],f=i[e.charCodeAt(l+1)],A=i[e.charCodeAt(l+2)],p=i[e.charCodeAt(l+3)],v[u++]=c<<2|f>>4,v[u++]=(f&15)<<4|A>>2,v[u++]=(A&3)<<6|p&63;return y}var t="AGFzbQEAAAABSg1gAABgAX8Bf2ACf38Bf2AEf39/fwBgA39/fwBgAX8AYAJ/fwBgA39/fwF/YAR/f39/AX9gAn9/AGABfwF/YAABf2AEf39/fwF/AhsCA2VudgVhYm9ydAADA2VudgZtZW1vcnkCAAEDJiUBAQkKAgoKCwsLCwsAAgoBAgQKAQYFCAoFBQQEBwgCBwwCAQAABAQBcAABBhoFfwFBAAt/AUEAC38BQQALfwFBAAt/AUEACwc9BgZtZW1vcnkCAAV0YWJsZQEABXJlc2V0AA0KbmV3VThBcnJheQAQCnVucGFja1NpemUAFAZkZWNvZGUAIwgBJAkHAQBBAAsBJQqAViVoAQN/IABBgICAgARLBEAACyMBIgEgAEEBIABBAUsbakEHakF4cSICPwAiA0EQdEsEQCADIAIgAWtB//8DakGAgHxxQRB2IgAgAyAAShtAAEEASARAIABAAEEASARAAAsLCyACJAEgAQsbAQF/QQFBICAAQQdqZ2t0EAEiASAANgIAIAELkQMBAX8gAUUEQA8LIABBADoAACAAIAFqQQFrQQA6AAAgAUECTQRADwsgAEEBakEAOgAAIABBAmpBADoAACAAIAFqIgJBAmtBADoAACACQQNrQQA6AAAgAUEGTQRADwsgAEEDakEAOgAAIAAgAWpBBGtBADoAACABQQhNBEAPC0EAIABrQQNxIgIgAGoiAEEANgIAIAEgAmtBfHEiASAAakEEa0EANgIAIAFBCE0EQA8LIABBBGpBADYCACAAQQhqQQA2AgAgACABaiICQQxrQQA2AgAgAkEIa0EANgIAIAFBGE0EQA8LIABBDGpBADYCACAAQRBqQQA2AgAgAEEUakEANgIAIABBGGpBADYCACAAIAFqIgJBHGtBADYCACACQRhrQQA2AgAgAkEUa0EANgIAIAJBEGtBADYCACAAQQRxQRhqIgIgAGohACABIAJrIQEDQCABQSBPBEAgAEIANwMAIABBCGpCADcDACAAQRBqQgA3AwAgAEEYakIANwMAIAFBIGshASAAQSBqIQAMAQsLC1EBA38gAEH+////AEsEQEEAQSBBLUEnEAAACyAAQQJ0IgMQAiECQQgQASIBQQA2AgAgAUEANgIEIAEgAjYCACABIAA2AgQgAkEIaiADEAMgAQtmAQF/IAFB/P///wFLBEBBAEHAAEEXQSIQAAALIAFBAXQiARACIgJBCGogARADIABFBEBBDBABIQALIABBADYCACAAQQA2AgQgAEEANgIIIAAgAjYCACAAQQA2AgQgACABNgIIIAALCgBBDBABIAAQBQsuAQF/QQgQASIBQQA2AgAgAUEANgIEIAEgADYCBCABQQEgASgCBHQQBjYCACABC6EBAQR/QRAQASIBQQA2AgAgAUEANgIEIAFBADYCCCABQQA2AgxBEBAEIQIDQCAAQRBIBEBBAxAHIQMgAigCACAAQQJ0aiADNgIIIABBAWohAAwBCwsgASACNgIEQRAQBCECQQAhAANAIABBEEgEQEEDEAchAyACKAIAIABBAnRqIAM2AgggAEEBaiEADAELCyABIAI2AgggAUEIEAc2AgwgAQs0AQF/QRQQASIAQQA2AgAgAEEAOgAEIABBADYCCCAAQQA2AgwgAEEANgIQIABBDTYCCCAAC0IBAX9BGRABIgBBADYCACAAQQA2AgQgAEEANgIIIABBADYCDCAAQQA2AhAgAEEANgIUIABBADoAGCAAQQA2AhAgAAu1AgEEf0HQABABIgBBADoAACAAQQA2AgQgAEEANgIIIABBADYCDCAAQQA2AhAgAEEAOgAUIABBADYCGCAAQQA2AhwgAEEANgIgIABBADYCJCAAQQA2AiggAEEANgIsIABBADYCMCAAQQA2AjQgAEEANgI4IABBADYCPCAAQQA2AkAgAEEANgJEIABBADYCSCAAQQA2AkxBBBAEIQIDQCABQQRIBEBBBhAHIQMgAigCACABQQJ0aiADNgIIIAFBAWohAQwBCwsgACACNgIkIABBBBAHNgIoIABB8wAQBjYCLCAAQcABEAY2AjAgAEEMEAY2AjQgAEEMEAY2AjggAEEMEAY2AjwgAEEMEAY2AkAgAEHAARAGNgJEIAAQCDYCSCAAEAg2AkwgABAJNgIEIAAQCjYCCCAACx8BAX9BCBABIgBBADYCACAAQQA2AgQgABALNgIAIAALCgAjACQBEAwkAwthAQF/IAFB+P///wNLBEBBAEHAAEEXQSIQAAALIAEQAiICQQhqIAEQAyAARQRAQQwQASEACyAAQQA2AgAgAEEANgIEIABBADYCCCAAIAI2AgAgAEEANgIEIAAgATYCCCAACwoAQQwQASAAEA4LBgAgABAPCyoAIAEgACgCCE8EQEEAQcAAQSdBPxAAAAsgACgCBCABIAAoAgBqai0ACAssACABIAAoAghPBEBBAEHAAEEyQT8QAAALIAAoAgQgASAAKAIAamogAjoACAtkAQJ/QQ0QDyECA0AgAUENSARAIAIgASAAIAEQEUH/AXEQEiABQQFqIQEMAQsLQQAhAEEAIQEDQCABQQhIBEAgAiABQQVqEBFB/wFxIAFBA3R0IAByIQAgAUEBaiEBDAELCyAACwYAIAAQEwsnACAAIAEQDzYCCCAAQQA2AgwgACABNgIUIABBADoAGCAAQQA2AgALJAAgACgCCCAAKAIYEBUgAEGABiAAKAIMIAAtABRqdBAGNgIgC5UBAQR/IAEhBSAAIgYoAgAhASAAKAIEIQcgACgCCEEBdiEEIAJBAEgEfyACIARqIgBBACAAQQBKGwUgAiIAIAQgACAESBsLIQIgA0EASAR/IAMgBGoiAEEAIABBAEobBSADIgAgBCAAIARIGwshAwNAIAIgA05FBEAgAkEBdCABaiAHaiAFOwEIIAJBAWohAgwBCwsgBgssAQF/AkACQAJAIwRBAWsOAwEBAgALAAtB/////wchAQsgAEGACEEAIAEQFwvBAQECfyAAQQIQBjYCACAAKAIAIgEoAgAgASgCBGpBgAg7AQggACgCACICKAIAIQEgAigCBCABQQJqakGACDsBCCAAKAIMKAIAQQEkBBAYGkEAIQIDQCACQRBIBEAgAiAAKAIEKAIAIgEoAgBBAnZJBH8gAkECdCABaigCCAUACygCAEEBJAQQGBogAiAAKAIIKAIAIgEoAgBBAnZJBH8gAkECdCABaigCCAUACygCAEEBJAQQGBogAkEBaiECDAELCwuHAgEFfyAAIQJBgAYgACgCDCAALQAUanQhAQNAIAMgAUgEQCACKAIgIgQoAgAhBSAEKAIEIANBAXQgBWpqQYAIOwEIIANBAWohAwwBCwsgAiEBQQAhAgNAIAJBBEkEQCACIAEoAiQoAgAiAygCAEECdkkEfyACQQJ0IANqKAIIBQALKAIAQQEkBBAYGiACQQFqIQIMAQsLIAEoAigoAgBBASQEEBgaIAEoAixBASQEEBgaIAAoAjBBASQEEBgaIAAoAjRBASQEEBgaIAAoAjhBASQEEBgaIAAoAjxBASQEEBgaIAAoAkBBASQEEBgaIAAoAkRBASQEEBgaIAAoAkgQGSAAKAJMEBkLyAwBA38DQCABQQNxIAIgAhsEQCAAIgRBAWohACABIgNBAWohASAEIAMtAAA6AAAgAkEBayECDAELCyAAQQNxRQRAA0AgAkEQTwRAIAAgASgCADYCACAAQQRqIAFBBGooAgA2AgAgAEEIaiABQQhqKAIANgIAIABBDGogAUEMaigCADYCACABQRBqIQEgAEEQaiEAIAJBEGshAgwBCwsgAkEIcQRAIAAgASgCADYCACAAQQRqIAFBBGooAgA2AgAgAUEIaiEBIABBCGohAAsgAkEEcQRAIAAgASgCADYCACABQQRqIQEgAEEEaiEACyACQQJxBEAgACABLwEAOwEAIAFBAmohASAAQQJqIQALIAJBAXEEQCAAIAEtAAA6AAALDwsgAkEgTwRAAkACQAJAIABBA3EiA0EBRwRAIANBAkYNASADQQNGDQIMAwsgASgCACEFIAAgASIDLQAAOgAAIABBAWoiASABIANBAWoiAS0AADoAAEEBaiIEQQFqIQAgAUEBaiIDQQFqIQEgBCADLQAAOgAAIAJBA2shAgNAIAJBEU8EQCAAIAFBAWooAgAiA0EIdCAFQRh2cjYCACAAQQRqIAFBBWooAgAiBUEIdCADQRh2cjYCACAAQQhqIAFBCWooAgAiA0EIdCAFQRh2cjYCACAAQQxqIAFBDWooAgAiBUEIdCADQRh2cjYCACABQRBqIQEgAEEQaiEAIAJBEGshAgwBCwsMAgsgASgCACEFIAAgAS0AADoAACAAQQFqIgRBAWohACABQQFqIgNBAWohASAEIAMtAAA6AAAgAkECayECA0AgAkESTwRAIAAgAUECaigCACIDQRB0IAVBEHZyNgIAIABBBGogAUEGaigCACIFQRB0IANBEHZyNgIAIABBCGogAUEKaigCACIDQRB0IAVBEHZyNgIAIABBDGogAUEOaigCACIFQRB0IANBEHZyNgIAIAFBEGohASAAQRBqIQAgAkEQayECDAELCwwBCyABKAIAIQUgACIEQQFqIQAgASIDQQFqIQEgBCADLQAAOgAAIAJBAWshAgNAIAJBE08EQCAAIAFBA2ooAgAiA0EYdCAFQQh2cjYCACAAQQRqIAFBB2ooAgAiBUEYdCADQQh2cjYCACAAQQhqIAFBC2ooAgAiA0EY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";return n(t)}function Od(n,t,e){try{var r={data:t,offset:0,readByte:function(){return this.data[this.offset++]}},i=r.data.length,a={data:[],offset:0,writeByte:function(l){var u=Math.floor(this.offset/i);this.data[u]||(this.data[u]=new Uint8Array(i)),this.data[u][this.offset%i]=l,this.offset++}};n.decompressFile(r,a);for(var o=new Uint8Array(a.offset),s=0;s<a.offset;s++)o[s]=a.data[Math.floor(s/i)][s%i];e(null,o)}catch(l){e(l)}}function Vd(n,t,e){var r=24;try{var i=new WebAssembly.Memory({initial:16}),a=new WebAssembly.Module(n),o=new WebAssembly.Instance(a,{env:{memory:i,abort:function(){e(new Error("webAssembly abort"))}}}),s=o.exports,l=s.newU8Array(t.length),u=new Uint8Array(i.buffer,l+r,t.length);u.set(t);var c=s.decode(l),f=new Uint32Array(i.buffer,c,4),A=f[0],p=f[2],y=f[3];A?e(null,new Uint8Array(i.buffer,y+r,p).slice(0,p)):e(new Error("lzma deocder error"))}catch(v){e(v)}}var Nd=`
|
|
884
884
|
var decodeLZMA = (function() {
|
|
885
885
|
var LZMA = (`.concat(Fu.toString(),`)();
|
|
886
886
|
return function(data, callback) {
|
|
@@ -2010,7 +2010,7 @@ void main() {
|
|
|
2010
2010
|
#include <premultiplied_alpha_fragment>
|
|
2011
2011
|
|
|
2012
2012
|
}
|
|
2013
|
-
`},io=function(n){de(t,n);function t(e){var r=n.call(this,{uniforms:d.UniformsUtils.clone(sa.uniforms),vertexShader:sa.vertexShader,fragmentShader:sa.fragmentShader,clipping:!0})||this;return r.type="LineMaterial",r.dashed=!1,Object.defineProperties(r,{color:{enumerable:!0,get:function(){return this.uniforms.diffuse.value},set:function(i){this.uniforms.diffuse.value=i}},linewidth:{enumerable:!0,get:function(){return this.uniforms.linewidth.value},set:function(i){this.uniforms.linewidth.value=i}},dashScale:{enumerable:!0,get:function(){return this.uniforms.dashScale.value},set:function(i){this.uniforms.dashScale.value=i}},dashSize:{enumerable:!0,get:function(){return this.uniforms.dashSize.value},set:function(i){this.uniforms.dashSize.value=i}},gapSize:{enumerable:!0,get:function(){return this.uniforms.gapSize.value},set:function(i){this.uniforms.gapSize.value=i}},opacity:{enumerable:!0,get:function(){return this.uniforms.opacity.value},set:function(i){this.uniforms.opacity.value=i}},resolution:{enumerable:!0,get:function(){return this.uniforms.resolution.value},set:function(i){this.uniforms.resolution.value.copy(i)}}}),r.setValues(e),r}return t}(d.ShaderMaterial);Object.assign(io.prototype,{isLineMaterial:!0});var cl=function(n){de(t,n);function t(e,r){var i=n.call(this)||this;return i.type="LineSegments2",i.geometry=e!==void 0?e:new no,i.material=r!==void 0?r:new io({color:Math.random()*16777215}),i}return t.prototype.computeLineDistances=function(){for(var e=this.geometry,r=e.attributes.instanceStart,i=e.attributes.instanceEnd,a=new Float32Array(2*r.count),o=new d.Vector3,s=new d.Vector3,l=0,u=0,c=r.count;l<c;l++,u+=2)o.fromBufferAttribute(r,l),s.fromBufferAttribute(i,l),a[u]=u===0?0:a[u-1],a[u+1]=a[u]+o.distanceTo(s);var f=new d.InstancedInterleavedBuffer(a,2,1);return e.setAttribute("instanceDistanceStart",new d.InterleavedBufferAttribute(f,1,0)),e.setAttribute("instanceDistanceEnd",new d.InterleavedBufferAttribute(f,1,1)),this},t.prototype.raycast=function(e,r){e.camera===null&&console.error('LineSegments2: "Raycaster.camera" needs to be set in order to raycast against LineSegments2.');var i=e.ray,a=e.camera,o=a.projectionMatrix,s=this.geometry,l=this.material,u=l.resolution,c=l.linewidth,f=s.attributes.instanceStart,A=s.attributes.instanceEnd,p=new d.Vector4,y=new d.Vector4,v=new d.Vector4,m=new d.Vector3,h=new d.Matrix4,g=new d.Line3,b=new d.Vector3;i.at(1,v),v.w=1,v.applyMatrix4(a.matrixWorldInverse),v.applyMatrix4(o),v.multiplyScalar(1/v.w),v.x*=u.x/2,v.y*=u.y/2,v.z=0,m.copy(v);var w=this.matrixWorld;h.multiplyMatrices(a.matrixWorldInverse,w);for(var E=0,C=f.count;E<C;E++){p.fromBufferAttribute(f,E),y.fromBufferAttribute(A,E),p.w=1,y.w=1,p.applyMatrix4(h),y.applyMatrix4(h),p.applyMatrix4(o),y.applyMatrix4(o),p.multiplyScalar(1/p.w),y.multiplyScalar(1/y.w);var x=p.z<-1&&y.z<-1,M=p.z>1&&y.z>1;if(!(x||M)){p.x*=u.x/2,p.y*=u.y/2,y.x*=u.x/2,y.y*=u.y/2,g.start.copy(p),g.start.z=0,g.end.copy(y),g.end.z=0;var S=g.closestPointToPointParameter(m,!0);g.at(S,b);var P=d.MathUtils.lerp(p.z,y.z,S),I=P>=-1&&P<=1,B=m.distanceTo(b)<c*.5;if(I&&B){g.start.fromBufferAttribute(f,E),g.end.fromBufferAttribute(A,E),g.start.applyMatrix4(w),g.end.applyMatrix4(w);var k=new d.Vector3,L=new d.Vector3;i.distanceSqToSegment(g.start,g.end,L,k),r.push({point:L,pointOnLine:k,distance:i.origin.distanceTo(L),object:this,faceIndex:E})}}}},t}(d.Mesh);Object.assign(cl.prototype,{isLineSegments2:!0});var dl=function(n){de(t,n);function t(e,r){var i=n.call(this,e,r)||this;return i.type="Line2",i}return t}(cl);Object.assign(dl.prototype,{isLine2:!0});var fl=function(n){de(t,n);function t(){var e=n.call(this)||this;return e.type="LineGeometry",e}return t.prototype.setPositions=function(e){for(var r=e.length-3,i=new Float32Array(2*r),a=0;a<r;a+=3)i[2*a]=e[a],i[2*a+1]=e[a+1],i[2*a+2]=e[a+2],i[2*a+3]=e[a+3],i[2*a+4]=e[a+4],i[2*a+5]=e[a+5];return n.prototype.setPositions.call(this,i),this},t.prototype.setColors=function(e){for(var r=e.length-3,i=new Float32Array(2*r),a=0;a<r;a+=3)i[2*a]=e[a],i[2*a+1]=e[a+1],i[2*a+2]=e[a+2],i[2*a+3]=e[a+3],i[2*a+4]=e[a+4],i[2*a+5]=e[a+5];return n.prototype.setColors.call(this,i),this},t.prototype.fromLine=function(e){var r=e.geometry;if(r instanceof d.Geometry){var i=new d.BufferGeometry().fromGeometry(r);this.setPositions(i.attributes.position.array)}else r instanceof d.BufferGeometry&&this.setPositions(r.attributes.position.array);return this},t.prototype.copy=function(){return this},t}(no);Object.assign(fl.prototype,{isLineGeometry:!0});var rp="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAAZiS0dEAAAAAAAA+UO7fwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9sHDgwCEMBJZu0AAAAdaVRYdENvbW1lbnQAAAAAAENyZWF0ZWQgd2l0aCBHSU1QZC5lBwAABM5JREFUWMO1V0tPG2cUPZ4Hxh6DazIOrjFNqJs0FIMqWFgWQkatsmvVbtggKlSVRVf5AWz4AWz4AUSKEChll19QJYSXkECuhFxsHjEhxCYm+DWGMZ5HF72DJq4bAzFXurI0M/I5997v3u9cC65vTJVn2lX/xHINQOYSBLTLEuIuCWw4Z3IGAEvf6ASmVHjNzHCXBG4A0AjACsAOwEbO0nsFQBnAGYASAIl+ZRMR7SolMEdsByD09fV5R0ZGgg8ePPjW5/N1iqLYpuu6RZblciKR2I9Go69evnwZnZ+fjwI4IS8AKBIRzeQfJWCANwKwh0KhtrGxsYehUOin1tbW+zzP23ietzY2NnIAoGmaLsuyUiqVyvl8XtrY2NiamZn589mzZxsAUgCOAeQAnFI2tI+VxIjaAeDzoaGh7xYWFuZOTk6OZVk+12uYqqq6JEnn0Wg0OT4+/geAXwGEAdwDIFJQXC1wO4DWR48e/RCPxxclSSroVzRFUbSDg4P848ePFwH8DuAhkWih83TRQWxFOXgAwvDwcOfo6OhvXV1d39tsNtuVBwTDWBwOh1UUxVsMw1hXVlbSdCgNV43uYSvrHg6H24aHh38eHBz85TrgF9FYLHA4HLzH43FvbW2d7u/vG+dANp8FpqIlbd3d3V8Fg8EfBUFw4BONZVmL3+9vHhkZCQL4AoAHgJPK8G+yzC0XDofdoVAo5PP5vkadTBAEtr+/39ff3x8gAp/RPOEqx2qjx+NpvXv3bk9DQ0NDvQgwDIOWlhZrMBj8kgi0UJdxRgYMArzL5XJ7vd57qLPZ7Xamp6fnNgBXtQxcjFuHw+Hyer3t9SYgCAITCAScAJoBNNEY/08GOFVVrfVMv7kMNDntFD1vjIAPrlRN0xjckOm6biFQ3jwNPwDMZrOnqVTqfb3Bi8Wivru7W/VCYkwPlKOjo0IikXh7EwQikYgE4Nw0CfXKDCipVCoTj8df3QABbW1tLUc6oUgkFPMkVACUNjc337148eKvw8PDbJ2jP1taWkoCyNDVXDSECmNSK4qiKNLq6urW8+fPI/UicHx8rD59+jSVy+WOAKSJhKENwFItLtoxk8mwsixzHR0dHe3t7c5PAU+n09rs7OzJkydPYqVSaQfANoDXALIk31S2smU1TWMPDg7K5XKZ7+3t9TudTut1U7+wsFCcmJiIpdPpbQBxADsAknQWymYCOukBHYCuKApisdhpMpnURFEU79y503TVyKenpzOTk5M7e3t7MQKPV0Zv1gNm+awB0MvlshqLxfLb29uyJElWURSbXC4XXyvqxcXFs6mpqeTc3Nzu3t7e3wQcA7BPZ8Cov1pNlJplmQtAG8MwHV6v95tAINA5MDBwPxAIuLu6upr8fr/VAN3c3JQjkcjZ+vp6fnl5+d2bN29SuVzuNYAEpf01CdRChUL+X1VskHACuA3Ay3Fcu9vt7nA6nZ7m5uYWQRCaNE3jVVW15PP580KhIGUymWw2m00DOAJwSP4WwPtq4LX2Ao6USxNlQyS/RcQcdLGwlNIz6vEMAaZpNzCk2Pll94LK/cDYimxERiBwG10sxjgvEZBE0UpE6vxj+0Ct5bTaXthgEhRmja8QWNkkPGsuIpfdjpkK+cZUWTC0KredVmtD/gdlSl6EG4AMvQAAAABJRU5ErkJggg==",Fs=14467195,np=8,ip=2,ap=20,ks=null,Ba=function(n){de(t,n);function t(e,r){e===void 0&&(e=new d.Vector3),r===void 0&&(r=new d.Vector3);var i=n.call(this)||this;i.type="FiveLine",i.needsRender=!0;var a=new fl,o=new io({color:Fs,linewidth:ip,dashScale:ap,dashed:!1});i.line=new dl(a,o);var s=new d.BufferGeometry,l=new d.PointsMaterial({color:Fs,size:np,map:ks||(ks=new d.TextureLoader().load(rp)),sizeAttenuation:!1,transparent:!0});return i.points=new d.Points(s,l),i.points.renderOrder=11,i.points.frustumCulled=!1,i.setPoints(e,r),i.add(i.line,i.points),i}return Object.defineProperty(t,"version",{get:function(){return"6.0.0-alpha.91"},enumerable:!1,configurable:!0}),t.prototype.setPoints=function(e,r){var i=[].concat(e.toArray(),r.toArray());this.points.geometry.setAttribute("position",new d.BufferAttribute(new Float32Array(i),3)),this.line.geometry.setPositions(i),this.line.computeLineDistances(),this.needsRender=!0},t.prototype.getPoints=function(){var e=this.points.geometry.attributes.position.array;return[new d.Vector3(e[0],e[1],e[2]),new d.Vector3(e[3],e[4],e[5])]},t.prototype.setMaterial=function(e){var r=this.line.material;for(var i in e)if(e.hasOwnProperty(i)){var a=e[i];i==="dashed"?(r.dashed=a,a?r.defines.USE_DASH="":delete r.defines.USE_DASH,r.needsUpdate=!0):r[i]=e[i]}this.needsRender=!0},t.prototype.setResolution=function(e,r){var i=this.line.material.resolution;(i.x!==e||i.y!==r)&&(i.set(e,r),this.needsRender=!0)},t}(d.Object3D);Object.assign(Ba.prototype,{isFiveLine:!0});var qe={Handedness:Object.freeze({NONE:"none",LEFT:"left",RIGHT:"right"}),ComponentState:Object.freeze({DEFAULT:"default",TOUCHED:"touched",PRESSED:"pressed"}),ComponentProperty:Object.freeze({BUTTON:"button",X_AXIS:"xAxis",Y_AXIS:"yAxis",STATE:"state"}),ComponentType:Object.freeze({TRIGGER:"trigger",SQUEEZE:"squeeze",TOUCHPAD:"touchpad",THUMBSTICK:"thumbstick",BUTTON:"button"}),ButtonTouchThreshold:.05,AxisTouchThreshold:.1,VisualResponseProperty:Object.freeze({TRANSFORM:"transform",VISIBILITY:"visibility"})};function hl(n){return xi(this,void 0,void 0,function(){var t;return Ci(this,function(e){switch(e.label){case 0:return[4,fetch(n)];case 1:if(t=e.sent(),t.ok)return[2,t.json()];throw new Error(t.statusText)}})})}function op(n){return xi(this,void 0,void 0,function(){var t,e;return Ci(this,function(r){switch(r.label){case 0:if(!n)throw new Error("No basePath supplied");return t="profilesList.json",[4,hl("".concat(n,"/").concat(t))];case 1:return e=r.sent(),[2,e]}})})}function sp(n,t,e,r){return e===void 0&&(e=null),r===void 0&&(r=!0),xi(this,void 0,void 0,function(){var i,a,o,s,l,u;return Ci(this,function(c){switch(c.label){case 0:if(!n)throw new Error("No xrInputSource supplied");if(!t)throw new Error("No basePath supplied");return[4,op(t)];case 1:if(i=c.sent(),n.profiles.some(function(f){var A=i[f];return A&&(a={profileId:f,profilePath:"".concat(t,"/").concat(A.path),deprecated:!!A.deprecated}),!!a}),!a){if(!e)throw new Error("No matching profile name found");if(o=i[e],!o)throw new Error('No matching profile name found and default profile "'.concat(e,'" missing.'));a={profileId:e,profilePath:"".concat(t,"/").concat(o.path),deprecated:!!o.deprecated}}return[4,hl(a.profilePath)];case 2:if(s=c.sent(),r){if(u=void 0,u=s.layouts[n.handedness],!u)throw new Error("No matching handedness, ".concat(n.handedness,", in profile ").concat(a.profileId));u.assetPath&&(l=a.profilePath.replace("profile.json",u.assetPath))}return[2,{profile:s,assetPath:l}]}})})}var up={xAxis:0,yAxis:0,button:0,state:qe.ComponentState.DEFAULT};function lp(n,t){n===void 0&&(n=0),t===void 0&&(t=0);var e=n,r=t,i=Math.sqrt(n*n+t*t);if(i>1){var a=Math.atan2(t,n);e=Math.cos(a),r=Math.sin(a)}var o={normalizedXAxis:e*.5+.5,normalizedYAxis:r*.5+.5};return o}var cp=function(){function n(t){this.componentProperty=t.componentProperty,this.states=t.states,this.valueNodeName=t.valueNodeName,this.valueNodeProperty=t.valueNodeProperty,this.valueNodeProperty===qe.VisualResponseProperty.TRANSFORM&&(this.minNodeName=t.minNodeName,this.maxNodeName=t.maxNodeName),this.value=0,this.updateFromComponent(up)}return n.prototype.updateFromComponent=function(t){var e=t.xAxis,r=t.yAxis,i=t.button,a=t.state,o=lp(e,r),s=o.normalizedXAxis,l=o.normalizedYAxis;switch(this.componentProperty){case qe.ComponentProperty.X_AXIS:this.value=this.states.includes(a)?s:.5;break;case qe.ComponentProperty.Y_AXIS:this.value=this.states.includes(a)?l:.5;break;case qe.ComponentProperty.BUTTON:this.value=this.states.includes(a)?i:0;break;case qe.ComponentProperty.STATE:this.valueNodeProperty===qe.VisualResponseProperty.VISIBILITY?this.value=this.states.includes(a):this.value=this.states.includes(a)?1:0;break;default:throw new Error("Unexpected visualResponse componentProperty ".concat(this.componentProperty))}},n}(),dp=function(){function n(t,e){var r=this;if(!t||!e||!e.visualResponses||!e.gamepadIndices||Object.keys(e.gamepadIndices).length===0)throw new Error("Invalid arguments supplied");this.id=t,this.type=e.type,this.rootNodeName=e.rootNodeName,this.touchPointNodeName=e.touchPointNodeName,this.visualResponses={},Object.keys(e.visualResponses).forEach(function(i){var a=new cp(e.visualResponses[i]);r.visualResponses[i]=a}),this.gamepadIndices=Object.assign({},e.gamepadIndices),this.values={state:qe.ComponentState.DEFAULT,button:this.gamepadIndices.button!==void 0?0:void 0,xAxis:this.gamepadIndices.xAxis!==void 0?0:void 0,yAxis:this.gamepadIndices.yAxis!==void 0?0:void 0}}return Object.defineProperty(n.prototype,"data",{get:function(){var t=F({id:this.id},this.values);return t},enumerable:!1,configurable:!0}),n.prototype.updateFromGamepad=function(t){var e=this;if(this.values.state=qe.ComponentState.DEFAULT,this.gamepadIndices.button!==void 0&&t.buttons.length>this.gamepadIndices.button){var r=t.buttons[this.gamepadIndices.button];this.values.button=r.value,this.values.button=this.values.button<0?0:this.values.button,this.values.button=this.values.button>1?1:this.values.button,r.pressed||this.values.button===1?this.values.state=qe.ComponentState.PRESSED:(r.touched||this.values.button>qe.ButtonTouchThreshold)&&(this.values.state=qe.ComponentState.TOUCHED)}this.gamepadIndices.xAxis!==void 0&&t.axes.length>this.gamepadIndices.xAxis&&(this.values.xAxis=t.axes[this.gamepadIndices.xAxis],this.values.xAxis=this.values.xAxis<-1?-1:this.values.xAxis,this.values.xAxis=this.values.xAxis>1?1:this.values.xAxis,this.values.state===qe.ComponentState.DEFAULT&&Math.abs(this.values.xAxis)>qe.AxisTouchThreshold&&(this.values.state=qe.ComponentState.TOUCHED)),this.gamepadIndices.yAxis!==void 0&&t.axes.length>this.gamepadIndices.yAxis&&(this.values.yAxis=t.axes[this.gamepadIndices.yAxis],this.values.yAxis=this.values.yAxis<-1?-1:this.values.yAxis,this.values.yAxis=this.values.yAxis>1?1:this.values.yAxis,this.values.state===qe.ComponentState.DEFAULT&&Math.abs(this.values.yAxis)>qe.AxisTouchThreshold&&(this.values.state=qe.ComponentState.TOUCHED)),Object.values(this.visualResponses).forEach(function(i){i.updateFromComponent(e.values)})},n}(),fp=function(){function n(t,e,r){var i=this;if(!t)throw new Error("No xrInputSource supplied");if(!e)throw new Error("No profile supplied");this.xrInputSource=t,this.assetUrl=r,this.id=e.profileId,this.layoutDescription=e.layouts[t.handedness],this.components={},Object.keys(this.layoutDescription.components).forEach(function(a){var o=i.layoutDescription.components[a];i.components[a]=new dp(a,o)}),this.updateFromGamepad()}return Object.defineProperty(n.prototype,"gripSpace",{get:function(){return this.xrInputSource.gripSpace},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"targetRaySpace",{get:function(){return this.xrInputSource.targetRaySpace},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"data",{get:function(){var t=[];return Object.values(this.components).forEach(function(e){t.push(e.data)}),t},enumerable:!1,configurable:!0}),n.prototype.updateFromGamepad=function(){var t=this;Object.values(this.components).forEach(function(e){e.updateFromGamepad(t.xrInputSource.gamepad)})},n}(),hp="https://cdn.jsdelivr.net/npm/@webxr-input-profiles/assets@1.0/dist/profiles",pp="generic-trigger",vp=function(n){de(t,n);function t(){var e=n.call(this)||this;return e.motionController=null,e.envMap=null,e}return t.prototype.setEnvironmentMap=function(e){var r=this;return this.envMap==e?this:(this.envMap=e,this.traverse(function(i){i instanceof d.Mesh&&i.isMesh&&(i.material.envMap=r.envMap,i.material.needsUpdate=!0)}),this)},t.prototype.updateMatrixWorld=function(e){n.prototype.updateMatrixWorld.call(this,e),this.motionController&&(this.motionController.updateFromGamepad(),Object.values(this.motionController.components).forEach(function(r){Object.values(r.visualResponses).forEach(function(i){var a=i.valueNode,o=i.minNode,s=i.maxNode,l=i.value,u=i.valueNodeProperty;a&&(u===qe.VisualResponseProperty.VISIBILITY?a.visible=l:u===qe.VisualResponseProperty.TRANSFORM&&(a.quaternion.copy(o.quaternion).slerp(s.quaternion,l),a.position.lerpVectors(o.position,s.position,l)))})}))},t}(Pn.Object3D);function Ap(n,t){Object.values(n.components).forEach(function(e){var r=e.type,i=e.touchPointNodeName,a=e.visualResponses;if(r===qe.ComponentType.TOUCHPAD)if(e.touchPointNode=t.getObjectByName(i),e.touchPointNode){var o=new Pn.SphereGeometry(.001),s=new Pn.MeshBasicMaterial({color:255}),l=new Pn.Mesh(o,s);e.touchPointNode.add(l)}else console.warn("Could not find touch dot, ".concat(e.touchPointNodeName,", in touchpad component ").concat(e.id));Object.values(a).forEach(function(u){var c=u.valueNodeName,f=u.minNodeName,A=u.maxNodeName,p=u.valueNodeProperty;if(p===qe.VisualResponseProperty.TRANSFORM){if(u.minNode=t.getObjectByName(f),u.maxNode=t.getObjectByName(A),!u.minNode){console.warn("Could not find ".concat(f," in the model"));return}if(!u.maxNode){console.warn("Could not find ".concat(A," in the model"));return}}u.valueNode=t.getObjectByName(c),u.valueNode||console.warn("Could not find ".concat(c," in the model"))})})}function Ls(n,t){Ap(n.motionController,t),n.envMap&&t.traverse(function(e){e instanceof d.Mesh&&e.isMesh&&(e.material.envMap=n.envMap,e.material.needsUpdate=!0)}),n.add(t)}var mp=function(){function n(t){t===void 0&&(t=null),this.gltfLoader=t,this.path=hp,this._assetCache={}}return n.prototype.createControllerModel=function(t){var e=this,r=new vp,i=null;return t.addEventListener("connected",function(a){var o=a.data;o.targetRayMode!=="tracked-pointer"||!o.gamepad||sp(o,e.path,pp).then(function(s){var l=s.profile,u=s.assetPath;r.motionController=new fp(o,l,u);var c=e._assetCache[r.motionController.assetUrl];if(c)i=c.scene.clone(),Ls(r,i);else{if(!e.gltfLoader)throw new Error("GLTFLoader not set.");e.gltfLoader.load(r.motionController.assetUrl,function(f){e._assetCache[r.motionController.assetUrl]=f,i=f.scene.clone(),Ls(r,i)})}}).catch(function(s){console.warn(s)})}),t.addEventListener("disconnected",function(){r.motionController=null,r.remove(i),i=null}),r},n}();function gp(n,t){if(!t)return n;var e=n.match(/\d+_[a-z].png/);return n.substring(0,e.index)+t+"/"+n.substring(e.index)}var Os=300,yp=new d.Matrix4().makeRotationAxis(new d.Vector3(0,1,0),Math.PI),Vs=new d.Vector3(-1,1,1),bp=function(n){de(t,n);function t(e){var r=n.call(this,e)||this;r.xrManager=new tp(r.renderer,r.renderer.getContext(),{onSessionStart:function(l){r.emit("xr.session.start",X("xr.session.start",{session:l,machineType:r.xrManager.machineType}))},onSessionEnd:function(){r.emit("xr.session.end",X("xr.session.end",{session:null,machineType:r.xrManager.machineType}))}}),r.xrControllerRay={left:new d.Raycaster,right:new d.Raycaster},r.xrControllerRay.left.params.Points={threshold:.1},r.xrControllerRay.right.params.Points={threshold:.1},r.pointerLines={left:new Ba,right:new Ba},r.pointerLines.left.visible=!1,r.pointerLines.right.visible=!0,r.pointerLines.left.setMaterial({color:new d.Vector3(1,1,1)}),r.pointerLines.left.points.material.depthTest=!1,r.pointerLines.right.setMaterial({color:new d.Vector3(1,1,1)}),r.pointerLines.right.points.material.depthTest=!1,r.scene.add(r.pointerLines.left,r.pointerLines.right),r.panoResources={},r.panoResources[r.locationMotion.keyframes[0].key=r.locationMotion.keyframes[1].key=yt()]={panoId:Qe(r.currentPano),leftPanoPicture:null,position:r.camera.pose.offset.clone(),effect:"fade",fixCameraTransform:new d.Matrix4},r.parallaxCameraMatrixs=[];var i=st.shared.getContext();if(!i)return console.error("获取session失败,请退出重试"),r;r.on("xr.session.end",function(){r.scene.remove(r.pointerLines.left,r.pointerLines.right)}),r.xrManager.setSession(i),r.controllerWrappers=[new d.Group,new d.Group],r.scene.add(r.controllerWrappers[0],r.controllerWrappers[1]);var a=r.xrManager.getController(0);r.controllerWrappers[0].add(a);var o=r.xrManager.getController(1);r.controllerWrappers[1].add(o);var s=new mp;return s.gltfLoader={load:function(l,u){fi.ajax(l,{responseType:"arraybuffer"}).then(function(c){var f;return Ha(c.body,{resourcePath:l.slice(0,l.lastIndexOf("/")+1),search:(f=l.split("?")[1])!==null&&f!==void 0?f:"",fetcher:fi})}).then(function(c){return u(c)})}},r.on("xr.session.start",function(){var l=r.xrManager.getControllerGrip(0);l.add(s.createControllerModel(l)),r.controllerWrappers[0].add(l);var u=r.xrManager.getControllerGrip(1);u.add(s.createControllerModel(u)),r.controllerWrappers[1].add(u)}),r.xrControllerState={LeftAxesUp:{touchStartTime:0,touchStart:!1},LeftAxesDown:{touchStartTime:0,touchStart:!1},LeftAxesLeft:{touchStartTime:0,touchStart:!1},LeftAxesRight:{touchStartTime:0,touchStart:!1},LeftTrigger:{touchStartTime:0,touchStart:!1},LeftPinch:{touchStartTime:0,touchStart:!1},RightAxesUp:{touchStartTime:0,touchStart:!1},RightAxesDown:{touchStartTime:0,touchStart:!1},RightAxesLeft:{touchStartTime:0,touchStart:!1},RightAxesRight:{touchStartTime:0,touchStart:!1},RightTrigger:{touchStartTime:0,touchStart:!1},RightPinch:{touchStartTime:0,touchStart:!1},Y:{touchStartTime:0,touchStart:!1},X:{touchStartTime:0,touchStart:!1},A:{touchStartTime:0,touchStart:!1},B:{touchStartTime:0,touchStart:!1}},r}return t.parseArgs=function(e){if(e instanceof t)return e;var r=F(F({},e),{maxLatitude:Math.PI/2,minLatitude:-Math.PI/2});return n.parseArgs.call(this,r)},t.initAnimationEndState=function(e){var r=this.parseArgs(e),i=n.initAnimationEndState.call(this,r);return F(F({},i),{mode:"XRPanorama"})},t.prototype.moveToPano=function(e,r,i){var a=this,o,s,l,u,c=(o=r.effect)!==null&&o!==void 0?o:"fade";this.userAction=i,this.stopMomentumMovement();var f=this.works.getResolvedObserver(e);if(!f)throw new Error("Invalid PanoIndex");var A=Nn(f.images.up),p=this.imageOptions.size;typeof p=="undefined"&&f&&A&&(p=Number(A)),typeof p=="undefined"&&(p=2048);var y=this.imageOptions.transform,v=function(I,B){return gp(hi(I,y,B))},m=F({key:"pano.".concat(f.panoId)},xr(this.imageOptions,["format","size","quality"])),h=f.images,g=(l=(s=f.images.tiles)===null||s===void 0?void 0:s.filter(function(I){return I.size>p}))!==null&&l!==void 0?l:null,b="pano:"+Ln([h,m,y]);if(this.pendingTextureTask){if(this.pendingTextureTask.hash===b)return;var w=this.pendingTextureTask.panoId;(u=this.panoMeshes[w])===null||u===void 0||u.setProgress(0),this.emit("pano.texture.abort",X("pano.texture.abort",{error:null,progress:0,meta:null,pano:f.pano})),this.pendingTextureTask.onError(new Error("texture aborted"))}var E=this.models.getMaterial()||{},C=E.pano0,x=E.pano1,M;if((C==null?void 0:C.map.name)===b?M=C:(x==null?void 0:x.map.name)===b&&(M=x),M){var S={panoId:f.panoId,effect:c,leftPanoPicture:{map:M.map,luminanceMap:M.luminanceMap,matrix:new d.Matrix4().compose(f.position,f.quaternion,Vs)},position:f.position.clone(),fixCameraTransform:new d.Matrix4};this.doMoveToPano(f.pano,S,r);return}var P="move-to-pano-"+f.panoId;this.pending.add(P),this.pendingTextureTask={panoId:f.panoId,hash:b,onLoad:function(I){if(a.pending.delete(P),a.destroyed)I.body.dispose();else{I.body.name=b;var B={panoId:f.panoId,effect:c,leftPanoPicture:{map:I.body,luminanceMap:null,matrix:new d.Matrix4().compose(f.position,f.quaternion,Vs)},position:f.position.clone(),fixCameraTransform:new d.Matrix4};a.doMoveToPano(f.pano,B,r)}},onError:function(I){a.pending.delete(P);var B=F(F(F({},f.pano),{mode:a.mode}),Xe(a.camera.pose));a.emit("pano.error",X("pano.error",{error:I,userAction:a.userAction,options:r,prevPano:a.currentPano,progress:0,state:B})),a.emit("pano.cancel",X("pano.cancel",{error:null,userAction:a.userAction,options:r,prevPano:a.currentPano,progress:0,state:B})),r.moveCancelCallback&&r.moveCancelCallback()}},Promise.all([this.tileLevelForFov&&g&&g.length?this.textureLoader.loadTiledCubeTexture(h,g,{tileMaxLevel:this.TILED_CUBE_TEXTURE_LEVEL,imageURL:{transform:v,options:m},format:d.RGBAFormat,minFilter:d.LinearFilter,magFilter:d.LinearFilter,generateMipmaps:!1,viaAjax:!0,fetcher:ot(f.work)},void 0,void 0,function(I){var B,k;a.emit("pano.texture.progress",X("pano.texture.progress",{error:null,progress:I,meta:null,pano:f.pano})),((B=a.pendingTextureTask)===null||B===void 0?void 0:B.hash)===b&&((k=a.panoMeshes[f.panoId])===null||k===void 0||k.setProgress(I))},this.renderer):this.textureLoader.loadCubeTexture(h,{imageURL:{transform:v,options:m},format:d.RGBAFormat,fetcher:ot(f.work)},void 0,void 0,function(I){var B,k;((B=a.pendingTextureTask)===null||B===void 0?void 0:B.hash)===b&&((k=a.panoMeshes[f.panoId])===null||k===void 0||k.setProgress(I)),a.emit("pano.texture.progress",X("pano.texture.progress",{error:null,progress:I,meta:null,pano:f.pano}))},this.renderer)]).then(function(I){var B,k,L=I[0];((B=a.pendingTextureTask)===null||B===void 0?void 0:B.hash)===b?(a.pendingTextureTask.onLoad(L),(k=a.panoMeshes[f.panoId])===null||k===void 0||k.setProgress(0),delete a.pendingTextureTask,a.emit("pano.texture.success",X("pano.texture.success",{error:null,progress:1,meta:L.meta,pano:f.pano}))):L.body.dispose()}).catch(function(I){var B,k;((B=a.pendingTextureTask)===null||B===void 0?void 0:B.hash)===b&&(a.pendingTextureTask.onError(I),(k=a.panoMeshes[f.panoId])===null||k===void 0||k.setProgress(0),delete a.pendingTextureTask,a.emit("pano.texture.error",X("pano.texture.error",{error:I,progress:0,meta:null,pano:f.pano})),a.emit("error",I))}),this.emit("pano.texture.load",X("pano.texture.load",{error:null,progress:0,meta:null,pano:f.pano}))},t.prototype.doMoveToPano=function(e,r,i){var a=this,o,s,l,u,c,f,A,p,y,v;i===void 0&&(i={});var m=be(),h=yt();this.panoResources[h]=r;var g=1,b,w,E;if(this.locationMotion.ended){var C=this.locationMotion.getKeyFrameSegment(m);C[0];var x=C[1],M=this.locationMotion.value,S=this.panoResourceFromLocationMotionKeyframe(x).position,P=r.position;b=Math.max(S.distanceTo(P),g),w=[{key:x.key,progress:0,value:F(F({},M),{count:0})},{key:h,progress:1,value:{distance:0,count:1}}],E=0}else{var I=this.locationMotion.getKeyFrameSegment(m),B=I[0],x=I[1],M=this.locationMotion.value,k=this.panoResourceFromLocationMotionKeyframe(B).position,S=this.panoResourceFromLocationMotionKeyframe(x).position,P=r.position,L=x.value.count-M.count,O=Math.max(k.distanceTo(S),g)*L,Q=Math.max(S.distanceTo(P),g);b=O+Q,w=[{key:B.key,progress:0,value:F({},M)},{key:x.key,progress:O/b,value:x.value},{key:h,progress:1,value:{count:x.value.count+1,distance:0}}];var N=this.locationMotionKeyframesLength(this.locationMotion.keyframes),K=this.locationMotionKeyframesLength(w);E=this.locationMotion.getProgressVelocity(m)*N/K}var j=r.effect==="instant"?0:this.calculateMovingDuration(i.duration,r.effect==="fly"?b:0),U={longitude:i.longitude,latitude:i.latitude,fov:i.fov},G=F(F({},e),{mode:this.mode,longitude:(o=U.longitude)!==null&&o!==void 0?o:this.camera.pose.longitude,latitude:(s=U.latitude)!==null&&s!==void 0?s:this.camera.pose.latitude,fov:(l=U.fov)!==null&&l!==void 0?l:this.camera.pose.fov,offset:r.position.clone(),distance:0}),H=this.currentPano;this.emit("pano.moveTo",X("pano.moveTo",{options:i,prevPano:H,progress:0,state:G,userAction:this.userAction,error:null})),i.moveStartCallback&&i.moveStartCallback(G),this.videoTexture&&this.videoTexture.image instanceof HTMLVideoElement&&this.videoTexture.image.getAttribute("src")&&(this.videoTexture.image.pause(),this.videoTexture.image.removeAttribute("uuid"),this.videoTexture.image.removeAttribute("src"),this.videoTexture.image.oncanplay=D,this.videoTexture.needsUpdate=!0),this.panoVideo.setMaterial(null);var Y=Ft({longitude:this.cameraMotion.value.longitude,latitude:this.cameraMotion.value.latitude}),W=Ft({longitude:(u=U.longitude)!==null&&u!==void 0?u:this.cameraMotion.value.longitude,latitude:(c=U.latitude)!==null&&c!==void 0?c:this.cameraMotion.value.latitude}),_=new d.Object3D;_.lookAt(Y);var Z=new d.Matrix4().makeRotationFromQuaternion(_.quaternion);_.lookAt(W);for(var fe=new d.Matrix4().makeRotationFromQuaternion(_.quaternion),re=new d.Matrix4().getInverse(Z).premultiply(fe),ie=0;ie<w.length-1;ie++){var ne=w[ie].key;if(ne){var ve=this.panoResources[ne];ve&&ve.fixCameraTransform.copy(re)}}r.effect==="fly"?this.cameraMotion.set(U,j).catch(D):this.cameraMotion.setKeyframes([{progress:0,value:{longitude:this.cameraMotion.value.longitude,latitude:this.cameraMotion.value.latitude,fov:this.cameraMotion.value.fov}},{progress:0,value:{longitude:(f=U.longitude)!==null&&f!==void 0?f:this.cameraMotion.value.longitude,latitude:(A=U.latitude)!==null&&A!==void 0?A:this.cameraMotion.value.latitude,fov:this.cameraMotion.value.fov}},{progress:1,value:{longitude:(p=U.longitude)!==null&&p!==void 0?p:this.cameraMotion.value.longitude,latitude:(y=U.latitude)!==null&&y!==void 0?y:this.cameraMotion.value.latitude,fov:(v=U.fov)!==null&&v!==void 0?v:this.cameraMotion.value.fov}}],j).catch(D);var te=this.locationMotion.setKeyframes(w,j,E);te.then(function(){var he,Ae,ce,Ie=F(F({},e),{mode:a.mode,longitude:a.camera.pose.longitude,latitude:a.camera.pose.latitude,fov:a.camera.pose.fov,offset:a.camera.pose.offset.clone(),distance:0});a.emit("pano.arrived",X("pano.arrived",{options:i,prevPano:H,progress:1,state:Ie,userAction:a.userAction,error:null})),i.moveEndCallback&&i.moveEndCallback(Ie);var $=a.works.getResolvedObserver(a.currentPano);if($&&$.video&&a.videoTexture&&a.videoTexture.image instanceof HTMLVideoElement){var oe=yp.clone().multiply((ce=(Ae=(he=a.models.getMaterial())===null||he===void 0?void 0:he.pano1)===null||Ae===void 0?void 0:Ae.matrix)!==null&&ce!==void 0?ce:new d.Matrix4).multiply($.video.matrix),q={map:a.videoTexture,size:$.video.size,matrix:oe,alpha:1},xe=yt(),ge=a.videoTexture.image;ge.setAttribute("uuid",xe),el().then(function(Oe){Oe&&$.video&&ge.getAttribute("uuid")===xe&&(ge.oncanplay=function(){ge.oncanplay=D,ge.play()},ge.ontimeupdate=function(){ge.currentTime>.5&&(ge.ontimeupdate=D,a.panoVideo.setMaterial(q))},ge.src=$.video.source)}).catch(function(){ge.removeAttribute("uuid")})}},function(){a.emit("pano.cancel",X("pano.cancel",{options:i,prevPano:H,progress:0,state:G,userAction:a.userAction,error:null})),i.moveCancelCallback&&i.moveCancelCallback()})},t.prototype.checkSelectedPano=function(e){var r=this,i,a,o,s;this.stopMomentumMovement();var l=this.camera.getDirection(new d.Vector3).setY(0),u=null,c=this.works.getResolvedObserver(this.currentPano);if(!c)return null;var f=c.accessibleIds.filter(function(W){var _=ft(W);if(Kt(_,r.currentPano))return!1;var Z=r.works.getResolvedObserver(_);return!Z||Z.position.distanceTo(r.camera.position)>r.maxAccessibleDistance?!1:Z.loadable||Z.active}),A=this.models.intersectRaycaster(e)[0];if(A){var p=or(f,function(W){var _=r.works.getResolvedObserver(W);if(!_)return 1/0;var Z=_.standingPosition.clone();return Z.distanceTo(A.point)},!0),y=p[0],v=p[1];y&&v<this.panoTapTriggerRadius&&(u=(i=this.works.getResolvedObserver(y))!==null&&i!==void 0?i:null)}if(Bs(u)){var m=this.getForwardObserverOrNot(e);m&&(u=m)}for(var h=0,g=this.locationMotion.keyframes;h<g.length;h++){var b=g[h],w=this.panoResourceFromLocationMotionKeyframe(b);if(!(b.progress<this.locationMotion.progress)&&u&&w.panoId===u.panoId){u=null;break}}if(Bs(u))return this.locationMotion.ended===!0&&this.cameraBounce(),null;if(u&&!u.active){var E=u.panoId;this.panoMeshes[E]&&(this.panoMeshes[E].setDisabled(!1),this.panoMeshes[E].setLoading(!0))}var C={};if(u){for(var x=Math.PI/6,M=Math.PI/12,S=new d.Vector3(0,1,0),P=u.position.clone().setY(0).sub(c.position.clone().setY(0)).normalize(),I=P.clone().applyAxisAngle(S,x),B=P.clone().applyAxisAngle(S,-x),k=[],L=[],O=[],Q=0,N=u.accessibleIds;Q<N.length;Q++){var y=N[Q],K=ft(y);if(!(Kt(K,this.currentPano)||Kt(K,u.pano))){var j=this.works.getResolvedObserver(y);if(j){var U=j.position.clone().sub(u.position).setY(0);P.angleTo(U)<x?O.push(U):I.angleTo(U)<x?k.push(U):B.angleTo(U)<x&&L.push(U)}}}var G=O.length>0?O:ht(ht([],k,!0),L,!0),H=G.slice().sort(function(W,_){return W.angleTo(P)-_.angleTo(P)})[0];H&&H.angleTo(l)>M&&(C.longitude=Math.atan2(-H.x,-H.z))}this.cameraMotion.value.latitude<-Math.PI/4&&(C.latitude=ue(0,this.minLatitude,this.maxLatitude)),this.cameraMotion.value.fov<60&&(C.fov=this.defaultFov);var Y={workCode:u.pano.workCode,panoIndex:u.pano.panoIndex,mode:this.mode,longitude:(a=C.longitude)!==null&&a!==void 0?a:this.camera.pose.longitude,latitude:(o=C.latitude)!==null&&o!==void 0?o:this.camera.pose.latitude,fov:(s=C.fov)!==null&&s!==void 0?s:this.camera.pose.fov,distance:0,offset:u?u.position.clone():new d.Vector3};return this.emit("pano.select",X("pano.select",{prevPano:this.currentPano,state:Y,userAction:!0,options:C,progress:0,error:null})),u&&u.active?(this.emit("pano.request",X("pano.request",{userAction:!0,prevPano:this.currentPano,progress:0,state:Y,options:C,error:null})),u.pano):null},t.prototype.destroy=function(){n.prototype.destroy.call(this)},t.prototype.isReady=function(){return!1},t.prototype.updateCamera=function(e,r,i){return Promise.resolve()},t.prototype.updateCameraWithKeyframes=function(e,r,i){return Promise.resolve()},t.prototype.updateTime=function(e,r){for(var i=this,a,o,s,l,u,c,f,A,p=[],y=2;y<arguments.length;y++)p[y-2]=arguments[y];this.userAction=!0;var v={},m={},h=this.panoResourceFromLocationMotionKeyframe(this.locationMotion.keyframes[0]),g=this.panoResourceFromLocationMotionKeyframe(this.locationMotion.keyframes[this.locationMotion.keyframes.length-1]),b=!1;if(this.cameraMotion.ended===!1&&(this.cameraMotion.update(e),m.longitude=this.cameraMotion.value.longitude,m.latitude=this.cameraMotion.value.latitude,m.fov=this.cameraMotion.value.fov),this.modelAlphaMotion.ended===!1&&(this.modelAlphaMotion.update(e),v.modelAlpha=this.modelAlphaMotion.value.modelAlpha),this.perspToOrthoMotion.ended===!1&&(this.perspToOrthoMotion.update(e),this.camera.perspToOrtho.setScalar(ue(this.perspToOrthoMotion.value.perspToOrtho,0,1))),this.locationMotion.ended===!1){this.locationMotion.update(e);var w=this.locationMotion.getKeyFrameSegment(e),E=w[0],C=w[1],x=this.panoResourceFromLocationMotionKeyframe(E),M=this.panoResourceFromLocationMotionKeyframe(C),S=new d.Vector3().copy(x.position),P=new d.Vector3().copy(M.position),I=this.locationMotion.value.count-C.value.count+1;v.progress=I,M.leftPanoPicture&&(I<1?x.leftPanoPicture&&(v.pano0=x.leftPanoPicture):v.pano0=M.leftPanoPicture,v.pano1=M.leftPanoPicture),M.effect==="montage"?v.transition="BLACK":M.effect==="spread"?v.transition="SPREAD":v.transition="FADE",I<1&&M.effect!=="fly"&&(v.pano0&&x.leftPanoPicture&&(v.pano0={map:v.pano0.map,luminanceMap:v.pano0.luminanceMap,matrix:x.leftPanoPicture.matrix.clone().setPosition(M.position)}),S.copy(P),b=!0),m.distance=this.locationMotion.value.distance,m.offset=new d.Vector3(S.x+(P.x-S.x)*I,S.y+(P.y-S.y)*I,S.z+(P.z-S.z)*I);for(var B=[],k=[],L=0,O=this.locationMotion.keyframes;L<O.length;L++){var Q=O[L],N=Q.key,K=Q.progress;N!==void 0&&(B.push(N),K>this.locationMotion.progress&&k.push(N))}for(var j=0,U=Object.keys(this.panoResources);j<U.length;j++){var G=U[j];if(!(k.indexOf(G)>=0)){var H=this.panoResources[G];if(H.leftPanoPicture){var Y=H.leftPanoPicture.map;if(Y){if(Y===((a=v.pano0)===null||a===void 0?void 0:a.map)||Y===((o=v.pano1)===null||o===void 0?void 0:o.map))continue;Y instanceof ke&&Y.cubeRenderTarget&&this.colorCubeRenderTargetPool.push(Y.cubeRenderTarget),Y.dispose(),H.leftPanoPicture=null}}B.indexOf(G)>=0||delete this.panoResources[G]}}this.currentPano=ft(M.panoId),this.emit("pano.moving",X("pano.moving",{userAction:this.userAction,prevPano:ft(h.panoId),state:F(F(F(F({},ft(g.panoId)),{mode:this.mode}),Xe(this.camera.pose)),m),options:{},progress:this.locationMotion.progress,error:null}))}Ot(v)===!1&&(!((s=v.pano0)===null||s===void 0)&&s.map&&v.pano0.map instanceof ke&&!v.pano0.map.cubeRenderTarget&&(v.pano0.map.cubeRenderTarget=this.colorCubeRenderTargetPool.pop()),!((l=v.pano1)===null||l===void 0)&&l.map&&v.pano1.map instanceof ke&&!v.pano1.map.cubeRenderTarget&&(v.pano1.map.cubeRenderTarget=this.colorCubeRenderTargetPool.pop()),this.models.setMaterial(v)),Ot(m)===!1&&this.setCamera(m);var W=this.works.getResolvedObserver(this.currentPano),_=p[1];if(!_){console.error("xrFrame丢失,请重试");return}if(!this.xrManager.session){console.error("session丢失,请重试");return}var Z=this.xrManager.referenceSpace;if(Z){var fe=this.xrManager.cameraVR,re=this.xrManager.cameraL,ie=this.xrManager.cameraR,ne=[re,ie],ve=_.getViewerPose(Z),te=new d.Vector3(0,0,0);if(ve){var he;he=this.xrManager.session.renderState.baseLayer;var Ae=ve.views;if(!he){console.error("no layer found");return}this.renderer.setFramebuffer(he.framebuffer);var ce=!1;Ae.length!==fe.cameras.length&&(fe.cameras.length=0,ce=!0),this.parallaxCameraMatrixs=[];var Ie=new d.Vector3,$=new d.Vector3;new d.Matrix4().fromArray(Ae[0].transform.matrix).decompose(Ie,new d.Quaternion,new d.Vector3),new d.Matrix4().fromArray(Ae[1].transform.matrix).decompose($,new d.Quaternion,new d.Vector3),$.clone().sub(Ie).normalize();var oe=new d.Vector3,q=new d.Quaternion,xe=new d.Vector3;this.camera.matrix.decompose(oe,q,xe);for(var ge=0;ge<Ae.length;ge++){var Oe=Ae[ge],Ue=he.getViewport(Oe),ze=ne[ge];ze.matrix.fromArray(Oe.transform.matrix);var _e=new d.Vector3,Be=new d.Quaternion,me=new d.Vector3;ze.matrix.decompose(_e,Be,me),te.copy(oe),ze.position.copy(oe),ze.quaternion.copy(Be),ze.scale.copy(me),ze.updateMatrix(),ze.projectionMatrix.fromArray(Oe.projectionMatrix),ze.viewport.set(Ue.x,Ue.y,Ue.width,Ue.height),ce===!0&&fe.cameras.push(ze)}ve.views[0].transform.position,ve.views[1].transform.position;for(var pe=this.xrManager.session.inputSources,ge=0;ge<this.xrManager.controllers.length;ge++){var Ve=this.xrManager.controllers[ge],Se=pe[ge];if(Se){Ve.update(Se,_,Z);var Ne=this.xrManager.getController(ge),Le=new d.Vector3(0,1.2,0),Ee=Ne.position.clone().add(te).sub(Le);Se.handedness==="left"?this.xrControllerRay.left.set(Ee,new d.Vector3(0,0,-1).applyEuler(Ne.rotation)):Se.handedness==="right"&&this.xrControllerRay.right.set(Ee,new d.Vector3(0,0,-1).applyEuler(Ne.rotation)),this.controllerWrappers[ge].position.copy(new d.Vector3(0,0,0).add(te).sub(Le));var We=this.models.intersectRaycaster(this.xrControllerRay.right);if(We.length===0&&(We=this.xrControllerRay.right.intersectObject(this.boundingMesh,!0).map(function(it){var pt;return F({floor:(pt=W==null?void 0:W.floorIndex)!==null&&pt!==void 0?pt:0},it)})),We.length>=1&&We[0].face)if(Se.handedness==="right"){var Mt=this.xrControllerRay.right.intersectObject(this.xrCustomObjectsScene,!0),sr=We[0].face.normal,ur=sr.clone(),jt=We[0].point.clone();this.intersectMesh.position.copy(jt);var Vt=jt.clone().add(ur);if(this.intersectMesh.lookAt(Vt),Math.abs(sr.y)>.99){var lr=this.camera.position.clone().sub(jt);this.intersectMesh.rotation.z=-Math.atan2(lr.z,lr.x)}this.intersectMesh.visible=!0,this.needsRender=!0,Mt.length>0?(this.pointerLines.right.setPoints(Ee,Mt[0].point),this.pointerLines.right.points.visible=!0,this.intersectMesh.visible=!1):(this.pointerLines.right.points.visible=!1,this.pointerLines.right.setPoints(Ee,We[0].point));var cr=We[0],bt=X("intersect.update",{raycaster:(u=this.xrControllerRay.right)!==null&&u!==void 0?u:null,intersection:cr!=null?cr:null,object:this.intersectMesh});if(this.emit("intersect.update",bt),bt.defaultPrevented){this.hideIntersectMesh();return}}else this.pointerLines.left.setPoints(Ee,We[0].point)}}if(this.camera.pose.distance>.1||b)for(var Wt=0,Xt=Object.keys(this.panoMeshes);Wt<Xt.length;Wt++){var ut=Xt[Wt],Re=this.panoMeshes[ut];Re.setOpacity(0),Re.setCurrent(!1),Re.updateTime&&Re.updateTime(e,r),Re.visible=!1}else if(W){var dr=or(W.visibleIds,function(tt){var it=i.works.getResolvedObserver(tt);return it?W.standingPosition.distanceTo(it.standingPosition):1/0},!0),Nt=dr[1];Nt=ue(Nt,2.5,1/0);for(var fr=W.visibleIds.concat(Qe(this.currentPano)),St=this.getForwardObserverOrNot(),_t=this.camera.getDirection(new d.Vector3),Qt=0,Zt=Object.keys(this.panoMeshes);Qt<Zt.length;Qt++){var ut=Zt[Qt],Re=this.panoMeshes[ut],hr=this.works.getResolvedObserver(ut);if(fr.indexOf(ut)===-1)Re.setCurrent(!1),Re.setOpacity(0);else if(!hr)Re.setCurrent(!1),Re.setOpacity(0);else if(!hr.loadable&&!hr.active)Re.setCurrent(!1),Re.setOpacity(0);else{var Yr=Re.position.clone().setY(this.camera.position.y).distanceTo(this.camera.position);Re.setCurrent(!Re.loading&&Re.progress===0&&St!==null&&St.panoId===ut),Re.setOpacity(Yr<.01?0:ue(Nt/Yr*1.2,.65,.98));var Ur=this.camera.position.clone().setY(Re.position.y),Cr=new d.Vector3().copy(Re.position).sub(Ur).normalize();if(ut===Qe(this.currentPano)){var Yt=ue((.5-Ur.distanceTo(Re.position))/.5,0,1);Cr.multiplyScalar(1-Yt).add(_t.clone().multiplyScalar(Yt))}Cr.length()>0&&Re.quaternion.setFromEuler(new d.Euler(0,Math.atan2(Cr.x,Cr.z),0))}Re.updateTime&&Re.updateTime(e,r)}}var Ye=function(){if(i.tileLevelForFov===!1)return 0;var tt=new d.Vector2(4e3,4e3),it=g.panoId,pt=i.works.getResolvedObserver(it),vt=i.imageOptions.size;if(typeof vt=="undefined"&&pt){var jn=pt.images.up.match(/\/cube_(\d+)\//);jn&&(vt=Number(jn[1]))}typeof vt=="undefined"&&(vt=2048);var Gr=0;vt>=1024&&(Gr=1),vt>=2048&&(Gr=2),vt>=4096&&(Gr=3),vt>=8192&&(Gr=4);var Hr=i.tileLevelForFov(re.fov,tt);return Hr>Gr?Hr:0}(),Ge=function(){var tt=new d.PerspectiveCamera;tt.applyMatrix4(fe.matrix),tt.position.set(0,0,0);var it=i.works.getResolvedObserver(g.panoId),pt=it!=null?it:W;pt&&tt.quaternion.premultiply(pt.quaternion.clone().inverse()),tt.updateProjectionMatrix(),tt.updateMatrixWorld(!0);var vt=new d.Frustum().setFromProjectionMatrix(new d.Matrix4().multiplyMatrices(tt.projectionMatrix,tt.matrixWorldInverse));return vt}();g.panoId===Qe(this.currentPano)&&((c=g.leftPanoPicture)===null||c===void 0?void 0:c.map)instanceof ke&&(g.leftPanoPicture.map.update(Ge,Ye),g.leftPanoPicture.map.needsRender===!0&&(this.needsRender=!0));{var Jt=this.tiling.object.visible;if(Ye>this.TILED_CUBE_TEXTURE_LEVEL&&this.initAnimationed){var zr=g.panoId,nt=this.works.getResolvedObserver(zr);nt?Kn(this.camera.position,nt.position)&&this.locationMotion.ended?(this.tiling.object.visible=!0,this.tiling.panoId!==zr&&this.tiling.cleanup(),this.tiling.panoId=zr,this.tiling.setResource((A=(f=nt.images)===null||f===void 0?void 0:f.tiles)!==null&&A!==void 0?A:[],this.enableIOSEDR&&nt.images.luminance?nt.images.luminance:null),this.tiling.setFetcher(ot(nt.work)),this.tiling.setRotation(nt.quaternion),this.tiling.setPosition(nt.position),this.tiling.update(Ge,Ye,e)):this.tiling.object.visible=!1:this.tiling.object.visible=!1}else this.tiling.object.visible=!1;Jt!==this.tiling.object.visible&&(this.tiling.object.needsRender=!0)}this.panoVideo.object.position.copy(this.camera.position),this.panoVideo.updateTime(e),!(!pe||pe.length<1)&&this.updateControllerHelper(pe,e,r)}}},t.prototype.render=function(){var e=this.xrManager.getCamera(this.camera);this.renderer.render(this.scene,e)},t.prototype.onPanGesture=function(){},t.prototype.onTapGesture=function(){},t.prototype.onPinchGesture=function(){},t.prototype.onMouseMove=function(){},t.prototype.onMouseOut=function(){},t.prototype.panoResourceFromLocationMotionKeyframe=function(e){return this.panoResources[e.key]},t.prototype.updateControllerHelper=function(e,r,i){var a=this.xrControllerRay.left,o=this.xrControllerRay.right;if(!(!e||e.length===0)){for(var s={buttons:{X:!1,Y:!1,LeftTrigger:!1,LeftPinch:!1,A:!1,B:!1,RightTrigger:!1,RightPinch:!1}},l=0;l<e.length;l++){var u=e[l].handedness,c=e[l].gamepad;switch(u){case"left":c.axes&&(this.emitEvent(c.axes[2]===-1,"LeftAxesLeft",r),this.emitEvent(c.axes[2]===1,"LeftAxesRight",r),this.emitEvent(c.axes[3]===-1,"LeftAxesUp",r),this.emitEvent(c.axes[3]===1,"LeftAxesDown",r)),c!=null&&c.buttons&&(c.buttons[4]&&this.emitEvent(c.buttons[4].pressed,"X",r),c.buttons[5]&&this.emitEvent(c.buttons[5].pressed,"Y",r),c.buttons[0]&&this.emitEvent(c.buttons[0].pressed,"LeftTrigger",r),c.buttons[1]&&this.emitEvent(c.buttons[1].pressed,"LeftPinch",r));var f={raycaster:a,axes:{up:c.axes&&c.axes[3]<0?Math.abs(c.axes[3]):0,down:c.axes&&c.axes[3]<0?0:Math.abs(c.axes[3]),left:c.axes&&c.axes[2]<0?Math.abs(c.axes[2]):0,right:c.axes&&c.axes[2]<0?0:Math.abs(c.axes[2])},deltaTime:i};s.buttons.X=c.buttons&&c.buttons[4]?c.buttons[4].pressed:!1,s.buttons.Y=c.buttons&&c.buttons[5]?c==null?void 0:c.buttons[5].pressed:!1,s.buttons.LeftTrigger=c.buttons&&c.buttons[0]?c==null?void 0:c.buttons[0].pressed:!1,s.buttons.LeftPinch=c.buttons&&c.buttons[1]?c==null?void 0:c.buttons[1].pressed:!1,s.left=f;break;case"right":c.axes&&(this.emitEvent(c.axes[2]===-1,"RightAxesLeft",r),this.emitEvent(c.axes[2]===1,"RightAxesRight",r),this.emitEvent(c.axes[3]===-1,"RightAxesUp",r),this.emitEvent(c.axes[3]===1,"RightAxesDown",r)),c.buttons&&(c.buttons[4]&&this.emitEvent(c.buttons[4].pressed,"A",r),c.buttons[5]&&this.emitEvent(c.buttons[5].pressed,"B",r),c.buttons[0]&&this.emitEvent(c.buttons[0].pressed,"RightTrigger",r),c.buttons[1]&&this.emitEvent(c.buttons[1].pressed,"RightPinch",r));var A={raycaster:o,axes:{up:c.axes&&c.axes[3]<0?Math.abs(c.axes[3]):0,down:c.axes&&c.axes[3]<0?0:Math.abs(c.axes[3]),left:c.axes&&c.axes[2]<0?Math.abs(c.axes[2]):0,right:c.axes&&c.axes[2]<0?0:Math.abs(c.axes[2])},deltaTime:i};s.right=A,s.buttons.A=c.buttons&&c.buttons[4]?c==null?void 0:c.buttons[4].pressed:!1,s.buttons.B=c.buttons&&c.buttons[5]?c==null?void 0:c.buttons[5].pressed:!1,s.buttons.RightTrigger=c.buttons&&c.buttons[0]?c==null?void 0:c.buttons[0].pressed:!1,s.buttons.RightPinch=c.buttons&&c.buttons[1]?c==null?void 0:c.buttons[1].pressed:!1;break}}this.emit("xr.controller.update",X("xr.controller.update",s))}},t.prototype.emitEvent=function(e,r,i){var a=this.xrControllerRay.left,o=this.xrControllerRay.right;if(e)if(this.xrControllerState[r].touchStart===!1)this.xrControllerState[r].touchStartTime=i,this.xrControllerState[r].touchStart=!0,this.emit("xr.gesture.buttonDown",X("xr.gesture.buttonDown",{session:this.xrManager.session,machineType:this.xrManager.machineType,buttons:r,isFinal:!1,isFirst:!0,controllers:{raycaster:{leftRay:a,rightRay:o}}}));else{var s=i-this.xrControllerState[r].touchStartTime;s>Os&&this.emit("xr.gesture.press",X("xr.gesture.tap",{session:this.xrManager.session,machineType:this.xrManager.machineType,buttons:r,isFinal:!0,isFirst:!0,controllers:{raycaster:{leftRay:a,rightRay:o}}}))}else if(this.xrControllerState[r].touchStart===!0){this.emit("xr.gesture.buttonUp",X("xr.gesture.buttonUp",{session:this.xrManager.session,machineType:this.xrManager.machineType,buttons:r,isFinal:!0,isFirst:!1,controllers:{raycaster:{leftRay:a,rightRay:o}}}));var s=i-this.xrControllerState[r].touchStartTime;if(s<=Os){var l=this.emit("xr.gesture.tap",X("xr.gesture.tap",{session:this.xrManager.session,machineType:this.xrManager.machineType,buttons:r,isFinal:!0,isFirst:!1,controllers:{raycaster:{leftRay:a,rightRay:o}}}));l||r==="RightTrigger"&&this.checkSelectedPano(this.xrControllerRay.right)}this.xrControllerState[r].touchStart=!1,this.xrControllerState[r].touchStartTime=0}},t}(eo),Pt={Floorplan:Pa,Topview:Df,Panorama:eo,VRPanorama:Dh,Model:zh,Mapview:Jh,XRPanorama:bp},pl=["gesture.pan","gesture.tap","gesture.press","gesture.pinch","gesture.mousewheel","gesture.mousemove","gesture.momentum","initAnimation.start","initAnimation.end","camera.update","intersect.update","pano.select","pano.moveTo","pano.moving","pano.arrived","pano.cancel","pano.error","pano.texture.load","pano.texture.progress","pano.texture.success","pano.texture.error","pano.texture.abort","xr.session.start","xr.session.end","xr.gesture.tap","xr.gesture.press","xr.gesture.buttonUp","xr.gesture.buttonDown","xr.controller.update"];function wp(n){n.on("initAnimation.start",function(t){n.emit("initAnimationWillStart",t.state.panoIndex,t.state,t.userAction)}),n.on("initAnimation.end",function(t){n.emit("initAnimationEnded",t.state.panoIndex,t.state,t.userAction)}),n.on("gesture.pan",function(t){var e=!1;e=n.emit("wantsGesture","pan",t.pointers,t.isFinal),e&&t.preventDefault(),e=n.emit("wantsPanGesture",t.state,t.isFinal),e&&t.preventDefault(),t.defaultPrevented||(n.emit("gesture","pan",t.pointers,t.isFinal),n.emit("panGesture",t.state,t.isFinal))}),n.on("gesture.tap",function(t){var e=!1;e=n.emit("wantsGesture","tap",t.pointers,t.isFinal),e&&t.preventDefault(),e=n.emit("wantsTapGesture",t.center.raycaster,t.center.coords,t.isFinal),e&&t.preventDefault(),t.defaultPrevented||(n.emit("gesture","tap",t.pointers,t.isFinal),n.emit("tapGesture",t.center.raycaster,t.center.coords,t.isFinal))}),n.on("gesture.press",function(t){var e=!1;e=n.emit("wantsGesture","press",t.pointers,t.isFinal),e&&t.preventDefault(),e=n.emit("wantsPressGesture",t.center.raycaster,t.center.coords,t.center.delta,t.isFinal),e&&t.preventDefault(),t.defaultPrevented||(n.emit("gesture","press",t.pointers,t.isFinal),n.emit("pressGesture",t.center.raycaster,t.center.coords,t.center.delta,t.isFinal))}),n.on("gesture.pinch",function(t){var e=!1;e=n.emit("wantsGesture","pinch",t.pointers,t.isFinal),e&&t.preventDefault(),e=n.emit("wantsPinchGesture",t.scale,t.state.fov,t.isFinal),e&&t.preventDefault(),t.defaultPrevented||(n.emit("gesture","pinch",t.pointers,t.isFinal),n.emit("pinchGesture",t.scale,t.state.fov,t.isFinal))}),n.on("gesture.mousewheel",function(t){var e=!1;e=n.emit("wantsGesture","mouseWheel",t.pointers,t.isFinal),e&&t.preventDefault(),e=n.emit("wantsMouseWheel",t.center.delta,t.state.fov,t.isFinal),e&&t.preventDefault(),t.defaultPrevented||(n.emit("gesture","mouseWheel",t.pointers,t.isFinal),n.emit("mouseWheel",t.center.delta,t.state.fov,t.isFinal))}),n.on("gesture.mousemove",function(t){var e=!1;e=n.emit("wantsGesture","mouseMove",t.pointers,t.isFinal),e&&t.preventDefault(),t.defaultPrevented||(n.emit("gesture","mouseMove",t.pointers,t.isFinal),e=n.emit("wantsChangeCameraFov",t.state.fov),e&&t.preventDefault())}),n.on("gesture.momentum",function(t){var e=!1;e=n.emit("wantsInteriaPan",t.state),e&&t.preventDefault(),t.defaultPrevented||n.emit("interiaPan",t.state,t.isFinal)}),n.on("camera.update",function(t){n.emit("cameraFovUpdate",t.state.fov,t.userAction),n.emit("cameraDirectionUpdate",t.state,t.userAction);var e=Ft(t.state);e.setLength(t.state.distance);var r=t.state.offset.clone().sub(e);n.emit("cameraPositionUpdate",r,t.userAction),n.emit("cameraUpdate",t.state,t.userAction)}),n.on("intersect.update",function(t){if(t.intersection){var e=!1;e=n.emit("wantsShowIntersectionOnModel",t.raycaster),e&&t.preventDefault(),t.defaultPrevented||n.emit("intersectionOnModelUpdate",t.intersection,t.object)}else n.emit("intersectionHidden")}),n.on("pano.request",function(t){var e=n.emit("wantsMoveToPano",t.state.panoIndex,t.options,t.userAction);e||(e=n.emit("wantsToMoveToPano",t.state.panoIndex,t.options,t.userAction)),e&&t.preventDefault(),t.defaultPrevented||n.emit("panoWillLoad",t.state.panoIndex)}),n.on("pano.select",function(t){n.emit("panoSelected",t.state.panoIndex)}),n.on("pano.moveTo",function(t){n.emit("panoLoaded",t.state.panoIndex),n.emit("moveToPano",t.state.panoIndex,t.userAction),n.emit("panoWillArrive",t.state.panoIndex,t.state,t.userAction)}),n.on("pano.moving",function(t){n.emit("movingToPano",t.state.panoIndex,t.prevPano.panoIndex,t.progress)}),n.on("pano.arrived",function(t){n.emit("panoArrived",t.state.panoIndex,t.state,t.userAction)}),n.on("pano.cancel",function(t){n.emit("moveToPanoCanceled",t.state.panoIndex)}),n.on("pano.error",function(t){n.emit("panoLoadError",t.error,t.state.panoIndex)}),n.on("pano.texture.load",function(t){n.emit("textureStartLoad",t.pano.panoIndex)}),n.on("pano.texture.success",function(t){n.emit("textureLoaded",t.pano.panoIndex,t.meta)}),n.on("pano.texture.error",function(t){n.emit("textureError",t.error,t.pano.panoIndex)}),n.on("pano.texture.abort",function(t){n.emit("textureAbort",t.pano.panoIndex)}),n.on("pano.texture.progress",function(t){n.emit("textureLoading",t.progress,t.pano.panoIndex)}),n.on("xr.session.start",function(t){n.emit("webXRSessionStart")}),n.on("xr.session.end",function(t){n.emit("webXRSessionEnd")}),n.on("xr.gesture.tap",function(t){n.emit("webXRControllerEvent","tap",t.buttons,{raycaster:t.controllers.raycaster})}),n.on("xr.gesture.press",function(t){n.emit("webXRControllerEvent","press",t.buttons,{raycaster:t.controllers.raycaster})}),n.on("xr.gesture.buttonUp",function(t){n.emit("webXRControllerEvent","buttonUp",t.buttons,{raycaster:t.controllers.raycaster})}),n.on("xr.gesture.buttonDown",function(t){n.emit("webXRControllerEvent","buttonDown",t.buttons,{raycaster:t.controllers.raycaster})}),n.on("xr.controller.update",function(t){n.emit("webXRControllerRayUpdate",{leftRay:t.left?t.left.raycaster:void 0,rightRay:t.right?t.right.raycaster:void 0}),t.left&&n.emit("webXRAxesUpdate","left",{raycaster:{leftRay:t.left?t.left.raycaster:void 0,rightRay:t.right?t.right.raycaster:void 0},axesState:{up:t.left.axes.up,down:t.left.axes.down,left:t.left.axes.left,right:t.left.axes.right},deltaTime:t.left.deltaTime}),t.right&&n.emit("webXRAxesUpdate","right",{raycaster:{leftRay:t.left?t.left.raycaster:void 0,rightRay:t.right?t.right.raycaster:void 0},axesState:{up:t.right.axes.up,down:t.right.axes.down,left:t.right.axes.left,right:t.right.axes.right},deltaTime:t.right.deltaTime})}),n.on("works.request",function(t){n.emit("willLoad",t.input,t.works[0],t.state)}),n.on("works.load",function(t){n.emit("load",t.input,t.works[0],t.state)}),n.on("works.ready",function(t){n.emit("loaded",t.input,t.works[0])}),n.on("state.change",function(t){n.emit("stateChange",t.state,t.userAction)}),n.on("currentState.change",function(t){n.emit("currentStateChange",t.state,t.userAction)}),n.on("state.set",function(t){n.emit("setState",t.state)}),n.on("state.synced",function(t){n.emit("stateSynced",t.state)}),n.on("model.request",function(t){n.emit("modelWillLoad",t.work.model)}),n.on("model.error",function(t){n.emit("modelLoadError",t.error,t.model)}),n.on("model.load",function(t){n.emit("modelLoaded",t.model)}),n.on("model.changeShownFloor",function(t){n.emit("modelShownFloorChange",t.model.shownFloor,t.model.floorLength)}),n.on("render",function(t){n.emit("renderFrame",t.needsRender)}),n.on("mode.change.request",function(t){n.emit("wantsChangeMode",t.mode,t.prevMode)}),n.on("mode.change",function(t){n.emit("modeChange",t.mode,t.prevMode,t.state.panoIndex,t.state,t.userAction)}),n.on("helpers.visible",function(t){n.emit("helpersVisibleChange",t.object.visible)}),n.on("network.resource",function(t){n.emit("network",t.source,t.requestType,t.requestState,t.detail)})}function Ep(){if(typeof window!="undefined"){var n=document.createElement("video");n.loop=!0,n.autoplay=!0,n.playsInline=!0,n.muted=!0,n.crossOrigin="";var t=function(){document.removeEventListener("touchstart",t,!1),document.removeEventListener("mousedown",t,!1),n.muted=!1};return document.addEventListener("touchstart",t,!1),document.addEventListener("mousedown",t,!1),n}else return{}}function xp(n){{var t=new d.DirectionalLight(16777215,.5);t.position.copy(new d.Vector3(1,1,1)),n.add(t)}{var t=new d.DirectionalLight(16777215,.3);n.add(t)}{var t=new d.AmbientLight(16777215,.3);n.add(t)}}function Cp(n){for(var t,e,r={},i=n.split(/(\;|\,)/),a=0,o=i;a<o.length;a++){var s=o[a],l=s.split("="),u=(t=l[0])===null||t===void 0?void 0:t.trim(),c=(e=l[1])===null||e===void 0?void 0:e.trim();u&&c&&(r[u]=c)}return r}function vl(){var n;if(typeof document!="undefined")for(var t=document.getElementsByTagName("meta"),e=0;e<t.length;e++){var r=t[e];if(r.getAttribute("name")==="viewport"){var i=Cp((n=r.getAttribute("content"))!==null&&n!==void 0?n:""),a=Number(i["initial-scale"]);if(!isNaN(a))return a}}return 1}const Mp="data:image/png;base64,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";var Ns=[351,63],Qs=[20,20],Sp=new Float32Array([-.5,-.5,0,.5,-.5,0,-.5,.5,0,.5,.5,0]),Ip=new Float32Array([0,0,1,0,0,1,1,1]),Tp=new Uint8Array([0,1,2,1,3,2]),Ri=new d.BufferGeometry;Ri.setAttribute("position",new d.BufferAttribute(Sp,3));Ri.setAttribute("uv",new d.BufferAttribute(Ip,2));Ri.setIndex(new d.BufferAttribute(Tp,1));var ci=new d.MeshBasicMaterial({transparent:!0,depthTest:!1,depthWrite:!1,stencilWrite:!1,fog:!1}),Al=new d.Mesh(Ri,ci);Al.matrixAutoUpdate=!1;var ao=new d.Scene;ao.add(Al);ao.matrixAutoUpdate=!1;var qn=new d.OrthographicCamera(-.5,.5,.5,-.5,.1,1);qn.position.set(0,0,.5);qn.lookAt(0,0,0);qn.updateMatrixWorld(!0);qn.matrixAutoUpdate=!1;var Pp=new d.Vector4,Bp=new d.Vector4;function Ds(n){if(ci.map){var r=n.getViewport(Pp),i=n.getScissor(Bp),a=n.getScissorTest(),o=n.autoClear,s=i.x+Qs[0]/3,l=i.y+Qs[1]/3,u=Ns[0]/3,c=Ns[1]/3;n.setViewport(s,l,u,c),n.setScissor(s,l,u,c),n.setScissorTest(!0),n.autoClear=!1,n.render(ao,qn),n.setViewport(r),n.setScissor(i),n.setScissorTest(a),n.autoClear=o}else{var t=new d.Texture,e=new Image;e.onload=function(){t.image=e,t.wrapS=d.ClampToEdgeWrapping,t.wrapT=d.ClampToEdgeWrapping,t.minFilter=d.LinearFilter,t.needsUpdate=!0,t.generateMipmaps=!1,ci.needsUpdate=!0,e.onload=D},e.src=Mp,ci.map=t}}var Rp=800,Fp=function(n){return n.replace("//vrlab-public.ljcdn.com/","//vr-public.realsee-cdn.cn/").replace("//vrlab-image4.ljcdn.com/","//vr-image-4.realsee-cdn.cn/").replace("//vrlab-image3.ljcdn.com/","//vr-image-3.realsee-cdn.cn/").replace("//vrlab-image2.ljcdn.com/","//vr-image-2.realsee-cdn.cn/").replace("//vrlab-image1.ljcdn.com/","//vr-image-1.realsee-cdn.cn/")},kp=[{name:"Z",transformToUpAxisZ:function(){return new d.Matrix4}},{name:"Y",transformToUpAxisZ:function(){return new d.Matrix4().makeRotationAxis(new d.Vector3(1,0,0),+Math.PI/2)}},{name:"-Y",transformToUpAxisZ:function(){return new d.Matrix4().makeRotationAxis(new d.Vector3(1,0,0),-Math.PI/2)}},{name:"WGS84",transformToEarthCentered:function(){return new d.Matrix4}},{name:"GCJ02",transformToEarthCentered:function(){return new d.Matrix4}},{name:"BD09",transformToEarthCentered:function(){return new d.Matrix4}}],En=new d.Vector2,ni=new d.Frustum,ii=new d.Matrix4,Us=new WeakMap,zs=new WeakMap,Gs=xa([]),ml=function(n){de(t,n);function t(e){e===void 0&&(e={});var r,i,a,o,s,l,u,c,f,A,p=n.call(this)||this;p.ident=yt(),typeof window!="undefined"&&(Ra.instances[p.ident]=p),p.renderSwitch01=0,p.currentMode="Panorama",p.pano={workCode:"",panoIndex:0},p.needsRender=!1,p.onlyRenderIfNeeds=(r=e.onlyRenderIfNeeds)!==null&&r!==void 0?r:!0,p.imageOptions=F({},(i=e.imageOptions)!==null&&i!==void 0?i:{}),p.textureOptions=F({},(a=e.textureOptions)!==null&&a!==void 0?a:{}),p.poweredByRealsee=(o=e.poweredByRealsee)!==null&&o!==void 0?o:!0,p.extraElements=[],p.controllerInits={Panorama:Object.assign({},e.panorama),Model:Object.assign({},e.model),Floorplan:Object.assign({},e.floorplan),Topview:Object.assign({},e.topview),Mapview:Object.assign({},e.mapview),VRPanorama:Object.assign({},e.vrPanorama),XRPanorama:Object.assign({},e.xrPanorama)},p.coordinatesSystemTransformers=ht([],(s=e.coordinatesSystemTransformers)!==null&&s!==void 0?s:[],!0);for(var y=function(k){var L=v.coordinatesSystemTransformers.find(function(O){return O.name===k.name});L||v.coordinatesSystemTransformers.push(F({},k))},v=this,m=0,h=kp;m<h.length;m++){var g=h[m];y(g)}if(p.fps={testCount:0,testTime:be()},p.info=null,p.modeChangeDuration=(l=e.modeChangeDuration)!==null&&l!==void 0?l:Rp,p.enableWheel=(u=e.enableWheel)!==null&&u!==void 0?u:!0,typeof window!="undefined")if("renderer"in e)e.renderer instanceof jr&&p.throwError(new Error("cannot render a internal renderer")),p.renderer=e.renderer;else try{p.renderer=new jr({preserveDrawingBuffer:e.preserveDrawingBuffer,backgroundColor:e.backgroundColor,backgroundAlpha:e.backgroundAlpha,antialias:e.antialias,webgl2:e==null?void 0:e.webgl2});var b=vl();p.renderer.setPixelRatio(b===1?window.devicePixelRatio:1),p.renderer.setSize(512,512)}catch(k){k instanceof Error&&p.throwError(k)}p.getPixelsRenderTarget=new d.WebGLRenderTarget(1,1,{encoding:(f=(c=p.renderer)===null||c===void 0?void 0:c.outputEncoding)!==null&&f!==void 0?f:d.sRGBEncoding}),p.scissor=Object.assign({left:0,bottom:0,width:1,height:1},e.scissor),p.camera=new Si(90),p.scene=new uu,p.xrCustomObjectsScene=new d.Scene,p.scene.add(p.xrCustomObjectsScene),p.scene.matrixAutoUpdate=!1,p.lastLoadWorkTask=Promise.resolve(),p.requestProxy=(A=e.requestProxy)!==null&&A!==void 0?A:Fp,p.networkSubscribe=new Zs,p.networkSubscribe.on("network",function(k,L,O,Q){var N;p.emit("network.resource",X("network.resource",{source:k,requestType:L,requestState:O,detail:Q})),(N=p.analysis)===null||N===void 0||N.network(p.works,k,L,O,Q)}),p.boundingMesh=Ff(new d.Box3(new d.Vector3(-.5,-.5,-.5),new d.Vector3(.5,.5,.5))),p.boundingMesh.name="bounding",p.scene.add(p.boundingMesh),p.models=hs(),p.models.push(new Sa),p.lastModels=hs(),p.lastWorks=xa([]),p.readyCallbacks=[],p.syncingState=!1,p.modelGroup=new d.Group,p.modelGroup.visible=!1,p.modelGroup.name="model",p.modelGroup.matrixAutoUpdate=!1,p.modelGroup.renderOrder=-4,p.scene.add(p.modelGroup),p.helperGroup=new d.Group,p.helperGroup.name="helper",p.helperGroup.matrixAutoUpdate=!1,p.scene.add(p.helperGroup),p.videoTexture=new d.VideoTexture(e.videoInstance||Ep()),xp(p.scene),p.copyEffect=new Pi(p.renderer,p.scene,p.camera,p.models),p.state={mode:p.currentMode,workCode:p.pano.workCode,panoIndex:p.pano.panoIndex,longitude:p.camera.pose.longitude,latitude:p.camera.pose.latitude,fov:p.camera.pose.fov,offset:p.camera.pose.offset.clone(),distance:p.camera.pose.distance},p.stateSynced=!1,p._enableIOSEDR=!1,p.destroyed=!1,p.paused=!0,typeof window!="undefined"&&(e.play!==!1&&p.play(),p.stopAnimationLoop=st.shared.add(function(k,L){for(var O=[],Q=2;Q<arguments.length;Q++)O[Q-2]=arguments[Q];p.updateTime.apply(p,ht([k,L],O,!1))},!1,0,10));var w=function(){typeof document!="undefined"&&document.fullscreenElement===null&&p.currentMode==="VRPanorama"&&p.controller.emit("vr.requestExit",X("vr.requestExit",{}))},E=function(){p.needsRender=!0};if(typeof document!="undefined"&&document.addEventListener("fullscreenchange",w,!1),p.renderer&&p.renderer.domElement.addEventListener("webglcontextrestored",E,!1),p.removeEventListeners=function(){typeof document!="undefined"&&document.removeEventListener("fullscreenchange",w,!1),p.renderer&&p.renderer.domElement.removeEventListener("webglcontextrestored",E,!1)},p.plugins={},e.plugins&&e.plugins.length)for(var C=0,x=e.plugins;C<x.length;C++){var M=x[C];if(typeof M=="function")M(p);else if(Array.isArray(M)){var S=M[0],P=M[1],I=M[2];if(typeof S=="function"){var B=S(p,I);typeof P=="string"&&(p.plugins[P]?p.throwError(new Error("plugin name ".concat(P," is exists."))):p.plugins[P]=B)}}}return p.gpuPickingRenderTarget=new d.WebGLRenderTarget(1,1),p.meshReplaceMaterialMap=new Map,p.meshOriginMaterialMap=new Map,wp(p),p}return Object.defineProperty(t,"version",{get:function(){return"6.0.0-alpha.91"},enumerable:!1,configurable:!0}),Object.defineProperty(t,"dracoPath",{get:function(){return gi.decoderPath},set:function(e){gi.setDecoderPath(e)},enumerable:!1,configurable:!0}),Object.defineProperty(t,"ktx2Path",{get:function(){return kn.transcoderPath},set:function(e){kn.setTranscoderPath(e)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"panoIndex",{get:function(){return this.pano.panoIndex},enumerable:!1,configurable:!0}),t.prototype.getGPUPicking=function(e,r,i,a,o){var s=this;if(a===void 0&&(a=1),o===void 0&&(o=new d.Vector3(0,0,0)),!this.renderer)throw new Error("renderer is not initialized.");this.models.setMaterial({constantColor:o}),this.scene.traverse(function(f){if(!(!(f instanceof d.Mesh)||f instanceof Ct)){var A=Object.keys(i).filter(function(y){return y===f.uuid})[0];if(A)if(s.meshOriginMaterialMap.set(A,f.material),s.meshReplaceMaterialMap.get(A))f.material=s.meshReplaceMaterialMap.get(A);else{var p=new d.ShaderMaterial({uniforms:{color:{value:i[A]}},vertexShader:`
|
|
2013
|
+
`},io=function(n){de(t,n);function t(e){var r=n.call(this,{uniforms:d.UniformsUtils.clone(sa.uniforms),vertexShader:sa.vertexShader,fragmentShader:sa.fragmentShader,clipping:!0})||this;return r.type="LineMaterial",r.dashed=!1,Object.defineProperties(r,{color:{enumerable:!0,get:function(){return this.uniforms.diffuse.value},set:function(i){this.uniforms.diffuse.value=i}},linewidth:{enumerable:!0,get:function(){return this.uniforms.linewidth.value},set:function(i){this.uniforms.linewidth.value=i}},dashScale:{enumerable:!0,get:function(){return this.uniforms.dashScale.value},set:function(i){this.uniforms.dashScale.value=i}},dashSize:{enumerable:!0,get:function(){return this.uniforms.dashSize.value},set:function(i){this.uniforms.dashSize.value=i}},gapSize:{enumerable:!0,get:function(){return this.uniforms.gapSize.value},set:function(i){this.uniforms.gapSize.value=i}},opacity:{enumerable:!0,get:function(){return this.uniforms.opacity.value},set:function(i){this.uniforms.opacity.value=i}},resolution:{enumerable:!0,get:function(){return this.uniforms.resolution.value},set:function(i){this.uniforms.resolution.value.copy(i)}}}),r.setValues(e),r}return t}(d.ShaderMaterial);Object.assign(io.prototype,{isLineMaterial:!0});var cl=function(n){de(t,n);function t(e,r){var i=n.call(this)||this;return i.type="LineSegments2",i.geometry=e!==void 0?e:new no,i.material=r!==void 0?r:new io({color:Math.random()*16777215}),i}return t.prototype.computeLineDistances=function(){for(var e=this.geometry,r=e.attributes.instanceStart,i=e.attributes.instanceEnd,a=new Float32Array(2*r.count),o=new d.Vector3,s=new d.Vector3,l=0,u=0,c=r.count;l<c;l++,u+=2)o.fromBufferAttribute(r,l),s.fromBufferAttribute(i,l),a[u]=u===0?0:a[u-1],a[u+1]=a[u]+o.distanceTo(s);var f=new d.InstancedInterleavedBuffer(a,2,1);return e.setAttribute("instanceDistanceStart",new d.InterleavedBufferAttribute(f,1,0)),e.setAttribute("instanceDistanceEnd",new d.InterleavedBufferAttribute(f,1,1)),this},t.prototype.raycast=function(e,r){e.camera===null&&console.error('LineSegments2: "Raycaster.camera" needs to be set in order to raycast against LineSegments2.');var i=e.ray,a=e.camera,o=a.projectionMatrix,s=this.geometry,l=this.material,u=l.resolution,c=l.linewidth,f=s.attributes.instanceStart,A=s.attributes.instanceEnd,p=new d.Vector4,y=new d.Vector4,v=new d.Vector4,m=new d.Vector3,h=new d.Matrix4,g=new d.Line3,b=new d.Vector3;i.at(1,v),v.w=1,v.applyMatrix4(a.matrixWorldInverse),v.applyMatrix4(o),v.multiplyScalar(1/v.w),v.x*=u.x/2,v.y*=u.y/2,v.z=0,m.copy(v);var w=this.matrixWorld;h.multiplyMatrices(a.matrixWorldInverse,w);for(var E=0,C=f.count;E<C;E++){p.fromBufferAttribute(f,E),y.fromBufferAttribute(A,E),p.w=1,y.w=1,p.applyMatrix4(h),y.applyMatrix4(h),p.applyMatrix4(o),y.applyMatrix4(o),p.multiplyScalar(1/p.w),y.multiplyScalar(1/y.w);var x=p.z<-1&&y.z<-1,M=p.z>1&&y.z>1;if(!(x||M)){p.x*=u.x/2,p.y*=u.y/2,y.x*=u.x/2,y.y*=u.y/2,g.start.copy(p),g.start.z=0,g.end.copy(y),g.end.z=0;var S=g.closestPointToPointParameter(m,!0);g.at(S,b);var P=d.MathUtils.lerp(p.z,y.z,S),I=P>=-1&&P<=1,B=m.distanceTo(b)<c*.5;if(I&&B){g.start.fromBufferAttribute(f,E),g.end.fromBufferAttribute(A,E),g.start.applyMatrix4(w),g.end.applyMatrix4(w);var k=new d.Vector3,L=new d.Vector3;i.distanceSqToSegment(g.start,g.end,L,k),r.push({point:L,pointOnLine:k,distance:i.origin.distanceTo(L),object:this,faceIndex:E})}}}},t}(d.Mesh);Object.assign(cl.prototype,{isLineSegments2:!0});var dl=function(n){de(t,n);function t(e,r){var i=n.call(this,e,r)||this;return i.type="Line2",i}return t}(cl);Object.assign(dl.prototype,{isLine2:!0});var fl=function(n){de(t,n);function t(){var e=n.call(this)||this;return e.type="LineGeometry",e}return t.prototype.setPositions=function(e){for(var r=e.length-3,i=new Float32Array(2*r),a=0;a<r;a+=3)i[2*a]=e[a],i[2*a+1]=e[a+1],i[2*a+2]=e[a+2],i[2*a+3]=e[a+3],i[2*a+4]=e[a+4],i[2*a+5]=e[a+5];return n.prototype.setPositions.call(this,i),this},t.prototype.setColors=function(e){for(var r=e.length-3,i=new Float32Array(2*r),a=0;a<r;a+=3)i[2*a]=e[a],i[2*a+1]=e[a+1],i[2*a+2]=e[a+2],i[2*a+3]=e[a+3],i[2*a+4]=e[a+4],i[2*a+5]=e[a+5];return n.prototype.setColors.call(this,i),this},t.prototype.fromLine=function(e){var r=e.geometry;if(r instanceof d.Geometry){var i=new d.BufferGeometry().fromGeometry(r);this.setPositions(i.attributes.position.array)}else r instanceof d.BufferGeometry&&this.setPositions(r.attributes.position.array);return this},t.prototype.copy=function(){return this},t}(no);Object.assign(fl.prototype,{isLineGeometry:!0});var rp="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAAZiS0dEAAAAAAAA+UO7fwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9sHDgwCEMBJZu0AAAAdaVRYdENvbW1lbnQAAAAAAENyZWF0ZWQgd2l0aCBHSU1QZC5lBwAABM5JREFUWMO1V0tPG2cUPZ4Hxh6DazIOrjFNqJs0FIMqWFgWQkatsmvVbtggKlSVRVf5AWz4AWz4AUSKEChll19QJYSXkECuhFxsHjEhxCYm+DWGMZ5HF72DJq4bAzFXurI0M/I5997v3u9cC65vTJVn2lX/xHINQOYSBLTLEuIuCWw4Z3IGAEvf6ASmVHjNzHCXBG4A0AjACsAOwEbO0nsFQBnAGYASAIl+ZRMR7SolMEdsByD09fV5R0ZGgg8ePPjW5/N1iqLYpuu6RZblciKR2I9Go69evnwZnZ+fjwI4IS8AKBIRzeQfJWCANwKwh0KhtrGxsYehUOin1tbW+zzP23ietzY2NnIAoGmaLsuyUiqVyvl8XtrY2NiamZn589mzZxsAUgCOAeQAnFI2tI+VxIjaAeDzoaGh7xYWFuZOTk6OZVk+12uYqqq6JEnn0Wg0OT4+/geAXwGEAdwDIFJQXC1wO4DWR48e/RCPxxclSSroVzRFUbSDg4P848ePFwH8DuAhkWih83TRQWxFOXgAwvDwcOfo6OhvXV1d39tsNtuVBwTDWBwOh1UUxVsMw1hXVlbSdCgNV43uYSvrHg6H24aHh38eHBz85TrgF9FYLHA4HLzH43FvbW2d7u/vG+dANp8FpqIlbd3d3V8Fg8EfBUFw4BONZVmL3+9vHhkZCQL4AoAHgJPK8G+yzC0XDofdoVAo5PP5vkadTBAEtr+/39ff3x8gAp/RPOEqx2qjx+NpvXv3bk9DQ0NDvQgwDIOWlhZrMBj8kgi0UJdxRgYMArzL5XJ7vd57qLPZ7Xamp6fnNgBXtQxcjFuHw+Hyer3t9SYgCAITCAScAJoBNNEY/08GOFVVrfVMv7kMNDntFD1vjIAPrlRN0xjckOm6biFQ3jwNPwDMZrOnqVTqfb3Bi8Wivru7W/VCYkwPlKOjo0IikXh7EwQikYgE4Nw0CfXKDCipVCoTj8df3QABbW1tLUc6oUgkFPMkVACUNjc337148eKvw8PDbJ2jP1taWkoCyNDVXDSECmNSK4qiKNLq6urW8+fPI/UicHx8rD59+jSVy+WOAKSJhKENwFItLtoxk8mwsixzHR0dHe3t7c5PAU+n09rs7OzJkydPYqVSaQfANoDXALIk31S2smU1TWMPDg7K5XKZ7+3t9TudTut1U7+wsFCcmJiIpdPpbQBxADsAknQWymYCOukBHYCuKApisdhpMpnURFEU79y503TVyKenpzOTk5M7e3t7MQKPV0Zv1gNm+awB0MvlshqLxfLb29uyJElWURSbXC4XXyvqxcXFs6mpqeTc3Nzu3t7e3wQcA7BPZ8Cov1pNlJplmQtAG8MwHV6v95tAINA5MDBwPxAIuLu6upr8fr/VAN3c3JQjkcjZ+vp6fnl5+d2bN29SuVzuNYAEpf01CdRChUL+X1VskHACuA3Ay3Fcu9vt7nA6nZ7m5uYWQRCaNE3jVVW15PP580KhIGUymWw2m00DOAJwSP4WwPtq4LX2Ao6USxNlQyS/RcQcdLGwlNIz6vEMAaZpNzCk2Pll94LK/cDYimxERiBwG10sxjgvEZBE0UpE6vxj+0Ct5bTaXthgEhRmja8QWNkkPGsuIpfdjpkK+cZUWTC0KredVmtD/gdlSl6EG4AMvQAAAABJRU5ErkJggg==",Fs=14467195,np=8,ip=2,ap=20,ks=null,Ba=function(n){de(t,n);function t(e,r){e===void 0&&(e=new d.Vector3),r===void 0&&(r=new d.Vector3);var i=n.call(this)||this;i.type="FiveLine",i.needsRender=!0;var a=new fl,o=new io({color:Fs,linewidth:ip,dashScale:ap,dashed:!1});i.line=new dl(a,o);var s=new d.BufferGeometry,l=new d.PointsMaterial({color:Fs,size:np,map:ks||(ks=new d.TextureLoader().load(rp)),sizeAttenuation:!1,transparent:!0});return i.points=new d.Points(s,l),i.points.renderOrder=11,i.points.frustumCulled=!1,i.setPoints(e,r),i.add(i.line,i.points),i}return Object.defineProperty(t,"version",{get:function(){return"6.0.0-alpha.92"},enumerable:!1,configurable:!0}),t.prototype.setPoints=function(e,r){var i=[].concat(e.toArray(),r.toArray());this.points.geometry.setAttribute("position",new d.BufferAttribute(new Float32Array(i),3)),this.line.geometry.setPositions(i),this.line.computeLineDistances(),this.needsRender=!0},t.prototype.getPoints=function(){var e=this.points.geometry.attributes.position.array;return[new d.Vector3(e[0],e[1],e[2]),new d.Vector3(e[3],e[4],e[5])]},t.prototype.setMaterial=function(e){var r=this.line.material;for(var i in e)if(e.hasOwnProperty(i)){var a=e[i];i==="dashed"?(r.dashed=a,a?r.defines.USE_DASH="":delete r.defines.USE_DASH,r.needsUpdate=!0):r[i]=e[i]}this.needsRender=!0},t.prototype.setResolution=function(e,r){var i=this.line.material.resolution;(i.x!==e||i.y!==r)&&(i.set(e,r),this.needsRender=!0)},t}(d.Object3D);Object.assign(Ba.prototype,{isFiveLine:!0});var qe={Handedness:Object.freeze({NONE:"none",LEFT:"left",RIGHT:"right"}),ComponentState:Object.freeze({DEFAULT:"default",TOUCHED:"touched",PRESSED:"pressed"}),ComponentProperty:Object.freeze({BUTTON:"button",X_AXIS:"xAxis",Y_AXIS:"yAxis",STATE:"state"}),ComponentType:Object.freeze({TRIGGER:"trigger",SQUEEZE:"squeeze",TOUCHPAD:"touchpad",THUMBSTICK:"thumbstick",BUTTON:"button"}),ButtonTouchThreshold:.05,AxisTouchThreshold:.1,VisualResponseProperty:Object.freeze({TRANSFORM:"transform",VISIBILITY:"visibility"})};function hl(n){return xi(this,void 0,void 0,function(){var t;return Ci(this,function(e){switch(e.label){case 0:return[4,fetch(n)];case 1:if(t=e.sent(),t.ok)return[2,t.json()];throw new Error(t.statusText)}})})}function op(n){return xi(this,void 0,void 0,function(){var t,e;return Ci(this,function(r){switch(r.label){case 0:if(!n)throw new Error("No basePath supplied");return t="profilesList.json",[4,hl("".concat(n,"/").concat(t))];case 1:return e=r.sent(),[2,e]}})})}function sp(n,t,e,r){return e===void 0&&(e=null),r===void 0&&(r=!0),xi(this,void 0,void 0,function(){var i,a,o,s,l,u;return Ci(this,function(c){switch(c.label){case 0:if(!n)throw new Error("No xrInputSource supplied");if(!t)throw new Error("No basePath supplied");return[4,op(t)];case 1:if(i=c.sent(),n.profiles.some(function(f){var A=i[f];return A&&(a={profileId:f,profilePath:"".concat(t,"/").concat(A.path),deprecated:!!A.deprecated}),!!a}),!a){if(!e)throw new Error("No matching profile name found");if(o=i[e],!o)throw new Error('No matching profile name found and default profile "'.concat(e,'" missing.'));a={profileId:e,profilePath:"".concat(t,"/").concat(o.path),deprecated:!!o.deprecated}}return[4,hl(a.profilePath)];case 2:if(s=c.sent(),r){if(u=void 0,u=s.layouts[n.handedness],!u)throw new Error("No matching handedness, ".concat(n.handedness,", in profile ").concat(a.profileId));u.assetPath&&(l=a.profilePath.replace("profile.json",u.assetPath))}return[2,{profile:s,assetPath:l}]}})})}var up={xAxis:0,yAxis:0,button:0,state:qe.ComponentState.DEFAULT};function lp(n,t){n===void 0&&(n=0),t===void 0&&(t=0);var e=n,r=t,i=Math.sqrt(n*n+t*t);if(i>1){var a=Math.atan2(t,n);e=Math.cos(a),r=Math.sin(a)}var o={normalizedXAxis:e*.5+.5,normalizedYAxis:r*.5+.5};return o}var cp=function(){function n(t){this.componentProperty=t.componentProperty,this.states=t.states,this.valueNodeName=t.valueNodeName,this.valueNodeProperty=t.valueNodeProperty,this.valueNodeProperty===qe.VisualResponseProperty.TRANSFORM&&(this.minNodeName=t.minNodeName,this.maxNodeName=t.maxNodeName),this.value=0,this.updateFromComponent(up)}return n.prototype.updateFromComponent=function(t){var e=t.xAxis,r=t.yAxis,i=t.button,a=t.state,o=lp(e,r),s=o.normalizedXAxis,l=o.normalizedYAxis;switch(this.componentProperty){case qe.ComponentProperty.X_AXIS:this.value=this.states.includes(a)?s:.5;break;case qe.ComponentProperty.Y_AXIS:this.value=this.states.includes(a)?l:.5;break;case qe.ComponentProperty.BUTTON:this.value=this.states.includes(a)?i:0;break;case qe.ComponentProperty.STATE:this.valueNodeProperty===qe.VisualResponseProperty.VISIBILITY?this.value=this.states.includes(a):this.value=this.states.includes(a)?1:0;break;default:throw new Error("Unexpected visualResponse componentProperty ".concat(this.componentProperty))}},n}(),dp=function(){function n(t,e){var r=this;if(!t||!e||!e.visualResponses||!e.gamepadIndices||Object.keys(e.gamepadIndices).length===0)throw new Error("Invalid arguments supplied");this.id=t,this.type=e.type,this.rootNodeName=e.rootNodeName,this.touchPointNodeName=e.touchPointNodeName,this.visualResponses={},Object.keys(e.visualResponses).forEach(function(i){var a=new cp(e.visualResponses[i]);r.visualResponses[i]=a}),this.gamepadIndices=Object.assign({},e.gamepadIndices),this.values={state:qe.ComponentState.DEFAULT,button:this.gamepadIndices.button!==void 0?0:void 0,xAxis:this.gamepadIndices.xAxis!==void 0?0:void 0,yAxis:this.gamepadIndices.yAxis!==void 0?0:void 0}}return Object.defineProperty(n.prototype,"data",{get:function(){var t=F({id:this.id},this.values);return t},enumerable:!1,configurable:!0}),n.prototype.updateFromGamepad=function(t){var e=this;if(this.values.state=qe.ComponentState.DEFAULT,this.gamepadIndices.button!==void 0&&t.buttons.length>this.gamepadIndices.button){var r=t.buttons[this.gamepadIndices.button];this.values.button=r.value,this.values.button=this.values.button<0?0:this.values.button,this.values.button=this.values.button>1?1:this.values.button,r.pressed||this.values.button===1?this.values.state=qe.ComponentState.PRESSED:(r.touched||this.values.button>qe.ButtonTouchThreshold)&&(this.values.state=qe.ComponentState.TOUCHED)}this.gamepadIndices.xAxis!==void 0&&t.axes.length>this.gamepadIndices.xAxis&&(this.values.xAxis=t.axes[this.gamepadIndices.xAxis],this.values.xAxis=this.values.xAxis<-1?-1:this.values.xAxis,this.values.xAxis=this.values.xAxis>1?1:this.values.xAxis,this.values.state===qe.ComponentState.DEFAULT&&Math.abs(this.values.xAxis)>qe.AxisTouchThreshold&&(this.values.state=qe.ComponentState.TOUCHED)),this.gamepadIndices.yAxis!==void 0&&t.axes.length>this.gamepadIndices.yAxis&&(this.values.yAxis=t.axes[this.gamepadIndices.yAxis],this.values.yAxis=this.values.yAxis<-1?-1:this.values.yAxis,this.values.yAxis=this.values.yAxis>1?1:this.values.yAxis,this.values.state===qe.ComponentState.DEFAULT&&Math.abs(this.values.yAxis)>qe.AxisTouchThreshold&&(this.values.state=qe.ComponentState.TOUCHED)),Object.values(this.visualResponses).forEach(function(i){i.updateFromComponent(e.values)})},n}(),fp=function(){function n(t,e,r){var i=this;if(!t)throw new Error("No xrInputSource supplied");if(!e)throw new Error("No profile supplied");this.xrInputSource=t,this.assetUrl=r,this.id=e.profileId,this.layoutDescription=e.layouts[t.handedness],this.components={},Object.keys(this.layoutDescription.components).forEach(function(a){var o=i.layoutDescription.components[a];i.components[a]=new dp(a,o)}),this.updateFromGamepad()}return Object.defineProperty(n.prototype,"gripSpace",{get:function(){return this.xrInputSource.gripSpace},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"targetRaySpace",{get:function(){return this.xrInputSource.targetRaySpace},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"data",{get:function(){var t=[];return Object.values(this.components).forEach(function(e){t.push(e.data)}),t},enumerable:!1,configurable:!0}),n.prototype.updateFromGamepad=function(){var t=this;Object.values(this.components).forEach(function(e){e.updateFromGamepad(t.xrInputSource.gamepad)})},n}(),hp="https://cdn.jsdelivr.net/npm/@webxr-input-profiles/assets@1.0/dist/profiles",pp="generic-trigger",vp=function(n){de(t,n);function t(){var e=n.call(this)||this;return e.motionController=null,e.envMap=null,e}return t.prototype.setEnvironmentMap=function(e){var r=this;return this.envMap==e?this:(this.envMap=e,this.traverse(function(i){i instanceof d.Mesh&&i.isMesh&&(i.material.envMap=r.envMap,i.material.needsUpdate=!0)}),this)},t.prototype.updateMatrixWorld=function(e){n.prototype.updateMatrixWorld.call(this,e),this.motionController&&(this.motionController.updateFromGamepad(),Object.values(this.motionController.components).forEach(function(r){Object.values(r.visualResponses).forEach(function(i){var a=i.valueNode,o=i.minNode,s=i.maxNode,l=i.value,u=i.valueNodeProperty;a&&(u===qe.VisualResponseProperty.VISIBILITY?a.visible=l:u===qe.VisualResponseProperty.TRANSFORM&&(a.quaternion.copy(o.quaternion).slerp(s.quaternion,l),a.position.lerpVectors(o.position,s.position,l)))})}))},t}(Pn.Object3D);function Ap(n,t){Object.values(n.components).forEach(function(e){var r=e.type,i=e.touchPointNodeName,a=e.visualResponses;if(r===qe.ComponentType.TOUCHPAD)if(e.touchPointNode=t.getObjectByName(i),e.touchPointNode){var o=new Pn.SphereGeometry(.001),s=new Pn.MeshBasicMaterial({color:255}),l=new Pn.Mesh(o,s);e.touchPointNode.add(l)}else console.warn("Could not find touch dot, ".concat(e.touchPointNodeName,", in touchpad component ").concat(e.id));Object.values(a).forEach(function(u){var c=u.valueNodeName,f=u.minNodeName,A=u.maxNodeName,p=u.valueNodeProperty;if(p===qe.VisualResponseProperty.TRANSFORM){if(u.minNode=t.getObjectByName(f),u.maxNode=t.getObjectByName(A),!u.minNode){console.warn("Could not find ".concat(f," in the model"));return}if(!u.maxNode){console.warn("Could not find ".concat(A," in the model"));return}}u.valueNode=t.getObjectByName(c),u.valueNode||console.warn("Could not find ".concat(c," in the model"))})})}function Ls(n,t){Ap(n.motionController,t),n.envMap&&t.traverse(function(e){e instanceof d.Mesh&&e.isMesh&&(e.material.envMap=n.envMap,e.material.needsUpdate=!0)}),n.add(t)}var mp=function(){function n(t){t===void 0&&(t=null),this.gltfLoader=t,this.path=hp,this._assetCache={}}return n.prototype.createControllerModel=function(t){var e=this,r=new vp,i=null;return t.addEventListener("connected",function(a){var o=a.data;o.targetRayMode!=="tracked-pointer"||!o.gamepad||sp(o,e.path,pp).then(function(s){var l=s.profile,u=s.assetPath;r.motionController=new fp(o,l,u);var c=e._assetCache[r.motionController.assetUrl];if(c)i=c.scene.clone(),Ls(r,i);else{if(!e.gltfLoader)throw new Error("GLTFLoader not set.");e.gltfLoader.load(r.motionController.assetUrl,function(f){e._assetCache[r.motionController.assetUrl]=f,i=f.scene.clone(),Ls(r,i)})}}).catch(function(s){console.warn(s)})}),t.addEventListener("disconnected",function(){r.motionController=null,r.remove(i),i=null}),r},n}();function gp(n,t){if(!t)return n;var e=n.match(/\d+_[a-z].png/);return n.substring(0,e.index)+t+"/"+n.substring(e.index)}var Os=300,yp=new d.Matrix4().makeRotationAxis(new d.Vector3(0,1,0),Math.PI),Vs=new d.Vector3(-1,1,1),bp=function(n){de(t,n);function t(e){var r=n.call(this,e)||this;r.xrManager=new tp(r.renderer,r.renderer.getContext(),{onSessionStart:function(l){r.emit("xr.session.start",X("xr.session.start",{session:l,machineType:r.xrManager.machineType}))},onSessionEnd:function(){r.emit("xr.session.end",X("xr.session.end",{session:null,machineType:r.xrManager.machineType}))}}),r.xrControllerRay={left:new d.Raycaster,right:new d.Raycaster},r.xrControllerRay.left.params.Points={threshold:.1},r.xrControllerRay.right.params.Points={threshold:.1},r.pointerLines={left:new Ba,right:new Ba},r.pointerLines.left.visible=!1,r.pointerLines.right.visible=!0,r.pointerLines.left.setMaterial({color:new d.Vector3(1,1,1)}),r.pointerLines.left.points.material.depthTest=!1,r.pointerLines.right.setMaterial({color:new d.Vector3(1,1,1)}),r.pointerLines.right.points.material.depthTest=!1,r.scene.add(r.pointerLines.left,r.pointerLines.right),r.panoResources={},r.panoResources[r.locationMotion.keyframes[0].key=r.locationMotion.keyframes[1].key=yt()]={panoId:Qe(r.currentPano),leftPanoPicture:null,position:r.camera.pose.offset.clone(),effect:"fade",fixCameraTransform:new d.Matrix4},r.parallaxCameraMatrixs=[];var i=st.shared.getContext();if(!i)return console.error("获取session失败,请退出重试"),r;r.on("xr.session.end",function(){r.scene.remove(r.pointerLines.left,r.pointerLines.right)}),r.xrManager.setSession(i),r.controllerWrappers=[new d.Group,new d.Group],r.scene.add(r.controllerWrappers[0],r.controllerWrappers[1]);var a=r.xrManager.getController(0);r.controllerWrappers[0].add(a);var o=r.xrManager.getController(1);r.controllerWrappers[1].add(o);var s=new mp;return s.gltfLoader={load:function(l,u){fi.ajax(l,{responseType:"arraybuffer"}).then(function(c){var f;return Ha(c.body,{resourcePath:l.slice(0,l.lastIndexOf("/")+1),search:(f=l.split("?")[1])!==null&&f!==void 0?f:"",fetcher:fi})}).then(function(c){return u(c)})}},r.on("xr.session.start",function(){var l=r.xrManager.getControllerGrip(0);l.add(s.createControllerModel(l)),r.controllerWrappers[0].add(l);var u=r.xrManager.getControllerGrip(1);u.add(s.createControllerModel(u)),r.controllerWrappers[1].add(u)}),r.xrControllerState={LeftAxesUp:{touchStartTime:0,touchStart:!1},LeftAxesDown:{touchStartTime:0,touchStart:!1},LeftAxesLeft:{touchStartTime:0,touchStart:!1},LeftAxesRight:{touchStartTime:0,touchStart:!1},LeftTrigger:{touchStartTime:0,touchStart:!1},LeftPinch:{touchStartTime:0,touchStart:!1},RightAxesUp:{touchStartTime:0,touchStart:!1},RightAxesDown:{touchStartTime:0,touchStart:!1},RightAxesLeft:{touchStartTime:0,touchStart:!1},RightAxesRight:{touchStartTime:0,touchStart:!1},RightTrigger:{touchStartTime:0,touchStart:!1},RightPinch:{touchStartTime:0,touchStart:!1},Y:{touchStartTime:0,touchStart:!1},X:{touchStartTime:0,touchStart:!1},A:{touchStartTime:0,touchStart:!1},B:{touchStartTime:0,touchStart:!1}},r}return t.parseArgs=function(e){if(e instanceof t)return e;var r=F(F({},e),{maxLatitude:Math.PI/2,minLatitude:-Math.PI/2});return n.parseArgs.call(this,r)},t.initAnimationEndState=function(e){var r=this.parseArgs(e),i=n.initAnimationEndState.call(this,r);return F(F({},i),{mode:"XRPanorama"})},t.prototype.moveToPano=function(e,r,i){var a=this,o,s,l,u,c=(o=r.effect)!==null&&o!==void 0?o:"fade";this.userAction=i,this.stopMomentumMovement();var f=this.works.getResolvedObserver(e);if(!f)throw new Error("Invalid PanoIndex");var A=Nn(f.images.up),p=this.imageOptions.size;typeof p=="undefined"&&f&&A&&(p=Number(A)),typeof p=="undefined"&&(p=2048);var y=this.imageOptions.transform,v=function(I,B){return gp(hi(I,y,B))},m=F({key:"pano.".concat(f.panoId)},xr(this.imageOptions,["format","size","quality"])),h=f.images,g=(l=(s=f.images.tiles)===null||s===void 0?void 0:s.filter(function(I){return I.size>p}))!==null&&l!==void 0?l:null,b="pano:"+Ln([h,m,y]);if(this.pendingTextureTask){if(this.pendingTextureTask.hash===b)return;var w=this.pendingTextureTask.panoId;(u=this.panoMeshes[w])===null||u===void 0||u.setProgress(0),this.emit("pano.texture.abort",X("pano.texture.abort",{error:null,progress:0,meta:null,pano:f.pano})),this.pendingTextureTask.onError(new Error("texture aborted"))}var E=this.models.getMaterial()||{},C=E.pano0,x=E.pano1,M;if((C==null?void 0:C.map.name)===b?M=C:(x==null?void 0:x.map.name)===b&&(M=x),M){var S={panoId:f.panoId,effect:c,leftPanoPicture:{map:M.map,luminanceMap:M.luminanceMap,matrix:new d.Matrix4().compose(f.position,f.quaternion,Vs)},position:f.position.clone(),fixCameraTransform:new d.Matrix4};this.doMoveToPano(f.pano,S,r);return}var P="move-to-pano-"+f.panoId;this.pending.add(P),this.pendingTextureTask={panoId:f.panoId,hash:b,onLoad:function(I){if(a.pending.delete(P),a.destroyed)I.body.dispose();else{I.body.name=b;var B={panoId:f.panoId,effect:c,leftPanoPicture:{map:I.body,luminanceMap:null,matrix:new d.Matrix4().compose(f.position,f.quaternion,Vs)},position:f.position.clone(),fixCameraTransform:new d.Matrix4};a.doMoveToPano(f.pano,B,r)}},onError:function(I){a.pending.delete(P);var B=F(F(F({},f.pano),{mode:a.mode}),Xe(a.camera.pose));a.emit("pano.error",X("pano.error",{error:I,userAction:a.userAction,options:r,prevPano:a.currentPano,progress:0,state:B})),a.emit("pano.cancel",X("pano.cancel",{error:null,userAction:a.userAction,options:r,prevPano:a.currentPano,progress:0,state:B})),r.moveCancelCallback&&r.moveCancelCallback()}},Promise.all([this.tileLevelForFov&&g&&g.length?this.textureLoader.loadTiledCubeTexture(h,g,{tileMaxLevel:this.TILED_CUBE_TEXTURE_LEVEL,imageURL:{transform:v,options:m},format:d.RGBAFormat,minFilter:d.LinearFilter,magFilter:d.LinearFilter,generateMipmaps:!1,viaAjax:!0,fetcher:ot(f.work)},void 0,void 0,function(I){var B,k;a.emit("pano.texture.progress",X("pano.texture.progress",{error:null,progress:I,meta:null,pano:f.pano})),((B=a.pendingTextureTask)===null||B===void 0?void 0:B.hash)===b&&((k=a.panoMeshes[f.panoId])===null||k===void 0||k.setProgress(I))},this.renderer):this.textureLoader.loadCubeTexture(h,{imageURL:{transform:v,options:m},format:d.RGBAFormat,fetcher:ot(f.work)},void 0,void 0,function(I){var B,k;((B=a.pendingTextureTask)===null||B===void 0?void 0:B.hash)===b&&((k=a.panoMeshes[f.panoId])===null||k===void 0||k.setProgress(I)),a.emit("pano.texture.progress",X("pano.texture.progress",{error:null,progress:I,meta:null,pano:f.pano}))},this.renderer)]).then(function(I){var B,k,L=I[0];((B=a.pendingTextureTask)===null||B===void 0?void 0:B.hash)===b?(a.pendingTextureTask.onLoad(L),(k=a.panoMeshes[f.panoId])===null||k===void 0||k.setProgress(0),delete a.pendingTextureTask,a.emit("pano.texture.success",X("pano.texture.success",{error:null,progress:1,meta:L.meta,pano:f.pano}))):L.body.dispose()}).catch(function(I){var B,k;((B=a.pendingTextureTask)===null||B===void 0?void 0:B.hash)===b&&(a.pendingTextureTask.onError(I),(k=a.panoMeshes[f.panoId])===null||k===void 0||k.setProgress(0),delete a.pendingTextureTask,a.emit("pano.texture.error",X("pano.texture.error",{error:I,progress:0,meta:null,pano:f.pano})),a.emit("error",I))}),this.emit("pano.texture.load",X("pano.texture.load",{error:null,progress:0,meta:null,pano:f.pano}))},t.prototype.doMoveToPano=function(e,r,i){var a=this,o,s,l,u,c,f,A,p,y,v;i===void 0&&(i={});var m=be(),h=yt();this.panoResources[h]=r;var g=1,b,w,E;if(this.locationMotion.ended){var C=this.locationMotion.getKeyFrameSegment(m);C[0];var x=C[1],M=this.locationMotion.value,S=this.panoResourceFromLocationMotionKeyframe(x).position,P=r.position;b=Math.max(S.distanceTo(P),g),w=[{key:x.key,progress:0,value:F(F({},M),{count:0})},{key:h,progress:1,value:{distance:0,count:1}}],E=0}else{var I=this.locationMotion.getKeyFrameSegment(m),B=I[0],x=I[1],M=this.locationMotion.value,k=this.panoResourceFromLocationMotionKeyframe(B).position,S=this.panoResourceFromLocationMotionKeyframe(x).position,P=r.position,L=x.value.count-M.count,O=Math.max(k.distanceTo(S),g)*L,Q=Math.max(S.distanceTo(P),g);b=O+Q,w=[{key:B.key,progress:0,value:F({},M)},{key:x.key,progress:O/b,value:x.value},{key:h,progress:1,value:{count:x.value.count+1,distance:0}}];var N=this.locationMotionKeyframesLength(this.locationMotion.keyframes),K=this.locationMotionKeyframesLength(w);E=this.locationMotion.getProgressVelocity(m)*N/K}var j=r.effect==="instant"?0:this.calculateMovingDuration(i.duration,r.effect==="fly"?b:0),U={longitude:i.longitude,latitude:i.latitude,fov:i.fov},G=F(F({},e),{mode:this.mode,longitude:(o=U.longitude)!==null&&o!==void 0?o:this.camera.pose.longitude,latitude:(s=U.latitude)!==null&&s!==void 0?s:this.camera.pose.latitude,fov:(l=U.fov)!==null&&l!==void 0?l:this.camera.pose.fov,offset:r.position.clone(),distance:0}),H=this.currentPano;this.emit("pano.moveTo",X("pano.moveTo",{options:i,prevPano:H,progress:0,state:G,userAction:this.userAction,error:null})),i.moveStartCallback&&i.moveStartCallback(G),this.videoTexture&&this.videoTexture.image instanceof HTMLVideoElement&&this.videoTexture.image.getAttribute("src")&&(this.videoTexture.image.pause(),this.videoTexture.image.removeAttribute("uuid"),this.videoTexture.image.removeAttribute("src"),this.videoTexture.image.oncanplay=D,this.videoTexture.needsUpdate=!0),this.panoVideo.setMaterial(null);var Y=Ft({longitude:this.cameraMotion.value.longitude,latitude:this.cameraMotion.value.latitude}),W=Ft({longitude:(u=U.longitude)!==null&&u!==void 0?u:this.cameraMotion.value.longitude,latitude:(c=U.latitude)!==null&&c!==void 0?c:this.cameraMotion.value.latitude}),_=new d.Object3D;_.lookAt(Y);var Z=new d.Matrix4().makeRotationFromQuaternion(_.quaternion);_.lookAt(W);for(var fe=new d.Matrix4().makeRotationFromQuaternion(_.quaternion),re=new d.Matrix4().getInverse(Z).premultiply(fe),ie=0;ie<w.length-1;ie++){var ne=w[ie].key;if(ne){var ve=this.panoResources[ne];ve&&ve.fixCameraTransform.copy(re)}}r.effect==="fly"?this.cameraMotion.set(U,j).catch(D):this.cameraMotion.setKeyframes([{progress:0,value:{longitude:this.cameraMotion.value.longitude,latitude:this.cameraMotion.value.latitude,fov:this.cameraMotion.value.fov}},{progress:0,value:{longitude:(f=U.longitude)!==null&&f!==void 0?f:this.cameraMotion.value.longitude,latitude:(A=U.latitude)!==null&&A!==void 0?A:this.cameraMotion.value.latitude,fov:this.cameraMotion.value.fov}},{progress:1,value:{longitude:(p=U.longitude)!==null&&p!==void 0?p:this.cameraMotion.value.longitude,latitude:(y=U.latitude)!==null&&y!==void 0?y:this.cameraMotion.value.latitude,fov:(v=U.fov)!==null&&v!==void 0?v:this.cameraMotion.value.fov}}],j).catch(D);var te=this.locationMotion.setKeyframes(w,j,E);te.then(function(){var he,Ae,ce,Ie=F(F({},e),{mode:a.mode,longitude:a.camera.pose.longitude,latitude:a.camera.pose.latitude,fov:a.camera.pose.fov,offset:a.camera.pose.offset.clone(),distance:0});a.emit("pano.arrived",X("pano.arrived",{options:i,prevPano:H,progress:1,state:Ie,userAction:a.userAction,error:null})),i.moveEndCallback&&i.moveEndCallback(Ie);var $=a.works.getResolvedObserver(a.currentPano);if($&&$.video&&a.videoTexture&&a.videoTexture.image instanceof HTMLVideoElement){var oe=yp.clone().multiply((ce=(Ae=(he=a.models.getMaterial())===null||he===void 0?void 0:he.pano1)===null||Ae===void 0?void 0:Ae.matrix)!==null&&ce!==void 0?ce:new d.Matrix4).multiply($.video.matrix),q={map:a.videoTexture,size:$.video.size,matrix:oe,alpha:1},xe=yt(),ge=a.videoTexture.image;ge.setAttribute("uuid",xe),el().then(function(Oe){Oe&&$.video&&ge.getAttribute("uuid")===xe&&(ge.oncanplay=function(){ge.oncanplay=D,ge.play()},ge.ontimeupdate=function(){ge.currentTime>.5&&(ge.ontimeupdate=D,a.panoVideo.setMaterial(q))},ge.src=$.video.source)}).catch(function(){ge.removeAttribute("uuid")})}},function(){a.emit("pano.cancel",X("pano.cancel",{options:i,prevPano:H,progress:0,state:G,userAction:a.userAction,error:null})),i.moveCancelCallback&&i.moveCancelCallback()})},t.prototype.checkSelectedPano=function(e){var r=this,i,a,o,s;this.stopMomentumMovement();var l=this.camera.getDirection(new d.Vector3).setY(0),u=null,c=this.works.getResolvedObserver(this.currentPano);if(!c)return null;var f=c.accessibleIds.filter(function(W){var _=ft(W);if(Kt(_,r.currentPano))return!1;var Z=r.works.getResolvedObserver(_);return!Z||Z.position.distanceTo(r.camera.position)>r.maxAccessibleDistance?!1:Z.loadable||Z.active}),A=this.models.intersectRaycaster(e)[0];if(A){var p=or(f,function(W){var _=r.works.getResolvedObserver(W);if(!_)return 1/0;var Z=_.standingPosition.clone();return Z.distanceTo(A.point)},!0),y=p[0],v=p[1];y&&v<this.panoTapTriggerRadius&&(u=(i=this.works.getResolvedObserver(y))!==null&&i!==void 0?i:null)}if(Bs(u)){var m=this.getForwardObserverOrNot(e);m&&(u=m)}for(var h=0,g=this.locationMotion.keyframes;h<g.length;h++){var b=g[h],w=this.panoResourceFromLocationMotionKeyframe(b);if(!(b.progress<this.locationMotion.progress)&&u&&w.panoId===u.panoId){u=null;break}}if(Bs(u))return this.locationMotion.ended===!0&&this.cameraBounce(),null;if(u&&!u.active){var E=u.panoId;this.panoMeshes[E]&&(this.panoMeshes[E].setDisabled(!1),this.panoMeshes[E].setLoading(!0))}var C={};if(u){for(var x=Math.PI/6,M=Math.PI/12,S=new d.Vector3(0,1,0),P=u.position.clone().setY(0).sub(c.position.clone().setY(0)).normalize(),I=P.clone().applyAxisAngle(S,x),B=P.clone().applyAxisAngle(S,-x),k=[],L=[],O=[],Q=0,N=u.accessibleIds;Q<N.length;Q++){var y=N[Q],K=ft(y);if(!(Kt(K,this.currentPano)||Kt(K,u.pano))){var j=this.works.getResolvedObserver(y);if(j){var U=j.position.clone().sub(u.position).setY(0);P.angleTo(U)<x?O.push(U):I.angleTo(U)<x?k.push(U):B.angleTo(U)<x&&L.push(U)}}}var G=O.length>0?O:ht(ht([],k,!0),L,!0),H=G.slice().sort(function(W,_){return W.angleTo(P)-_.angleTo(P)})[0];H&&H.angleTo(l)>M&&(C.longitude=Math.atan2(-H.x,-H.z))}this.cameraMotion.value.latitude<-Math.PI/4&&(C.latitude=ue(0,this.minLatitude,this.maxLatitude)),this.cameraMotion.value.fov<60&&(C.fov=this.defaultFov);var Y={workCode:u.pano.workCode,panoIndex:u.pano.panoIndex,mode:this.mode,longitude:(a=C.longitude)!==null&&a!==void 0?a:this.camera.pose.longitude,latitude:(o=C.latitude)!==null&&o!==void 0?o:this.camera.pose.latitude,fov:(s=C.fov)!==null&&s!==void 0?s:this.camera.pose.fov,distance:0,offset:u?u.position.clone():new d.Vector3};return this.emit("pano.select",X("pano.select",{prevPano:this.currentPano,state:Y,userAction:!0,options:C,progress:0,error:null})),u&&u.active?(this.emit("pano.request",X("pano.request",{userAction:!0,prevPano:this.currentPano,progress:0,state:Y,options:C,error:null})),u.pano):null},t.prototype.destroy=function(){n.prototype.destroy.call(this)},t.prototype.isReady=function(){return!1},t.prototype.updateCamera=function(e,r,i){return Promise.resolve()},t.prototype.updateCameraWithKeyframes=function(e,r,i){return Promise.resolve()},t.prototype.updateTime=function(e,r){for(var i=this,a,o,s,l,u,c,f,A,p=[],y=2;y<arguments.length;y++)p[y-2]=arguments[y];this.userAction=!0;var v={},m={},h=this.panoResourceFromLocationMotionKeyframe(this.locationMotion.keyframes[0]),g=this.panoResourceFromLocationMotionKeyframe(this.locationMotion.keyframes[this.locationMotion.keyframes.length-1]),b=!1;if(this.cameraMotion.ended===!1&&(this.cameraMotion.update(e),m.longitude=this.cameraMotion.value.longitude,m.latitude=this.cameraMotion.value.latitude,m.fov=this.cameraMotion.value.fov),this.modelAlphaMotion.ended===!1&&(this.modelAlphaMotion.update(e),v.modelAlpha=this.modelAlphaMotion.value.modelAlpha),this.perspToOrthoMotion.ended===!1&&(this.perspToOrthoMotion.update(e),this.camera.perspToOrtho.setScalar(ue(this.perspToOrthoMotion.value.perspToOrtho,0,1))),this.locationMotion.ended===!1){this.locationMotion.update(e);var w=this.locationMotion.getKeyFrameSegment(e),E=w[0],C=w[1],x=this.panoResourceFromLocationMotionKeyframe(E),M=this.panoResourceFromLocationMotionKeyframe(C),S=new d.Vector3().copy(x.position),P=new d.Vector3().copy(M.position),I=this.locationMotion.value.count-C.value.count+1;v.progress=I,M.leftPanoPicture&&(I<1?x.leftPanoPicture&&(v.pano0=x.leftPanoPicture):v.pano0=M.leftPanoPicture,v.pano1=M.leftPanoPicture),M.effect==="montage"?v.transition="BLACK":M.effect==="spread"?v.transition="SPREAD":v.transition="FADE",I<1&&M.effect!=="fly"&&(v.pano0&&x.leftPanoPicture&&(v.pano0={map:v.pano0.map,luminanceMap:v.pano0.luminanceMap,matrix:x.leftPanoPicture.matrix.clone().setPosition(M.position)}),S.copy(P),b=!0),m.distance=this.locationMotion.value.distance,m.offset=new d.Vector3(S.x+(P.x-S.x)*I,S.y+(P.y-S.y)*I,S.z+(P.z-S.z)*I);for(var B=[],k=[],L=0,O=this.locationMotion.keyframes;L<O.length;L++){var Q=O[L],N=Q.key,K=Q.progress;N!==void 0&&(B.push(N),K>this.locationMotion.progress&&k.push(N))}for(var j=0,U=Object.keys(this.panoResources);j<U.length;j++){var G=U[j];if(!(k.indexOf(G)>=0)){var H=this.panoResources[G];if(H.leftPanoPicture){var Y=H.leftPanoPicture.map;if(Y){if(Y===((a=v.pano0)===null||a===void 0?void 0:a.map)||Y===((o=v.pano1)===null||o===void 0?void 0:o.map))continue;Y instanceof ke&&Y.cubeRenderTarget&&this.colorCubeRenderTargetPool.push(Y.cubeRenderTarget),Y.dispose(),H.leftPanoPicture=null}}B.indexOf(G)>=0||delete this.panoResources[G]}}this.currentPano=ft(M.panoId),this.emit("pano.moving",X("pano.moving",{userAction:this.userAction,prevPano:ft(h.panoId),state:F(F(F(F({},ft(g.panoId)),{mode:this.mode}),Xe(this.camera.pose)),m),options:{},progress:this.locationMotion.progress,error:null}))}Ot(v)===!1&&(!((s=v.pano0)===null||s===void 0)&&s.map&&v.pano0.map instanceof ke&&!v.pano0.map.cubeRenderTarget&&(v.pano0.map.cubeRenderTarget=this.colorCubeRenderTargetPool.pop()),!((l=v.pano1)===null||l===void 0)&&l.map&&v.pano1.map instanceof ke&&!v.pano1.map.cubeRenderTarget&&(v.pano1.map.cubeRenderTarget=this.colorCubeRenderTargetPool.pop()),this.models.setMaterial(v)),Ot(m)===!1&&this.setCamera(m);var W=this.works.getResolvedObserver(this.currentPano),_=p[1];if(!_){console.error("xrFrame丢失,请重试");return}if(!this.xrManager.session){console.error("session丢失,请重试");return}var Z=this.xrManager.referenceSpace;if(Z){var fe=this.xrManager.cameraVR,re=this.xrManager.cameraL,ie=this.xrManager.cameraR,ne=[re,ie],ve=_.getViewerPose(Z),te=new d.Vector3(0,0,0);if(ve){var he;he=this.xrManager.session.renderState.baseLayer;var Ae=ve.views;if(!he){console.error("no layer found");return}this.renderer.setFramebuffer(he.framebuffer);var ce=!1;Ae.length!==fe.cameras.length&&(fe.cameras.length=0,ce=!0),this.parallaxCameraMatrixs=[];var Ie=new d.Vector3,$=new d.Vector3;new d.Matrix4().fromArray(Ae[0].transform.matrix).decompose(Ie,new d.Quaternion,new d.Vector3),new d.Matrix4().fromArray(Ae[1].transform.matrix).decompose($,new d.Quaternion,new d.Vector3),$.clone().sub(Ie).normalize();var oe=new d.Vector3,q=new d.Quaternion,xe=new d.Vector3;this.camera.matrix.decompose(oe,q,xe);for(var ge=0;ge<Ae.length;ge++){var Oe=Ae[ge],Ue=he.getViewport(Oe),ze=ne[ge];ze.matrix.fromArray(Oe.transform.matrix);var _e=new d.Vector3,Be=new d.Quaternion,me=new d.Vector3;ze.matrix.decompose(_e,Be,me),te.copy(oe),ze.position.copy(oe),ze.quaternion.copy(Be),ze.scale.copy(me),ze.updateMatrix(),ze.projectionMatrix.fromArray(Oe.projectionMatrix),ze.viewport.set(Ue.x,Ue.y,Ue.width,Ue.height),ce===!0&&fe.cameras.push(ze)}ve.views[0].transform.position,ve.views[1].transform.position;for(var pe=this.xrManager.session.inputSources,ge=0;ge<this.xrManager.controllers.length;ge++){var Ve=this.xrManager.controllers[ge],Se=pe[ge];if(Se){Ve.update(Se,_,Z);var Ne=this.xrManager.getController(ge),Le=new d.Vector3(0,1.2,0),Ee=Ne.position.clone().add(te).sub(Le);Se.handedness==="left"?this.xrControllerRay.left.set(Ee,new d.Vector3(0,0,-1).applyEuler(Ne.rotation)):Se.handedness==="right"&&this.xrControllerRay.right.set(Ee,new d.Vector3(0,0,-1).applyEuler(Ne.rotation)),this.controllerWrappers[ge].position.copy(new d.Vector3(0,0,0).add(te).sub(Le));var We=this.models.intersectRaycaster(this.xrControllerRay.right);if(We.length===0&&(We=this.xrControllerRay.right.intersectObject(this.boundingMesh,!0).map(function(it){var pt;return F({floor:(pt=W==null?void 0:W.floorIndex)!==null&&pt!==void 0?pt:0},it)})),We.length>=1&&We[0].face)if(Se.handedness==="right"){var Mt=this.xrControllerRay.right.intersectObject(this.xrCustomObjectsScene,!0),sr=We[0].face.normal,ur=sr.clone(),jt=We[0].point.clone();this.intersectMesh.position.copy(jt);var Vt=jt.clone().add(ur);if(this.intersectMesh.lookAt(Vt),Math.abs(sr.y)>.99){var lr=this.camera.position.clone().sub(jt);this.intersectMesh.rotation.z=-Math.atan2(lr.z,lr.x)}this.intersectMesh.visible=!0,this.needsRender=!0,Mt.length>0?(this.pointerLines.right.setPoints(Ee,Mt[0].point),this.pointerLines.right.points.visible=!0,this.intersectMesh.visible=!1):(this.pointerLines.right.points.visible=!1,this.pointerLines.right.setPoints(Ee,We[0].point));var cr=We[0],bt=X("intersect.update",{raycaster:(u=this.xrControllerRay.right)!==null&&u!==void 0?u:null,intersection:cr!=null?cr:null,object:this.intersectMesh});if(this.emit("intersect.update",bt),bt.defaultPrevented){this.hideIntersectMesh();return}}else this.pointerLines.left.setPoints(Ee,We[0].point)}}if(this.camera.pose.distance>.1||b)for(var Wt=0,Xt=Object.keys(this.panoMeshes);Wt<Xt.length;Wt++){var ut=Xt[Wt],Re=this.panoMeshes[ut];Re.setOpacity(0),Re.setCurrent(!1),Re.updateTime&&Re.updateTime(e,r),Re.visible=!1}else if(W){var dr=or(W.visibleIds,function(tt){var it=i.works.getResolvedObserver(tt);return it?W.standingPosition.distanceTo(it.standingPosition):1/0},!0),Nt=dr[1];Nt=ue(Nt,2.5,1/0);for(var fr=W.visibleIds.concat(Qe(this.currentPano)),St=this.getForwardObserverOrNot(),_t=this.camera.getDirection(new d.Vector3),Qt=0,Zt=Object.keys(this.panoMeshes);Qt<Zt.length;Qt++){var ut=Zt[Qt],Re=this.panoMeshes[ut],hr=this.works.getResolvedObserver(ut);if(fr.indexOf(ut)===-1)Re.setCurrent(!1),Re.setOpacity(0);else if(!hr)Re.setCurrent(!1),Re.setOpacity(0);else if(!hr.loadable&&!hr.active)Re.setCurrent(!1),Re.setOpacity(0);else{var Yr=Re.position.clone().setY(this.camera.position.y).distanceTo(this.camera.position);Re.setCurrent(!Re.loading&&Re.progress===0&&St!==null&&St.panoId===ut),Re.setOpacity(Yr<.01?0:ue(Nt/Yr*1.2,.65,.98));var Ur=this.camera.position.clone().setY(Re.position.y),Cr=new d.Vector3().copy(Re.position).sub(Ur).normalize();if(ut===Qe(this.currentPano)){var Yt=ue((.5-Ur.distanceTo(Re.position))/.5,0,1);Cr.multiplyScalar(1-Yt).add(_t.clone().multiplyScalar(Yt))}Cr.length()>0&&Re.quaternion.setFromEuler(new d.Euler(0,Math.atan2(Cr.x,Cr.z),0))}Re.updateTime&&Re.updateTime(e,r)}}var Ye=function(){if(i.tileLevelForFov===!1)return 0;var tt=new d.Vector2(4e3,4e3),it=g.panoId,pt=i.works.getResolvedObserver(it),vt=i.imageOptions.size;if(typeof vt=="undefined"&&pt){var jn=pt.images.up.match(/\/cube_(\d+)\//);jn&&(vt=Number(jn[1]))}typeof vt=="undefined"&&(vt=2048);var Gr=0;vt>=1024&&(Gr=1),vt>=2048&&(Gr=2),vt>=4096&&(Gr=3),vt>=8192&&(Gr=4);var Hr=i.tileLevelForFov(re.fov,tt);return Hr>Gr?Hr:0}(),Ge=function(){var tt=new d.PerspectiveCamera;tt.applyMatrix4(fe.matrix),tt.position.set(0,0,0);var it=i.works.getResolvedObserver(g.panoId),pt=it!=null?it:W;pt&&tt.quaternion.premultiply(pt.quaternion.clone().inverse()),tt.updateProjectionMatrix(),tt.updateMatrixWorld(!0);var vt=new d.Frustum().setFromProjectionMatrix(new d.Matrix4().multiplyMatrices(tt.projectionMatrix,tt.matrixWorldInverse));return vt}();g.panoId===Qe(this.currentPano)&&((c=g.leftPanoPicture)===null||c===void 0?void 0:c.map)instanceof ke&&(g.leftPanoPicture.map.update(Ge,Ye),g.leftPanoPicture.map.needsRender===!0&&(this.needsRender=!0));{var Jt=this.tiling.object.visible;if(Ye>this.TILED_CUBE_TEXTURE_LEVEL&&this.initAnimationed){var zr=g.panoId,nt=this.works.getResolvedObserver(zr);nt?Kn(this.camera.position,nt.position)&&this.locationMotion.ended?(this.tiling.object.visible=!0,this.tiling.panoId!==zr&&this.tiling.cleanup(),this.tiling.panoId=zr,this.tiling.setResource((A=(f=nt.images)===null||f===void 0?void 0:f.tiles)!==null&&A!==void 0?A:[],this.enableIOSEDR&&nt.images.luminance?nt.images.luminance:null),this.tiling.setFetcher(ot(nt.work)),this.tiling.setRotation(nt.quaternion),this.tiling.setPosition(nt.position),this.tiling.update(Ge,Ye,e)):this.tiling.object.visible=!1:this.tiling.object.visible=!1}else this.tiling.object.visible=!1;Jt!==this.tiling.object.visible&&(this.tiling.object.needsRender=!0)}this.panoVideo.object.position.copy(this.camera.position),this.panoVideo.updateTime(e),!(!pe||pe.length<1)&&this.updateControllerHelper(pe,e,r)}}},t.prototype.render=function(){var e=this.xrManager.getCamera(this.camera);this.renderer.render(this.scene,e)},t.prototype.onPanGesture=function(){},t.prototype.onTapGesture=function(){},t.prototype.onPinchGesture=function(){},t.prototype.onMouseMove=function(){},t.prototype.onMouseOut=function(){},t.prototype.panoResourceFromLocationMotionKeyframe=function(e){return this.panoResources[e.key]},t.prototype.updateControllerHelper=function(e,r,i){var a=this.xrControllerRay.left,o=this.xrControllerRay.right;if(!(!e||e.length===0)){for(var s={buttons:{X:!1,Y:!1,LeftTrigger:!1,LeftPinch:!1,A:!1,B:!1,RightTrigger:!1,RightPinch:!1}},l=0;l<e.length;l++){var u=e[l].handedness,c=e[l].gamepad;switch(u){case"left":c.axes&&(this.emitEvent(c.axes[2]===-1,"LeftAxesLeft",r),this.emitEvent(c.axes[2]===1,"LeftAxesRight",r),this.emitEvent(c.axes[3]===-1,"LeftAxesUp",r),this.emitEvent(c.axes[3]===1,"LeftAxesDown",r)),c!=null&&c.buttons&&(c.buttons[4]&&this.emitEvent(c.buttons[4].pressed,"X",r),c.buttons[5]&&this.emitEvent(c.buttons[5].pressed,"Y",r),c.buttons[0]&&this.emitEvent(c.buttons[0].pressed,"LeftTrigger",r),c.buttons[1]&&this.emitEvent(c.buttons[1].pressed,"LeftPinch",r));var f={raycaster:a,axes:{up:c.axes&&c.axes[3]<0?Math.abs(c.axes[3]):0,down:c.axes&&c.axes[3]<0?0:Math.abs(c.axes[3]),left:c.axes&&c.axes[2]<0?Math.abs(c.axes[2]):0,right:c.axes&&c.axes[2]<0?0:Math.abs(c.axes[2])},deltaTime:i};s.buttons.X=c.buttons&&c.buttons[4]?c.buttons[4].pressed:!1,s.buttons.Y=c.buttons&&c.buttons[5]?c==null?void 0:c.buttons[5].pressed:!1,s.buttons.LeftTrigger=c.buttons&&c.buttons[0]?c==null?void 0:c.buttons[0].pressed:!1,s.buttons.LeftPinch=c.buttons&&c.buttons[1]?c==null?void 0:c.buttons[1].pressed:!1,s.left=f;break;case"right":c.axes&&(this.emitEvent(c.axes[2]===-1,"RightAxesLeft",r),this.emitEvent(c.axes[2]===1,"RightAxesRight",r),this.emitEvent(c.axes[3]===-1,"RightAxesUp",r),this.emitEvent(c.axes[3]===1,"RightAxesDown",r)),c.buttons&&(c.buttons[4]&&this.emitEvent(c.buttons[4].pressed,"A",r),c.buttons[5]&&this.emitEvent(c.buttons[5].pressed,"B",r),c.buttons[0]&&this.emitEvent(c.buttons[0].pressed,"RightTrigger",r),c.buttons[1]&&this.emitEvent(c.buttons[1].pressed,"RightPinch",r));var A={raycaster:o,axes:{up:c.axes&&c.axes[3]<0?Math.abs(c.axes[3]):0,down:c.axes&&c.axes[3]<0?0:Math.abs(c.axes[3]),left:c.axes&&c.axes[2]<0?Math.abs(c.axes[2]):0,right:c.axes&&c.axes[2]<0?0:Math.abs(c.axes[2])},deltaTime:i};s.right=A,s.buttons.A=c.buttons&&c.buttons[4]?c==null?void 0:c.buttons[4].pressed:!1,s.buttons.B=c.buttons&&c.buttons[5]?c==null?void 0:c.buttons[5].pressed:!1,s.buttons.RightTrigger=c.buttons&&c.buttons[0]?c==null?void 0:c.buttons[0].pressed:!1,s.buttons.RightPinch=c.buttons&&c.buttons[1]?c==null?void 0:c.buttons[1].pressed:!1;break}}this.emit("xr.controller.update",X("xr.controller.update",s))}},t.prototype.emitEvent=function(e,r,i){var a=this.xrControllerRay.left,o=this.xrControllerRay.right;if(e)if(this.xrControllerState[r].touchStart===!1)this.xrControllerState[r].touchStartTime=i,this.xrControllerState[r].touchStart=!0,this.emit("xr.gesture.buttonDown",X("xr.gesture.buttonDown",{session:this.xrManager.session,machineType:this.xrManager.machineType,buttons:r,isFinal:!1,isFirst:!0,controllers:{raycaster:{leftRay:a,rightRay:o}}}));else{var s=i-this.xrControllerState[r].touchStartTime;s>Os&&this.emit("xr.gesture.press",X("xr.gesture.tap",{session:this.xrManager.session,machineType:this.xrManager.machineType,buttons:r,isFinal:!0,isFirst:!0,controllers:{raycaster:{leftRay:a,rightRay:o}}}))}else if(this.xrControllerState[r].touchStart===!0){this.emit("xr.gesture.buttonUp",X("xr.gesture.buttonUp",{session:this.xrManager.session,machineType:this.xrManager.machineType,buttons:r,isFinal:!0,isFirst:!1,controllers:{raycaster:{leftRay:a,rightRay:o}}}));var s=i-this.xrControllerState[r].touchStartTime;if(s<=Os){var l=this.emit("xr.gesture.tap",X("xr.gesture.tap",{session:this.xrManager.session,machineType:this.xrManager.machineType,buttons:r,isFinal:!0,isFirst:!1,controllers:{raycaster:{leftRay:a,rightRay:o}}}));l||r==="RightTrigger"&&this.checkSelectedPano(this.xrControllerRay.right)}this.xrControllerState[r].touchStart=!1,this.xrControllerState[r].touchStartTime=0}},t}(eo),Pt={Floorplan:Pa,Topview:Df,Panorama:eo,VRPanorama:Dh,Model:zh,Mapview:Jh,XRPanorama:bp},pl=["gesture.pan","gesture.tap","gesture.press","gesture.pinch","gesture.mousewheel","gesture.mousemove","gesture.momentum","initAnimation.start","initAnimation.end","camera.update","intersect.update","pano.select","pano.moveTo","pano.moving","pano.arrived","pano.cancel","pano.error","pano.texture.load","pano.texture.progress","pano.texture.success","pano.texture.error","pano.texture.abort","xr.session.start","xr.session.end","xr.gesture.tap","xr.gesture.press","xr.gesture.buttonUp","xr.gesture.buttonDown","xr.controller.update"];function wp(n){n.on("initAnimation.start",function(t){n.emit("initAnimationWillStart",t.state.panoIndex,t.state,t.userAction)}),n.on("initAnimation.end",function(t){n.emit("initAnimationEnded",t.state.panoIndex,t.state,t.userAction)}),n.on("gesture.pan",function(t){var e=!1;e=n.emit("wantsGesture","pan",t.pointers,t.isFinal),e&&t.preventDefault(),e=n.emit("wantsPanGesture",t.state,t.isFinal),e&&t.preventDefault(),t.defaultPrevented||(n.emit("gesture","pan",t.pointers,t.isFinal),n.emit("panGesture",t.state,t.isFinal))}),n.on("gesture.tap",function(t){var e=!1;e=n.emit("wantsGesture","tap",t.pointers,t.isFinal),e&&t.preventDefault(),e=n.emit("wantsTapGesture",t.center.raycaster,t.center.coords,t.isFinal),e&&t.preventDefault(),t.defaultPrevented||(n.emit("gesture","tap",t.pointers,t.isFinal),n.emit("tapGesture",t.center.raycaster,t.center.coords,t.isFinal))}),n.on("gesture.press",function(t){var e=!1;e=n.emit("wantsGesture","press",t.pointers,t.isFinal),e&&t.preventDefault(),e=n.emit("wantsPressGesture",t.center.raycaster,t.center.coords,t.center.delta,t.isFinal),e&&t.preventDefault(),t.defaultPrevented||(n.emit("gesture","press",t.pointers,t.isFinal),n.emit("pressGesture",t.center.raycaster,t.center.coords,t.center.delta,t.isFinal))}),n.on("gesture.pinch",function(t){var e=!1;e=n.emit("wantsGesture","pinch",t.pointers,t.isFinal),e&&t.preventDefault(),e=n.emit("wantsPinchGesture",t.scale,t.state.fov,t.isFinal),e&&t.preventDefault(),t.defaultPrevented||(n.emit("gesture","pinch",t.pointers,t.isFinal),n.emit("pinchGesture",t.scale,t.state.fov,t.isFinal))}),n.on("gesture.mousewheel",function(t){var e=!1;e=n.emit("wantsGesture","mouseWheel",t.pointers,t.isFinal),e&&t.preventDefault(),e=n.emit("wantsMouseWheel",t.center.delta,t.state.fov,t.isFinal),e&&t.preventDefault(),t.defaultPrevented||(n.emit("gesture","mouseWheel",t.pointers,t.isFinal),n.emit("mouseWheel",t.center.delta,t.state.fov,t.isFinal))}),n.on("gesture.mousemove",function(t){var e=!1;e=n.emit("wantsGesture","mouseMove",t.pointers,t.isFinal),e&&t.preventDefault(),t.defaultPrevented||(n.emit("gesture","mouseMove",t.pointers,t.isFinal),e=n.emit("wantsChangeCameraFov",t.state.fov),e&&t.preventDefault())}),n.on("gesture.momentum",function(t){var e=!1;e=n.emit("wantsInteriaPan",t.state),e&&t.preventDefault(),t.defaultPrevented||n.emit("interiaPan",t.state,t.isFinal)}),n.on("camera.update",function(t){n.emit("cameraFovUpdate",t.state.fov,t.userAction),n.emit("cameraDirectionUpdate",t.state,t.userAction);var e=Ft(t.state);e.setLength(t.state.distance);var r=t.state.offset.clone().sub(e);n.emit("cameraPositionUpdate",r,t.userAction),n.emit("cameraUpdate",t.state,t.userAction)}),n.on("intersect.update",function(t){if(t.intersection){var e=!1;e=n.emit("wantsShowIntersectionOnModel",t.raycaster),e&&t.preventDefault(),t.defaultPrevented||n.emit("intersectionOnModelUpdate",t.intersection,t.object)}else n.emit("intersectionHidden")}),n.on("pano.request",function(t){var e=n.emit("wantsMoveToPano",t.state.panoIndex,t.options,t.userAction);e||(e=n.emit("wantsToMoveToPano",t.state.panoIndex,t.options,t.userAction)),e&&t.preventDefault(),t.defaultPrevented||n.emit("panoWillLoad",t.state.panoIndex)}),n.on("pano.select",function(t){n.emit("panoSelected",t.state.panoIndex)}),n.on("pano.moveTo",function(t){n.emit("panoLoaded",t.state.panoIndex),n.emit("moveToPano",t.state.panoIndex,t.userAction),n.emit("panoWillArrive",t.state.panoIndex,t.state,t.userAction)}),n.on("pano.moving",function(t){n.emit("movingToPano",t.state.panoIndex,t.prevPano.panoIndex,t.progress)}),n.on("pano.arrived",function(t){n.emit("panoArrived",t.state.panoIndex,t.state,t.userAction)}),n.on("pano.cancel",function(t){n.emit("moveToPanoCanceled",t.state.panoIndex)}),n.on("pano.error",function(t){n.emit("panoLoadError",t.error,t.state.panoIndex)}),n.on("pano.texture.load",function(t){n.emit("textureStartLoad",t.pano.panoIndex)}),n.on("pano.texture.success",function(t){n.emit("textureLoaded",t.pano.panoIndex,t.meta)}),n.on("pano.texture.error",function(t){n.emit("textureError",t.error,t.pano.panoIndex)}),n.on("pano.texture.abort",function(t){n.emit("textureAbort",t.pano.panoIndex)}),n.on("pano.texture.progress",function(t){n.emit("textureLoading",t.progress,t.pano.panoIndex)}),n.on("xr.session.start",function(t){n.emit("webXRSessionStart")}),n.on("xr.session.end",function(t){n.emit("webXRSessionEnd")}),n.on("xr.gesture.tap",function(t){n.emit("webXRControllerEvent","tap",t.buttons,{raycaster:t.controllers.raycaster})}),n.on("xr.gesture.press",function(t){n.emit("webXRControllerEvent","press",t.buttons,{raycaster:t.controllers.raycaster})}),n.on("xr.gesture.buttonUp",function(t){n.emit("webXRControllerEvent","buttonUp",t.buttons,{raycaster:t.controllers.raycaster})}),n.on("xr.gesture.buttonDown",function(t){n.emit("webXRControllerEvent","buttonDown",t.buttons,{raycaster:t.controllers.raycaster})}),n.on("xr.controller.update",function(t){n.emit("webXRControllerRayUpdate",{leftRay:t.left?t.left.raycaster:void 0,rightRay:t.right?t.right.raycaster:void 0}),t.left&&n.emit("webXRAxesUpdate","left",{raycaster:{leftRay:t.left?t.left.raycaster:void 0,rightRay:t.right?t.right.raycaster:void 0},axesState:{up:t.left.axes.up,down:t.left.axes.down,left:t.left.axes.left,right:t.left.axes.right},deltaTime:t.left.deltaTime}),t.right&&n.emit("webXRAxesUpdate","right",{raycaster:{leftRay:t.left?t.left.raycaster:void 0,rightRay:t.right?t.right.raycaster:void 0},axesState:{up:t.right.axes.up,down:t.right.axes.down,left:t.right.axes.left,right:t.right.axes.right},deltaTime:t.right.deltaTime})}),n.on("works.request",function(t){n.emit("willLoad",t.input,t.works[0],t.state)}),n.on("works.load",function(t){n.emit("load",t.input,t.works[0],t.state)}),n.on("works.ready",function(t){n.emit("loaded",t.input,t.works[0])}),n.on("state.change",function(t){n.emit("stateChange",t.state,t.userAction)}),n.on("currentState.change",function(t){n.emit("currentStateChange",t.state,t.userAction)}),n.on("state.set",function(t){n.emit("setState",t.state)}),n.on("state.synced",function(t){n.emit("stateSynced",t.state)}),n.on("model.request",function(t){n.emit("modelWillLoad",t.work.model)}),n.on("model.error",function(t){n.emit("modelLoadError",t.error,t.model)}),n.on("model.load",function(t){n.emit("modelLoaded",t.model)}),n.on("model.changeShownFloor",function(t){n.emit("modelShownFloorChange",t.model.shownFloor,t.model.floorLength)}),n.on("render",function(t){n.emit("renderFrame",t.needsRender)}),n.on("mode.change.request",function(t){n.emit("wantsChangeMode",t.mode,t.prevMode)}),n.on("mode.change",function(t){n.emit("modeChange",t.mode,t.prevMode,t.state.panoIndex,t.state,t.userAction)}),n.on("helpers.visible",function(t){n.emit("helpersVisibleChange",t.object.visible)}),n.on("network.resource",function(t){n.emit("network",t.source,t.requestType,t.requestState,t.detail)})}function Ep(){if(typeof window!="undefined"){var n=document.createElement("video");n.loop=!0,n.autoplay=!0,n.playsInline=!0,n.muted=!0,n.crossOrigin="";var t=function(){document.removeEventListener("touchstart",t,!1),document.removeEventListener("mousedown",t,!1),n.muted=!1};return document.addEventListener("touchstart",t,!1),document.addEventListener("mousedown",t,!1),n}else return{}}function xp(n){{var t=new d.DirectionalLight(16777215,.5);t.position.copy(new d.Vector3(1,1,1)),n.add(t)}{var t=new d.DirectionalLight(16777215,.3);n.add(t)}{var t=new d.AmbientLight(16777215,.3);n.add(t)}}function Cp(n){for(var t,e,r={},i=n.split(/(\;|\,)/),a=0,o=i;a<o.length;a++){var s=o[a],l=s.split("="),u=(t=l[0])===null||t===void 0?void 0:t.trim(),c=(e=l[1])===null||e===void 0?void 0:e.trim();u&&c&&(r[u]=c)}return r}function vl(){var n;if(typeof document!="undefined")for(var t=document.getElementsByTagName("meta"),e=0;e<t.length;e++){var r=t[e];if(r.getAttribute("name")==="viewport"){var i=Cp((n=r.getAttribute("content"))!==null&&n!==void 0?n:""),a=Number(i["initial-scale"]);if(!isNaN(a))return a}}return 1}const Mp="data:image/png;base64,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";var Ns=[351,63],Qs=[20,20],Sp=new Float32Array([-.5,-.5,0,.5,-.5,0,-.5,.5,0,.5,.5,0]),Ip=new Float32Array([0,0,1,0,0,1,1,1]),Tp=new Uint8Array([0,1,2,1,3,2]),Ri=new d.BufferGeometry;Ri.setAttribute("position",new d.BufferAttribute(Sp,3));Ri.setAttribute("uv",new d.BufferAttribute(Ip,2));Ri.setIndex(new d.BufferAttribute(Tp,1));var ci=new d.MeshBasicMaterial({transparent:!0,depthTest:!1,depthWrite:!1,stencilWrite:!1,fog:!1}),Al=new d.Mesh(Ri,ci);Al.matrixAutoUpdate=!1;var ao=new d.Scene;ao.add(Al);ao.matrixAutoUpdate=!1;var qn=new d.OrthographicCamera(-.5,.5,.5,-.5,.1,1);qn.position.set(0,0,.5);qn.lookAt(0,0,0);qn.updateMatrixWorld(!0);qn.matrixAutoUpdate=!1;var Pp=new d.Vector4,Bp=new d.Vector4;function Ds(n){if(ci.map){var r=n.getViewport(Pp),i=n.getScissor(Bp),a=n.getScissorTest(),o=n.autoClear,s=i.x+Qs[0]/3,l=i.y+Qs[1]/3,u=Ns[0]/3,c=Ns[1]/3;n.setViewport(s,l,u,c),n.setScissor(s,l,u,c),n.setScissorTest(!0),n.autoClear=!1,n.render(ao,qn),n.setViewport(r),n.setScissor(i),n.setScissorTest(a),n.autoClear=o}else{var t=new d.Texture,e=new Image;e.onload=function(){t.image=e,t.wrapS=d.ClampToEdgeWrapping,t.wrapT=d.ClampToEdgeWrapping,t.minFilter=d.LinearFilter,t.needsUpdate=!0,t.generateMipmaps=!1,ci.needsUpdate=!0,e.onload=D},e.src=Mp,ci.map=t}}var Rp=800,Fp=function(n){return n.replace("//vrlab-public.ljcdn.com/","//vr-public.realsee-cdn.cn/").replace("//vrlab-image4.ljcdn.com/","//vr-image-4.realsee-cdn.cn/").replace("//vrlab-image3.ljcdn.com/","//vr-image-3.realsee-cdn.cn/").replace("//vrlab-image2.ljcdn.com/","//vr-image-2.realsee-cdn.cn/").replace("//vrlab-image1.ljcdn.com/","//vr-image-1.realsee-cdn.cn/")},kp=[{name:"Z",transformToUpAxisZ:function(){return new d.Matrix4}},{name:"Y",transformToUpAxisZ:function(){return new d.Matrix4().makeRotationAxis(new d.Vector3(1,0,0),+Math.PI/2)}},{name:"-Y",transformToUpAxisZ:function(){return new d.Matrix4().makeRotationAxis(new d.Vector3(1,0,0),-Math.PI/2)}},{name:"WGS84",transformToEarthCentered:function(){return new d.Matrix4}},{name:"GCJ02",transformToEarthCentered:function(){return new d.Matrix4}},{name:"BD09",transformToEarthCentered:function(){return new d.Matrix4}}],En=new d.Vector2,ni=new d.Frustum,ii=new d.Matrix4,Us=new WeakMap,zs=new WeakMap,Gs=xa([]),ml=function(n){de(t,n);function t(e){e===void 0&&(e={});var r,i,a,o,s,l,u,c,f,A,p=n.call(this)||this;p.ident=yt(),typeof window!="undefined"&&(Ra.instances[p.ident]=p),p.renderSwitch01=0,p.currentMode="Panorama",p.pano={workCode:"",panoIndex:0},p.needsRender=!1,p.onlyRenderIfNeeds=(r=e.onlyRenderIfNeeds)!==null&&r!==void 0?r:!0,p.imageOptions=F({},(i=e.imageOptions)!==null&&i!==void 0?i:{}),p.textureOptions=F({},(a=e.textureOptions)!==null&&a!==void 0?a:{}),p.poweredByRealsee=(o=e.poweredByRealsee)!==null&&o!==void 0?o:!0,p.extraElements=[],p.controllerInits={Panorama:Object.assign({},e.panorama),Model:Object.assign({},e.model),Floorplan:Object.assign({},e.floorplan),Topview:Object.assign({},e.topview),Mapview:Object.assign({},e.mapview),VRPanorama:Object.assign({},e.vrPanorama),XRPanorama:Object.assign({},e.xrPanorama)},p.coordinatesSystemTransformers=ht([],(s=e.coordinatesSystemTransformers)!==null&&s!==void 0?s:[],!0);for(var y=function(k){var L=v.coordinatesSystemTransformers.find(function(O){return O.name===k.name});L||v.coordinatesSystemTransformers.push(F({},k))},v=this,m=0,h=kp;m<h.length;m++){var g=h[m];y(g)}if(p.fps={testCount:0,testTime:be()},p.info=null,p.modeChangeDuration=(l=e.modeChangeDuration)!==null&&l!==void 0?l:Rp,p.enableWheel=(u=e.enableWheel)!==null&&u!==void 0?u:!0,typeof window!="undefined")if("renderer"in e)e.renderer instanceof jr&&p.throwError(new Error("cannot render a internal renderer")),p.renderer=e.renderer;else try{p.renderer=new jr({preserveDrawingBuffer:e.preserveDrawingBuffer,backgroundColor:e.backgroundColor,backgroundAlpha:e.backgroundAlpha,antialias:e.antialias,webgl2:e==null?void 0:e.webgl2});var b=vl();p.renderer.setPixelRatio(b===1?window.devicePixelRatio:1),p.renderer.setSize(512,512)}catch(k){k instanceof Error&&p.throwError(k)}p.getPixelsRenderTarget=new d.WebGLRenderTarget(1,1,{encoding:(f=(c=p.renderer)===null||c===void 0?void 0:c.outputEncoding)!==null&&f!==void 0?f:d.sRGBEncoding}),p.scissor=Object.assign({left:0,bottom:0,width:1,height:1},e.scissor),p.camera=new Si(90),p.scene=new uu,p.xrCustomObjectsScene=new d.Scene,p.scene.add(p.xrCustomObjectsScene),p.scene.matrixAutoUpdate=!1,p.lastLoadWorkTask=Promise.resolve(),p.requestProxy=(A=e.requestProxy)!==null&&A!==void 0?A:Fp,p.networkSubscribe=new Zs,p.networkSubscribe.on("network",function(k,L,O,Q){var N;p.emit("network.resource",X("network.resource",{source:k,requestType:L,requestState:O,detail:Q})),(N=p.analysis)===null||N===void 0||N.network(p.works,k,L,O,Q)}),p.boundingMesh=Ff(new d.Box3(new d.Vector3(-.5,-.5,-.5),new d.Vector3(.5,.5,.5))),p.boundingMesh.name="bounding",p.scene.add(p.boundingMesh),p.models=hs(),p.models.push(new Sa),p.lastModels=hs(),p.lastWorks=xa([]),p.readyCallbacks=[],p.syncingState=!1,p.modelGroup=new d.Group,p.modelGroup.visible=!1,p.modelGroup.name="model",p.modelGroup.matrixAutoUpdate=!1,p.modelGroup.renderOrder=-4,p.scene.add(p.modelGroup),p.helperGroup=new d.Group,p.helperGroup.name="helper",p.helperGroup.matrixAutoUpdate=!1,p.scene.add(p.helperGroup),p.videoTexture=new d.VideoTexture(e.videoInstance||Ep()),xp(p.scene),p.copyEffect=new Pi(p.renderer,p.scene,p.camera,p.models),p.state={mode:p.currentMode,workCode:p.pano.workCode,panoIndex:p.pano.panoIndex,longitude:p.camera.pose.longitude,latitude:p.camera.pose.latitude,fov:p.camera.pose.fov,offset:p.camera.pose.offset.clone(),distance:p.camera.pose.distance},p.stateSynced=!1,p._enableIOSEDR=!1,p.destroyed=!1,p.paused=!0,typeof window!="undefined"&&(e.play!==!1&&p.play(),p.stopAnimationLoop=st.shared.add(function(k,L){for(var O=[],Q=2;Q<arguments.length;Q++)O[Q-2]=arguments[Q];p.updateTime.apply(p,ht([k,L],O,!1))},!1,0,10));var w=function(){typeof document!="undefined"&&document.fullscreenElement===null&&p.currentMode==="VRPanorama"&&p.controller.emit("vr.requestExit",X("vr.requestExit",{}))},E=function(){p.needsRender=!0};if(typeof document!="undefined"&&document.addEventListener("fullscreenchange",w,!1),p.renderer&&p.renderer.domElement.addEventListener("webglcontextrestored",E,!1),p.removeEventListeners=function(){typeof document!="undefined"&&document.removeEventListener("fullscreenchange",w,!1),p.renderer&&p.renderer.domElement.removeEventListener("webglcontextrestored",E,!1)},p.plugins={},e.plugins&&e.plugins.length)for(var C=0,x=e.plugins;C<x.length;C++){var M=x[C];if(typeof M=="function")M(p);else if(Array.isArray(M)){var S=M[0],P=M[1],I=M[2];if(typeof S=="function"){var B=S(p,I);typeof P=="string"&&(p.plugins[P]?p.throwError(new Error("plugin name ".concat(P," is exists."))):p.plugins[P]=B)}}}return p.gpuPickingRenderTarget=new d.WebGLRenderTarget(1,1),p.meshReplaceMaterialMap=new Map,p.meshOriginMaterialMap=new Map,wp(p),p}return Object.defineProperty(t,"version",{get:function(){return"6.0.0-alpha.92"},enumerable:!1,configurable:!0}),Object.defineProperty(t,"dracoPath",{get:function(){return gi.decoderPath},set:function(e){gi.setDecoderPath(e)},enumerable:!1,configurable:!0}),Object.defineProperty(t,"ktx2Path",{get:function(){return kn.transcoderPath},set:function(e){kn.setTranscoderPath(e)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"panoIndex",{get:function(){return this.pano.panoIndex},enumerable:!1,configurable:!0}),t.prototype.getGPUPicking=function(e,r,i,a,o){var s=this;if(a===void 0&&(a=1),o===void 0&&(o=new d.Vector3(0,0,0)),!this.renderer)throw new Error("renderer is not initialized.");this.models.setMaterial({constantColor:o}),this.scene.traverse(function(f){if(!(!(f instanceof d.Mesh)||f instanceof Ct)){var A=Object.keys(i).filter(function(y){return y===f.uuid})[0];if(A)if(s.meshOriginMaterialMap.set(A,f.material),s.meshReplaceMaterialMap.get(A))f.material=s.meshReplaceMaterialMap.get(A);else{var p=new d.ShaderMaterial({uniforms:{color:{value:i[A]}},vertexShader:`
|
|
2014
2014
|
void main() {
|
|
2015
2015
|
vec4 mvPosition = modelViewMatrix * vec4( position, 1.0 );
|
|
2016
2016
|
gl_Position = projectionMatrix * mvPosition;
|
|
@@ -2020,4 +2020,4 @@ void main() {
|
|
|
2020
2020
|
void main() {
|
|
2021
2021
|
gl_FragColor = vec4( color, 1.0 );
|
|
2022
2022
|
}
|
|
2023
|
-
`});p.depthTest=f.material.depthTest,p.side=f.material.side,s.meshReplaceMaterialMap.set(A,p),f.material=p}}});var l=this.renderer.getSize(new d.Vector2);this.camera.setViewOffset(l.width,l.height,e*a,r*a,1,1),this.renderer.setRenderTarget(this.gpuPickingRenderTarget),this.render();var u=new Uint8Array(4);this.renderer.readRenderTargetPixels(this.gpuPickingRenderTarget,0,0,1,1,u),this.renderer.setRenderTarget(null),this.camera.clearViewOffset(),this.scene.traverse(function(f){!(f instanceof d.Mesh)||f instanceof Ct||s.meshOriginMaterialMap.get(f.uuid)&&(f.material=s.meshOriginMaterialMap.get(f.uuid))}),this.models.setMaterial({constantColor:null});var c=Object.keys(i).filter(function(f){return i[f].equals(new d.Color().setRGB(u[0]/255,u[1]/255,u[2]/255))})[0];return c||!1},t.prototype.dispose=function(){var e,r;if(this.destroyed!==!0){delete Ra.instances[this.ident],this.emit("dispose"),this.destroyed=!0,this.pause(),this.stopAnimationLoop&&(this.stopAnimationLoop(),delete this.stopAnimationLoop),(e=this.renderer)===null||e===void 0||e.setAnimationLoop(null),this.off(),this.networkSubscribe.off(),this.controller&&(this.controller.destroy(),this.controller=void 0);var i=this.getElement();i&&i.parentNode&&i.parentNode.removeChild(i);var a=this.models.getMaterial();a&&(a.pano0&&a.pano0.map.dispose(),a.pano1&&a.pano1.map!==((r=a.pano0)===null||r===void 0?void 0:r.map)&&a.pano1.map.dispose());for(var o=0,s=this.models;o<s.length;o++){var l=s[o];l.dispose()}this.models.length=0,this.models.setMaterial({pano0:null,pano1:null}),this.meshReplaceMaterialMap.forEach(function(u){u.dispose()}),this.meshOriginMaterialMap.forEach(function(u){u.dispose()}),this.renderer instanceof jr&&this.renderer.forceContextLoss&&this.renderer.forceContextLoss()}},t.prototype.setScissor=function(e){Object.assign(this.scissor,e),this.controller&&this.controller.updateRenderSize&&this.controller.updateRenderSize()},Object.defineProperty(t.prototype,"helperVisible",{get:function(){return this.helperGroup.visible},set:function(e){this.helperGroup.visible!==e&&(this.helperGroup.visible=e,this.emit("helpers.visible",X("helpers.visible",{object:this.helperGroup})),this.needsRender=!0)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"enableIOSEDR",{get:function(){return this._enableIOSEDR},set:function(e){this._enableIOSEDR!==e&&(this._enableIOSEDR=e,this.currentMode&&this.currentMode==="Panorama"&&this.changeMode(this.currentMode,this.getCurrentState(),0,!1,!0))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"postProcessingType",{get:function(){return this.currentMode==="Panorama"&&this.enableIOSEDR?"luminance":this.currentMode==="Mapview"&&this.enableEDL?"edl":this.currentMode==="Mapview"&&this.enableHQ?"hq":null},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"enableEDL",{get:function(){return this.models.getMaterial().useEDL},set:function(e){var r,i,a,o;if(e===!0&&this.currentMode!==t.Mode.Mapview)throw new Error("只支持Mapview下开启EDL");if(this.models.setMaterial({useEDL:e}),this.boundingMesh.visible=!e,e){if(!this.screenBuffers){var s=this.getDrawingBufferSize(En);this.screenBuffers=[new d.WebGLRenderTarget(s.x,s.y,{encoding:(i=(r=this.renderer)===null||r===void 0?void 0:r.outputEncoding)!==null&&i!==void 0?i:d.sRGBEncoding,minFilter:d.NearestFilter,magFilter:d.NearestFilter,format:d.RGBAFormat,type:d.FloatType}),new d.WebGLRenderTarget(s.x,s.y,{encoding:(o=(a=this.renderer)===null||a===void 0?void 0:a.outputEncoding)!==null&&o!==void 0?o:d.sRGBEncoding,minFilter:d.LinearMipMapLinearFilter,magFilter:d.LinearMipMapLinearFilter})]}}else this.screenBuffers&&(this.screenBuffers.forEach(function(l){l.dispose()}),delete this.screenBuffers);this.needsRender=!0},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"enableHQ",{get:function(){return this.models.getMaterial().useHQWeight||this.models.getMaterial().useHQDepth||!1},set:function(e){var r,i;if(e===!0&&this.currentMode!==t.Mode.Mapview)throw new Error("只支持Mapview下开启HQ");if(e===!0?this.models.setMaterial({useHQDepth:!0,useHQWeight:!1,pointShape:"CIRCLE"}):this.models.setMaterial({useHQDepth:!1,useHQWeight:!1}),this.boundingMesh.visible=!e,e){if(!this.screenBuffers){var a=this.getDrawingBufferSize(En),o=new d.WebGLRenderTarget(a.x,a.y,{minFilter:d.NearestFilter,magFilter:d.NearestFilter,format:d.RGBAFormat,type:d.FloatType,depthTexture:new d.DepthTexture(a.x,a.y,d.UnsignedIntType)});o.depthTexture.format=d.DepthFormat,o.depthBuffer=!0;var s=new d.WebGLRenderTarget(a.x,a.y,{encoding:(i=(r=this.renderer)===null||r===void 0?void 0:r.outputEncoding)!==null&&i!==void 0?i:d.sRGBEncoding,minFilter:d.NearestFilter,magFilter:d.NearestFilter,format:d.RGBAFormat,type:d.FloatType,depthTexture:o.depthTexture});this.screenBuffers=[o,s]}}else this.screenBuffers&&(this.screenBuffers.forEach(function(l){l.dispose()}),delete this.screenBuffers);this.needsRender=!0},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"enablePostProcessing",{get:function(){return this.screenBuffers!==void 0},set:function(e){var r,i,a,o;if(e){if(!this.screenBuffers){var s=this.getDrawingBufferSize(En);this.screenBuffers=[new d.WebGLRenderTarget(s.x,s.y,{encoding:(i=(r=this.renderer)===null||r===void 0?void 0:r.outputEncoding)!==null&&i!==void 0?i:d.sRGBEncoding}),new d.WebGLRenderTarget(s.x,s.y,{encoding:(o=(a=this.renderer)===null||a===void 0?void 0:a.outputEncoding)!==null&&o!==void 0?o:d.sRGBEncoding})]}}else this.screenBuffers&&(this.screenBuffers.forEach(function(l){l.dispose()}),delete this.screenBuffers);this.needsRender=!0},enumerable:!1,configurable:!0}),t.prototype.updateConfiguration=function(e,r){r===void 0&&(r=!0);var i=!1;e.panorama&&(Object.assign(this.controllerInits.Panorama,e.panorama),this.currentMode==="Panorama"&&(i=!0)),e.model&&(Object.assign(this.controllerInits.Model,e.model),this.currentMode==="Model"&&(i=!0)),e.floorplan&&(Object.assign(this.controllerInits.Floorplan,e.floorplan),this.currentMode==="Floorplan"&&(i=!0)),e.topview&&(Object.assign(this.controllerInits.Topview,e.topview),this.currentMode==="Topview"&&(i=!0)),e.mapview&&(Object.assign(this.controllerInits.Mapview,e.topview),this.currentMode==="Mapview"&&(i=!0)),e.vrPanorama&&(Object.assign(this.controllerInits.VRPanorama,e.vrPanorama),this.currentMode==="VRPanorama"&&(i=!0)),e.imageOptions&&(Object.assign(this.imageOptions,e.imageOptions),(this.currentMode==="Panorama"||this.currentMode==="VRPanorama")&&(i=!0)),e.textureOptions&&Object.assign(this.textureOptions,e.textureOptions),r&&i&&this.controller&&this.currentMode&&this.changeMode(this.currentMode,this.getCurrentState(),0,!1,!0)},t.prototype.appendTo=function(e,r){if(r===void 0&&(r={}),!!this.renderer){if(!(this.renderer instanceof jr)){this.throwError(new Error("cannot call appendTo method when render a external renderer"));return}var i=this.getElement();if(i){e.appendChild(i),this.refresh(r);var a=window.getComputedStyle(e).position;a!=="relative"&&a!=="absolute"&&a!=="fixed"&&a!=="sticky"&&(e.style.position="relative")}}},t.prototype.refresh=function(e,r){if(e===void 0&&(e={}),!!this.renderer){var i=this.getElement();if(i){var a=i.parentNode;if(a&&a.nodeName){var o=e.width,s=o===void 0?a.offsetWidth:o,l=e.height,u=l===void 0?a.offsetHeight:l;this.renderer instanceof jr&&(r&&this.renderer.setPixelRatio(r),this.renderer.setSize(s,u))}this.controller&&this.controller.updateRenderSize&&this.controller.updateRenderSize(),this.needsRender=!0,this.render(D,!0)}}},t.prototype.addExtraElement=function(e){var r=this;return this.extraElements.indexOf(e)===-1&&(this.extraElements.push(e),this.controller&&this.controller.bindExtraElement(e)),function(){return r.removeExtraElement(e)}},t.prototype.removeExtraElement=function(e){var r=this.extraElements.indexOf(e);r!==-1&&(this.extraElements.splice(r,1),this.controller&&this.controller.unbindExtraElement(e))},t.prototype.getPose=function(){var e=this.camera.copyPose(),r=e.longitude,i=e.latitude,a=e.fov,o=e.offset,s=e.distance;return{longitude:r,latitude:i,fov:a,offset:o.clone(),distance:s}},t.prototype.getSize=function(e){if(!this.renderer)throw new Error("renderer is not initialized");return this.renderer.getSize(e),e.x*=this.scissor.width,e.y*=this.scissor.height,e},t.prototype.getDrawingBufferSize=function(e){if(!this.renderer)throw new Error("renderer is not initialized");return this.renderer.getDrawingBufferSize(e),e.x*=this.scissor.width,e.y*=this.scissor.height,e},t.prototype.updateCamera=function(e,r,i){return i===void 0&&(i=!0),this.controller?this.controller.updateCamera(e,r,i):Promise.reject(new Error("controller is not initialized."))},t.prototype.updateCameraWithKeyframes=function(e,r,i){return i===void 0&&(i=!0),this.controller?this.controller.updateCameraWithKeyframes(e,r,i):Promise.reject(new Error("controller is not initialized."))},t.prototype.getLongitudeAndLatitude=function(){var e=this.getPose(),r=e.longitude,i=e.latitude;return{longitude:r,latitude:i}},t.prototype.getOffset=function(){return this.getPose().offset},t.prototype.getCameraLocal=function(){if(this.pano.workCode&&this.controller&&this.works){var e=this.works.getResolvedObserver(this.pano);if(e){var r=new d.Object3D;return r.position.copy(e.position),r.quaternion.copy(e.quaternion),r.scale.set(1,1,1),r.matrix.compose(r.position,r.quaternion,r.scale),r.matrixAutoUpdate=!1,kf(this.camera,r)}}return null},Object.defineProperty(t.prototype,"works",{get:function(){var e=zs.get(this);if(!e)return Gs;for(var r=0,i=e;r<i.length;r++){var a=i[r];if(!ja.has(a))return Gs}return e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"work",{get:function(){return this.works[0]},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"model",{get:function(){return this.models[0]},enumerable:!1,configurable:!0}),t.prototype.load=function(e,r,i,a){var o=this;if(a===void 0&&(a=!0),!this.renderer)throw new Error("renderer is not initialized");var s=this.lastLoadWorkTask.then(function(){return Of(e)?e.then(function(l){return o.load_(l,r,i,a)}):o.load_(e,r,i,a)});return this.lastLoadWorkTask=s.catch(function(l){o.throwError(l)}),s},t.prototype.load_=function(e,r,i,a){var o=this,s,l,u,c,f,A,p,y;a===void 0&&(a=!0);var v={};typeof i=="number"?v.duration=i:typeof i=="object"&&Object.assign(v,i),this.controller||(v.duration=0,v.effect="instant");var m=[];if(Array.isArray(e))for(var h=0,g=e;h<g.length;h++){var b=g[h];typeof b!="string"&&"work"in b?m.push(On(b.work,b)):m.push(On(b))}else m.push(On(e));for(var w=xa(m),E=function(W){var _=C,Z=new Da({allowHosts:W.allowHosts,get requestProxy(){return _.requestProxy},get networkSubscribe(){return _.networkSubscribe}});of(W,Z)},C=this,x=0,M=w;x<M.length;x++){var S=M[x];E(S)}this.lastWorks=this.works,r===void 0&&(r="inherit"),r==="inherit"&&this.lastWorks.length===0&&(r="initial");var P=w.initial,I=P.work.observers[0],B=I?{workCode:I.work.workCode,panoIndex:I.panoIndex}:{workCode:P.work.workCode,panoIndex:0},k=(s=P.mode)!==null&&s!==void 0?s:I?"Panorama":"Mapview",L={};if(r==="inherit"){k=this.currentMode;var O=w.resolvedObservers[this.panoIndex];O?B={workCode:O.work.workCode,panoIndex:O.panoIndex}:typeof w.initial.panoIndex=="number"?B={workCode:w.initial.work.workCode,panoIndex:w.initial.panoIndex}:(k==="Panorama"||k==="VRPanorama"||k==="XRPanorama")&&(k="Mapview"),L={longitude:this.camera.pose.longitude,latitude:this.camera.pose.latitude,fov:this.camera.pose.fov,distance:this.camera.pose.distance,offset:this.camera.pose.offset.clone()}}else if(r==="initial")typeof P.panoIndex=="number"&&(B={workCode:P.work.workCode,panoIndex:P.panoIndex}),P.mode&&(k=P.mode),L={longitude:P.longitude,latitude:P.latitude,fov:P.fov,distance:P.distance,offset:(l=P.offset)===null||l===void 0?void 0:l.clone()};else{if(k=(u=r.mode)!==null&&u!==void 0?u:this.currentMode,typeof r.panoIndex=="number"){var O=w.getResolvedObserver({workCode:(f=(c=r.workCode)!==null&&c!==void 0?c:P.work.workCode)!==null&&f!==void 0?f:"",panoIndex:r.panoIndex});O&&(B={workCode:O.work.workCode,panoIndex:O.panoIndex})}L={longitude:r.longitude,latitude:r.latitude,fov:r.fov,distance:r.distance,offset:r.offset}}var Q=F(F(F({},B),{mode:k}),L);this.emit("works.request",X("works.request",{input:e,works:w,state:Q,userAction:a}));var N=function(){var W,_;o.pano=B;var Z=(W=v.duration)!==null&&W!==void 0?W:o.modeChangeDuration,fe=(_=v.effect)!==null&&_!==void 0?_:"fade",re=F(F({initial:{state:Q,currentState:o.getCurrentState(),duration:Z,effect:fe,userAction:a}},o.commonParams()),o.controllerInits[k]);if(o.controller&&o.currentMode===k)o.controller.updateWork(w,Q,{effect:fe,duration:Z},a)===!1&&(o.controller.destroy(),o.controller=o.applyController(k,re));else{var ie=o.currentMode,ne=Pt[k].initAnimationEndState(re);if(o.controller)o.controller.destroy();else{var ve=Pt[k].initAnimationEndState(re);o.camera.setFromPose(ve),o.modelGroup.visible=!0,o.emit("camera.update",X("camera.update",{state:o.getCurrentState(),userAction:a}))}o.controller=o.applyController(k,re);var te=X("mode.change",{prevMode:ie,mode:k,state:ne,userAction:a});o.emit("mode.change",te)}};if(zs.set(this,w),!this.controller){var K=F(F({initial:{state:Q,currentState:this.getCurrentState(),duration:(A=v.duration)!==null&&A!==void 0?A:this.modeChangeDuration,effect:(p=v.effect)!==null&&p!==void 0?p:"fade",userAction:a}},this.commonParams()),this.controllerInits[k]),j=Pt[k].initAnimationEndState(K);this.camera.setFromPose(j),this.emit("camera.update",X("camera.update",{state:this.getCurrentState(),userAction:a}))}if(this.updateConfiguration(v,!1),k===t.Mode.Floorplan||k===t.Mode.Topview||k===t.Mode.Mapview||k===t.Mode.Model)this.loadModel(w,v).then(function(){o.needsRender=!0,N(),o.emit("camera.update",X("camera.update",{state:o.getCurrentState(),userAction:a}))});else{if(!this.controller){var U=new d.Vector3,G=w.getResolvedObserver(B);G&&U.copy(G.position),this.camera.setFromPose({fov:L.fov,longitude:L.longitude,latitude:L.latitude,distance:L.distance,offset:(y=L.offset)!==null&&y!==void 0?y:U}),this.needsRender=!0}N();var H=!1,Y=function(){o.needsRender=!0,o.emit("camera.update",X("camera.update",{state:o.getCurrentState(),userAction:a})),setTimeout(function(){H===!1&&(o.loadModel(w,v),H=!0)},v.duration)};this.controller.once("pano.moveTo",Y),this.controller.once("pano.cancel",Y)}return this.emit("works.load",X("works.load",{input:e,state:this.getCurrentState(),userAction:a,works:w})),this.ready().then(function(){var W;o.emit("works.ready",X("works.ready",{input:e,state:o.getCurrentState(),userAction:a,works:w})),(W=o.analysis)===null||W===void 0||W.work(w)})},t.prototype.changeMode=function(e,r,i,a,o){var s=this;return r===void 0&&(r={}),a===void 0&&(a=!0),o===void 0&&(o=!1),new Promise(function(l,u){var c,f,A,p;if(!s.renderer)throw new Error("renderer is not initialized.");r=F({},r);var y=0;s.controller&&(typeof i=="number"?y=i:y=(c=i==null?void 0:i.duration)!==null&&c!==void 0?c:s.modeChangeDuration);var v="fly";s.controller&&typeof i=="object"&&i.effect&&(v=i.effect);var m=typeof r.panoIndex=="number"?{workCode:(p=(f=r.workCode)!==null&&f!==void 0?f:(A=s.work)===null||A===void 0?void 0:A.workCode)!==null&&p!==void 0?p:"",panoIndex:r.panoIndex}:s.pano;if(!t.Mode.hasOwnProperty(e)){var h=new Error('mode "'.concat(e,'" is not existed'));s.throwError(h),u(h);return}if((e===t.Mode.Floorplan||e===t.Mode.Topview||e===t.Mode.Mapview||e===t.Mode.Model)&&!s.models.loaded){var h=new Error("model is not ready.");s.throwError(h),u(h);return}if((e===t.Mode.Panorama||e===t.Mode.VRPanorama||e===t.Mode.XRPanorama)&&!s.works.getResolvedObserver(m)){var h=new Error("PanoId ".concat(Qe(m)," not existed."));s.throwError(h),u(h);return}var g=s.controller,b=s.currentMode,w=function(){if(s.controller&&s.controller.stopMomentumMovement(),s.controller&&o===!1&&b===e)e===t.Mode.Panorama||e===t.Mode.Model||e===t.Mode.VRPanorama||e===t.Mode.XRPanorama?Kt(s.pano,m)&&"moveToPano"in s.controller&&typeof s.controller.moveToPano=="function"?s.controller.moveToPano(m,F({duration:y},r),a):s.controller.updateCamera(r,y,a).catch(D):(Kt(s.pano,m)||(s.pano=m),s.controller.updateCamera(r,y,a).catch(D));else{var C=F(F({},r),m),x=F(F({initial:{state:C,currentState:s.getCurrentState(),duration:y,effect:v,userAction:a}},s.commonParams()),s.controllerInits[e]),M=Pt[e].initAnimationEndState(x),S=X("mode.change.request",{prevMode:s.currentMode,mode:e,state:M,userAction:a});if(s.emit("mode.change.request",S),!S.defaultPrevented){g&&g.destroy(),s.controller=s.applyController(e,x);var P=X("mode.change",{prevMode:s.currentMode,mode:e,state:M,userAction:a});s.emit("mode.change",P)}}l()};if(e===t.Mode.VRPanorama)s.requestFullscreen(),Vf().then(function(){return w()}).catch(function(C){C instanceof Error&&(s.exitFullscreen(),s.throwError(C),u(C))});else if(e===t.Mode.XRPanorama){var E=st.shared.getContext();E?E.end():Nf().then(function(C){st.shared.setContext(C),w()}).catch(function(C){C instanceof Error&&(s.throwError(C),u(C))})}else w()})},t.prototype.getPixels=function(e,r,i,a,o){if(o===void 0&&(o=1),!this.renderer)throw new Error("renderer is not initialized.");var s=this.getPixelsRenderTarget,l=this.renderer.getSize(new d.Vector2);e=ue(e,Math.floor(i/2),Math.floor(l.x-i)),r=ue(r,Math.floor(a/2),Math.floor(l.y-a)),s.setSize(i*o,a*o),this.renderer.setRenderTarget(s),this.camera.setViewOffset(l.width,l.height,e,l.height-r-a,i,a),this.controller?this.controller.render():this.renderer.render(this.scene,this.camera);var u=new Uint8Array(i*o*a*o*4);return this.renderer.readRenderTargetPixels(s,0,0,i*o,a*o,u),this.renderer.setRenderTarget(null),this.camera.clearViewOffset(),u},t.prototype.getElement=function(){var e;return(e=this.renderer)===null||e===void 0?void 0:e.domElement},Object.defineProperty(t.prototype,"observers",{get:function(){return this.works.resolvedObservers},enumerable:!1,configurable:!0}),t.prototype.render=function(e,r){var i=this;if(r===void 0&&(r=!1),!this.renderer)return null;if(r){var a=this.renderer.getSize(En);this.scene.traverseVisible(function(s){s.setResolution&&s.setResolution(a.x,a.y)})}if(this.controller&&this.screenBuffers&&this.renderer.getRenderTarget()===null){var o=this.getDrawingBufferSize(En);return this.screenBuffers.forEach(function(s){s.setSize(o.x,o.y)}),this.renderer.setRenderTarget(this.screenBuffers[0]),this.controller.render(),this.info={memory:F({},this.controller.renderer.info.memory),render:F({},this.controller.renderer.info.render)},this.currentMode!=="VRPanorama"&&this.currentMode!=="XRPanorama"&&this.poweredByRealsee&&Ds(this.renderer),e&&st.shared.add(e,!0),this.screenBuffers[0]}else return this.aroundScissor(function(){i.renderer&&(i.controller?(i.controller.render(),i.info={memory:F({},i.controller.renderer.info.memory),render:F({},i.controller.renderer.info.render)}):(i.renderer.render(i.scene,i.camera),i.info={memory:F({},i.renderer.info.memory),render:F({},i.renderer.info.render)}),i.poweredByRealsee&&i.currentMode!=="VRPanorama"&&i.currentMode!=="XRPanorama"&&Ds(i.renderer)),e&&st.shared.add(e,!0)}),null},t.prototype.updateTime=function(e,r){for(var i,a=this,o,s,l=[],u=2;u<arguments.length;u++)l[u-2]=arguments[u];if(!this.destroyed){if(this.works.update(),this.syncingState=this.syncState(e,r),this.controller&&(i=this.controller).updateTime.apply(i,ht([e,r],l,!1)),this.renderer&&(this.camera.pixelRatio=this.renderer.getPixelRatio(),this.getSize(this.camera.resolution),this.camera.aspect=this.camera.resolution.width/this.camera.resolution.height),this.camera.updateTime(e,r),this.renderer){kn.detectSupport(this.renderer);var c=this.models.loaded,f=this.models.refined;if(this.models.update(this.renderer,this.camera,this.currentMode),c===!1&&this.models.loaded===!0&&this.emit("models.load",X("models.load",{models:this.models})),f===!1&&this.models.refined===!0&&this.emit("models.refined",X("models.refined",{models:this.models})),this.models.loaded){for(var A=0,p=this.models;A<p.length;A++){var y=p[A];y.parent!==this.modelGroup&&(this.modelGroup.add(y),this.needsRender=!0)}if(this.lastModels.length>0){for(var v=0,m=this.lastModels;v<m.length;v++){var y=m[v];this.modelGroup.remove(y),y.dispose(),this.needsRender=!0}this.lastModels.length=0}this.lastWorks&&delete this.lastWorks}this.lastModels.setMaterial(this.models.getMaterial()),this.lastModels.materialVersion=this.models.materialVersion,this.lastModels.update(this.renderer,this.camera,this.currentMode)}this.syncingState=!1;var h=new d.Vector2(512,512),g=new d.Vector2(512,512);this.renderer&&(this.renderer.getSize(h),h.x*=this.scissor.width,h.y*=this.scissor.height,this.renderer.getDrawingBufferSize(g),g.x*=this.scissor.width,g.y*=this.scissor.height);{for(var b=new d.Box3,w=new d.Box3,E=new d.Vector3(4,4,4),C=0,x=this.works.resolvedObservers;C<x.length;C++){var M=x[C];w.setFromCenterAndSize(M.position,E),b.union(w)}if(b.union(this.models.bounding),this.lastWorks)for(var S=0,P=this.lastWorks.resolvedObservers;S<P.length;S++){var M=P[S];w.setFromCenterAndSize(M.position,E),b.union(w)}b.union(this.lastModels.bounding),b.getCenter(this.boundingMesh.position),b.getSize(this.boundingMesh.scale),this.boundingMesh.boundingBox.copy(b);var I=(o=this.models.getMaterial())!==null&&o!==void 0?o:{},B=1-((s=I.modelAlpha)!==null&&s!==void 0?s:0);I.opacity=ue(B*4-3,0,1),I.clippers=null,I.shownFloorIndex=-2,this.boundingMesh.setMaterial(I),this.boundingMesh.needsRender=!1}var k=X("render.prepare",{needsRender:!0,info:null});if(this.emit("render.prepare",k),!k.defaultPrevented){var L=[];ii.multiplyMatrices(this.camera.projectionMatrix,this.camera.matrixWorldInverse),ni.setFromProjectionMatrix(ii);for(var O=0,Q=this.scene.children;O<Q.length;O++){var N=Q[O];N!==this.modelGroup&&N!==this.boundingMesh&&N instanceof d.Object3D&&N.traverseVisible(function(_){if(_.setResolution&&_.setResolution(h.x,h.y),_.setTime&&_.setTime(e),_.mixer instanceof d.AnimationMixer){var Z=Us.get(_.mixer);Z||(Z=new d.Clock,Us.set(_.mixer,Z)),_.mixer.update(Z.getDelta())}(_ instanceof d.Mesh||_ instanceof d.Line||_ instanceof d.Points)&&(_ instanceof d.ImmediateRenderObject||!_.frustumCulled||ni.intersectsObject(_))&&L.push(_)})}if(g.width*g.height>4096*2048?this.renderSwitch01=this.renderSwitch01^1:this.renderSwitch01=0,this.renderer&&this.paused===!1&&this.renderSwitch01===0){var K=void 0;if(this.onlyRenderIfNeeds!==!0)K=this.render();else{if(this.controller&&this.controller.needsRender===!0&&(this.controller.needsRender=!1,this.needsRender=!0),this.camera.needsRender===!0&&(this.camera.needsRender=!1,this.needsRender=!0),this.models.needsRender===!0&&(this.models.needsRender=!1,this.needsRender=!0),this.needsRender!==!0)for(var j=0,U=L;j<U.length;j++){var G=U[j],H=function(_){_.needsRender===!0?(_.needsRender=!1,a.needsRender=!0):_.mixer&&_.mixer.stats.actions.inUse>0&&(a.needsRender=!0)};H(G),G.traverseAncestors(H)}this.needsRender!==!1&&(K=this.render())}if(this.needsRender=!1,this.controller&&this.screenBuffers){var Y=this.controller,W=this.screenBuffers;this.aroundScissor(function(){Y.postProcessing(W,a.postProcessingType)})}this.hasListener("render")&&this.emit("render",X("render",{needsRender:K!==void 0,info:this.info}))}this.needsRender=!1}this.fps.testTime&&e-this.fps.testTime<1e3?this.fps.testCount++:(this.emit("fps",this.fps.testCount),this.fps.testTime=e,this.fps.testCount=0)}},t.prototype.pause=function(){this.paused=!0,this.renderer&&this.renderer instanceof jr&&this.renderer.clear(!0,!0,!0)},t.prototype.play=function(){this.needsRender=!0,this.paused=!1},t.prototype.moveToPano=function(e,r,i){r===void 0&&(r={}),i===void 0&&(i=!0);var a=this,o=a.controller,s=a.renderer;if(!o)return this.throwError(new Error("controller is not initialized.")),Promise.resolve();if(!s)return this.throwError(new Error("renderer is not initialized.")),Promise.resolve();var l=this.works.getResolvedObserver(e);if(!l)return this.throwError(new Error("pano ".concat(JSON.stringify(e)," not existed."))),Promise.resolve();var u={workCode:l.work.workCode,panoIndex:l.panoIndex};return"moveToPano"in o&&typeof o.moveToPano=="function"?o.moveToPano(u,r,i):l&&(this.pano=u,this.once("initAnimation.start",function(c){r.moveStartCallback&&r.moveStartCallback(c.state)}),this.once("initAnimation.end",function(c){r.moveEndCallback&&r.moveEndCallback(c.state)}),this.changeMode(t.Mode.Panorama,r,{effect:r.effect},i)),this.ready()},t.prototype.preloadPano=function(e,r){var i=this;r===void 0&&(r=D);var a=this.works.getResolvedObserver(e);if(!a)return Promise.reject(new Error("Pano ".concat(JSON.stringify(e)," never found")));var o=["right","left","up","down","front","back"],s=be();return Promise.all(o.map(function(l){var u=F({key:"pano.".concat(a.panoId,".").concat(l)},xr(i.imageOptions,["size","format","quality","mappings"])),c=a.images[l],f=i.imageOptions.transform?i.imageOptions.transform(c,u):Gt(c,u);return ot(a.work).preload(f)})).then(function(){var l=be()-s;return r(l),l})},t.prototype.project2d=function(e,r){if(r===void 0&&(r=!1),!this.renderer)return null;if(this.models.length>0&&r){var i=this.camera.position,a=e.clone().sub(i),o=new d.Raycaster(i,a.clone().normalize());o.params.Points={threshold:.1};var s=this.models.intersectRaycaster(o)[0];if(s&&s.distance+.01<a.length())return null}var l=e.clone().project(this.camera);if(Math.abs(l.z)>1)return null;var u=this.renderer.getSize(new d.Vector2),c=u.x*this.scissor.width,f=u.y*this.scissor.height,A=u.x*this.scissor.left+(l.x+1)/2*c,p=u.y*(1-this.scissor.bottom-this.scissor.height)+(-l.y+1)/2*f;return new d.Vector2(A,p)},t.prototype.getRenderObjects=function(e){ii.multiplyMatrices(this.camera.projectionMatrix,this.camera.matrixWorldInverse),ni.setFromProjectionMatrix(ii),e||(e=this.scene);var r=[];return e.traverseVisible(function(i){(i instanceof d.Mesh||i instanceof d.Line||i instanceof d.Points)&&(i instanceof d.ImmediateRenderObject||!i.frustumCulled||ni.intersectsObject(i))&&r.push(i)}),r},t.prototype.getCurrentState=function(){return F(F({},this.getPose()),{mode:this.currentMode,workCode:this.pano.workCode,panoIndex:this.pano.panoIndex})},t.prototype.setState=function(e,r,i){var a,o,s,l,u,c,f,A,p,y;r===void 0&&(r=!1),i===void 0&&(i=!0),e=Object.assign({},e),e.offset&&!(e instanceof d.Vector3)&&(e.offset=new d.Vector3(e.offset.x,e.offset.y,e.offset.z));var v;typeof e.panoIndex=="number"&&(e.workCode?v={workCode:e.workCode,panoIndex:e.panoIndex}:v={workCode:(o=(a=this.work)===null||a===void 0?void 0:a.workCode)!==null&&o!==void 0?o:"",panoIndex:e.panoIndex});var m=(s=e.mode)!==null&&s!==void 0?s:this.state.mode,h,g,b,w,E;if((e.mode===t.Mode.Floorplan||e.mode===t.Mode.Topview||e.mode===t.Mode.Mapview||e.mode===t.Mode.Model)&&!this.models.loaded){this.throwError(new Error("model is not ready."));return}if(this.controller&&this.controller.stopMomentumMovement(),this.state.mode!==m){if(m==="VRPanorama"){this.changeMode("VRPanorama",void 0,void 0,!0);return}var C={workCode:v==null?void 0:v.workCode,panoIndex:v==null?void 0:v.panoIndex};typeof e.longitude=="number"&&(C.longitude=e.longitude),typeof e.latitude=="number"&&(C.latitude=e.latitude),typeof e.fov=="number"&&(C.fov=e.fov),typeof e.distance=="number"&&(C.distance=e.distance),e.offset instanceof d.Vector3&&(C.offset=e.offset);var x=F(F({initial:{state:C,currentState:this.getCurrentState(),duration:this.modeChangeDuration,effect:"fly",userAction:!1}},this.commonParams()),this.controllerInits[m]),M=Pt[m].initAnimationEndState(x);h=M.longitude,g=M.latitude,b=M.fov,w=M.offset,E=M.distance}else h=(l=e.longitude)!==null&&l!==void 0?l:this.state.longitude,g=(u=e.latitude)!==null&&u!==void 0?u:this.state.latitude,b=(c=e.fov)!==null&&c!==void 0?c:this.state.fov,w=(f=e.offset)!==null&&f!==void 0?f:this.state.offset,E=(A=e.distance)!==null&&A!==void 0?A:this.state.distance;var S={workCode:(v!=null?v:this.pano).workCode,panoIndex:(v!=null?v:this.pano).panoIndex,mode:m,longitude:h,latitude:g,fov:b,offset:w,distance:E};this.emit("state.set",X("state.set",{userAction:i,state:S})),Fr(this.state,S)||(this.controller&&S.mode==="VRPanorama"&&S.mode!==this.state.mode?(rr(this.state,S),this.changeMode("VRPanorama")):this.controller&&S.mode==="XRPanorama"&&S.mode!==this.state.mode?(rr(this.state,S),this.changeMode("XRPanorama")):(rr(this.state,S),this.controller&&i&&(this.controller.userAction=!1),r&&this.state.mode===S.mode&&(this.syncingState=this.syncState(be(),0,r),this.syncingState&&((p=this.controller)===null||p===void 0||p.updateTime(be(),0),this.syncingState=!1)),this.emit("state.change",X("state.change",{userAction:i,state:this.state})),(y=this.analysis)===null||y===void 0||y.state(this.works,this.state)))},t.prototype.aroundScissor=function(e){if(this.renderer){if(this.state.mode==="XRPanorama"){e();return}var r=new d.Vector2,i=this.scissor.left!==0||this.scissor.bottom!==0||this.scissor.width!==1||this.scissor.height!==1;if(i){this.renderer.getSize(r);var a=Math.floor(r.x*this.scissor.left),o=Math.floor(r.y*this.scissor.bottom),s=Math.floor(r.x*this.scissor.width),l=Math.floor(r.y*this.scissor.height);this.renderer.setViewport(a,o,s,l),this.renderer.setScissor(a,o,s,l),this.renderer.setScissorTest(!0)}e(),i&&(this.renderer.setViewport(0,0,r.x,r.y),this.renderer.setScissor(0,0,r.x,r.y),this.renderer.setScissorTest(!1))}},t.prototype.syncState=function(e,r,i){i===void 0&&(i=!1);var a=this.stateSynced;if(this.stateSynced=!1,this.works.length===0||!this.controller)return!1;if(this.state.mode!==this.currentMode){var o={mode:this.state.mode,workCode:this.state.workCode,panoIndex:this.state.panoIndex,longitude:this.state.longitude,latitude:this.state.latitude,fov:this.state.fov,offset:this.state.offset,distance:this.state.distance};return this.changeMode(this.state.mode,o,this.modeChangeDuration,this.controller.userAction),!0}if(!this.controller.isReady())return!1;if(this.controller instanceof Pt.Model){if(Ia(this.camera.pose.offset,this.state.offset)){var s={longitude:this.state.longitude,latitude:this.state.latitude,fov:this.state.fov,offset:this.state.offset};return this.controller.moveToPosition(this.state.offset,F(F({},s),{duration:i?0:void 0}),!1),!0}}else{var l={workCode:this.state.workCode,panoIndex:this.state.panoIndex};if(!Kt(l,this.pano)&&"moveToPano"in this.controller&&typeof this.controller.moveToPano=="function"){var s={longitude:this.state.longitude,latitude:this.state.latitude,fov:this.state.fov,offset:this.state.offset,distance:this.state.distance};return this.controller.moveToPano(l,s,!1),!0}}if(this.controller instanceof Pt.Floorplan||this.controller instanceof Pt.Topview||this.controller instanceof Pt.Mapview){var u=1,c=.2,f=.2,A=Math.PI/45,p=i?this.state.fov:Ji(this.camera.pose.fov,this.state.fov,u),y=Math.abs(this.camera.pose.distance-this.state.distance),v=y>f*15?y/15:c,m=i?this.state.distance:Ji(this.camera.pose.distance,this.state.distance,v),h=this.camera.pose.offset.distanceTo(this.state.offset),g=h>f*15?h/15:f,b=i?new d.Vector3().copy(this.state.offset):Lf(this.camera.pose.offset,this.state.offset,g),w=i?{longitude:this.state.longitude,latitude:this.state.latitude}:gs({longitude:this.camera.pose.longitude,latitude:this.camera.pose.latitude},{longitude:this.state.longitude,latitude:this.state.latitude},A),E=w.longitude,C=w.latitude;if(Ht(p,this.camera.pose.fov)||Ia(b,this.camera.pose.offset)||Ht(m,this.camera.pose.distance)||Ht(E,this.camera.pose.longitude,Math.PI*2)||Ht(C,this.camera.pose.latitude)){var x={x:b.x,y:b.y,z:b.z},M={fov:p};return Object.assign(x,{distance:m}),Object.assign(M,{longitude:E,latitude:C}),this.controller.stopMomentumMovement(),this.controller.cameraMotion.set(M,0).catch(D),this.controller.locationMotion.set(x,0).catch(D),!0}}else{var S=1,P=Math.PI/45,p=i?this.state.fov:Ji(this.camera.pose.fov,this.state.fov,S),I=i?{longitude:this.state.longitude,latitude:this.state.latitude}:gs({longitude:this.camera.pose.longitude,latitude:this.camera.pose.latitude},{longitude:this.state.longitude,latitude:this.state.latitude},P),E=I.longitude,C=I.latitude;if(Ht(E,this.camera.pose.longitude,Math.PI*2)||Ht(C,this.camera.pose.latitude)||Ht(p,this.camera.pose.fov))return this.controller.stopMomentumMovement(),this.controller.cameraMotion.set({longitude:E,latitude:C,fov:p},0).catch(D),!0}if(this.stateSynced=!0,a===!1&&this.emit("state.synced",X("state.synced",{userAction:!1,state:this.state})),this.readyCallbacks.length&&this.stateSynced){var B=this.currentMode,k=B===t.Mode.Floorplan||B===t.Mode.Topview||B===t.Mode.Mapview||B===t.Mode.Model;if(!k||this.models.loaded){var L=this.readyCallbacks.slice();this.readyCallbacks.length=0;for(var O=0,Q=L;O<Q.length;O++){var N=Q[O];this.controller instanceof Pt.Panorama&&N.tile===!0&&!this.controller.isTileReady()?this.readyCallbacks.push(N):N()}}}return!1},t.prototype.ready=function(e){var r=this;return e===void 0&&(e={}),new Promise(function(i){var a;r.readyCallbacks.push(Object.assign(i,{tile:(a=e.tile)!==null&&a!==void 0?a:!1}))})},t.prototype.requestFullscreen=function(){var e;if(In()){var r=(e=this.getElement())===null||e===void 0?void 0:e.parentNode;r&&"requestFullscreen"in r&&typeof document!="undefined"&&document.fullscreenElement===null&&r.requestFullscreen()}},t.prototype.exitFullscreen=function(){typeof document!="undefined"&&document.fullscreenElement&&"exitFullscreen"in document&&document.exitFullscreen()},t.prototype.throwError=function(e){this.hasListener("error")?this.emit("error",e):console.error(e)},t.prototype.loadModel=function(e,r){for(var i=this,a=[],o=function(m){var h=s.models.filter(function(b){var w;return((w=b.work)===null||w===void 0?void 0:w.workCode)===m.workCode})[0];if(h)h.work=m,a.push(h);else{var g=new Sa({coordinatesSystemTransformers:s.coordinatesSystemTransformers,onError:function(b){i.emit("model.error",X("model.request",{work:m,model:g,error:b}))},onShownFloorChange:function(b){i.emit("model.changeShownFloor",X("model.request",{work:m,model:g,error:null}))},onLoad:function(){i.emit("model.load",X("model.request",{work:m,model:g,error:null}))}});a.push(g),s.emit("model.request",X("model.request",{work:m,model:g,error:null})),g.load(m,{textureOptions:s.textureOptions,"3d-tiles":r["3d-tiles"]})}},s=this,l=0,u=e;l<u.length;l++){var c=u[l];o(c)}if(this.models.length>0){for(var f=0,A=this.models;f<A.length;f++){var p=A[f];a.indexOf(p)===-1&&this.lastModels.push(p)}this.models.length=0}for(var y=0,v=a;y<v.length;y++){var p=v[y];this.models.push(p)}return this.renderer&&(this.models.loaded=!1),new Promise(function(m){i.on("models.load",function(){m()})})},t.prototype.commonParams=function(){return{ident:this.ident,scene:this.scene,xrCustomObjectsScene:this.xrCustomObjectsScene,helper:this.helperGroup,boundingMesh:this.boundingMesh,camera:this.camera,renderer:this.renderer,scissor:this.scissor,element:this.getElement(),models:this.models,works:this.works,imageOptions:this.imageOptions,enableWheel:this.enableWheel,enableIOSEDR:this._enableIOSEDR,enableEDL:this.enableEDL,enableHQ:this.enableHQ,extraElements:this.extraElements,videoTexture:this.videoTexture}},t.prototype.applyController=function(e,r){var i=this;if(!this.renderer)throw new Error("renderer is not initialized.");e!==t.Mode.Mapview&&(this.enableEDL=!1,this.enableHQ=!1);var a=Pt[e];if(e!==this.currentMode)for(var o=0,s=this.models;o<s.length;o++){var l=s[o];l.show()}this.currentMode=e;for(var u=new a(r),c=function(m){u.on(m,function(){for(var h=[],g=0;g<arguments.length;g++)h[g]=arguments[g];var b=i.emit.apply(i,ht([m],h,!1));if(b)return!1})},f=0,A=pl;f<A.length;f++){var p=A[f];c(p)}{var y=Pt[e].initAnimationEndState(r),v=r.initial.userAction;Fr(this.state,y)||(rr(this.state,y),this.emit("state.change",X("state.change",{userAction:v,state:this.state}))),this.emit("currentState.change",X("currentState.change",{userAction:v,state:this.getCurrentState()}))}return u.on("camera.update",function(m){var h;if(i.controller){var g=i.controller.getTargetState();m.userAction&&i.syncingState===!1&&i.state.mode===g.mode&&!Fr(i.state,g)&&(rr(i.state,g),i.emit("state.change",X("state.change",{userAction:m.userAction,state:i.state})),(h=i.analysis)===null||h===void 0||h.state(i.works,i.state))}i.emit("currentState.change",X("currentState.change",{userAction:m.userAction,state:i.getCurrentState()}))}),u.on("initAnimation.start",function(m){var h,g=m.state,b=m.userAction;b&&i.state.mode===g.mode&&!Fr(i.state,g)&&(rr(i.state,g),i.emit("state.change",X("state.change",{userAction:b,state:i.state})),(h=i.analysis)===null||h===void 0||h.state(i.works,i.state))}),u.on("initAnimation.end",function(m){var h,g=m.state,b=m.userAction;b&&i.state.mode===g.mode&&!Fr(i.state,g)&&(rr(i.state,g),i.emit("state.change",X("state.change",{userAction:b,state:i.state})),(h=i.analysis)===null||h===void 0||h.state(i.works,i.state))}),u.on("pano.moveTo",function(m){var h,g=m.state,b=m.userAction;i.pano={workCode:g.workCode,panoIndex:g.panoIndex},b&&i.state.mode===g.mode&&!Fr(i.state,g)&&(rr(i.state,g),i.emit("state.change",X("state.change",{userAction:b,state:i.state})),(h=i.analysis)===null||h===void 0||h.state(i.works,i.state))}),u.on("pano.arrived",function(m){var h,g=m.state,b=m.userAction;b&&i.state.mode===g.mode&&!Fr(i.state,g)&&(rr(i.state,g),i.emit("state.change",X("state.change",{userAction:b,state:i.state})),(h=i.analysis)===null||h===void 0||h.state(i.works,i.state))}),u.on("pano.cancel",function(m){var h,g=m.state,b=m.userAction;b&&i.state.mode===g.mode&&!Fr(i.state,g)&&(rr(i.state,g),i.emit("state.change",X("state.change",{userAction:b,state:i.state})),(h=i.analysis)===null||h===void 0||h.state(i.works,i.state))}),u.on("pano.moveTo",function(m){var h=m.userAction;i.emit("currentState.change",X("currentState.change",{userAction:h,state:i.getCurrentState()}))}),u.on("pano.request",function(m){i.emit("pano.request",m),m.defaultPrevented||i.moveToPano(m.state,m.options,m.userAction)}),u.on("vr.requestExit",function(){i.currentMode===t.Mode.VRPanorama&&(i.exitFullscreen(),i.changeMode(t.Mode.Panorama))}),u.on("error",function(m){return i.throwError(m)}),u},t.prototype.removeEventListeners=function(){},t.Mode={Panorama:"Panorama",Model:"Model",Floorplan:"Floorplan",Topview:"Topview",Mapview:"Mapview",VRPanorama:"VRPanorama",XRPanorama:"XRPanorama"},t.Line=null,t}(Mi),Ra={instances:{},constructor:ml};typeof window!="undefined"&&Object.assign(window,{__FIVE_DEBUG__:Ra});var Lp=function(){function n(){}return n.createButton=function(t){var e=document.createElement("button");function r(){e.style.display="",e.style.cursor="pointer",e.style.left="calc(50% - 50px)",e.style.width="100px",e.textContent="ENTER VR",e.onmouseenter=function(){e.style.opacity="1.0"},e.onmouseleave=function(){e.style.opacity="0.5"},e.onclick=function(){t&&t()}}function i(){e.style.display="",e.style.cursor="auto",e.style.left="calc(50% - 75px)",e.style.width="150px",e.onmouseenter=null,e.onmouseleave=null,e.onclick=null}function a(){i(),e.textContent="VR NOT SUPPORTED"}function o(l){l.style.position="absolute",l.style.bottom="20px",l.style.padding="12px 6px",l.style.border="1px solid #fff",l.style.borderRadius="4px",l.style.background="rgba(0,0,0,0.1)",l.style.color="#fff",l.style.font="normal 13px sans-serif",l.style.textAlign="center",l.style.opacity="0.5",l.style.outline="none",l.style.zIndex="999"}if("xr"in navigator)return e.id="VRButton",e.style.display="none",o(e),navigator.xr.isSessionSupported("immersive-vr").then(function(l){l?r():a()}),e;var s=document.createElement("a");return window.isSecureContext===!1?(s.href=document.location.href.replace(/^http:/,"https:"),s.innerHTML="WEBXR NEEDS HTTPS"):(s.href="https://immersiveweb.dev/",s.innerHTML="WEBXR NOT AVAILABLE"),s.style.left="calc(50% - 90px)",s.style.width="180px",s.style.textDecoration="none",o(s),s},n}();exports.AnimationFrameLoop=st;exports.Camera=Si;exports.Fetcher=Da;exports.Five=ml;exports.InternalWebGLRenderer=jr;exports.IntersectMesh=Ii;exports.Model=Sa;exports.ModelViewLayer=ui;exports.NetworkSubscribe=Zs;exports.PBMContainer=nu;exports.PBMGroup=tc;exports.PBMMesh=Ct;exports.PBMMeshMaterial=Hn;exports.PROXY_CONTROLLER_EVENT_NAMES=pl;exports.PanoCircleMesh=Yu;exports.PanoCircleMeshCustom=Sf;exports.PanoCircleMeshSolid=Ef;exports.RequestScheduler=Aa;exports.Scene=uu;exports.Subscribe=Mi;exports.TextureLoader=Gn;exports.Tile=Ga;exports.Tile3DModel=ln;exports.TileCubeTextureTarget=ke;exports.TileNode=wu;exports.Tileset=oi;exports.TilesetCache=hu;exports.TilesetTraverser=ma;exports.Work=Wa;exports.XRButton=Lp;exports.defaultImageURLTransform=Gt;exports.defaultPbmParameters=we;exports.getViewportScale=vl;exports.imageSupport=$s;exports.isPanoId=tu;exports.loadAt3d=Gu;exports.loadB3dm=Pu;exports.loadDome=Hu;exports.loadDomez=qu;exports.loadPbm=Du;exports.loadPnts=Ru;exports.panoEqual=Kt;exports.panoParse=ft;exports.panoStringify=Qe;exports.parseWork=On;
|
|
2023
|
+
`});p.depthTest=f.material.depthTest,p.side=f.material.side,s.meshReplaceMaterialMap.set(A,p),f.material=p}}});var l=this.renderer.getSize(new d.Vector2);this.camera.setViewOffset(l.width,l.height,e*a,r*a,1,1),this.renderer.setRenderTarget(this.gpuPickingRenderTarget),this.render();var u=new Uint8Array(4);this.renderer.readRenderTargetPixels(this.gpuPickingRenderTarget,0,0,1,1,u),this.renderer.setRenderTarget(null),this.camera.clearViewOffset(),this.scene.traverse(function(f){!(f instanceof d.Mesh)||f instanceof Ct||s.meshOriginMaterialMap.get(f.uuid)&&(f.material=s.meshOriginMaterialMap.get(f.uuid))}),this.models.setMaterial({constantColor:null});var c=Object.keys(i).filter(function(f){return i[f].equals(new d.Color().setRGB(u[0]/255,u[1]/255,u[2]/255))})[0];return c||!1},t.prototype.dispose=function(){var e,r;if(this.destroyed!==!0){delete Ra.instances[this.ident],this.emit("dispose"),this.destroyed=!0,this.pause(),this.stopAnimationLoop&&(this.stopAnimationLoop(),delete this.stopAnimationLoop),(e=this.renderer)===null||e===void 0||e.setAnimationLoop(null),this.off(),this.networkSubscribe.off(),this.controller&&(this.controller.destroy(),this.controller=void 0);var i=this.getElement();i&&i.parentNode&&i.parentNode.removeChild(i);var a=this.models.getMaterial();a&&(a.pano0&&a.pano0.map.dispose(),a.pano1&&a.pano1.map!==((r=a.pano0)===null||r===void 0?void 0:r.map)&&a.pano1.map.dispose());for(var o=0,s=this.models;o<s.length;o++){var l=s[o];l.dispose()}this.models.length=0,this.models.setMaterial({pano0:null,pano1:null}),this.meshReplaceMaterialMap.forEach(function(u){u.dispose()}),this.meshOriginMaterialMap.forEach(function(u){u.dispose()}),this.renderer instanceof jr&&this.renderer.forceContextLoss&&this.renderer.forceContextLoss()}},t.prototype.setScissor=function(e){Object.assign(this.scissor,e),this.controller&&this.controller.updateRenderSize&&this.controller.updateRenderSize()},Object.defineProperty(t.prototype,"helperVisible",{get:function(){return this.helperGroup.visible},set:function(e){this.helperGroup.visible!==e&&(this.helperGroup.visible=e,this.emit("helpers.visible",X("helpers.visible",{object:this.helperGroup})),this.needsRender=!0)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"enableIOSEDR",{get:function(){return this._enableIOSEDR},set:function(e){this._enableIOSEDR!==e&&(this._enableIOSEDR=e,this.currentMode&&this.currentMode==="Panorama"&&this.changeMode(this.currentMode,this.getCurrentState(),0,!1,!0))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"postProcessingType",{get:function(){return this.currentMode==="Panorama"&&this.enableIOSEDR?"luminance":this.currentMode==="Mapview"&&this.enableEDL?"edl":this.currentMode==="Mapview"&&this.enableHQ?"hq":null},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"enableEDL",{get:function(){return this.models.getMaterial().useEDL},set:function(e){var r,i,a,o;if(e===!0&&this.currentMode!==t.Mode.Mapview)throw new Error("只支持Mapview下开启EDL");if(this.models.setMaterial({useEDL:e}),this.boundingMesh.visible=!e,e){if(!this.screenBuffers){var s=this.getDrawingBufferSize(En);this.screenBuffers=[new d.WebGLRenderTarget(s.x,s.y,{encoding:(i=(r=this.renderer)===null||r===void 0?void 0:r.outputEncoding)!==null&&i!==void 0?i:d.sRGBEncoding,minFilter:d.NearestFilter,magFilter:d.NearestFilter,format:d.RGBAFormat,type:d.FloatType}),new d.WebGLRenderTarget(s.x,s.y,{encoding:(o=(a=this.renderer)===null||a===void 0?void 0:a.outputEncoding)!==null&&o!==void 0?o:d.sRGBEncoding,minFilter:d.LinearMipMapLinearFilter,magFilter:d.LinearMipMapLinearFilter})]}}else this.screenBuffers&&(this.screenBuffers.forEach(function(l){l.dispose()}),delete this.screenBuffers);this.needsRender=!0},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"enableHQ",{get:function(){return this.models.getMaterial().useHQWeight||this.models.getMaterial().useHQDepth||!1},set:function(e){var r,i;if(e===!0&&this.currentMode!==t.Mode.Mapview)throw new Error("只支持Mapview下开启HQ");if(e===!0?this.models.setMaterial({useHQDepth:!0,useHQWeight:!1,pointShape:"CIRCLE"}):this.models.setMaterial({useHQDepth:!1,useHQWeight:!1}),this.boundingMesh.visible=!e,e){if(!this.screenBuffers){var a=this.getDrawingBufferSize(En),o=new d.WebGLRenderTarget(a.x,a.y,{minFilter:d.NearestFilter,magFilter:d.NearestFilter,format:d.RGBAFormat,type:d.FloatType,depthTexture:new d.DepthTexture(a.x,a.y,d.UnsignedIntType)});o.depthTexture.format=d.DepthFormat,o.depthBuffer=!0;var s=new d.WebGLRenderTarget(a.x,a.y,{encoding:(i=(r=this.renderer)===null||r===void 0?void 0:r.outputEncoding)!==null&&i!==void 0?i:d.sRGBEncoding,minFilter:d.NearestFilter,magFilter:d.NearestFilter,format:d.RGBAFormat,type:d.FloatType,depthTexture:o.depthTexture});this.screenBuffers=[o,s]}}else this.screenBuffers&&(this.screenBuffers.forEach(function(l){l.dispose()}),delete this.screenBuffers);this.needsRender=!0},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"enablePostProcessing",{get:function(){return this.screenBuffers!==void 0},set:function(e){var r,i,a,o;if(e){if(!this.screenBuffers){var s=this.getDrawingBufferSize(En);this.screenBuffers=[new d.WebGLRenderTarget(s.x,s.y,{encoding:(i=(r=this.renderer)===null||r===void 0?void 0:r.outputEncoding)!==null&&i!==void 0?i:d.sRGBEncoding}),new d.WebGLRenderTarget(s.x,s.y,{encoding:(o=(a=this.renderer)===null||a===void 0?void 0:a.outputEncoding)!==null&&o!==void 0?o:d.sRGBEncoding})]}}else this.screenBuffers&&(this.screenBuffers.forEach(function(l){l.dispose()}),delete this.screenBuffers);this.needsRender=!0},enumerable:!1,configurable:!0}),t.prototype.updateConfiguration=function(e,r){r===void 0&&(r=!0);var i=!1;e.panorama&&(Object.assign(this.controllerInits.Panorama,e.panorama),this.currentMode==="Panorama"&&(i=!0)),e.model&&(Object.assign(this.controllerInits.Model,e.model),this.currentMode==="Model"&&(i=!0)),e.floorplan&&(Object.assign(this.controllerInits.Floorplan,e.floorplan),this.currentMode==="Floorplan"&&(i=!0)),e.topview&&(Object.assign(this.controllerInits.Topview,e.topview),this.currentMode==="Topview"&&(i=!0)),e.mapview&&(Object.assign(this.controllerInits.Mapview,e.topview),this.currentMode==="Mapview"&&(i=!0)),e.vrPanorama&&(Object.assign(this.controllerInits.VRPanorama,e.vrPanorama),this.currentMode==="VRPanorama"&&(i=!0)),e.imageOptions&&(Object.assign(this.imageOptions,e.imageOptions),(this.currentMode==="Panorama"||this.currentMode==="VRPanorama")&&(i=!0)),e.textureOptions&&Object.assign(this.textureOptions,e.textureOptions),r&&i&&this.controller&&this.currentMode&&this.changeMode(this.currentMode,this.getCurrentState(),0,!1,!0)},t.prototype.appendTo=function(e,r){if(r===void 0&&(r={}),!!this.renderer){if(!(this.renderer instanceof jr)){this.throwError(new Error("cannot call appendTo method when render a external renderer"));return}var i=this.getElement();if(i){e.appendChild(i),this.refresh(r);var a=window.getComputedStyle(e).position;a!=="relative"&&a!=="absolute"&&a!=="fixed"&&a!=="sticky"&&(e.style.position="relative")}}},t.prototype.refresh=function(e,r){if(e===void 0&&(e={}),!!this.renderer){var i=this.getElement();if(i){var a=i.parentNode;if(a&&a.nodeName){var o=e.width,s=o===void 0?a.offsetWidth:o,l=e.height,u=l===void 0?a.offsetHeight:l;this.renderer instanceof jr&&(r&&this.renderer.setPixelRatio(r),this.renderer.setSize(s,u))}this.controller&&this.controller.updateRenderSize&&this.controller.updateRenderSize(),this.needsRender=!0,this.render(D,!0)}}},t.prototype.addExtraElement=function(e){var r=this;return this.extraElements.indexOf(e)===-1&&(this.extraElements.push(e),this.controller&&this.controller.bindExtraElement(e)),function(){return r.removeExtraElement(e)}},t.prototype.removeExtraElement=function(e){var r=this.extraElements.indexOf(e);r!==-1&&(this.extraElements.splice(r,1),this.controller&&this.controller.unbindExtraElement(e))},t.prototype.getPose=function(){var e=this.camera.copyPose(),r=e.longitude,i=e.latitude,a=e.fov,o=e.offset,s=e.distance;return{longitude:r,latitude:i,fov:a,offset:o.clone(),distance:s}},t.prototype.getSize=function(e){if(!this.renderer)throw new Error("renderer is not initialized");return this.renderer.getSize(e),e.x*=this.scissor.width,e.y*=this.scissor.height,e},t.prototype.getDrawingBufferSize=function(e){if(!this.renderer)throw new Error("renderer is not initialized");return this.renderer.getDrawingBufferSize(e),e.x*=this.scissor.width,e.y*=this.scissor.height,e},t.prototype.updateCamera=function(e,r,i){return i===void 0&&(i=!0),this.controller?this.controller.updateCamera(e,r,i):Promise.reject(new Error("controller is not initialized."))},t.prototype.updateCameraWithKeyframes=function(e,r,i){return i===void 0&&(i=!0),this.controller?this.controller.updateCameraWithKeyframes(e,r,i):Promise.reject(new Error("controller is not initialized."))},t.prototype.getLongitudeAndLatitude=function(){var e=this.getPose(),r=e.longitude,i=e.latitude;return{longitude:r,latitude:i}},t.prototype.getOffset=function(){return this.getPose().offset},t.prototype.getCameraLocal=function(){if(this.pano.workCode&&this.controller&&this.works){var e=this.works.getResolvedObserver(this.pano);if(e){var r=new d.Object3D;return r.position.copy(e.position),r.quaternion.copy(e.quaternion),r.scale.set(1,1,1),r.matrix.compose(r.position,r.quaternion,r.scale),r.matrixAutoUpdate=!1,kf(this.camera,r)}}return null},Object.defineProperty(t.prototype,"works",{get:function(){var e=zs.get(this);if(!e)return Gs;for(var r=0,i=e;r<i.length;r++){var a=i[r];if(!ja.has(a))return Gs}return e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"work",{get:function(){return this.works[0]},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"model",{get:function(){return this.models[0]},enumerable:!1,configurable:!0}),t.prototype.load=function(e,r,i,a){var o=this;if(a===void 0&&(a=!0),!this.renderer)throw new Error("renderer is not initialized");var s=this.lastLoadWorkTask.then(function(){return Of(e)?e.then(function(l){return o.load_(l,r,i,a)}):o.load_(e,r,i,a)});return this.lastLoadWorkTask=s.catch(function(l){o.throwError(l)}),s},t.prototype.load_=function(e,r,i,a){var o=this,s,l,u,c,f,A,p,y;a===void 0&&(a=!0);var v={};typeof i=="number"?v.duration=i:typeof i=="object"&&Object.assign(v,i),this.controller||(v.duration=0,v.effect="instant");var m=[];if(Array.isArray(e))for(var h=0,g=e;h<g.length;h++){var b=g[h];typeof b!="string"&&"work"in b?m.push(On(b.work,b)):m.push(On(b))}else m.push(On(e));for(var w=xa(m),E=function(W){var _=C,Z=new Da({allowHosts:W.allowHosts,get requestProxy(){return _.requestProxy},get networkSubscribe(){return _.networkSubscribe}});of(W,Z)},C=this,x=0,M=w;x<M.length;x++){var S=M[x];E(S)}this.lastWorks=this.works,r===void 0&&(r="inherit"),r==="inherit"&&this.lastWorks.length===0&&(r="initial");var P=w.initial,I=P.work.observers[0],B=I?{workCode:I.work.workCode,panoIndex:I.panoIndex}:{workCode:P.work.workCode,panoIndex:0},k=(s=P.mode)!==null&&s!==void 0?s:I?"Panorama":"Mapview",L={};if(r==="inherit"){k=this.currentMode;var O=w.resolvedObservers[this.panoIndex];O?B={workCode:O.work.workCode,panoIndex:O.panoIndex}:typeof w.initial.panoIndex=="number"?B={workCode:w.initial.work.workCode,panoIndex:w.initial.panoIndex}:(k==="Panorama"||k==="VRPanorama"||k==="XRPanorama")&&(k="Mapview"),L={longitude:this.camera.pose.longitude,latitude:this.camera.pose.latitude,fov:this.camera.pose.fov,distance:this.camera.pose.distance,offset:this.camera.pose.offset.clone()}}else if(r==="initial")typeof P.panoIndex=="number"&&(B={workCode:P.work.workCode,panoIndex:P.panoIndex}),P.mode&&(k=P.mode),L={longitude:P.longitude,latitude:P.latitude,fov:P.fov,distance:P.distance,offset:(l=P.offset)===null||l===void 0?void 0:l.clone()};else{if(k=(u=r.mode)!==null&&u!==void 0?u:this.currentMode,typeof r.panoIndex=="number"){var O=w.getResolvedObserver({workCode:(f=(c=r.workCode)!==null&&c!==void 0?c:P.work.workCode)!==null&&f!==void 0?f:"",panoIndex:r.panoIndex});O&&(B={workCode:O.work.workCode,panoIndex:O.panoIndex})}L={longitude:r.longitude,latitude:r.latitude,fov:r.fov,distance:r.distance,offset:r.offset}}var Q=F(F(F({},B),{mode:k}),L);this.emit("works.request",X("works.request",{input:e,works:w,state:Q,userAction:a}));var N=function(){var W,_;o.pano=B;var Z=(W=v.duration)!==null&&W!==void 0?W:o.modeChangeDuration,fe=(_=v.effect)!==null&&_!==void 0?_:"fade",re=F(F({initial:{state:Q,currentState:o.getCurrentState(),duration:Z,effect:fe,userAction:a}},o.commonParams()),o.controllerInits[k]);if(o.controller&&o.currentMode===k)o.controller.updateWork(w,Q,{effect:fe,duration:Z},a)===!1&&(o.controller.destroy(),o.controller=o.applyController(k,re));else{var ie=o.currentMode,ne=Pt[k].initAnimationEndState(re);if(o.controller)o.controller.destroy();else{var ve=Pt[k].initAnimationEndState(re);o.camera.setFromPose(ve),o.modelGroup.visible=!0,o.emit("camera.update",X("camera.update",{state:o.getCurrentState(),userAction:a}))}o.controller=o.applyController(k,re);var te=X("mode.change",{prevMode:ie,mode:k,state:ne,userAction:a});o.emit("mode.change",te)}};if(zs.set(this,w),!this.controller){var K=F(F({initial:{state:Q,currentState:this.getCurrentState(),duration:(A=v.duration)!==null&&A!==void 0?A:this.modeChangeDuration,effect:(p=v.effect)!==null&&p!==void 0?p:"fade",userAction:a}},this.commonParams()),this.controllerInits[k]),j=Pt[k].initAnimationEndState(K);this.camera.setFromPose(j),this.emit("camera.update",X("camera.update",{state:this.getCurrentState(),userAction:a}))}if(this.updateConfiguration(v,!1),k===t.Mode.Floorplan||k===t.Mode.Topview||k===t.Mode.Mapview||k===t.Mode.Model)this.loadModel(w,v).then(function(){o.needsRender=!0,N(),o.emit("camera.update",X("camera.update",{state:o.getCurrentState(),userAction:a}))});else{if(!this.controller){var U=new d.Vector3,G=w.getResolvedObserver(B);G&&U.copy(G.position),this.camera.setFromPose({fov:L.fov,longitude:L.longitude,latitude:L.latitude,distance:L.distance,offset:(y=L.offset)!==null&&y!==void 0?y:U}),this.needsRender=!0}N();var H=!1,Y=function(){var W;o.needsRender=!0,o.emit("camera.update",X("camera.update",{state:o.getCurrentState(),userAction:a})),setTimeout(function(){o.works===w&&H===!1&&(o.loadModel(w,v),H=!0)},(W=v.duration)!==null&&W!==void 0?W:o.modeChangeDuration)};this.controller.once("pano.moveTo",Y),this.controller.once("pano.cancel",Y)}return this.emit("works.load",X("works.load",{input:e,state:this.getCurrentState(),userAction:a,works:w})),this.ready().then(function(){var W;o.emit("works.ready",X("works.ready",{input:e,state:o.getCurrentState(),userAction:a,works:w})),(W=o.analysis)===null||W===void 0||W.work(w)})},t.prototype.changeMode=function(e,r,i,a,o){var s=this;return r===void 0&&(r={}),a===void 0&&(a=!0),o===void 0&&(o=!1),new Promise(function(l,u){var c,f,A,p;if(!s.renderer)throw new Error("renderer is not initialized.");r=F({},r);var y=0;s.controller&&(typeof i=="number"?y=i:y=(c=i==null?void 0:i.duration)!==null&&c!==void 0?c:s.modeChangeDuration);var v="fly";s.controller&&typeof i=="object"&&i.effect&&(v=i.effect);var m=typeof r.panoIndex=="number"?{workCode:(p=(f=r.workCode)!==null&&f!==void 0?f:(A=s.work)===null||A===void 0?void 0:A.workCode)!==null&&p!==void 0?p:"",panoIndex:r.panoIndex}:s.pano;if(!t.Mode.hasOwnProperty(e)){var h=new Error('mode "'.concat(e,'" is not existed'));s.throwError(h),u(h);return}if((e===t.Mode.Floorplan||e===t.Mode.Topview||e===t.Mode.Mapview||e===t.Mode.Model)&&!s.models.loaded){var h=new Error("model is not ready.");s.throwError(h),u(h);return}if((e===t.Mode.Panorama||e===t.Mode.VRPanorama||e===t.Mode.XRPanorama)&&!s.works.getResolvedObserver(m)){var h=new Error("PanoId ".concat(Qe(m)," not existed."));s.throwError(h),u(h);return}var g=s.controller,b=s.currentMode,w=function(){if(s.controller&&s.controller.stopMomentumMovement(),s.controller&&o===!1&&b===e)e===t.Mode.Panorama||e===t.Mode.Model||e===t.Mode.VRPanorama||e===t.Mode.XRPanorama?Kt(s.pano,m)&&"moveToPano"in s.controller&&typeof s.controller.moveToPano=="function"?s.controller.moveToPano(m,F({duration:y},r),a):s.controller.updateCamera(r,y,a).catch(D):(Kt(s.pano,m)||(s.pano=m),s.controller.updateCamera(r,y,a).catch(D));else{var C=F(F({},r),m),x=F(F({initial:{state:C,currentState:s.getCurrentState(),duration:y,effect:v,userAction:a}},s.commonParams()),s.controllerInits[e]),M=Pt[e].initAnimationEndState(x),S=X("mode.change.request",{prevMode:s.currentMode,mode:e,state:M,userAction:a});if(s.emit("mode.change.request",S),!S.defaultPrevented){g&&g.destroy(),s.controller=s.applyController(e,x);var P=X("mode.change",{prevMode:s.currentMode,mode:e,state:M,userAction:a});s.emit("mode.change",P)}}l()};if(e===t.Mode.VRPanorama)s.requestFullscreen(),Vf().then(function(){return w()}).catch(function(C){C instanceof Error&&(s.exitFullscreen(),s.throwError(C),u(C))});else if(e===t.Mode.XRPanorama){var E=st.shared.getContext();E?E.end():Nf().then(function(C){st.shared.setContext(C),w()}).catch(function(C){C instanceof Error&&(s.throwError(C),u(C))})}else w()})},t.prototype.getPixels=function(e,r,i,a,o){if(o===void 0&&(o=1),!this.renderer)throw new Error("renderer is not initialized.");var s=this.getPixelsRenderTarget,l=this.renderer.getSize(new d.Vector2);e=ue(e,Math.floor(i/2),Math.floor(l.x-i)),r=ue(r,Math.floor(a/2),Math.floor(l.y-a)),s.setSize(i*o,a*o),this.renderer.setRenderTarget(s),this.camera.setViewOffset(l.width,l.height,e,l.height-r-a,i,a),this.controller?this.controller.render():this.renderer.render(this.scene,this.camera);var u=new Uint8Array(i*o*a*o*4);return this.renderer.readRenderTargetPixels(s,0,0,i*o,a*o,u),this.renderer.setRenderTarget(null),this.camera.clearViewOffset(),u},t.prototype.getElement=function(){var e;return(e=this.renderer)===null||e===void 0?void 0:e.domElement},Object.defineProperty(t.prototype,"observers",{get:function(){return this.works.resolvedObservers},enumerable:!1,configurable:!0}),t.prototype.render=function(e,r){var i=this;if(r===void 0&&(r=!1),!this.renderer)return null;if(r){var a=this.renderer.getSize(En);this.scene.traverseVisible(function(s){s.setResolution&&s.setResolution(a.x,a.y)})}if(this.controller&&this.screenBuffers&&this.renderer.getRenderTarget()===null){var o=this.getDrawingBufferSize(En);return this.screenBuffers.forEach(function(s){s.setSize(o.x,o.y)}),this.renderer.setRenderTarget(this.screenBuffers[0]),this.controller.render(),this.info={memory:F({},this.controller.renderer.info.memory),render:F({},this.controller.renderer.info.render)},this.currentMode!=="VRPanorama"&&this.currentMode!=="XRPanorama"&&this.poweredByRealsee&&Ds(this.renderer),e&&st.shared.add(e,!0),this.screenBuffers[0]}else return this.aroundScissor(function(){i.renderer&&(i.controller?(i.controller.render(),i.info={memory:F({},i.controller.renderer.info.memory),render:F({},i.controller.renderer.info.render)}):(i.renderer.render(i.scene,i.camera),i.info={memory:F({},i.renderer.info.memory),render:F({},i.renderer.info.render)}),i.poweredByRealsee&&i.currentMode!=="VRPanorama"&&i.currentMode!=="XRPanorama"&&Ds(i.renderer)),e&&st.shared.add(e,!0)}),null},t.prototype.updateTime=function(e,r){for(var i,a=this,o,s,l=[],u=2;u<arguments.length;u++)l[u-2]=arguments[u];if(!this.destroyed){if(this.works.update(),this.syncingState=this.syncState(e,r),this.controller&&(i=this.controller).updateTime.apply(i,ht([e,r],l,!1)),this.renderer&&(this.camera.pixelRatio=this.renderer.getPixelRatio(),this.getSize(this.camera.resolution),this.camera.aspect=this.camera.resolution.width/this.camera.resolution.height),this.camera.updateTime(e,r),this.renderer){kn.detectSupport(this.renderer);var c=this.models.loaded,f=this.models.refined;if(this.models.update(this.renderer,this.camera,this.currentMode),c===!1&&this.models.loaded===!0&&this.emit("models.load",X("models.load",{models:this.models})),f===!1&&this.models.refined===!0&&this.emit("models.refined",X("models.refined",{models:this.models})),this.models.loaded){for(var A=0,p=this.models;A<p.length;A++){var y=p[A];y.parent!==this.modelGroup&&(this.modelGroup.add(y),this.needsRender=!0)}if(this.lastModels.length>0){for(var v=0,m=this.lastModels;v<m.length;v++){var y=m[v];this.modelGroup.remove(y),y.dispose(),this.needsRender=!0}this.lastModels.length=0}this.lastWorks&&delete this.lastWorks}this.lastModels.setMaterial(this.models.getMaterial()),this.lastModels.materialVersion=this.models.materialVersion,this.lastModels.update(this.renderer,this.camera,this.currentMode)}this.syncingState=!1;var h=new d.Vector2(512,512),g=new d.Vector2(512,512);this.renderer&&(this.renderer.getSize(h),h.x*=this.scissor.width,h.y*=this.scissor.height,this.renderer.getDrawingBufferSize(g),g.x*=this.scissor.width,g.y*=this.scissor.height);{for(var b=new d.Box3,w=new d.Box3,E=new d.Vector3(4,4,4),C=0,x=this.works.resolvedObservers;C<x.length;C++){var M=x[C];w.setFromCenterAndSize(M.position,E),b.union(w)}if(b.union(this.models.bounding),this.lastWorks)for(var S=0,P=this.lastWorks.resolvedObservers;S<P.length;S++){var M=P[S];w.setFromCenterAndSize(M.position,E),b.union(w)}b.union(this.lastModels.bounding),b.getCenter(this.boundingMesh.position),b.getSize(this.boundingMesh.scale),this.boundingMesh.boundingBox.copy(b);var I=(o=this.models.getMaterial())!==null&&o!==void 0?o:{},B=1-((s=I.modelAlpha)!==null&&s!==void 0?s:0);I.opacity=ue(B*4-3,0,1),I.clippers=null,I.shownFloorIndex=-2,this.boundingMesh.setMaterial(I),this.boundingMesh.needsRender=!1}var k=X("render.prepare",{needsRender:!0,info:null});if(this.emit("render.prepare",k),!k.defaultPrevented){var L=[];ii.multiplyMatrices(this.camera.projectionMatrix,this.camera.matrixWorldInverse),ni.setFromProjectionMatrix(ii);for(var O=0,Q=this.scene.children;O<Q.length;O++){var N=Q[O];N!==this.modelGroup&&N!==this.boundingMesh&&N instanceof d.Object3D&&N.traverseVisible(function(_){if(_.setResolution&&_.setResolution(h.x,h.y),_.setTime&&_.setTime(e),_.mixer instanceof d.AnimationMixer){var Z=Us.get(_.mixer);Z||(Z=new d.Clock,Us.set(_.mixer,Z)),_.mixer.update(Z.getDelta())}(_ instanceof d.Mesh||_ instanceof d.Line||_ instanceof d.Points)&&(_ instanceof d.ImmediateRenderObject||!_.frustumCulled||ni.intersectsObject(_))&&L.push(_)})}if(g.width*g.height>4096*2048?this.renderSwitch01=this.renderSwitch01^1:this.renderSwitch01=0,this.renderer&&this.paused===!1&&this.renderSwitch01===0){var K=void 0;if(this.onlyRenderIfNeeds!==!0)K=this.render();else{if(this.controller&&this.controller.needsRender===!0&&(this.controller.needsRender=!1,this.needsRender=!0),this.camera.needsRender===!0&&(this.camera.needsRender=!1,this.needsRender=!0),this.models.needsRender===!0&&(this.models.needsRender=!1,this.needsRender=!0),this.needsRender!==!0)for(var j=0,U=L;j<U.length;j++){var G=U[j],H=function(_){_.needsRender===!0?(_.needsRender=!1,a.needsRender=!0):_.mixer&&_.mixer.stats.actions.inUse>0&&(a.needsRender=!0)};H(G),G.traverseAncestors(H)}this.needsRender!==!1&&(K=this.render())}if(this.needsRender=!1,this.controller&&this.screenBuffers){var Y=this.controller,W=this.screenBuffers;this.aroundScissor(function(){Y.postProcessing(W,a.postProcessingType)})}this.hasListener("render")&&this.emit("render",X("render",{needsRender:K!==void 0,info:this.info}))}this.needsRender=!1}this.fps.testTime&&e-this.fps.testTime<1e3?this.fps.testCount++:(this.emit("fps",this.fps.testCount),this.fps.testTime=e,this.fps.testCount=0)}},t.prototype.pause=function(){this.paused=!0,this.renderer&&this.renderer instanceof jr&&this.renderer.clear(!0,!0,!0)},t.prototype.play=function(){this.needsRender=!0,this.paused=!1},t.prototype.moveToPano=function(e,r,i){r===void 0&&(r={}),i===void 0&&(i=!0);var a=this,o=a.controller,s=a.renderer;if(!o)return this.throwError(new Error("controller is not initialized.")),Promise.resolve();if(!s)return this.throwError(new Error("renderer is not initialized.")),Promise.resolve();var l=this.works.getResolvedObserver(e);if(!l)return this.throwError(new Error("pano ".concat(JSON.stringify(e)," not existed."))),Promise.resolve();var u={workCode:l.work.workCode,panoIndex:l.panoIndex};return"moveToPano"in o&&typeof o.moveToPano=="function"?o.moveToPano(u,r,i):l&&(this.pano=u,this.once("initAnimation.start",function(c){r.moveStartCallback&&r.moveStartCallback(c.state)}),this.once("initAnimation.end",function(c){r.moveEndCallback&&r.moveEndCallback(c.state)}),this.changeMode(t.Mode.Panorama,r,{effect:r.effect},i)),this.ready()},t.prototype.preloadPano=function(e,r){var i=this;r===void 0&&(r=D);var a=this.works.getResolvedObserver(e);if(!a)return Promise.reject(new Error("Pano ".concat(JSON.stringify(e)," never found")));var o=["right","left","up","down","front","back"],s=be();return Promise.all(o.map(function(l){var u=F({key:"pano.".concat(a.panoId,".").concat(l)},xr(i.imageOptions,["size","format","quality","mappings"])),c=a.images[l],f=i.imageOptions.transform?i.imageOptions.transform(c,u):Gt(c,u);return ot(a.work).preload(f)})).then(function(){var l=be()-s;return r(l),l})},t.prototype.project2d=function(e,r){if(r===void 0&&(r=!1),!this.renderer)return null;if(this.models.length>0&&r){var i=this.camera.position,a=e.clone().sub(i),o=new d.Raycaster(i,a.clone().normalize());o.params.Points={threshold:.1};var s=this.models.intersectRaycaster(o)[0];if(s&&s.distance+.01<a.length())return null}var l=e.clone().project(this.camera);if(Math.abs(l.z)>1)return null;var u=this.renderer.getSize(new d.Vector2),c=u.x*this.scissor.width,f=u.y*this.scissor.height,A=u.x*this.scissor.left+(l.x+1)/2*c,p=u.y*(1-this.scissor.bottom-this.scissor.height)+(-l.y+1)/2*f;return new d.Vector2(A,p)},t.prototype.getRenderObjects=function(e){ii.multiplyMatrices(this.camera.projectionMatrix,this.camera.matrixWorldInverse),ni.setFromProjectionMatrix(ii),e||(e=this.scene);var r=[];return e.traverseVisible(function(i){(i instanceof d.Mesh||i instanceof d.Line||i instanceof d.Points)&&(i instanceof d.ImmediateRenderObject||!i.frustumCulled||ni.intersectsObject(i))&&r.push(i)}),r},t.prototype.getCurrentState=function(){return F(F({},this.getPose()),{mode:this.currentMode,workCode:this.pano.workCode,panoIndex:this.pano.panoIndex})},t.prototype.setState=function(e,r,i){var a,o,s,l,u,c,f,A,p,y;r===void 0&&(r=!1),i===void 0&&(i=!0),e=Object.assign({},e),e.offset&&!(e instanceof d.Vector3)&&(e.offset=new d.Vector3(e.offset.x,e.offset.y,e.offset.z));var v;typeof e.panoIndex=="number"&&(e.workCode?v={workCode:e.workCode,panoIndex:e.panoIndex}:v={workCode:(o=(a=this.work)===null||a===void 0?void 0:a.workCode)!==null&&o!==void 0?o:"",panoIndex:e.panoIndex});var m=(s=e.mode)!==null&&s!==void 0?s:this.state.mode,h,g,b,w,E;if((e.mode===t.Mode.Floorplan||e.mode===t.Mode.Topview||e.mode===t.Mode.Mapview||e.mode===t.Mode.Model)&&!this.models.loaded){this.throwError(new Error("model is not ready."));return}if(this.controller&&this.controller.stopMomentumMovement(),this.state.mode!==m){if(m==="VRPanorama"){this.changeMode("VRPanorama",void 0,void 0,!0);return}var C={workCode:v==null?void 0:v.workCode,panoIndex:v==null?void 0:v.panoIndex};typeof e.longitude=="number"&&(C.longitude=e.longitude),typeof e.latitude=="number"&&(C.latitude=e.latitude),typeof e.fov=="number"&&(C.fov=e.fov),typeof e.distance=="number"&&(C.distance=e.distance),e.offset instanceof d.Vector3&&(C.offset=e.offset);var x=F(F({initial:{state:C,currentState:this.getCurrentState(),duration:this.modeChangeDuration,effect:"fly",userAction:!1}},this.commonParams()),this.controllerInits[m]),M=Pt[m].initAnimationEndState(x);h=M.longitude,g=M.latitude,b=M.fov,w=M.offset,E=M.distance}else h=(l=e.longitude)!==null&&l!==void 0?l:this.state.longitude,g=(u=e.latitude)!==null&&u!==void 0?u:this.state.latitude,b=(c=e.fov)!==null&&c!==void 0?c:this.state.fov,w=(f=e.offset)!==null&&f!==void 0?f:this.state.offset,E=(A=e.distance)!==null&&A!==void 0?A:this.state.distance;var S={workCode:(v!=null?v:this.pano).workCode,panoIndex:(v!=null?v:this.pano).panoIndex,mode:m,longitude:h,latitude:g,fov:b,offset:w,distance:E};this.emit("state.set",X("state.set",{userAction:i,state:S})),Fr(this.state,S)||(this.controller&&S.mode==="VRPanorama"&&S.mode!==this.state.mode?(rr(this.state,S),this.changeMode("VRPanorama")):this.controller&&S.mode==="XRPanorama"&&S.mode!==this.state.mode?(rr(this.state,S),this.changeMode("XRPanorama")):(rr(this.state,S),this.controller&&i&&(this.controller.userAction=!1),r&&this.state.mode===S.mode&&(this.syncingState=this.syncState(be(),0,r),this.syncingState&&((p=this.controller)===null||p===void 0||p.updateTime(be(),0),this.syncingState=!1)),this.emit("state.change",X("state.change",{userAction:i,state:this.state})),(y=this.analysis)===null||y===void 0||y.state(this.works,this.state)))},t.prototype.aroundScissor=function(e){if(this.renderer){if(this.state.mode==="XRPanorama"){e();return}var r=new d.Vector2,i=this.scissor.left!==0||this.scissor.bottom!==0||this.scissor.width!==1||this.scissor.height!==1;if(i){this.renderer.getSize(r);var a=Math.floor(r.x*this.scissor.left),o=Math.floor(r.y*this.scissor.bottom),s=Math.floor(r.x*this.scissor.width),l=Math.floor(r.y*this.scissor.height);this.renderer.setViewport(a,o,s,l),this.renderer.setScissor(a,o,s,l),this.renderer.setScissorTest(!0)}e(),i&&(this.renderer.setViewport(0,0,r.x,r.y),this.renderer.setScissor(0,0,r.x,r.y),this.renderer.setScissorTest(!1))}},t.prototype.syncState=function(e,r,i){i===void 0&&(i=!1);var a=this.stateSynced;if(this.stateSynced=!1,this.works.length===0||!this.controller)return!1;if(this.state.mode!==this.currentMode){var o={mode:this.state.mode,workCode:this.state.workCode,panoIndex:this.state.panoIndex,longitude:this.state.longitude,latitude:this.state.latitude,fov:this.state.fov,offset:this.state.offset,distance:this.state.distance};return this.changeMode(this.state.mode,o,this.modeChangeDuration,this.controller.userAction),!0}if(!this.controller.isReady())return!1;if(this.controller instanceof Pt.Model){if(Ia(this.camera.pose.offset,this.state.offset)){var s={longitude:this.state.longitude,latitude:this.state.latitude,fov:this.state.fov,offset:this.state.offset};return this.controller.moveToPosition(this.state.offset,F(F({},s),{duration:i?0:void 0}),!1),!0}}else{var l={workCode:this.state.workCode,panoIndex:this.state.panoIndex};if(!Kt(l,this.pano)&&"moveToPano"in this.controller&&typeof this.controller.moveToPano=="function"){var s={longitude:this.state.longitude,latitude:this.state.latitude,fov:this.state.fov,offset:this.state.offset,distance:this.state.distance};return this.controller.moveToPano(l,s,!1),!0}}if(this.controller instanceof Pt.Floorplan||this.controller instanceof Pt.Topview||this.controller instanceof Pt.Mapview){var u=1,c=.2,f=.2,A=Math.PI/45,p=i?this.state.fov:Ji(this.camera.pose.fov,this.state.fov,u),y=Math.abs(this.camera.pose.distance-this.state.distance),v=y>f*15?y/15:c,m=i?this.state.distance:Ji(this.camera.pose.distance,this.state.distance,v),h=this.camera.pose.offset.distanceTo(this.state.offset),g=h>f*15?h/15:f,b=i?new d.Vector3().copy(this.state.offset):Lf(this.camera.pose.offset,this.state.offset,g),w=i?{longitude:this.state.longitude,latitude:this.state.latitude}:gs({longitude:this.camera.pose.longitude,latitude:this.camera.pose.latitude},{longitude:this.state.longitude,latitude:this.state.latitude},A),E=w.longitude,C=w.latitude;if(Ht(p,this.camera.pose.fov)||Ia(b,this.camera.pose.offset)||Ht(m,this.camera.pose.distance)||Ht(E,this.camera.pose.longitude,Math.PI*2)||Ht(C,this.camera.pose.latitude)){var x={x:b.x,y:b.y,z:b.z},M={fov:p};return Object.assign(x,{distance:m}),Object.assign(M,{longitude:E,latitude:C}),this.controller.stopMomentumMovement(),this.controller.cameraMotion.set(M,0).catch(D),this.controller.locationMotion.set(x,0).catch(D),!0}}else{var S=1,P=Math.PI/45,p=i?this.state.fov:Ji(this.camera.pose.fov,this.state.fov,S),I=i?{longitude:this.state.longitude,latitude:this.state.latitude}:gs({longitude:this.camera.pose.longitude,latitude:this.camera.pose.latitude},{longitude:this.state.longitude,latitude:this.state.latitude},P),E=I.longitude,C=I.latitude;if(Ht(E,this.camera.pose.longitude,Math.PI*2)||Ht(C,this.camera.pose.latitude)||Ht(p,this.camera.pose.fov))return this.controller.stopMomentumMovement(),this.controller.cameraMotion.set({longitude:E,latitude:C,fov:p},0).catch(D),!0}if(this.stateSynced=!0,a===!1&&this.emit("state.synced",X("state.synced",{userAction:!1,state:this.state})),this.readyCallbacks.length&&this.stateSynced){var B=this.currentMode,k=B===t.Mode.Floorplan||B===t.Mode.Topview||B===t.Mode.Mapview||B===t.Mode.Model;if(!k||this.models.loaded){var L=this.readyCallbacks.slice();this.readyCallbacks.length=0;for(var O=0,Q=L;O<Q.length;O++){var N=Q[O];this.controller instanceof Pt.Panorama&&N.tile===!0&&!this.controller.isTileReady()?this.readyCallbacks.push(N):N()}}}return!1},t.prototype.ready=function(e){var r=this;return e===void 0&&(e={}),new Promise(function(i){var a;r.readyCallbacks.push(Object.assign(i,{tile:(a=e.tile)!==null&&a!==void 0?a:!1}))})},t.prototype.requestFullscreen=function(){var e;if(In()){var r=(e=this.getElement())===null||e===void 0?void 0:e.parentNode;r&&"requestFullscreen"in r&&typeof document!="undefined"&&document.fullscreenElement===null&&r.requestFullscreen()}},t.prototype.exitFullscreen=function(){typeof document!="undefined"&&document.fullscreenElement&&"exitFullscreen"in document&&document.exitFullscreen()},t.prototype.throwError=function(e){this.hasListener("error")?this.emit("error",e):console.error(e)},t.prototype.loadModel=function(e,r){for(var i=this,a=[],o=function(m){var h=s.models.filter(function(b){var w;return((w=b.work)===null||w===void 0?void 0:w.workCode)===m.workCode})[0];if(h)h.work=m,a.push(h);else{var g=new Sa({coordinatesSystemTransformers:s.coordinatesSystemTransformers,onError:function(b){i.emit("model.error",X("model.request",{work:m,model:g,error:b}))},onShownFloorChange:function(b){i.emit("model.changeShownFloor",X("model.request",{work:m,model:g,error:null}))},onLoad:function(){i.emit("model.load",X("model.request",{work:m,model:g,error:null}))}});a.push(g),s.emit("model.request",X("model.request",{work:m,model:g,error:null})),g.load(m,{textureOptions:s.textureOptions,"3d-tiles":r["3d-tiles"]})}},s=this,l=0,u=e;l<u.length;l++){var c=u[l];o(c)}if(this.models.length>0){for(var f=0,A=this.models;f<A.length;f++){var p=A[f];a.indexOf(p)===-1&&this.lastModels.push(p)}this.models.length=0}for(var y=0,v=a;y<v.length;y++){var p=v[y];this.models.push(p)}return this.renderer&&(this.models.loaded=!1),new Promise(function(m){i.on("models.load",function(){m()})})},t.prototype.commonParams=function(){return{ident:this.ident,scene:this.scene,xrCustomObjectsScene:this.xrCustomObjectsScene,helper:this.helperGroup,boundingMesh:this.boundingMesh,camera:this.camera,renderer:this.renderer,scissor:this.scissor,element:this.getElement(),models:this.models,works:this.works,imageOptions:this.imageOptions,enableWheel:this.enableWheel,enableIOSEDR:this._enableIOSEDR,enableEDL:this.enableEDL,enableHQ:this.enableHQ,extraElements:this.extraElements,videoTexture:this.videoTexture}},t.prototype.applyController=function(e,r){var i=this;if(!this.renderer)throw new Error("renderer is not initialized.");e!==t.Mode.Mapview&&(this.enableEDL=!1,this.enableHQ=!1);var a=Pt[e];if(e!==this.currentMode)for(var o=0,s=this.models;o<s.length;o++){var l=s[o];l.show()}this.currentMode=e;for(var u=new a(r),c=function(m){u.on(m,function(){for(var h=[],g=0;g<arguments.length;g++)h[g]=arguments[g];var b=i.emit.apply(i,ht([m],h,!1));if(b)return!1})},f=0,A=pl;f<A.length;f++){var p=A[f];c(p)}{var y=Pt[e].initAnimationEndState(r),v=r.initial.userAction;Fr(this.state,y)||(rr(this.state,y),this.emit("state.change",X("state.change",{userAction:v,state:this.state}))),this.emit("currentState.change",X("currentState.change",{userAction:v,state:this.getCurrentState()}))}return u.on("camera.update",function(m){var h;if(i.controller){var g=i.controller.getTargetState();m.userAction&&i.syncingState===!1&&i.state.mode===g.mode&&!Fr(i.state,g)&&(rr(i.state,g),i.emit("state.change",X("state.change",{userAction:m.userAction,state:i.state})),(h=i.analysis)===null||h===void 0||h.state(i.works,i.state))}i.emit("currentState.change",X("currentState.change",{userAction:m.userAction,state:i.getCurrentState()}))}),u.on("initAnimation.start",function(m){var h,g=m.state,b=m.userAction;b&&i.state.mode===g.mode&&!Fr(i.state,g)&&(rr(i.state,g),i.emit("state.change",X("state.change",{userAction:b,state:i.state})),(h=i.analysis)===null||h===void 0||h.state(i.works,i.state))}),u.on("initAnimation.end",function(m){var h,g=m.state,b=m.userAction;b&&i.state.mode===g.mode&&!Fr(i.state,g)&&(rr(i.state,g),i.emit("state.change",X("state.change",{userAction:b,state:i.state})),(h=i.analysis)===null||h===void 0||h.state(i.works,i.state))}),u.on("pano.moveTo",function(m){var h,g=m.state,b=m.userAction;i.pano={workCode:g.workCode,panoIndex:g.panoIndex},b&&i.state.mode===g.mode&&!Fr(i.state,g)&&(rr(i.state,g),i.emit("state.change",X("state.change",{userAction:b,state:i.state})),(h=i.analysis)===null||h===void 0||h.state(i.works,i.state))}),u.on("pano.arrived",function(m){var h,g=m.state,b=m.userAction;b&&i.state.mode===g.mode&&!Fr(i.state,g)&&(rr(i.state,g),i.emit("state.change",X("state.change",{userAction:b,state:i.state})),(h=i.analysis)===null||h===void 0||h.state(i.works,i.state))}),u.on("pano.cancel",function(m){var h,g=m.state,b=m.userAction;b&&i.state.mode===g.mode&&!Fr(i.state,g)&&(rr(i.state,g),i.emit("state.change",X("state.change",{userAction:b,state:i.state})),(h=i.analysis)===null||h===void 0||h.state(i.works,i.state))}),u.on("pano.moveTo",function(m){var h=m.userAction;i.emit("currentState.change",X("currentState.change",{userAction:h,state:i.getCurrentState()}))}),u.on("pano.request",function(m){i.emit("pano.request",m),m.defaultPrevented||i.moveToPano(m.state,m.options,m.userAction)}),u.on("vr.requestExit",function(){i.currentMode===t.Mode.VRPanorama&&(i.exitFullscreen(),i.changeMode(t.Mode.Panorama))}),u.on("error",function(m){return i.throwError(m)}),u},t.prototype.removeEventListeners=function(){},t.Mode={Panorama:"Panorama",Model:"Model",Floorplan:"Floorplan",Topview:"Topview",Mapview:"Mapview",VRPanorama:"VRPanorama",XRPanorama:"XRPanorama"},t.Line=null,t}(Mi),Ra={instances:{},constructor:ml};typeof window!="undefined"&&Object.assign(window,{__FIVE_DEBUG__:Ra});var Lp=function(){function n(){}return n.createButton=function(t){var e=document.createElement("button");function r(){e.style.display="",e.style.cursor="pointer",e.style.left="calc(50% - 50px)",e.style.width="100px",e.textContent="ENTER VR",e.onmouseenter=function(){e.style.opacity="1.0"},e.onmouseleave=function(){e.style.opacity="0.5"},e.onclick=function(){t&&t()}}function i(){e.style.display="",e.style.cursor="auto",e.style.left="calc(50% - 75px)",e.style.width="150px",e.onmouseenter=null,e.onmouseleave=null,e.onclick=null}function a(){i(),e.textContent="VR NOT SUPPORTED"}function o(l){l.style.position="absolute",l.style.bottom="20px",l.style.padding="12px 6px",l.style.border="1px solid #fff",l.style.borderRadius="4px",l.style.background="rgba(0,0,0,0.1)",l.style.color="#fff",l.style.font="normal 13px sans-serif",l.style.textAlign="center",l.style.opacity="0.5",l.style.outline="none",l.style.zIndex="999"}if("xr"in navigator)return e.id="VRButton",e.style.display="none",o(e),navigator.xr.isSessionSupported("immersive-vr").then(function(l){l?r():a()}),e;var s=document.createElement("a");return window.isSecureContext===!1?(s.href=document.location.href.replace(/^http:/,"https:"),s.innerHTML="WEBXR NEEDS HTTPS"):(s.href="https://immersiveweb.dev/",s.innerHTML="WEBXR NOT AVAILABLE"),s.style.left="calc(50% - 90px)",s.style.width="180px",s.style.textDecoration="none",o(s),s},n}();exports.AnimationFrameLoop=st;exports.Camera=Si;exports.Fetcher=Da;exports.Five=ml;exports.InternalWebGLRenderer=jr;exports.IntersectMesh=Ii;exports.Model=Sa;exports.ModelViewLayer=ui;exports.NetworkSubscribe=Zs;exports.PBMContainer=nu;exports.PBMGroup=tc;exports.PBMMesh=Ct;exports.PBMMeshMaterial=Hn;exports.PROXY_CONTROLLER_EVENT_NAMES=pl;exports.PanoCircleMesh=Yu;exports.PanoCircleMeshCustom=Sf;exports.PanoCircleMeshSolid=Ef;exports.RequestScheduler=Aa;exports.Scene=uu;exports.Subscribe=Mi;exports.TextureLoader=Gn;exports.Tile=Ga;exports.Tile3DModel=ln;exports.TileCubeTextureTarget=ke;exports.TileNode=wu;exports.Tileset=oi;exports.TilesetCache=hu;exports.TilesetTraverser=ma;exports.Work=Wa;exports.XRButton=Lp;exports.defaultImageURLTransform=Gt;exports.defaultPbmParameters=we;exports.getViewportScale=vl;exports.imageSupport=$s;exports.isPanoId=tu;exports.loadAt3d=Gu;exports.loadB3dm=Pu;exports.loadDome=Hu;exports.loadDomez=qu;exports.loadPbm=Du;exports.loadPnts=Ru;exports.panoEqual=Kt;exports.panoParse=ft;exports.panoStringify=Qe;exports.parseWork=On;
|