@realsee/five 6.0.0-alpha.65 → 6.0.0-alpha.67

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/umd/five.js CHANGED
@@ -1,8 +1,8 @@
1
1
  /**
2
2
  * @license
3
3
  * @realsee/five
4
- * Generated: 12/14/2023
5
- * Version: 6.0.0-alpha.65
4
+ * Generated: 12/15/2023
5
+ * Version: 6.0.0-alpha.67
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
- `,cacheMaterials=[];function getMaterial(){var n=cacheMaterials.pop();return n||new THREE__namespace.ShaderMaterial({uniforms:{map:{value:null},flipY:{value:0}},vertexShader:PLANE_VERTEX_SHADER,fragmentShader:PLANE_FRAGMENT_SHADER,depthTest:!1,depthWrite:!1,stencilWrite:!1,blending:THREE__namespace.NoBlending,lights:!1,toneMapped:!1,fog:!1})}function releaseMaterial(n){n.uniforms.map.value=null,cacheMaterials.push(n)}function renderTexturesToCubeRenderTarget(n,t,e){var r=new THREE__namespace.Scene;r.matrixAutoUpdate=!1;var i=new THREE__namespace.Group;i.scale.set(1,1,-1),r.add(i);for(var o=[],s=0,u=n;s<u.length;s++){var l=u[s],d=getMaterial();o.push(d),d.uniforms.map.value=l.texture,d.uniforms.flipY.value=l.flipY?1:0;var c=new THREE__namespace.Group,f=new THREE__namespace.Mesh(PLAME_GEOMETRY,d);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(QUATERNION[l.face]),c.add(f),i.add(c)}var h=e.autoClear;e.autoClear=!1;var v=new THREE__namespace.CubeCamera(.1,2,t);v.matrixAutoUpdate=!1,v.update(e,r),e.autoClear=h;for(var A=0,m=o;A<m.length;A++){var d=m[A];releaseMaterial(d)}}var asyncImageTaskQueue=[],IMAGE_TASK_EACH_FRAME=6,imageTaskEachFrame=0;AnimationFrameLoop.shared.add(function(){if(imageTaskEachFrame=IMAGE_TASK_EACH_FRAME,asyncImageTaskQueue.length)for(var n=asyncImageTaskQueue.splice(0,imageTaskEachFrame),t=0,e=n;t<e.length;t++){var r=e[t];imageTaskEachFrame--,r()}});var canUseNativeImageBitmap=function(){return!1}();function createImageBitmapLikeImage(){var n=Object.assign(document.createElementNS("http://www.w3.org/1999/xhtml","img"),{crossOrigin:"",close:function(){n.onerror=n.onload=n.close=noop$1;var t=n.src;n.removeAttribute("src"),/^blob\:/.test(t)&&URL.revokeObjectURL(t)}});return n}function createImageBitmapLike(n){return new Promise(function(t,e){var r=createImageBitmapLikeImage();r.onload=function(){/^blob\:/.test(r.src)&&URL.revokeObjectURL(r.src),r.onload=r.onerror=noop$1,setTimeout(function(){t(r)},0)},r.onerror=function(){var i=r.src;r.onload=r.onerror=noop$1,r.close(),e(new Error("image load error: ".concat(i)))},r.src=URL.createObjectURL(n)})}function createImageBitmapLikeAsync(n){return new Promise(function(t){asyncImageTaskQueue.push(function(){t(createImageBitmapLike(n))})})}var canvasPool=[];function createCanvas(n,t){var e=canvasPool.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=noop$1,canvasPool.push(r)}});return r}function poolImageToTexture(n,t){if(t&&(n.width>t.width||n.height>t.height)){var e=createCanvas(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 THREE__namespace.Texture(e);i.needsUpdate=!0,i.flipY=!0;var o=i.dispose;return i.dispose=function(){e.close(),o.call(i),i.dispose=o},i}else{var s=new THREE__namespace.Texture(n);s.needsUpdate=!0,typeof ImageBitmap<"u"&&n instanceof ImageBitmap?s.flipY=!1:s.flipY=!0;var u=s.dispose;return s.dispose=function(){n.close(),u.call(s),s.dispose=u},s}}function poolImagesToCubeTexture(n){var t=new THREE__namespace.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 o=i[r];o.close()}e.call(t),t.dispose=e},t}var FACE_ORDER=["right","left","up","down","front","back"],MAX_TILE_RENDER_EACH_FRAME=4,TileCubeTextureTarget=function(){function n(t,e,r,i,o){this.tileTree=e,this.tileSources=r,this.options=i,this.renderer=o,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,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:THREE__namespace.RGBAFormat,t.texture.minFilter=(r=this.options.minFilter)!==null&&r!==void 0?r:THREE__namespace.LinearFilter,t.texture.magFilter=(i=this.options.magFilter)!==null&&i!==void 0?i:THREE__namespace.LinearFilter,t.texture.wrapS=(o=this.options.wrapS)!==null&&o!==void 0?o:THREE__namespace.ClampToEdgeWrapping,t.texture.wrapT=(s=this.options.wrapT)!==null&&s!==void 0?s:THREE__namespace.ClampToEdgeWrapping,this.baseCubeTexture&&(renderCubeTextureToCubeRenderTarget(this.baseCubeTexture,t,this.renderer),this.baseCubeTexture.dispose(),this.baseCubeTexture=null),this._cubeRenderTarget&&renderCubeTextureToCubeRenderTarget(this._cubeRenderTarget.texture,t,this.renderer),this._cubeRenderTarget=t},enumerable:!1,configurable:!0}),n.prototype.requestTile=function(t){var e=this,r,i,o,s,u,l,d=this.tileSources.filter(function(m){return m.level===t.level})[0];if(!d){this.loadedCubeNodes.add(t);return}var c=d.size,f=Math.pow(2,t.level)*t.position.y,h=Math.pow(2,t.level)*t.position.x,v="".concat(((o=(i=(r=this.options.imageURL)===null||r===void 0?void 0:r.options)===null||i===void 0?void 0:i.key)!==null&&o!==void 0?o:"pano.0").replace(/^pano/,"pano_tile"),".").concat(t.face,".").concat(t.level,".").concat(f,".").concat(h),A=__assign(__assign({},(u=(s=this.options.imageURL)===null||s===void 0?void 0:s.options)!==null&&u!==void 0?u:{key:"unknown"}),{key:v,size:c*t.size===this.options.tileImageSize?void 0:this.options.tileImageSize,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(d[t.face],{imageURL:{transform:(l=this.options.imageURL)===null||l===void 0?void 0:l.transform,options:__assign({},A)},format:THREE__namespace.RGBAFormat,viaAjax:canUseNativeImageBitmap,timeout:this.options.timeout,fetcher:this.options.fetcher}).then(function(m){if(e.disposed){m.body.dispose();return}e.textures.push({face:t.face,level:t.level,position:t.position,size:new THREE__namespace.Vector2(t.size,t.size),texture:m.body,flipY:!m.body.flipY}),e.loadedCubeNodes.add(t)}).catch(noop$1).then(function(){e.disposed||e.loadingCubeNodes.delete(t)})},n.prototype.update=function(t,e){var r=this;if(!this.disposed){var i=[];traverseTileCubeNode(this.tileTree,function(h){if(r.loadingCubeNodes.has(h)||h.level>e||!t.intersectsBox(h.box))return!1;if(!r.loadedCubeNodes.has(h))return i.push(h),!1});for(var o=0,s=i;o<s.length;o++){var u=s[o];this.requestTile(u)}if(this.cubeRenderTarget&&this.textures.length){var l=this.textures.splice(0,MAX_TILE_RENDER_EACH_FRAME);renderTexturesToCubeRenderTarget(l,this.cubeRenderTarget,this.renderer),this.needsRender=!0;for(var d=0,c=l;d<c.length;d++){var f=c[d];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}(),TextureLoader=function(){function n(){}return n.prototype.loadTexture=function(t,e,r,i,o,s){var u,l,d,c;r===void 0&&(r=noop$1),i===void 0&&(i=noop$1),o===void 0&&(o=noop$1);var f={};typeof e.flipY<"u"&&(f.flipY=e.flipY),typeof e.format<"u"&&(f.format=e.format),typeof e.minFilter<"u"&&(f.minFilter=e.minFilter),typeof e.magFilter<"u"&&(f.magFilter=e.magFilter);var h=(l=(u=e.imageURL)===null||u===void 0?void 0:u.options)!==null&&l!==void 0?l:{key:"unknown"};t=applyImageURLOptions(t,(d=e.imageURL)===null||d===void 0?void 0:d.transform,h);var v=getProtocol(t),A=(c=e.viaAjax)!==null&&c!==void 0?c:!1,m=isJsonpSource(t),y=/^https?:/.test(v);if(m?A=!0:y||(A=!1),A){var p=null,g="blob";return e.fetcher.ajax(t,{timeout:e.timeout,responseType:g},void 0,void 0,o).then(function(_){return createImageBitmapLikeAsync(_.body)}).then(function(_){return poolImageToTexture(_,e.maxSize)}).then(function(_){return Object.assign(_,f),_}).then(function(_){var w={meta:p,body:_};return r(w),w}).catch(function(_){return i(_),Promise.reject(_)})}else{var b=null,T;return Promise.resolve().then(function(){return createImageBitmapLikeImage()}).then(function(_){return T=_,e.fetcher.loadImage(t,{timeout:e.timeout},void 0,void 0,o,_)}).then(function(_){return b=_.meta,poolImageToTexture(_.body,e.maxSize)}).then(function(_){return Object.assign(_,f),_}).then(function(_){var w={meta:b,body:_};return r(w),w}).catch(function(_){return T&&T.close(),i(_),Promise.reject(_)})}},n.prototype.loadCubeTexture=function(t,e,r,i,o,s){var u,l,d,c;r===void 0&&(r=noop$1),i===void 0&&(i=noop$1),o===void 0&&(o=noop$1),typeof e.format<"u"&&e.format,typeof e.minFilter<"u"&&e.minFilter,typeof e.magFilter<"u"&&e.magFilter;for(var f=[t[FACE_ORDER[0]],t[FACE_ORDER[1]],t[FACE_ORDER[2]],t[FACE_ORDER[3]],t[FACE_ORDER[4]],t[FACE_ORDER[5]]],h=[],v=[0,0,0,0,0,0],A=[],m=function(p){var g=(l=(u=e.imageURL)===null||u===void 0?void 0:u.options)!==null&&l!==void 0?l:{key:"unknown"},b=applyImageURLOptions(f[p],(d=e.imageURL)===null||d===void 0?void 0:d.transform,__assign(__assign({},g),{key:g.key+"."+FACE_ORDER[p]})),T=getProtocol(b),_=function(B){v[p]=B,o(v.reduce(function(O,F){return O+F},0)/6)},w=(c=e.viaAjax)!==null&&c!==void 0?c:!1,x=/^https?:$/.test(T),M=isJsonpSource(b);if(M?w=!0:x||(w=!1),w){var R="blob",I=e.fetcher.ajax(b,{timeout:e.timeout,responseType:R},void 0,void 0,_).then(function(B){return A[p]=B.meta,createImageBitmapLikeAsync(B.body)});h.push(I)}else{var S,I=Promise.resolve().then(function(){return createImageBitmapLikeImage()}).then(function(O){return S=O,e.fetcher.loadImage(b,{timeout:e.timeout},void 0,void 0,_,O)}).then(function(O){return A[p]=O.meta,O.body}).catch(function(O){return S&&S.close(),Promise.reject(O)});h.push(I)}},y=0;y<6;y++)m(y);return Promise.all(h).then(function(p){return poolImagesToCubeTexture(p)}).then(function(p){return Object.assign(p,__assign({encoding:THREE__namespace.sRGBEncoding},e)),p}).then(function(p){var g={body:p,meta:A};return r(g),g}).catch(function(p){for(var g=0,b=h;g<b.length;g++){var T=b[g];T.then(function(_){return _.close()}).catch(noop$1)}return i(p),Promise.reject(p)})},n.prototype.loadTiledCubeTexture=function(t,e,r,i,o,s,u){var l=this;return i===void 0&&(i=noop$1),o===void 0&&(o=noop$1),s===void 0&&(s=noop$1),new Promise(function(d,c){var f,h;l.loadCubeTexture(t,{imageURL:{transform:(f=r.imageURL)===null||f===void 0?void 0:f.transform,options:(h=r.imageURL)===null||h===void 0?void 0:h.options},format:THREE__namespace.RGBAFormat,viaAjax:r.viaAjax,timeout:r.timeout,fetcher:r.fetcher},function(v){var A,m,y=v.meta,p=v.body,g=(A=r.tileImageSize)!==null&&A!==void 0?A:512,b=(m=r.tileMaxLevel)!==null&&m!==void 0?m:2,T=Math.max(1024*b,512),_=createTileCubeTree(b),w=new TileCubeTextureTarget(p,_,e,{textureSize:T,tileImageSize:g,textureLoader:l,imageURL:r.imageURL,timeout:r.timeout,fetcher:r.fetcher},u),x={meta:y,body:w};i(x),d(x)},function(v){o(v),c(v)},s,u).catch(noop$1)})},n}();const vertexShader$6=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var r=113,i=126,o=0,s="";return t[o].split(s).map(function(u){return u.charCodeAt(o)>i?u:String.fromCharCode((u.charCodeAt(o)+r)%i)}).join(s)}("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"),fragmentShader$6=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var r=113,i=126,o=0,s="";return t[o].split(s).map(function(u){return u.charCodeAt(o)>i?u:String.fromCharCode((u.charCodeAt(o)+r)%i)}).join(s)}("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\x07Hn\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=j9cvrZnv\x07h=jh>j9-cvrZnv\x07h>jh>j9-cvrZnv\x07h?jh>j9cvrZnv\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-V_||sZnx-JJ->;=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--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");var EMPTY_CUBE_TEXTURE=new THREE__namespace.WebGLCubeRenderTarget(1).texture;EMPTY_CUBE_TEXTURE.name="EMPTY_TEXTURE";var shaderUniforms$2=Object.assign({modelAlpha:new THREE__namespace.Uniform(0),progress:new THREE__namespace.Uniform(0),pano0_map:new THREE__namespace.Uniform(EMPTY_CUBE_TEXTURE),pano0_luminanceMap:new THREE__namespace.Uniform(null),pano0_matrix:new THREE__namespace.Uniform(new THREE__namespace.Matrix4),pano1_map:new THREE__namespace.Uniform(EMPTY_CUBE_TEXTURE),pano1_luminanceMap:new THREE__namespace.Uniform(null),pano1_matrix:new THREE__namespace.Uniform(new THREE__namespace.Matrix4),clippers:new THREE__namespace.Uniform([]),shownFloorIndex:new THREE__namespace.Uniform(-1),constantColor:new THREE__namespace.Uniform(null),floor:new THREE__namespace.Uniform(0)},{exposure:new THREE__namespace.Uniform(1),emissive:new THREE__namespace.Uniform(new THREE__namespace.Color(0)),emissiveMap:new THREE__namespace.Uniform(null),specular:new THREE__namespace.Uniform(new THREE__namespace.Color(1118481)),specularMap:new THREE__namespace.Uniform(null),normalMap:new THREE__namespace.Uniform(null),bumpMap:new THREE__namespace.Uniform(null),shininess:new THREE__namespace.Uniform(30)},THREE__namespace.UniformsUtils.clone(THREE__namespace.UniformsLib.common),THREE__namespace.UniformsUtils.clone(THREE__namespace.UniformsLib.lights)),PBMMeshMaterial=function(n){__extends(t,n);function t(e){e===void 0&&(e={});var r,i,o,s,u,l,d,c,f,h,v,A,m,y,p,g,b,T,_,w,x=n.call(this,{vertexShader:vertexShader$6,fragmentShader:fragmentShader$6,uniforms:THREE__namespace.UniformsUtils.clone(shaderUniforms$2),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_CIRCLE:!1,USE_POINT_ADAPTIVE_SIZE:!1,USE_POINT_COLOR_ALTITUDE:!1},lights:!0})||this,M,R=null,I=null;return Object.defineProperties(x,{pano0:{get:function(){return R},set:function(S){if(R!==S){R=S,S===null?(this.uniforms.pano0_map.value=EMPTY_CUBE_TEXTURE,this.uniforms.pano0_luminanceMap.value=null,this.uniforms.pano0_matrix.value.identity()):(this.uniforms.pano0_map.value=S.map instanceof TileCubeTextureTarget?S.map.texture:S.map,this.uniforms.pano0_luminanceMap.value=S.luminanceMap instanceof TileCubeTextureTarget?S.luminanceMap.texture:S.luminanceMap,this.uniforms.pano0_matrix.value.copy(S.matrix));var B=this.uniforms.pano0_luminanceMap.value!==null&&this.uniforms.pano1_luminanceMap.value!==null,O=this.defines.USE_LUMINANCE;O!==B&&(this.defines.USE_LUMINANCE=B,this.needsUpdate=!0)}}},pano1:{get:function(){return I},set:function(S){if(I!==S){I=S,S===null?(this.uniforms.pano1_map.value=EMPTY_CUBE_TEXTURE,this.uniforms.pano1_luminanceMap.value=null,this.uniforms.pano1_matrix.value.identity()):(this.uniforms.pano1_map.value=S.map instanceof TileCubeTextureTarget?S.map.texture:S.map,this.uniforms.pano1_luminanceMap.value=S.luminanceMap instanceof TileCubeTextureTarget?S.luminanceMap.texture:S.luminanceMap,this.uniforms.pano1_matrix.value.copy(S.matrix));var B=this.uniforms.pano0_luminanceMap.value!==null&&this.uniforms.pano1_luminanceMap.value!==null,O=this.defines.USE_LUMINANCE;O!==B&&(this.defines.USE_LUMINANCE=B,this.needsUpdate=!0)}}},modelAlpha:{get:function(){return this.uniforms.modelAlpha.value},set:function(S){this.uniforms.modelAlpha.value=S}},progress:{get:function(){return this.uniforms.progress.value},set:function(S){this.uniforms.progress.value=S}},useBlackTransition:{get:function(){return this.defines.USE_BLACK_TRANSITION},set:function(S){var B=this.defines.USE_BLACK_TRANSITION;B!==S&&(this.defines.USE_BLACK_TRANSITION=S,this.needsUpdate=!0)}},constantColor:{get:function(){return this.uniforms.constantColor.value},set:function(S){this.uniforms.constantColor.value=S;var B=this.defines.USE_CONSTANT_COLOR,O=S!==null;B!==O&&(this.defines.USE_CONSTANT_COLOR=O,this.needsUpdate=!0)}},opacity:{get:function(){return this.uniforms.opacity.value},set:function(S){this.uniforms.opacity.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(B){var O=typeof B.floorIndex=="number"?B.floorIndex:-1,F=new THREE__namespace.Matrix4().getInverse(B.clippingBoxMatrix);return{matrixInverse:F,floorIndex:O}}),this.needsUpdate=!0)}},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)}},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:defaultPbmParameters.pano0,x.pano1=(i=e.pano1)!==null&&i!==void 0?i:defaultPbmParameters.pano1,x.modelAlpha=(o=e.modelAlpha)!==null&&o!==void 0?o:defaultPbmParameters.modelAlpha,x.progress=(s=e.progress)!==null&&s!==void 0?s:defaultPbmParameters.progress,x.useBlackTransition=(u=e.useBlackTransition)!==null&&u!==void 0?u:defaultPbmParameters.useBlackTransition,x.constantColor=(l=e.constantColor)!==null&&l!==void 0?l:defaultPbmParameters.constantColor,x.opacity=(d=e.opacity)!==null&&d!==void 0?d:defaultPbmParameters.opacity,x.shownFloorIndex=(c=e.shownFloorIndex)!==null&&c!==void 0?c:defaultPbmParameters.shownFloorIndex,x.clippers=(f=e.clippers)!==null&&f!==void 0?f:defaultPbmParameters.clippers,x.useEDL=(h=e.useEDL)!==null&&h!==void 0?h:defaultPbmParameters.useEDL,x.useHQWeight=(v=e.useHQWeight)!==null&&v!==void 0?v:defaultPbmParameters.useHQWeight,x.useHQDepth=(A=e.useHQDepth)!==null&&A!==void 0?A:defaultPbmParameters.useHQDepth,x.pointSize=(m=e.pointSize)!==null&&m!==void 0?m:defaultPbmParameters.pointSize,x.pointColor=(y=e.pointColor)!==null&&y!==void 0?y:defaultPbmParameters.pointColor,x.pointShape=(p=e.pointShape)!==null&&p!==void 0?p:defaultPbmParameters.pointShape,x.pointScale=(g=e.pointScale)!==null&&g!==void 0?g:defaultPbmParameters.pointScale,x.pointBack=(b=e.pointBack)!==null&&b!==void 0?b:defaultPbmParameters.pointBack,x.pointMinPixel=(T=e.pointMinPixel)!==null&&T!==void 0?T:defaultPbmParameters.pointMinPixel,x.pointMaxPixel=(_=e.pointMaxPixel)!==null&&_!==void 0?_:defaultPbmParameters.pointMaxPixel,x.gradientTexture=(w=e.gradientTexture)!==null&&w!==void 0?w:defaultPbmParameters.gradientTexture,x.floor=0,x}return t.prototype.onBeforeCompile=function(e,r){var i,o,s=String((o=(i=this.clippers)===null||i===void 0?void 0:i.length)!==null&&o!==void 0?o:0);e.vertexShader=e.vertexShader.replace(/NUM_CLIPPERS/g,s),e.fragmentShader=e.fragmentShader.replace(/NUM_CLIPPERS/g,s)},t.prototype.update=function(e,r){this.transparent=this.shownFloorIndex>-1||this.opacity<1,this.blending=this.transparent?THREE__namespace.NormalBlending:THREE__namespace.NoBlending},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}(THREE__namespace.ShaderMaterial),InternalWebGLRenderer=function(n){__extends(t,n);function t(e){var r=e.preserveDrawingBuffer,i=r===void 0?!0:r,o=e.backgroundColor,s=o===void 0?1579548:o,u=e.backgroundAlpha,l=u===void 0?1:u,d=e.pixelRatio,c=d===void 0?1:d,f=e.antialias,h=f===void 0?!1:f,v=e.webgl2,A=v===void 0?!1:v,m=this,y=l<1;if(A){var p=document.createElement("canvas"),g=p.getContext("webgl2");g?m=n.call(this,{antialias:h,preserveDrawingBuffer:i,alpha:y,canvas:p,context:g})||this:(console.error("error occurred when getting webgl2 canvas context, mybe webgl2 not support, fallback to webgl."),m=n.call(this,{antialias:h,preserveDrawingBuffer:i,alpha:y})||this)}else m=n.call(this,{antialias:h,preserveDrawingBuffer:i,alpha:y})||this;return m.setPixelRatio(c),m.setClearColor(s,l),m.outputEncoding=THREE__namespace.sRGBEncoding,m.autoClear=!0,m}return t}(THREE__namespace.WebGLRenderer),Scene=function(n){__extends(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}(THREE__namespace.Scene);function coordinatesToVector(n,t){var e=Math.abs(Math.cos(n.latitude)),r=-Math.sin(n.longitude)*e,i=-Math.sin(n.latitude),o=-Math.cos(n.longitude)*e;return t?t.set(r,i,o):new THREE__namespace.Vector3(r,i,o)}var DEFAULT_ASPECT=1,DEFAULT_NEAR=.1,DEFAULT_FAR=1e3,TAU$2=Math.PI*2,PI_2=Math.PI/2;function formatRad$1(n){return n>0&&n<=TAU$2?n:(n%TAU$2+TAU$2)%TAU$2}function matrixLerp(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 Camera=function(n){__extends(t,n);function t(e,r,i,o,s,u,l){r===void 0&&(r=DEFAULT_ASPECT),i===void 0&&(i=DEFAULT_NEAR),o===void 0&&(o=DEFAULT_FAR),s===void 0&&(s=new THREE__namespace.Vector2),u===void 0&&(u=512),l===void 0&&(l=1);var d=n.call(this)||this;d.fov=e,d.aspect=r,d.near=i,d.far=o,d.perspToOrtho=s,d.screenHeight=u,d.pixelRatio=l,d.needsRender=!0,d.pose={longitude:0,latitude:0,fov:e,distance:0,offset:new THREE__namespace.Vector3},d.computePose(),d.perspectiveCamera=new THREE__namespace.PerspectiveCamera(d.fov,d.aspect,.001,d.far);var c=Math.max(d.orthoDistance,.01)*Math.tan(.5*d.fov/180*Math.PI),f=-.5*d.aspect*2*c;return d.orthographicCamera=new THREE__namespace.OrthographicCamera(f,-f,c,-c,.001,d.far),d.computeProjectionMatrix(),d.lastValues={position:d.position.clone(),quaternion:d.quaternion.clone(),scale:d.scale.clone(),fov:d.fov,aspect:d.aspect,near:d.near,far:d.far,perspToOrtho:d.perspToOrtho.clone()},d.type=d.perspToOrtho.x<1?"PerspectiveCamera":"OrthographicCamera",d}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 coordinatesToVector(this.pose,e)},t.prototype.computePose=function(e){e===void 0&&(e=0);var r=this.getDirection(new THREE__namespace.Vector3);this.pose.longitude=formatRad$1(-Math.atan2(r.x,-r.z)),this.pose.latitude=-Math.asin(r.y/1),this.pose.fov=this.fov,this.pose.distance=e;var i=new THREE__namespace.Vector3().add(this.position).add(r.clone().setLength(this.pose.distance));return this.pose.offset.copy(i),this},t.prototype.setFromPose=function(e){var r,i,o,s,u,l=formatRad$1((r=e.longitude)!==null&&r!==void 0?r:this.pose.longitude),d=Math.max(-PI_2+1e-4,Math.min(PI_2-1e-4,(i=e.latitude)!==null&&i!==void 0?i:this.pose.latitude)),c=(o=e.fov)!==null&&o!==void 0?o:this.pose.fov,f=(s=e.distance)!==null&&s!==void 0?s:this.pose.distance,h=(u=e.offset)!==null&&u!==void 0?u:this.pose.offset,v=coordinatesToVector({longitude:l,latitude:d}).normalize();return this.position.set(0,0,0),this.lookAt(v),this.position.add(h).sub(v.clone().setLength(f)),this.fov!==c&&(this.fov=c,this.updateProjectionMatrix()),this.updateMatrixWorld(),this.pose.longitude=l,this.pose.latitude=d,this.pose.fov=c,this.pose.distance=f,this.pose.offset.copy(h),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(){matrixLerp(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,o,s,u){this.perspectiveCamera.setViewOffset(e,r,i,o,s,u),this.orthographicCamera.setViewOffset(e,r,i,o,s,u),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 o=Math.max(this.orthoDistance,.01)*Math.tan(.5*this.fov/180*Math.PI),s=-.5*this.aspect*2*o;this.orthographicCamera.left=s,this.orthographicCamera.right=-s,this.orthographicCamera.top=o,this.orthographicCamera.bottom=-o,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(now(),0),this},t}(THREE__namespace.Camera),VolumePlaneIntersect;(function(n){n[n.Outside=-1]="Outside",n[n.Intersecting=0]="Intersecting",n[n.Inside=1]="Inside"})(VolumePlaneIntersect||(VolumePlaneIntersect={}));var EPSILON$2=1e-6,scratchVector=new THREE__namespace.Vector3,scratchMatrix4$3=new THREE__namespace.Matrix4,scratchXAxis=new THREE__namespace.Vector3,scratchYAxis=new THREE__namespace.Vector3,scratchZAxis=new THREE__namespace.Vector3,scratchSize=new THREE__namespace.Vector3,scratchBox3=new THREE__namespace.Box3,scratchSphere$1=new THREE__namespace.Sphere,scratchMatrix4Inverse$1=new THREE__namespace.Matrix4,scratchRay$1=new THREE__namespace.Ray,scratchObject3D=new THREE__namespace.Object3D,scratchFrustum=new THREE__namespace.Frustum;function quaternionFromMatrix3(n,t){var e=n.elements;return t.setFromRotationMatrix(scratchMatrix4$3.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 CullingVolume=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 scratchMatrix4$3.multiplyMatrices(t.projectionMatrix,t.matrixWorldInverse),scratchFrustum.setFromProjectionMatrix(scratchMatrix4$3),this.setFromFrustum(scratchFrustum),this},n.prototype.computeVisibility=function(t){for(var e=VolumePlaneIntersect.Inside,r=0,i=this.planes;r<i.length;r++){var o=i[r],s=t.intersectPlane(o);switch(s){case VolumePlaneIntersect.Outside:return VolumePlaneIntersect.Outside;case VolumePlaneIntersect.Intersecting:e=VolumePlaneIntersect.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),o=0;o<i;++o){var s=1<<o;if(e&s){var u=this.planes[o],l=t.intersectPlane(u);if(l===VolumePlaneIntersect.Outside)return n.MASK_OUTSIDE;l===VolumePlaneIntersect.Intersecting&&(r|=s)}}return r},n}(),BoxBoundingVolume=function(){function n(){this.type="box",this.center=new THREE__namespace.Vector3,this.halfSize=new THREE__namespace.Vector3,this.rotation=new THREE__namespace.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],o=e[5],s=e[6],u=e[7],l=e[8],d=e[9],c=e[10],f=e[11],h=Math.sqrt(r*r+i*i+o*o),v=Math.sqrt(s*s+u*u+l*l),A=Math.sqrt(d*d+c*c+f*f);this.halfSize.set(h,v,A);var m=this.halfSize.toArray().reduce(function(y,p){return y+p},0);return(isNaN(m)||m<=0)&&this.halfSize.setScalar(EPSILON$2),this.rotation.fromArray([r/h,i/h,o/h,s/v,u/v,l/v,d/A,c/A,f/A]),isNaN(this.rotation.toArray().reduce(function(y,p){return y+p},0))&&this.rotation.identity(),this},n.prototype.toJson=function(){return this.rotation.extractBasis(scratchXAxis,scratchYAxis,scratchZAxis),{box:__spreadArray(__spreadArray(__spreadArray(__spreadArray([],this.center.toArray(),!0),scratchXAxis.multiplyScalar(this.halfSize.x).toArray(),!0),scratchYAxis.multiplyScalar(this.halfSize.y).toArray(),!0),scratchZAxis.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 scratchObject3D.position.copy(this.center),quaternionFromMatrix3(this.rotation,scratchObject3D.quaternion),scratchObject3D.scale.copy(this.halfSize),scratchObject3D.matrix.compose(scratchObject3D.position,scratchObject3D.quaternion,scratchObject3D.scale),scratchObject3D.matrix.premultiply(t),scratchObject3D.matrix.decompose(scratchObject3D.position,scratchObject3D.quaternion,scratchObject3D.scale),this.center.copy(scratchObject3D.position),this.rotation.setFromMatrix4(scratchMatrix4$3.makeRotationFromQuaternion(scratchObject3D.quaternion)),this.halfSize.copy(scratchObject3D.scale),this},n.prototype.getCenter=function(t){return t.copy(this.center)},n.prototype.distanceSquaredTo=function(t){var e=this.rotation.elements,r=t.x-this.center.x,i=t.y-this.center.y,o=t.z-this.center.z,s=0,u;return u=r*e[0]+i*e[1]+o*e[2],u<0&&(u=-u),u-=this.halfSize.x,u>0&&(s+=u*u),u=r*e[3]+i*e[4]+o*e[5],u<0&&(u=-u),u-=this.halfSize.y,u>0&&(s+=u*u),u=r*e[6]+i*e[7]+o*e[8],u<0&&(u=-u),u-=this.halfSize.z,u>0&&(s+=u*u),s},n.prototype.distanceTo=function(t){return Math.sqrt(this.distanceSquaredTo(t))},n.prototype.getBoundingBox=function(t){return t.makeEmpty(),this.rotation.extractBasis(scratchXAxis,scratchYAxis,scratchZAxis),scratchXAxis.setLength(this.halfSize.x),scratchYAxis.setLength(this.halfSize.y),scratchZAxis.setLength(this.halfSize.z),t.expandByPoint(scratchVector.copy(this.center).add(scratchXAxis)),t.expandByPoint(scratchVector.copy(this.center).sub(scratchXAxis)),t.expandByPoint(scratchVector.copy(this.center).add(scratchYAxis)),t.expandByPoint(scratchVector.copy(this.center).sub(scratchYAxis)),t.expandByPoint(scratchVector.copy(this.center).add(scratchZAxis)),t.expandByPoint(scratchVector.copy(this.center).sub(scratchZAxis)),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);scratchVector.set(this.halfSize.x,this.halfSize.y,this.halfSize.z).applyMatrix3(this.rotation).add(this.center).toArray(e,0),scratchVector.set(-this.halfSize.x,this.halfSize.y,this.halfSize.z).applyMatrix3(this.rotation).add(this.center).toArray(e,3),scratchVector.set(-this.halfSize.x,-this.halfSize.y,this.halfSize.z).applyMatrix3(this.rotation).add(this.center).toArray(e,6),scratchVector.set(this.halfSize.x,-this.halfSize.y,this.halfSize.z).applyMatrix3(this.rotation).add(this.center).toArray(e,9),scratchVector.set(this.halfSize.x,this.halfSize.y,-this.halfSize.z).applyMatrix3(this.rotation).add(this.center).toArray(e,12),scratchVector.set(-this.halfSize.x,this.halfSize.y,-this.halfSize.z).applyMatrix3(this.rotation).add(this.center).toArray(e,15),scratchVector.set(-this.halfSize.x,-this.halfSize.y,-this.halfSize.z).applyMatrix3(this.rotation).add(this.center).toArray(e,18),scratchVector.set(this.halfSize.x,-this.halfSize.y,-this.halfSize.z).applyMatrix3(this.rotation).add(this.center).toArray(e,21);var r=new THREE__namespace.BufferGeometry;return r.setIndex(new THREE__namespace.BufferAttribute(t,1)),r.setAttribute("position",new THREE__namespace.BufferAttribute(e,3)),r.computeBoundingBox(),r.computeBoundingSphere(),r},n.prototype.intersectPlane=function(t){var e=this.center,r=t.normal,i=this.rotation.elements,o=this.halfSize,s=r.x,u=r.y,l=r.z,d=Math.abs(s*i[0]*o.x+u*i[1]*o.x+l*i[2]*o.x)+Math.abs(s*i[3]*o.y+u*i[4]*o.y+l*i[5]*o.y)+Math.abs(s*i[6]*o.z+u*i[7]*o.z+l*i[8]*o.z),c=r.dot(e)+t.constant;return c<=-d?VolumePlaneIntersect.Outside:c>=d?VolumePlaneIntersect.Inside:VolumePlaneIntersect.Intersecting},n.prototype.intersectRay=function(t,e){scratchSize.copy(this.halfSize).multiplyScalar(2),scratchBox3.setFromCenterAndSize(scratchVector.set(0,0,0),scratchSize),this.rotation.extractBasis(scratchXAxis,scratchYAxis,scratchZAxis),scratchMatrix4$3.makeBasis(scratchXAxis,scratchYAxis,scratchZAxis),scratchMatrix4$3.setPosition(this.center),scratchMatrix4Inverse$1.getInverse(scratchMatrix4$3),scratchRay$1.copy(t).applyMatrix4(scratchMatrix4Inverse$1);var r=scratchRay$1.intersectBox(scratchBox3,scratchVector);return r?e!==void 0?r.applyMatrix4(scratchMatrix4$3).distanceTo(t.origin)<e:!0:!1},n}(),SphereBoundingVolume=function(){function n(){this.type="sphere",this.center=new THREE__namespace.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],EPSILON$2),this},n.prototype.toJson=function(){return{sphere:__spreadArray(__spreadArray([],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,scratchSize.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 o=new THREE__namespace.BufferGeometry;return o.setAttribute("position",new THREE__namespace.BufferAttribute(e,3)),o.computeBoundingBox(),o.computeBoundingSphere(),o},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.distanceSquaredTo=function(t){var e=this.distanceTo(t);return e*e},n.prototype.distanceTo=function(t){var e=this.center.distanceTo(t)-this.radius;return e<=0?0:e},n.prototype.intersectPlane=function(t){var e=this.center,r=this.radius,i=t.normal,o=i.dot(e)+t.constant;return o<-r?VolumePlaneIntersect.Outside:o<r?VolumePlaneIntersect.Intersecting:VolumePlaneIntersect.Inside},n.prototype.intersectRay=function(t,e){scratchSphere$1.set(this.center,this.radius);var r=t.intersectSphere(scratchSphere$1,scratchVector);return r?e!==void 0?t.origin.distanceTo(r)<e:!0:!1},n}(),RegionBoundingVolume=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.distanceTo=function(t){throw new Error("not implemented")},n.prototype.distanceSquaredTo=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 makeBoundingVolume(n){if("box"in n)return new BoxBoundingVolume().fromJson(n);if("sphere"in n)return new SphereBoundingVolume().fromJson(n);if("region"in n)return new RegionBoundingVolume().fromJson(n);throw new Error("BoundingVolume ".concat(JSON.stringify(n)," never suppored."))}var debugMaterials=[2621517,3801199,4915345,5963950,7274706,8782079,9575167,10434047,11623423,12482559,13274879,13870335,14464511,15125247,15852031,16446719].map(function(n){return new THREE__namespace.LineBasicMaterial({color:n,depthWrite:!1,transparent:!0})}),debugBoxGeometry=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);scratchVector.set(1,1,1).toArray(t,0),scratchVector.set(-1,1,1).toArray(t,3),scratchVector.set(-1,-1,1).toArray(t,6),scratchVector.set(1,-1,1).toArray(t,9),scratchVector.set(1,1,-1).toArray(t,12),scratchVector.set(-1,1,-1).toArray(t,15),scratchVector.set(-1,-1,-1).toArray(t,18),scratchVector.set(1,-1,-1).toArray(t,21);var e=new THREE__namespace.BufferGeometry;return e.setIndex(new THREE__namespace.BufferAttribute(n,1)),e.setAttribute("position",new THREE__namespace.BufferAttribute(t,3)),e.computeBoundingBox(),e.computeBoundingSphere(),e}(),debugSphereGeometry=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 THREE__namespace.BufferGeometry;return i.setAttribute("position",new THREE__namespace.BufferAttribute(t,3)),i.computeBoundingBox(),i.computeBoundingSphere(),i}();function createDebugBoundingMesh(n,t){if(n instanceof BoxBoundingVolume){var e=new THREE__namespace.LineSegments(debugBoxGeometry,debugMaterials[Math.min(t,debugMaterials.length-1)]);return e.position.copy(n.center),quaternionFromMatrix3(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 SphereBoundingVolume){var e=new THREE__namespace.LineSegments(debugSphereGeometry,debugMaterials[Math.min(t,debugMaterials.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 Tile=function(){function n(t,e,r,i){var o=this,s,u,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,this.tileset=r,this.refine=(s=e.refine)!==null&&s!==void 0?s:this.parent?this.parent.refine:"REPLACE",this.transform=new THREE__namespace.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=(u=this.parent)===null||u===void 0?void 0:u.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=makeBoundingVolume(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=makeBoundingVolume(e.boundingVolume).applyMatrix4(this.transform)),e.viewerRequestVolume&&(this.viewerRequestVolume=makeBoundingVolume(e.viewerRequestVolume).applyMatrix4(this.transform)),this.extras=e.extras||{},e.children?this.children=e.children.map(function(d,c){return new n("".concat(o.id,".").concat(c),d,r,o)}):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;this.state.distanceToCamera=r.distanceTo(t.camera.position);var i=this.parent?this.parent.state.visibilityPlaneMask:CullingVolume.MASK_INDETERMINATE;this.state.visibilityPlaneMask=t.cullingVolume.computeVisibilityWithPlaneMask(r,i),this.state.visible=this.state.visibilityPlaneMask!==CullingVolume.MASK_OUTSIDE}else this.state.distanceToCamera=0,this.state.visibilityPlaneMask=CullingVolume.MASK_INDETERMINATE,this.state.visible=!0;if(this.viewerRequestVolume){var o=e?this.viewerRequestVolume.clone().applyMatrix4(e):this.viewerRequestVolume;this.state.inRequestVolume=o.distanceSquaredTo(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(o){return i.done(),r.loadState=o?"READY":"UNLOADED",o}).catch(function(o){return r.loadState="FAILED",i.done(),Promise.reject(o)}):(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(),o=this.parent?this.parent.geometricError:this.tileset.geometricError,s=i*(r?o:this.geometricError);if(s===0)return 0;var u=Math.max(e,.001),l=s*t.height/(u*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,o=this.tileset.root?this.tileset.root.state.screenSpaceError:0,s=Math.max(o-i,0);return s},n}(),RequestScheduler=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(){}},o=new Promise(function(s){return i.resolve=s});return this.requestQueue.push(i),this.requestMap.set(t,o),this.issueNewRequests(),o},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,o=!1,s=function(){o||(o=!0,e.requestMap.delete(r),e.activeRequests--,e.issueNewRequests())};this.activeRequests++,i({done:s})},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,o){return i.priority-o.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}(),CacheNode=function(){function n(t,e,r){this.item=t,this.previous=e,this.next=r}return n}(),CacheNodeList=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 CacheNode(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}(),TilesetCache=function(){function n(){this.cacheNodeMap=new Map,this.list=new CacheNodeList,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}(),ManagedArray=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}(),TilesetTraverser=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 ManagedArray,this._emptyTraversalStack=new ManagedArray,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,o=r;i<o.length;i++){var s=o[i];this._traversalStack.reset(),this._emptyTraversalStack.reset(),this._canSelectTile=s.camera.visible,this.updateTile(t,s),this.executeTraversal(t,s)}this._traversalStack.reset(),this._emptyTraversalStack.reset(),this._canSelectTile=!0,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(),o=!1;if(this.canTraverse(i,e,!1,!1)){var s=i.hasRenderContent?i.state.selectionDepth+1:i.state.selectionDepth;this.updateChildTiles(i,e,s),o=this.updateAndPushChildren(i,e,r)}var u=i.parent,l=!u||u.state.shouldRefine,d=!o;i.hasRenderContent?i.refine==="ADD"?(this.loadTile(i,e.frameNumber),this.selectTile(i,e)):i.refine==="REPLACE"&&(this.loadTile(i,e.frameNumber),d&&this.selectTile(i,e)):(this.emptyTiles.set(i.id,i),this.loadTile(i,e.frameNumber),d&&this.selectTile(i,e)),this.touchTile(i,e),i.state.shouldRefine=o&&l}},n.prototype.updateChildTiles=function(t,e,r){for(var i=t.children,o=0,s=i;o<s.length;o++){var u=s[o];u.state.selectionDepth=r,this.updateTile(u,e)}return!0},n.prototype.updateAndPushChildren=function(t,e,r){for(var i=t.children,o=t.refine==="REPLACE"&&t.hasRenderContent&&!this.skipLevelOfDetail,s=!1,u=!0,l=0,d=i;l<d.length;l++){var c=d[l];if(c.state.visible&&c.state.inRequestVolume?(r.find(c)&&r.delete(c),r.push(c),s=!0):(o||this.loadSiblings)&&(this.loadTile(c,e.frameNumber),this.touchTile(c,e)),o){var f=void 0;c.state.inRequestVolume?c.hasRenderContent?f=c.contentAvailable:f=this.executeEmptyTraversal(c,e):f=!1,u=u&&f}}return s||(u=!1),u},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.hasRenderContent){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 o=i.pop();this.updateTile(o,e),o.state.visible||this.loadTile(o,e.frameNumber),this.touchTile(o,e);var s=!o.hasRenderContent&&this.canTraverse(o,e,!1,!0);if(s)for(var u=o.children,l=0,d=u;l<d.length;l++){var c=d[l];i.find(c)&&i.delete(c),i.push(c)}else o.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}(),identityMatrix4=new THREE__namespace.Matrix4,Tileset=function(){function n(t,e,r){var i,o;this.id=t,this.transform=new THREE__namespace.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=(o=e.properties)!==null&&o!==void 0?o:{},this.options=r,this.traverser=new TilesetTraverser,this.cache=new TilesetCache,this.requestScheduler=new RequestScheduler,this.frameNumber=0,this.pendingCount=0,this.tiles=new Map,this.memoryUsageInBytes=0,this.root=new Tile("".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,o=r.children.length;i<o;i++)e.push(r.children[i]);this.cache.unloadTile(r,function(s){return t.unloadTile(s)})}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(identityMatrix4),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=TilesetTraverser.DEFAULT_MAX_SCREEN_SPACE_ERROR,n.DEFAULT_MAX_REQUESTS=RequestScheduler.DEFAULT_MAX_REQUESTS,n}(),BVHNode=function(){function n(t,e,r,i){this.extents=t,this.startIndex=e,this.endIndex=r,this.deepth=i}return n}();function intersectNodeBox(n,t,e,r){r===void 0&&(r=0);var i=e.extents[0]-r,o=e.extents[1]-r,s=e.extents[2]-r,u=e.extents[3]+r,l=e.extents[4]+r,d=e.extents[5]+r,c={min:0,max:0};t.x>=0?(c.min=(i-n.x)*t.x,c.max=(u-n.x)*t.x):(c.min=(u-n.x)*t.x,c.max=(i-n.x)*t.x);var f={min:0,max:0};if(t.y>=0?(f.min=(o-n.y)*t.y,f.max=(l-n.y)*t.y):(f.min=(l-n.y)*t.y,f.max=(o-n.y)*t.y),c.min>f.max||f.min>c.max)return!1;f.min>c.min&&(c.min=f.min),f.max<c.max&&(c.max=f.max);var h={min:0,max:0};return t.z>=0?(h.min=(s-n.z)*t.z,h.max=(d-n.z)*t.z):(h.min=(d-n.z)*t.z,h.max=(s-n.z)*t.z),!(c.min>h.max||h.min>c.max||(h.min>c.min&&(c.min=h.min),h.max<c.max&&(c.max=h.max),c.max<0))}var BVHVector3=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,o=t.z,s=e.x,u=e.y,l=e.z;return this.x=i*l-o*u,this.y=o*s-r*l,this.z=r*u-i*s,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}(),BVHIntersect=function(){function n(t,e,r){this.triangle=t,this.intersectionPoint=e,this.index=r}return n}(),EPSILON$1=1e-6,BVHMesh=function(){function n(t,e){if(this.positionArray=t,e)this.indicesArray=e;else{for(var r=t.length/3,i=new Uint32Array(r),o=0;o<r;o++)i[o]=o;this.indicesArray=i}}return n.prototype.createTree=function(t,e,r){var i=this.positionArray,o=this.indicesArray,s=o.length/3,u=new Uint32Array(s),l=new Float32Array(s*6),d=[],c=0;if(r)for(var f=0,h=0,v=0,A=void 0,m=void 0,y=void 0,p=void 0,g=void 0,b=void 0,T=void 0;f<s;f+=1,h+=3,v+=6)u[f]=f,A=p=i[o[h]*3],T=i[o[h+1]*3],T<A&&(A=T),T>p&&(p=T),T=i[o[h+2]*3],T<A&&(A=T),T>p&&(p=T),m=g=i[o[h]*3+1],T=i[o[h+1]*3+1],T<m&&(m=T),T>g&&(g=T),T=i[o[h+2]*3+1],T<m&&(m=T),T>g&&(g=T),y=b=i[o[h]*3+2],T=i[o[h+1]*3+2],T<y&&(y=T),T>b&&(b=T),T=i[o[h+2]*3+2],T<y&&(y=T),T>b&&(b=T),l[v]=A,l[v+1]=m,l[v+2]=y,l[v+3]=p,l[v+4]=g,l[v+5]=b;else{for(var _=1/0,w=1/0,x=1/0,M=-1/0,R=-1/0,I=-1/0,f=0,h=0,v=0,A=void 0,m=void 0,y=void 0,p=void 0,g=void 0,b=void 0,T=void 0;f<s;f+=1,h+=3,v+=6)u[f]=f,A=p=i[o[h]*3],T=i[o[h+1]*3],T<A&&(A=T),T>p&&(p=T),T=i[o[h+2]*3],T<A&&(A=T),T>p&&(p=T),m=g=i[o[h]*3+1],T=i[o[h+1]*3+1],T<m&&(m=T),T>g&&(g=T),T=i[o[h+2]*3+1],T<m&&(m=T),T>g&&(g=T),y=b=i[o[h]*3+2],T=i[o[h+1]*3+2],T<y&&(y=T),T>b&&(b=T),T=i[o[h+2]*3+2],T<y&&(y=T),T>b&&(b=T),l[v]=A,l[v+1]=m,l[v+2]=y,l[v+3]=p,l[v+4]=g,l[v+5]=b,A<_&&(_=A),p>M&&(M=p),m<w&&(w=m),g>R&&(R=g),y<x&&(x=y),b>I&&(I=b);r=[_,w,x,M,R,I]}var S=new BVHNode(r,0,s,0);d[c++]=S;function B(O){for(var F=O.startIndex,H=O.endIndex,k=O.extents,N=[k[3]-k[0],k[4]-k[1],k[5]-k[2]],q=[0,1,2].sort(function(J,Z){return N[Z]-N[J]}),V=0;V<3;V++){for(var D=q[V],K=k[D]+k[D+3],z=F,G=H-1,W=-1,Q=void 0;z<=G;)W===-1?(Q=u[z],l[Q*6+D]+l[Q*6+D+3]<K?z++:W=Q):(Q=u[G],l[Q*6+D]+l[Q*6+D+3]>=K||(u[z]=Q,u[G]=W,W=-1,z++),G--);if(z>F&&z<H){var X=new BVHNode(calcExtents(u,l,F,z,EPSILON$1),F,z,O.deepth+1);X.deepth<e&&X.endIndex-X.startIndex>t&&(d[c++]=X);var ee=new BVHNode(calcExtents(u,l,z,H,EPSILON$1),z,H,O.deepth+1);ee.deepth<e&&ee.endIndex-ee.startIndex>t&&(d[c++]=ee),O.node0=X,O.node1=ee,O.startIndex=0,O.endIndex=0;break}}}for(;c;)B(d[--c]);return this.offsetArray=u,this.rootNode=S,d.length=0,this},n.prototype.trianglesInSphere=function(t,e){for(var r=this.positionArray,i=this.indicesArray,o=this.offsetArray,s=this.rootNode,u=[s],l=[],d;d=u.pop();){var c=clamp$1(t.x,d.extents[0],d.extents[3])-t.x,f=clamp$1(t.y,d.extents[1],d.extents[4])-t.y,h=clamp$1(t.z,d.extents[2],d.extents[5])-t.z;if(c*c+f*f+h*h<=e*e){d.node0&&u.push(d.node0),d.node1&&u.push(d.node1);for(var v=d.startIndex;v<d.endIndex;v++)l.push(o[v])}}for(var A=l.length,m=new Float32Array(A*9),v=0;v<A;v++){var y=l[v];m[v*9]=r[i[y]*3],m[v*9+1]=r[i[y]*3+1],m[v*9+2]=r[i[y]*3+2],m[v*9+3]=r[i[y+1]*3],m[v*9+4]=r[i[y+1]*3+1],m[v*9+5]=r[i[y+1]*3+2],m[v*9+6]=r[i[y+2]*3],m[v*9+7]=r[i[y+2]*3+1],m[v*9+8]=r[i[y+2]*3+2]}return m},n.prototype.intersectRay=function(t,e,r){for(var i=this.positionArray,o=this.indicesArray,s=this.offsetArray,u=this.rootNode,l=new BVHVector3(1/e.x,1/e.y,1/e.z),d=[u],c;c=d.pop();)if(intersectNodeBox(t,l,c)){for(var f=c.startIndex,h=c.endIndex,v=void 0,A=void 0,m=void 0,y=t.x,p=t.y,g=t.z,b=e.x,T=e.y,_=e.z,w=void 0,x=void 0,M=void 0,R=void 0,I=void 0,S=void 0,B=void 0,O=void 0,F=void 0,H=void 0,k=void 0,N=void 0,q=void 0,V=void 0,D=void 0,K=void 0,z=void 0,G=void 0,W=void 0,Q=void 0,X=void 0,ee=void 0,J=void 0,Z=void 0,te=void 0,ae=void 0,re=void 0;f<h;f++){if(v=s[f],A=v*3,m=o[A]*3,w=i[m],x=i[++m],M=i[++m],m=o[A+1]*3,R=i[m],I=i[++m],S=i[++m],m=o[A+2]*3,B=i[m],O=i[++m],F=i[++m],H=R-w,k=I-x,N=S-M,q=B-w,V=O-x,D=F-M,K=k*D-N*V,z=N*q-H*D,G=H*V-k*q,J=b*K+T*z+_*G,J>0)ee=1;else if(J<0)ee=-1,J=-J;else continue;W=y-w,Q=p-x,X=g-M,Z=ee*(b*(Q*D-X*V)+T*(X*q-W*D)+_*(W*V-Q*q)),!(Z<0)&&(te=ee*(b*(k*X-N*Q)+T*(N*W-H*X)+_*(H*Q-k*W)),!(te<0)&&(Z+te>J||(ae=-ee*(W*K+Q*z+X*G),!(ae<0)&&(re=ae/J,r.push(new BVHIntersect([w,x,M,R,I,S,B,O,F],[y+b*re,p+T*re,g+_*re],v))))))}c.node0&&d.push(c.node0),c.node1&&d.push(c.node1)}return r},n}();function clamp$1(n,t,e){return n<t?t:n>e?e:n}function calcExtents(n,t,e,r,i){if(e>=r)return[0,0,0,0,0,0];for(var o=1/0,s=1/0,u=1/0,l=-1/0,d=-1/0,c=-1/0,f=e,h=void 0,v=void 0;f<r;f++)h=n[f]*6,v=t[h],v<o&&(o=v),v=t[h+1],v<s&&(s=v),v=t[h+2],v<u&&(u=v),v=t[h+3],v>l&&(l=v),v=t[h+4],v>d&&(d=v),v=t[h+5],v>c&&(c=v);return[o-i,s-i,u-i,l+i,d+i,c+i]}var EPSILON=1e-6,BVHPoints=function(){function n(t,e){if(this.positionArray=t,e)this.indicesArray=e;else{for(var r=t.length/3,i=new Uint32Array(r),o=0;o<r;o++)i[o]=o;this.indicesArray=i}}return n.prototype.createTree=function(t,e,r){var i=this.positionArray,o=this.indicesArray,s=o.length,u=new Uint32Array(s),l=[],d=0;if(r)for(var c=0;c<s;c+=1)u[c]=c;else{for(var f=o[0]*3,h=i[f],v=i[f+1],A=i[f+2],m=h,y=v,p=A,c=0,g=0,b=void 0,T=void 0,_=void 0;c<s;c+=1,g+=3)u[c]=c,f=o[g]*3,b=i[f],T=i[f+1],_=i[f+2],b<h?h=b:b>m&&(m=b),T<v?v=T:T>y&&(y=T),_<A?A=_:_>p&&(p=_);r=[h,v,A,m,y,p]}var w=new BVHNode(r,0,s,0);l[d++]=w;function x(M){for(var R=M.startIndex,I=M.endIndex,S=M.extents,B=[S[3]-S[0],S[4]-S[1],S[5]-S[2]],O=[0,1,2].sort(function(G,W){return B[W]-B[G]})[0],F=(S[O]+S[O+3])/2,H=R,k=I-1,N=-1,q;H<=k;)N===-1?(q=u[H],i[o[q]*3+O]<F?H++:N=q):(q=u[k],i[o[q]*3+O]>=F||(u[H]=q,u[k]=N,N=-1,H++),k--);if(H>R){var V=S.slice();V[O+3]=F+EPSILON;var D=new BVHNode(V,R,H,M.deepth+1);D.deepth<e&&D.endIndex-D.startIndex>t&&(l[d++]=D),M.node0=D}if(I>H){var K=S.slice();K[O]=F-EPSILON;var z=new BVHNode(K,H,I,M.deepth+1);z.deepth<e&&z.endIndex-z.startIndex>t&&(l[d++]=z),M.node1=z}M.startIndex=0,M.endIndex=0}for(;d;)x(l[--d]);return this.offsetArray=u,this.rootNode=w,l.length=0,this},n.prototype.intersectRay=function(t,e,r,i){for(var o=this.positionArray,s=this.indicesArray,u=this.offsetArray,l=this.rootNode,d=r*r,c=new BVHVector3(1/e.x,1/e.y,1/e.z),f=[l],h;h=f.pop();)if(intersectNodeBox(t,c,h,r)){for(var v=h.startIndex,A=h.endIndex,m=void 0,y=void 0,p=void 0,g=void 0,b=void 0,T=void 0,_=void 0,w=void 0,x=void 0,M=void 0,R=void 0,I=void 0,S=void 0;v<A;v++)m=u[v],y=s[m]*3,p=o[y],g=o[++y],b=o[++y],T=t.x,_=t.y,w=t.z,x=e.x,M=e.y,R=e.z,I=x*(p-T)+M*(g-_)+R*(b-w),I>0&&(T+=x*I,_+=M*I,w+=R*I),x=p-T,M=g-_,R=b-w,I=x*x+M*M+R*R,I<=d&&i.push(new BVHIntersect([p,g,b,p,g,b,p,g,b],[T,_,w],m));h.node0&&f.push(h.node0),h.node1&&f.push(h.node1)}return i},n}(),bvhMeshMap=new Map,bvhPointsMap=new Map,scratchRay=new THREE__namespace.Ray,scratchNormalMatrix=new THREE__namespace.Matrix3,scratchInverseMatrix=new THREE__namespace.Matrix4,scratchIntersectionFaceA$1=new THREE__namespace.Vector3,scratchIntersectionFaceB$1=new THREE__namespace.Vector3,scratchIntersectionFaceC$1=new THREE__namespace.Vector3,scratchIntersectionTriangle=new THREE__namespace.Triangle;function raycastMesh(n,t,e,r){var i,o=n.matrixWorld;scratchInverseMatrix.getInverse(o),scratchRay.copy(e.ray).applyMatrix4(scratchInverseMatrix);for(var s=t.intersectRay(scratchRay.origin,scratchRay.direction,[]),u=n.geometry,l=n.material,d=u.groups,c=u.index,f=0,h=s.length;f<h;f++){var v=s[f],A=v.triangle,m=v.index,y=v.intersectionPoint,p=new THREE__namespace.Vector3(y[0],y[1],y[2]).applyMatrix4(o),g=e.ray.origin.distanceTo(p);if(!(g<e.near||g>e.far)){var b=void 0;if(Array.isArray(l)){if(d)for(var T=m*3,_=0,w=d;_<w.length;_++){var x=w[_];if(T>=x.start&&T-x.start<x.count){b=l[(i=x.materialIndex)!==null&&i!==void 0?i:0];break}}}else b=l;if(b){var M=scratchIntersectionTriangle.set(scratchIntersectionFaceA$1.set(A[0],A[1],A[2]).applyMatrix4(o),scratchIntersectionFaceB$1.set(A[3],A[4],A[5]).applyMatrix4(o),scratchIntersectionFaceC$1.set(A[6],A[7],A[8]).applyMatrix4(o)).getNormal(new THREE__namespace.Vector3),R=m*3,I=new THREE__namespace.Face3(c?c.array[R]:R,c?c.array[R+1]:R+1,c?c.array[R+2]:R+2,M),S=e.ray.direction.dot(M);b.side===THREE__namespace.FrontSide&&S>=0||b.side===THREE__namespace.BackSide&&S<=0||r.push({distance:g,object:n,face:I,point:p,distanceToRay:0,faceIndex:m})}}}}function raycastPoints(n,t,e,r){var i,o,s=n.matrixWorld;scratchNormalMatrix.getNormalMatrix(s),scratchInverseMatrix.getInverse(s);var u=((o=(i=e.params.Points)===null||i===void 0?void 0:i.threshold)!==null&&o!==void 0?o:1)*scratchInverseMatrix.getMaxScaleOnAxis();scratchRay.copy(e.ray).applyMatrix4(scratchInverseMatrix);for(var l=t.intersectRay(scratchRay.origin,scratchRay.direction,u,[]),d=n.geometry,c=d.index,f=d.getAttribute("normal"),h=0,v=l.length;h<v;h++){var A=l[h],m=A.triangle,y=A.index,p=A.intersectionPoint,g=new THREE__namespace.Vector3(p[0],p[1],p[2]).applyMatrix4(s),b=e.ray.origin.distanceTo(g);if(!(b<e.near||b>e.far)){var T=scratchIntersectionFaceA$1.set(m[0],m[1],m[2]).applyMatrix4(s),_=c?c.array[y]:y,w=void 0;f instanceof THREE__namespace.BufferAttribute&&(w=new THREE__namespace.Vector3().fromBufferAttribute(f,_).applyNormalMatrix(scratchNormalMatrix));var x=new THREE__namespace.Face3(_,_,_,w);r.push({distance:b,object:n,face:x,point:g,distanceToRay:g.distanceTo(T),index:y})}}}function generateBvhTreeForMesh(n,t,e){var r;if(t===void 0&&(t=100),e===void 0&&(e=10),n.geometry instanceof THREE__namespace.BufferGeometry){var i=n.geometry.getAttribute("position");if(i instanceof THREE__namespace.BufferAttribute){var o=n.raycast,s=function(h,v){var A=bvhMeshMap.get(this);A?raycastMesh(this,A,h,v):o.call(this,h,v)};n.raycast=s;var u=i.array,l=(r=n.geometry.getIndex())===null||r===void 0?void 0:r.array,d=n.geometry.boundingBox,c=d?[d.min.x,d.min.y,d.min.z,d.max.x,d.max.y,d.max.z]:void 0,f=new BVHMesh(u,l);return f.createTree(t,e,c),bvhMeshMap.set(n,f),function(){bvhMeshMap.delete(n),n.raycast===s&&(n.raycast=o)}}}return function(){}}function generateBvhTreeForPoints(n,t,e){var r;if(t===void 0&&(t=100),e===void 0&&(e=10),n.geometry instanceof THREE__namespace.BufferGeometry){var i=n.geometry.getAttribute("position");if(i instanceof THREE__namespace.BufferAttribute){var o=n.raycast,s=function(h,v){var A=bvhPointsMap.get(this);A?raycastPoints(this,A,h,v):o.call(this,h,v)};n.raycast=s;var u=i.array,l=(r=n.geometry.getIndex())===null||r===void 0?void 0:r.array,d=n.geometry.boundingBox,c=d?[d.min.x,d.min.y,d.min.z,d.max.x,d.max.y,d.max.z]:void 0,f=new BVHPoints(u,l);return f.createTree(t,e,c),bvhPointsMap.set(n,f),function(){bvhPointsMap.delete(n),n.raycast===s&&(n.raycast=o)}}}return function(){}}function generateBvhTree(n,t,e){t===void 0&&(t=100),e===void 0&&(e=10);var r=[];return n.traverse(function(i){if(i instanceof THREE__namespace.Mesh){var o=generateBvhTreeForMesh(i,t,e);r.push(o)}else if(i instanceof THREE__namespace.Points){var o=generateBvhTreeForPoints(i,t,e);r.push(o)}}),function(){for(var i=0,o=r;i<o.length;i++){var s=o[i];s()}}}var scratchIntersectionFaceA=new THREE__namespace.Vector3,scratchIntersectionFaceB=new THREE__namespace.Vector3,scratchIntersectionFaceC=new THREE__namespace.Vector3,TileNode=function(n){__extends(t,n);function t(e,r){var i=n.call(this)||this;i.renderOrder=-4;var o=generateBvhTree(e,200,10);return i.disposers=[r,o],i.add(e),i}return t.prototype.intersectRaycaster=function(e,r,i){var o=this;r===void 0&&(r=!0),i===void 0&&(i=[]);for(var s=this.children.slice(),u;u=s.pop();)if(u.visible){u.raycast(e,i);for(var l=0,d=u.children.length;l<d;l++)s.push(u.children[l])}return i.forEach(function(c){var f,h,v=0;if((c.object instanceof PBMMesh||c.object instanceof PBMPointCloud)&&c.face){var A=Array.isArray(c.object.material)?c.object.material[c.face.materialIndex]:c.object.material;if(A)if(A.defines.USE_VERTEX_FLOOR){var m=(f=c.object.geometry.attributes.position)===null||f===void 0?void 0:f.array,y=(h=c.object.geometry.attributes.floor)===null||h===void 0?void 0:h.array;if(m&&y){var p=scratchIntersectionFaceA.set(m[c.face.a*3],m[c.face.a*3+1],m[c.face.a*3+2]).applyMatrix4(o.matrixWorld),g=scratchIntersectionFaceB.set(m[c.face.b*3],m[c.face.b*3+1],m[c.face.b*3+2]).applyMatrix4(o.matrixWorld),b=scratchIntersectionFaceC.set(m[c.face.c*3],m[c.face.c*3+1],m[c.face.c*3+2]).applyMatrix4(o.matrixWorld),T=c.point.distanceTo(p),_=c.point.distanceTo(g),w=c.point.distanceTo(b);v=Math.round((T*y[c.face.a]+_*y[c.face.b]+w*y[c.face.c])/(T+_+w))}}else v=A.floor}c.floor=v}),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()}},t}(THREE__namespace.Group);function pathJoin(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];var e=[];n=n.map(function(u){return(u??"").trim()}).filter(function(u){return u.length>0&&!/^\/+$/.test(u)});for(var r=0;r<n.length;r++){var i=r===0,o=r===n.length-1,s=n[r];i||(s=s.replace(/^\.\//,"").replace(/^\/+/,"")),o||(s=s.replace(/\/+$/,"")),e.push(s)}return e.join("/")}function isAbsoluteURL(n){return n.indexOf("//")===0||/^[0-9a-z]+\:/i.test(n)}function normalizeTileHeader(n,t){if(n.content&&n.content.uri&&(isAbsoluteURL(n.content.uri)||(n.content.uri=pathJoin(t,n.content.uri))),n.children)for(var e=0,r=n.children;e<r.length;e++){var i=r[e];normalizeTileHeader(i,t)}return n}function normalizeTilesetHeader(n,t){return n.asset.overview&&(isAbsoluteURL(n.asset.overview.imageFile)||(n.asset.overview.imageFile=pathJoin(t,n.asset.overview.imageFile)),isAbsoluteURL(n.asset.overview.worldFile)||(n.asset.overview.worldFile=pathJoin(t,n.asset.overview.worldFile))),normalizeTileHeader(n.root,t),n}function appendSearch(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 SIZEOF_UINT32$1=4;function parseHeader(n,t,e){var r=new DataView(t);if(n.magic=r.getUint32(e,!0),e+=SIZEOF_UINT32$1,n.version=r.getUint32(e,!0),e+=SIZEOF_UINT32$1,n.byteLength=r.getUint32(e,!0),e+=SIZEOF_UINT32$1,n.version!==1)throw new Error("3D Tile Version ".concat(n.version," not supported"));return e}var _a$2,GL_TYPE;(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"})(GL_TYPE||(GL_TYPE={}));var GL_TYPE_TO_ARRAY_TYPE=(_a$2={},_a$2[GL_TYPE.DOUBLE]=Float64Array,_a$2[GL_TYPE.FLOAT]=Float32Array,_a$2[GL_TYPE.UNSIGNED_SHORT]=Uint16Array,_a$2[GL_TYPE.UNSIGNED_INT]=Uint32Array,_a$2[GL_TYPE.UNSIGNED_BYTE]=Uint8Array,_a$2[GL_TYPE.BYTE]=Int8Array,_a$2[GL_TYPE.SHORT]=Int16Array,_a$2[GL_TYPE.INT]=Int32Array,_a$2),NAME_TO_GL_TYPE={DOUBLE:GL_TYPE.DOUBLE,FLOAT:GL_TYPE.FLOAT,UNSIGNED_SHORT:GL_TYPE.UNSIGNED_SHORT,UNSIGNED_INT:GL_TYPE.UNSIGNED_INT,UNSIGNED_BYTE:GL_TYPE.UNSIGNED_BYTE,BYTE:GL_TYPE.BYTE,SHORT:GL_TYPE.SHORT,INT:GL_TYPE.INT};function getArrayType(n){var t=GL_TYPE_TO_ARRAY_TYPE[n];if(!t)throw new Error("Failed to convert GL type");return t}function getByteSize(n){var t=getArrayType(n);return t.BYTES_PER_ELEMENT}function createTypedArray(n,t,e,r){e===void 0&&(e=0);var i=getArrayType(n);if(e%getByteSize(n)!==0){var o=r?t.slice(e,e+r*getByteSize(n)):t.slice(e);return new i(o)}else return new i(t,e,r??(t.byteLength-e)/getByteSize(n))}function glTypeFromName(n){var t=NAME_TO_GL_TYPE[n];if(!t)throw new Error("Failed to convert GL type");return t}var FeatureTable=function(){function n(t,e){this.featuresLength=0,this.cachedTypedArrays={},this.json=t,this.buffer=e;var r=this.getGlobalProperty("POINTS_LENGTH",GL_TYPE.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 o=getArrayType(e);return new o([i])}else if(Array.isArray(i)){var o=getArrayType(e);return new o(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=glTypeFromName(i.componentType)),this.getTypedArrayFromBinary(t,e,r,this.featuresLength,i.byteOffset)):this.getTypedArrayFromArray(t,e,i)},n.prototype.getProperty=function(t,e,r,i,o){var s=this.json[t];if(!s)return null;var u=this.getPropertyArray(t,e,r);if(r===1)return o[0]=u[i],o;for(var l=0;l<r;++l)o[l]=u[r*i+l];return o},n.prototype.getTypedArrayFromBinary=function(t,e,r,i,o){var s=this.cachedTypedArrays,u=s[t];return u||(u=createTypedArray(e,this.buffer.buffer,this.buffer.byteOffset+o,i*r),s[t]=u),u},n.prototype.getTypedArrayFromArray=function(t,e,r){var i=this.cachedTypedArrays,o=i[t];return o||(o=createTypedArray(e,r),i[t]=o),o},n}(),SIZEOF_UINT32=4,DEPRECATION_WARNING="b3dm tile in legacy format.";function getStringFromArrayBuffer(n,t,e){var r=new TextDecoder("utf8"),i=new Uint8Array(n,t,e),o=r.decode(i);return o}function parseTable(n,t,e){return e=parseTablesHeader(n,t,e),e=parseFeatureTable(n,t,e),e=parseBatchTable(n,t,e),e}function parseTablesHeader(n,t,e){var r=new DataView(t),i=0;n.header=n.header||{};var o=r.getUint32(e,!0);e+=SIZEOF_UINT32;var s=r.getUint32(e,!0);e+=SIZEOF_UINT32;var u=r.getUint32(e,!0);e+=SIZEOF_UINT32;var l=r.getUint32(e,!0);return e+=SIZEOF_UINT32,u>=570425344?(e-=SIZEOF_UINT32*2,i=o,u=s,l=0,o=0,s=0,console.warn(DEPRECATION_WARNING)):l>=570425344&&(e-=SIZEOF_UINT32,i=u,u=o,l=s,o=0,s=0,console.warn(DEPRECATION_WARNING)),n.header.featureTableJsonByteLength=o,n.header.featureTableBinaryByteLength=s,n.header.batchTableJsonByteLength=u,n.header.batchTableBinaryByteLength=l,n.header.batchLength=i,e}function parseFeatureTable(n,t,e){var r=n.header||{},i=r.featureTableJsonByteLength,o=r.featureTableBinaryByteLength,s=r.batchLength;if(n.featureTableJson={BATCH_LENGTH:s||0},i&&i>0){var u=getStringFromArrayBuffer(t,e,i);n.featureTableJson=JSON.parse(u)}e+=i||0,n.featureTableBinary=new Uint8Array(t,e,o),e+=o||0,n.rtcCenter=new THREE__namespace.Vector3;var l=new FeatureTable(n.featureTableJson,n.featureTableBinary);if(Array.isArray(l.json.RTC_CENTER))n.rtcCenter.fromArray(l.json.RTC_CENTER);else{var d=l.getGlobalProperty("RTC_CENTER",GL_TYPE.FLOAT,3);d&&n.rtcCenter.fromArray(d)}return e}function parseBatchTable(n,t,e){var r=n.header||{},i=r.batchTableJsonByteLength,o=r.batchTableBinaryByteLength;if(i&&i>0){var s=getStringFromArrayBuffer(t,e,i);n.batchTableJson=JSON.parse(s),e+=i,o&&o>0&&(n.batchTableBinary=new Uint8Array(t,e,o),n.batchTableBinary=new Uint8Array(n.batchTableBinary),e+=o)}return e}function sliceArrayBuffer(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 parseGlTFArrayBuffer(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=sliceArrayBuffer(t,e,r),n.byteLength}function decodeText(n){if(typeof TextDecoder<"u")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{return t}}var WEBGL_CONSTANTS={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},WEBGL_COMPONENT_TYPES={5120:Int8Array,5121:Uint8Array,5122:Int16Array,5123:Uint16Array,5125:Uint32Array,5126:Float32Array},WEBGL_FILTERS={9728:THREE__namespace.NearestFilter,9729:THREE__namespace.LinearFilter,9984:THREE__namespace.NearestMipmapNearestFilter,9985:THREE__namespace.LinearMipmapNearestFilter,9986:THREE__namespace.NearestMipmapLinearFilter,9987:THREE__namespace.LinearMipmapLinearFilter},WEBGL_WRAPPINGS={33071:THREE__namespace.ClampToEdgeWrapping,33648:THREE__namespace.MirroredRepeatWrapping,10497:THREE__namespace.RepeatWrapping},WEBGL_TYPE_SIZES={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},ATTRIBUTES={POSITION:"position",NORMAL:"normal",TANGENT:"tangent",TEXCOORD_0:"uv",TEXCOORD_1:"uv2",COLOR_0:"color",WEIGHTS_0:"skinWeight",JOINTS_0:"skinIndex"},PATH_PROPERTIES={scale:"scale",translation:"position",rotation:"quaternion",weights:"morphTargetInfluences"},INTERPOLATION={CUBICSPLINE:void 0,LINEAR:THREE__namespace.InterpolateLinear,STEP:THREE__namespace.InterpolateDiscrete},ALPHA_MODES={OPAQUE:"OPAQUE",MASK:"MASK",BLEND:"BLEND"};function values(n){var t=[];for(var e in n)t.push(n[e]);return t}var Parser=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){t.dispose()}),this.disposeSet.clear()},n.prototype.markDefs=function(){for(var t=this.json.nodes||[],e=this.json.skins||[],r=this.json.meshes||[],i=0,o=e.length;i<o;i++)for(var s=e[i].joints,u=0,l=s.length;u<l;u++)t[s[u]].isBone=!0;for(var d=0,c=t.length;d<c;d++){var f=t[d];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.dispose(),this.markDefs();for(var i=0,o=values(r);i<o.length;i++){var s=o[i];s.markDefs(this)}return Promise.all(values(r).map(function(u){return u.prepare(t)})).then(function(){var u,l,d;return Promise.all([Promise.all(((u=e.scenes)!==null&&u!==void 0?u:[]).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(((d=e.cameras)!==null&&d!==void 0?d:[]).map(function(c,f){return t.loadCamera(f)}))])}).then(function(u){var l=u[0],d=u[1],c=u[2],f={json:t.json,scene:l[e.scene||0],scenes:l,animations:d,cameras:c,dispose:function(){return t.dispose()}};return Promise.all(values(r).map(function(h){return h.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,o=0,s=values(this.extensions);o<s.length;o++){var u=s[o];if(i=u.loadCamera(t,this),i)break}if(!i){var l=void 0,d=this.json.cameras[t],c=d[d.type];c?d.type==="perspective"?l=new THREE__namespace.PerspectiveCamera(THREE__namespace.MathUtils.radToDeg(c.yfov),c.aspectRatio||1,c.znear||1,c.zfar||2e6):d.type==="orthographic"?l=new THREE__namespace.OrthographicCamera(-c.xmag,c.xmag,c.ymag,-c.ymag,c.znear,c.zfar):(console.warn("glTF: Invalid camera type ".concat(d.type,".")),l=new THREE__namespace.Camera):(console.warn("glTF: Missing camera parameters."),l=new THREE__namespace.Camera),d.name&&(l.name=this.createUniqueName(d.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,o=this.json.skins[t],s={joints:o.joints};return o.inverseBindMatrices===void 0?i=Promise.resolve(s):i=this.loadAccessor(o.inverseBindMatrices).then(function(u){return u&&(s.inverseBindMatrices=u),s}),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,o=0,s=values(this.extensions);o<s.length;o++){var u=s[o];if(i=u.loadAnimation(t,this),i)break}if(!i){for(var l=this.json,d=l.animations[t],c=[],f=[],h=[],v=[],A=[],m=0,y=d.channels.length;m<y;m++){var p=d.channels[m],g=d.samplers[p.sampler],b=p.target,T=b.node!==void 0?b.node:b.id,_=d.parameters!==void 0?d.parameters[g.input]:g.input,w=d.parameters!==void 0?d.parameters[g.output]:g.output;c.push(this.loadNode(T)),f.push(this.loadAccessor(_)),h.push(this.loadAccessor(w)),v.push(g),A.push(b)}i=Promise.all([Promise.all(c),Promise.all(f),Promise.all(h),Promise.all(v),Promise.all(A)]).then(function(x){for(var M=x[0],R=x[1],I=x[2],S=x[3],B=x[4],O=[],F=function(q,V){var D=M[q],K=R[q],z=I[q],G=S[q],W=B[q];if(D===void 0)return"continue";D.updateMatrix(),D.matrixAutoUpdate=!0;var Q=void 0;switch(PATH_PROPERTIES[W.path]){case PATH_PROPERTIES.weights:Q=THREE__namespace.NumberKeyframeTrack;break;case PATH_PROPERTIES.rotation:Q=THREE__namespace.QuaternionKeyframeTrack;break;case PATH_PROPERTIES.position:case PATH_PROPERTIES.scale:default:Q=THREE__namespace.VectorKeyframeTrack;break}var X=D.name?D.name:D.uuid,ee=G.interpolation!==void 0?INTERPOLATION[G.interpolation]:THREE__namespace.InterpolateLinear,J=[];PATH_PROPERTIES[W.path]===PATH_PROPERTIES.weights?D.traverse(function(se){se.morphTargetInfluences&&J.push(se.name?se.name:se.uuid)}):J.push(X);var Z=z.array;if(z.normalized){for(var te=getNormalizedComponentScale(Z.constructor),ae=new Float32Array(Z.length),re=0,ie=Z.length;re<ie;re++)ae[re]=Z[re]*te;Z=ae}for(var re=0,ie=J.length;re<ie;re++){var de=new Q(J[re]+"."+PATH_PROPERTIES[W.path],K.array,Z,ee);O.push(de)}},H=0,k=M.length;H<k;H++)F(H);var N=d.name?d.name:"animation_"+t;return new THREE__namespace.AnimationClip(N,void 0,O)})}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 o=null,s=0,u=values(this.extensions);s<u.length;s++){var l=u[s];if(o=l.loadBuffer(t,this),o)break}if(!o){var d=this.json.buffers[t];o=this.options.fetcher.ajax(this.resolveResouce(d.uri),{responseType:"arraybuffer"}).then(function(c){return c.body})}return this.cache.set(r,o),o},n.prototype.loadBufferView=function(t){var e="bufferView:"+t,r=this.cache.get(e);if(r)return r;for(var i=null,o=0,s=values(this.extensions);o<s.length;o++){var u=s[o];if(i=u.loadBufferView(t,this),i)break}if(!i){var l=this.json.bufferViews[t];i=this.loadBuffer(l.buffer).then(function(d){var c=l.byteLength||0,f=l.byteOffset||0;return d.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 o=null;if(!o){var s=this.json.accessors[t];if(s.bufferView===void 0&&s.sparse===void 0)o=Promise.resolve(null);else{var u=[];s.bufferView!==void 0?u.push(this.loadBufferView(s.bufferView)):u.push(Promise.resolve(null)),s.sparse!==void 0&&(u.push(this.loadBufferView(s.sparse.indices.bufferView)),u.push(this.loadBufferView(s.sparse.values.bufferView))),o=Promise.all(u).then(function(l){var d=l[0],c=WEBGL_TYPE_SIZES[s.type],f=WEBGL_COMPONENT_TYPES[s.componentType],h=f.BYTES_PER_ELEMENT,v=h*c,A=s.byteOffset||0,m=s.bufferView!==void 0?e.json.bufferViews[s.bufferView].byteStride:void 0,y=s.normalized===!0,p,g;if(m&&m!==v){var b=Math.floor(A/m),T="InterleavedBuffer:"+s.bufferView+":"+s.componentType+":"+b+":"+s.count,_=e.cache.get(T);_||(p=new f(d,b*m,s.count*m/h),_=new THREE__namespace.InterleavedBuffer(p,m/h),e.cache.set(T,_)),g=new THREE__namespace.InterleavedBufferAttribute(_,c,A%m/h,y)}else d===null?p=new f(s.count*c):p=new f(d,A,s.count*c),g=new THREE__namespace.BufferAttribute(p,c,y);if(s.sparse!==void 0){var w=WEBGL_TYPE_SIZES.SCALAR,x=WEBGL_COMPONENT_TYPES[s.sparse.indices.componentType],M=s.sparse.indices.byteOffset||0,R=s.sparse.values.byteOffset||0,I=new x(l[1],M,s.sparse.count*w),S=new f(l[2],R,s.sparse.count*c);d!==null&&(g=new THREE__namespace.BufferAttribute(g.array.slice(),g.itemSize,g.normalized));for(var B=0,O=I.length;B<O;B++){var F=I[B];if(g.setX(F,S[B*c]),c>=2&&g.setY(F,S[B*c+1]),c>=3&&g.setZ(F,S[B*c+2]),c>=4&&g.setW(F,S[B*c+3]),c>=5)throw new Error("THREE.GLTFLoader: Unsupported itemSize in sparse BufferAttribute.")}}return g})}}return this.cache.set(r,o),o},n.prototype.createPrimitiveKey=function(t){for(var e=0,r=values(this.extensions);e<r.length;e++){var i=r[e],o=i.createPrimitiveKey(t,this);if(o)return o}for(var s="",u=Object.keys(t.attributes).sort(),l=0,d=u.length;l<d;l++)s+=u[l]+":"+t.attributes[u[l]]+";";return t.indices+":"+s+":"+t.mode},n.prototype.loadGeometry=function(t){var e=this,r="geometry:"+this.createPrimitiveKey(t),i=this.cache.get(r);if(i)return i;for(var o=null,s=0,u=values(this.extensions);s<u.length;s++){var l=u[s];if(o=l.loadGeometry(t,this),o)break}return o||(o=this.addGeometryPrimitiveAttributes(new THREE__namespace.BufferGeometry,t)),o=o.then(function(d){return e.disposeSet.add(d),d}),this.cache.set(r,o),o},n.prototype.loadImage=function(t){var e="image:"+t,r=this.cache.get(e);if(r)return r;for(var i=null,o=0,s=values(this.extensions);o<s.length;o++){var u=s[o];if(i=u.loadImage(t,this),i)break}if(!i){var l=this.json.images[t];if(l.bufferView)i=this.loadBufferView(l.bufferView).then(function(c){var f=new Blob([c],{type:l.mimeType});return createImageBitmapLike(f)});else if(l.uri){var d=this.resolveResouce(l.uri);i=this.options.fetcher.loadImage(d,{},void 0,void 0,void 0,createImageBitmapLikeImage()).then(function(c){return c.body})}else throw new Error("glTF: Invalid image defs.")}return this.cache.set(e,i),i},n.prototype.loadMaterialAsMeshStandardMaterial=function(t){var e=this,r=[],i=new THREE__namespace.MeshStandardMaterial;if(i.color=new THREE__namespace.Color(1,1,1),i.opacity=1,Object.keys(t.attributes).filter(function(c){return ATTRIBUTES[c]==="color"}).length>0&&(i.vertexColors=!0),Object.keys(t.attributes).filter(function(c){return ATTRIBUTES[c]==="normal"}).length===0&&(i.flatShading=!0),Object.keys(t.attributes).filter(function(c){return ATTRIBUTES[c]==="tangent"}).length===0&&(i.normalScale&&(i.normalScale.y*=-1),i.clearcoatNormalScale&&(i.clearcoatNormalScale.y*=-1)),t.material!==void 0){var o=this.json.materials[t.material];o.name&&(i.name=o.name);var s=o.pbrMetallicRoughness||{};if(Array.isArray(s.baseColorFactor)){var u=s.baseColorFactor;i.color.fromArray(u),i.opacity=u[3]}s.baseColorTexture!==void 0&&r.push(this.createMaterialTexture(s.baseColorTexture).then(function(c){c.encoding=THREE__namespace.sRGBEncoding,i.map=c,e.disposeSet.add(c)})),i.metalness=s.metallicFactor!==void 0?s.metallicFactor:1,i.roughness=s.roughnessFactor!==void 0?s.roughnessFactor:1,s.metallicRoughnessTexture!==void 0&&r.push(this.createMaterialTexture(s.metallicRoughnessTexture).then(function(c){c.encoding=THREE__namespace.sRGBEncoding,i.metalnessMap=c,i.roughnessMap=c,e.disposeSet.add(c)})),o.doubleSided===!0&&(i.side=THREE__namespace.DoubleSide);var l=o.alphaMode||ALPHA_MODES.OPAQUE;if(l===ALPHA_MODES.BLEND?(i.transparent=!0,i.depthWrite=!1):(i.transparent=!1,l===ALPHA_MODES.MASK&&(i.alphaTest=o.alphaCutoff!==void 0?o.alphaCutoff:.5)),o.normalTexture!==void 0&&(r.push(this.createMaterialTexture(o.normalTexture).then(function(c){i.normalMap=c,e.disposeSet.add(c)})),i.normalScale=new THREE__namespace.Vector2(1,1),o.normalTexture.scale!==void 0)){var d=o.normalTexture.scale;i.normalScale.set(d,d)}o.occlusionTexture!==void 0&&(r.push(this.createMaterialTexture(o.occlusionTexture).then(function(c){i.aoMap=c,e.disposeSet.add(c)})),o.occlusionTexture.strength!==void 0&&(i.aoMapIntensity=o.occlusionTexture.strength)),o.emissiveFactor!==void 0&&(i.emissive=new THREE__namespace.Color().fromArray(o.emissiveFactor)),o.emissiveTexture!==void 0&&r.push(this.createMaterialTexture(o.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 THREE__namespace.LineBasicMaterial;if(r.color=new THREE__namespace.Color(1,1,1),r.opacity=1,Object.keys(t.attributes).filter(function(l){return ATTRIBUTES[l]==="color"}).length>0&&(r.vertexColors=!0),Object.keys(t.attributes).filter(function(l){return ATTRIBUTES[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 o=i.pbrMetallicRoughness||{};if(Array.isArray(o.baseColorFactor)){var s=o.baseColorFactor;r.color.fromArray(s),r.opacity=s[3]}i.doubleSided===!0&&(r.side=THREE__namespace.DoubleSide);var u=i.alphaMode||ALPHA_MODES.OPAQUE;u===ALPHA_MODES.BLEND?(r.transparent=!0,r.depthWrite=!1):(r.transparent=!1,u===ALPHA_MODES.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 THREE__namespace.PointsMaterial;if(i.color=new THREE__namespace.Color(1,1,1),i.opacity=1,i.sizeAttenuation=!1,Object.keys(t.attributes).filter(function(d){return ATTRIBUTES[d]==="color"}).length>0&&(i.vertexColors=!0),Object.keys(t.attributes).filter(function(d){return ATTRIBUTES[d]==="tangent"}).length===0&&(i.normalScale&&(i.normalScale.y*=-1),i.clearcoatNormalScale&&(i.clearcoatNormalScale.y*=-1)),t.material!==void 0){var o=this.json.materials[t.material];o.name&&(i.name=o.name);var s=o.pbrMetallicRoughness||{};if(Array.isArray(s.baseColorFactor)){var u=s.baseColorFactor;i.color.fromArray(u),i.opacity=u[3]}s.baseColorTexture!==void 0&&r.push(this.createMaterialTexture(s.baseColorTexture).then(function(d){d.encoding=THREE__namespace.sRGBEncoding,i.map=d,e.disposeSet.add(d)})),o.doubleSided===!0&&(i.side=THREE__namespace.DoubleSide);var l=o.alphaMode||ALPHA_MODES.OPAQUE;l===ALPHA_MODES.BLEND?(i.transparent=!0,i.depthWrite=!1):(i.transparent=!1,l===ALPHA_MODES.MASK&&(i.alphaTest=o.alphaCutoff!==void 0?o.alphaCutoff:.5))}return this.disposeSet.add(i),Promise.all(r).then(function(){return i})},n.prototype.loadMaterial=function(t){var e=this,r,i=(r=t.mode)!==null&&r!==void 0?r:WEBGL_CONSTANTS.TRIANGLES,o="material:"+this.createPrimitiveKey(t),s=this.cache.get(o);if(s)return s;for(var u=null,l=0,d=values(this.extensions);l<d.length;l++){var c=d[l];if(u=c.loadMaterial(t,this),u)break}if(i===WEBGL_CONSTANTS.TRIANGLES||i===WEBGL_CONSTANTS.TRIANGLE_STRIP||i===WEBGL_CONSTANTS.TRIANGLE_FAN)u=this.loadMaterialAsMeshStandardMaterial(t);else if(i===WEBGL_CONSTANTS.LINES||i===WEBGL_CONSTANTS.LINE_STRIP||i===WEBGL_CONSTANTS.LINE_LOOP)u=this.loadMaterialAsLineBasicMaterial(t);else if(i===WEBGL_CONSTANTS.POINTS)u=this.loadMaterialAsPointsMaterial(t);else throw new Error("glTF: Primitive mode unsupported: "+i);return u=u.then(function(f){return e.disposeSet.add(f),f}),this.cache.set(o,u),u},n.prototype.loadTexture=function(t){var e=this,r="texture:"+t,i=this.cache.get(r);if(i)return i;for(var o=null,s=0,u=values(this.extensions);s<u.length;s++){var l=u[s];if(o=l.loadTexture(t,this),o)break}if(!o){var d=this.json.textures[t];o=this.loadImage(d.source).then(function(c){var f=new THREE__namespace.Texture(c);f.needsUpdate=!0,f.flipY=!1,d.name&&(f.name=d.name);var h=e.json.samplers||{},v=h[d.sampler]||{};f.magFilter=WEBGL_FILTERS[v.magFilter]||THREE__namespace.LinearFilter,f.minFilter=WEBGL_FILTERS[v.minFilter]||THREE__namespace.LinearMipmapLinearFilter,f.wrapS=WEBGL_WRAPPINGS[v.wrapS]||THREE__namespace.RepeatWrapping,f.wrapT=WEBGL_WRAPPINGS[v.wrapT]||THREE__namespace.RepeatWrapping;var A=f.dispose;return f.dispose=function(){return f.dispose=A,c.close(),A.call(this)},f})}return o=o.then(function(c){return e.disposeSet.add(c),c}),this.cache.set(r,o),o},n.prototype.loadMesh=function(t){for(var e=this,r=null,i=0,o=values(this.extensions);i<o.length;i++){var s=o[i];if(r=s.loadMesh(t,this),r)break}if(!r){var u=this.json.meshes[t],l=u.primitives,d=Promise.all(l.map(function(f){return e.loadGeometry(f)})),c=Promise.all(l.map(function(f){return e.loadMaterial(f)}));r=Promise.all([d,c]).then(function(f){for(var h=f[0],v=f[1],A=[],m=0;m<l.length;m++){var y=l[m],p=h[m],g=v[m],b=y.mode||WEBGL_CONSTANTS.TRIANGLES,T=void 0;if(b===WEBGL_CONSTANTS.TRIANGLES||b===WEBGL_CONSTANTS.TRIANGLE_STRIP||b===WEBGL_CONSTANTS.TRIANGLE_FAN)if(b===WEBGL_CONSTANTS.TRIANGLE_STRIP?p=e.toGeometryTrianglesDrawMode(p,THREE__namespace.TriangleStripDrawMode):b===WEBGL_CONSTANTS.TRIANGLE_FAN&&(p=e.toGeometryTrianglesDrawMode(p,THREE__namespace.TriangleFanDrawMode)),u.isSkinnedMesh){var _=new THREE__namespace.SkinnedMesh(p,g);p.attributes.skinWeight.normalized||_.normalizeSkinWeights(),T=_}else T=new THREE__namespace.Mesh(p,g);else if(b===WEBGL_CONSTANTS.POINTS)T=new THREE__namespace.Points(p,g);else if(b===WEBGL_CONSTANTS.LINES)T=new THREE__namespace.LineSegments(p,g);else if(b===WEBGL_CONSTANTS.LINE_STRIP)T=new THREE__namespace.Line(p,g);else if(b===WEBGL_CONSTANTS.LINE_LOOP)T=new THREE__namespace.LineLoop(p,g);else throw new Error("glTF: Primitive mode unsupported: "+b);if(Object.keys(p.morphAttributes).length>0){if(u.weights!==void 0)for(var w=0,x=u.weights.length;w<x;w++)T.morphTargetInfluences[w]=u.weights[w];if(u.extras&&Array.isArray(u.extras.targetNames)){var M=u.extras.targetNames;if(T.morphTargetInfluences.length===M.length){T.morphTargetDictionary={};for(var w=0,x=M.length;w<x;w++)T.morphTargetDictionary[M[w]]=w}else console.warn("glTF: Invalid extras.targetNames length. Ignoring names.")}}T.name=e.createUniqueName(u.name||"mesh_"+t),A.push(T)}if(A.length===1)return A[0];for(var R=new THREE__namespace.Group,I=0,S=A;I<S.length;I++){var T=S[I];R.add(T)}return R})}return r},n.prototype.loadNodeAttachments=function(t){for(var e=[],r=0,i=values(this.extensions);r<i.length;r++){var o=i[r],s=o.loadNodeAttachments(t,this);s&&e.push(s)}return e},n.prototype.loadNode=function(t){var e="node:"+t,r=this.cache.get(e);if(r)return r;var i=this.json,o=i.nodes[t],s=o.name?this.createUniqueName(o.name):"",u=[];o.mesh!==void 0&&u.push(this.loadMesh(o.mesh).then(function(h){if(o.weights!==void 0){var v=o.weights;h.traverse(function(A){if(A instanceof THREE__namespace.Mesh||A instanceof THREE__namespace.Line||A instanceof THREE__namespace.Points)for(var m=0,y=v.length;m<y;m++)A.morphTargetInfluences[m]=v[m]})}return h})),o.camera!==void 0&&u.push(this.loadCamera(o.camera));for(var l=this.loadNodeAttachments(t),d=0,c=l;d<c.length;d++){var f=c[d];u.push(f)}return Promise.all(u).then(function(h){var v;if(o.isBone===!0?v=new THREE__namespace.Bone:h.length>1?v=new THREE__namespace.Group:h.length===1?v=h[0]:v=new THREE__namespace.Object3D,v!==h[0])for(var A=0,m=h.length;A<m;A++)v.add(h[A]);if(o.name&&(v.name=s),o.matrix!==void 0){var y=new THREE__namespace.Matrix4;y.fromArray(o.matrix),v.applyMatrix4(y)}else o.translation!==void 0&&v.position.fromArray(o.translation),o.rotation!==void 0&&v.quaternion.fromArray(o.rotation),o.scale!==void 0&&v.scale.fromArray(o.scale);return v})},n.prototype.loadScene=function(t){var e=this.json,r=e.scenes[t],i=new THREE__namespace.Group;r.name&&(i.name=this.createUniqueName(r.name));for(var o=r.nodes||[],s=[],u=0,l=o.length;u<l;u++)s.push(this.buildNodeHierarchy(o[u],i));return Promise.all(s).then(function(){return i})},n.prototype.createMaterialTexture=function(t){var e=this;return this.loadTexture(t.index).then(function(r){for(var i=0,o=values(e.extensions);i<o.length;i++){var s=o[i],u=s.extendTexture(r,t,e);u&&(r=u)}return r})},n.prototype.addGeometryPrimitiveAttributes=function(t,e){var r=this,i=e.attributes,o=[],s=function(_){var w=ATTRIBUTES[_]||_.toLowerCase();if(w in t.attributes)return"continue";o.push(u.loadAccessor(i[_]).then(function(x){x&&t.setAttribute(w,x)}))},u=this;for(var l in i)s(l);e.indices!==void 0&&!t.index&&o.push(this.loadAccessor(e.indices).then(function(_){_&&t.setIndex(_)}));var d=new THREE__namespace.Box3;if(i.POSITION!==void 0){var c=this.json.accessors[i.POSITION],f=c.min,h=c.max;if(f!==void 0&&h!==void 0){if(d.set(new THREE__namespace.Vector3(f[0],f[1],f[2]),new THREE__namespace.Vector3(h[0],h[1],h[2])),c.normalized){var v=getNormalizedComponentScale(WEBGL_COMPONENT_TYPES[c.componentType]);d.min.multiplyScalar(v),d.max.multiplyScalar(v)}}else console.warn("glTF: Missing min/max properties for accessor POSITION.")}var A=e.targets;if(A!==void 0){for(var m=new THREE__namespace.Vector3,y=new THREE__namespace.Vector3,p=0,g=A.length;p<g;p++){var b=A[p];if(b.POSITION!==void 0){var c=this.json.accessors[b.POSITION],f=c.min,h=c.max;if(f!==void 0&&h!==void 0){if(y.setX(Math.max(Math.abs(f[0]),Math.abs(h[0]))),y.setY(Math.max(Math.abs(f[1]),Math.abs(h[1]))),y.setZ(Math.max(Math.abs(f[2]),Math.abs(h[2]))),c.normalized){var v=getNormalizedComponentScale(WEBGL_COMPONENT_TYPES[c.componentType]);y.multiplyScalar(v)}m.max(y)}else console.warn("glTF: Missing min/max properties for accessor POSITION.")}}d.expandByVector(m)}t.boundingBox=d;var T=new THREE__namespace.Sphere;return d.getCenter(T.center),T.radius=d.min.distanceTo(d.max)/2,t.boundingSphere=T,Promise.all(o).then(function(){if(t.attributes.uv&&!t.attributes.uv2&&r.options.copyUV2&&t.setAttribute("uv2",t.attributes.uv),e.targets){for(var _=!1,w=!1,x=0,M=e.targets.length;x<M;x++){var R=e.targets[x];if(R.POSITION!==void 0&&(_=!0),R.NORMAL!==void 0&&(w=!0),_&&w)break}if(!_&&!w)return t;var I=[];t.morphTargetsRelative=!0;for(var S=function(B,O){var F=e.targets[B];_?I.push(r.loadAccessor(F.POSITION).then(function(H){H&&(t.morphAttributes.position[B]=H)})):t.morphAttributes.position[B]=t.attributes.position,w?I.push(r.loadAccessor(F.NORMAL).then(function(H){H&&(t.morphAttributes.normal[B]=H)})):t.morphAttributes.normal[B]=t.attributes.normal},x=0,M=e.targets.length;x<M;x++)S(x,M);return Promise.all(I).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(o){if(i.skin===void 0)return o;var s;return r.loadSkin(i.skin).then(function(u){s=u;for(var l=[],d=0,c=s.joints.length;d<c;d++)l.push(r.loadNode(s.joints[d]));return Promise.all(l)}).then(function(u){return o.traverse(function(l){if(l instanceof THREE__namespace.SkinnedMesh){for(var d=[],c=[],f=0,h=u.length;f<h;f++){var v=u[f];if(v instanceof THREE__namespace.Bone){d.push(v);var A=new THREE__namespace.Matrix4;s.inverseBindMatrices!==void 0&&A.fromArray(s.inverseBindMatrices.array,f*16),c.push(A)}else console.warn('glTF: Joint "%s" could not be found.',s.joints[f])}l.bind(new THREE__namespace.Skeleton(d,c),l.matrixWorld)}}),o})}).then(function(o){e.add(o);var s=[];if(i.children)for(var u=i.children,l=0,d=u.length;l<d;l++){var c=u[l];s.push(r.buildNodeHierarchy(c,o))}return Promise.all(s).then(function(){return o})})},n.prototype.createUniqueName=function(t){for(var e=THREE__namespace.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 pathJoin(this.options.resourcePath,appendSearch(t,this.options.search))},n.prototype.toGeometryTrianglesDrawMode=function(t,e){var r=t.getIndex();if(r===null){var i=[],o=t.getAttribute("position");if(o!==void 0){for(var s=0;s<o.count;s++)i.push(s);t.setIndex(i),r=t.getIndex()}}if(r===null)return console.error("glTF: Undefined position attribute. Processing not possible."),t;var u=r.count-2,l=[];if(e===THREE__namespace.TriangleFanDrawMode)for(var s=1;s<=u;s++)l.push(r.getX(0)),l.push(r.getX(s)),l.push(r.getX(s+1));else for(var s=0;s<u;s++)s%2===0?(l.push(r.getX(s)),l.push(r.getX(s+1)),l.push(r.getX(s+2))):(l.push(r.getX(s+2)),l.push(r.getX(s+1)),l.push(r.getX(s)));l.length/3!==u&&console.error("glTF: Unable to generate correct amount of triangles.");var d=t.clone();return d.setIndex(l),d},n}();function getNormalizedComponentScale(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 BaseExtension=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}(),KHR_binary_glTF=function(n){__extends(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 decodeText(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),o=0,s=null,u=null;o<i.byteLength;){var l=i.getUint32(o,!0);o+=4;var d=i.getUint32(o,!0);if(o+=4,d===t.CHUNK_TYPES.JSON){var c=new Uint8Array(e,t.HEADER_LENGTH+o,l);s=decodeText(c)}else if(d===t.CHUNK_TYPES.BIN){var f=t.HEADER_LENGTH+o;u=e.slice(f,f+l)}o+=l}if(s===null)throw new Error("glTF:KHR_binary_glTF: JSON content not found.");this.content=s,this.body=u},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}(BaseExtension),defaultDecoderPath="https://vr-public.realsee-cdn.cn/release/static/image/release/five/resource/draco/1.5.6/",defaultAttributeIDs={position:"POSITION",normal:"NORMAL",color:"COLOR",uv:"TEX_COORD"},defaultAttributeTypes={position:"Float32Array",normal:"Float32Array",color:"Float32Array",uv:"Float32Array"},Draco=function(){function n(){this.decoderPath=defaultDecoderPath,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 o={attributeIDs:r||defaultAttributeIDs,attributeTypes:i||defaultAttributeTypes,useUniqueIDs:!!r};this.decodeGeometry(t,o).then(e)},n.prototype.decodeGeometry=function(t,e){var r=this;e===void 0&&(e={attributeIDs:defaultAttributeIDs,attributeTypes:defaultAttributeTypes,useUniqueIDs:!1});for(var i in e.attributeTypes){var o=e.attributeTypes[i];o.BYTES_PER_ELEMENT!==void 0&&(e.attributeTypes[i]=o.name)}var s,u=this.workerNextTaskID++,l=t.byteLength,d=this._getWorker(u,l).then(function(c){return s=c,new Promise(function(f,h){s._callbacks[u]={resolve:f,reject:h},s.postMessage({type:"decode",id:u,taskConfig:e,buffer:t},[t])})}).then(function(c){return r._createGeometry(c.geometry)});return d.catch(function(){return!0}).then(function(){s&&u&&r._releaseTask(s,u)}),d},n.prototype._createGeometry=function(t){var e=new THREE__namespace.BufferGeometry;t.index&&e.setIndex(new THREE__namespace.BufferAttribute(t.index.array,1));for(var r=0;r<t.attributes.length;r++){var i=t.attributes[r],o=i.name,s=i.array,u=i.itemSize;e.setAttribute(o,new THREE__namespace.BufferAttribute(s,u))}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=ajax(this.decoderPath+"draco_decoder.js",{responseType:"text"}).then(function(o){return o.body});this.decoderPending=r.then(function(o){var s=["/* draco decoder */",o,"","/* worker */",DRACOWorker].join(`
417
+ `,cacheMaterials=[];function getMaterial(){var n=cacheMaterials.pop();return n||new THREE__namespace.ShaderMaterial({uniforms:{map:{value:null},flipY:{value:0}},vertexShader:PLANE_VERTEX_SHADER,fragmentShader:PLANE_FRAGMENT_SHADER,depthTest:!1,depthWrite:!1,stencilWrite:!1,blending:THREE__namespace.NoBlending,lights:!1,toneMapped:!1,fog:!1})}function releaseMaterial(n){n.uniforms.map.value=null,cacheMaterials.push(n)}function renderTexturesToCubeRenderTarget(n,t,e){var r=new THREE__namespace.Scene;r.matrixAutoUpdate=!1;var i=new THREE__namespace.Group;i.scale.set(1,1,-1),r.add(i);for(var o=[],s=0,u=n;s<u.length;s++){var l=u[s],d=getMaterial();o.push(d),d.uniforms.map.value=l.texture,d.uniforms.flipY.value=l.flipY?1:0;var c=new THREE__namespace.Group,f=new THREE__namespace.Mesh(PLAME_GEOMETRY,d);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(QUATERNION[l.face]),c.add(f),i.add(c)}var h=e.autoClear;e.autoClear=!1;var v=new THREE__namespace.CubeCamera(.1,2,t);v.matrixAutoUpdate=!1,v.update(e,r),e.autoClear=h;for(var A=0,m=o;A<m.length;A++){var d=m[A];releaseMaterial(d)}}var asyncImageTaskQueue=[],IMAGE_TASK_EACH_FRAME=6,imageTaskEachFrame=0;AnimationFrameLoop.shared.add(function(){if(imageTaskEachFrame=IMAGE_TASK_EACH_FRAME,asyncImageTaskQueue.length)for(var n=asyncImageTaskQueue.splice(0,imageTaskEachFrame),t=0,e=n;t<e.length;t++){var r=e[t];imageTaskEachFrame--,r()}});var canUseNativeImageBitmap=function(){return!1}();function createImageBitmapLikeImage(){var n=Object.assign(document.createElementNS("http://www.w3.org/1999/xhtml","img"),{crossOrigin:"",close:function(){n.onerror=n.onload=n.close=noop$1;var t=n.src;n.removeAttribute("src"),/^blob\:/.test(t)&&URL.revokeObjectURL(t)}});return n}function createImageBitmapLike(n){return new Promise(function(t,e){var r=createImageBitmapLikeImage();r.onload=function(){/^blob\:/.test(r.src)&&URL.revokeObjectURL(r.src),r.onload=r.onerror=noop$1,setTimeout(function(){t(r)},0)},r.onerror=function(){var i=r.src;r.onload=r.onerror=noop$1,r.close(),e(new Error("image load error: ".concat(i)))},r.src=URL.createObjectURL(n)})}function createImageBitmapLikeAsync(n){return new Promise(function(t){asyncImageTaskQueue.push(function(){t(createImageBitmapLike(n))})})}var canvasPool=[];function createCanvas(n,t){var e=canvasPool.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=noop$1,canvasPool.push(r)}});return r}function poolImageToTexture(n,t){if(t&&(n.width>t.width||n.height>t.height)){var e=createCanvas(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 THREE__namespace.Texture(e);i.needsUpdate=!0,i.flipY=!0;var o=i.dispose;return i.dispose=function(){e.close(),o.call(i),i.dispose=o},i}else{var s=new THREE__namespace.Texture(n);s.needsUpdate=!0,typeof ImageBitmap<"u"&&n instanceof ImageBitmap?s.flipY=!1:s.flipY=!0;var u=s.dispose;return s.dispose=function(){n.close(),u.call(s),s.dispose=u},s}}function poolImagesToCubeTexture(n){var t=new THREE__namespace.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 o=i[r];o.close()}e.call(t),t.dispose=e},t}var FACE_ORDER=["right","left","up","down","front","back"],MAX_TILE_RENDER_EACH_FRAME=4,TileCubeTextureTarget=function(){function n(t,e,r,i,o){this.tileTree=e,this.tileSources=r,this.options=i,this.renderer=o,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,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:THREE__namespace.RGBAFormat,t.texture.minFilter=(r=this.options.minFilter)!==null&&r!==void 0?r:THREE__namespace.LinearFilter,t.texture.magFilter=(i=this.options.magFilter)!==null&&i!==void 0?i:THREE__namespace.LinearFilter,t.texture.wrapS=(o=this.options.wrapS)!==null&&o!==void 0?o:THREE__namespace.ClampToEdgeWrapping,t.texture.wrapT=(s=this.options.wrapT)!==null&&s!==void 0?s:THREE__namespace.ClampToEdgeWrapping,this.baseCubeTexture&&(renderCubeTextureToCubeRenderTarget(this.baseCubeTexture,t,this.renderer),this.baseCubeTexture.dispose(),this.baseCubeTexture=null),this._cubeRenderTarget&&renderCubeTextureToCubeRenderTarget(this._cubeRenderTarget.texture,t,this.renderer),this._cubeRenderTarget=t},enumerable:!1,configurable:!0}),n.prototype.requestTile=function(t){var e=this,r,i,o,s,u,l,d=this.tileSources.filter(function(m){return m.level===t.level})[0];if(!d){this.loadedCubeNodes.add(t);return}var c=d.size,f=Math.pow(2,t.level)*t.position.y,h=Math.pow(2,t.level)*t.position.x,v="".concat(((o=(i=(r=this.options.imageURL)===null||r===void 0?void 0:r.options)===null||i===void 0?void 0:i.key)!==null&&o!==void 0?o:"pano.0").replace(/^pano/,"pano_tile"),".").concat(t.face,".").concat(t.level,".").concat(f,".").concat(h),A=__assign(__assign({},(u=(s=this.options.imageURL)===null||s===void 0?void 0:s.options)!==null&&u!==void 0?u:{key:"unknown"}),{key:v,size:c*t.size===this.options.tileImageSize?void 0:this.options.tileImageSize,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(d[t.face],{imageURL:{transform:(l=this.options.imageURL)===null||l===void 0?void 0:l.transform,options:__assign({},A)},format:THREE__namespace.RGBAFormat,viaAjax:canUseNativeImageBitmap,timeout:this.options.timeout,fetcher:this.options.fetcher}).then(function(m){if(e.disposed){m.body.dispose();return}e.textures.push({face:t.face,level:t.level,position:t.position,size:new THREE__namespace.Vector2(t.size,t.size),texture:m.body,flipY:!m.body.flipY}),e.loadedCubeNodes.add(t)}).catch(noop$1).then(function(){e.disposed||e.loadingCubeNodes.delete(t)})},n.prototype.update=function(t,e){var r=this;if(!this.disposed){var i=[];traverseTileCubeNode(this.tileTree,function(h){if(r.loadingCubeNodes.has(h)||h.level>e||!t.intersectsBox(h.box))return!1;if(!r.loadedCubeNodes.has(h))return i.push(h),!1});for(var o=0,s=i;o<s.length;o++){var u=s[o];this.requestTile(u)}if(this.cubeRenderTarget&&this.textures.length){var l=this.textures.splice(0,MAX_TILE_RENDER_EACH_FRAME);renderTexturesToCubeRenderTarget(l,this.cubeRenderTarget,this.renderer),this.needsRender=!0;for(var d=0,c=l;d<c.length;d++){var f=c[d];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}(),TextureLoader=function(){function n(){}return n.prototype.loadTexture=function(t,e,r,i,o,s){var u,l,d,c;r===void 0&&(r=noop$1),i===void 0&&(i=noop$1),o===void 0&&(o=noop$1);var f={};typeof e.flipY<"u"&&(f.flipY=e.flipY),typeof e.format<"u"&&(f.format=e.format),typeof e.minFilter<"u"&&(f.minFilter=e.minFilter),typeof e.magFilter<"u"&&(f.magFilter=e.magFilter);var h=(l=(u=e.imageURL)===null||u===void 0?void 0:u.options)!==null&&l!==void 0?l:{key:"unknown"};t=applyImageURLOptions(t,(d=e.imageURL)===null||d===void 0?void 0:d.transform,h);var v=getProtocol(t),A=(c=e.viaAjax)!==null&&c!==void 0?c:!1,m=isJsonpSource(t),y=/^https?:/.test(v);if(m?A=!0:y||(A=!1),A){var p=null,g="blob";return e.fetcher.ajax(t,{timeout:e.timeout,responseType:g},void 0,void 0,o).then(function(_){return createImageBitmapLikeAsync(_.body)}).then(function(_){return poolImageToTexture(_,e.maxSize)}).then(function(_){return Object.assign(_,f),_}).then(function(_){var w={meta:p,body:_};return r(w),w}).catch(function(_){return i(_),Promise.reject(_)})}else{var b=null,T;return Promise.resolve().then(function(){return createImageBitmapLikeImage()}).then(function(_){return T=_,e.fetcher.loadImage(t,{timeout:e.timeout},void 0,void 0,o,_)}).then(function(_){return b=_.meta,poolImageToTexture(_.body,e.maxSize)}).then(function(_){return Object.assign(_,f),_}).then(function(_){var w={meta:b,body:_};return r(w),w}).catch(function(_){return T&&T.close(),i(_),Promise.reject(_)})}},n.prototype.loadCubeTexture=function(t,e,r,i,o,s){var u,l,d,c;r===void 0&&(r=noop$1),i===void 0&&(i=noop$1),o===void 0&&(o=noop$1),typeof e.format<"u"&&e.format,typeof e.minFilter<"u"&&e.minFilter,typeof e.magFilter<"u"&&e.magFilter;for(var f=[t[FACE_ORDER[0]],t[FACE_ORDER[1]],t[FACE_ORDER[2]],t[FACE_ORDER[3]],t[FACE_ORDER[4]],t[FACE_ORDER[5]]],h=[],v=[0,0,0,0,0,0],A=[],m=function(p){var g=(l=(u=e.imageURL)===null||u===void 0?void 0:u.options)!==null&&l!==void 0?l:{key:"unknown"},b=applyImageURLOptions(f[p],(d=e.imageURL)===null||d===void 0?void 0:d.transform,__assign(__assign({},g),{key:g.key+"."+FACE_ORDER[p]})),T=getProtocol(b),_=function(B){v[p]=B,o(v.reduce(function(O,F){return O+F},0)/6)},w=(c=e.viaAjax)!==null&&c!==void 0?c:!1,x=/^https?:$/.test(T),M=isJsonpSource(b);if(M?w=!0:x||(w=!1),w){var R="blob",I=e.fetcher.ajax(b,{timeout:e.timeout,responseType:R},void 0,void 0,_).then(function(B){return A[p]=B.meta,createImageBitmapLikeAsync(B.body)});h.push(I)}else{var S,I=Promise.resolve().then(function(){return createImageBitmapLikeImage()}).then(function(O){return S=O,e.fetcher.loadImage(b,{timeout:e.timeout},void 0,void 0,_,O)}).then(function(O){return A[p]=O.meta,O.body}).catch(function(O){return S&&S.close(),Promise.reject(O)});h.push(I)}},y=0;y<6;y++)m(y);return Promise.all(h).then(function(p){return poolImagesToCubeTexture(p)}).then(function(p){return Object.assign(p,__assign({encoding:THREE__namespace.sRGBEncoding},e)),p}).then(function(p){var g={body:p,meta:A};return r(g),g}).catch(function(p){for(var g=0,b=h;g<b.length;g++){var T=b[g];T.then(function(_){return _.close()}).catch(noop$1)}return i(p),Promise.reject(p)})},n.prototype.loadTiledCubeTexture=function(t,e,r,i,o,s,u){var l=this;return i===void 0&&(i=noop$1),o===void 0&&(o=noop$1),s===void 0&&(s=noop$1),new Promise(function(d,c){var f,h;l.loadCubeTexture(t,{imageURL:{transform:(f=r.imageURL)===null||f===void 0?void 0:f.transform,options:(h=r.imageURL)===null||h===void 0?void 0:h.options},format:THREE__namespace.RGBAFormat,viaAjax:r.viaAjax,timeout:r.timeout,fetcher:r.fetcher},function(v){var A,m,y=v.meta,p=v.body,g=(A=r.tileImageSize)!==null&&A!==void 0?A:512,b=(m=r.tileMaxLevel)!==null&&m!==void 0?m:2,T=Math.max(1024*b,512),_=createTileCubeTree(b),w=new TileCubeTextureTarget(p,_,e,{textureSize:T,tileImageSize:g,textureLoader:l,imageURL:r.imageURL,timeout:r.timeout,fetcher:r.fetcher},u),x={meta:y,body:w};i(x),d(x)},function(v){o(v),c(v)},s,u).catch(noop$1)})},n}();const vertexShader$6=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var r=113,i=126,o=0,s="";return t[o].split(s).map(function(u){return u.charCodeAt(o)>i?u:String.fromCharCode((u.charCodeAt(o)+r)%i)}).join(s)}("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"),fragmentShader$6=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var r=113,i=126,o=0,s="";return t[o].split(s).map(function(u){return u.charCodeAt(o)>i?u:String.fromCharCode((u.charCodeAt(o)+r)%i)}).join(s)}("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\x07Hn\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=j9cvrZnv\x07h=jh>j9-cvrZnv\x07h>jh>j9-cvrZnv\x07h?jh>j9cvrZnv\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-V_||sZnx-JJ->;=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--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");var EMPTY_CUBE_TEXTURE=new THREE__namespace.WebGLCubeRenderTarget(1).texture;EMPTY_CUBE_TEXTURE.name="EMPTY_TEXTURE";var shaderUniforms$2=Object.assign({modelAlpha:new THREE__namespace.Uniform(0),progress:new THREE__namespace.Uniform(0),pano0_map:new THREE__namespace.Uniform(EMPTY_CUBE_TEXTURE),pano0_luminanceMap:new THREE__namespace.Uniform(null),pano0_matrix:new THREE__namespace.Uniform(new THREE__namespace.Matrix4),pano1_map:new THREE__namespace.Uniform(EMPTY_CUBE_TEXTURE),pano1_luminanceMap:new THREE__namespace.Uniform(null),pano1_matrix:new THREE__namespace.Uniform(new THREE__namespace.Matrix4),clippers:new THREE__namespace.Uniform([]),shownFloorIndex:new THREE__namespace.Uniform(-1),constantColor:new THREE__namespace.Uniform(null),floor:new THREE__namespace.Uniform(0)},{exposure:new THREE__namespace.Uniform(1),emissive:new THREE__namespace.Uniform(new THREE__namespace.Color(0)),emissiveMap:new THREE__namespace.Uniform(null),specular:new THREE__namespace.Uniform(new THREE__namespace.Color(1118481)),specularMap:new THREE__namespace.Uniform(null),normalMap:new THREE__namespace.Uniform(null),bumpMap:new THREE__namespace.Uniform(null),shininess:new THREE__namespace.Uniform(30)},THREE__namespace.UniformsUtils.clone(THREE__namespace.UniformsLib.common),THREE__namespace.UniformsUtils.clone(THREE__namespace.UniformsLib.lights)),PBMMeshMaterial=function(n){__extends(t,n);function t(e){e===void 0&&(e={});var r,i,o,s,u,l,d,c,f,h,v,A,m,y,p,g,b,T,_,w,x=n.call(this,{vertexShader:vertexShader$6,fragmentShader:fragmentShader$6,uniforms:THREE__namespace.UniformsUtils.clone(shaderUniforms$2),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_CIRCLE:!1,USE_POINT_ADAPTIVE_SIZE:!1,USE_POINT_COLOR_ALTITUDE:!1},lights:!0})||this,M,R=null,I=null;return Object.defineProperties(x,{pano0:{get:function(){return R},set:function(S){if(R!==S){R=S,S===null?(this.uniforms.pano0_map.value=EMPTY_CUBE_TEXTURE,this.uniforms.pano0_luminanceMap.value=null,this.uniforms.pano0_matrix.value.identity()):(this.uniforms.pano0_map.value=S.map instanceof TileCubeTextureTarget?S.map.texture:S.map,this.uniforms.pano0_luminanceMap.value=S.luminanceMap instanceof TileCubeTextureTarget?S.luminanceMap.texture:S.luminanceMap,this.uniforms.pano0_matrix.value.copy(S.matrix));var B=this.uniforms.pano0_luminanceMap.value!==null&&this.uniforms.pano1_luminanceMap.value!==null,O=this.defines.USE_LUMINANCE;O!==B&&(this.defines.USE_LUMINANCE=B,this.needsUpdate=!0)}}},pano1:{get:function(){return I},set:function(S){if(I!==S){I=S,S===null?(this.uniforms.pano1_map.value=EMPTY_CUBE_TEXTURE,this.uniforms.pano1_luminanceMap.value=null,this.uniforms.pano1_matrix.value.identity()):(this.uniforms.pano1_map.value=S.map instanceof TileCubeTextureTarget?S.map.texture:S.map,this.uniforms.pano1_luminanceMap.value=S.luminanceMap instanceof TileCubeTextureTarget?S.luminanceMap.texture:S.luminanceMap,this.uniforms.pano1_matrix.value.copy(S.matrix));var B=this.uniforms.pano0_luminanceMap.value!==null&&this.uniforms.pano1_luminanceMap.value!==null,O=this.defines.USE_LUMINANCE;O!==B&&(this.defines.USE_LUMINANCE=B,this.needsUpdate=!0)}}},modelAlpha:{get:function(){return this.uniforms.modelAlpha.value},set:function(S){this.uniforms.modelAlpha.value=S}},progress:{get:function(){return this.uniforms.progress.value},set:function(S){this.uniforms.progress.value=S}},useBlackTransition:{get:function(){return this.defines.USE_BLACK_TRANSITION},set:function(S){var B=this.defines.USE_BLACK_TRANSITION;B!==S&&(this.defines.USE_BLACK_TRANSITION=S,this.needsUpdate=!0)}},constantColor:{get:function(){return this.uniforms.constantColor.value},set:function(S){this.uniforms.constantColor.value=S;var B=this.defines.USE_CONSTANT_COLOR,O=S!==null;B!==O&&(this.defines.USE_CONSTANT_COLOR=O,this.needsUpdate=!0)}},opacity:{get:function(){return this.uniforms.opacity.value},set:function(S){this.uniforms.opacity.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(B){var O=typeof B.floorIndex=="number"?B.floorIndex:-1,F=new THREE__namespace.Matrix4().getInverse(B.clippingBoxMatrix);return{matrixInverse:F,floorIndex:O}}),this.needsUpdate=!0)}},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)}},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:defaultPbmParameters.pano0,x.pano1=(i=e.pano1)!==null&&i!==void 0?i:defaultPbmParameters.pano1,x.modelAlpha=(o=e.modelAlpha)!==null&&o!==void 0?o:defaultPbmParameters.modelAlpha,x.progress=(s=e.progress)!==null&&s!==void 0?s:defaultPbmParameters.progress,x.useBlackTransition=(u=e.useBlackTransition)!==null&&u!==void 0?u:defaultPbmParameters.useBlackTransition,x.constantColor=(l=e.constantColor)!==null&&l!==void 0?l:defaultPbmParameters.constantColor,x.opacity=(d=e.opacity)!==null&&d!==void 0?d:defaultPbmParameters.opacity,x.shownFloorIndex=(c=e.shownFloorIndex)!==null&&c!==void 0?c:defaultPbmParameters.shownFloorIndex,x.clippers=(f=e.clippers)!==null&&f!==void 0?f:defaultPbmParameters.clippers,x.useEDL=(h=e.useEDL)!==null&&h!==void 0?h:defaultPbmParameters.useEDL,x.useHQWeight=(v=e.useHQWeight)!==null&&v!==void 0?v:defaultPbmParameters.useHQWeight,x.useHQDepth=(A=e.useHQDepth)!==null&&A!==void 0?A:defaultPbmParameters.useHQDepth,x.pointSize=(m=e.pointSize)!==null&&m!==void 0?m:defaultPbmParameters.pointSize,x.pointColor=(y=e.pointColor)!==null&&y!==void 0?y:defaultPbmParameters.pointColor,x.pointShape=(p=e.pointShape)!==null&&p!==void 0?p:defaultPbmParameters.pointShape,x.pointScale=(g=e.pointScale)!==null&&g!==void 0?g:defaultPbmParameters.pointScale,x.pointBack=(b=e.pointBack)!==null&&b!==void 0?b:defaultPbmParameters.pointBack,x.pointMinPixel=(T=e.pointMinPixel)!==null&&T!==void 0?T:defaultPbmParameters.pointMinPixel,x.pointMaxPixel=(_=e.pointMaxPixel)!==null&&_!==void 0?_:defaultPbmParameters.pointMaxPixel,x.gradientTexture=(w=e.gradientTexture)!==null&&w!==void 0?w:defaultPbmParameters.gradientTexture,x.floor=0,x}return t.prototype.onBeforeCompile=function(e,r){var i,o,s=String((o=(i=this.clippers)===null||i===void 0?void 0:i.length)!==null&&o!==void 0?o:0);e.vertexShader=e.vertexShader.replace(/NUM_CLIPPERS/g,s),e.fragmentShader=e.fragmentShader.replace(/NUM_CLIPPERS/g,s)},t.prototype.update=function(e,r){this.transparent=this.shownFloorIndex>-1||this.opacity<1,this.blending=this.transparent?THREE__namespace.NormalBlending:THREE__namespace.NoBlending},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}(THREE__namespace.ShaderMaterial),InternalWebGLRenderer=function(n){__extends(t,n);function t(e){var r=e.preserveDrawingBuffer,i=r===void 0?!1:r,o=e.backgroundColor,s=o===void 0?1579548:o,u=e.backgroundAlpha,l=u===void 0?1:u,d=e.pixelRatio,c=d===void 0?1:d,f=e.antialias,h=f===void 0?!1:f,v=e.webgl2,A=v===void 0?!1:v,m=this,y=l<1;if(A){var p=document.createElement("canvas"),g=p.getContext("webgl2",{antialias:h,alpha:y,preserveDrawingBuffer:i,powerPreference:"high-performance",desynchronized:!0});g?m=n.call(this,{canvas:p,context:g})||this:(console.error("error occurred when getting webgl2 canvas context, mybe webgl2 not support, fallback to webgl."),m=n.call(this,{antialias:h,alpha:y,preserveDrawingBuffer:i,powerPreference:"high-performance"})||this)}else m=n.call(this,{antialias:h,alpha:y,preserveDrawingBuffer:i,powerPreference:"high-performance"})||this;return m.setPixelRatio(c),m.setClearColor(s,l),m.outputEncoding=THREE__namespace.sRGBEncoding,m.autoClear=!0,m}return t}(THREE__namespace.WebGLRenderer),Scene=function(n){__extends(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}(THREE__namespace.Scene);function coordinatesToVector(n,t){var e=Math.abs(Math.cos(n.latitude)),r=-Math.sin(n.longitude)*e,i=-Math.sin(n.latitude),o=-Math.cos(n.longitude)*e;return t?t.set(r,i,o):new THREE__namespace.Vector3(r,i,o)}var DEFAULT_ASPECT=1,DEFAULT_NEAR=.1,DEFAULT_FAR=2e3,TAU$2=Math.PI*2,PI_2=Math.PI/2;function formatRad$1(n){return n>0&&n<=TAU$2?n:(n%TAU$2+TAU$2)%TAU$2}function matrixLerp(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 Camera=function(n){__extends(t,n);function t(e,r,i,o,s,u,l){r===void 0&&(r=DEFAULT_ASPECT),i===void 0&&(i=DEFAULT_NEAR),o===void 0&&(o=DEFAULT_FAR),s===void 0&&(s=new THREE__namespace.Vector2),u===void 0&&(u=512),l===void 0&&(l=1);var d=n.call(this)||this;d.fov=e,d.aspect=r,d.near=i,d.far=o,d.perspToOrtho=s,d.screenHeight=u,d.pixelRatio=l,d.needsRender=!0,d.pose={longitude:0,latitude:0,fov:e,distance:0,offset:new THREE__namespace.Vector3},d.computePose(),d.perspectiveCamera=new THREE__namespace.PerspectiveCamera(d.fov,d.aspect,.001,d.far);var c=Math.max(d.orthoDistance,.01)*Math.tan(.5*d.fov/180*Math.PI),f=-.5*d.aspect*2*c;return d.orthographicCamera=new THREE__namespace.OrthographicCamera(f,-f,c,-c,.001,d.far),d.computeProjectionMatrix(),d.lastValues={position:d.position.clone(),quaternion:d.quaternion.clone(),scale:d.scale.clone(),fov:d.fov,aspect:d.aspect,near:d.near,far:d.far,perspToOrtho:d.perspToOrtho.clone()},d.type=d.perspToOrtho.x<1?"PerspectiveCamera":"OrthographicCamera",d}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 coordinatesToVector(this.pose,e)},t.prototype.computePose=function(e){e===void 0&&(e=0);var r=this.getDirection(new THREE__namespace.Vector3);this.pose.longitude=formatRad$1(-Math.atan2(r.x,-r.z)),this.pose.latitude=-Math.asin(r.y/1),this.pose.fov=this.fov,this.pose.distance=e;var i=new THREE__namespace.Vector3().add(this.position).add(r.clone().setLength(this.pose.distance));return this.pose.offset.copy(i),this},t.prototype.setFromPose=function(e){var r,i,o,s,u,l=formatRad$1((r=e.longitude)!==null&&r!==void 0?r:this.pose.longitude),d=Math.max(-PI_2+1e-4,Math.min(PI_2-1e-4,(i=e.latitude)!==null&&i!==void 0?i:this.pose.latitude)),c=(o=e.fov)!==null&&o!==void 0?o:this.pose.fov,f=(s=e.distance)!==null&&s!==void 0?s:this.pose.distance,h=(u=e.offset)!==null&&u!==void 0?u:this.pose.offset,v=coordinatesToVector({longitude:l,latitude:d}).normalize();return this.position.set(0,0,0),this.lookAt(v),this.position.add(h).sub(v.clone().setLength(f)),this.fov!==c&&(this.fov=c,this.updateProjectionMatrix()),this.updateMatrixWorld(),this.pose.longitude=l,this.pose.latitude=d,this.pose.fov=c,this.pose.distance=f,this.pose.offset.copy(h),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(){matrixLerp(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,o,s,u){this.perspectiveCamera.setViewOffset(e,r,i,o,s,u),this.orthographicCamera.setViewOffset(e,r,i,o,s,u),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 o=Math.max(this.orthoDistance,.01)*Math.tan(.5*this.fov/180*Math.PI),s=-.5*this.aspect*2*o;this.orthographicCamera.left=s,this.orthographicCamera.right=-s,this.orthographicCamera.top=o,this.orthographicCamera.bottom=-o,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(now(),0),this},t}(THREE__namespace.Camera),VolumePlaneIntersect;(function(n){n[n.Outside=-1]="Outside",n[n.Intersecting=0]="Intersecting",n[n.Inside=1]="Inside"})(VolumePlaneIntersect||(VolumePlaneIntersect={}));var EPSILON$2=1e-6,scratchVector=new THREE__namespace.Vector3,scratchMatrix4$3=new THREE__namespace.Matrix4,scratchXAxis=new THREE__namespace.Vector3,scratchYAxis=new THREE__namespace.Vector3,scratchZAxis=new THREE__namespace.Vector3,scratchSize=new THREE__namespace.Vector3,scratchBox3=new THREE__namespace.Box3,scratchSphere$1=new THREE__namespace.Sphere,scratchMatrix4Inverse$1=new THREE__namespace.Matrix4,scratchRay$1=new THREE__namespace.Ray,scratchObject3D=new THREE__namespace.Object3D,scratchFrustum=new THREE__namespace.Frustum;function quaternionFromMatrix3(n,t){var e=n.elements;return t.setFromRotationMatrix(scratchMatrix4$3.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 CullingVolume=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 scratchMatrix4$3.multiplyMatrices(t.projectionMatrix,t.matrixWorldInverse),scratchFrustum.setFromProjectionMatrix(scratchMatrix4$3),this.setFromFrustum(scratchFrustum),this},n.prototype.computeVisibility=function(t){for(var e=VolumePlaneIntersect.Inside,r=0,i=this.planes;r<i.length;r++){var o=i[r],s=t.intersectPlane(o);switch(s){case VolumePlaneIntersect.Outside:return VolumePlaneIntersect.Outside;case VolumePlaneIntersect.Intersecting:e=VolumePlaneIntersect.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),o=0;o<i;++o){var s=1<<o;if(e&s){var u=this.planes[o],l=t.intersectPlane(u);if(l===VolumePlaneIntersect.Outside)return n.MASK_OUTSIDE;l===VolumePlaneIntersect.Intersecting&&(r|=s)}}return r},n}(),BoxBoundingVolume=function(){function n(){this.type="box",this.center=new THREE__namespace.Vector3,this.halfSize=new THREE__namespace.Vector3,this.rotation=new THREE__namespace.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],o=e[5],s=e[6],u=e[7],l=e[8],d=e[9],c=e[10],f=e[11],h=Math.sqrt(r*r+i*i+o*o),v=Math.sqrt(s*s+u*u+l*l),A=Math.sqrt(d*d+c*c+f*f);this.halfSize.set(h,v,A);var m=this.halfSize.toArray().reduce(function(y,p){return y+p},0);return(isNaN(m)||m<=0)&&this.halfSize.setScalar(EPSILON$2),this.rotation.fromArray([r/h,i/h,o/h,s/v,u/v,l/v,d/A,c/A,f/A]),isNaN(this.rotation.toArray().reduce(function(y,p){return y+p},0))&&this.rotation.identity(),this},n.prototype.toJson=function(){return this.rotation.extractBasis(scratchXAxis,scratchYAxis,scratchZAxis),{box:__spreadArray(__spreadArray(__spreadArray(__spreadArray([],this.center.toArray(),!0),scratchXAxis.multiplyScalar(this.halfSize.x).toArray(),!0),scratchYAxis.multiplyScalar(this.halfSize.y).toArray(),!0),scratchZAxis.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 scratchObject3D.position.copy(this.center),quaternionFromMatrix3(this.rotation,scratchObject3D.quaternion),scratchObject3D.scale.copy(this.halfSize),scratchObject3D.matrix.compose(scratchObject3D.position,scratchObject3D.quaternion,scratchObject3D.scale),scratchObject3D.matrix.premultiply(t),scratchObject3D.matrix.decompose(scratchObject3D.position,scratchObject3D.quaternion,scratchObject3D.scale),this.center.copy(scratchObject3D.position),this.rotation.setFromMatrix4(scratchMatrix4$3.makeRotationFromQuaternion(scratchObject3D.quaternion)),this.halfSize.copy(scratchObject3D.scale),this},n.prototype.getCenter=function(t){return t.copy(this.center)},n.prototype.distanceSquaredTo=function(t){var e=this.rotation.elements,r=t.x-this.center.x,i=t.y-this.center.y,o=t.z-this.center.z,s=0,u;return u=r*e[0]+i*e[1]+o*e[2],u<0&&(u=-u),u-=this.halfSize.x,u>0&&(s+=u*u),u=r*e[3]+i*e[4]+o*e[5],u<0&&(u=-u),u-=this.halfSize.y,u>0&&(s+=u*u),u=r*e[6]+i*e[7]+o*e[8],u<0&&(u=-u),u-=this.halfSize.z,u>0&&(s+=u*u),s},n.prototype.distanceTo=function(t){return Math.sqrt(this.distanceSquaredTo(t))},n.prototype.getBoundingBox=function(t){return t.makeEmpty(),this.rotation.extractBasis(scratchXAxis,scratchYAxis,scratchZAxis),scratchXAxis.setLength(this.halfSize.x),scratchYAxis.setLength(this.halfSize.y),scratchZAxis.setLength(this.halfSize.z),t.expandByPoint(scratchVector.copy(this.center).add(scratchXAxis)),t.expandByPoint(scratchVector.copy(this.center).sub(scratchXAxis)),t.expandByPoint(scratchVector.copy(this.center).add(scratchYAxis)),t.expandByPoint(scratchVector.copy(this.center).sub(scratchYAxis)),t.expandByPoint(scratchVector.copy(this.center).add(scratchZAxis)),t.expandByPoint(scratchVector.copy(this.center).sub(scratchZAxis)),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);scratchVector.set(this.halfSize.x,this.halfSize.y,this.halfSize.z).applyMatrix3(this.rotation).add(this.center).toArray(e,0),scratchVector.set(-this.halfSize.x,this.halfSize.y,this.halfSize.z).applyMatrix3(this.rotation).add(this.center).toArray(e,3),scratchVector.set(-this.halfSize.x,-this.halfSize.y,this.halfSize.z).applyMatrix3(this.rotation).add(this.center).toArray(e,6),scratchVector.set(this.halfSize.x,-this.halfSize.y,this.halfSize.z).applyMatrix3(this.rotation).add(this.center).toArray(e,9),scratchVector.set(this.halfSize.x,this.halfSize.y,-this.halfSize.z).applyMatrix3(this.rotation).add(this.center).toArray(e,12),scratchVector.set(-this.halfSize.x,this.halfSize.y,-this.halfSize.z).applyMatrix3(this.rotation).add(this.center).toArray(e,15),scratchVector.set(-this.halfSize.x,-this.halfSize.y,-this.halfSize.z).applyMatrix3(this.rotation).add(this.center).toArray(e,18),scratchVector.set(this.halfSize.x,-this.halfSize.y,-this.halfSize.z).applyMatrix3(this.rotation).add(this.center).toArray(e,21);var r=new THREE__namespace.BufferGeometry;return r.setIndex(new THREE__namespace.BufferAttribute(t,1)),r.setAttribute("position",new THREE__namespace.BufferAttribute(e,3)),r.computeBoundingBox(),r.computeBoundingSphere(),r},n.prototype.intersectPlane=function(t){var e=this.center,r=t.normal,i=this.rotation.elements,o=this.halfSize,s=r.x,u=r.y,l=r.z,d=Math.abs(s*i[0]*o.x+u*i[1]*o.x+l*i[2]*o.x)+Math.abs(s*i[3]*o.y+u*i[4]*o.y+l*i[5]*o.y)+Math.abs(s*i[6]*o.z+u*i[7]*o.z+l*i[8]*o.z),c=r.dot(e)+t.constant;return c<=-d?VolumePlaneIntersect.Outside:c>=d?VolumePlaneIntersect.Inside:VolumePlaneIntersect.Intersecting},n.prototype.intersectRay=function(t,e){scratchSize.copy(this.halfSize).multiplyScalar(2),scratchBox3.setFromCenterAndSize(scratchVector.set(0,0,0),scratchSize),this.rotation.extractBasis(scratchXAxis,scratchYAxis,scratchZAxis),scratchMatrix4$3.makeBasis(scratchXAxis,scratchYAxis,scratchZAxis),scratchMatrix4$3.setPosition(this.center),scratchMatrix4Inverse$1.getInverse(scratchMatrix4$3),scratchRay$1.copy(t).applyMatrix4(scratchMatrix4Inverse$1);var r=scratchRay$1.intersectBox(scratchBox3,scratchVector);return r?e!==void 0?r.applyMatrix4(scratchMatrix4$3).distanceTo(t.origin)<e:!0:!1},n}(),SphereBoundingVolume=function(){function n(){this.type="sphere",this.center=new THREE__namespace.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],EPSILON$2),this},n.prototype.toJson=function(){return{sphere:__spreadArray(__spreadArray([],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,scratchSize.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 o=new THREE__namespace.BufferGeometry;return o.setAttribute("position",new THREE__namespace.BufferAttribute(e,3)),o.computeBoundingBox(),o.computeBoundingSphere(),o},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.distanceSquaredTo=function(t){var e=this.distanceTo(t);return e*e},n.prototype.distanceTo=function(t){var e=this.center.distanceTo(t)-this.radius;return e<=0?0:e},n.prototype.intersectPlane=function(t){var e=this.center,r=this.radius,i=t.normal,o=i.dot(e)+t.constant;return o<-r?VolumePlaneIntersect.Outside:o<r?VolumePlaneIntersect.Intersecting:VolumePlaneIntersect.Inside},n.prototype.intersectRay=function(t,e){scratchSphere$1.set(this.center,this.radius);var r=t.intersectSphere(scratchSphere$1,scratchVector);return r?e!==void 0?t.origin.distanceTo(r)<e:!0:!1},n}(),RegionBoundingVolume=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.distanceTo=function(t){throw new Error("not implemented")},n.prototype.distanceSquaredTo=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 makeBoundingVolume(n){if("box"in n)return new BoxBoundingVolume().fromJson(n);if("sphere"in n)return new SphereBoundingVolume().fromJson(n);if("region"in n)return new RegionBoundingVolume().fromJson(n);throw new Error("BoundingVolume ".concat(JSON.stringify(n)," never suppored."))}var debugMaterials=[2621517,3801199,4915345,5963950,7274706,8782079,9575167,10434047,11623423,12482559,13274879,13870335,14464511,15125247,15852031,16446719].map(function(n){return new THREE__namespace.LineBasicMaterial({color:n,depthWrite:!1,transparent:!0})}),debugBoxGeometry=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);scratchVector.set(1,1,1).toArray(t,0),scratchVector.set(-1,1,1).toArray(t,3),scratchVector.set(-1,-1,1).toArray(t,6),scratchVector.set(1,-1,1).toArray(t,9),scratchVector.set(1,1,-1).toArray(t,12),scratchVector.set(-1,1,-1).toArray(t,15),scratchVector.set(-1,-1,-1).toArray(t,18),scratchVector.set(1,-1,-1).toArray(t,21);var e=new THREE__namespace.BufferGeometry;return e.setIndex(new THREE__namespace.BufferAttribute(n,1)),e.setAttribute("position",new THREE__namespace.BufferAttribute(t,3)),e.computeBoundingBox(),e.computeBoundingSphere(),e}(),debugSphereGeometry=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 THREE__namespace.BufferGeometry;return i.setAttribute("position",new THREE__namespace.BufferAttribute(t,3)),i.computeBoundingBox(),i.computeBoundingSphere(),i}();function createDebugBoundingMesh(n,t){if(n instanceof BoxBoundingVolume){var e=new THREE__namespace.LineSegments(debugBoxGeometry,debugMaterials[Math.min(t,debugMaterials.length-1)]);return e.position.copy(n.center),quaternionFromMatrix3(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 SphereBoundingVolume){var e=new THREE__namespace.LineSegments(debugSphereGeometry,debugMaterials[Math.min(t,debugMaterials.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 Tile=function(){function n(t,e,r,i){var o=this,s,u,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,this.tileset=r,this.refine=(s=e.refine)!==null&&s!==void 0?s:this.parent?this.parent.refine:"REPLACE",this.transform=new THREE__namespace.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=(u=this.parent)===null||u===void 0?void 0:u.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=makeBoundingVolume(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=makeBoundingVolume(e.boundingVolume).applyMatrix4(this.transform)),e.viewerRequestVolume&&(this.viewerRequestVolume=makeBoundingVolume(e.viewerRequestVolume).applyMatrix4(this.transform)),this.extras=e.extras||{},e.children?this.children=e.children.map(function(d,c){return new n("".concat(o.id,".").concat(c),d,r,o)}):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;this.state.distanceToCamera=r.distanceTo(t.camera.position);var i=this.parent?this.parent.state.visibilityPlaneMask:CullingVolume.MASK_INDETERMINATE;this.state.visibilityPlaneMask=t.cullingVolume.computeVisibilityWithPlaneMask(r,i),this.state.visible=this.state.visibilityPlaneMask!==CullingVolume.MASK_OUTSIDE}else this.state.distanceToCamera=0,this.state.visibilityPlaneMask=CullingVolume.MASK_INDETERMINATE,this.state.visible=!0;if(this.viewerRequestVolume){var o=e?this.viewerRequestVolume.clone().applyMatrix4(e):this.viewerRequestVolume;this.state.inRequestVolume=o.distanceSquaredTo(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(o){return i.done(),r.loadState=o?"READY":"UNLOADED",o}).catch(function(o){return r.loadState="FAILED",i.done(),Promise.reject(o)}):(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(),o=this.parent?this.parent.geometricError:this.tileset.geometricError,s=i*(r?o:this.geometricError);if(s===0)return 0;var u=Math.max(e,.001),l=s*t.height/(u*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,o=this.tileset.root?this.tileset.root.state.screenSpaceError:0,s=Math.max(o-i,0);return s},n}(),RequestScheduler=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(){}},o=new Promise(function(s){return i.resolve=s});return this.requestQueue.push(i),this.requestMap.set(t,o),this.issueNewRequests(),o},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,o=!1,s=function(){o||(o=!0,e.requestMap.delete(r),e.activeRequests--,e.issueNewRequests())};this.activeRequests++,i({done:s})},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,o){return i.priority-o.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}(),CacheNode=function(){function n(t,e,r){this.item=t,this.previous=e,this.next=r}return n}(),CacheNodeList=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 CacheNode(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}(),TilesetCache=function(){function n(){this.cacheNodeMap=new Map,this.list=new CacheNodeList,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}(),ManagedArray=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}(),TilesetTraverser=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 ManagedArray,this._emptyTraversalStack=new ManagedArray,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,o=r;i<o.length;i++){var s=o[i];this._traversalStack.reset(),this._emptyTraversalStack.reset(),this._canSelectTile=s.camera.visible,this.updateTile(t,s),this.executeTraversal(t,s)}this._traversalStack.reset(),this._emptyTraversalStack.reset(),this._canSelectTile=!0,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(),o=!1;if(this.canTraverse(i,e,!1,!1)){var s=i.hasRenderContent?i.state.selectionDepth+1:i.state.selectionDepth;this.updateChildTiles(i,e,s),o=this.updateAndPushChildren(i,e,r)}var u=i.parent,l=!u||u.state.shouldRefine,d=!o;i.hasRenderContent?i.refine==="ADD"?(this.loadTile(i,e.frameNumber),this.selectTile(i,e)):i.refine==="REPLACE"&&(this.loadTile(i,e.frameNumber),d&&this.selectTile(i,e)):(this.emptyTiles.set(i.id,i),this.loadTile(i,e.frameNumber),d&&this.selectTile(i,e)),this.touchTile(i,e),i.state.shouldRefine=o&&l}},n.prototype.updateChildTiles=function(t,e,r){for(var i=t.children,o=0,s=i;o<s.length;o++){var u=s[o];u.state.selectionDepth=r,this.updateTile(u,e)}return!0},n.prototype.updateAndPushChildren=function(t,e,r){for(var i=t.children,o=t.refine==="REPLACE"&&t.hasRenderContent&&!this.skipLevelOfDetail,s=!1,u=!0,l=0,d=i;l<d.length;l++){var c=d[l];if(c.state.visible&&c.state.inRequestVolume?(r.find(c)&&r.delete(c),r.push(c),s=!0):(o||this.loadSiblings)&&(this.loadTile(c,e.frameNumber),this.touchTile(c,e)),o){var f=void 0;c.state.inRequestVolume?c.hasRenderContent?f=c.contentAvailable:f=this.executeEmptyTraversal(c,e):f=!1,u=u&&f}}return s||(u=!1),u},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.hasRenderContent){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 o=i.pop();this.updateTile(o,e),o.state.visible||this.loadTile(o,e.frameNumber),this.touchTile(o,e);var s=!o.hasRenderContent&&this.canTraverse(o,e,!1,!0);if(s)for(var u=o.children,l=0,d=u;l<d.length;l++){var c=d[l];i.find(c)&&i.delete(c),i.push(c)}else o.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}(),identityMatrix4=new THREE__namespace.Matrix4,Tileset=function(){function n(t,e,r){var i,o;this.id=t,this.transform=new THREE__namespace.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=(o=e.properties)!==null&&o!==void 0?o:{},this.options=r,this.traverser=new TilesetTraverser,this.cache=new TilesetCache,this.requestScheduler=new RequestScheduler,this.frameNumber=0,this.pendingCount=0,this.tiles=new Map,this.memoryUsageInBytes=0,this.root=new Tile("".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,o=r.children.length;i<o;i++)e.push(r.children[i]);this.cache.unloadTile(r,function(s){return t.unloadTile(s)})}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(identityMatrix4),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=TilesetTraverser.DEFAULT_MAX_SCREEN_SPACE_ERROR,n.DEFAULT_MAX_REQUESTS=RequestScheduler.DEFAULT_MAX_REQUESTS,n}(),BVHNode=function(){function n(t,e,r,i){this.extents=t,this.startIndex=e,this.endIndex=r,this.deepth=i}return n}();function intersectNodeBox(n,t,e,r){r===void 0&&(r=0);var i=e.extents[0]-r,o=e.extents[1]-r,s=e.extents[2]-r,u=e.extents[3]+r,l=e.extents[4]+r,d=e.extents[5]+r,c={min:0,max:0};t.x>=0?(c.min=(i-n.x)*t.x,c.max=(u-n.x)*t.x):(c.min=(u-n.x)*t.x,c.max=(i-n.x)*t.x);var f={min:0,max:0};if(t.y>=0?(f.min=(o-n.y)*t.y,f.max=(l-n.y)*t.y):(f.min=(l-n.y)*t.y,f.max=(o-n.y)*t.y),c.min>f.max||f.min>c.max)return!1;f.min>c.min&&(c.min=f.min),f.max<c.max&&(c.max=f.max);var h={min:0,max:0};return t.z>=0?(h.min=(s-n.z)*t.z,h.max=(d-n.z)*t.z):(h.min=(d-n.z)*t.z,h.max=(s-n.z)*t.z),!(c.min>h.max||h.min>c.max||(h.min>c.min&&(c.min=h.min),h.max<c.max&&(c.max=h.max),c.max<0))}var BVHVector3=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,o=t.z,s=e.x,u=e.y,l=e.z;return this.x=i*l-o*u,this.y=o*s-r*l,this.z=r*u-i*s,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}(),BVHIntersect=function(){function n(t,e,r){this.triangle=t,this.intersectionPoint=e,this.index=r}return n}(),EPSILON$1=1e-6,BVHMesh=function(){function n(t,e){if(this.positionArray=t,e)this.indicesArray=e;else{for(var r=t.length/3,i=new Uint32Array(r),o=0;o<r;o++)i[o]=o;this.indicesArray=i}}return n.prototype.createTree=function(t,e,r){var i=this.positionArray,o=this.indicesArray,s=o.length/3,u=new Uint32Array(s),l=new Float32Array(s*6),d=[],c=0;if(r)for(var f=0,h=0,v=0,A=void 0,m=void 0,y=void 0,p=void 0,g=void 0,b=void 0,T=void 0;f<s;f+=1,h+=3,v+=6)u[f]=f,A=p=i[o[h]*3],T=i[o[h+1]*3],T<A&&(A=T),T>p&&(p=T),T=i[o[h+2]*3],T<A&&(A=T),T>p&&(p=T),m=g=i[o[h]*3+1],T=i[o[h+1]*3+1],T<m&&(m=T),T>g&&(g=T),T=i[o[h+2]*3+1],T<m&&(m=T),T>g&&(g=T),y=b=i[o[h]*3+2],T=i[o[h+1]*3+2],T<y&&(y=T),T>b&&(b=T),T=i[o[h+2]*3+2],T<y&&(y=T),T>b&&(b=T),l[v]=A,l[v+1]=m,l[v+2]=y,l[v+3]=p,l[v+4]=g,l[v+5]=b;else{for(var _=1/0,w=1/0,x=1/0,M=-1/0,R=-1/0,I=-1/0,f=0,h=0,v=0,A=void 0,m=void 0,y=void 0,p=void 0,g=void 0,b=void 0,T=void 0;f<s;f+=1,h+=3,v+=6)u[f]=f,A=p=i[o[h]*3],T=i[o[h+1]*3],T<A&&(A=T),T>p&&(p=T),T=i[o[h+2]*3],T<A&&(A=T),T>p&&(p=T),m=g=i[o[h]*3+1],T=i[o[h+1]*3+1],T<m&&(m=T),T>g&&(g=T),T=i[o[h+2]*3+1],T<m&&(m=T),T>g&&(g=T),y=b=i[o[h]*3+2],T=i[o[h+1]*3+2],T<y&&(y=T),T>b&&(b=T),T=i[o[h+2]*3+2],T<y&&(y=T),T>b&&(b=T),l[v]=A,l[v+1]=m,l[v+2]=y,l[v+3]=p,l[v+4]=g,l[v+5]=b,A<_&&(_=A),p>M&&(M=p),m<w&&(w=m),g>R&&(R=g),y<x&&(x=y),b>I&&(I=b);r=[_,w,x,M,R,I]}var S=new BVHNode(r,0,s,0);d[c++]=S;function B(O){for(var F=O.startIndex,H=O.endIndex,k=O.extents,N=[k[3]-k[0],k[4]-k[1],k[5]-k[2]],q=[0,1,2].sort(function(J,Z){return N[Z]-N[J]}),V=0;V<3;V++){for(var D=q[V],K=k[D]+k[D+3],z=F,G=H-1,W=-1,Q=void 0;z<=G;)W===-1?(Q=u[z],l[Q*6+D]+l[Q*6+D+3]<K?z++:W=Q):(Q=u[G],l[Q*6+D]+l[Q*6+D+3]>=K||(u[z]=Q,u[G]=W,W=-1,z++),G--);if(z>F&&z<H){var X=new BVHNode(calcExtents(u,l,F,z,EPSILON$1),F,z,O.deepth+1);X.deepth<e&&X.endIndex-X.startIndex>t&&(d[c++]=X);var ee=new BVHNode(calcExtents(u,l,z,H,EPSILON$1),z,H,O.deepth+1);ee.deepth<e&&ee.endIndex-ee.startIndex>t&&(d[c++]=ee),O.node0=X,O.node1=ee,O.startIndex=0,O.endIndex=0;break}}}for(;c;)B(d[--c]);return this.offsetArray=u,this.rootNode=S,d.length=0,this},n.prototype.trianglesInSphere=function(t,e){for(var r=this.positionArray,i=this.indicesArray,o=this.offsetArray,s=this.rootNode,u=[s],l=[],d;d=u.pop();){var c=clamp$1(t.x,d.extents[0],d.extents[3])-t.x,f=clamp$1(t.y,d.extents[1],d.extents[4])-t.y,h=clamp$1(t.z,d.extents[2],d.extents[5])-t.z;if(c*c+f*f+h*h<=e*e){d.node0&&u.push(d.node0),d.node1&&u.push(d.node1);for(var v=d.startIndex;v<d.endIndex;v++)l.push(o[v])}}for(var A=l.length,m=new Float32Array(A*9),v=0;v<A;v++){var y=l[v];m[v*9]=r[i[y]*3],m[v*9+1]=r[i[y]*3+1],m[v*9+2]=r[i[y]*3+2],m[v*9+3]=r[i[y+1]*3],m[v*9+4]=r[i[y+1]*3+1],m[v*9+5]=r[i[y+1]*3+2],m[v*9+6]=r[i[y+2]*3],m[v*9+7]=r[i[y+2]*3+1],m[v*9+8]=r[i[y+2]*3+2]}return m},n.prototype.intersectRay=function(t,e,r){for(var i=this.positionArray,o=this.indicesArray,s=this.offsetArray,u=this.rootNode,l=new BVHVector3(1/e.x,1/e.y,1/e.z),d=[u],c;c=d.pop();)if(intersectNodeBox(t,l,c)){for(var f=c.startIndex,h=c.endIndex,v=void 0,A=void 0,m=void 0,y=t.x,p=t.y,g=t.z,b=e.x,T=e.y,_=e.z,w=void 0,x=void 0,M=void 0,R=void 0,I=void 0,S=void 0,B=void 0,O=void 0,F=void 0,H=void 0,k=void 0,N=void 0,q=void 0,V=void 0,D=void 0,K=void 0,z=void 0,G=void 0,W=void 0,Q=void 0,X=void 0,ee=void 0,J=void 0,Z=void 0,te=void 0,ae=void 0,re=void 0;f<h;f++){if(v=s[f],A=v*3,m=o[A]*3,w=i[m],x=i[++m],M=i[++m],m=o[A+1]*3,R=i[m],I=i[++m],S=i[++m],m=o[A+2]*3,B=i[m],O=i[++m],F=i[++m],H=R-w,k=I-x,N=S-M,q=B-w,V=O-x,D=F-M,K=k*D-N*V,z=N*q-H*D,G=H*V-k*q,J=b*K+T*z+_*G,J>0)ee=1;else if(J<0)ee=-1,J=-J;else continue;W=y-w,Q=p-x,X=g-M,Z=ee*(b*(Q*D-X*V)+T*(X*q-W*D)+_*(W*V-Q*q)),!(Z<0)&&(te=ee*(b*(k*X-N*Q)+T*(N*W-H*X)+_*(H*Q-k*W)),!(te<0)&&(Z+te>J||(ae=-ee*(W*K+Q*z+X*G),!(ae<0)&&(re=ae/J,r.push(new BVHIntersect([w,x,M,R,I,S,B,O,F],[y+b*re,p+T*re,g+_*re],v))))))}c.node0&&d.push(c.node0),c.node1&&d.push(c.node1)}return r},n}();function clamp$1(n,t,e){return n<t?t:n>e?e:n}function calcExtents(n,t,e,r,i){if(e>=r)return[0,0,0,0,0,0];for(var o=1/0,s=1/0,u=1/0,l=-1/0,d=-1/0,c=-1/0,f=e,h=void 0,v=void 0;f<r;f++)h=n[f]*6,v=t[h],v<o&&(o=v),v=t[h+1],v<s&&(s=v),v=t[h+2],v<u&&(u=v),v=t[h+3],v>l&&(l=v),v=t[h+4],v>d&&(d=v),v=t[h+5],v>c&&(c=v);return[o-i,s-i,u-i,l+i,d+i,c+i]}var EPSILON=1e-6,BVHPoints=function(){function n(t,e){if(this.positionArray=t,e)this.indicesArray=e;else{for(var r=t.length/3,i=new Uint32Array(r),o=0;o<r;o++)i[o]=o;this.indicesArray=i}}return n.prototype.createTree=function(t,e,r){var i=this.positionArray,o=this.indicesArray,s=o.length,u=new Uint32Array(s),l=[],d=0;if(r)for(var c=0;c<s;c+=1)u[c]=c;else{for(var f=o[0]*3,h=i[f],v=i[f+1],A=i[f+2],m=h,y=v,p=A,c=0,g=0,b=void 0,T=void 0,_=void 0;c<s;c+=1,g+=3)u[c]=c,f=o[g]*3,b=i[f],T=i[f+1],_=i[f+2],b<h?h=b:b>m&&(m=b),T<v?v=T:T>y&&(y=T),_<A?A=_:_>p&&(p=_);r=[h,v,A,m,y,p]}var w=new BVHNode(r,0,s,0);l[d++]=w;function x(M){for(var R=M.startIndex,I=M.endIndex,S=M.extents,B=[S[3]-S[0],S[4]-S[1],S[5]-S[2]],O=[0,1,2].sort(function(G,W){return B[W]-B[G]})[0],F=(S[O]+S[O+3])/2,H=R,k=I-1,N=-1,q;H<=k;)N===-1?(q=u[H],i[o[q]*3+O]<F?H++:N=q):(q=u[k],i[o[q]*3+O]>=F||(u[H]=q,u[k]=N,N=-1,H++),k--);if(H>R){var V=S.slice();V[O+3]=F+EPSILON;var D=new BVHNode(V,R,H,M.deepth+1);D.deepth<e&&D.endIndex-D.startIndex>t&&(l[d++]=D),M.node0=D}if(I>H){var K=S.slice();K[O]=F-EPSILON;var z=new BVHNode(K,H,I,M.deepth+1);z.deepth<e&&z.endIndex-z.startIndex>t&&(l[d++]=z),M.node1=z}M.startIndex=0,M.endIndex=0}for(;d;)x(l[--d]);return this.offsetArray=u,this.rootNode=w,l.length=0,this},n.prototype.intersectRay=function(t,e,r,i){for(var o=this.positionArray,s=this.indicesArray,u=this.offsetArray,l=this.rootNode,d=r*r,c=new BVHVector3(1/e.x,1/e.y,1/e.z),f=[l],h;h=f.pop();)if(intersectNodeBox(t,c,h,r)){for(var v=h.startIndex,A=h.endIndex,m=void 0,y=void 0,p=void 0,g=void 0,b=void 0,T=void 0,_=void 0,w=void 0,x=void 0,M=void 0,R=void 0,I=void 0,S=void 0;v<A;v++)m=u[v],y=s[m]*3,p=o[y],g=o[++y],b=o[++y],T=t.x,_=t.y,w=t.z,x=e.x,M=e.y,R=e.z,I=x*(p-T)+M*(g-_)+R*(b-w),I>0&&(T+=x*I,_+=M*I,w+=R*I),x=p-T,M=g-_,R=b-w,I=x*x+M*M+R*R,I<=d&&i.push(new BVHIntersect([p,g,b,p,g,b,p,g,b],[T,_,w],m));h.node0&&f.push(h.node0),h.node1&&f.push(h.node1)}return i},n}(),bvhMeshMap=new Map,bvhPointsMap=new Map,scratchRay=new THREE__namespace.Ray,scratchNormalMatrix=new THREE__namespace.Matrix3,scratchInverseMatrix=new THREE__namespace.Matrix4,scratchIntersectionFaceA$1=new THREE__namespace.Vector3,scratchIntersectionFaceB$1=new THREE__namespace.Vector3,scratchIntersectionFaceC$1=new THREE__namespace.Vector3,scratchIntersectionTriangle=new THREE__namespace.Triangle;function raycastMesh(n,t,e,r){var i,o=n.matrixWorld;scratchInverseMatrix.getInverse(o),scratchRay.copy(e.ray).applyMatrix4(scratchInverseMatrix);for(var s=t.intersectRay(scratchRay.origin,scratchRay.direction,[]),u=n.geometry,l=n.material,d=u.groups,c=u.index,f=0,h=s.length;f<h;f++){var v=s[f],A=v.triangle,m=v.index,y=v.intersectionPoint,p=new THREE__namespace.Vector3(y[0],y[1],y[2]).applyMatrix4(o),g=e.ray.origin.distanceTo(p);if(!(g<e.near||g>e.far)){var b=void 0;if(Array.isArray(l)){if(d)for(var T=m*3,_=0,w=d;_<w.length;_++){var x=w[_];if(T>=x.start&&T-x.start<x.count){b=l[(i=x.materialIndex)!==null&&i!==void 0?i:0];break}}}else b=l;if(b){var M=scratchIntersectionTriangle.set(scratchIntersectionFaceA$1.set(A[0],A[1],A[2]).applyMatrix4(o),scratchIntersectionFaceB$1.set(A[3],A[4],A[5]).applyMatrix4(o),scratchIntersectionFaceC$1.set(A[6],A[7],A[8]).applyMatrix4(o)).getNormal(new THREE__namespace.Vector3),R=m*3,I=new THREE__namespace.Face3(c?c.array[R]:R,c?c.array[R+1]:R+1,c?c.array[R+2]:R+2,M),S=e.ray.direction.dot(M);b.side===THREE__namespace.FrontSide&&S>=0||b.side===THREE__namespace.BackSide&&S<=0||r.push({distance:g,object:n,face:I,point:p,distanceToRay:0,faceIndex:m})}}}}function raycastPoints(n,t,e,r){var i,o,s=n.matrixWorld;scratchNormalMatrix.getNormalMatrix(s),scratchInverseMatrix.getInverse(s);var u=((o=(i=e.params.Points)===null||i===void 0?void 0:i.threshold)!==null&&o!==void 0?o:1)*scratchInverseMatrix.getMaxScaleOnAxis();scratchRay.copy(e.ray).applyMatrix4(scratchInverseMatrix);for(var l=t.intersectRay(scratchRay.origin,scratchRay.direction,u,[]),d=n.geometry,c=d.index,f=d.getAttribute("normal"),h=0,v=l.length;h<v;h++){var A=l[h],m=A.triangle,y=A.index,p=A.intersectionPoint,g=new THREE__namespace.Vector3(p[0],p[1],p[2]).applyMatrix4(s),b=e.ray.origin.distanceTo(g);if(!(b<e.near||b>e.far)){var T=scratchIntersectionFaceA$1.set(m[0],m[1],m[2]).applyMatrix4(s),_=c?c.array[y]:y,w=void 0;f instanceof THREE__namespace.BufferAttribute&&(w=new THREE__namespace.Vector3().fromBufferAttribute(f,_).applyNormalMatrix(scratchNormalMatrix));var x=new THREE__namespace.Face3(_,_,_,w);r.push({distance:b,object:n,face:x,point:g,distanceToRay:g.distanceTo(T),index:y})}}}function generateBvhTreeForMesh(n,t,e){var r;if(t===void 0&&(t=100),e===void 0&&(e=10),n.geometry instanceof THREE__namespace.BufferGeometry){var i=n.geometry.getAttribute("position");if(i instanceof THREE__namespace.BufferAttribute){var o=n.raycast,s=function(h,v){var A=bvhMeshMap.get(this);A?raycastMesh(this,A,h,v):o.call(this,h,v)};n.raycast=s;var u=i.array,l=(r=n.geometry.getIndex())===null||r===void 0?void 0:r.array,d=n.geometry.boundingBox,c=d?[d.min.x,d.min.y,d.min.z,d.max.x,d.max.y,d.max.z]:void 0,f=new BVHMesh(u,l);return f.createTree(t,e,c),bvhMeshMap.set(n,f),function(){bvhMeshMap.delete(n),n.raycast===s&&(n.raycast=o)}}}return function(){}}function generateBvhTreeForPoints(n,t,e){var r;if(t===void 0&&(t=100),e===void 0&&(e=10),n.geometry instanceof THREE__namespace.BufferGeometry){var i=n.geometry.getAttribute("position");if(i instanceof THREE__namespace.BufferAttribute){var o=n.raycast,s=function(h,v){var A=bvhPointsMap.get(this);A?raycastPoints(this,A,h,v):o.call(this,h,v)};n.raycast=s;var u=i.array,l=(r=n.geometry.getIndex())===null||r===void 0?void 0:r.array,d=n.geometry.boundingBox,c=d?[d.min.x,d.min.y,d.min.z,d.max.x,d.max.y,d.max.z]:void 0,f=new BVHPoints(u,l);return f.createTree(t,e,c),bvhPointsMap.set(n,f),function(){bvhPointsMap.delete(n),n.raycast===s&&(n.raycast=o)}}}return function(){}}function generateBvhTree(n,t,e){t===void 0&&(t=100),e===void 0&&(e=10);var r=[];return n.traverse(function(i){if(i instanceof THREE__namespace.Mesh){var o=generateBvhTreeForMesh(i,t,e);r.push(o)}else if(i instanceof THREE__namespace.Points){var o=generateBvhTreeForPoints(i,t,e);r.push(o)}}),function(){for(var i=0,o=r;i<o.length;i++){var s=o[i];s()}}}var scratchIntersectionFaceA=new THREE__namespace.Vector3,scratchIntersectionFaceB=new THREE__namespace.Vector3,scratchIntersectionFaceC=new THREE__namespace.Vector3,TileNode=function(n){__extends(t,n);function t(e,r){var i=n.call(this)||this;i.renderOrder=-4;var o=generateBvhTree(e,200,10);return i.disposers=[r,o],i.add(e),i}return t.prototype.intersectRaycaster=function(e,r,i){var o=this;r===void 0&&(r=!0),i===void 0&&(i=[]);for(var s=this.children.slice(),u;u=s.pop();)if(u.visible){u.raycast(e,i);for(var l=0,d=u.children.length;l<d;l++)s.push(u.children[l])}return i.forEach(function(c){var f,h,v=0;if((c.object instanceof PBMMesh||c.object instanceof PBMPointCloud)&&c.face){var A=Array.isArray(c.object.material)?c.object.material[c.face.materialIndex]:c.object.material;if(A)if(A.defines.USE_VERTEX_FLOOR){var m=(f=c.object.geometry.attributes.position)===null||f===void 0?void 0:f.array,y=(h=c.object.geometry.attributes.floor)===null||h===void 0?void 0:h.array;if(m&&y){var p=scratchIntersectionFaceA.set(m[c.face.a*3],m[c.face.a*3+1],m[c.face.a*3+2]).applyMatrix4(o.matrixWorld),g=scratchIntersectionFaceB.set(m[c.face.b*3],m[c.face.b*3+1],m[c.face.b*3+2]).applyMatrix4(o.matrixWorld),b=scratchIntersectionFaceC.set(m[c.face.c*3],m[c.face.c*3+1],m[c.face.c*3+2]).applyMatrix4(o.matrixWorld),T=c.point.distanceTo(p),_=c.point.distanceTo(g),w=c.point.distanceTo(b);v=Math.round((T*y[c.face.a]+_*y[c.face.b]+w*y[c.face.c])/(T+_+w))}}else v=A.floor}c.floor=v}),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()}},t}(THREE__namespace.Group);function pathJoin(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];var e=[];n=n.map(function(u){return(u??"").trim()}).filter(function(u){return u.length>0&&!/^\/+$/.test(u)});for(var r=0;r<n.length;r++){var i=r===0,o=r===n.length-1,s=n[r];i||(s=s.replace(/^\.\//,"").replace(/^\/+/,"")),o||(s=s.replace(/\/+$/,"")),e.push(s)}return e.join("/")}function isAbsoluteURL(n){return n.indexOf("//")===0||/^[0-9a-z]+\:/i.test(n)}function normalizeTileHeader(n,t){if(n.content&&n.content.uri&&(isAbsoluteURL(n.content.uri)||(n.content.uri=pathJoin(t,n.content.uri))),n.children)for(var e=0,r=n.children;e<r.length;e++){var i=r[e];normalizeTileHeader(i,t)}return n}function normalizeTilesetHeader(n,t){return n.asset.overview&&(isAbsoluteURL(n.asset.overview.imageFile)||(n.asset.overview.imageFile=pathJoin(t,n.asset.overview.imageFile)),isAbsoluteURL(n.asset.overview.worldFile)||(n.asset.overview.worldFile=pathJoin(t,n.asset.overview.worldFile))),normalizeTileHeader(n.root,t),n}function appendSearch(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 SIZEOF_UINT32$1=4;function parseHeader(n,t,e){var r=new DataView(t);if(n.magic=r.getUint32(e,!0),e+=SIZEOF_UINT32$1,n.version=r.getUint32(e,!0),e+=SIZEOF_UINT32$1,n.byteLength=r.getUint32(e,!0),e+=SIZEOF_UINT32$1,n.version!==1)throw new Error("3D Tile Version ".concat(n.version," not supported"));return e}var _a$2,GL_TYPE;(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"})(GL_TYPE||(GL_TYPE={}));var GL_TYPE_TO_ARRAY_TYPE=(_a$2={},_a$2[GL_TYPE.DOUBLE]=Float64Array,_a$2[GL_TYPE.FLOAT]=Float32Array,_a$2[GL_TYPE.UNSIGNED_SHORT]=Uint16Array,_a$2[GL_TYPE.UNSIGNED_INT]=Uint32Array,_a$2[GL_TYPE.UNSIGNED_BYTE]=Uint8Array,_a$2[GL_TYPE.BYTE]=Int8Array,_a$2[GL_TYPE.SHORT]=Int16Array,_a$2[GL_TYPE.INT]=Int32Array,_a$2),NAME_TO_GL_TYPE={DOUBLE:GL_TYPE.DOUBLE,FLOAT:GL_TYPE.FLOAT,UNSIGNED_SHORT:GL_TYPE.UNSIGNED_SHORT,UNSIGNED_INT:GL_TYPE.UNSIGNED_INT,UNSIGNED_BYTE:GL_TYPE.UNSIGNED_BYTE,BYTE:GL_TYPE.BYTE,SHORT:GL_TYPE.SHORT,INT:GL_TYPE.INT};function getArrayType(n){var t=GL_TYPE_TO_ARRAY_TYPE[n];if(!t)throw new Error("Failed to convert GL type");return t}function getByteSize(n){var t=getArrayType(n);return t.BYTES_PER_ELEMENT}function createTypedArray(n,t,e,r){e===void 0&&(e=0);var i=getArrayType(n);if(e%getByteSize(n)!==0){var o=r?t.slice(e,e+r*getByteSize(n)):t.slice(e);return new i(o)}else return new i(t,e,r??(t.byteLength-e)/getByteSize(n))}function glTypeFromName(n){var t=NAME_TO_GL_TYPE[n];if(!t)throw new Error("Failed to convert GL type");return t}var FeatureTable=function(){function n(t,e){this.featuresLength=0,this.cachedTypedArrays={},this.json=t,this.buffer=e;var r=this.getGlobalProperty("POINTS_LENGTH",GL_TYPE.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 o=getArrayType(e);return new o([i])}else if(Array.isArray(i)){var o=getArrayType(e);return new o(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=glTypeFromName(i.componentType)),this.getTypedArrayFromBinary(t,e,r,this.featuresLength,i.byteOffset)):this.getTypedArrayFromArray(t,e,i)},n.prototype.getProperty=function(t,e,r,i,o){var s=this.json[t];if(!s)return null;var u=this.getPropertyArray(t,e,r);if(r===1)return o[0]=u[i],o;for(var l=0;l<r;++l)o[l]=u[r*i+l];return o},n.prototype.getTypedArrayFromBinary=function(t,e,r,i,o){var s=this.cachedTypedArrays,u=s[t];return u||(u=createTypedArray(e,this.buffer.buffer,this.buffer.byteOffset+o,i*r),s[t]=u),u},n.prototype.getTypedArrayFromArray=function(t,e,r){var i=this.cachedTypedArrays,o=i[t];return o||(o=createTypedArray(e,r),i[t]=o),o},n}(),SIZEOF_UINT32=4,DEPRECATION_WARNING="b3dm tile in legacy format.";function getStringFromArrayBuffer(n,t,e){var r=new TextDecoder("utf8"),i=new Uint8Array(n,t,e),o=r.decode(i);return o}function parseTable(n,t,e){return e=parseTablesHeader(n,t,e),e=parseFeatureTable(n,t,e),e=parseBatchTable(n,t,e),e}function parseTablesHeader(n,t,e){var r=new DataView(t),i=0;n.header=n.header||{};var o=r.getUint32(e,!0);e+=SIZEOF_UINT32;var s=r.getUint32(e,!0);e+=SIZEOF_UINT32;var u=r.getUint32(e,!0);e+=SIZEOF_UINT32;var l=r.getUint32(e,!0);return e+=SIZEOF_UINT32,u>=570425344?(e-=SIZEOF_UINT32*2,i=o,u=s,l=0,o=0,s=0,console.warn(DEPRECATION_WARNING)):l>=570425344&&(e-=SIZEOF_UINT32,i=u,u=o,l=s,o=0,s=0,console.warn(DEPRECATION_WARNING)),n.header.featureTableJsonByteLength=o,n.header.featureTableBinaryByteLength=s,n.header.batchTableJsonByteLength=u,n.header.batchTableBinaryByteLength=l,n.header.batchLength=i,e}function parseFeatureTable(n,t,e){var r=n.header||{},i=r.featureTableJsonByteLength,o=r.featureTableBinaryByteLength,s=r.batchLength;if(n.featureTableJson={BATCH_LENGTH:s||0},i&&i>0){var u=getStringFromArrayBuffer(t,e,i);n.featureTableJson=JSON.parse(u)}e+=i||0,n.featureTableBinary=new Uint8Array(t,e,o),e+=o||0,n.rtcCenter=new THREE__namespace.Vector3;var l=new FeatureTable(n.featureTableJson,n.featureTableBinary);if(Array.isArray(l.json.RTC_CENTER))n.rtcCenter.fromArray(l.json.RTC_CENTER);else{var d=l.getGlobalProperty("RTC_CENTER",GL_TYPE.FLOAT,3);d&&n.rtcCenter.fromArray(d)}return e}function parseBatchTable(n,t,e){var r=n.header||{},i=r.batchTableJsonByteLength,o=r.batchTableBinaryByteLength;if(i&&i>0){var s=getStringFromArrayBuffer(t,e,i);n.batchTableJson=JSON.parse(s),e+=i,o&&o>0&&(n.batchTableBinary=new Uint8Array(t,e,o),n.batchTableBinary=new Uint8Array(n.batchTableBinary),e+=o)}return e}function sliceArrayBuffer(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 parseGlTFArrayBuffer(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=sliceArrayBuffer(t,e,r),n.byteLength}function decodeText(n){if(typeof TextDecoder<"u")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{return t}}var WEBGL_CONSTANTS={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},WEBGL_COMPONENT_TYPES={5120:Int8Array,5121:Uint8Array,5122:Int16Array,5123:Uint16Array,5125:Uint32Array,5126:Float32Array},WEBGL_FILTERS={9728:THREE__namespace.NearestFilter,9729:THREE__namespace.LinearFilter,9984:THREE__namespace.NearestMipmapNearestFilter,9985:THREE__namespace.LinearMipmapNearestFilter,9986:THREE__namespace.NearestMipmapLinearFilter,9987:THREE__namespace.LinearMipmapLinearFilter},WEBGL_WRAPPINGS={33071:THREE__namespace.ClampToEdgeWrapping,33648:THREE__namespace.MirroredRepeatWrapping,10497:THREE__namespace.RepeatWrapping},WEBGL_TYPE_SIZES={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},ATTRIBUTES={POSITION:"position",NORMAL:"normal",TANGENT:"tangent",TEXCOORD_0:"uv",TEXCOORD_1:"uv2",COLOR_0:"color",WEIGHTS_0:"skinWeight",JOINTS_0:"skinIndex"},PATH_PROPERTIES={scale:"scale",translation:"position",rotation:"quaternion",weights:"morphTargetInfluences"},INTERPOLATION={CUBICSPLINE:void 0,LINEAR:THREE__namespace.InterpolateLinear,STEP:THREE__namespace.InterpolateDiscrete},ALPHA_MODES={OPAQUE:"OPAQUE",MASK:"MASK",BLEND:"BLEND"};function values(n){var t=[];for(var e in n)t.push(n[e]);return t}var Parser=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){t.dispose()}),this.disposeSet.clear()},n.prototype.markDefs=function(){for(var t=this.json.nodes||[],e=this.json.skins||[],r=this.json.meshes||[],i=0,o=e.length;i<o;i++)for(var s=e[i].joints,u=0,l=s.length;u<l;u++)t[s[u]].isBone=!0;for(var d=0,c=t.length;d<c;d++){var f=t[d];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.dispose(),this.markDefs();for(var i=0,o=values(r);i<o.length;i++){var s=o[i];s.markDefs(this)}return Promise.all(values(r).map(function(u){return u.prepare(t)})).then(function(){var u,l,d;return Promise.all([Promise.all(((u=e.scenes)!==null&&u!==void 0?u:[]).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(((d=e.cameras)!==null&&d!==void 0?d:[]).map(function(c,f){return t.loadCamera(f)}))])}).then(function(u){var l=u[0],d=u[1],c=u[2],f={json:t.json,scene:l[e.scene||0],scenes:l,animations:d,cameras:c,dispose:function(){return t.dispose()}};return Promise.all(values(r).map(function(h){return h.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,o=0,s=values(this.extensions);o<s.length;o++){var u=s[o];if(i=u.loadCamera(t,this),i)break}if(!i){var l=void 0,d=this.json.cameras[t],c=d[d.type];c?d.type==="perspective"?l=new THREE__namespace.PerspectiveCamera(THREE__namespace.MathUtils.radToDeg(c.yfov),c.aspectRatio||1,c.znear||1,c.zfar||2e6):d.type==="orthographic"?l=new THREE__namespace.OrthographicCamera(-c.xmag,c.xmag,c.ymag,-c.ymag,c.znear,c.zfar):(console.warn("glTF: Invalid camera type ".concat(d.type,".")),l=new THREE__namespace.Camera):(console.warn("glTF: Missing camera parameters."),l=new THREE__namespace.Camera),d.name&&(l.name=this.createUniqueName(d.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,o=this.json.skins[t],s={joints:o.joints};return o.inverseBindMatrices===void 0?i=Promise.resolve(s):i=this.loadAccessor(o.inverseBindMatrices).then(function(u){return u&&(s.inverseBindMatrices=u),s}),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,o=0,s=values(this.extensions);o<s.length;o++){var u=s[o];if(i=u.loadAnimation(t,this),i)break}if(!i){for(var l=this.json,d=l.animations[t],c=[],f=[],h=[],v=[],A=[],m=0,y=d.channels.length;m<y;m++){var p=d.channels[m],g=d.samplers[p.sampler],b=p.target,T=b.node!==void 0?b.node:b.id,_=d.parameters!==void 0?d.parameters[g.input]:g.input,w=d.parameters!==void 0?d.parameters[g.output]:g.output;c.push(this.loadNode(T)),f.push(this.loadAccessor(_)),h.push(this.loadAccessor(w)),v.push(g),A.push(b)}i=Promise.all([Promise.all(c),Promise.all(f),Promise.all(h),Promise.all(v),Promise.all(A)]).then(function(x){for(var M=x[0],R=x[1],I=x[2],S=x[3],B=x[4],O=[],F=function(q,V){var D=M[q],K=R[q],z=I[q],G=S[q],W=B[q];if(D===void 0)return"continue";D.updateMatrix(),D.matrixAutoUpdate=!0;var Q=void 0;switch(PATH_PROPERTIES[W.path]){case PATH_PROPERTIES.weights:Q=THREE__namespace.NumberKeyframeTrack;break;case PATH_PROPERTIES.rotation:Q=THREE__namespace.QuaternionKeyframeTrack;break;case PATH_PROPERTIES.position:case PATH_PROPERTIES.scale:default:Q=THREE__namespace.VectorKeyframeTrack;break}var X=D.name?D.name:D.uuid,ee=G.interpolation!==void 0?INTERPOLATION[G.interpolation]:THREE__namespace.InterpolateLinear,J=[];PATH_PROPERTIES[W.path]===PATH_PROPERTIES.weights?D.traverse(function(se){se.morphTargetInfluences&&J.push(se.name?se.name:se.uuid)}):J.push(X);var Z=z.array;if(z.normalized){for(var te=getNormalizedComponentScale(Z.constructor),ae=new Float32Array(Z.length),re=0,ie=Z.length;re<ie;re++)ae[re]=Z[re]*te;Z=ae}for(var re=0,ie=J.length;re<ie;re++){var de=new Q(J[re]+"."+PATH_PROPERTIES[W.path],K.array,Z,ee);O.push(de)}},H=0,k=M.length;H<k;H++)F(H);var N=d.name?d.name:"animation_"+t;return new THREE__namespace.AnimationClip(N,void 0,O)})}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 o=null,s=0,u=values(this.extensions);s<u.length;s++){var l=u[s];if(o=l.loadBuffer(t,this),o)break}if(!o){var d=this.json.buffers[t];o=this.options.fetcher.ajax(this.resolveResouce(d.uri),{responseType:"arraybuffer"}).then(function(c){return c.body})}return this.cache.set(r,o),o},n.prototype.loadBufferView=function(t){var e="bufferView:"+t,r=this.cache.get(e);if(r)return r;for(var i=null,o=0,s=values(this.extensions);o<s.length;o++){var u=s[o];if(i=u.loadBufferView(t,this),i)break}if(!i){var l=this.json.bufferViews[t];i=this.loadBuffer(l.buffer).then(function(d){var c=l.byteLength||0,f=l.byteOffset||0;return d.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 o=null;if(!o){var s=this.json.accessors[t];if(s.bufferView===void 0&&s.sparse===void 0)o=Promise.resolve(null);else{var u=[];s.bufferView!==void 0?u.push(this.loadBufferView(s.bufferView)):u.push(Promise.resolve(null)),s.sparse!==void 0&&(u.push(this.loadBufferView(s.sparse.indices.bufferView)),u.push(this.loadBufferView(s.sparse.values.bufferView))),o=Promise.all(u).then(function(l){var d=l[0],c=WEBGL_TYPE_SIZES[s.type],f=WEBGL_COMPONENT_TYPES[s.componentType],h=f.BYTES_PER_ELEMENT,v=h*c,A=s.byteOffset||0,m=s.bufferView!==void 0?e.json.bufferViews[s.bufferView].byteStride:void 0,y=s.normalized===!0,p,g;if(m&&m!==v){var b=Math.floor(A/m),T="InterleavedBuffer:"+s.bufferView+":"+s.componentType+":"+b+":"+s.count,_=e.cache.get(T);_||(p=new f(d,b*m,s.count*m/h),_=new THREE__namespace.InterleavedBuffer(p,m/h),e.cache.set(T,_)),g=new THREE__namespace.InterleavedBufferAttribute(_,c,A%m/h,y)}else d===null?p=new f(s.count*c):p=new f(d,A,s.count*c),g=new THREE__namespace.BufferAttribute(p,c,y);if(s.sparse!==void 0){var w=WEBGL_TYPE_SIZES.SCALAR,x=WEBGL_COMPONENT_TYPES[s.sparse.indices.componentType],M=s.sparse.indices.byteOffset||0,R=s.sparse.values.byteOffset||0,I=new x(l[1],M,s.sparse.count*w),S=new f(l[2],R,s.sparse.count*c);d!==null&&(g=new THREE__namespace.BufferAttribute(g.array.slice(),g.itemSize,g.normalized));for(var B=0,O=I.length;B<O;B++){var F=I[B];if(g.setX(F,S[B*c]),c>=2&&g.setY(F,S[B*c+1]),c>=3&&g.setZ(F,S[B*c+2]),c>=4&&g.setW(F,S[B*c+3]),c>=5)throw new Error("THREE.GLTFLoader: Unsupported itemSize in sparse BufferAttribute.")}}return g})}}return this.cache.set(r,o),o},n.prototype.createPrimitiveKey=function(t){for(var e=0,r=values(this.extensions);e<r.length;e++){var i=r[e],o=i.createPrimitiveKey(t,this);if(o)return o}for(var s="",u=Object.keys(t.attributes).sort(),l=0,d=u.length;l<d;l++)s+=u[l]+":"+t.attributes[u[l]]+";";return t.indices+":"+s+":"+t.mode},n.prototype.loadGeometry=function(t){var e=this,r="geometry:"+this.createPrimitiveKey(t),i=this.cache.get(r);if(i)return i;for(var o=null,s=0,u=values(this.extensions);s<u.length;s++){var l=u[s];if(o=l.loadGeometry(t,this),o)break}return o||(o=this.addGeometryPrimitiveAttributes(new THREE__namespace.BufferGeometry,t)),o=o.then(function(d){return e.disposeSet.add(d),d}),this.cache.set(r,o),o},n.prototype.loadImage=function(t){var e="image:"+t,r=this.cache.get(e);if(r)return r;for(var i=null,o=0,s=values(this.extensions);o<s.length;o++){var u=s[o];if(i=u.loadImage(t,this),i)break}if(!i){var l=this.json.images[t];if(l.bufferView)i=this.loadBufferView(l.bufferView).then(function(c){var f=new Blob([c],{type:l.mimeType});return createImageBitmapLike(f)});else if(l.uri){var d=this.resolveResouce(l.uri);i=this.options.fetcher.loadImage(d,{},void 0,void 0,void 0,createImageBitmapLikeImage()).then(function(c){return c.body})}else throw new Error("glTF: Invalid image defs.")}return this.cache.set(e,i),i},n.prototype.loadMaterialAsMeshStandardMaterial=function(t){var e=this,r=[],i=new THREE__namespace.MeshStandardMaterial;if(i.color=new THREE__namespace.Color(1,1,1),i.opacity=1,Object.keys(t.attributes).filter(function(c){return ATTRIBUTES[c]==="color"}).length>0&&(i.vertexColors=!0),Object.keys(t.attributes).filter(function(c){return ATTRIBUTES[c]==="normal"}).length===0&&(i.flatShading=!0),Object.keys(t.attributes).filter(function(c){return ATTRIBUTES[c]==="tangent"}).length===0&&(i.normalScale&&(i.normalScale.y*=-1),i.clearcoatNormalScale&&(i.clearcoatNormalScale.y*=-1)),t.material!==void 0){var o=this.json.materials[t.material];o.name&&(i.name=o.name);var s=o.pbrMetallicRoughness||{};if(Array.isArray(s.baseColorFactor)){var u=s.baseColorFactor;i.color.fromArray(u),i.opacity=u[3]}s.baseColorTexture!==void 0&&r.push(this.createMaterialTexture(s.baseColorTexture).then(function(c){c.encoding=THREE__namespace.sRGBEncoding,i.map=c,e.disposeSet.add(c)})),i.metalness=s.metallicFactor!==void 0?s.metallicFactor:1,i.roughness=s.roughnessFactor!==void 0?s.roughnessFactor:1,s.metallicRoughnessTexture!==void 0&&r.push(this.createMaterialTexture(s.metallicRoughnessTexture).then(function(c){c.encoding=THREE__namespace.sRGBEncoding,i.metalnessMap=c,i.roughnessMap=c,e.disposeSet.add(c)})),o.doubleSided===!0&&(i.side=THREE__namespace.DoubleSide);var l=o.alphaMode||ALPHA_MODES.OPAQUE;if(l===ALPHA_MODES.BLEND?(i.transparent=!0,i.depthWrite=!1):(i.transparent=!1,l===ALPHA_MODES.MASK&&(i.alphaTest=o.alphaCutoff!==void 0?o.alphaCutoff:.5)),o.normalTexture!==void 0&&(r.push(this.createMaterialTexture(o.normalTexture).then(function(c){i.normalMap=c,e.disposeSet.add(c)})),i.normalScale=new THREE__namespace.Vector2(1,1),o.normalTexture.scale!==void 0)){var d=o.normalTexture.scale;i.normalScale.set(d,d)}o.occlusionTexture!==void 0&&(r.push(this.createMaterialTexture(o.occlusionTexture).then(function(c){i.aoMap=c,e.disposeSet.add(c)})),o.occlusionTexture.strength!==void 0&&(i.aoMapIntensity=o.occlusionTexture.strength)),o.emissiveFactor!==void 0&&(i.emissive=new THREE__namespace.Color().fromArray(o.emissiveFactor)),o.emissiveTexture!==void 0&&r.push(this.createMaterialTexture(o.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 THREE__namespace.LineBasicMaterial;if(r.color=new THREE__namespace.Color(1,1,1),r.opacity=1,Object.keys(t.attributes).filter(function(l){return ATTRIBUTES[l]==="color"}).length>0&&(r.vertexColors=!0),Object.keys(t.attributes).filter(function(l){return ATTRIBUTES[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 o=i.pbrMetallicRoughness||{};if(Array.isArray(o.baseColorFactor)){var s=o.baseColorFactor;r.color.fromArray(s),r.opacity=s[3]}i.doubleSided===!0&&(r.side=THREE__namespace.DoubleSide);var u=i.alphaMode||ALPHA_MODES.OPAQUE;u===ALPHA_MODES.BLEND?(r.transparent=!0,r.depthWrite=!1):(r.transparent=!1,u===ALPHA_MODES.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 THREE__namespace.PointsMaterial;if(i.color=new THREE__namespace.Color(1,1,1),i.opacity=1,i.sizeAttenuation=!1,Object.keys(t.attributes).filter(function(d){return ATTRIBUTES[d]==="color"}).length>0&&(i.vertexColors=!0),Object.keys(t.attributes).filter(function(d){return ATTRIBUTES[d]==="tangent"}).length===0&&(i.normalScale&&(i.normalScale.y*=-1),i.clearcoatNormalScale&&(i.clearcoatNormalScale.y*=-1)),t.material!==void 0){var o=this.json.materials[t.material];o.name&&(i.name=o.name);var s=o.pbrMetallicRoughness||{};if(Array.isArray(s.baseColorFactor)){var u=s.baseColorFactor;i.color.fromArray(u),i.opacity=u[3]}s.baseColorTexture!==void 0&&r.push(this.createMaterialTexture(s.baseColorTexture).then(function(d){d.encoding=THREE__namespace.sRGBEncoding,i.map=d,e.disposeSet.add(d)})),o.doubleSided===!0&&(i.side=THREE__namespace.DoubleSide);var l=o.alphaMode||ALPHA_MODES.OPAQUE;l===ALPHA_MODES.BLEND?(i.transparent=!0,i.depthWrite=!1):(i.transparent=!1,l===ALPHA_MODES.MASK&&(i.alphaTest=o.alphaCutoff!==void 0?o.alphaCutoff:.5))}return this.disposeSet.add(i),Promise.all(r).then(function(){return i})},n.prototype.loadMaterial=function(t){var e=this,r,i=(r=t.mode)!==null&&r!==void 0?r:WEBGL_CONSTANTS.TRIANGLES,o="material:"+this.createPrimitiveKey(t),s=this.cache.get(o);if(s)return s;for(var u=null,l=0,d=values(this.extensions);l<d.length;l++){var c=d[l];if(u=c.loadMaterial(t,this),u)break}if(i===WEBGL_CONSTANTS.TRIANGLES||i===WEBGL_CONSTANTS.TRIANGLE_STRIP||i===WEBGL_CONSTANTS.TRIANGLE_FAN)u=this.loadMaterialAsMeshStandardMaterial(t);else if(i===WEBGL_CONSTANTS.LINES||i===WEBGL_CONSTANTS.LINE_STRIP||i===WEBGL_CONSTANTS.LINE_LOOP)u=this.loadMaterialAsLineBasicMaterial(t);else if(i===WEBGL_CONSTANTS.POINTS)u=this.loadMaterialAsPointsMaterial(t);else throw new Error("glTF: Primitive mode unsupported: "+i);return u=u.then(function(f){return e.disposeSet.add(f),f}),this.cache.set(o,u),u},n.prototype.loadTexture=function(t){var e=this,r="texture:"+t,i=this.cache.get(r);if(i)return i;for(var o=null,s=0,u=values(this.extensions);s<u.length;s++){var l=u[s];if(o=l.loadTexture(t,this),o)break}if(!o){var d=this.json.textures[t];o=this.loadImage(d.source).then(function(c){var f=new THREE__namespace.Texture(c);f.needsUpdate=!0,f.flipY=!1,d.name&&(f.name=d.name);var h=e.json.samplers||{},v=h[d.sampler]||{};f.magFilter=WEBGL_FILTERS[v.magFilter]||THREE__namespace.LinearFilter,f.minFilter=WEBGL_FILTERS[v.minFilter]||THREE__namespace.LinearMipmapLinearFilter,f.wrapS=WEBGL_WRAPPINGS[v.wrapS]||THREE__namespace.RepeatWrapping,f.wrapT=WEBGL_WRAPPINGS[v.wrapT]||THREE__namespace.RepeatWrapping;var A=f.dispose;return f.dispose=function(){return f.dispose=A,c.close(),A.call(this)},f})}return o=o.then(function(c){return e.disposeSet.add(c),c}),this.cache.set(r,o),o},n.prototype.loadMesh=function(t){for(var e=this,r=null,i=0,o=values(this.extensions);i<o.length;i++){var s=o[i];if(r=s.loadMesh(t,this),r)break}if(!r){var u=this.json.meshes[t],l=u.primitives,d=Promise.all(l.map(function(f){return e.loadGeometry(f)})),c=Promise.all(l.map(function(f){return e.loadMaterial(f)}));r=Promise.all([d,c]).then(function(f){for(var h=f[0],v=f[1],A=[],m=0;m<l.length;m++){var y=l[m],p=h[m],g=v[m],b=y.mode||WEBGL_CONSTANTS.TRIANGLES,T=void 0;if(b===WEBGL_CONSTANTS.TRIANGLES||b===WEBGL_CONSTANTS.TRIANGLE_STRIP||b===WEBGL_CONSTANTS.TRIANGLE_FAN)if(b===WEBGL_CONSTANTS.TRIANGLE_STRIP?p=e.toGeometryTrianglesDrawMode(p,THREE__namespace.TriangleStripDrawMode):b===WEBGL_CONSTANTS.TRIANGLE_FAN&&(p=e.toGeometryTrianglesDrawMode(p,THREE__namespace.TriangleFanDrawMode)),u.isSkinnedMesh){var _=new THREE__namespace.SkinnedMesh(p,g);p.attributes.skinWeight.normalized||_.normalizeSkinWeights(),T=_}else T=new THREE__namespace.Mesh(p,g);else if(b===WEBGL_CONSTANTS.POINTS)T=new THREE__namespace.Points(p,g);else if(b===WEBGL_CONSTANTS.LINES)T=new THREE__namespace.LineSegments(p,g);else if(b===WEBGL_CONSTANTS.LINE_STRIP)T=new THREE__namespace.Line(p,g);else if(b===WEBGL_CONSTANTS.LINE_LOOP)T=new THREE__namespace.LineLoop(p,g);else throw new Error("glTF: Primitive mode unsupported: "+b);if(Object.keys(p.morphAttributes).length>0){if(u.weights!==void 0)for(var w=0,x=u.weights.length;w<x;w++)T.morphTargetInfluences[w]=u.weights[w];if(u.extras&&Array.isArray(u.extras.targetNames)){var M=u.extras.targetNames;if(T.morphTargetInfluences.length===M.length){T.morphTargetDictionary={};for(var w=0,x=M.length;w<x;w++)T.morphTargetDictionary[M[w]]=w}else console.warn("glTF: Invalid extras.targetNames length. Ignoring names.")}}T.name=e.createUniqueName(u.name||"mesh_"+t),A.push(T)}if(A.length===1)return A[0];for(var R=new THREE__namespace.Group,I=0,S=A;I<S.length;I++){var T=S[I];R.add(T)}return R})}return r},n.prototype.loadNodeAttachments=function(t){for(var e=[],r=0,i=values(this.extensions);r<i.length;r++){var o=i[r],s=o.loadNodeAttachments(t,this);s&&e.push(s)}return e},n.prototype.loadNode=function(t){var e="node:"+t,r=this.cache.get(e);if(r)return r;var i=this.json,o=i.nodes[t],s=o.name?this.createUniqueName(o.name):"",u=[];o.mesh!==void 0&&u.push(this.loadMesh(o.mesh).then(function(h){if(o.weights!==void 0){var v=o.weights;h.traverse(function(A){if(A instanceof THREE__namespace.Mesh||A instanceof THREE__namespace.Line||A instanceof THREE__namespace.Points)for(var m=0,y=v.length;m<y;m++)A.morphTargetInfluences[m]=v[m]})}return h})),o.camera!==void 0&&u.push(this.loadCamera(o.camera));for(var l=this.loadNodeAttachments(t),d=0,c=l;d<c.length;d++){var f=c[d];u.push(f)}return Promise.all(u).then(function(h){var v;if(o.isBone===!0?v=new THREE__namespace.Bone:h.length>1?v=new THREE__namespace.Group:h.length===1?v=h[0]:v=new THREE__namespace.Object3D,v!==h[0])for(var A=0,m=h.length;A<m;A++)v.add(h[A]);if(o.name&&(v.name=s),o.matrix!==void 0){var y=new THREE__namespace.Matrix4;y.fromArray(o.matrix),v.applyMatrix4(y)}else o.translation!==void 0&&v.position.fromArray(o.translation),o.rotation!==void 0&&v.quaternion.fromArray(o.rotation),o.scale!==void 0&&v.scale.fromArray(o.scale);return v})},n.prototype.loadScene=function(t){var e=this.json,r=e.scenes[t],i=new THREE__namespace.Group;r.name&&(i.name=this.createUniqueName(r.name));for(var o=r.nodes||[],s=[],u=0,l=o.length;u<l;u++)s.push(this.buildNodeHierarchy(o[u],i));return Promise.all(s).then(function(){return i})},n.prototype.createMaterialTexture=function(t){var e=this;return this.loadTexture(t.index).then(function(r){for(var i=0,o=values(e.extensions);i<o.length;i++){var s=o[i],u=s.extendTexture(r,t,e);u&&(r=u)}return r})},n.prototype.addGeometryPrimitiveAttributes=function(t,e){var r=this,i=e.attributes,o=[],s=function(_){var w=ATTRIBUTES[_]||_.toLowerCase();if(w in t.attributes)return"continue";o.push(u.loadAccessor(i[_]).then(function(x){x&&t.setAttribute(w,x)}))},u=this;for(var l in i)s(l);e.indices!==void 0&&!t.index&&o.push(this.loadAccessor(e.indices).then(function(_){_&&t.setIndex(_)}));var d=new THREE__namespace.Box3;if(i.POSITION!==void 0){var c=this.json.accessors[i.POSITION],f=c.min,h=c.max;if(f!==void 0&&h!==void 0){if(d.set(new THREE__namespace.Vector3(f[0],f[1],f[2]),new THREE__namespace.Vector3(h[0],h[1],h[2])),c.normalized){var v=getNormalizedComponentScale(WEBGL_COMPONENT_TYPES[c.componentType]);d.min.multiplyScalar(v),d.max.multiplyScalar(v)}}else console.warn("glTF: Missing min/max properties for accessor POSITION.")}var A=e.targets;if(A!==void 0){for(var m=new THREE__namespace.Vector3,y=new THREE__namespace.Vector3,p=0,g=A.length;p<g;p++){var b=A[p];if(b.POSITION!==void 0){var c=this.json.accessors[b.POSITION],f=c.min,h=c.max;if(f!==void 0&&h!==void 0){if(y.setX(Math.max(Math.abs(f[0]),Math.abs(h[0]))),y.setY(Math.max(Math.abs(f[1]),Math.abs(h[1]))),y.setZ(Math.max(Math.abs(f[2]),Math.abs(h[2]))),c.normalized){var v=getNormalizedComponentScale(WEBGL_COMPONENT_TYPES[c.componentType]);y.multiplyScalar(v)}m.max(y)}else console.warn("glTF: Missing min/max properties for accessor POSITION.")}}d.expandByVector(m)}t.boundingBox=d;var T=new THREE__namespace.Sphere;return d.getCenter(T.center),T.radius=d.min.distanceTo(d.max)/2,t.boundingSphere=T,Promise.all(o).then(function(){if(t.attributes.uv&&!t.attributes.uv2&&r.options.copyUV2&&t.setAttribute("uv2",t.attributes.uv),e.targets){for(var _=!1,w=!1,x=0,M=e.targets.length;x<M;x++){var R=e.targets[x];if(R.POSITION!==void 0&&(_=!0),R.NORMAL!==void 0&&(w=!0),_&&w)break}if(!_&&!w)return t;var I=[];t.morphTargetsRelative=!0;for(var S=function(B,O){var F=e.targets[B];_?I.push(r.loadAccessor(F.POSITION).then(function(H){H&&(t.morphAttributes.position[B]=H)})):t.morphAttributes.position[B]=t.attributes.position,w?I.push(r.loadAccessor(F.NORMAL).then(function(H){H&&(t.morphAttributes.normal[B]=H)})):t.morphAttributes.normal[B]=t.attributes.normal},x=0,M=e.targets.length;x<M;x++)S(x,M);return Promise.all(I).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(o){if(i.skin===void 0)return o;var s;return r.loadSkin(i.skin).then(function(u){s=u;for(var l=[],d=0,c=s.joints.length;d<c;d++)l.push(r.loadNode(s.joints[d]));return Promise.all(l)}).then(function(u){return o.traverse(function(l){if(l instanceof THREE__namespace.SkinnedMesh){for(var d=[],c=[],f=0,h=u.length;f<h;f++){var v=u[f];if(v instanceof THREE__namespace.Bone){d.push(v);var A=new THREE__namespace.Matrix4;s.inverseBindMatrices!==void 0&&A.fromArray(s.inverseBindMatrices.array,f*16),c.push(A)}else console.warn('glTF: Joint "%s" could not be found.',s.joints[f])}l.bind(new THREE__namespace.Skeleton(d,c),l.matrixWorld)}}),o})}).then(function(o){e.add(o);var s=[];if(i.children)for(var u=i.children,l=0,d=u.length;l<d;l++){var c=u[l];s.push(r.buildNodeHierarchy(c,o))}return Promise.all(s).then(function(){return o})})},n.prototype.createUniqueName=function(t){for(var e=THREE__namespace.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 pathJoin(this.options.resourcePath,appendSearch(t,this.options.search))},n.prototype.toGeometryTrianglesDrawMode=function(t,e){var r=t.getIndex();if(r===null){var i=[],o=t.getAttribute("position");if(o!==void 0){for(var s=0;s<o.count;s++)i.push(s);t.setIndex(i),r=t.getIndex()}}if(r===null)return console.error("glTF: Undefined position attribute. Processing not possible."),t;var u=r.count-2,l=[];if(e===THREE__namespace.TriangleFanDrawMode)for(var s=1;s<=u;s++)l.push(r.getX(0)),l.push(r.getX(s)),l.push(r.getX(s+1));else for(var s=0;s<u;s++)s%2===0?(l.push(r.getX(s)),l.push(r.getX(s+1)),l.push(r.getX(s+2))):(l.push(r.getX(s+2)),l.push(r.getX(s+1)),l.push(r.getX(s)));l.length/3!==u&&console.error("glTF: Unable to generate correct amount of triangles.");var d=t.clone();return d.setIndex(l),d},n}();function getNormalizedComponentScale(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 BaseExtension=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}(),KHR_binary_glTF=function(n){__extends(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 decodeText(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),o=0,s=null,u=null;o<i.byteLength;){var l=i.getUint32(o,!0);o+=4;var d=i.getUint32(o,!0);if(o+=4,d===t.CHUNK_TYPES.JSON){var c=new Uint8Array(e,t.HEADER_LENGTH+o,l);s=decodeText(c)}else if(d===t.CHUNK_TYPES.BIN){var f=t.HEADER_LENGTH+o;u=e.slice(f,f+l)}o+=l}if(s===null)throw new Error("glTF:KHR_binary_glTF: JSON content not found.");this.content=s,this.body=u},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}(BaseExtension),defaultDecoderPath="https://vr-public.realsee-cdn.cn/release/static/image/release/five/resource/draco/1.5.6/",defaultAttributeIDs={position:"POSITION",normal:"NORMAL",color:"COLOR",uv:"TEX_COORD"},defaultAttributeTypes={position:"Float32Array",normal:"Float32Array",color:"Float32Array",uv:"Float32Array"},Draco=function(){function n(){this.decoderPath=defaultDecoderPath,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 o={attributeIDs:r||defaultAttributeIDs,attributeTypes:i||defaultAttributeTypes,useUniqueIDs:!!r};this.decodeGeometry(t,o).then(e)},n.prototype.decodeGeometry=function(t,e){var r=this;e===void 0&&(e={attributeIDs:defaultAttributeIDs,attributeTypes:defaultAttributeTypes,useUniqueIDs:!1});for(var i in e.attributeTypes){var o=e.attributeTypes[i];o.BYTES_PER_ELEMENT!==void 0&&(e.attributeTypes[i]=o.name)}var s,u=this.workerNextTaskID++,l=t.byteLength,d=this._getWorker(u,l).then(function(c){return s=c,new Promise(function(f,h){s._callbacks[u]={resolve:f,reject:h},s.postMessage({type:"decode",id:u,taskConfig:e,buffer:t},[t])})}).then(function(c){return r._createGeometry(c.geometry)});return d.catch(function(){return!0}).then(function(){s&&u&&r._releaseTask(s,u)}),d},n.prototype._createGeometry=function(t){var e=new THREE__namespace.BufferGeometry;t.index&&e.setIndex(new THREE__namespace.BufferAttribute(t.index.array,1));for(var r=0;r<t.attributes.length;r++){var i=t.attributes[r],o=i.name,s=i.array,u=i.itemSize;e.setAttribute(o,new THREE__namespace.BufferAttribute(s,u))}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=ajax(this.decoderPath+"draco_decoder.js",{responseType:"text"}).then(function(o){return o.body});this.decoderPending=r.then(function(o){var s=["/* draco decoder */",o,"","/* worker */",DRACOWorker].join(`
418
418
  `);t.workerSourceURL=URL.createObjectURL(new Blob([s]))})}else{var r=ajax(this.decoderPath+"draco_wasm_wrapper.js",{responseType:"text"}).then(function(s){return s.body}),i=ajax(this.decoderPath+"draco_decoder.wasm",{responseType:"arraybuffer"}).then(function(s){return s.body});this.decoderPending=Promise.all([r,i]).then(function(s){var u=s[0],l=s[1];t.decoderConfig.wasmBinary=l;var d=["/* draco decoder */",u,"","/* worker */",DRACOWorker].join(`
419
419
  `);t.workerSourceURL=URL.createObjectURL(new Blob([d]))})}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(s){var u=s.data;switch(u.type){case"decode":i._callbacks[u.id].resolve(u);break;case"error":i._callbacks[u.id].reject(u);break;default:console.error('DRACO: Unexpected message, "'+u.type+'"')}},r.workerPool.push(i)}else r.workerPool.sort(function(s,u){return s._taskLoad>u._taskLoad?-1:1});var o=r.workerPool[r.workerPool.length-1];return o._taskCosts[t]=e,o._taskLoad+=e,o})},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}(),draco=new Draco,DRACOWorker=`
420
420
  let decoderConfig;
@@ -880,7 +880,7 @@ void main() {
880
880
  return ( value & ( value - 1 ) ) === 0 && value !== 0;
881
881
 
882
882
  }
883
- `,EXTENSION_NAME$4="KHR_texture_basisu",KHR_texture_basisu=function(n){__extends(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[EXTENSION_NAME$4])return null;var o=i.extensions[EXTENSION_NAME$4],s=r.json.images[o.source],u=null;if(s.bufferView)u=r.loadBufferView(s.bufferView).then(function(l){return ktx2.parse(l)});else if(s.uri)u=r.options.fetcher.ajax(r.resolveResouce(s.uri),{responseType:"arraybuffer"}).then(function(l){return ktx2.parse(l.body)});else throw new Error("glTF: Invalid image defs.");return u},t}(BaseExtension),EXTENSION_NAME$3="KHR_texture_transform",KHR_texture_transform=function(n){__extends(t,n);function t(){return n!==null&&n.apply(this,arguments)||this}return t.prototype.extendTexture=function(e,r,i){var o=r.extensions!==void 0?r.extensions[EXTENSION_NAME$3]:void 0;return o?(o.texCoord!==void 0&&console.warn('glTF: Custom UV sets in "'+EXTENSION_NAME$3+'" extension not yet supported.'),o.offset===void 0&&o.rotation===void 0&&o.scale===void 0||(e=e.clone(),e.needsUpdate=!0,o.offset!==void 0&&e.offset.fromArray(o.offset),o.rotation!==void 0&&(e.rotation=o.rotation),o.scale!==void 0&&e.repeat.fromArray(o.scale)),e):null},t}(BaseExtension),KHR_mesh_quantization=function(n){__extends(t,n);function t(){return n!==null&&n.apply(this,arguments)||this}return t}(BaseExtension),meshoptDecoder=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,o,s=WebAssembly.instantiate(u(i),{}).then(function(p){o=p.instance,o.exports.__wasm_call_ctors()});function u(p){for(var g=new Uint8Array(p.length),b=0;b<p.length;++b){var T=p.charCodeAt(b);g[b]=T>96?T-97:T>64?T-39:T+4}for(var _=0,b=0;b<p.length;++b)g[_++]=g[b]<60?r[g[b]]:(g[b]-60)*64+g[++b];return g.buffer.slice(0,_)}function l(p,g,b,T,_,w){var x=o.exports.sbrk,M=b+3&-4,R=x(M*T),I=x(_.length),S=new Uint8Array(o.exports.memory.buffer);S.set(_,I);var B=p(R,b,T,I,_.length);if(B==0&&w&&w(R,M,T),g.set(S.subarray(R,R+b*T)),x(R-x(0)),B!=0)throw new Error("Malformed buffer data: "+B)}var d={NONE:"",OCTAHEDRAL:"meshopt_decodeFilterOct",QUATERNION:"meshopt_decodeFilterQuat",EXPONENTIAL:"meshopt_decodeFilterExp"},c={ATTRIBUTES:"meshopt_decodeVertexBuffer",TRIANGLES:"meshopt_decodeIndexBuffer",INDICES:"meshopt_decodeIndexSequence"},f=[],h=0;function v(p){var g={object:new Worker(p),pending:0,requests:{}};return g.object.onmessage=function(b){var T=b.data;g.pending-=T.count,g.requests[T.id][T.action](T.value),delete g.requests[T.id]},g}function A(p){for(var g="var instance; var ready = WebAssembly.instantiate(new Uint8Array(["+new Uint8Array(u(i))+"]), {}).then(function(result) { instance = result.instance; instance.exports.__wasm_call_ctors(); });self.onmessage = workerProcess;"+l.toString()+y.toString(),b=new Blob([g],{type:"text/javascript"}),T=URL.createObjectURL(b),_=0;_<p;++_)f[_]=v(T);URL.revokeObjectURL(T)}function m(p,g,b,T,_){for(var w=f[0],x=1;x<f.length;++x)f[x].pending<w.pending&&(w=f[x]);return new Promise(function(M,R){var I=new Uint8Array(b),S=h++;w.pending+=p,w.requests[S]={resolve:M,reject:R},w.object.postMessage({id:S,count:p,size:g,source:I,mode:T,filter:_},[I.buffer])})}function y(p){s.then(function(){var g=p.data;try{var b=new Uint8Array(g.count*g.size);l(o.exports[g.mode],b,g.count,g.size,g.source,o.exports[g.filter]),self.postMessage({id:g.id,count:g.count,action:"resolve",value:b},[b.buffer])}catch(T){self.postMessage({id:g.id,count:g.count,action:"reject",value:T})}})}return{ready:s,supported:!0,useWorkers:function(p){A(p)},decodeVertexBuffer:function(p,g,b,T,_){l(o.exports.meshopt_decodeVertexBuffer,p,g,b,T,o.exports[d[_]])},decodeIndexBuffer:function(p,g,b,T){l(o.exports.meshopt_decodeIndexBuffer,p,g,b,T)},decodeIndexSequence:function(p,g,b,T){l(o.exports.meshopt_decodeIndexSequence,p,g,b,T)},decodeGltfBuffer:function(p,g,b,T,_,w){l(o.exports[c[_]],p,g,b,T,o.exports[d[w]])},decodeGltfBufferAsync:function(p,g,b,T,_){return f.length>0?m(p,g,b,c[T],d[_]):s.then(function(){var w=new Uint8Array(p*g);return l(o.exports[c[T]],w,p,g,b,o.exports[d[_]]),w})}}}(),EXTENSION_NAME$2="EXT_meshopt_compression",EXT_meshopt_compression=function(n){__extends(t,n);function t(){return n!==null&&n.apply(this,arguments)||this}return t.prototype.loadBufferView=function(e,r){var i=r.json,o=i.bufferViews[e];if(o.extensions&&o.extensions[EXTENSION_NAME$2]){var s=o.extensions[EXTENSION_NAME$2],u=r.loadBuffer(s.buffer);if(!meshoptDecoder.supported){if(i.extensionsRequired&&i.extensionsRequired.indexOf(EXTENSION_NAME$2)>=0)throw new Error("THREE.GLTFLoader: setMeshoptDecoder must be called before loading compressed files");return null}return Promise.all([u,meshoptDecoder.ready]).then(function(l){var d=l[0],c=s.byteOffset||0,f=s.byteLength||0,h=s.count,v=s.byteStride,A=new ArrayBuffer(h*v),m=new Uint8Array(d,c,f);return meshoptDecoder.decodeGltfBuffer(new Uint8Array(A),h,v,m,s.mode,s.filter),A})}else return null},t}(BaseExtension),EXTENSION_NAME$1="EXT_texture_webp",EXT_texture_webp=function(n){__extends(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 imageSupport().then(function(i){r.supportsWep=i.webp})},t.prototype.loadTexture=function(e,r){var i=r.json,o=i.textures[e];if(!o.extensions||!o.extensions[EXTENSION_NAME$1]||!this.supportsWep)return null;var s=o.extensions[EXTENSION_NAME$1];return r.loadImage(s.source).then(function(u){var l=new THREE__namespace.Texture(u);l.needsUpdate=!0,l.flipY=!1,o.name&&(l.name=o.name);var d=r.json.samplers||{},c=d[o.sampler]||{};return l.magFilter=WEBGL_FILTERS[c.magFilter]||THREE__namespace.LinearFilter,l.minFilter=WEBGL_FILTERS[c.minFilter]||THREE__namespace.LinearMipmapLinearFilter,l.wrapS=WEBGL_WRAPPINGS[c.wrapS]||THREE__namespace.RepeatWrapping,l.wrapT=WEBGL_WRAPPINGS[c.wrapT]||THREE__namespace.RepeatWrapping,l})},t}(BaseExtension),EXTENSION_NAME="CESIUM_RTC",CESIUM_RTC=function(n){__extends(t,n);function t(){return n!==null&&n.apply(this,arguments)||this}return t.prototype.emitResult=function(e,r){if(r.json.extensions[EXTENSION_NAME]&&r.json.extensions[EXTENSION_NAME].center){var i=r.json.extensions[EXTENSION_NAME].center;e.CESIUM_RTC={center:new THREE__namespace.Vector3().fromArray(i)}}},t}(BaseExtension);const pointcloudFragmentShader=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var r=113,i=126,o=0,s="";return t[o].split(s).map(function(u){return u.charCodeAt(o)>i?u:String.fromCharCode((u.charCodeAt(o)+r)%i)}).join(s)}("{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@-cvr]|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-=;DBH------\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"),pointcloudVertexShader=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var r=113,i=126,o=0,s="";return t[o].split(s).map(function(u){return u.charCodeAt(o)>i?u:String.fromCharCode((u.charCodeAt(o)+r)%i)}).join(s)}("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-sy|n-prr{UrvtuH{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 rHn\bv{t-rp@-cvr]|vv|{H0qrsv{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--rp@-p|y|-J-r\x07r?Q5tnqvr{ar\x07r9-rp?5|yq]|vv|{;\b-<->=;=9-=;B66;toH--r{-p|y|H\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--cvr]|vv|{-J-:z]|vv|{;\x07\b H--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-prr{Urvtu-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-prr{Urvtu-7-rny]|v{`v r-<-urvtuH--0r{qvs--]|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--tyl]|v{`v r-J-]|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-prr{Urvtu-<-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|{H0r{qvs\f");var scratchVector4=new THREE__namespace.Vector4,shaderUniforms$1=Object.assign({pointScale:new THREE__namespace.Uniform(1),pointMinPixel:new THREE__namespace.Uniform(1),pointMaxPixel:new THREE__namespace.Uniform(1),opacity:new THREE__namespace.Uniform(1),gradientTexture:new THREE__namespace.Uniform(null),modelAlpha:new THREE__namespace.Uniform(0),clippers:new THREE__namespace.Uniform([]),shownFloorIndex:new THREE__namespace.Uniform(-1),constantColor:new THREE__namespace.Uniform(null),geometricError:new THREE__namespace.Uniform(0),pixelRatio:new THREE__namespace.Uniform(1),screenHeight:new THREE__namespace.Uniform(512),floor:new THREE__namespace.Uniform(0)},THREE__namespace.UniformsUtils.clone(THREE__namespace.UniformsLib.common)),PBMPointCloudMaterial=function(n){__extends(t,n);function t(e){e===void 0&&(e={});var r,i,o,s,u,l,d,c,f,h,v,A,m,y,p,g,b,T,_,w,x=n.call(this,{vertexShader:pointcloudVertexShader,fragmentShader:pointcloudFragmentShader,uniforms:THREE__namespace.UniformsUtils.clone(shaderUniforms$1),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(R){this.uniforms.constantColor.value=R;var I=this.defines.USE_CONSTANT_COLOR,S=R!==null;I!==S&&(this.defines.USE_CONSTANT_COLOR=S,this.needsUpdate=!0)}},opacity:{get:function(){return this.uniforms.opacity.value},set:function(R){this.uniforms.opacity.value=R}},modelAlpha:{get:function(){return this.uniforms.modelAlpha.value},set:function(R){this.uniforms.modelAlpha.value=R}},shownFloorIndex:{get:function(){return this.uniforms.shownFloorIndex.value},set:function(R){this.uniforms.shownFloorIndex.value=R}},clippers:{get:function(){return M},set:function(R){M!==R&&(M=R,this.uniforms.clippers.value=(M||[]).map(function(I){var S=typeof I.floorIndex=="number"?I.floorIndex:-1,B=new THREE__namespace.Matrix4().getInverse(I.clippingBoxMatrix);return{matrixInverse:B,floorIndex:S}}),this.needsUpdate=!0)}},pointColor:{get:function(){return this.defines.USE_POINT_COLOR_ALTITUDE===!0?"ALTITUDE":"RGB"},set:function(R){var I=R==="ALTITUDE";this.defines.USE_POINT_COLOR_ALTITUDE!==I&&(this.defines.USE_POINT_COLOR_ALTITUDE=I,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(R){var I=R==="ATTENUATION",S=R==="GEOMETRIC";this.defines.USE_POINT_SIZE_GEOMETRIC!==S&&(this.defines.USE_POINT_SIZE_GEOMETRIC=S,this.needsUpdate=!0),this.defines.USE_POINT_SIZE_ATTENUATION!==I&&(this.defines.USE_POINT_SIZE_ATTENUATION=I,this.needsUpdate=!0)}},pointShape:{get:function(){return this.defines.USE_POINT_SHAPE_CIRCLE===!0?"CIRCLE":"SQUARE"},set:function(R){var I=R==="CIRCLE";this.defines.USE_POINT_SHAPE_CIRCLE!==I&&(this.defines.USE_POINT_SHAPE_CIRCLE=I,this.needsUpdate=!0)}},pointScale:{get:function(){return this.uniforms.pointScale.value},set:function(R){this.uniforms.pointScale.value=R}},pointBack:{get:function(){return this.defines.USE_POINT_BACK_HIDDEN===!0?"HIDDEN":this.defines.USE_POINT_BACK_DARK===!0?"DARK":"VISIBLE"},set:function(R){var I=R==="HIDDEN",S=R==="DARK";this.defines.USE_POINT_BACK_HIDDEN!==I&&(this.defines.USE_POINT_BACK_HIDDEN=I,this.needsUpdate=!0),this.defines.USE_POINT_BACK_DARK!==S&&(this.defines.USE_POINT_BACK_DARK=S,this.needsUpdate=!0)}},pointMinPixel:{get:function(){return this.uniforms.pointMinPixel.value},set:function(R){this.uniforms.pointMinPixel.value=R}},pointMaxPixel:{get:function(){return this.uniforms.pointMaxPixel.value},set:function(R){this.uniforms.pointMaxPixel.value=R}},useEDL:{get:function(){return this.defines.USE_EDL},set:function(R){R!==this.defines.USE_EDL&&(this.defines.USE_EDL=R,this.needsUpdate=!0)}},useHQWeight:{get:function(){return this.defines.USE_HQ_WEIGHT},set:function(R){R!==this.defines.USE_HQ_WEIGHT&&(this.defines.USE_HQ_WEIGHT=R,this.needsUpdate=!0)}},useHQDepth:{get:function(){return this.defines.USE_HQ_DEPTH},set:function(R){R!==this.defines.USE_HQ_DEPTH&&(this.defines.USE_HQ_DEPTH=R,this.needsUpdate=!0)}},gradientTexture:{get:function(){return this.uniforms.gradientTexture.value},set:function(R){this.uniforms.gradientTexture.value=R}},floor:{get:function(){return this.uniforms.floor.value},set:function(R){this.uniforms.floor.value=R}}}),x.pano0=(r=e.pano0)!==null&&r!==void 0?r:defaultPbmParameters.pano0,x.pano1=(i=e.pano1)!==null&&i!==void 0?i:defaultPbmParameters.pano1,x.modelAlpha=(o=e.modelAlpha)!==null&&o!==void 0?o:defaultPbmParameters.modelAlpha,x.progress=(s=e.progress)!==null&&s!==void 0?s:defaultPbmParameters.progress,x.useBlackTransition=(u=e.useBlackTransition)!==null&&u!==void 0?u:defaultPbmParameters.useBlackTransition,x.constantColor=(l=e.constantColor)!==null&&l!==void 0?l:defaultPbmParameters.constantColor,x.opacity=(d=e.opacity)!==null&&d!==void 0?d:defaultPbmParameters.opacity,x.shownFloorIndex=(c=e.shownFloorIndex)!==null&&c!==void 0?c:defaultPbmParameters.shownFloorIndex,x.clippers=(f=e.clippers)!==null&&f!==void 0?f:defaultPbmParameters.clippers,x.useEDL=(h=e.useEDL)!==null&&h!==void 0?h:defaultPbmParameters.useEDL,x.useHQWeight=(v=e.useHQWeight)!==null&&v!==void 0?v:defaultPbmParameters.useHQWeight,x.useHQDepth=(A=e.useHQDepth)!==null&&A!==void 0?A:defaultPbmParameters.useHQDepth,x.pointColor=(m=e.pointColor)!==null&&m!==void 0?m:defaultPbmParameters.pointColor,x.pointShape=(y=e.pointShape)!==null&&y!==void 0?y:defaultPbmParameters.pointShape,x.pointSize=(p=e.pointSize)!==null&&p!==void 0?p:defaultPbmParameters.pointSize,x.pointScale=(g=e.pointScale)!==null&&g!==void 0?g:defaultPbmParameters.pointScale,x.pointBack=(b=e.pointBack)!==null&&b!==void 0?b:defaultPbmParameters.pointBack,x.pointMinPixel=(T=e.pointMinPixel)!==null&&T!==void 0?T:defaultPbmParameters.pointMinPixel,x.pointMaxPixel=(_=e.pointMaxPixel)!==null&&_!==void 0?_:defaultPbmParameters.pointMaxPixel,x.gradientTexture=(w=e.gradientTexture)!==null&&w!==void 0?w:defaultPbmParameters.gradientTexture,x.floor=0,x.transparent=!1,x}return t.prototype.onBeforeCompile=function(e,r){var i,o,s=String((o=(i=this.clippers)===null||i===void 0?void 0:i.length)!==null&&o!==void 0?o:0);e.vertexShader=e.vertexShader.replace(/NUM_CLIPPERS/g,s),e.fragmentShader=e.fragmentShader.replace(/NUM_CLIPPERS/g,s)},t.prototype.update=function(e,r){var i=r instanceof Camera?r.pixelRatio:e.getPixelRatio(),o=r instanceof Camera?r.screenHeight:e.getViewport(scratchVector4).z;this.uniforms.pixelRatio.value=i,this.uniforms.screenHeight.value=o,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=THREE__namespace.CustomBlending,this.blendSrc=THREE__namespace.SrcAlphaFactor,this.blendSrcAlpha=THREE__namespace.SrcAlphaFactor,this.blendDst=THREE__namespace.OneFactor,this.blendDstAlpha=THREE__namespace.OneFactor):(this.depthWrite=!0,this.transparent=this.shownFloorIndex>-1||this.opacity<1||this.modelAlpha<1,this.blendDst=THREE__namespace.OneMinusSrcAlphaFactor,this.blendEquation=THREE__namespace.AddEquation,this.blendSrcAlpha=null,this.blendDstAlpha=null,this.blendEquationAlpha=null,this.blending=THREE__namespace.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}(THREE__namespace.ShaderMaterial),PBM_mesh=function(n){__extends(t,n);function t(){return n!==null&&n.apply(this,arguments)||this}return t.prototype.loadMesh=function(e,r){var i=this,o=r.json.meshes[e],s=o.primitives,u=Promise.all(s.map(function(c){return r.loadGeometry(c)})),l=Promise.all(s.map(function(c){return i.loadPBMMaterial(c,r)})),d=Promise.all([u,l]).then(function(c){for(var f=c[0],h=c[1],v=[],A=0;A<s.length;A++){var m=s[A],y=f[A],p=h[A];y.attributes.normal===void 0&&(p.flatShading=!0),y.attributes.tangent===void 0&&p.normalScale&&(p.normalScale.y*=-1);var g=m.mode||WEBGL_CONSTANTS.TRIANGLES,b=void 0;if(g===WEBGL_CONSTANTS.TRIANGLES||g===WEBGL_CONSTANTS.TRIANGLE_STRIP||g===WEBGL_CONSTANTS.TRIANGLE_FAN)g===WEBGL_CONSTANTS.TRIANGLE_STRIP?y=r.toGeometryTrianglesDrawMode(y,THREE__namespace.TriangleStripDrawMode):g===WEBGL_CONSTANTS.TRIANGLE_FAN&&(y=r.toGeometryTrianglesDrawMode(y,THREE__namespace.TriangleFanDrawMode)),y=y.clone(),y.clearGroups(),y.addGroup(0,y.index?y.index.count:y.attributes.position.count,0),y.attributes.normal||y.computeVertexNormals(),b=new PBMMesh(y,[p]);else if(g===WEBGL_CONSTANTS.POINTS)b=new PBMPointCloud(y,p);else throw new Error("glTF: Primitive mode unsupported: "+g);b.name=r.createUniqueName(o.name||"mesh_"+e),v.push(b)}if(v.length===1)return v[0];for(var T=new THREE__namespace.Group,_=0,w=v;_<w.length;_++){var b=w[_];T.add(b)}return T});return d},t.prototype.loadPBMMaterial=function(e,r){var i=e.mode,o=null;if(i===WEBGL_CONSTANTS.TRIANGLES||i===WEBGL_CONSTANTS.TRIANGLE_STRIP||i===WEBGL_CONSTANTS.TRIANGLE_FAN)o=this.loadPBMMeshMaterial(e,r);else if(i===WEBGL_CONSTANTS.POINTS)o=this.loadPBMPointCloudMaterial(e,r);else throw new Error("glTF: Primitive mode unsupported: "+i);return o},t.prototype.extendTexture=function(e,r,i){return e.minFilter=THREE__namespace.LinearFilter,e.magFilter=THREE__namespace.LinearFilter,e.generateMipmaps=!1,e},t.prototype.loadPBMPointCloudMaterial=function(e,r){var i=new PBMPointCloudMaterial;return Object.keys(e.attributes).filter(function(o){return ATTRIBUTES[o]==="normal"}).length>0&&(i.defines.USE_POINT_NORMAL=!0),Promise.resolve(i)},t.prototype.loadPBMMeshMaterial=function(e,r){var i=[],o=new PBMMeshMaterial;if(o.uniforms.diffuse.value=new THREE__namespace.Color(1,1,1),o.uniforms.exposure.value=3.3,o.defines.USE_MAP=!1,Object.keys(e.attributes).filter(function(c){return ATTRIBUTES[c]==="color"}).length>0&&(o.vertexColors=!0),Object.keys(e.attributes).filter(function(c){return ATTRIBUTES[c]==="tangent"}).length===0&&(o.normalScale&&(o.normalScale.y*=-1),o.clearcoatNormalScale&&(o.clearcoatNormalScale.y*=-1)),e.material!==void 0){var s=r.json.materials[e.material];s.name&&(o.name=s.name);var u=s.pbrMetallicRoughness||{};if(Array.isArray(u.baseColorFactor)){var l=u.baseColorFactor;o.uniforms.diffuse.value.fromArray(l)}if(u.baseColorTexture!==void 0&&i.push(r.createMaterialTexture(u.baseColorTexture).then(function(c){o.uniforms.map.value=c,o.defines.USE_MAP=!0})),s.doubleSided===!0&&(o.side=THREE__namespace.DoubleSide),s.normalTexture!==void 0&&(i.push(r.createMaterialTexture(s.normalTexture).then(function(c){o.uniforms.normalMap.value=c})),o.uniforms.normalScale.value=new THREE__namespace.Vector2(1,1),s.normalTexture.scale!==void 0)){var d=s.normalTexture.scale;o.uniforms.normalScale.value.set(d,d)}}return Promise.all(i).then(function(){return o})},t}(BaseExtension),EXTENSIONS={KHR_binary_glTF,KHR_draco_mesh_compression,KHR_texture_basisu,KHR_texture_transform,KHR_mesh_quantization,EXT_meshopt_compression,EXT_texture_webp,CESIUM_RTC,PBM_mesh};function parseGltf(n,t){var e,r,i,o={};if(t.addonExtensions)for(var s=0,u=t.addonExtensions;s<u.length;s++){var l=u[s];o[l]=new EXTENSIONS[l]}var d;if(typeof n=="string")d=n;else{var c=EXTENSIONS.KHR_binary_glTF.getMagic(n);if(c===EXTENSIONS.KHR_binary_glTF.HEADER_MAGIC){var f=new EXTENSIONS.KHR_binary_glTF;try{f.loadGlbBinary(n)}catch(p){return Promise.reject(p)}o.KHR_binary_glTF=f,d=f.content}else d=decodeText(new Uint8Array(n))}var h=JSON.parse(d);if(h.asset===void 0||Number(h.asset.version[0])<2)return Promise.reject(new Error("glTF: Unsupported asset. glTF versions >=2.0 are supported."));if(h.extensionsUsed)for(var v=h.extensionsRequired||[],A=0;A<h.extensionsUsed.length;A++){var m=h.extensionsUsed[A];o[m]||(EXTENSIONS[m]?o[m]=new EXTENSIONS[m]:v.indexOf(m)>=0&&console.warn('glTF: Unknown extension "'+m+'".'))}var y=new Parser(h,o,{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 y.parse()}var ROTATE_X_MATRIX$1=new THREE__namespace.Matrix4().fromArray([1,0,0,0,0,0,1,0,0,-1,0,0,0,0,0,1]);function loadB3dm(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 parseHeader(e,r,i)}).then(function(i){return parseTable(e,r,i)}).then(function(i){return parseGlTFArrayBuffer(e,r,i)})}).then(function(){var r;return parseGltf(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 o=new THREE__namespace.Matrix4;t.upAxis!=="Z"&&o.premultiply(ROTATE_X_MATRIX$1);var s=new THREE__namespace.Matrix4().setPosition(e.rtcCenter);if(o.premultiply(s),i.CESIUM_RTC){var u=new THREE__namespace.Matrix4().setPosition(i.CESIUM_RTC.center);o.premultiply(u)}var l=i.scene;return l.applyMatrix4(o),{type:"b3dm",uri:e.uri,byteLength:e.byteLength,object:l,dispose:function(){return i.dispose()}}})})}function parsePointCloud(n,t,e){var r=new FeatureTable(n.featureTableJson,n.featureTableBinary);return Promise.resolve().then(function(){var i=r.getExtension("3DTILES_draco_point_compression");if(i)return parseDraco(i,r);var o=[parsePosition(r),parseColor(r),parseNormal(r)];return Promise.all(o).then(function(s){var u=s[0],l=s[1],d=s[2];return{position:u,color:l,normal:d}})}).then(function(i){return n.attributes=i,e})}function createAttribute(n,t,e){return{type:n,array:t,size:e}}var POSITION_QUANTIZED_RANGE=65535;function parsePosition(n){if(n.hasProperty("POSITION")){var t=n.getPropertyArray("POSITION",GL_TYPE.FLOAT,3);return createAttribute(GL_TYPE.FLOAT,t,3)}else if(n.hasProperty("POSITION_QUANTIZED")){var e=n.getPropertyArray("POSITION_QUANTIZED",GL_TYPE.UNSIGNED_SHORT,3),r=n.getGlobalProperty("QUANTIZED_VOLUME_SCALE",GL_TYPE.FLOAT,3),i=n.getGlobalProperty("QUANTIZED_VOLUME_OFFSET",GL_TYPE.FLOAT,3);if(!r||!i)throw new Error("QUANTIZED_VOLUME_SCALE or QUANTIZED_VOLUME_OFFSET never found.");for(var o=new Float32Array(e.length),s=e.length/3,u=r[0]/POSITION_QUANTIZED_RANGE,l=r[1]/POSITION_QUANTIZED_RANGE,d=r[2]/POSITION_QUANTIZED_RANGE,c=i[0],f=i[1],h=i[2],v=0,A=void 0;v<s;v++)A=v*3,o[A]=e[A]*u+c,o[++A]=e[A]*l+f,o[++A]=e[A]*d+h;return createAttribute(GL_TYPE.FLOAT,o,3)}return null}function parseColor(n){if(n.hasProperty("RGB")){var t=n.getPropertyArray("RGB",GL_TYPE.UNSIGNED_BYTE,3);return createAttribute(GL_TYPE.UNSIGNED_BYTE,t,3)}else if(n.hasProperty("RGBA")){for(var t=n.getPropertyArray("RGBA",GL_TYPE.UNSIGNED_BYTE,4),e=t.length,r=new Uint8Array(e*3),i=0,o=void 0,s=void 0;i<e;i++)o=i*3,s=i*4,r[o]=t[s],r[++o]=t[++s],r[++o]=t[++s];return createAttribute(GL_TYPE.UNSIGNED_BYTE,t,4)}else if(n.hasProperty("RGB565")){for(var t=n.getPropertyArray("RGB565",GL_TYPE.UNSIGNED_SHORT,1),e=t.length,r=new Uint8Array(e*3),i=0,u=void 0,l=void 0;i<e;i++)l=t[i],u=i*3,r[u]=(l>>11&31)<<3,r[++u]=(l>>5&63)<<2,r[++u]=(l&31)<<3;return createAttribute(GL_TYPE.UNSIGNED_BYTE,r,3)}return null}var NORMAL_OCT16P_RANGE_MAX=255,NORMAL_OCT16P_DELTA=2/NORMAL_OCT16P_RANGE_MAX;function parseNormal(n){if(n.hasProperty("NORMAL")){var t=n.getPropertyArray("NORMAL",GL_TYPE.FLOAT,3);return createAttribute(GL_TYPE.FLOAT,t,3)}else if(n.hasProperty("NORMAL_OCT16P")){for(var t=n.getPropertyArray("NORMAL_OCT16P",GL_TYPE.UNSIGNED_BYTE,2),e=t.length/2,r=new Float32Array(e*3),i=0,o=void 0,s=void 0,u=void 0,l=void 0,d=void 0,c=void 0,f=void 0;i<e;i++)o=i*2,s=t[o]*NORMAL_OCT16P_DELTA-1,u=t[++o]*NORMAL_OCT16P_DELTA-1,d=s<0?-s:s,c=u<0?-u:u,l=1-(d+c),l<0&&(s=(1-c)*(s<0?-1:1),u=(1-d)*(u<0?-1:1)),f=Math.sqrt(s*s+u*u+l*l),o=i*3,r[o]=s/f,r[++o]=u/f,r[++o]=l/f;return createAttribute(GL_TYPE.FLOAT,r,3)}return null}function parseDraco(n,t){return __awaiter(this,void 0,void 0,function(){var e,r,i,o,s,u;return __generator(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 o=t.buffer.slice(r,r+i),s=n.properties,u={POSITION:"Float32Array",NORMAL:"Float32Array",RGB:"Uint8Array"},[2,draco.decodeGeometry(o.buffer,{attributeIDs:s,attributeTypes:u,useUniqueIDs:!0}).then(function(d){var c=d.getAttribute("POSITION"),f=d.getAttribute("RGB"),h=d.getAttribute("NORMAL");return{position:c?createAttribute(GL_TYPE.FLOAT,c.array,c.itemSize):null,color:f?createAttribute(GL_TYPE.UNSIGNED_BYTE,f.array,f.itemSize):null,normal:h?createAttribute(GL_TYPE.FLOAT,h.array,h.itemSize):null}})]})})}function loadPnts(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 parseHeader(e,r,i)}).then(function(i){return parseTable(e,r,i)}).then(function(i){return parsePointCloud(e,r,i)})}).then(function(){var r;return createPoints(e.attributes,{computeBoundingBox:(r=t.computeBoundingBox)!==null&&r!==void 0?r:!0})}).then(function(r){var i=new THREE__namespace.Matrix4,o=new THREE__namespace.Matrix4().setPosition(e.rtcCenter);return i.premultiply(o),r.object.applyMatrix4(i),{type:"pnts",uri:e.uri,byteLength:e.byteLength,object:r.object,dispose:function(){return r.dispose()}}})}function createPoints(n,t){var e=new Set,r=new THREE__namespace.BufferGeometry;e.add(r);var i=new PBMPointCloudMaterial;e.add(i),n.position&&r.setAttribute("position",new THREE__namespace.BufferAttribute(n.position.array,n.position.size,!1)),n.color&&r.setAttribute("color",new THREE__namespace.BufferAttribute(n.color.array,n.color.size,!0)),n.normal&&(r.setAttribute("normal",new THREE__namespace.BufferAttribute(n.normal.array,n.normal.size,!1)),i.defines.USE_POINT_NORMAL=!0),t.computeBoundingBox&&r.computeBoundingBox();var o=new PBMPointCloud(r,i);return o.matrix.compose(o.position,o.quaternion,o.scale),o.matrixAutoUpdate=!1,o.frustumCulled=!1,o.renderOrder=-1e3,Promise.resolve({object:o,dispose:function(){e.forEach(function(s){s.dispose()}),e.clear()}})}function createLZMA(){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,o;i<this._numBitLevels;++i)o=t.decodeBit(this._models,e),e=e<<1|o,r|=o<<i;return r},n.reverseDecode2=function(t,e,r,i){for(var o=1,s=0,u=0,l;u<i;++u)l=r.decodeBit(t,e+o),o=o<<1|l,s|=l<<u;return s},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,o;do if(i=e>>7&1,e<<=1,o=t.decodeBit(this._decoders,(1+i<<8)+r),r=r<<1|o,i!==o){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,o=0,s=0,u=0,l=0,d=0,c=0,f,h,v,A,m,y;for(this._rangeDecoder.setStream(t),this._outWindow.setStream(e),this.init();r<0||d<r;)if(f=d&this._posStateMask,this._rangeDecoder.decodeBit(this._isMatchDecoders,(i<<4)+f)===0)h=this._literalDecoder.getDecoder(d++,c),i>=7?c=h.decodeWithMatchByte(this._rangeDecoder,this._outWindow.getByte(o)):c=h.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)v=0,this._rangeDecoder.decodeBit(this._isRepG0Decoders,i)===0?this._rangeDecoder.decodeBit(this._isRep0LongDecoders,(i<<4)+f)===0&&(i=i<7?9:11,v=1):(this._rangeDecoder.decodeBit(this._isRepG1Decoders,i)===0?A=s:(this._rangeDecoder.decodeBit(this._isRepG2Decoders,i)===0?A=u:(A=l,l=u),u=s),s=o,o=A),v===0&&(v=2+this._repLenDecoder.decode(this._rangeDecoder,f),i=i<7?8:11);else if(l=u,u=s,s=o,v=2+this._lenDecoder.decode(this._rangeDecoder,f),i=i<7?7:10,m=this._posSlotDecoder[v<=5?v-2:3].decode(this._rangeDecoder),m>=4){if(y=(m>>1)-1,o=(2|m&1)<<y,m<14)o+=n.reverseDecode2(this._posDecoders,o-m-1,this._rangeDecoder,y);else if(o+=this._rangeDecoder.decodeDirectBits(y-4)<<4,o+=this._posAlignDecoder.reverseDecode(this._rangeDecoder),o<0){if(o===-1)break;return!1}}else o=m;if(o>=d||o>=this._dictionarySizeCheck)return!1;this._outWindow.copyBlock(o,v),d+=v,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,o,s;return t.size<5||(e=t.readByte(),r=e%9,e=~~(e/9),i=e%5,o=~~(e/5),!this.setLcLpPb(r,i,o))?!1:(s=t.readByte(),s|=t.readByte()<<8,s|=t.readByte()<<16,s+=t.readByte()*16777216,this.setDictionarySize(s))},n.decompress=function(t,e,r,i){var o=new n.Decoder;if(!o.setDecoderProperties(t))throw"Incorrect stream properties";if(!o.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 LZMA=createLZMA();function createWASM(){function n(e){for(var r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",i=new Uint8Array(256),o=0;o<r.length;o++)i[r.charCodeAt(o)]=o;var s=e.length*.75,u=e.length,l,d=0,c,f,h,v;e[e.length-1]==="="&&(s--,e[e.length-2]==="="&&s--);var A=new ArrayBuffer(s),m=new Uint8Array(A);for(l=0;l<u;l+=4)c=i[e.charCodeAt(l)],f=i[e.charCodeAt(l+1)],h=i[e.charCodeAt(l+2)],v=i[e.charCodeAt(l+3)],m[d++]=c<<2|f>>4,m[d++]=(f&15)<<4|h>>2,m[d++]=(h&3)<<6|v&63;return A}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 decodeLZMA(n,t,e){try{var r={data:t,offset:0,readByte:function(){return this.data[this.offset++]}},i=r.data.length,o={data:[],offset:0,writeByte:function(l){var d=Math.floor(this.offset/i);this.data[d]||(this.data[d]=new Uint8Array(i)),this.data[d][this.offset%i]=l,this.offset++}};n.decompressFile(r,o);for(var s=new Uint8Array(o.offset),u=0;u<o.offset;u++)s[u]=o.data[Math.floor(u/i)][u%i];e(null,s)}catch(l){e(l)}}function decodeLZMAWithWASM(n,t,e){var r=24;try{var i=new WebAssembly.Memory({initial:16}),o=new WebAssembly.Module(n),s=new WebAssembly.Instance(o,{env:{memory:i,abort:function(){e(new Error("webAssembly abort"))}}}),u=s.exports,l=u.newU8Array(t.length),d=new Uint8Array(i.buffer,l+r,t.length);d.set(t);var c=u.decode(l),f=new Uint32Array(i.buffer,c,4),h=f[0],v=f[2],A=f[3];h?e(null,new Uint8Array(i.buffer,A+r,v).slice(0,v)):e(new Error("lzma deocder error"))}catch(m){e(m)}}var lzmaWorkerSource=`
883
+ `,EXTENSION_NAME$4="KHR_texture_basisu",KHR_texture_basisu=function(n){__extends(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[EXTENSION_NAME$4])return null;var o=i.extensions[EXTENSION_NAME$4],s=r.json.images[o.source],u=null;if(s.bufferView)u=r.loadBufferView(s.bufferView).then(function(l){return ktx2.parse(l)});else if(s.uri)u=r.options.fetcher.ajax(r.resolveResouce(s.uri),{responseType:"arraybuffer"}).then(function(l){return ktx2.parse(l.body)});else throw new Error("glTF: Invalid image defs.");return u},t}(BaseExtension),EXTENSION_NAME$3="KHR_texture_transform",KHR_texture_transform=function(n){__extends(t,n);function t(){return n!==null&&n.apply(this,arguments)||this}return t.prototype.extendTexture=function(e,r,i){var o=r.extensions!==void 0?r.extensions[EXTENSION_NAME$3]:void 0;return o?(o.texCoord!==void 0&&console.warn('glTF: Custom UV sets in "'+EXTENSION_NAME$3+'" extension not yet supported.'),o.offset===void 0&&o.rotation===void 0&&o.scale===void 0||(e=e.clone(),e.needsUpdate=!0,o.offset!==void 0&&e.offset.fromArray(o.offset),o.rotation!==void 0&&(e.rotation=o.rotation),o.scale!==void 0&&e.repeat.fromArray(o.scale)),e):null},t}(BaseExtension),KHR_mesh_quantization=function(n){__extends(t,n);function t(){return n!==null&&n.apply(this,arguments)||this}return t}(BaseExtension),meshoptDecoder=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,o,s=WebAssembly.instantiate(u(i),{}).then(function(p){o=p.instance,o.exports.__wasm_call_ctors()});function u(p){for(var g=new Uint8Array(p.length),b=0;b<p.length;++b){var T=p.charCodeAt(b);g[b]=T>96?T-97:T>64?T-39:T+4}for(var _=0,b=0;b<p.length;++b)g[_++]=g[b]<60?r[g[b]]:(g[b]-60)*64+g[++b];return g.buffer.slice(0,_)}function l(p,g,b,T,_,w){var x=o.exports.sbrk,M=b+3&-4,R=x(M*T),I=x(_.length),S=new Uint8Array(o.exports.memory.buffer);S.set(_,I);var B=p(R,b,T,I,_.length);if(B==0&&w&&w(R,M,T),g.set(S.subarray(R,R+b*T)),x(R-x(0)),B!=0)throw new Error("Malformed buffer data: "+B)}var d={NONE:"",OCTAHEDRAL:"meshopt_decodeFilterOct",QUATERNION:"meshopt_decodeFilterQuat",EXPONENTIAL:"meshopt_decodeFilterExp"},c={ATTRIBUTES:"meshopt_decodeVertexBuffer",TRIANGLES:"meshopt_decodeIndexBuffer",INDICES:"meshopt_decodeIndexSequence"},f=[],h=0;function v(p){var g={object:new Worker(p),pending:0,requests:{}};return g.object.onmessage=function(b){var T=b.data;g.pending-=T.count,g.requests[T.id][T.action](T.value),delete g.requests[T.id]},g}function A(p){for(var g="var instance; var ready = WebAssembly.instantiate(new Uint8Array(["+new Uint8Array(u(i))+"]), {}).then(function(result) { instance = result.instance; instance.exports.__wasm_call_ctors(); });self.onmessage = workerProcess;"+l.toString()+y.toString(),b=new Blob([g],{type:"text/javascript"}),T=URL.createObjectURL(b),_=0;_<p;++_)f[_]=v(T);URL.revokeObjectURL(T)}function m(p,g,b,T,_){for(var w=f[0],x=1;x<f.length;++x)f[x].pending<w.pending&&(w=f[x]);return new Promise(function(M,R){var I=new Uint8Array(b),S=h++;w.pending+=p,w.requests[S]={resolve:M,reject:R},w.object.postMessage({id:S,count:p,size:g,source:I,mode:T,filter:_},[I.buffer])})}function y(p){s.then(function(){var g=p.data;try{var b=new Uint8Array(g.count*g.size);l(o.exports[g.mode],b,g.count,g.size,g.source,o.exports[g.filter]),self.postMessage({id:g.id,count:g.count,action:"resolve",value:b},[b.buffer])}catch(T){self.postMessage({id:g.id,count:g.count,action:"reject",value:T})}})}return{ready:s,supported:!0,useWorkers:function(p){A(p)},decodeVertexBuffer:function(p,g,b,T,_){l(o.exports.meshopt_decodeVertexBuffer,p,g,b,T,o.exports[d[_]])},decodeIndexBuffer:function(p,g,b,T){l(o.exports.meshopt_decodeIndexBuffer,p,g,b,T)},decodeIndexSequence:function(p,g,b,T){l(o.exports.meshopt_decodeIndexSequence,p,g,b,T)},decodeGltfBuffer:function(p,g,b,T,_,w){l(o.exports[c[_]],p,g,b,T,o.exports[d[w]])},decodeGltfBufferAsync:function(p,g,b,T,_){return f.length>0?m(p,g,b,c[T],d[_]):s.then(function(){var w=new Uint8Array(p*g);return l(o.exports[c[T]],w,p,g,b,o.exports[d[_]]),w})}}}(),EXTENSION_NAME$2="EXT_meshopt_compression",EXT_meshopt_compression=function(n){__extends(t,n);function t(){return n!==null&&n.apply(this,arguments)||this}return t.prototype.loadBufferView=function(e,r){var i=r.json,o=i.bufferViews[e];if(o.extensions&&o.extensions[EXTENSION_NAME$2]){var s=o.extensions[EXTENSION_NAME$2],u=r.loadBuffer(s.buffer);if(!meshoptDecoder.supported){if(i.extensionsRequired&&i.extensionsRequired.indexOf(EXTENSION_NAME$2)>=0)throw new Error("THREE.GLTFLoader: setMeshoptDecoder must be called before loading compressed files");return null}return Promise.all([u,meshoptDecoder.ready]).then(function(l){var d=l[0],c=s.byteOffset||0,f=s.byteLength||0,h=s.count,v=s.byteStride,A=new ArrayBuffer(h*v),m=new Uint8Array(d,c,f);return meshoptDecoder.decodeGltfBuffer(new Uint8Array(A),h,v,m,s.mode,s.filter),A})}else return null},t}(BaseExtension),EXTENSION_NAME$1="EXT_texture_webp",EXT_texture_webp=function(n){__extends(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 imageSupport().then(function(i){r.supportsWep=i.webp})},t.prototype.loadTexture=function(e,r){var i=r.json,o=i.textures[e];if(!o.extensions||!o.extensions[EXTENSION_NAME$1]||!this.supportsWep)return null;var s=o.extensions[EXTENSION_NAME$1];return r.loadImage(s.source).then(function(u){var l=new THREE__namespace.Texture(u);l.needsUpdate=!0,l.flipY=!1,o.name&&(l.name=o.name);var d=r.json.samplers||{},c=d[o.sampler]||{};return l.magFilter=WEBGL_FILTERS[c.magFilter]||THREE__namespace.LinearFilter,l.minFilter=WEBGL_FILTERS[c.minFilter]||THREE__namespace.LinearMipmapLinearFilter,l.wrapS=WEBGL_WRAPPINGS[c.wrapS]||THREE__namespace.RepeatWrapping,l.wrapT=WEBGL_WRAPPINGS[c.wrapT]||THREE__namespace.RepeatWrapping,l})},t}(BaseExtension),EXTENSION_NAME="CESIUM_RTC",CESIUM_RTC=function(n){__extends(t,n);function t(){return n!==null&&n.apply(this,arguments)||this}return t.prototype.emitResult=function(e,r){if(r.json.extensions[EXTENSION_NAME]&&r.json.extensions[EXTENSION_NAME].center){var i=r.json.extensions[EXTENSION_NAME].center;e.CESIUM_RTC={center:new THREE__namespace.Vector3().fromArray(i)}}},t}(BaseExtension);const pointcloudFragmentShader=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var r=113,i=126,o=0,s="";return t[o].split(s).map(function(u){return u.charCodeAt(o)>i?u:String.fromCharCode((u.charCodeAt(o)+r)%i)}).join(s)}("{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-rpA-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|;toH--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"),pointcloudVertexShader=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var r=113,i=126,o=0,s="";return t[o].split(s).map(function(u){return u.charCodeAt(o)>i?u:String.fromCharCode((u.charCodeAt(o)+r)%i)}).join(s)}("nvor-rpA-p|y|H0vs-qrsv{rq5b`RlcR_aRelSY\\\\_6--nvor-sy|n-sy||H--n\bv{t-sy|n-Sy||H0r{qvs{vs|z-sy|n-prr{UrvtuH{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-rpA-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\frpA-trP|y|O\bUrvtu5nz}yr?Q-tnqvr{ar\x07r9-rpA-|yq]|vv|{6-\n--rp@-p|y|-J-r\x07r?Q5tnqvr{ar\x07r9-rp?5|yq]|vv|{;\b-<->=;=9-=;B66;toH--r{-rpA5p|y|9->;=6H\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-prr{Urvtu-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-prr{Urvtu-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-prr{Urvtu-<-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 scratchVector4=new THREE__namespace.Vector4,shaderUniforms$1=Object.assign({pointScale:new THREE__namespace.Uniform(1),pointMinPixel:new THREE__namespace.Uniform(1),pointMaxPixel:new THREE__namespace.Uniform(1),opacity:new THREE__namespace.Uniform(1),gradientTexture:new THREE__namespace.Uniform(null),modelAlpha:new THREE__namespace.Uniform(0),clippers:new THREE__namespace.Uniform([]),shownFloorIndex:new THREE__namespace.Uniform(-1),constantColor:new THREE__namespace.Uniform(null),geometricError:new THREE__namespace.Uniform(0),pixelRatio:new THREE__namespace.Uniform(1),screenHeight:new THREE__namespace.Uniform(512),floor:new THREE__namespace.Uniform(0)},THREE__namespace.UniformsUtils.clone(THREE__namespace.UniformsLib.common)),PBMPointCloudMaterial=function(n){__extends(t,n);function t(e){e===void 0&&(e={});var r,i,o,s,u,l,d,c,f,h,v,A,m,y,p,g,b,T,_,w,x=n.call(this,{vertexShader:pointcloudVertexShader,fragmentShader:pointcloudFragmentShader,uniforms:THREE__namespace.UniformsUtils.clone(shaderUniforms$1),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(R){this.uniforms.constantColor.value=R;var I=this.defines.USE_CONSTANT_COLOR,S=R!==null;I!==S&&(this.defines.USE_CONSTANT_COLOR=S,this.needsUpdate=!0)}},opacity:{get:function(){return this.uniforms.opacity.value},set:function(R){this.uniforms.opacity.value=R}},modelAlpha:{get:function(){return this.uniforms.modelAlpha.value},set:function(R){this.uniforms.modelAlpha.value=R}},shownFloorIndex:{get:function(){return this.uniforms.shownFloorIndex.value},set:function(R){this.uniforms.shownFloorIndex.value=R}},clippers:{get:function(){return M},set:function(R){M!==R&&(M=R,this.uniforms.clippers.value=(M||[]).map(function(I){var S=typeof I.floorIndex=="number"?I.floorIndex:-1,B=new THREE__namespace.Matrix4().getInverse(I.clippingBoxMatrix);return{matrixInverse:B,floorIndex:S}}),this.needsUpdate=!0)}},pointColor:{get:function(){return this.defines.USE_POINT_COLOR_ALTITUDE===!0?"ALTITUDE":"RGB"},set:function(R){var I=R==="ALTITUDE";this.defines.USE_POINT_COLOR_ALTITUDE!==I&&(this.defines.USE_POINT_COLOR_ALTITUDE=I,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(R){var I=R==="ATTENUATION",S=R==="GEOMETRIC";this.defines.USE_POINT_SIZE_GEOMETRIC!==S&&(this.defines.USE_POINT_SIZE_GEOMETRIC=S,this.needsUpdate=!0),this.defines.USE_POINT_SIZE_ATTENUATION!==I&&(this.defines.USE_POINT_SIZE_ATTENUATION=I,this.needsUpdate=!0)}},pointShape:{get:function(){return this.defines.USE_POINT_SHAPE_CIRCLE===!0?"CIRCLE":"SQUARE"},set:function(R){var I=R==="CIRCLE";this.defines.USE_POINT_SHAPE_CIRCLE!==I&&(this.defines.USE_POINT_SHAPE_CIRCLE=I,this.needsUpdate=!0)}},pointScale:{get:function(){return this.uniforms.pointScale.value},set:function(R){this.uniforms.pointScale.value=R}},pointBack:{get:function(){return this.defines.USE_POINT_BACK_HIDDEN===!0?"HIDDEN":this.defines.USE_POINT_BACK_DARK===!0?"DARK":"VISIBLE"},set:function(R){var I=R==="HIDDEN",S=R==="DARK";this.defines.USE_POINT_BACK_HIDDEN!==I&&(this.defines.USE_POINT_BACK_HIDDEN=I,this.needsUpdate=!0),this.defines.USE_POINT_BACK_DARK!==S&&(this.defines.USE_POINT_BACK_DARK=S,this.needsUpdate=!0)}},pointMinPixel:{get:function(){return this.uniforms.pointMinPixel.value},set:function(R){this.uniforms.pointMinPixel.value=R}},pointMaxPixel:{get:function(){return this.uniforms.pointMaxPixel.value},set:function(R){this.uniforms.pointMaxPixel.value=R}},useEDL:{get:function(){return this.defines.USE_EDL},set:function(R){R!==this.defines.USE_EDL&&(this.defines.USE_EDL=R,this.needsUpdate=!0)}},useHQWeight:{get:function(){return this.defines.USE_HQ_WEIGHT},set:function(R){R!==this.defines.USE_HQ_WEIGHT&&(this.defines.USE_HQ_WEIGHT=R,this.needsUpdate=!0)}},useHQDepth:{get:function(){return this.defines.USE_HQ_DEPTH},set:function(R){R!==this.defines.USE_HQ_DEPTH&&(this.defines.USE_HQ_DEPTH=R,this.needsUpdate=!0)}},gradientTexture:{get:function(){return this.uniforms.gradientTexture.value},set:function(R){this.uniforms.gradientTexture.value=R}},floor:{get:function(){return this.uniforms.floor.value},set:function(R){this.uniforms.floor.value=R}}}),x.pano0=(r=e.pano0)!==null&&r!==void 0?r:defaultPbmParameters.pano0,x.pano1=(i=e.pano1)!==null&&i!==void 0?i:defaultPbmParameters.pano1,x.modelAlpha=(o=e.modelAlpha)!==null&&o!==void 0?o:defaultPbmParameters.modelAlpha,x.progress=(s=e.progress)!==null&&s!==void 0?s:defaultPbmParameters.progress,x.useBlackTransition=(u=e.useBlackTransition)!==null&&u!==void 0?u:defaultPbmParameters.useBlackTransition,x.constantColor=(l=e.constantColor)!==null&&l!==void 0?l:defaultPbmParameters.constantColor,x.opacity=(d=e.opacity)!==null&&d!==void 0?d:defaultPbmParameters.opacity,x.shownFloorIndex=(c=e.shownFloorIndex)!==null&&c!==void 0?c:defaultPbmParameters.shownFloorIndex,x.clippers=(f=e.clippers)!==null&&f!==void 0?f:defaultPbmParameters.clippers,x.useEDL=(h=e.useEDL)!==null&&h!==void 0?h:defaultPbmParameters.useEDL,x.useHQWeight=(v=e.useHQWeight)!==null&&v!==void 0?v:defaultPbmParameters.useHQWeight,x.useHQDepth=(A=e.useHQDepth)!==null&&A!==void 0?A:defaultPbmParameters.useHQDepth,x.pointColor=(m=e.pointColor)!==null&&m!==void 0?m:defaultPbmParameters.pointColor,x.pointShape=(y=e.pointShape)!==null&&y!==void 0?y:defaultPbmParameters.pointShape,x.pointSize=(p=e.pointSize)!==null&&p!==void 0?p:defaultPbmParameters.pointSize,x.pointScale=(g=e.pointScale)!==null&&g!==void 0?g:defaultPbmParameters.pointScale,x.pointBack=(b=e.pointBack)!==null&&b!==void 0?b:defaultPbmParameters.pointBack,x.pointMinPixel=(T=e.pointMinPixel)!==null&&T!==void 0?T:defaultPbmParameters.pointMinPixel,x.pointMaxPixel=(_=e.pointMaxPixel)!==null&&_!==void 0?_:defaultPbmParameters.pointMaxPixel,x.gradientTexture=(w=e.gradientTexture)!==null&&w!==void 0?w:defaultPbmParameters.gradientTexture,x.floor=0,x.transparent=!1,x}return t.prototype.onBeforeCompile=function(e,r){var i,o,s=String((o=(i=this.clippers)===null||i===void 0?void 0:i.length)!==null&&o!==void 0?o:0);e.vertexShader=e.vertexShader.replace(/NUM_CLIPPERS/g,s),e.fragmentShader=e.fragmentShader.replace(/NUM_CLIPPERS/g,s)},t.prototype.update=function(e,r){var i=r instanceof Camera?r.pixelRatio:e.getPixelRatio(),o=r instanceof Camera?r.screenHeight:e.getViewport(scratchVector4).z;this.uniforms.pixelRatio.value=i,this.uniforms.screenHeight.value=o,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=THREE__namespace.CustomBlending,this.blendSrc=THREE__namespace.SrcAlphaFactor,this.blendSrcAlpha=THREE__namespace.SrcAlphaFactor,this.blendDst=THREE__namespace.OneFactor,this.blendDstAlpha=THREE__namespace.OneFactor):(this.depthWrite=!0,this.transparent=this.shownFloorIndex>-1||this.opacity<1||this.modelAlpha<1,this.blendDst=THREE__namespace.OneMinusSrcAlphaFactor,this.blendEquation=THREE__namespace.AddEquation,this.blendSrcAlpha=null,this.blendDstAlpha=null,this.blendEquationAlpha=null,this.blending=THREE__namespace.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}(THREE__namespace.ShaderMaterial),PBM_mesh=function(n){__extends(t,n);function t(){return n!==null&&n.apply(this,arguments)||this}return t.prototype.loadMesh=function(e,r){var i=this,o=r.json.meshes[e],s=o.primitives,u=Promise.all(s.map(function(c){return r.loadGeometry(c)})),l=Promise.all(s.map(function(c){return i.loadPBMMaterial(c,r)})),d=Promise.all([u,l]).then(function(c){for(var f=c[0],h=c[1],v=[],A=0;A<s.length;A++){var m=s[A],y=f[A],p=h[A];y.attributes.normal===void 0&&(p.flatShading=!0),y.attributes.tangent===void 0&&p.normalScale&&(p.normalScale.y*=-1);var g=m.mode||WEBGL_CONSTANTS.TRIANGLES,b=void 0;if(g===WEBGL_CONSTANTS.TRIANGLES||g===WEBGL_CONSTANTS.TRIANGLE_STRIP||g===WEBGL_CONSTANTS.TRIANGLE_FAN)g===WEBGL_CONSTANTS.TRIANGLE_STRIP?y=r.toGeometryTrianglesDrawMode(y,THREE__namespace.TriangleStripDrawMode):g===WEBGL_CONSTANTS.TRIANGLE_FAN&&(y=r.toGeometryTrianglesDrawMode(y,THREE__namespace.TriangleFanDrawMode)),y=y.clone(),y.clearGroups(),y.addGroup(0,y.index?y.index.count:y.attributes.position.count,0),y.attributes.normal||y.computeVertexNormals(),b=new PBMMesh(y,[p]);else if(g===WEBGL_CONSTANTS.POINTS)b=new PBMPointCloud(y,p);else throw new Error("glTF: Primitive mode unsupported: "+g);b.name=r.createUniqueName(o.name||"mesh_"+e),v.push(b)}if(v.length===1)return v[0];for(var T=new THREE__namespace.Group,_=0,w=v;_<w.length;_++){var b=w[_];T.add(b)}return T});return d},t.prototype.loadPBMMaterial=function(e,r){var i=e.mode,o=null;if(i===WEBGL_CONSTANTS.TRIANGLES||i===WEBGL_CONSTANTS.TRIANGLE_STRIP||i===WEBGL_CONSTANTS.TRIANGLE_FAN)o=this.loadPBMMeshMaterial(e,r);else if(i===WEBGL_CONSTANTS.POINTS)o=this.loadPBMPointCloudMaterial(e,r);else throw new Error("glTF: Primitive mode unsupported: "+i);return o},t.prototype.extendTexture=function(e,r,i){return e.minFilter=THREE__namespace.LinearFilter,e.magFilter=THREE__namespace.LinearFilter,e.generateMipmaps=!1,e},t.prototype.loadPBMPointCloudMaterial=function(e,r){var i=new PBMPointCloudMaterial;return Object.keys(e.attributes).filter(function(o){return ATTRIBUTES[o]==="normal"}).length>0&&(i.defines.USE_POINT_NORMAL=!0),Promise.resolve(i)},t.prototype.loadPBMMeshMaterial=function(e,r){var i=[],o=new PBMMeshMaterial;if(o.uniforms.diffuse.value=new THREE__namespace.Color(1,1,1),o.uniforms.exposure.value=3.3,o.defines.USE_MAP=!1,Object.keys(e.attributes).filter(function(c){return ATTRIBUTES[c]==="color"}).length>0&&(o.vertexColors=!0),Object.keys(e.attributes).filter(function(c){return ATTRIBUTES[c]==="tangent"}).length===0&&(o.normalScale&&(o.normalScale.y*=-1),o.clearcoatNormalScale&&(o.clearcoatNormalScale.y*=-1)),e.material!==void 0){var s=r.json.materials[e.material];s.name&&(o.name=s.name);var u=s.pbrMetallicRoughness||{};if(Array.isArray(u.baseColorFactor)){var l=u.baseColorFactor;o.uniforms.diffuse.value.fromArray(l)}if(u.baseColorTexture!==void 0&&i.push(r.createMaterialTexture(u.baseColorTexture).then(function(c){o.uniforms.map.value=c,o.defines.USE_MAP=!0})),s.doubleSided===!0&&(o.side=THREE__namespace.DoubleSide),s.normalTexture!==void 0&&(i.push(r.createMaterialTexture(s.normalTexture).then(function(c){o.uniforms.normalMap.value=c})),o.uniforms.normalScale.value=new THREE__namespace.Vector2(1,1),s.normalTexture.scale!==void 0)){var d=s.normalTexture.scale;o.uniforms.normalScale.value.set(d,d)}}return Promise.all(i).then(function(){return o})},t}(BaseExtension),EXTENSIONS={KHR_binary_glTF,KHR_draco_mesh_compression,KHR_texture_basisu,KHR_texture_transform,KHR_mesh_quantization,EXT_meshopt_compression,EXT_texture_webp,CESIUM_RTC,PBM_mesh};function parseGltf(n,t){var e,r,i,o={};if(t.addonExtensions)for(var s=0,u=t.addonExtensions;s<u.length;s++){var l=u[s];o[l]=new EXTENSIONS[l]}var d;if(typeof n=="string")d=n;else{var c=EXTENSIONS.KHR_binary_glTF.getMagic(n);if(c===EXTENSIONS.KHR_binary_glTF.HEADER_MAGIC){var f=new EXTENSIONS.KHR_binary_glTF;try{f.loadGlbBinary(n)}catch(p){return Promise.reject(p)}o.KHR_binary_glTF=f,d=f.content}else d=decodeText(new Uint8Array(n))}var h=JSON.parse(d);if(h.asset===void 0||Number(h.asset.version[0])<2)return Promise.reject(new Error("glTF: Unsupported asset. glTF versions >=2.0 are supported."));if(h.extensionsUsed)for(var v=h.extensionsRequired||[],A=0;A<h.extensionsUsed.length;A++){var m=h.extensionsUsed[A];o[m]||(EXTENSIONS[m]?o[m]=new EXTENSIONS[m]:v.indexOf(m)>=0&&console.warn('glTF: Unknown extension "'+m+'".'))}var y=new Parser(h,o,{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 y.parse()}var ROTATE_X_MATRIX$1=new THREE__namespace.Matrix4().fromArray([1,0,0,0,0,0,1,0,0,-1,0,0,0,0,0,1]);function loadB3dm(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 parseHeader(e,r,i)}).then(function(i){return parseTable(e,r,i)}).then(function(i){return parseGlTFArrayBuffer(e,r,i)})}).then(function(){var r;return parseGltf(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 o=new THREE__namespace.Matrix4;t.upAxis!=="Z"&&o.premultiply(ROTATE_X_MATRIX$1);var s=new THREE__namespace.Matrix4().setPosition(e.rtcCenter);if(o.premultiply(s),i.CESIUM_RTC){var u=new THREE__namespace.Matrix4().setPosition(i.CESIUM_RTC.center);o.premultiply(u)}var l=i.scene;return l.applyMatrix4(o),{type:"b3dm",uri:e.uri,byteLength:e.byteLength,object:l,dispose:function(){return i.dispose()}}})})}function parsePointCloud(n,t,e){var r=new FeatureTable(n.featureTableJson,n.featureTableBinary);return Promise.resolve().then(function(){var i=r.getExtension("3DTILES_draco_point_compression");if(i)return parseDraco(i,r);var o=[parsePosition(r),parseColor(r),parseNormal(r)];return Promise.all(o).then(function(s){var u=s[0],l=s[1],d=s[2];return{position:u,color:l,normal:d}})}).then(function(i){return n.attributes=i,e})}function createAttribute(n,t,e){return{type:n,array:t,size:e}}var POSITION_QUANTIZED_RANGE=65535;function parsePosition(n){if(n.hasProperty("POSITION")){var t=n.getPropertyArray("POSITION",GL_TYPE.FLOAT,3);return createAttribute(GL_TYPE.FLOAT,t,3)}else if(n.hasProperty("POSITION_QUANTIZED")){var e=n.getPropertyArray("POSITION_QUANTIZED",GL_TYPE.UNSIGNED_SHORT,3),r=n.getGlobalProperty("QUANTIZED_VOLUME_SCALE",GL_TYPE.FLOAT,3),i=n.getGlobalProperty("QUANTIZED_VOLUME_OFFSET",GL_TYPE.FLOAT,3);if(!r||!i)throw new Error("QUANTIZED_VOLUME_SCALE or QUANTIZED_VOLUME_OFFSET never found.");for(var o=new Float32Array(e.length),s=e.length/3,u=r[0]/POSITION_QUANTIZED_RANGE,l=r[1]/POSITION_QUANTIZED_RANGE,d=r[2]/POSITION_QUANTIZED_RANGE,c=i[0],f=i[1],h=i[2],v=0,A=void 0;v<s;v++)A=v*3,o[A]=e[A]*u+c,o[++A]=e[A]*l+f,o[++A]=e[A]*d+h;return createAttribute(GL_TYPE.FLOAT,o,3)}return null}function parseColor(n){if(n.hasProperty("RGB")){for(var t=n.getPropertyArray("RGB",GL_TYPE.UNSIGNED_BYTE,3),e=t.length,r=new Uint8Array(e*4),i=0,o=void 0,s=void 0;i<e;i++)s=i*4,o=i*3,r[s]=t[o],r[++s]=t[++o],r[++s]=t[++o],r[++s]=255;return createAttribute(GL_TYPE.UNSIGNED_BYTE,r,4)}else if(n.hasProperty("RGBA")){var t=n.getPropertyArray("RGBA",GL_TYPE.UNSIGNED_BYTE,4);return createAttribute(GL_TYPE.UNSIGNED_BYTE,t,4)}else if(n.hasProperty("RGB565")){for(var t=n.getPropertyArray("RGB565",GL_TYPE.UNSIGNED_SHORT,1),e=t.length,r=new Uint8Array(e*4),i=0,u=void 0,l=void 0;i<e;i++)l=t[i],u=i*4,r[u]=(l>>11&31)<<3,r[++u]=(l>>5&63)<<2,r[++u]=(l&31)<<3,r[++u]=255;return createAttribute(GL_TYPE.UNSIGNED_BYTE,r,4)}return null}var NORMAL_OCT16P_RANGE_MAX=255,NORMAL_OCT16P_DELTA=2/NORMAL_OCT16P_RANGE_MAX;function parseNormal(n){if(n.hasProperty("NORMAL")){var t=n.getPropertyArray("NORMAL",GL_TYPE.FLOAT,3);return createAttribute(GL_TYPE.FLOAT,t,3)}else if(n.hasProperty("NORMAL_OCT16P")){for(var t=n.getPropertyArray("NORMAL_OCT16P",GL_TYPE.UNSIGNED_BYTE,2),e=t.length/2,r=new Float32Array(e*3),i=0,o=void 0,s=void 0,u=void 0,l=void 0,d=void 0,c=void 0,f=void 0;i<e;i++)o=i*2,s=t[o]*NORMAL_OCT16P_DELTA-1,u=t[++o]*NORMAL_OCT16P_DELTA-1,d=s<0?-s:s,c=u<0?-u:u,l=1-(d+c),l<0&&(s=(1-c)*(s<0?-1:1),u=(1-d)*(u<0?-1:1)),f=Math.sqrt(s*s+u*u+l*l),o=i*3,r[o]=s/f,r[++o]=u/f,r[++o]=l/f;return createAttribute(GL_TYPE.FLOAT,r,3)}return null}function parseDraco(n,t){return __awaiter(this,void 0,void 0,function(){var e,r,i,o,s,u;return __generator(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 o=t.buffer.slice(r,r+i),s=n.properties,u={POSITION:"Float32Array",NORMAL:"Float32Array",RGB:"Uint8Array",RGBA:"Uint8Array"},[2,draco.decodeGeometry(o.buffer,{attributeIDs:s,attributeTypes:u,useUniqueIDs:!0}).then(function(d){var c=d.getAttribute("POSITION"),f=d.getAttribute("RGB"),h=d.getAttribute("RGBA"),v=d.getAttribute("NORMAL"),A;if(h)A=h;else if(f){for(var m=f.count,y=f.array,p=new Uint8Array(m*4),g=0,b=void 0,T=void 0;g<m;g++)T=g*4,b=g*3,p[T]=y[b],p[++T]=y[++b],p[++T]=y[++b],p[++T]=255;A=new THREE__namespace.BufferAttribute(p,4,!0)}return{position:c?createAttribute(GL_TYPE.FLOAT,c.array,c.itemSize):null,color:A?createAttribute(GL_TYPE.UNSIGNED_BYTE,A.array,A.itemSize):null,normal:v?createAttribute(GL_TYPE.FLOAT,v.array,v.itemSize):null}})]})})}function loadPnts(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 parseHeader(e,r,i)}).then(function(i){return parseTable(e,r,i)}).then(function(i){return parsePointCloud(e,r,i)})}).then(function(){var r;return createPoints(e.attributes,{computeBoundingBox:(r=t.computeBoundingBox)!==null&&r!==void 0?r:!0})}).then(function(r){var i=new THREE__namespace.Matrix4,o=new THREE__namespace.Matrix4().setPosition(e.rtcCenter);return i.premultiply(o),r.object.applyMatrix4(i),{type:"pnts",uri:e.uri,byteLength:e.byteLength,object:r.object,dispose:function(){return r.dispose()}}})}function createPoints(n,t){var e=new Set,r=new THREE__namespace.BufferGeometry;e.add(r);var i=new PBMPointCloudMaterial;e.add(i),n.position&&r.setAttribute("position",new THREE__namespace.BufferAttribute(n.position.array,n.position.size,!1)),n.color&&r.setAttribute("color",new THREE__namespace.BufferAttribute(n.color.array,n.color.size,!0)),n.normal&&(r.setAttribute("normal",new THREE__namespace.BufferAttribute(n.normal.array,n.normal.size,!1)),i.defines.USE_POINT_NORMAL=!0),t.computeBoundingBox&&r.computeBoundingBox();var o=new PBMPointCloud(r,i);return o.matrix.compose(o.position,o.quaternion,o.scale),o.matrixAutoUpdate=!1,o.frustumCulled=!1,o.renderOrder=-1e3,Promise.resolve({object:o,dispose:function(){e.forEach(function(s){s.dispose()}),e.clear()}})}function createLZMA(){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,o;i<this._numBitLevels;++i)o=t.decodeBit(this._models,e),e=e<<1|o,r|=o<<i;return r},n.reverseDecode2=function(t,e,r,i){for(var o=1,s=0,u=0,l;u<i;++u)l=r.decodeBit(t,e+o),o=o<<1|l,s|=l<<u;return s},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,o;do if(i=e>>7&1,e<<=1,o=t.decodeBit(this._decoders,(1+i<<8)+r),r=r<<1|o,i!==o){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,o=0,s=0,u=0,l=0,d=0,c=0,f,h,v,A,m,y;for(this._rangeDecoder.setStream(t),this._outWindow.setStream(e),this.init();r<0||d<r;)if(f=d&this._posStateMask,this._rangeDecoder.decodeBit(this._isMatchDecoders,(i<<4)+f)===0)h=this._literalDecoder.getDecoder(d++,c),i>=7?c=h.decodeWithMatchByte(this._rangeDecoder,this._outWindow.getByte(o)):c=h.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)v=0,this._rangeDecoder.decodeBit(this._isRepG0Decoders,i)===0?this._rangeDecoder.decodeBit(this._isRep0LongDecoders,(i<<4)+f)===0&&(i=i<7?9:11,v=1):(this._rangeDecoder.decodeBit(this._isRepG1Decoders,i)===0?A=s:(this._rangeDecoder.decodeBit(this._isRepG2Decoders,i)===0?A=u:(A=l,l=u),u=s),s=o,o=A),v===0&&(v=2+this._repLenDecoder.decode(this._rangeDecoder,f),i=i<7?8:11);else if(l=u,u=s,s=o,v=2+this._lenDecoder.decode(this._rangeDecoder,f),i=i<7?7:10,m=this._posSlotDecoder[v<=5?v-2:3].decode(this._rangeDecoder),m>=4){if(y=(m>>1)-1,o=(2|m&1)<<y,m<14)o+=n.reverseDecode2(this._posDecoders,o-m-1,this._rangeDecoder,y);else if(o+=this._rangeDecoder.decodeDirectBits(y-4)<<4,o+=this._posAlignDecoder.reverseDecode(this._rangeDecoder),o<0){if(o===-1)break;return!1}}else o=m;if(o>=d||o>=this._dictionarySizeCheck)return!1;this._outWindow.copyBlock(o,v),d+=v,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,o,s;return t.size<5||(e=t.readByte(),r=e%9,e=~~(e/9),i=e%5,o=~~(e/5),!this.setLcLpPb(r,i,o))?!1:(s=t.readByte(),s|=t.readByte()<<8,s|=t.readByte()<<16,s+=t.readByte()*16777216,this.setDictionarySize(s))},n.decompress=function(t,e,r,i){var o=new n.Decoder;if(!o.setDecoderProperties(t))throw"Incorrect stream properties";if(!o.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 LZMA=createLZMA();function createWASM(){function n(e){for(var r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",i=new Uint8Array(256),o=0;o<r.length;o++)i[r.charCodeAt(o)]=o;var s=e.length*.75,u=e.length,l,d=0,c,f,h,v;e[e.length-1]==="="&&(s--,e[e.length-2]==="="&&s--);var A=new ArrayBuffer(s),m=new Uint8Array(A);for(l=0;l<u;l+=4)c=i[e.charCodeAt(l)],f=i[e.charCodeAt(l+1)],h=i[e.charCodeAt(l+2)],v=i[e.charCodeAt(l+3)],m[d++]=c<<2|f>>4,m[d++]=(f&15)<<4|h>>2,m[d++]=(h&3)<<6|v&63;return A}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 decodeLZMA(n,t,e){try{var r={data:t,offset:0,readByte:function(){return this.data[this.offset++]}},i=r.data.length,o={data:[],offset:0,writeByte:function(l){var d=Math.floor(this.offset/i);this.data[d]||(this.data[d]=new Uint8Array(i)),this.data[d][this.offset%i]=l,this.offset++}};n.decompressFile(r,o);for(var s=new Uint8Array(o.offset),u=0;u<o.offset;u++)s[u]=o.data[Math.floor(u/i)][u%i];e(null,s)}catch(l){e(l)}}function decodeLZMAWithWASM(n,t,e){var r=24;try{var i=new WebAssembly.Memory({initial:16}),o=new WebAssembly.Module(n),s=new WebAssembly.Instance(o,{env:{memory:i,abort:function(){e(new Error("webAssembly abort"))}}}),u=s.exports,l=u.newU8Array(t.length),d=new Uint8Array(i.buffer,l+r,t.length);d.set(t);var c=u.decode(l),f=new Uint32Array(i.buffer,c,4),h=f[0],v=f[2],A=f[3];h?e(null,new Uint8Array(i.buffer,A+r,v).slice(0,v)):e(new Error("lzma deocder error"))}catch(m){e(m)}}var lzmaWorkerSource=`
884
884
  var decodeLZMA = (function() {
885
885
  var LZMA = (`.concat(createLZMA.toString(),`)();
886
886
  return function(data, callback) {
@@ -1836,7 +1836,7 @@ void main() {
1836
1836
  `,e},t.prototype.updateShaderSource=function(){var e=this.getDefines()+edlVertexShader,r=this.getDefines()+edlFragmentShader;this.setValues({vertexShader:e,fragmentShader:r}),this.needsUpdate=!0},__decorate([uniform$1("screenWidth"),__metadata("design:type",Number)],t.prototype,"screenWidth",void 0),__decorate([uniform$1("screenHeight"),__metadata("design:type",Number)],t.prototype,"screenHeight",void 0),__decorate([uniform$1("edlStrength"),__metadata("design:type",Number)],t.prototype,"edlStrength",void 0),__decorate([uniform$1("uNear"),__metadata("design:type",Number)],t.prototype,"uNear",void 0),__decorate([uniform$1("uFar"),__metadata("design:type",Number)],t.prototype,"uFar",void 0),__decorate([uniform$1("radius"),__metadata("design:type",Number)],t.prototype,"radius",void 0),__decorate([uniform$1("neighbours",!0),__metadata("design:type",Float32Array)],t.prototype,"neighbours",void 0),__decorate([uniform$1("depthMap"),__metadata("design:type",THREE__namespace.Texture)],t.prototype,"depthMap",void 0),__decorate([uniform$1("uEDLColor"),__metadata("design:type",THREE__namespace.Texture)],t.prototype,"uEDLColor",void 0),__decorate([uniform$1("uEDLDepth"),__metadata("design:type",THREE__namespace.Texture)],t.prototype,"uEDLDepth",void 0),__decorate([uniform$1("uProj"),__metadata("design:type",Array)],t.prototype,"uProj",void 0),t}(THREE__namespace.RawShaderMaterial);function makeUniform$1(n,t){return{type:n,value:t}}function uniform$1(n,t){return t===void 0&&(t=!1),function(e,r){Object.defineProperty(e,r,{get:function(){return this.getUniform(n)},set:function(i){i!==this.getUniform(n)&&(this.setUniform(n,i),t&&this.updateShaderSource())}})}}var passCamera$1=new THREE__namespace.OrthographicCamera(-1,1,1,-1,0,1),geometry$2=new THREE__namespace.BufferGeometry;geometry$2.setAttribute("position",new THREE__namespace.Float32BufferAttribute([-1,3,0,-1,-1,0,3,-1,0],3)),geometry$2.setAttribute("uv",new THREE__namespace.Float32BufferAttribute([0,2,0,0,2,0],2));var mesh$2=new THREE__namespace.Mesh(geometry$2),edlEffectScene=new THREE__namespace.Scene;edlEffectScene.add(mesh$2);var EDLEffect=function(n){__extends(t,n);function t(e,r,i,o){var s=n.call(this,e,r,i,o)||this;return s.sharedV2=new THREE__namespace.Vector2,s.renderer=e,s.material=new EDLMaterial,mesh$2.material=s.material,s}return t.prototype.render=function(e){var r=this.camera,i=this.material.uniforms,o=this.renderer.getSize(this.sharedV2);i.screenWidth.value=o.x,i.screenHeight.value=o.y;var s=r.projectionMatrix,u=new Float32Array(16);u.set(s.elements);for(var l=new Float32Array(this.material.neighbourCount*2),d=0;d<this.material.neighbourCount;d++)l[2*d+0]=Math.cos(2*d*Math.PI/this.material.neighbourCount),l[2*d+1]=Math.sin(2*d*Math.PI/this.material.neighbourCount);i.neighbours.value=l,i.uNear.value=r.near,i.uFar.value=r.far,i.uEDLColor.value=e[0].texture,i.uProj.value=u,i.edlStrength.value=.25,i.radius.value=1,i.opacity.value=1,this.renderer.setRenderTarget(null),this.renderer.render(edlEffectScene,passCamera$1)},t.prototype.dispose=function(){this.copyPass.dispose()},t}(Effect);const fragment=function n(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var r=113,i=126,o=0,s="";return t[o].split(s).map(function(u){return u.charCodeAt(o)>i?u:String.fromCharCode((u.charCodeAt(o)+r)%i)}).join(s)}(`}rpvv|{-zrqvz}-sy|nH}rpvv|{-zrqvz}-v{H{vs|z-nz}yr?Q-drvtuZn}H{vs|z-nz}yr?Q-Qr}uZn}Hn\bv{t-rp?-bH|vq-znv{56-
1837
1837
  sy|n-qr}u-J-r\x07r?Q5Qr}uZn}9-b6;Hvs5qr}u-KJ->;=6
1838
1838
  qvpnqH\frpA-p|y|-J-r\x07r?Q5drvtuZn}9-b6H-p|y|-J-p|y|-<-p|y|;HtylSntP|y|-J-rpA5p|y|;\x07\b 9->;=6H-\f`),vertex=function n(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var r=113,i=126,o=0,s="";return t[o].split(s).map(function(u){return u.charCodeAt(o)>i?u:String.fromCharCode((u.charCodeAt(o)+r)%i)}).join(s)}(`}rpvv|{-zrqvz}-sy|nH}rpvv|{-zrqvz}-v{Hnvor-rp@-}|vv|{Hnvor-rp?-H{vs|z-znA-}|wrpv|{Znv\x07H{vs|z-znA-z|qrycvrZnv\x07Hn\bv{t-rp?-bH|vq-znv{56-
1839
- b-J-Htyl]|vv|{-J-}|wrpv|{Znv\x07-7-z|qrycvrZnv\x07-7-rpA5}|vv|{9>;=6H\f`);var HQMaterial=function(n){__extends(t,n);function t(e){var r=n.call(this,{vertexShader:vertex,fragmentShader:fragment})||this;return r.uniforms={uDepthMap:makeUniform("t",null),uWeightMap:makeUniform("t",null)},r.depthTest=!0,r.depthWrite=!0,r.opacity=1,r}return t.prototype.getUniform=function(e){return this.uniforms===void 0?void 0:this.uniforms[e].value},t.prototype.setUniform=function(e,r){if(this.uniforms!==void 0){var i=this.uniforms[e];i.value=r}},__decorate([uniform("uDepthMap"),__metadata("design:type",Number)],t.prototype,"uDepthMap",void 0),__decorate([uniform("uWeightMap"),__metadata("design:type",Number)],t.prototype,"uWeightMap",void 0),t}(THREE__namespace.RawShaderMaterial);function makeUniform(n,t){return{type:n,value:t}}function uniform(n,t){return t===void 0&&(t=!1),function(e,r){Object.defineProperty(e,r,{get:function(){return this.getUniform(n)},set:function(i){i!==this.getUniform(n)&&(this.setUniform(n,i),t&&this.updateShaderSource())}})}}var passCamera=new THREE__namespace.OrthographicCamera(-1,1,1,-1,0,1),geometry$1=new THREE__namespace.BufferGeometry;geometry$1.setAttribute("position",new THREE__namespace.Float32BufferAttribute([-1,3,0,-1,-1,0,3,-1,0],3)),geometry$1.setAttribute("uv",new THREE__namespace.Float32BufferAttribute([0,2,0,0,2,0],2));var mesh$1=new THREE__namespace.Mesh(geometry$1),hqScene=new THREE__namespace.Scene;hqScene.add(mesh$1);var HQEffect=function(n){__extends(t,n);function t(e,r,i,o){var s=n.call(this,e,r,i,o)||this;return s.sharedV2=new THREE__namespace.Vector2,s.renderer=e,s.material=new HQMaterial,s.scene=r,s.camera=i,mesh$1.material=s.material,s}return t.prototype.render=function(e){var r=this.material.uniforms;this.models.setMaterial({useHQWeight:!0,useHQDepth:!1}),this.renderer.setRenderTarget(e[1]),this.models.update(this.renderer,this.camera,"Mapview"),this.renderer.autoClearDepth=!1,this.renderer.setClearAlpha(0),this.renderer.render(this.scene,this.camera),r.uWeightMap.value=e[1].texture,r.uDepthMap.value=e[0].depthTexture,this.renderer.setRenderTarget(null),this.renderer.autoClearDepth=!0,this.renderer.setClearAlpha(1),this.renderer.render(hqScene,passCamera),this.models.setMaterial({useHQWeight:!1,useHQDepth:!0}),this.models.update(this.renderer,this.camera,"Mapview")},t.prototype.dispose=function(){this.copyPass.dispose()},t}(Effect),RAYCASTER_NEAR=.5,minDistance=0,MapviewController=function(n){__extends(t,n);function t(e){var r=this,i,o=t.parseArgs(e);return r=n.call(this,o)||this,r.mode="Mapview",r.defaultLongitude=o.defaultLongitude,r.defaultLatitude=o.defaultLatitude,r.defaultDistance=o.defaultDistance,r.maxLatitude=o.maxLatitude,r.minLatitude=o.minLatitude,r.locationMotion=new Motion({x:r.camera.pose.offset.x,y:r.camera.pose.offset.y,z:r.camera.pose.offset.z,distance:r.camera.pose.distance}),r.modelAlphaMotion=new Motion({modelAlpha:(i=r.models.getMaterial().modelAlpha)!==null&&i!==void 0?i:0}),r.perspToOrthoMotion=new Motion({perspToOrtho:r.camera.perspToOrtho.x}),r.intersectMeshCreator=o.intersectMeshCreator,r.intersectMesh=r.intersectMeshCreator(),r.intersectMesh.name="intersect",r.intersectMesh.visible=!1,r.currentTapId=null,r.helper.add(r.intersectMesh),r.edlTarget=new THREE__namespace.WebGLRenderTarget(1024,1024,{minFilter:THREE__namespace.NearestFilter,magFilter:THREE__namespace.NearestFilter,format:THREE__namespace.RGBAFormat,type:THREE__namespace.FloatType,depthTexture:new THREE__namespace.DepthTexture(1024,1024,THREE__namespace.UnsignedIntType)}),r.edlEffect=new EDLEffect(r.renderer,r.scene,r.camera,r.models),r.hqEffect=new HQEffect(r.renderer,r.scene,r.camera,r.models),r}return t.parseArgs=function(e){var r,i,o,s,u,l;if(e instanceof t)return e;var d=n.parseArgs.call(this,e);return __assign(__assign({},d),{defaultLongitude:(r=e.defaultLongitude)!==null&&r!==void 0?r:Math.PI/4,defaultLatitude:(i=e.defaultLatitude)!==null&&i!==void 0?i:Math.PI/4,defaultDistance:(o=e.defaultDistance)!==null&&o!==void 0?o:150,maxLatitude:(s=e.maxLatitude)!==null&&s!==void 0?s:+Math.PI/2,minLatitude:(u=e.minLatitude)!==null&&u!==void 0?u:0,intersectMeshCreator:(l=e.intersectMeshCreator)!==null&&l!==void 0?l:function(){return new IntersectMesh}})},t.distanceFromModel=function(e,r,i){var o=e.bounding,s=Math.pow(Math.pow(o.max.x-o.min.x+1,2)+Math.pow(o.max.y-o.min.y+1,2)+Math.pow(o.max.z-o.min.z+1,2),1/2),u=s/2/Math.tan(Math.PI*r/360);return i<1&&(u=u/i),isNaN(u)?s:u},t.initAnimationEndState=function(e){var r,i,o,s,u,l,d,c=this.parseArgs(e),f=c.works,h=c.models,v=e.initial,A=v.state,m=v.currentState,y=typeof A.panoIndex=="number"?{workCode:(o=(r=A.workCode)!==null&&r!==void 0?r:(i=c.works[0])===null||i===void 0?void 0:i.workCode)!==null&&o!==void 0?o:"",panoIndex:A.panoIndex}:{workCode:m.workCode,panoIndex:m.panoIndex},p=f.getResolvedObserver(y),g=(s=A.fov)!==null&&s!==void 0?s:60,b=clamp((u=A.latitude)!==null&&u!==void 0?u:isThirdPersonMode(m.mode)?m.latitude:c.defaultLatitude,c.minLatitude,c.maxLatitude),T=t.distanceFromModel(c.models,g,c.camera.aspect),_=new THREE__namespace.Vector3,w=(l=A.distance)!==null&&l!==void 0?l:Math.min(c.defaultDistance,T),x=(d=A.longitude)!==null&&d!==void 0?d:isThirdPersonMode(m.mode)?m.longitude:c.defaultLongitude;return A.offset?_.copy(A.offset):c.defaultDistance<T&&p?(_.copy(p.position),A.longitude===void 0&&(x=m.longitude)):_.copy(h.bounding.getCenter(_)),h.bounding.containsPoint(_)||h.bounding.getCenter(_),__assign(__assign({},y),{mode:"Mapview",longitude:x,latitude:b,fov:g,offset:_,distance:w})},t.prototype.destroy=function(){n.prototype.destroy.call(this),this.locationMotion.dispose(),delete this.panState,this.intersectMesh.dispose(),this.helper.remove(this.intersectMesh)},t.prototype.isReady=function(){return this.locationMotion.ended===!1?!1:n.prototype.isReady.call(this)},t.prototype.updateWork=function(e,r,i,o){this.userAction=o,this.works=e;var s=t.initAnimationEndState(__assign(__assign({},this),{initial:{currentState:__assign(__assign({},this.currentPano),this.camera.pose),duration:i,state:r,userAction:o}}));this.currentPano={workCode:s.workCode,panoIndex:s.panoIndex};var u={longitude:s.longitude,latitude:s.latitude,fov:s.fov},l={x:s.offset.x,y:s.offset.y,z:s.offset.z,distance:s.distance,orthoDistance:s.distance};return this.locationMotion.set(l,i).catch(noop$1),this.cameraMotion.set(u,i).catch(noop$1),!0},t.prototype.updateModel=function(e){n.prototype.updateModel.call(this,e)},t.prototype.updateCamera=function(e,r,i){var o=this;return this.initAnimationReady.then(function(){o.userAction=i,o.stopMomentumMovement();var s={},u={};return e.distance!==void 0&&(s.distance=e.distance),e.offset!==void 0&&(s.x=e.offset.x,s.y=e.offset.y,s.z=e.offset.z),e.longitude!==void 0&&(u.longitude=e.longitude),e.latitude!==void 0&&(u.latitude=e.latitude),e.fov!==void 0&&(u.fov=e.fov),o.locationMotion.set(s,r).catch(noop$1),o.cameraMotion.set(u,r).catch(noop$1)})},t.prototype.updateCameraWithKeyframes=function(e,r,i){var o=this;return this.initAnimationReady.then(function(){o.userAction=i,o.stopMomentumMovement();for(var s=[],u=[],l=0,d=e;l<d.length;l++){var c=d[l];s.push({key:c.key,progress:c.progress,value:{distance:c.value.distance,x:c.value.offset.x,y:c.value.offset.x,z:c.value.offset.x}}),u.push({key:c.key,progress:c.progress,value:{longitude:c.value.longitude,latitude:c.value.latitude,fov:c.value.fov}})}return o.locationMotion.setKeyframes(s,r).catch(noop$1),o.cameraMotion.setKeyframes(e,r)})},t.prototype.updateTime=function(e,r){if(!this.destroyed){var i={},o={};if(this.locationMotion.ended||(this.locationMotion.update(e),o.distance=this.locationMotion.value.distance,o.offset=new THREE__namespace.Vector3(this.locationMotion.value.x,this.locationMotion.value.y,this.locationMotion.value.z)),!this.cameraMotion.ended){this.cameraMotion.update(e),o.longitude=this.cameraMotion.value.longitude,o.latitude=this.cameraMotion.value.latitude,o.fov=this.cameraMotion.value.fov;var s=Math.PI/2-o.latitude<.02?1:0;this.perspToOrthoMotion.getTargetKeyframe().value.perspToOrtho!==s&&this.perspToOrthoMotion.set({perspToOrtho:s},500).catch(noop$1)}this.modelAlphaMotion.ended||(this.modelAlphaMotion.update(e),i.modelAlpha=this.modelAlphaMotion.value.modelAlpha),this.perspToOrthoMotion.ended||(this.perspToOrthoMotion.update(e),this.camera.perspToOrtho.setScalar(clamp(this.perspToOrthoMotion.value.perspToOrtho,0,1))),isEmptyObject(i)||this.models.setMaterial(i),isEmptyObject(o)||this.setCamera(o)}},t.prototype.getTargetState=function(){var e=this.cameraMotion.getKeyFrameSegment(now())[1],r=this.locationMotion.getKeyFrameSegment(now())[1];return __assign(__assign({},this.currentPano),{mode:this.mode,longitude:e.value.longitude,latitude:e.value.latitude,fov:e.value.fov,distance:r.value.distance,offset:new THREE__namespace.Vector3(r.value.x,r.value.y,r.value.z)})},t.prototype.initAnimation=function(){var e=this;return this.destroyed?Promise.resolve():new Promise(function(r){var i=e.initial;i.state,i.currentState;var o=i.duration,s=i.userAction;e.userAction=s;var u=t.initAnimationEndState(e),l={longitude:u.longitude,latitude:u.latitude,fov:u.fov},d={x:u.offset.x,y:u.offset.y,z:u.offset.z,distance:u.distance},c={modelAlpha:1},f={perspToOrtho:0};e.emit("initAnimation.start",createEvent("initAnimation.start",{state:u,userAction:e.userAction})),e.perspToOrthoMotion.set(f,o).catch(noop$1),e.modelAlphaMotion.set(c,o/3).catch(noop$1),e.cameraMotion.set(l,o).catch(noop$1),e.locationMotion.set(d,o).then(function(){e.emit("initAnimation.end",createEvent("initAnimation.end",{state:u,userAction:e.userAction}))},function(h){var v=__assign(__assign(__assign({},e.currentPano),{mode:e.mode}),clonePose(e.camera.pose));e.emit("initAnimation.end",createEvent("initAnimation.end",{state:v,userAction:e.userAction}))}).then(function(){r()})})},t.prototype.getForwardObserverOrNot=function(e){var r=this.models.intersectRaycaster(e)[0];if(!r)return null;var i=this.works.resolvedObservers,o=arrayMin(i,function(l){return l.standingPosition.distanceTo(r.point)},!0),s=o[0],u=o[1];return s&&u<10?s:null},t.prototype.coordinatesForOffset=function(e){var r=this.renderer.getSize(new THREE__namespace.Vector2);return{longitude:-2*e.x/(r.x*this.scissor.width),latitude:2*e.y/(r.y*this.scissor.height)}},t.prototype.requestMomentumMovement=function(e,r,i,o){var s=this;if(this.inMomentumMovement!==null){for(var u=__assign({},i),l={longitude:0,latitude:0,x:0,y:0,z:0},d=0;d<o;d++)u.longitude*=.996,u.latitude*=.996*.998,u.x*=.99,u.y*=.99,u.z*=.99,l.longitude+=u.longitude,l.latitude+=u.latitude,l.x+=u.x,l.y+=u.y,l.z+=u.z;var c=formatRad(this.cameraMotion.value.longitude+l.longitude),f=clamp(this.cameraMotion.value.latitude+l.latitude,this.minLatitude,this.maxLatitude),h=clamp(this.locationMotion.value.x+l.x,this.models.bounding.min.x,this.models.bounding.max.x),v=clamp(this.locationMotion.value.y+l.y,this.models.bounding.min.y,this.models.bounding.max.y),A=clamp(this.locationMotion.value.z+l.z,this.models.bounding.min.z,this.models.bounding.max.z),m=__assign(__assign({},this.currentPano),{mode:this.mode,longitude:c,latitude:f,offset:new THREE__namespace.Vector3(h,v,A),fov:this.cameraMotion.value.fov,distance:this.camera.pose.distance}),y=!(Math.abs(u.longitude)>1e-4||Math.abs(u.latitude)>1e-4||Math.abs(u.x)>1e-4||Math.abs(u.y)>1e-4||Math.abs(u.z)>1e-4),p=createEvent("gesture.momentum",__assign(__assign({},e),{isFirst:r,isFinal:y,state:m}));if(this.inMomentumMovement.event=p,this.emit("gesture.momentum",p),e.defaultPrevented){this.inMomentumMovement=null;return}this.inMomentumMovement&&(this.cameraMotion.set({longitude:c,latitude:f},0).catch(noop$1),this.locationMotion.set({x:m.offset.x,y:m.offset.y,z:m.offset.z},0).catch(noop$1),y?this.inMomentumMovement=null:AnimationFrameLoop.shared.add(function(g,b){s.requestMomentumMovement(e,!1,u,b|0)},!0,1))}},t.prototype.fixFinalState=function(e){if(this.perspToOrthoMotion.getTargetKeyframe().value.perspToOrtho!==1){var r=coordinatesToVector(e,new THREE__namespace.Vector3),i=new THREE__namespace.Vector3().copy(e.offset).sub(r.clone().multiplyScalar(e.distance)),o=new THREE__namespace.Raycaster(i,r);o.params.Points={threshold:.1},o.near=RAYCASTER_NEAR;var s=this.models.intersectRaycaster(o)[0];if(!s&&o.ray.direction.y<-.3){var u=new THREE__namespace.Plane(new THREE__namespace.Vector3(0,1,0),0),l=o.ray.intersectPlane(u,new THREE__namespace.Vector3);if(l){var d=l.distanceTo(o.ray.origin);d<1e4&&d>=o.near&&(s={distance:d,floor:0,point:l,object:this.scene,face:null})}}s&&(e.distance=clamp(s.distance,minDistance,1/0),e.offset.copy(i).add(r.clone().multiplyScalar(e.distance)))}},t.prototype.onPanGesture=function(e){this.userAction=e.userAction,this.stopMomentumMovement(),this.hideIntersectMesh();var r=e.pointers.length,i=this.panState,o=0;e.pointerType==="mouse"&&(o=e.srcEvent.buttons),i&&o===0&&i.buttons!==0&&(o=i.buttons);var s=i==null?void 0:i.target;if(!s){var u=this.relativeClientPosition(e.center),l=new THREE__namespace.Raycaster;l.params.Points={threshold:.1},l.setFromCamera(u,this.camera),l.near=RAYCASTER_NEAR,s=new THREE__namespace.Vector3().copy(l.ray.direction).multiplyScalar(3).add(l.ray.origin);var d=this.models.intersectRaycaster(l)[0];if(!d&&l.ray.direction.y<-.3){var c=new THREE__namespace.Plane(new THREE__namespace.Vector3(0,1,0),0),f=l.ray.intersectPlane(c,new THREE__namespace.Vector3);if(f){var h=f.distanceTo(l.ray.origin);h<1e4&&h>=l.near&&(d={distance:h,floor:0,point:f,object:this.scene})}}if(d)s.copy(d.point);else{var v=new THREE__namespace.Vector3().copy(this.camera.pose.offset).sub(this.camera.position),c=new THREE__namespace.Plane().setFromNormalAndCoplanarPoint(v,this.camera.pose.offset);l.ray.intersectPlane(c,s)}}if(e.isFinal?delete this.panState:this.panState={target:s,buttons:o,pointerLength:r,x:e.center.x,y:e.center.y},!(typeof i>"u"||i.pointerLength!==r)){var A=r>1||o===2;if(A){var m={x:e.center.x-i.x,y:e.center.y-i.y},y=new THREE__namespace.Vector3(this.locationMotion.value.x,this.locationMotion.value.y,this.locationMotion.value.z),p=coordinatesToVector(this.cameraMotion.value).setLength(this.locationMotion.value.distance).add(y),g=new THREE__namespace.Vector3().copy(p).sub(i.target).length();g*=Math.tan(this.camera.pose.fov/2*Math.PI/180);var b=this.renderer.getSize(new THREE__namespace.Vector2),T=2*m.x*g/b.y,_=2*m.y*g/b.y,w=new THREE__namespace.Vector3;w.setFromMatrixColumn(this.camera.matrix,0),w.multiplyScalar(-T),y.add(w),this.camera.pose.latitude<Math.PI/12?w.setFromMatrixColumn(this.camera.matrix,1):(w.setFromMatrixColumn(this.camera.matrix,0),w.crossVectors(this.camera.up,w)),w.multiplyScalar(_),y.add(w),y.clamp(this.models.bounding.min,this.models.bounding.max);var x=__assign(__assign({},this.currentPano),{mode:this.mode,longitude:this.camera.pose.longitude,latitude:this.camera.pose.latitude,fov:this.camera.pose.fov,offset:y,distance:this.camera.pose.distance});if(e.state=x,this.emit("gesture.pan",e),e.defaultPrevented)return;if(this.locationMotion.set({x:x.offset.x,y:x.offset.y,z:x.offset.z},0).catch(noop$1),e.isFinal&&(this.fixFinalState(x),this.locationMotion.set({distance:x.distance,x:x.offset.x,y:x.offset.y,z:x.offset.z},0).catch(noop$1)),e.isFinal){var M=this.renderer.getSize(new THREE__namespace.Vector2),R=2*e.velocityX*g/M.y,I=2*e.velocityY*g/M.y,S=new THREE__namespace.Vector3,B=new THREE__namespace.Vector3;S.setFromMatrixColumn(this.camera.matrix,0),S.multiplyScalar(-R),B.add(S),this.camera.pose.latitude<Math.PI/4?S.setFromMatrixColumn(this.camera.matrix,1):(S.setFromMatrixColumn(this.camera.matrix,0),S.crossVectors(this.camera.up,S)),S.multiplyScalar(I),B.add(S),this.inMomentumMovement={uuid:createUuid()},this.requestMomentumMovement(e,!0,{longitude:0,latitude:0,x:B.x,y:B.y,z:B.z},0)}}else{var m={x:e.center.x-i.x,y:e.center.y-i.y},O=this.coordinatesForOffset(m),F=formatRad(this.cameraMotion.value.longitude+O.longitude),H=clamp(this.cameraMotion.value.latitude+O.latitude,this.minLatitude,this.maxLatitude);this.camera.aspect<1&&Math.abs(e.overallVelocityX)>.2&&Math.atan2(Math.abs(e.overallVelocityY),Math.abs(e.overallVelocityX))<Math.PI/6.923&&(H=this.cameraMotion.value.latitude);var x=__assign(__assign({},this.currentPano),{mode:this.mode,longitude:F,latitude:H,fov:this.camera.pose.fov,offset:this.camera.pose.offset,distance:this.camera.pose.distance});if(e.isFinal&&this.fixFinalState(x),e.state=x,this.emit("gesture.pan",e),e.defaultPrevented)return;if(e.isFinal?this.locationMotion.set({distance:x.distance,x:x.offset.x,y:x.offset.y,z:x.offset.z},0).catch(noop$1):this.cameraMotion.set({longitude:x.longitude,latitude:x.latitude},0).catch(noop$1),e.isFinal){var k=e.velocityX,N=e.velocityY;this.inMomentumMovement={uuid:createUuid()},this.requestMomentumMovement(e,!0,__assign(__assign({},this.coordinatesForOffset({x:k,y:N})),{x:0,y:0,z:0}),0)}}}},t.prototype.onPinchGesture=function(e){var r;this.userAction=e.userAction,this.stopMomentumMovement(),this.hideIntersectMesh();var i=(r=this.pinchState)===null||r===void 0?void 0:r.distance;if(e.isFirst){this.pinchState={x:e.center.x,y:e.center.y,scale:1,distance:this.locationMotion.value.distance};return}if(e.isFinal){delete this.panState,delete this.pinchState;return}if(!(typeof i>"u")){this.models.bounding.getCenter(new THREE__namespace.Vector3);var o=t.distanceFromModel(this.models,this.cameraMotion.value.fov,this.camera.aspect)*1.3,s=clamp(i/e.scale,minDistance,1/0),u=e.state.offset.clone().sub(coordinatesToVector(e.state).setLength(s)),l=this.models.bounding.containsPoint(u),d;!l&&this.pinchState&&this.pinchState.scale>e.scale&&s>o?d=e.state.distance:(d=s,this.pinchState&&(this.pinchState.scale=e.scale)),e.state.distance=d,this.emit("gesture.pinch",e),!e.defaultPrevented&&(this.locationMotion.set({distance:e.state.distance},0).catch(noop$1),e.pointerType!=="mouse"&&(e.type="gesture.pan",this.onPanGesture(e)))}},t.prototype.onMouseMove=function(e){var r,i;if(this.intersectMesh.parent&&!this.panState&&!this.pinchState&&!this.mouseWheelState&&(this.emit("gesture.mousemove",e),!e.defaultPrevented)){var o=e.center.raycaster;if(o.near=RAYCASTER_NEAR,o.far=500,e.isFinal&&this.intersectMesh.parent&&this.intersectMesh.visible===!0){this.hideIntersectMesh();return}var s=this.models.intersectRaycaster(o)[0],u=createEvent("intersect.update",{raycaster:o,intersection:s??null,object:this.intersectMesh});if(this.emit("intersect.update",u),u.defaultPrevented){this.hideIntersectMesh();return}if(s){var l=(i=(r=s.face)===null||r===void 0?void 0:r.normal)!==null&&i!==void 0?i:new THREE__namespace.Vector3().copy(o.ray.direction).multiplyScalar(-1),d=l.clone().multiplyScalar(.05),c=s.point.clone().add(d);this.intersectMesh.position.copy(c);var f=c.clone().add(d);if(this.intersectMesh.lookAt(f),Math.abs(l.y)>.99){var h=this.camera.position.clone().sub(c);this.intersectMesh.rotation.z=-Math.atan2(h.z,h.x)}this.intersectMesh.visible=!0,this.needsRender=!0}else this.hideIntersectMesh()}},t.prototype.onMouseWheel=function(e){if(this.userAction=e.userAction,this.stopMomentumMovement(),this.hideIntersectMesh(),e.isFinal){var r=e.state;if(this.fixFinalState(r),this.emit("gesture.mousewheel",e),e.defaultPrevented)return;var i={x:r.offset.x,y:r.offset.y,z:r.offset.z,distance:r.distance};this.locationMotion.set(i,0).catch(noop$1)}else{var o=e.center.delta/2*Math.max(Math.log(this.locationMotion.value.distance),1),s=t.distanceFromModel(this.models,this.cameraMotion.value.fov,this.camera.aspect)*1.3,u=clamp(this.locationMotion.value.distance-o,minDistance,1/0),l=e.state.offset.clone().sub(coordinatesToVector(e.state).setLength(u)),d=this.models.bounding.containsPoint(l),c=!d&&o<0&&u>s?e.state.distance:u;if(e.state.distance=u,this.emit("gesture.mousewheel",e),e.defaultPrevented)return;this.locationMotion.set({distance:c},0).catch(noop$1)}},t.prototype.onTapGesture=function(e){var r=this;this.userAction=e.userAction,this.stopMomentumMovement();var i=e.center.raycaster,o=this.getForwardObserverOrNot(i);if(!o)this.emit("gesture.tap",e);else{var s={longitude:this.camera.pose.longitude,latitude:0},u=__assign(__assign({},e.state),{mode:"Panorama",workCode:o.pano.workCode,panoIndex:o.pano.panoIndex,longitude:s.longitude,latitude:s.latitude,offset:o?o.position.clone():new THREE__namespace.Vector3,distance:0});if(e.state=u,this.emit("gesture.tap",e),!e.defaultPrevented&&(this.emit("pano.select",createEvent("pano.select",{prevPano:this.currentPano,state:u,userAction:e.userAction,options:s,progress:0,error:null})),o&&o.active)){var l=this.currentTapId=createUuid();this.preloadPano(o.pano).then(function(d){r.currentTapId===l&&r.emit("pano.request",createEvent("pano.request",{userAction:!0,prevPano:r.currentPano,progress:0,state:u,options:s,error:null}))})}}},t.prototype.hideIntersectMesh=function(){this.intersectMesh.visible=!1,this.needsRender=!0},t.prototype.postProcessing=function(e,r){var i;if(!this.destroyed){if(r==="edl")return this.edlEffect.render(e);if(r==="hq")return(i=this.hqEffect)===null||i===void 0?void 0:i.render(e)}},t}(BaseController);function isNil(n){return n==null}var _moveEvent={type:"move"},XRController=function(){function n(){this._targetRay=null,this._grip=null,this._hand=null,this._axes=[0,0]}return n.prototype.getHandSpace=function(){return this._hand===null&&(this._hand=new THREE__namespace.Group,this._hand.matrixAutoUpdate=!1,this._hand.visible=!1,this._hand.joints={},this._hand.inputState={pinching:!1}),this._hand},n.prototype.getTargetRaySpace=function(){return this._targetRay===null&&(this._targetRay=new THREE__namespace.Group,this._targetRay.matrixAutoUpdate=!1,this._targetRay.visible=!1,this._targetRay.hasLinearVelocity=!1,this._targetRay.linearVelocity=new THREE__namespace.Vector3,this._targetRay.hasAngularVelocity=!1,this._targetRay.angularVelocity=new THREE__namespace.Vector3),this._targetRay},n.prototype.getGripSpace=function(){return this._grip===null&&(this._grip=new THREE__namespace.Group,this._grip.matrixAutoUpdate=!1,this._grip.visible=!1,this._grip.hasLinearVelocity=!1,this._grip.linearVelocity=new THREE__namespace.Vector3,this._grip.hasAngularVelocity=!1,this._grip.angularVelocity=new THREE__namespace.Vector3),this._grip},n.prototype.dispatchEvent=function(t){return this._targetRay!==null&&this._targetRay.dispatchEvent(t),this._grip!==null&&this._grip.dispatchEvent(t),this._hand!==null&&this._hand.dispatchEvent(t),this},n.prototype.disconnect=function(t){return this.dispatchEvent({type:"disconnected",data:t}),this._targetRay!==null&&(this._targetRay.visible=!1),this._grip!==null&&(this._grip.visible=!1),this._hand!==null&&(this._hand.visible=!1),this},n.prototype.getAxes=function(){return this._axes},n.prototype.update=function(t,e,r){var i=null,o=null,s=null,u=this._targetRay,l=this._grip,d=this._hand;if(t&&t.gamepad&&t.gamepad.axes&&(this._axes=[t.gamepad.axes[2],t.gamepad.axes[3]]),t&&e.session.visibilityState!=="visible-blurred")if(u!==null&&(i=e.getPose(t.targetRaySpace,r),i!==null&&(u.matrix.fromArray(i.transform.matrix),u.matrix.decompose(u.position,u.rotation,u.scale),i.linearVelocity?(u.hasLinearVelocity=!0,u.linearVelocity.copy(i.linearVelocity)):u.hasLinearVelocity=!1,i.angularVelocity?(u.hasAngularVelocity=!0,u.angularVelocity.copy(i.angularVelocity)):u.hasAngularVelocity=!1,this.dispatchEvent(_moveEvent))),d&&t.hand){s=!0;for(var c=0,f=t.hand.values();c<f.length;c++){var h=f[c],v=e.getJointPose(h,r);if(d.joints[h.jointName]===void 0){var A=new THREE__namespace.Group;A.matrixAutoUpdate=!1,A.visible=!1,d.joints[h.jointName]=A,d.add(A)}var m=d.joints[h.jointName];v!==null&&(m.matrix.fromArray(v.transform.matrix),m.matrix.decompose(m.position,m.rotation,m.scale),m.jointRadius=v.radius),m.visible=v!==null}var y=d.joints["index-finger-tip"],p=d.joints["thumb-tip"],g=y.position.distanceTo(p.position),b=.02,T=.005;d.inputState.pinching&&g>b+T?(d.inputState.pinching=!1,this.dispatchEvent({type:"pinchend",handedness:t.handedness,target:this})):!d.inputState.pinching&&g<=b-T&&(d.inputState.pinching=!0,this.dispatchEvent({type:"pinchstart",handedness:t.handedness,target:this}))}else l!==null&&t.gripSpace&&(o=e.getPose(t.gripSpace,r),o!==null&&(l.matrix.fromArray(o.transform.matrix),l.matrix.decompose(l.position,l.rotation,l.scale),o.linearVelocity?(l.hasLinearVelocity=!0,l.linearVelocity.copy(o.linearVelocity)):l.hasLinearVelocity=!1,o.angularVelocity?(l.hasAngularVelocity=!0,l.angularVelocity.copy(o.angularVelocity)):l.hasAngularVelocity=!1));return u!==null&&(u.visible=i!==null),l!==null&&(l.visible=o!==null),d!==null&&(d.visible=s!==null),this},n}(),framebufferScaleFactor=1,XRManager=function(){function n(t,e,r){var i,o,s,u,l;this.isPanorama=(i=r==null?void 0:r.isPanorama)!==null&&i!==void 0?i:!0,this.machineType=(o=r==null?void 0:r.machineType)!==null&&o!==void 0?o:"Pico",this.renderer=t,this.gl=e,this.enabled=!1,this.session=null,this.referenceSpaceType=(s=r==null?void 0:r.referenceSpaceType)!==null&&s!==void 0?s:"local-floor",this.referenceSpace=null,this.onSessionStartCallback=(u=r==null?void 0:r.onSessionStart)!==null&&u!==void 0?u:noop$1,this.onSessionEndCallback=(l=r==null?void 0:r.onSessionEnd)!==null&&l!==void 0?l:noop$1,this.controllers=[new XRController,new XRController],this.inputSourcesMap=new Map,this.cameraVR=new THREE__namespace.ArrayCamera,this.cameraL=new THREE__namespace.PerspectiveCamera,this.cameraR=new THREE__namespace.PerspectiveCamera,this.cameraL.viewport=new THREE__namespace.Vector4,this.cameraR.viewport=new THREE__namespace.Vector4,this.cameraL.layers.enable(1),this.cameraR.layers.enable(2),this.cameraVR.layers.enable(1),this.cameraVR.layers.enable(2),this.isPresenting=!1,this.currentDepthNear=null,this.currentDepthFar=null,this.cameraLPos=new THREE__namespace.Vector3,this.cameraRPos=new THREE__namespace.Vector3}return n.prototype.getController=function(t){var e=this.controllers[t];return e||console.warn("no controller find"),e.getTargetRaySpace()},n.prototype.getRightController=function(){if(!this.session)return null;var t=this.session.inputSources[0].handedness==="right"?0:1,e=this.controllers[t];return e||console.warn("no controller find"),e.getTargetRaySpace()},n.prototype.getLeftController=function(){if(!this.session)return null;var t=this.session.inputSources[0].handedness==="left"?0:1,e=this.controllers[t];return e||console.warn("no controller find"),e.getTargetRaySpace()},n.prototype.getControllerGrip=function(t){var e=this.controllers[t];return e||console.warn("no controller find"),e.getGripSpace()},n.prototype.getCameras=function(){return{cameraL:this.cameraL,cameraR:this.cameraR,cameraVR:this.cameraVR}},n.prototype.updateCamera=function(t,e){e===null?t.matrixWorld.copy(t.matrix):t.matrixWorld.multiplyMatrices(e.matrixWorld,t.matrix),t.matrixWorldInverse.getInverse(t.matrixWorld)},n.prototype.setProjectionFromUnion=function(t,e,r){this.cameraLPos.setFromMatrixPosition(e.matrixWorld),this.cameraRPos.setFromMatrixPosition(r.matrixWorld);var i=this.cameraLPos.distanceTo(this.cameraRPos),o=e.projectionMatrix.elements,s=r.projectionMatrix.elements,u=o[14]/(o[10]-1),l=o[14]/(o[10]+1),d=(o[9]+1)/o[5],c=(o[9]-1)/o[5],f=(o[8]-1)/o[0],h=(s[8]+1)/s[0],v=u*f,A=u*h,m=i/(-f+h),y=m*-f;e.matrixWorld.decompose(t.position,t.quaternion,t.scale),t.translateX(y),t.translateZ(m),t.matrixWorld.compose(t.position,t.quaternion,t.scale),t.matrixWorldInverse.getInverse(t.matrixWorld);var p=u+m,g=l+m,b=v-y,T=A+(i-y),_=d*l/g*p,w=c*l/g*p;t.projectionMatrix.makePerspective(b,T,_,w,p,g)},n.prototype.getCamera=function(t){this.cameraVR.near=this.cameraR.near=this.cameraL.near=t.near,this.cameraVR.far=this.cameraR.far=this.cameraL.far=t.far,this.session&&(this.currentDepthNear!==this.cameraVR.near||this.currentDepthFar!==this.cameraVR.far)&&(this.session.updateRenderState({depthNear:this.cameraVR.near,depthFar:this.cameraVR.far}),this.currentDepthNear=this.cameraVR.near,this.currentDepthFar=this.cameraVR.far);var e=t.parent,r=this.cameraVR.cameras;this.updateCamera(this.cameraVR,e);for(var i=0;i<r.length;i++)this.updateCamera(r[i],e);t.matrixWorld.copy(this.cameraVR.matrixWorld);for(var o=t.children,i=0,s=o.length;i<s;i++)o[i].updateMatrixWorld(!0);return r.length===2?this.setProjectionFromUnion(this.cameraVR,this.cameraL,this.cameraR):this.cameraVR.projectionMatrix.copy(this.cameraL.projectionMatrix),this.cameraVR},n.prototype.updateInputSources=function(t){if(!this.session){console.warn("session is lose!");return}for(var e=this.session.inputSources,r=0;r<this.controllers.length;r++)this.inputSourcesMap.set(e[r],this.controllers[r]);for(var r=0;r<t.removed.length;r++){var i=t.removed[r],o=this.inputSourcesMap.get(i);o&&(o.dispatchEvent({type:"disconnected",data:i}),this.inputSourcesMap.delete(i))}for(var r=0;r<t.added.length;r++){var i=t.added[r],o=this.inputSourcesMap.get(i);o&&o.dispatchEvent({type:"connected",data:i})}},n.prototype.onSessionEvent=function(t){var e=this.inputSourcesMap.get(t.inputSource);e&&e.dispatchEvent({type:t.type})},n.prototype.onSessionEnd=function(){this.inputSourcesMap.forEach(function(t,e){t.disconnect(e)}),this.inputSourcesMap.clear(),this.renderer.setFramebuffer(null),this.renderer.setRenderTarget(this.renderer.getRenderTarget()),this.isPresenting=!1,this.session=null,AnimationFrameLoop.shared.setContext(null),this.onSessionEndCallback()},n.prototype.onRequestReferenceSpace=function(t){this.referenceSpace=t,this.isPresenting=!0,this.session&&this.onSessionStartCallback(this.session)},n.prototype.setSession=function(t){var e=this;if(this.session=t,this.session){this.session.addEventListener("select",function(i){e.onSessionEvent(i)}),this.session.addEventListener("selectstart",function(i){e.onSessionEvent(i)}),this.session.addEventListener("selectend",function(i){e.onSessionEvent(i)}),this.session.addEventListener("squeeze",function(i){e.onSessionEvent(i)}),this.session.addEventListener("squeezestart",function(i){e.onSessionEvent(i)}),this.session.addEventListener("squeezeend",function(i){e.onSessionEvent(i)}),this.session.addEventListener("end",function(i){e.onSessionEnd()});var r=this.gl.getContextAttributes();this.gl.makeXRCompatible().then(function(){var i={antialias:r==null?void 0:r.antialias,alpha:r==null?void 0:r.alpha,depth:r==null?void 0:r.depth,stencil:r==null?void 0:r.stencil,framebufferScaleFactor};if(!e.session){console.error("session is lose while set session!");return}switch(e.machineType){case"Pico":e.session.updateRenderState({baseLayer:new XRWebGLLayer(e.session,e.gl,i)});break;case"Oculus":e.session.updateRenderState({layers:[new XRWebGLLayer(e.session,e.gl,i)]});break;default:e.machineType;break}e.session.requestReferenceSpace(e.referenceSpaceType).then(function(o){e.onRequestReferenceSpace(o)}),e.session.addEventListener("inputsourceschange",function(o){e.updateInputSources(o)})})}},n}(),LineSegmentsGeometry=function(n){__extends(t,n);function t(){var e=n.call(this)||this;e.type="LineSegmentsGeometry";var r=[-1,2,0,1,2,0,-1,1,0,1,1,0,-1,0,0,1,0,0,-1,-1,0,1,-1,0],i=[-1,2,1,2,-1,1,1,1,-1,-1,1,-1,-1,-2,1,-2],o=[0,2,1,2,3,1,2,4,3,4,5,3,4,6,5,6,7,5];return e.setIndex(o),e.setAttribute("position",new THREE__namespace.Float32BufferAttribute(r,3)),e.setAttribute("uv",new THREE__namespace.Float32BufferAttribute(i,2)),e}return t.prototype.applyMatrix4=function(e){var r=this.attributes.instanceStart,i=this.attributes.instanceEnd;return r!==void 0&&(r.applyMatrix4(e),i.applyMatrix4(e),r.needsUpdate=!0),this.boundingBox!==null&&this.computeBoundingBox(),this.boundingSphere!==null&&this.computeBoundingSphere(),this},t.prototype.setPositions=function(e){var r;e instanceof Float32Array?r=e:Array.isArray(e)?r=new Float32Array(e):r=new Float32Array;var i=new THREE__namespace.InstancedInterleavedBuffer(r,6,1);return this.setAttribute("instanceStart",new THREE__namespace.InterleavedBufferAttribute(i,3,0)),this.setAttribute("instanceEnd",new THREE__namespace.InterleavedBufferAttribute(i,3,3)),this.computeBoundingBox(),this.computeBoundingSphere(),this},t.prototype.setColors=function(e){var r;e instanceof Float32Array?r=e:Array.isArray(e)?r=new Float32Array(e):r=new Float32Array;var i=new THREE__namespace.InstancedInterleavedBuffer(r,6,1);return this.setAttribute("instanceColorStart",new THREE__namespace.InterleavedBufferAttribute(i,3,0)),this.setAttribute("instanceColorEnd",new THREE__namespace.InterleavedBufferAttribute(i,3,3)),this},t.prototype.fromWireframeGeometry=function(e){return this.setPositions(e.attributes.position.array),this},t.prototype.fromEdgesGeometry=function(e){return this.setPositions(e.attributes.position.array),this},t.prototype.fromMesh=function(e){return this.fromWireframeGeometry(new THREE__namespace.WireframeGeometry(e.geometry)),this},t.prototype.fromLineSegments=function(e){var r=e.geometry;if(r instanceof THREE__namespace.Geometry){var i=new THREE__namespace.BufferGeometry().fromGeometry(r);this.setPositions(i.attributes.position.array)}else r instanceof THREE__namespace.BufferGeometry&&this.setPositions(r.attributes.position.array);return this},t.prototype.computeBoundingBox=function(){this.boundingBox===null&&(this.boundingBox=new THREE__namespace.Box3);var e=this.attributes.instanceStart,r=this.attributes.instanceEnd;if(e!==void 0&&r!==void 0){var i=new THREE__namespace.Box3;this.boundingBox.setFromBufferAttribute(e),i.setFromBufferAttribute(r),this.boundingBox.union(i)}},t.prototype.computeBoundingSphere=function(){this.boundingSphere===null&&(this.boundingSphere=new THREE__namespace.Sphere),this.boundingBox===null&&this.computeBoundingBox();var e=this.attributes.instanceStart,r=this.attributes.instanceEnd;if(e!==void 0&&r!==void 0){var i=this.boundingSphere.center;this.boundingBox.getCenter(i);for(var o=0,s=new THREE__namespace.Vector3,u=0,l=e.count;u<l;u++)s.fromBufferAttribute(e,u),o=Math.max(o,i.distanceToSquared(s)),s.fromBufferAttribute(r,u),o=Math.max(o,i.distanceToSquared(s));this.boundingSphere.radius=Math.sqrt(o),isNaN(this.boundingSphere.radius)&&console.error("THREE.LineSegmentsGeometry.computeBoundingSphere(): Computed radius is NaN. The instanced position data is likely to have NaN values.",this)}},t.prototype.toJSON=function(){},t}(THREE__namespace.InstancedBufferGeometry);Object.assign(LineSegmentsGeometry.prototype,{isLineSegmentsGeometry:!0});var lineShader={uniforms:THREE__namespace.UniformsUtils.merge([THREE__namespace.UniformsLib.common,THREE__namespace.UniformsLib.fog,{linewidth:{value:1},resolution:{value:new THREE__namespace.Vector2(1,1)},dashScale:{value:1},dashSize:{value:1},gapSize:{value:1},opacity:{value:1}}]),vertexShader:`
1839
+ b-J-Htyl]|vv|{-J-}|wrpv|{Znv\x07-7-z|qrycvrZnv\x07-7-rpA5}|vv|{9>;=6H\f`);var HQMaterial=function(n){__extends(t,n);function t(e){var r=n.call(this,{vertexShader:vertex,fragmentShader:fragment})||this;return r.uniforms={uDepthMap:makeUniform("t",null),uWeightMap:makeUniform("t",null)},r.depthTest=!0,r.depthWrite=!0,r.opacity=1,r}return t.prototype.getUniform=function(e){return this.uniforms===void 0?void 0:this.uniforms[e].value},t.prototype.setUniform=function(e,r){if(this.uniforms!==void 0){var i=this.uniforms[e];i.value=r}},__decorate([uniform("uDepthMap"),__metadata("design:type",Number)],t.prototype,"uDepthMap",void 0),__decorate([uniform("uWeightMap"),__metadata("design:type",Number)],t.prototype,"uWeightMap",void 0),t}(THREE__namespace.RawShaderMaterial);function makeUniform(n,t){return{type:n,value:t}}function uniform(n,t){return t===void 0&&(t=!1),function(e,r){Object.defineProperty(e,r,{get:function(){return this.getUniform(n)},set:function(i){i!==this.getUniform(n)&&(this.setUniform(n,i),t&&this.updateShaderSource())}})}}var passCamera=new THREE__namespace.OrthographicCamera(-1,1,1,-1,0,1),geometry$1=new THREE__namespace.BufferGeometry;geometry$1.setAttribute("position",new THREE__namespace.Float32BufferAttribute([-1,3,0,-1,-1,0,3,-1,0],3)),geometry$1.setAttribute("uv",new THREE__namespace.Float32BufferAttribute([0,2,0,0,2,0],2));var mesh$1=new THREE__namespace.Mesh(geometry$1),hqScene=new THREE__namespace.Scene;hqScene.add(mesh$1);var HQEffect=function(n){__extends(t,n);function t(e,r,i,o){var s=n.call(this,e,r,i,o)||this;return s.sharedV2=new THREE__namespace.Vector2,s.renderer=e,s.material=new HQMaterial,s.scene=r,s.camera=i,mesh$1.material=s.material,s}return t.prototype.render=function(e){var r=this.material.uniforms;this.models.setMaterial({useHQWeight:!0,useHQDepth:!1}),this.renderer.setRenderTarget(e[1]),this.models.update(this.renderer,this.camera,"Mapview"),this.renderer.autoClearDepth=!1,this.renderer.setClearAlpha(0),this.renderer.render(this.scene,this.camera),r.uWeightMap.value=e[1].texture,r.uDepthMap.value=e[0].depthTexture,this.renderer.setRenderTarget(null),this.renderer.autoClearDepth=!0,this.renderer.setClearAlpha(1),this.renderer.render(hqScene,passCamera),this.models.setMaterial({useHQWeight:!1,useHQDepth:!0}),this.models.update(this.renderer,this.camera,"Mapview")},t.prototype.dispose=function(){this.copyPass.dispose()},t}(Effect),RAYCASTER_NEAR=.5,minDistance=0,MapviewController=function(n){__extends(t,n);function t(e){var r=this,i,o=t.parseArgs(e);return r=n.call(this,o)||this,r.mode="Mapview",r.defaultLongitude=o.defaultLongitude,r.defaultLatitude=o.defaultLatitude,r.defaultDistance=o.defaultDistance,r.maxLatitude=o.maxLatitude,r.minLatitude=o.minLatitude,r.locationMotion=new Motion({x:r.camera.pose.offset.x,y:r.camera.pose.offset.y,z:r.camera.pose.offset.z,distance:r.camera.pose.distance}),r.modelAlphaMotion=new Motion({modelAlpha:(i=r.models.getMaterial().modelAlpha)!==null&&i!==void 0?i:0}),r.perspToOrthoMotion=new Motion({perspToOrtho:r.camera.perspToOrtho.x}),r.intersectMeshCreator=o.intersectMeshCreator,r.intersectMesh=r.intersectMeshCreator(),r.intersectMesh.name="intersect",r.intersectMesh.visible=!1,r.currentTapId=null,r.helper.add(r.intersectMesh),r.edlTarget=new THREE__namespace.WebGLRenderTarget(1024,1024,{minFilter:THREE__namespace.NearestFilter,magFilter:THREE__namespace.NearestFilter,format:THREE__namespace.RGBAFormat,type:THREE__namespace.FloatType,depthTexture:new THREE__namespace.DepthTexture(1024,1024,THREE__namespace.UnsignedIntType)}),r.edlEffect=new EDLEffect(r.renderer,r.scene,r.camera,r.models),r.hqEffect=new HQEffect(r.renderer,r.scene,r.camera,r.models),r}return t.parseArgs=function(e){var r,i,o,s,u,l;if(e instanceof t)return e;var d=n.parseArgs.call(this,e);return __assign(__assign({},d),{defaultLongitude:(r=e.defaultLongitude)!==null&&r!==void 0?r:Math.PI/4,defaultLatitude:(i=e.defaultLatitude)!==null&&i!==void 0?i:Math.PI/4,defaultDistance:(o=e.defaultDistance)!==null&&o!==void 0?o:150,maxLatitude:(s=e.maxLatitude)!==null&&s!==void 0?s:+Math.PI/2,minLatitude:(u=e.minLatitude)!==null&&u!==void 0?u:0,intersectMeshCreator:(l=e.intersectMeshCreator)!==null&&l!==void 0?l:function(){return new IntersectMesh}})},t.distanceFromModel=function(e,r,i){var o=e.bounding,s=Math.pow(Math.pow(o.max.x-o.min.x+1,2)+Math.pow(o.max.y-o.min.y+1,2)+Math.pow(o.max.z-o.min.z+1,2),1/2),u=s/2/Math.tan(Math.PI*r/360);return i<1&&(u=u/i),isNaN(u)?s:u},t.initAnimationEndState=function(e){var r,i,o,s,u,l,d,c=this.parseArgs(e),f=c.works,h=c.models,v=e.initial,A=v.state,m=v.currentState,y=typeof A.panoIndex=="number"?{workCode:(o=(r=A.workCode)!==null&&r!==void 0?r:(i=c.works[0])===null||i===void 0?void 0:i.workCode)!==null&&o!==void 0?o:"",panoIndex:A.panoIndex}:{workCode:m.workCode,panoIndex:m.panoIndex},p=f.getResolvedObserver(y),g=(s=A.fov)!==null&&s!==void 0?s:60,b=clamp((u=A.latitude)!==null&&u!==void 0?u:isThirdPersonMode(m.mode)?m.latitude:c.defaultLatitude,c.minLatitude,c.maxLatitude),T=t.distanceFromModel(c.models,g,c.camera.aspect),_=new THREE__namespace.Vector3,w=(l=A.distance)!==null&&l!==void 0?l:Math.min(c.defaultDistance,T),x=(d=A.longitude)!==null&&d!==void 0?d:isThirdPersonMode(m.mode)?m.longitude:c.defaultLongitude;return A.offset?_.copy(A.offset):c.defaultDistance<T&&p?(_.copy(p.position),A.longitude===void 0&&(x=m.longitude)):_.copy(h.bounding.getCenter(_)),h.bounding.containsPoint(_)||h.bounding.getCenter(_),__assign(__assign({},y),{mode:"Mapview",longitude:x,latitude:b,fov:g,offset:_,distance:w})},t.prototype.destroy=function(){n.prototype.destroy.call(this),this.locationMotion.dispose(),delete this.panState,this.intersectMesh.dispose(),this.helper.remove(this.intersectMesh)},t.prototype.isReady=function(){return this.locationMotion.ended===!1?!1:n.prototype.isReady.call(this)},t.prototype.updateWork=function(e,r,i,o){this.userAction=o,this.works=e;var s=t.initAnimationEndState(__assign(__assign({},this),{initial:{currentState:__assign(__assign({},this.currentPano),this.camera.pose),duration:i,state:r,userAction:o}}));this.currentPano={workCode:s.workCode,panoIndex:s.panoIndex};var u={longitude:s.longitude,latitude:s.latitude,fov:s.fov},l={x:s.offset.x,y:s.offset.y,z:s.offset.z,distance:s.distance,orthoDistance:s.distance};return this.locationMotion.set(l,i).catch(noop$1),this.cameraMotion.set(u,i).catch(noop$1),!0},t.prototype.updateModel=function(e){n.prototype.updateModel.call(this,e)},t.prototype.updateCamera=function(e,r,i){var o=this;return this.initAnimationReady.then(function(){o.userAction=i,o.stopMomentumMovement();var s={},u={};return e.distance!==void 0&&(s.distance=e.distance),e.offset!==void 0&&(s.x=e.offset.x,s.y=e.offset.y,s.z=e.offset.z),e.longitude!==void 0&&(u.longitude=e.longitude),e.latitude!==void 0&&(u.latitude=e.latitude),e.fov!==void 0&&(u.fov=e.fov),o.locationMotion.set(s,r).catch(noop$1),o.cameraMotion.set(u,r).catch(noop$1)})},t.prototype.updateCameraWithKeyframes=function(e,r,i){var o=this;return this.initAnimationReady.then(function(){o.userAction=i,o.stopMomentumMovement();for(var s=[],u=[],l=0,d=e;l<d.length;l++){var c=d[l];s.push({key:c.key,progress:c.progress,value:{distance:c.value.distance,x:c.value.offset.x,y:c.value.offset.x,z:c.value.offset.x}}),u.push({key:c.key,progress:c.progress,value:{longitude:c.value.longitude,latitude:c.value.latitude,fov:c.value.fov}})}return o.locationMotion.setKeyframes(s,r).catch(noop$1),o.cameraMotion.setKeyframes(e,r)})},t.prototype.updateTime=function(e,r){if(!this.destroyed){var i={},o={};if(this.locationMotion.ended||(this.locationMotion.update(e),o.distance=this.locationMotion.value.distance,o.offset=new THREE__namespace.Vector3(this.locationMotion.value.x,this.locationMotion.value.y,this.locationMotion.value.z)),!this.cameraMotion.ended){this.cameraMotion.update(e),o.longitude=this.cameraMotion.value.longitude,o.latitude=this.cameraMotion.value.latitude,o.fov=this.cameraMotion.value.fov;var s=Math.PI/2-o.latitude<.02?1:0;this.perspToOrthoMotion.getTargetKeyframe().value.perspToOrtho!==s&&this.perspToOrthoMotion.set({perspToOrtho:s},500).catch(noop$1)}this.modelAlphaMotion.ended||(this.modelAlphaMotion.update(e),i.modelAlpha=this.modelAlphaMotion.value.modelAlpha),this.perspToOrthoMotion.ended||(this.perspToOrthoMotion.update(e),this.camera.perspToOrtho.setScalar(clamp(this.perspToOrthoMotion.value.perspToOrtho,0,1))),isEmptyObject(i)||this.models.setMaterial(i),isEmptyObject(o)||this.setCamera(o)}},t.prototype.getTargetState=function(){var e=this.cameraMotion.getKeyFrameSegment(now())[1],r=this.locationMotion.getKeyFrameSegment(now())[1];return __assign(__assign({},this.currentPano),{mode:this.mode,longitude:e.value.longitude,latitude:e.value.latitude,fov:e.value.fov,distance:r.value.distance,offset:new THREE__namespace.Vector3(r.value.x,r.value.y,r.value.z)})},t.prototype.initAnimation=function(){var e=this;return this.destroyed?Promise.resolve():new Promise(function(r){var i=e.initial;i.state,i.currentState;var o=i.duration,s=i.userAction;e.userAction=s;var u=t.initAnimationEndState(e),l={longitude:u.longitude,latitude:u.latitude,fov:u.fov},d={x:u.offset.x,y:u.offset.y,z:u.offset.z,distance:u.distance},c={modelAlpha:1},f={perspToOrtho:0};e.emit("initAnimation.start",createEvent("initAnimation.start",{state:u,userAction:e.userAction})),e.perspToOrthoMotion.set(f,o).catch(noop$1),e.modelAlphaMotion.set(c,o/3).catch(noop$1),e.cameraMotion.set(l,o).catch(noop$1),e.locationMotion.set(d,o).then(function(){e.emit("initAnimation.end",createEvent("initAnimation.end",{state:u,userAction:e.userAction}))},function(h){var v=__assign(__assign(__assign({},e.currentPano),{mode:e.mode}),clonePose(e.camera.pose));e.emit("initAnimation.end",createEvent("initAnimation.end",{state:v,userAction:e.userAction}))}).then(function(){r()})})},t.prototype.getForwardObserverOrNot=function(e){var r=this.models.intersectRaycaster(e)[0];if(!r)return null;var i=this.works.resolvedObservers,o=arrayMin(i,function(l){return l.standingPosition.distanceTo(r.point)},!0),s=o[0],u=o[1];return s&&u<10?s:null},t.prototype.coordinatesForOffset=function(e){var r=this.renderer.getSize(new THREE__namespace.Vector2);return{longitude:-2*e.x/(r.x*this.scissor.width),latitude:2*e.y/(r.y*this.scissor.height)}},t.prototype.requestMomentumMovement=function(e,r,i,o){var s=this;if(this.inMomentumMovement!==null){for(var u=__assign({},i),l={longitude:0,latitude:0,x:0,y:0,z:0},d=0;d<o;d++)u.longitude*=.996,u.latitude*=.996*.998,u.x*=.99,u.y*=.99,u.z*=.99,l.longitude+=u.longitude,l.latitude+=u.latitude,l.x+=u.x,l.y+=u.y,l.z+=u.z;var c=formatRad(this.cameraMotion.value.longitude+l.longitude),f=clamp(this.cameraMotion.value.latitude+l.latitude,this.minLatitude,this.maxLatitude),h=clamp(this.locationMotion.value.x+l.x,this.models.bounding.min.x,this.models.bounding.max.x),v=clamp(this.locationMotion.value.y+l.y,this.models.bounding.min.y,this.models.bounding.max.y),A=clamp(this.locationMotion.value.z+l.z,this.models.bounding.min.z,this.models.bounding.max.z),m=__assign(__assign({},this.currentPano),{mode:this.mode,longitude:c,latitude:f,offset:new THREE__namespace.Vector3(h,v,A),fov:this.cameraMotion.value.fov,distance:this.camera.pose.distance}),y=!(Math.abs(u.longitude)>1e-4||Math.abs(u.latitude)>1e-4||Math.abs(u.x)>1e-4||Math.abs(u.y)>1e-4||Math.abs(u.z)>1e-4),p=createEvent("gesture.momentum",__assign(__assign({},e),{isFirst:r,isFinal:y,state:m}));if(this.inMomentumMovement.event=p,this.emit("gesture.momentum",p),e.defaultPrevented){this.inMomentumMovement=null;return}this.inMomentumMovement&&(this.cameraMotion.set({longitude:c,latitude:f},0).catch(noop$1),this.locationMotion.set({x:m.offset.x,y:m.offset.y,z:m.offset.z},0).catch(noop$1),y?this.inMomentumMovement=null:AnimationFrameLoop.shared.add(function(g,b){s.requestMomentumMovement(e,!1,u,b|0)},!0,1))}},t.prototype.fixFinalState=function(e){if(this.perspToOrthoMotion.getTargetKeyframe().value.perspToOrtho!==1){var r=coordinatesToVector(e,new THREE__namespace.Vector3),i=new THREE__namespace.Vector3().copy(e.offset).sub(r.clone().multiplyScalar(e.distance)),o=new THREE__namespace.Raycaster(i,r);o.params.Points={threshold:.1},o.near=RAYCASTER_NEAR;var s=this.models.intersectRaycaster(o)[0];if(!s&&o.ray.direction.y<-.3){var u=new THREE__namespace.Plane(new THREE__namespace.Vector3(0,1,0),0),l=o.ray.intersectPlane(u,new THREE__namespace.Vector3);if(l){var d=l.distanceTo(o.ray.origin);d<1e4&&d>=o.near&&(s={distance:d,floor:0,point:l,object:this.scene,face:null})}}s&&(e.distance=clamp(s.distance,minDistance,1/0),e.offset.copy(i).add(r.clone().multiplyScalar(e.distance)))}},t.prototype.onPanGesture=function(e){this.userAction=e.userAction,this.stopMomentumMovement(),this.hideIntersectMesh();var r=e.pointers.length,i=this.panState,o=0;e.pointerType==="mouse"&&(o=e.srcEvent.buttons),i&&o===0&&i.buttons!==0&&(o=i.buttons);var s=i==null?void 0:i.target;if(!s){var u=this.relativeClientPosition(e.center),l=new THREE__namespace.Raycaster;l.params.Points={threshold:.1},l.setFromCamera(u,this.camera),l.near=RAYCASTER_NEAR,s=new THREE__namespace.Vector3().copy(l.ray.direction).multiplyScalar(3).add(l.ray.origin);var d=this.models.intersectRaycaster(l)[0];if(!d&&l.ray.direction.y<-.3){var c=new THREE__namespace.Plane(new THREE__namespace.Vector3(0,1,0),0),f=l.ray.intersectPlane(c,new THREE__namespace.Vector3);if(f){var h=f.distanceTo(l.ray.origin);h<1e4&&h>=l.near&&(d={distance:h,floor:0,point:f,object:this.scene})}}if(d)s.copy(d.point);else{var v=new THREE__namespace.Vector3().copy(this.camera.pose.offset).sub(this.camera.position),c=new THREE__namespace.Plane().setFromNormalAndCoplanarPoint(v,this.camera.pose.offset);l.ray.intersectPlane(c,s)}}if(e.isFinal?delete this.panState:this.panState={target:s,buttons:o,pointerLength:r,x:e.center.x,y:e.center.y},!(typeof i>"u"||i.pointerLength!==r)){var A=r>1||o===2;if(A){var m={x:e.center.x-i.x,y:e.center.y-i.y},y=new THREE__namespace.Vector3(this.locationMotion.value.x,this.locationMotion.value.y,this.locationMotion.value.z),p=coordinatesToVector(this.cameraMotion.value).setLength(this.locationMotion.value.distance).add(y),g=new THREE__namespace.Vector3().copy(p).sub(i.target).length();g*=Math.tan(this.camera.pose.fov/2*Math.PI/180);var b=this.renderer.getSize(new THREE__namespace.Vector2),T=2*m.x*g/b.y,_=2*m.y*g/b.y,w=new THREE__namespace.Vector3;w.setFromMatrixColumn(this.camera.matrix,0),w.multiplyScalar(-T),y.add(w),this.camera.pose.latitude<Math.PI/9?w.setFromMatrixColumn(this.camera.matrix,1):(w.setFromMatrixColumn(this.camera.matrix,0),w.crossVectors(this.camera.up,w)),w.multiplyScalar(_),y.add(w),y.clamp(this.models.bounding.min,this.models.bounding.max);var x=__assign(__assign({},this.currentPano),{mode:this.mode,longitude:this.camera.pose.longitude,latitude:this.camera.pose.latitude,fov:this.camera.pose.fov,offset:y,distance:this.camera.pose.distance});if(e.state=x,this.emit("gesture.pan",e),e.defaultPrevented)return;if(this.locationMotion.set({x:x.offset.x,y:x.offset.y,z:x.offset.z},0).catch(noop$1),e.isFinal&&(this.fixFinalState(x),this.locationMotion.set({distance:x.distance,x:x.offset.x,y:x.offset.y,z:x.offset.z},0).catch(noop$1)),e.isFinal){var M=this.renderer.getSize(new THREE__namespace.Vector2),R=2*e.velocityX*g/M.y,I=2*e.velocityY*g/M.y,S=new THREE__namespace.Vector3,B=new THREE__namespace.Vector3;S.setFromMatrixColumn(this.camera.matrix,0),S.multiplyScalar(-R),B.add(S),this.camera.pose.latitude<Math.PI/4?S.setFromMatrixColumn(this.camera.matrix,1):(S.setFromMatrixColumn(this.camera.matrix,0),S.crossVectors(this.camera.up,S)),S.multiplyScalar(I),B.add(S),this.inMomentumMovement={uuid:createUuid()},this.requestMomentumMovement(e,!0,{longitude:0,latitude:0,x:B.x,y:B.y,z:B.z},0)}}else{var m={x:e.center.x-i.x,y:e.center.y-i.y},O=this.coordinatesForOffset(m),F=formatRad(this.cameraMotion.value.longitude+O.longitude),H=clamp(this.cameraMotion.value.latitude+O.latitude,this.minLatitude,this.maxLatitude);this.camera.aspect<1&&Math.abs(e.overallVelocityX)>.2&&Math.atan2(Math.abs(e.overallVelocityY),Math.abs(e.overallVelocityX))<Math.PI/6.923&&(H=this.cameraMotion.value.latitude);var x=__assign(__assign({},this.currentPano),{mode:this.mode,longitude:F,latitude:H,fov:this.camera.pose.fov,offset:this.camera.pose.offset,distance:this.camera.pose.distance});if(e.isFinal&&this.fixFinalState(x),e.state=x,this.emit("gesture.pan",e),e.defaultPrevented)return;if(e.isFinal?this.locationMotion.set({distance:x.distance,x:x.offset.x,y:x.offset.y,z:x.offset.z},0).catch(noop$1):this.cameraMotion.set({longitude:x.longitude,latitude:x.latitude},0).catch(noop$1),e.isFinal){var k=e.velocityX,N=e.velocityY;this.inMomentumMovement={uuid:createUuid()},this.requestMomentumMovement(e,!0,__assign(__assign({},this.coordinatesForOffset({x:k,y:N})),{x:0,y:0,z:0}),0)}}}},t.prototype.onPinchGesture=function(e){var r;this.userAction=e.userAction,this.stopMomentumMovement(),this.hideIntersectMesh();var i=(r=this.pinchState)===null||r===void 0?void 0:r.distance;if(e.isFirst){this.pinchState={x:e.center.x,y:e.center.y,scale:1,distance:this.locationMotion.value.distance};return}if(e.isFinal){delete this.panState,delete this.pinchState;return}if(!(typeof i>"u")){var o=this.models.bounding.getCenter(new THREE__namespace.Vector3),s=t.distanceFromModel(this.models,this.cameraMotion.value.fov,this.camera.aspect),u=clamp(i/e.scale,minDistance,1/0),l=e.state.offset.clone().sub(coordinatesToVector(e.state).setLength(u)),d=this.models.bounding.containsPoint(l),c;!d&&this.pinchState&&this.pinchState.scale>e.scale&&o.distanceTo(l)>s?c=e.state.distance:(c=u,this.pinchState&&(this.pinchState.scale=e.scale)),e.state.distance=c,this.emit("gesture.pinch",e),!e.defaultPrevented&&(this.locationMotion.set({distance:e.state.distance},0).catch(noop$1),e.pointerType!=="mouse"&&(e.type="gesture.pan",this.onPanGesture(e)))}},t.prototype.onMouseMove=function(e){var r,i;if(this.intersectMesh.parent&&!this.panState&&!this.pinchState&&!this.mouseWheelState&&(this.emit("gesture.mousemove",e),!e.defaultPrevented)){var o=e.center.raycaster;if(o.near=RAYCASTER_NEAR,o.far=500,e.isFinal&&this.intersectMesh.parent&&this.intersectMesh.visible===!0){this.hideIntersectMesh();return}var s=this.models.intersectRaycaster(o)[0],u=createEvent("intersect.update",{raycaster:o,intersection:s??null,object:this.intersectMesh});if(this.emit("intersect.update",u),u.defaultPrevented){this.hideIntersectMesh();return}if(s){var l=(i=(r=s.face)===null||r===void 0?void 0:r.normal)!==null&&i!==void 0?i:new THREE__namespace.Vector3().copy(o.ray.direction).multiplyScalar(-1),d=l.clone().multiplyScalar(.05),c=s.point.clone().add(d);this.intersectMesh.position.copy(c);var f=c.clone().add(d);if(this.intersectMesh.lookAt(f),Math.abs(l.y)>.99){var h=this.camera.position.clone().sub(c);this.intersectMesh.rotation.z=-Math.atan2(h.z,h.x)}this.intersectMesh.visible=!0,this.needsRender=!0}else this.hideIntersectMesh()}},t.prototype.onMouseWheel=function(e){if(this.userAction=e.userAction,this.stopMomentumMovement(),this.hideIntersectMesh(),e.isFinal){var r=e.state;if(this.fixFinalState(r),this.emit("gesture.mousewheel",e),e.defaultPrevented)return;var i={x:r.offset.x,y:r.offset.y,z:r.offset.z,distance:r.distance};this.locationMotion.set(i,0).catch(noop$1)}else{var o=e.center.delta/2*Math.max(Math.log(this.locationMotion.value.distance),1),s=this.models.bounding.getCenter(new THREE__namespace.Vector3),u=t.distanceFromModel(this.models,this.cameraMotion.value.fov,this.camera.aspect),l=clamp(this.locationMotion.value.distance-o,minDistance,1/0),d=e.state.offset.clone().sub(coordinatesToVector(e.state).setLength(l)),c=this.models.bounding.containsPoint(d),f=!c&&o<0&&s.distanceTo(d)>u?e.state.distance:l;if(e.state.distance=l,this.emit("gesture.mousewheel",e),e.defaultPrevented)return;this.locationMotion.set({distance:f},0).catch(noop$1)}},t.prototype.onTapGesture=function(e){var r=this;this.userAction=e.userAction,this.stopMomentumMovement();var i=e.center.raycaster,o=this.getForwardObserverOrNot(i);if(!o)this.emit("gesture.tap",e);else{var s={longitude:this.camera.pose.longitude,latitude:0},u=__assign(__assign({},e.state),{mode:"Panorama",workCode:o.pano.workCode,panoIndex:o.pano.panoIndex,longitude:s.longitude,latitude:s.latitude,offset:o?o.position.clone():new THREE__namespace.Vector3,distance:0});if(e.state=u,this.emit("gesture.tap",e),!e.defaultPrevented&&(this.emit("pano.select",createEvent("pano.select",{prevPano:this.currentPano,state:u,userAction:e.userAction,options:s,progress:0,error:null})),o&&o.active)){var l=this.currentTapId=createUuid();this.preloadPano(o.pano).then(function(d){r.currentTapId===l&&r.emit("pano.request",createEvent("pano.request",{userAction:!0,prevPano:r.currentPano,progress:0,state:u,options:s,error:null}))})}}},t.prototype.hideIntersectMesh=function(){this.intersectMesh.visible=!1,this.needsRender=!0},t.prototype.postProcessing=function(e,r){var i;if(!this.destroyed){if(r==="edl")return this.edlEffect.render(e);if(r==="hq")return(i=this.hqEffect)===null||i===void 0?void 0:i.render(e)}},t}(BaseController);function isNil(n){return n==null}var _moveEvent={type:"move"},XRController=function(){function n(){this._targetRay=null,this._grip=null,this._hand=null,this._axes=[0,0]}return n.prototype.getHandSpace=function(){return this._hand===null&&(this._hand=new THREE__namespace.Group,this._hand.matrixAutoUpdate=!1,this._hand.visible=!1,this._hand.joints={},this._hand.inputState={pinching:!1}),this._hand},n.prototype.getTargetRaySpace=function(){return this._targetRay===null&&(this._targetRay=new THREE__namespace.Group,this._targetRay.matrixAutoUpdate=!1,this._targetRay.visible=!1,this._targetRay.hasLinearVelocity=!1,this._targetRay.linearVelocity=new THREE__namespace.Vector3,this._targetRay.hasAngularVelocity=!1,this._targetRay.angularVelocity=new THREE__namespace.Vector3),this._targetRay},n.prototype.getGripSpace=function(){return this._grip===null&&(this._grip=new THREE__namespace.Group,this._grip.matrixAutoUpdate=!1,this._grip.visible=!1,this._grip.hasLinearVelocity=!1,this._grip.linearVelocity=new THREE__namespace.Vector3,this._grip.hasAngularVelocity=!1,this._grip.angularVelocity=new THREE__namespace.Vector3),this._grip},n.prototype.dispatchEvent=function(t){return this._targetRay!==null&&this._targetRay.dispatchEvent(t),this._grip!==null&&this._grip.dispatchEvent(t),this._hand!==null&&this._hand.dispatchEvent(t),this},n.prototype.disconnect=function(t){return this.dispatchEvent({type:"disconnected",data:t}),this._targetRay!==null&&(this._targetRay.visible=!1),this._grip!==null&&(this._grip.visible=!1),this._hand!==null&&(this._hand.visible=!1),this},n.prototype.getAxes=function(){return this._axes},n.prototype.update=function(t,e,r){var i=null,o=null,s=null,u=this._targetRay,l=this._grip,d=this._hand;if(t&&t.gamepad&&t.gamepad.axes&&(this._axes=[t.gamepad.axes[2],t.gamepad.axes[3]]),t&&e.session.visibilityState!=="visible-blurred")if(u!==null&&(i=e.getPose(t.targetRaySpace,r),i!==null&&(u.matrix.fromArray(i.transform.matrix),u.matrix.decompose(u.position,u.rotation,u.scale),i.linearVelocity?(u.hasLinearVelocity=!0,u.linearVelocity.copy(i.linearVelocity)):u.hasLinearVelocity=!1,i.angularVelocity?(u.hasAngularVelocity=!0,u.angularVelocity.copy(i.angularVelocity)):u.hasAngularVelocity=!1,this.dispatchEvent(_moveEvent))),d&&t.hand){s=!0;for(var c=0,f=t.hand.values();c<f.length;c++){var h=f[c],v=e.getJointPose(h,r);if(d.joints[h.jointName]===void 0){var A=new THREE__namespace.Group;A.matrixAutoUpdate=!1,A.visible=!1,d.joints[h.jointName]=A,d.add(A)}var m=d.joints[h.jointName];v!==null&&(m.matrix.fromArray(v.transform.matrix),m.matrix.decompose(m.position,m.rotation,m.scale),m.jointRadius=v.radius),m.visible=v!==null}var y=d.joints["index-finger-tip"],p=d.joints["thumb-tip"],g=y.position.distanceTo(p.position),b=.02,T=.005;d.inputState.pinching&&g>b+T?(d.inputState.pinching=!1,this.dispatchEvent({type:"pinchend",handedness:t.handedness,target:this})):!d.inputState.pinching&&g<=b-T&&(d.inputState.pinching=!0,this.dispatchEvent({type:"pinchstart",handedness:t.handedness,target:this}))}else l!==null&&t.gripSpace&&(o=e.getPose(t.gripSpace,r),o!==null&&(l.matrix.fromArray(o.transform.matrix),l.matrix.decompose(l.position,l.rotation,l.scale),o.linearVelocity?(l.hasLinearVelocity=!0,l.linearVelocity.copy(o.linearVelocity)):l.hasLinearVelocity=!1,o.angularVelocity?(l.hasAngularVelocity=!0,l.angularVelocity.copy(o.angularVelocity)):l.hasAngularVelocity=!1));return u!==null&&(u.visible=i!==null),l!==null&&(l.visible=o!==null),d!==null&&(d.visible=s!==null),this},n}(),framebufferScaleFactor=1,XRManager=function(){function n(t,e,r){var i,o,s,u,l;this.isPanorama=(i=r==null?void 0:r.isPanorama)!==null&&i!==void 0?i:!0,this.machineType=(o=r==null?void 0:r.machineType)!==null&&o!==void 0?o:"Pico",this.renderer=t,this.gl=e,this.enabled=!1,this.session=null,this.referenceSpaceType=(s=r==null?void 0:r.referenceSpaceType)!==null&&s!==void 0?s:"local-floor",this.referenceSpace=null,this.onSessionStartCallback=(u=r==null?void 0:r.onSessionStart)!==null&&u!==void 0?u:noop$1,this.onSessionEndCallback=(l=r==null?void 0:r.onSessionEnd)!==null&&l!==void 0?l:noop$1,this.controllers=[new XRController,new XRController],this.inputSourcesMap=new Map,this.cameraVR=new THREE__namespace.ArrayCamera,this.cameraL=new THREE__namespace.PerspectiveCamera,this.cameraR=new THREE__namespace.PerspectiveCamera,this.cameraL.viewport=new THREE__namespace.Vector4,this.cameraR.viewport=new THREE__namespace.Vector4,this.cameraL.layers.enable(1),this.cameraR.layers.enable(2),this.cameraVR.layers.enable(1),this.cameraVR.layers.enable(2),this.isPresenting=!1,this.currentDepthNear=null,this.currentDepthFar=null,this.cameraLPos=new THREE__namespace.Vector3,this.cameraRPos=new THREE__namespace.Vector3}return n.prototype.getController=function(t){var e=this.controllers[t];return e||console.warn("no controller find"),e.getTargetRaySpace()},n.prototype.getRightController=function(){if(!this.session)return null;var t=this.session.inputSources[0].handedness==="right"?0:1,e=this.controllers[t];return e||console.warn("no controller find"),e.getTargetRaySpace()},n.prototype.getLeftController=function(){if(!this.session)return null;var t=this.session.inputSources[0].handedness==="left"?0:1,e=this.controllers[t];return e||console.warn("no controller find"),e.getTargetRaySpace()},n.prototype.getControllerGrip=function(t){var e=this.controllers[t];return e||console.warn("no controller find"),e.getGripSpace()},n.prototype.getCameras=function(){return{cameraL:this.cameraL,cameraR:this.cameraR,cameraVR:this.cameraVR}},n.prototype.updateCamera=function(t,e){e===null?t.matrixWorld.copy(t.matrix):t.matrixWorld.multiplyMatrices(e.matrixWorld,t.matrix),t.matrixWorldInverse.getInverse(t.matrixWorld)},n.prototype.setProjectionFromUnion=function(t,e,r){this.cameraLPos.setFromMatrixPosition(e.matrixWorld),this.cameraRPos.setFromMatrixPosition(r.matrixWorld);var i=this.cameraLPos.distanceTo(this.cameraRPos),o=e.projectionMatrix.elements,s=r.projectionMatrix.elements,u=o[14]/(o[10]-1),l=o[14]/(o[10]+1),d=(o[9]+1)/o[5],c=(o[9]-1)/o[5],f=(o[8]-1)/o[0],h=(s[8]+1)/s[0],v=u*f,A=u*h,m=i/(-f+h),y=m*-f;e.matrixWorld.decompose(t.position,t.quaternion,t.scale),t.translateX(y),t.translateZ(m),t.matrixWorld.compose(t.position,t.quaternion,t.scale),t.matrixWorldInverse.getInverse(t.matrixWorld);var p=u+m,g=l+m,b=v-y,T=A+(i-y),_=d*l/g*p,w=c*l/g*p;t.projectionMatrix.makePerspective(b,T,_,w,p,g)},n.prototype.getCamera=function(t){this.cameraVR.near=this.cameraR.near=this.cameraL.near=t.near,this.cameraVR.far=this.cameraR.far=this.cameraL.far=t.far,this.session&&(this.currentDepthNear!==this.cameraVR.near||this.currentDepthFar!==this.cameraVR.far)&&(this.session.updateRenderState({depthNear:this.cameraVR.near,depthFar:this.cameraVR.far}),this.currentDepthNear=this.cameraVR.near,this.currentDepthFar=this.cameraVR.far);var e=t.parent,r=this.cameraVR.cameras;this.updateCamera(this.cameraVR,e);for(var i=0;i<r.length;i++)this.updateCamera(r[i],e);t.matrixWorld.copy(this.cameraVR.matrixWorld);for(var o=t.children,i=0,s=o.length;i<s;i++)o[i].updateMatrixWorld(!0);return r.length===2?this.setProjectionFromUnion(this.cameraVR,this.cameraL,this.cameraR):this.cameraVR.projectionMatrix.copy(this.cameraL.projectionMatrix),this.cameraVR},n.prototype.updateInputSources=function(t){if(!this.session){console.warn("session is lose!");return}for(var e=this.session.inputSources,r=0;r<this.controllers.length;r++)this.inputSourcesMap.set(e[r],this.controllers[r]);for(var r=0;r<t.removed.length;r++){var i=t.removed[r],o=this.inputSourcesMap.get(i);o&&(o.dispatchEvent({type:"disconnected",data:i}),this.inputSourcesMap.delete(i))}for(var r=0;r<t.added.length;r++){var i=t.added[r],o=this.inputSourcesMap.get(i);o&&o.dispatchEvent({type:"connected",data:i})}},n.prototype.onSessionEvent=function(t){var e=this.inputSourcesMap.get(t.inputSource);e&&e.dispatchEvent({type:t.type})},n.prototype.onSessionEnd=function(){this.inputSourcesMap.forEach(function(t,e){t.disconnect(e)}),this.inputSourcesMap.clear(),this.renderer.setFramebuffer(null),this.renderer.setRenderTarget(this.renderer.getRenderTarget()),this.isPresenting=!1,this.session=null,AnimationFrameLoop.shared.setContext(null),this.onSessionEndCallback()},n.prototype.onRequestReferenceSpace=function(t){this.referenceSpace=t,this.isPresenting=!0,this.session&&this.onSessionStartCallback(this.session)},n.prototype.setSession=function(t){var e=this;if(this.session=t,this.session){this.session.addEventListener("select",function(i){e.onSessionEvent(i)}),this.session.addEventListener("selectstart",function(i){e.onSessionEvent(i)}),this.session.addEventListener("selectend",function(i){e.onSessionEvent(i)}),this.session.addEventListener("squeeze",function(i){e.onSessionEvent(i)}),this.session.addEventListener("squeezestart",function(i){e.onSessionEvent(i)}),this.session.addEventListener("squeezeend",function(i){e.onSessionEvent(i)}),this.session.addEventListener("end",function(i){e.onSessionEnd()});var r=this.gl.getContextAttributes();this.gl.makeXRCompatible().then(function(){var i={antialias:r==null?void 0:r.antialias,alpha:r==null?void 0:r.alpha,depth:r==null?void 0:r.depth,stencil:r==null?void 0:r.stencil,framebufferScaleFactor};if(!e.session){console.error("session is lose while set session!");return}switch(e.machineType){case"Pico":e.session.updateRenderState({baseLayer:new XRWebGLLayer(e.session,e.gl,i)});break;case"Oculus":e.session.updateRenderState({layers:[new XRWebGLLayer(e.session,e.gl,i)]});break;default:e.machineType;break}e.session.requestReferenceSpace(e.referenceSpaceType).then(function(o){e.onRequestReferenceSpace(o)}),e.session.addEventListener("inputsourceschange",function(o){e.updateInputSources(o)})})}},n}(),LineSegmentsGeometry=function(n){__extends(t,n);function t(){var e=n.call(this)||this;e.type="LineSegmentsGeometry";var r=[-1,2,0,1,2,0,-1,1,0,1,1,0,-1,0,0,1,0,0,-1,-1,0,1,-1,0],i=[-1,2,1,2,-1,1,1,1,-1,-1,1,-1,-1,-2,1,-2],o=[0,2,1,2,3,1,2,4,3,4,5,3,4,6,5,6,7,5];return e.setIndex(o),e.setAttribute("position",new THREE__namespace.Float32BufferAttribute(r,3)),e.setAttribute("uv",new THREE__namespace.Float32BufferAttribute(i,2)),e}return t.prototype.applyMatrix4=function(e){var r=this.attributes.instanceStart,i=this.attributes.instanceEnd;return r!==void 0&&(r.applyMatrix4(e),i.applyMatrix4(e),r.needsUpdate=!0),this.boundingBox!==null&&this.computeBoundingBox(),this.boundingSphere!==null&&this.computeBoundingSphere(),this},t.prototype.setPositions=function(e){var r;e instanceof Float32Array?r=e:Array.isArray(e)?r=new Float32Array(e):r=new Float32Array;var i=new THREE__namespace.InstancedInterleavedBuffer(r,6,1);return this.setAttribute("instanceStart",new THREE__namespace.InterleavedBufferAttribute(i,3,0)),this.setAttribute("instanceEnd",new THREE__namespace.InterleavedBufferAttribute(i,3,3)),this.computeBoundingBox(),this.computeBoundingSphere(),this},t.prototype.setColors=function(e){var r;e instanceof Float32Array?r=e:Array.isArray(e)?r=new Float32Array(e):r=new Float32Array;var i=new THREE__namespace.InstancedInterleavedBuffer(r,6,1);return this.setAttribute("instanceColorStart",new THREE__namespace.InterleavedBufferAttribute(i,3,0)),this.setAttribute("instanceColorEnd",new THREE__namespace.InterleavedBufferAttribute(i,3,3)),this},t.prototype.fromWireframeGeometry=function(e){return this.setPositions(e.attributes.position.array),this},t.prototype.fromEdgesGeometry=function(e){return this.setPositions(e.attributes.position.array),this},t.prototype.fromMesh=function(e){return this.fromWireframeGeometry(new THREE__namespace.WireframeGeometry(e.geometry)),this},t.prototype.fromLineSegments=function(e){var r=e.geometry;if(r instanceof THREE__namespace.Geometry){var i=new THREE__namespace.BufferGeometry().fromGeometry(r);this.setPositions(i.attributes.position.array)}else r instanceof THREE__namespace.BufferGeometry&&this.setPositions(r.attributes.position.array);return this},t.prototype.computeBoundingBox=function(){this.boundingBox===null&&(this.boundingBox=new THREE__namespace.Box3);var e=this.attributes.instanceStart,r=this.attributes.instanceEnd;if(e!==void 0&&r!==void 0){var i=new THREE__namespace.Box3;this.boundingBox.setFromBufferAttribute(e),i.setFromBufferAttribute(r),this.boundingBox.union(i)}},t.prototype.computeBoundingSphere=function(){this.boundingSphere===null&&(this.boundingSphere=new THREE__namespace.Sphere),this.boundingBox===null&&this.computeBoundingBox();var e=this.attributes.instanceStart,r=this.attributes.instanceEnd;if(e!==void 0&&r!==void 0){var i=this.boundingSphere.center;this.boundingBox.getCenter(i);for(var o=0,s=new THREE__namespace.Vector3,u=0,l=e.count;u<l;u++)s.fromBufferAttribute(e,u),o=Math.max(o,i.distanceToSquared(s)),s.fromBufferAttribute(r,u),o=Math.max(o,i.distanceToSquared(s));this.boundingSphere.radius=Math.sqrt(o),isNaN(this.boundingSphere.radius)&&console.error("THREE.LineSegmentsGeometry.computeBoundingSphere(): Computed radius is NaN. The instanced position data is likely to have NaN values.",this)}},t.prototype.toJSON=function(){},t}(THREE__namespace.InstancedBufferGeometry);Object.assign(LineSegmentsGeometry.prototype,{isLineSegmentsGeometry:!0});var lineShader={uniforms:THREE__namespace.UniformsUtils.merge([THREE__namespace.UniformsLib.common,THREE__namespace.UniformsLib.fog,{linewidth:{value:1},resolution:{value:new THREE__namespace.Vector2(1,1)},dashScale:{value:1},dashSize:{value:1},gapSize:{value:1},opacity:{value:1}}]),vertexShader:`
1840
1840
  #include <common>
1841
1841
  #include <color_pars_vertex>
1842
1842
  #include <fog_pars_vertex>
@@ -2035,7 +2035,7 @@ void main() {
2035
2035
  #include <premultiplied_alpha_fragment>
2036
2036
 
2037
2037
  }
2038
- `},LineMaterial=function(n){__extends(t,n);function t(e){var r=n.call(this,{uniforms:THREE__namespace.UniformsUtils.clone(lineShader.uniforms),vertexShader:lineShader.vertexShader,fragmentShader:lineShader.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}(THREE__namespace.ShaderMaterial);Object.assign(LineMaterial.prototype,{isLineMaterial:!0});var LineSegments2=function(n){__extends(t,n);function t(e,r){var i=n.call(this)||this;return i.type="LineSegments2",i.geometry=e!==void 0?e:new LineSegmentsGeometry,i.material=r!==void 0?r:new LineMaterial({color:Math.random()*16777215}),i}return t.prototype.computeLineDistances=function(){for(var e=this.geometry,r=e.attributes.instanceStart,i=e.attributes.instanceEnd,o=new Float32Array(2*r.count),s=new THREE__namespace.Vector3,u=new THREE__namespace.Vector3,l=0,d=0,c=r.count;l<c;l++,d+=2)s.fromBufferAttribute(r,l),u.fromBufferAttribute(i,l),o[d]=d===0?0:o[d-1],o[d+1]=o[d]+s.distanceTo(u);var f=new THREE__namespace.InstancedInterleavedBuffer(o,2,1);return e.setAttribute("instanceDistanceStart",new THREE__namespace.InterleavedBufferAttribute(f,1,0)),e.setAttribute("instanceDistanceEnd",new THREE__namespace.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,o=e.camera,s=o.projectionMatrix,u=this.geometry,l=this.material,d=l.resolution,c=l.linewidth,f=u.attributes.instanceStart,h=u.attributes.instanceEnd,v=new THREE__namespace.Vector4,A=new THREE__namespace.Vector4,m=new THREE__namespace.Vector4,y=new THREE__namespace.Vector3,p=new THREE__namespace.Matrix4,g=new THREE__namespace.Line3,b=new THREE__namespace.Vector3;i.at(1,m),m.w=1,m.applyMatrix4(o.matrixWorldInverse),m.applyMatrix4(s),m.multiplyScalar(1/m.w),m.x*=d.x/2,m.y*=d.y/2,m.z=0,y.copy(m);var T=this.matrixWorld;p.multiplyMatrices(o.matrixWorldInverse,T);for(var _=0,w=f.count;_<w;_++){v.fromBufferAttribute(f,_),A.fromBufferAttribute(h,_),v.w=1,A.w=1,v.applyMatrix4(p),A.applyMatrix4(p),v.applyMatrix4(s),A.applyMatrix4(s),v.multiplyScalar(1/v.w),A.multiplyScalar(1/A.w);var x=v.z<-1&&A.z<-1,M=v.z>1&&A.z>1;if(!(x||M)){v.x*=d.x/2,v.y*=d.y/2,A.x*=d.x/2,A.y*=d.y/2,g.start.copy(v),g.start.z=0,g.end.copy(A),g.end.z=0;var R=g.closestPointToPointParameter(y,!0);g.at(R,b);var I=THREE__namespace.MathUtils.lerp(v.z,A.z,R),S=I>=-1&&I<=1,B=y.distanceTo(b)<c*.5;if(S&&B){g.start.fromBufferAttribute(f,_),g.end.fromBufferAttribute(h,_),g.start.applyMatrix4(T),g.end.applyMatrix4(T);var O=new THREE__namespace.Vector3,F=new THREE__namespace.Vector3;i.distanceSqToSegment(g.start,g.end,F,O),r.push({point:F,pointOnLine:O,distance:i.origin.distanceTo(F),object:this,faceIndex:_})}}}},t}(THREE__namespace.Mesh);Object.assign(LineSegments2.prototype,{isLineSegments2:!0});var Line2=function(n){__extends(t,n);function t(e,r){var i=n.call(this,e,r)||this;return i.type="Line2",i}return t}(LineSegments2);Object.assign(Line2.prototype,{isLine2:!0});var LineGeometry=function(n){__extends(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),o=0;o<r;o+=3)i[2*o]=e[o],i[2*o+1]=e[o+1],i[2*o+2]=e[o+2],i[2*o+3]=e[o+3],i[2*o+4]=e[o+4],i[2*o+5]=e[o+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),o=0;o<r;o+=3)i[2*o]=e[o],i[2*o+1]=e[o+1],i[2*o+2]=e[o+2],i[2*o+3]=e[o+3],i[2*o+4]=e[o+4],i[2*o+5]=e[o+5];return n.prototype.setColors.call(this,i),this},t.prototype.fromLine=function(e){var r=e.geometry;if(r instanceof THREE__namespace.Geometry){var i=new THREE__namespace.BufferGeometry().fromGeometry(r);this.setPositions(i.attributes.position.array)}else r instanceof THREE__namespace.BufferGeometry&&this.setPositions(r.attributes.position.array);return this},t.prototype.copy=function(){return this},t}(LineSegmentsGeometry);Object.assign(LineGeometry.prototype,{isLineGeometry:!0});var circleImageURL="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==",DEFAULT_COLOR=14467195,POINT_SIZE=8,DEFAULT_LINEWIDTH=2,DEFAULT_DASHSCALE=20,sharedCircleTexture=null,FiveLine=function(n){__extends(t,n);function t(e,r){e===void 0&&(e=new THREE__namespace.Vector3),r===void 0&&(r=new THREE__namespace.Vector3);var i=n.call(this)||this;i.type="FiveLine",i.needsRender=!0;var o=new LineGeometry,s=new LineMaterial({color:DEFAULT_COLOR,linewidth:DEFAULT_LINEWIDTH,dashScale:DEFAULT_DASHSCALE,dashed:!1});i.line=new Line2(o,s);var u=new THREE__namespace.BufferGeometry,l=new THREE__namespace.PointsMaterial({color:DEFAULT_COLOR,size:POINT_SIZE,map:sharedCircleTexture||(sharedCircleTexture=new THREE__namespace.TextureLoader().load(circleImageURL)),sizeAttenuation:!1,transparent:!0});return i.points=new THREE__namespace.Points(u,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.65"},enumerable:!1,configurable:!0}),t.prototype.setPoints=function(e,r){var i=[].concat(e.toArray(),r.toArray());this.points.geometry.setAttribute("position",new THREE__namespace.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 THREE__namespace.Vector3(e[0],e[1],e[2]),new THREE__namespace.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 o=e[i];i==="dashed"?(r.dashed=o,o?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}(THREE__namespace.Object3D);Object.assign(FiveLine.prototype,{isFiveLine:!0});var Constants={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 fetchJsonFile(n){return __awaiter(this,void 0,void 0,function(){var t;return __generator(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 fetchProfilesList(n){return __awaiter(this,void 0,void 0,function(){var t,e;return __generator(this,function(r){switch(r.label){case 0:if(!n)throw new Error("No basePath supplied");return t="profilesList.json",[4,fetchJsonFile("".concat(n,"/").concat(t))];case 1:return e=r.sent(),[2,e]}})})}function fetchProfile(n,t,e,r){return e===void 0&&(e=null),r===void 0&&(r=!0),__awaiter(this,void 0,void 0,function(){var i,o,s,u,l,d;return __generator(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,fetchProfilesList(t)];case 1:if(i=c.sent(),n.profiles.some(function(f){var h=i[f];return h&&(o={profileId:f,profilePath:"".concat(t,"/").concat(h.path),deprecated:!!h.deprecated}),!!o}),!o){if(!e)throw new Error("No matching profile name found");if(s=i[e],!s)throw new Error('No matching profile name found and default profile "'.concat(e,'" missing.'));o={profileId:e,profilePath:"".concat(t,"/").concat(s.path),deprecated:!!s.deprecated}}return[4,fetchJsonFile(o.profilePath)];case 2:if(u=c.sent(),r){if(d=void 0,d=u.layouts[n.handedness],!d)throw new Error("No matching handedness, ".concat(n.handedness,", in profile ").concat(o.profileId));d.assetPath&&(l=o.profilePath.replace("profile.json",d.assetPath))}return[2,{profile:u,assetPath:l}]}})})}var defaultComponentValues={xAxis:0,yAxis:0,button:0,state:Constants.ComponentState.DEFAULT};function normalizeAxes(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 o=Math.atan2(t,n);e=Math.cos(o),r=Math.sin(o)}var s={normalizedXAxis:e*.5+.5,normalizedYAxis:r*.5+.5};return s}var VisualResponse=function(){function n(t){this.componentProperty=t.componentProperty,this.states=t.states,this.valueNodeName=t.valueNodeName,this.valueNodeProperty=t.valueNodeProperty,this.valueNodeProperty===Constants.VisualResponseProperty.TRANSFORM&&(this.minNodeName=t.minNodeName,this.maxNodeName=t.maxNodeName),this.value=0,this.updateFromComponent(defaultComponentValues)}return n.prototype.updateFromComponent=function(t){var e=t.xAxis,r=t.yAxis,i=t.button,o=t.state,s=normalizeAxes(e,r),u=s.normalizedXAxis,l=s.normalizedYAxis;switch(this.componentProperty){case Constants.ComponentProperty.X_AXIS:this.value=this.states.includes(o)?u:.5;break;case Constants.ComponentProperty.Y_AXIS:this.value=this.states.includes(o)?l:.5;break;case Constants.ComponentProperty.BUTTON:this.value=this.states.includes(o)?i:0;break;case Constants.ComponentProperty.STATE:this.valueNodeProperty===Constants.VisualResponseProperty.VISIBILITY?this.value=this.states.includes(o):this.value=this.states.includes(o)?1:0;break;default:throw new Error("Unexpected visualResponse componentProperty ".concat(this.componentProperty))}},n}(),Component=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 o=new VisualResponse(e.visualResponses[i]);r.visualResponses[i]=o}),this.gamepadIndices=Object.assign({},e.gamepadIndices),this.values={state:Constants.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=__assign({id:this.id},this.values);return t},enumerable:!1,configurable:!0}),n.prototype.updateFromGamepad=function(t){var e=this;if(this.values.state=Constants.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=Constants.ComponentState.PRESSED:(r.touched||this.values.button>Constants.ButtonTouchThreshold)&&(this.values.state=Constants.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===Constants.ComponentState.DEFAULT&&Math.abs(this.values.xAxis)>Constants.AxisTouchThreshold&&(this.values.state=Constants.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===Constants.ComponentState.DEFAULT&&Math.abs(this.values.yAxis)>Constants.AxisTouchThreshold&&(this.values.state=Constants.ComponentState.TOUCHED)),Object.values(this.visualResponses).forEach(function(i){i.updateFromComponent(e.values)})},n}(),MotionController=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(o){var s=i.layoutDescription.components[o];i.components[o]=new Component(o,s)}),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}(),DEFAULT_PROFILES_PATH="https://cdn.jsdelivr.net/npm/@webxr-input-profiles/assets@1.0/dist/profiles",DEFAULT_PROFILE="generic-trigger",XRControllerModel=function(n){__extends(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 THREE__namespace.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 o=i.valueNode,s=i.minNode,u=i.maxNode,l=i.value,d=i.valueNodeProperty;o&&(d===Constants.VisualResponseProperty.VISIBILITY?o.visible=l:d===Constants.VisualResponseProperty.TRANSFORM&&(o.quaternion.copy(s.quaternion).slerp(u.quaternion,l),o.position.lerpVectors(s.position,u.position,l)))})}))},t}(THREE.Object3D);function findNodes(n,t){Object.values(n.components).forEach(function(e){var r=e.type,i=e.touchPointNodeName,o=e.visualResponses;if(r===Constants.ComponentType.TOUCHPAD)if(e.touchPointNode=t.getObjectByName(i),e.touchPointNode){var s=new THREE.SphereGeometry(.001),u=new THREE.MeshBasicMaterial({color:255}),l=new THREE.Mesh(s,u);e.touchPointNode.add(l)}else console.warn("Could not find touch dot, ".concat(e.touchPointNodeName,", in touchpad component ").concat(e.id));Object.values(o).forEach(function(d){var c=d.valueNodeName,f=d.minNodeName,h=d.maxNodeName,v=d.valueNodeProperty;if(v===Constants.VisualResponseProperty.TRANSFORM){if(d.minNode=t.getObjectByName(f),d.maxNode=t.getObjectByName(h),!d.minNode){console.warn("Could not find ".concat(f," in the model"));return}if(!d.maxNode){console.warn("Could not find ".concat(h," in the model"));return}}d.valueNode=t.getObjectByName(c),d.valueNode||console.warn("Could not find ".concat(c," in the model"))})})}function addAssetSceneToControllerModel(n,t){findNodes(n.motionController,t),n.envMap&&t.traverse(function(e){e instanceof THREE__namespace.Mesh&&e.isMesh&&(e.material.envMap=n.envMap,e.material.needsUpdate=!0)}),n.add(t)}var XRControllerModelFactory=function(){function n(t){t===void 0&&(t=null),this.gltfLoader=t,this.path=DEFAULT_PROFILES_PATH,this._assetCache={}}return n.prototype.createControllerModel=function(t){var e=this,r=new XRControllerModel,i=null;return t.addEventListener("connected",function(o){var s=o.data;s.targetRayMode!=="tracked-pointer"||!s.gamepad||fetchProfile(s,e.path,DEFAULT_PROFILE).then(function(u){var l=u.profile,d=u.assetPath;r.motionController=new MotionController(s,l,d);var c=e._assetCache[r.motionController.assetUrl];if(c)i=c.scene.clone(),addAssetSceneToControllerModel(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(),addAssetSceneToControllerModel(r,i)})}}).catch(function(u){console.warn(u)})}),t.addEventListener("disconnected",function(){r.motionController=null,r.remove(i),i=null}),r},n}();function mapPanoResource(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 CONTROLLER_EVNET_DELTA_TIME=300,ROTATE_Y_PI_MATRIX=new THREE__namespace.Matrix4().makeRotationAxis(new THREE__namespace.Vector3(0,1,0),Math.PI),PANO_TEXTURE_SCALE=new THREE__namespace.Vector3(-1,1,1),XRPanoramaController=function(n){__extends(t,n);function t(e){var r,i=n.call(this,e)||this;i.xrManager=new XRManager(i.renderer,i.renderer.getContext(),{onSessionStart:function(d){i.emit("xr.session.start",createEvent("xr.session.start",{session:d,machineType:i.xrManager.machineType}))},onSessionEnd:function(){i.emit("xr.session.end",createEvent("xr.session.end",{session:null,machineType:i.xrManager.machineType}))}}),i.xrControllerRay={left:new THREE__namespace.Raycaster,right:new THREE__namespace.Raycaster},i.xrControllerRay.left.params.Points={threshold:.1},i.xrControllerRay.right.params.Points={threshold:.1},i.pointerLines={left:new FiveLine,right:new FiveLine},i.pointerLines.left.visible=!1,i.pointerLines.right.visible=!0,i.pointerLines.left.setMaterial({color:new THREE__namespace.Vector3(1,1,1)}),i.pointerLines.left.points.material.depthTest=!1,i.pointerLines.right.setMaterial({color:new THREE__namespace.Vector3(1,1,1)}),i.pointerLines.right.points.material.depthTest=!1,i.scene.add(i.pointerLines.left,i.pointerLines.right),i.panoResources={},i.panoResources[i.locationMotion.keyframes[0].key=i.locationMotion.keyframes[1].key=createUuid()]={panoId:panoStringify(i.currentPano),leftPanoPicture:null,position:i.camera.pose.offset.clone(),effect:"fade"},i.parallaxCameraMatrixs=[],i.onlyUseRightController=(r=e.onlyUseRightController)!==null&&r!==void 0?r:!1;var o=AnimationFrameLoop.shared.getContext();if(!o)return console.error("获取session失败,请退出重试"),i;i.on("xr.session.end",function(){i.scene.remove(i.pointerLines.left,i.pointerLines.right)}),i.xrManager.setSession(o),i.controllerWrappers=[new THREE__namespace.Group,new THREE__namespace.Group],i.scene.add(i.controllerWrappers[0],i.controllerWrappers[1]);var s=i.xrManager.getController(0);i.controllerWrappers[0].add(s);var u=i.xrManager.getController(1);i.controllerWrappers[1].add(u);var l=new XRControllerModelFactory;return l.gltfLoader={load:function(d,c){internalFetcher.ajax(d,{responseType:"arraybuffer"}).then(function(f){var h;return parseGltf(f.body,{resourcePath:d.slice(0,d.lastIndexOf("/")+1),search:(h=d.split("?")[1])!==null&&h!==void 0?h:"",fetcher:internalFetcher})}).then(function(f){return c(f)})}},i.on("xr.session.start",function(){var d=i.xrManager.getControllerGrip(0);if(d.add(l.createControllerModel(d)),i.controllerWrappers[0].add(d),!i.onlyUseRightController){var c=i.xrManager.getControllerGrip(1);c.add(l.createControllerModel(c)),i.controllerWrappers[1].add(c)}}),i.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}},i}return t.parseArgs=function(e){if(e instanceof t)return e;var r=__assign(__assign({},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 __assign(__assign({},i),{mode:"XRPanorama"})},t.prototype.moveToPano=function(e,r,i){var o=this,s,u,l,d;this.userAction=i,this.stopMomentumMovement();var c=this.works.getResolvedObserver(e);if(!c)throw new Error("Invalid PanoIndex");var f=this.imageOptions.size;if(typeof f>"u"&&c){var h=c.images.up.match(/\/cube_(\d+)\//);h&&(f=Number(h[1]))}typeof f>"u"&&(f=2048);var v=this.imageOptions.transform,A=function(I,S){return mapPanoResource(applyImageURLOptions(I,v,S))},m=__assign({key:"pano.".concat(c.panoId)},pick(this.imageOptions,["format","size","quality"])),y=c.images,p=(u=(s=c.images.tiles)===null||s===void 0?void 0:s.filter(function(I){return I.size>f}))!==null&&u!==void 0?u:null,g="pano:"+jsonHash([y,m,v]);if(this.pendingTextureTask){if(this.pendingTextureTask.hash===g)return;var b=this.pendingTextureTask.panoId;(l=this.panoMeshes[b])===null||l===void 0||l.setProgress(0),this.emit("pano.texture.abort",createEvent("pano.texture.abort",{error:null,progress:0,meta:null,pano:c.pano})),this.pendingTextureTask.onError(new Error("texture aborted"))}var T=this.models.getMaterial()||{},_=T.pano0,w=T.pano1,x;if((_==null?void 0:_.map.name)===g?x=_:(w==null?void 0:w.map.name)===g&&(x=w),x){var M={panoId:c.panoId,effect:(d=r.effect)!==null&&d!==void 0?d:"fade",leftPanoPicture:{map:x.map,luminanceMap:x.luminanceMap,matrix:new THREE__namespace.Matrix4().compose(c.position,c.quaternion,PANO_TEXTURE_SCALE)},position:c.position.clone()};this.doMoveToPano(c.pano,M,r);return}var R="move-to-pano-"+c.panoId;this.pending.add(R),this.pendingTextureTask={panoId:c.panoId,hash:g,onLoad:function(I){var S;if(o.pending.delete(R),o.destroyed)I.body.dispose();else{I.body.name=g;var B={panoId:c.panoId,effect:(S=r.effect)!==null&&S!==void 0?S:"fade",leftPanoPicture:{map:I.body,luminanceMap:null,matrix:new THREE__namespace.Matrix4().compose(c.position,c.quaternion,PANO_TEXTURE_SCALE)},position:c.position.clone()};o.doMoveToPano(c.pano,B,r)}},onError:function(I){o.pending.delete(R);var S=__assign(__assign(__assign({},c.pano),{mode:o.mode}),clonePose(o.camera.pose));o.emit("pano.error",createEvent("pano.error",{error:I,userAction:o.userAction,options:r,prevPano:o.currentPano,progress:0,state:S})),o.emit("pano.cancel",createEvent("pano.cancel",{error:null,userAction:o.userAction,options:r,prevPano:o.currentPano,progress:0,state:S})),r.moveCancelCallback&&r.moveCancelCallback()}},Promise.all([this.tileLevelForFov&&p&&p.length?this.textureLoader.loadTiledCubeTexture(y,p,{tileMaxLevel:this.TILED_CUBE_TEXTURE_LEVEL,imageURL:{transform:A,options:m},format:THREE__namespace.RGBAFormat,viaAjax:!0,fetcher:getFetcher(c.work)},void 0,void 0,function(I){var S,B;o.emit("pano.texture.progress",createEvent("pano.texture.progress",{error:null,progress:I,meta:null,pano:c.pano})),((S=o.pendingTextureTask)===null||S===void 0?void 0:S.hash)===g&&((B=o.panoMeshes[c.panoId])===null||B===void 0||B.setProgress(I))},this.renderer):this.textureLoader.loadCubeTexture(y,{imageURL:{transform:A,options:m},format:THREE__namespace.RGBAFormat,fetcher:getFetcher(c.work)},void 0,void 0,function(I){var S,B;((S=o.pendingTextureTask)===null||S===void 0?void 0:S.hash)===g&&((B=o.panoMeshes[c.panoId])===null||B===void 0||B.setProgress(I)),o.emit("pano.texture.progress",createEvent("pano.texture.progress",{error:null,progress:I,meta:null,pano:c.pano}))},this.renderer)]).then(function(I){var S,B,O=I[0];((S=o.pendingTextureTask)===null||S===void 0?void 0:S.hash)===g?(o.pendingTextureTask.onLoad(O),(B=o.panoMeshes[c.panoId])===null||B===void 0||B.setProgress(0),delete o.pendingTextureTask,o.emit("pano.texture.success",createEvent("pano.texture.success",{error:null,progress:1,meta:O.meta,pano:c.pano}))):O.body.dispose()}).catch(function(I){var S,B;((S=o.pendingTextureTask)===null||S===void 0?void 0:S.hash)===g&&(o.pendingTextureTask.onError(I),(B=o.panoMeshes[c.panoId])===null||B===void 0||B.setProgress(0),delete o.pendingTextureTask,o.emit("pano.texture.error",createEvent("pano.texture.error",{error:I,progress:0,meta:null,pano:c.pano})),o.emit("error",I))}),this.emit("pano.texture.load",createEvent("pano.texture.load",{error:null,progress:0,meta:null,pano:c.pano}))},t.prototype.doMoveToPano=function(e,r,i){var o=this,s,u,l;i===void 0&&(i={});var d=now(),c=createUuid();this.panoResources[c]=r;var f=1,h,v,A;if(this.locationMotion.ended){var m=this.locationMotion.getKeyFrameSegment(d);m[0];var y=m[1],p=this.locationMotion.value,g=this.panoResourceFromLocationMotionKeyframe(y).position,b=r.position;h=Math.max(g.distanceTo(b),f),v=[{key:y.key,progress:0,value:__assign(__assign({},p),{count:0})},{key:c,progress:1,value:{distance:0,count:1}}],A=0}else{var T=this.locationMotion.getKeyFrameSegment(d),_=T[0],y=T[1],p=this.locationMotion.value,w=this.panoResourceFromLocationMotionKeyframe(_).position,g=this.panoResourceFromLocationMotionKeyframe(y).position,b=r.position,x=y.value.count-p.count,M=Math.max(w.distanceTo(g),f)*x,R=Math.max(g.distanceTo(b),f);h=M+R,v=[{key:_.key,progress:0,value:__assign({},p)},{key:y.key,progress:M/h,value:y.value},{key:c,progress:1,value:{count:y.value.count+1,distance:0}}];var I=this.locationMotionKeyframesLength(this.locationMotion.keyframes),S=this.locationMotionKeyframesLength(v);A=this.locationMotion.getProgressVelocity(d)*I/S}var B=this.calculateMovingDuration(i.duration,h),O={longitude:i.longitude,latitude:i.latitude,fov:i.fov},F=__assign(__assign({},e),{mode:this.mode,longitude:(s=O.longitude)!==null&&s!==void 0?s:this.camera.pose.longitude,latitude:(u=O.latitude)!==null&&u!==void 0?u:this.camera.pose.latitude,fov:(l=O.fov)!==null&&l!==void 0?l:this.camera.pose.fov,offset:r.position.clone(),distance:0}),H=this.currentPano;this.emit("pano.moveTo",createEvent("pano.moveTo",{options:i,prevPano:H,progress:0,state:F,userAction:this.userAction,error:null})),i.moveStartCallback&&i.moveStartCallback(F),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=noop$1,this.videoTexture.needsUpdate=!0),this.panoVideo.setMaterial(null),this.cameraMotion.set(O,B).catch(noop$1);var k=this.locationMotion.setKeyframes(v,B,A);k.then(function(){var N,q,V,D=__assign(__assign({},e),{mode:o.mode,longitude:o.camera.pose.longitude,latitude:o.camera.pose.latitude,fov:o.camera.pose.fov,offset:o.camera.pose.offset.clone(),distance:0});o.emit("pano.arrived",createEvent("pano.arrived",{options:i,prevPano:H,progress:1,state:D,userAction:o.userAction,error:null})),i.moveEndCallback&&i.moveEndCallback(D);var K=o.works.getResolvedObserver(o.currentPano);if(K&&K.video&&o.videoTexture&&o.videoTexture.image instanceof HTMLVideoElement){var z=ROTATE_Y_PI_MATRIX.clone().multiply((V=(q=(N=o.models.getMaterial())===null||N===void 0?void 0:N.pano1)===null||q===void 0?void 0:q.matrix)!==null&&V!==void 0?V:new THREE__namespace.Matrix4).multiply(K.video.matrix),G={map:o.videoTexture,size:K.video.size,matrix:z,alpha:1},W=createUuid(),Q=o.videoTexture.image;Q.setAttribute("uuid",W),canplayVideo().then(function(X){X&&K.video&&Q.getAttribute("uuid")===W&&(Q.oncanplay=function(){Q.oncanplay=noop$1,Q.play()},Q.ontimeupdate=function(){Q.currentTime>.5&&(Q.ontimeupdate=noop$1,o.panoVideo.setMaterial(G))},Q.src=K.video.source)}).catch(function(){Q.removeAttribute("uuid")})}},function(){o.emit("pano.cancel",createEvent("pano.cancel",{options:i,prevPano:H,progress:0,state:F,userAction:o.userAction,error:null})),i.moveCancelCallback&&i.moveCancelCallback()})},t.prototype.checkSelectedPano=function(e){var r=this,i,o,s,u;this.stopMomentumMovement();var l=this.camera.getDirection(new THREE__namespace.Vector3).setY(0),d=null,c=this.works.getResolvedObserver(this.currentPano);if(!c)return null;var f=c.accessibleIds.filter(function(W){var Q=panoParse(W);if(panoEqual(Q,r.currentPano))return!1;var X=r.works.getResolvedObserver(Q);return!X||X.position.distanceTo(r.camera.position)>r.maxAccessibleDistance?!1:X.loadable||X.active}),h=this.models.intersectRaycaster(e)[0];if(h){var v=arrayMin(f,function(W){var Q=r.works.getResolvedObserver(W);if(!Q)return 1/0;var X=Q.standingPosition.clone();return X.distanceTo(h.point)},!0),A=v[0],m=v[1];A&&m<this.panoTapTriggerRadius&&(d=(i=this.works.getResolvedObserver(A))!==null&&i!==void 0?i:null)}if(isNil(d)){var y=this.getForwardObserverOrNot(e);y&&(d=y)}for(var p=0,g=this.locationMotion.keyframes;p<g.length;p++){var b=g[p],T=this.panoResourceFromLocationMotionKeyframe(b);if(!(b.progress<this.locationMotion.progress)&&d&&T.panoId===d.panoId){d=null;break}}if(isNil(d))return this.locationMotion.ended===!0&&this.cameraBounce(),null;if(d&&!d.active){var _=d.panoId;this.panoMeshes[_]&&(this.panoMeshes[_].setDisabled(!1),this.panoMeshes[_].setLoading(!0))}var w={};if(d){w.effect="fade";for(var x=Math.PI/6,M=Math.PI/12,R=new THREE__namespace.Vector3(0,1,0),I=d.position.clone().setY(0).sub(c.position.clone().setY(0)).normalize(),S=I.clone().applyAxisAngle(R,x),B=I.clone().applyAxisAngle(R,-x),O=[],F=[],H=[],k=0,N=d.accessibleIds;k<N.length;k++){var A=N[k],q=panoParse(A);if(!(panoEqual(q,this.currentPano)||panoEqual(q,d.pano))){var V=this.works.getResolvedObserver(A);if(V){var D=V.position.clone().sub(d.position).setY(0);I.angleTo(D)<x?H.push(D):S.angleTo(D)<x?O.push(D):B.angleTo(D)<x&&F.push(D)}}}var K=H.length>0?H:__spreadArray(__spreadArray([],O,!0),F,!0),z=K.slice().sort(function(W,Q){return W.angleTo(I)-Q.angleTo(I)})[0];z&&z.angleTo(l)>M&&(w.longitude=Math.atan2(-z.x,-z.z))}this.cameraMotion.value.latitude<-Math.PI/4&&(w.latitude=clamp(0,this.minLatitude,this.maxLatitude)),this.cameraMotion.value.fov<60&&(w.fov=this.defaultFov);var G={workCode:d.pano.workCode,panoIndex:d.pano.panoIndex,mode:this.mode,longitude:(o=w.longitude)!==null&&o!==void 0?o:this.camera.pose.longitude,latitude:(s=w.latitude)!==null&&s!==void 0?s:this.camera.pose.latitude,fov:(u=w.fov)!==null&&u!==void 0?u:this.camera.pose.fov,distance:0,offset:d?d.position.clone():new THREE__namespace.Vector3};return this.emit("pano.select",createEvent("pano.select",{prevPano:this.currentPano,state:G,userAction:!0,options:w,progress:0,error:null})),d&&d.active?(this.emit("pano.request",createEvent("pano.request",{userAction:!0,prevPano:this.currentPano,progress:0,state:G,options:w,error:null})),d.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,o,s,u,l,d,c,f,h,v=[],A=2;A<arguments.length;A++)v[A-2]=arguments[A];this.userAction=!0;var m={},y={},p=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),y.longitude=this.cameraMotion.value.longitude,y.latitude=this.cameraMotion.value.latitude,y.fov=this.cameraMotion.value.fov),this.modelAlphaMotion.ended===!1&&(this.modelAlphaMotion.update(e),m.modelAlpha=this.modelAlphaMotion.value.modelAlpha),this.perspToOrthoMotion.ended===!1&&(this.perspToOrthoMotion.update(e),this.camera.perspToOrtho.setScalar(clamp(this.perspToOrthoMotion.value.perspToOrtho,0,1))),this.locationMotion.ended===!1){this.locationMotion.update(e);var T=this.locationMotion.getKeyFrameSegment(e),_=T[0],w=T[1],x=this.panoResourceFromLocationMotionKeyframe(_),M=this.panoResourceFromLocationMotionKeyframe(w),R=new THREE__namespace.Vector3().copy(x.position),I=new THREE__namespace.Vector3().copy(M.position),S=this.locationMotion.value.count-w.value.count+1;m.progress=S,M.leftPanoPicture&&(S<1?x.leftPanoPicture&&(m.pano0=x.leftPanoPicture):m.pano0=M.leftPanoPicture,m.pano1=M.leftPanoPicture),b=m.useBlackTransition=M.effect==="instant"||M.effect==="montage",(M.effect==="fade"||M.effect==="montage")&&(m.pano0&&x.leftPanoPicture&&(m.pano0={map:m.pano0.map,luminanceMap:m.pano0.luminanceMap,matrix:x.leftPanoPicture.matrix.clone().setPosition(M.position)}),R.copy(I)),y.distance=this.locationMotion.value.distance,y.offset=new THREE__namespace.Vector3(R.x+(I.x-R.x)*S,R.y+(I.y-R.y)*S,R.z+(I.z-R.z)*S);for(var B=[],O=[],F=0,H=this.locationMotion.keyframes;F<H.length;F++){var k=H[F],N=k.key,q=k.progress;N!==void 0&&(B.push(N),q>=this.locationMotion.progress&&O.push(N))}for(var V=0,D=Object.keys(this.panoResources);V<D.length;V++){var K=D[V];if(!(O.indexOf(K)>=0)){var z=this.panoResources[K];if(z.leftPanoPicture){var G=z.leftPanoPicture.map;if(G){if(G===((o=m.pano0)===null||o===void 0?void 0:o.map)||G===((s=m.pano1)===null||s===void 0?void 0:s.map))continue;G instanceof TileCubeTextureTarget&&G.cubeRenderTarget&&this.colorCubeRenderTargetPool.push(G.cubeRenderTarget),G.dispose(),z.leftPanoPicture=null}}B.indexOf(K)>=0||delete this.panoResources[K]}}this.currentPano=panoParse(M.panoId),this.emit("pano.moving",createEvent("pano.moving",{userAction:this.userAction,prevPano:panoParse(p.panoId),state:__assign(__assign(__assign(__assign({},panoParse(g.panoId)),{mode:this.mode}),clonePose(this.camera.pose)),y),options:{},progress:this.locationMotion.progress,error:null}))}isEmptyObject(m)===!1&&(!((u=m.pano0)===null||u===void 0)&&u.map&&m.pano0.map instanceof TileCubeTextureTarget&&!m.pano0.map.cubeRenderTarget&&(m.pano0.map.cubeRenderTarget=this.colorCubeRenderTargetPool.pop()),!((l=m.pano1)===null||l===void 0)&&l.map&&m.pano1.map instanceof TileCubeTextureTarget&&!m.pano1.map.cubeRenderTarget&&(m.pano1.map.cubeRenderTarget=this.colorCubeRenderTargetPool.pop()),this.models.setMaterial(m)),isEmptyObject(y)===!1&&this.setCamera(y);var W=this.works.getResolvedObserver(this.currentPano),Q=v[1];if(!Q){console.error("xrFrame丢失,请重试");return}if(!this.xrManager.session){console.error("session丢失,请重试");return}var X=this.xrManager.referenceSpace;if(X){var ee=this.xrManager.cameraVR,J=this.xrManager.cameraL,Z=this.xrManager.cameraR,te=[J,Z],ae=Q.getViewerPose(X),re=new THREE__namespace.Vector3(0,0,0);if(ae){var ie;ie=this.xrManager.session.renderState.baseLayer;var de=ae.views;if(!ie){console.error("no layer found");return}this.renderer.setFramebuffer(ie.framebuffer);var se=!1;de.length!==ee.cameras.length&&(ee.cameras.length=0,se=!0),this.parallaxCameraMatrixs=[];var pe=new THREE__namespace.Vector3,$=new THREE__namespace.Vector3;new THREE__namespace.Matrix4().fromArray(de[0].transform.matrix).decompose(pe,new THREE__namespace.Quaternion,new THREE__namespace.Vector3),new THREE__namespace.Matrix4().fromArray(de[1].transform.matrix).decompose($,new THREE__namespace.Quaternion,new THREE__namespace.Vector3),$.clone().sub(pe).normalize();var oe=new THREE__namespace.Vector3,j=new THREE__namespace.Quaternion,ve=new THREE__namespace.Vector3;this.camera.matrix.decompose(oe,j,ve);for(var me=0;me<de.length;me++){var Me=de[me],Re=ie.getViewport(Me),ge=te[me];ge.matrix.fromArray(Me.transform.matrix);var we=new THREE__namespace.Vector3,Ae=new THREE__namespace.Quaternion,le=new THREE__namespace.Vector3;ge.matrix.decompose(we,Ae,le),re.copy(oe),ge.position.copy(oe),ge.quaternion.copy(Ae),ge.scale.copy(le),ge.updateMatrix(),ge.projectionMatrix.fromArray(Me.projectionMatrix),ge.viewport.set(Re.x,Re.y,Re.width,Re.height),se===!0&&ee.cameras.push(ge)}ae.views[0].transform.position,ae.views[1].transform.position;for(var ue=this.xrManager.session.inputSources,me=0;me<this.xrManager.controllers.length;me++){var Fe=this.xrManager.controllers[me],fe=ue[me];if(fe){Fe.update(fe,Q,X);var Se=this.xrManager.getController(me),ye=new THREE__namespace.Vector3(0,1.2,0),ke=Se.position.clone().add(re).sub(ye);fe.handedness==="left"?this.xrControllerRay.left.set(ke,new THREE__namespace.Vector3(0,0,-1).applyEuler(Se.rotation)):fe.handedness==="right"&&this.xrControllerRay.right.set(ke,new THREE__namespace.Vector3(0,0,-1).applyEuler(Se.rotation)),this.controllerWrappers[me].position.copy(new THREE__namespace.Vector3(0,0,0).add(re).sub(ye));var _e=this.models.intersectRaycaster(this.xrControllerRay.right);if(_e.length===0&&(_e=this.xrControllerRay.right.intersectObject(this.boundingMesh,!0).map(function(Le){var Ue;return __assign({floor:(Ue=W==null?void 0:W.floorIndex)!==null&&Ue!==void 0?Ue:0},Le)})),_e.length>=1&&_e[0].face)if(fe.handedness==="right"){var We=this.xrControllerRay.right.intersectObject(this.xrCustomObjectsScene,!0),Xe=_e[0].face.normal,Ee=Xe.clone().multiplyScalar(.05),Pe=_e[0].point.clone().add(Ee);this.intersectMesh.position.copy(Pe);var Je=Pe.clone().add(Ee);if(this.intersectMesh.lookAt(Je),Math.abs(Xe.y)>.99){var be=this.camera.position.clone().sub(Pe);this.intersectMesh.rotation.z=-Math.atan2(be.z,be.x)}this.intersectMesh.visible=!0,this.needsRender=!0,We.length>0?(this.pointerLines.right.setPoints(ke,We[0].point),this.pointerLines.right.points.visible=!0,this.intersectMesh.visible=!1):(this.pointerLines.right.points.visible=!1,this.pointerLines.right.setPoints(ke,_e[0].point));var Oe=_e[0],De=createEvent("intersect.update",{raycaster:(d=this.xrControllerRay.right)!==null&&d!==void 0?d:null,intersection:Oe??null,object:this.intersectMesh});if(this.emit("intersect.update",De),De.defaultPrevented){this.hideIntersectMesh();return}}else this.pointerLines.left.setPoints(ke,_e[0].point)}}if(this.camera.pose.distance>.1||b){if(W)for(var qe=0,Ze=Object.keys(this.panoMeshes);qe<Ze.length;qe++){var Ne=Ze[qe],he=this.panoMeshes[Ne];he.setOpacity(0),he.setCurrent(!1),he.updateTime&&he.updateTime(e,r)}}else if(W){var st=arrayMin(W.visibleIds,function(Be){var Le=i.works.getResolvedObserver(Be);return Le?W.standingPosition.distanceTo(Le.standingPosition):1/0},!0),ze=st[1];ze=clamp(ze,2.5,1/0);for(var tt=W.visibleIds.concat(panoStringify(this.currentPano)),Ge=this.getForwardObserverOrNot(),mt=this.camera.getDirection(new THREE__namespace.Vector3),lt=0,ct=Object.keys(this.panoMeshes);lt<ct.length;lt++){var Ne=ct[lt],he=this.panoMeshes[Ne],rt=this.works.getResolvedObserver(Ne);if(tt.indexOf(Ne)===-1)he.setCurrent(!1),he.setOpacity(0);else if(!rt)he.setCurrent(!1),he.setOpacity(0);else if(!rt.loadable&&!rt.active)he.setCurrent(!1),he.setOpacity(0);else{var nt=he.position.clone().setY(this.camera.position.y).distanceTo(this.camera.position);he.setCurrent(!he.loading&&he.progress===0&&Ge!==null&&Ge.panoId===Ne),he.setOpacity(nt<.01?0:clamp(ze/nt*1.2,.65,.98));var Ie=this.camera.position.clone().setY(he.position.y),xe=new THREE__namespace.Vector3().copy(he.position).sub(Ie).normalize();if(Ne===panoStringify(this.currentPano)){var je=clamp((.5-Ie.distanceTo(he.position))/.5,0,1);xe.multiplyScalar(1-je).add(mt.clone().multiplyScalar(je))}xe.length()>0&&he.quaternion.setFromEuler(new THREE__namespace.Euler(0,Math.atan2(xe.x,xe.z),0))}he.updateTime&&he.updateTime(e,r)}}var at=function(){if(i.tileLevelForFov===!1)return 0;var Be=new THREE__namespace.Vector2(4e3,4e3),Le=g.panoId,Ue=i.works.getResolvedObserver(Le),Ve=i.imageOptions.size;if(typeof Ve>"u"&&Ue){var Et=Ue.images.up.match(/\/cube_(\d+)\//);Et&&(Ve=Number(Et[1]))}typeof Ve>"u"&&(Ve=2048);var ft=0;Ve>=1024&&(ft=1),Ve>=2048&&(ft=2),Ve>=4096&&(ft=3),Ve>=8192&&(ft=4);var ht=i.tileLevelForFov(J.fov,Be);return ht>ft?ht:0}(),At=function(){var Be=new THREE__namespace.PerspectiveCamera;Be.applyMatrix4(ee.matrix),Be.position.set(0,0,0);var Le=i.works.getResolvedObserver(g.panoId),Ue=Le??W;Ue&&Be.quaternion.premultiply(Ue.quaternion.clone().inverse()),Be.updateProjectionMatrix(),Be.updateMatrixWorld(!0);var Ve=new THREE__namespace.Frustum().setFromProjectionMatrix(new THREE__namespace.Matrix4().multiplyMatrices(Be.projectionMatrix,Be.matrixWorldInverse));return Ve}();g.panoId===panoStringify(this.currentPano)&&((c=g.leftPanoPicture)===null||c===void 0?void 0:c.map)instanceof TileCubeTextureTarget&&(g.leftPanoPicture.map.update(At,at),g.leftPanoPicture.map.needsRender===!0&&(this.needsRender=!0));{var yt=this.tiling.object.visible;if(at>this.TILED_CUBE_TEXTURE_LEVEL&&this.initAnimationed){var dt=g.panoId,He=this.works.getResolvedObserver(dt);He?isSimilarVector3(this.camera.position,He.position)&&this.locationMotion.ended?(this.tiling.object.visible=!0,this.tiling.panoId!==dt&&this.tiling.cleanup(),this.tiling.panoId=dt,this.tiling.setResource((h=(f=He.images)===null||f===void 0?void 0:f.tiles)!==null&&h!==void 0?h:[],this.enableIOSEDR&&He.images.luminance?He.images.luminance:null),this.tiling.setFetcher(getFetcher(He.work)),this.tiling.setRotation(He.quaternion),this.tiling.setPosition(He.position),this.tiling.update(At,at,e)):this.tiling.object.visible=!1:this.tiling.object.visible=!1}else this.tiling.object.visible=!1;yt!==this.tiling.object.visible&&(this.tiling.object.needsRender=!0)}this.panoVideo.object.position.copy(this.camera.position),this.panoVideo.updateTime(e),!(!ue||ue.length<1)&&this.updateControllerHelper(ue,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 o=this.xrControllerRay.left,s=this.xrControllerRay.right;if(!(!e||e.length===0)){for(var u={buttons:{X:!1,Y:!1,LeftTrigger:!1,LeftPinch:!1,A:!1,B:!1,RightTrigger:!1,RightPinch:!1}},l=0;l<e.length;l++){var d=e[l].handedness,c=e[l].gamepad;switch(d){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&&(this.emitEvent(c==null?void 0:c.buttons[4].pressed,"X",r),this.emitEvent(c.buttons[5].pressed,"Y",r),this.emitEvent(c==null?void 0:c.buttons[0].pressed,"LeftTrigger",r),this.emitEvent(c==null?void 0:c.buttons[1].pressed,"LeftPinch",r));var f={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};u.buttons.X=c.buttons&&c.buttons[4]?c.buttons[4].pressed:!1,u.buttons.Y=c.buttons&&c.buttons[5]?c==null?void 0:c.buttons[5].pressed:!1,u.buttons.LeftTrigger=c.buttons&&c.buttons[0]?c==null?void 0:c.buttons[0].pressed:!1,u.buttons.LeftPinch=c.buttons&&c.buttons[1]?c==null?void 0:c.buttons[1].pressed:!1,u.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&&(this.emitEvent(c==null?void 0:c.buttons[4].pressed,"A",r),this.emitEvent(c.buttons[5].pressed,"B",r),this.emitEvent(c==null?void 0:c.buttons[0].pressed,"RightTrigger",r),this.emitEvent(c==null?void 0:c.buttons[1].pressed,"RightPinch",r));var h={raycaster:s,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};u.right=h,u.buttons.A=c.buttons&&c.buttons[4]?c==null?void 0:c.buttons[4].pressed:!1,u.buttons.B=c.buttons&&c.buttons[5]?c==null?void 0:c.buttons[5].pressed:!1,u.buttons.RightTrigger=c.buttons&&c.buttons[0]?c==null?void 0:c.buttons[0].pressed:!1,u.buttons.RightPinch=c.buttons&&c.buttons[1]?c==null?void 0:c.buttons[1].pressed:!1;break}}this.emit("xr.controller.update",createEvent("xr.controller.update",u))}},t.prototype.emitEvent=function(e,r,i){var o=this.xrControllerRay.left,s=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",createEvent("xr.gesture.buttonDown",{session:this.xrManager.session,machineType:this.xrManager.machineType,buttons:r,isFinal:!1,isFirst:!0,controllers:{raycaster:{leftRay:o,rightRay:s}}}));else{var u=i-this.xrControllerState[r].touchStartTime;u>CONTROLLER_EVNET_DELTA_TIME&&this.emit("xr.gesture.press",createEvent("xr.gesture.tap",{session:this.xrManager.session,machineType:this.xrManager.machineType,buttons:r,isFinal:!0,isFirst:!0,controllers:{raycaster:{leftRay:o,rightRay:s}}}))}else if(this.xrControllerState[r].touchStart===!0){this.emit("xr.gesture.buttonUp",createEvent("xr.gesture.buttonUp",{session:this.xrManager.session,machineType:this.xrManager.machineType,buttons:r,isFinal:!0,isFirst:!1,controllers:{raycaster:{leftRay:o,rightRay:s}}}));var u=i-this.xrControllerState[r].touchStartTime;if(u<=CONTROLLER_EVNET_DELTA_TIME){var l=this.emit("xr.gesture.tap",createEvent("xr.gesture.tap",{session:this.xrManager.session,machineType:this.xrManager.machineType,buttons:r,isFinal:!0,isFirst:!1,controllers:{raycaster:{leftRay:o,rightRay:s}}}));l||r==="RightTrigger"&&this.checkSelectedPano(this.xrControllerRay.right)}this.xrControllerState[r].touchStart=!1,this.xrControllerState[r].touchStartTime=0}},t}(PanoramaController),Controllers={Floorplan:FloorplanController,Topview:TopviewController,Panorama:PanoramaController,VRPanorama:VRPanoramaController,Model:ModelController,DepthPanorama:DepthPanoramaController,Mapview:MapviewController,XRPanorama:XRPanoramaController},PROXY_CONTROLLER_EVENT_NAMES=["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 initLegacyEvent(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=coordinatesToVector(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 generateDefaultVideoElement(){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}function initLights(n){{var t=new THREE__namespace.DirectionalLight(16777215,.5);t.position.copy(new THREE__namespace.Vector3(1,1,1)),n.add(t)}{var t=new THREE__namespace.DirectionalLight(16777215,.3);n.add(t)}{var t=new THREE__namespace.AmbientLight(16777215,.3);n.add(t)}}function parseKeyValue(n){for(var t,e,r={},i=n.split(/(\;|\,)/),o=0,s=i;o<s.length;o++){var u=s[o],l=u.split("="),d=(t=l[0])===null||t===void 0?void 0:t.trim(),c=(e=l[1])===null||e===void 0?void 0:e.trim();d&&c&&(r[d]=c)}return r}function getViewportScale(){for(var n,t=document.getElementsByTagName("meta"),e=0;e<t.length;e++){var r=t[e];if(r.getAttribute("name")==="viewport"){var i=parseKeyValue((n=r.getAttribute("content"))!==null&&n!==void 0?n:""),o=Number(i["initial-scale"]);if(!isNaN(o))return o}}return 1}const textureURL="data:image/png;base64,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";var imageSize=[351,63],imageOffset=[20,20],vertices=new Float32Array([-.5,-.5,0,.5,-.5,0,-.5,.5,0,.5,.5,0]),uvs=new Float32Array([0,0,1,0,0,1,1,1]),index=new Uint8Array([0,1,2,1,3,2]),geometry=new THREE__namespace.BufferGeometry;geometry.setAttribute("position",new THREE__namespace.BufferAttribute(vertices,3)),geometry.setAttribute("uv",new THREE__namespace.BufferAttribute(uvs,2)),geometry.setIndex(new THREE__namespace.BufferAttribute(index,1));var material=new THREE__namespace.MeshBasicMaterial({transparent:!0,depthTest:!1,depthWrite:!1,stencilWrite:!1,fog:!1}),mesh=new THREE__namespace.Mesh(geometry,material);mesh.matrixAutoUpdate=!1;var scene=new THREE__namespace.Scene;scene.add(mesh),scene.matrixAutoUpdate=!1;var camera=new THREE__namespace.OrthographicCamera(-.5,.5,.5,-.5,.1,1);camera.position.set(0,0,.5),camera.lookAt(0,0,0),camera.updateMatrixWorld(!0),camera.matrixAutoUpdate=!1;var prevViewport=new THREE__namespace.Vector4,prevScissor=new THREE__namespace.Vector4;function renderPoweredByRealsee(n){if(material.map){var r=n.getViewport(prevViewport),i=n.getScissor(prevScissor),o=n.getScissorTest(),s=n.autoClear,u=i.x+imageOffset[0]/3,l=i.y+imageOffset[1]/3,d=imageSize[0]/3,c=imageSize[1]/3;n.setViewport(u,l,d,c),n.setScissor(u,l,d,c),n.setScissorTest(!0),n.autoClear=!1,n.render(scene,camera),n.setViewport(r),n.setScissor(i),n.setScissorTest(o),n.autoClear=s}else{var t=new THREE__namespace.Texture,e=new Image;e.onload=function(){t.image=e,t.wrapS=THREE__namespace.ClampToEdgeWrapping,t.wrapT=THREE__namespace.ClampToEdgeWrapping,t.minFilter=THREE__namespace.LinearFilter,t.needsUpdate=!0,t.generateMipmaps=!1,material.needsUpdate=!0,e.onload=noop$1},e.src=textureURL,material.map=t}}var DEFAULT_MODE_CHANGE_DURATION=800,DEFAULT_REQUEST_PROXY=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/")},BUILTIN_COORDINATESSYSTEMTRANSFORMERS=[{name:"Z",transformToUpAxisZ:function(){return new THREE__namespace.Matrix4}},{name:"Y",transformToUpAxisZ:function(){return new THREE__namespace.Matrix4().makeRotationAxis(new THREE__namespace.Vector3(1,0,0),+Math.PI/2)}},{name:"-Y",transformToUpAxisZ:function(){return new THREE__namespace.Matrix4().makeRotationAxis(new THREE__namespace.Vector3(1,0,0),-Math.PI/2)}},{name:"WGS84",transformToEarthCentered:function(){return new THREE__namespace.Matrix4}},{name:"GCJ02",transformToEarthCentered:function(){return new THREE__namespace.Matrix4}},{name:"BD09",transformToEarthCentered:function(){return new THREE__namespace.Matrix4}}],sharedVector2=new THREE__namespace.Vector2,sharedFrustum=new THREE__namespace.Frustum,sharedProjScreenMatrix=new THREE__namespace.Matrix4,clockForMixer=new WeakMap,worksMap=new WeakMap,emptyWorks=createWorks([]),Five=function(n){__extends(t,n);function t(e){e===void 0&&(e={});var r,i,o,s,u,l,d,c,f,h,v=n.call(this)||this;v.ident=createUuid(),__FIVE_DEBUG__.instances[v.ident]=v,v.renderSwitch01=0,v.currentMode="Panorama",v.pano={workCode:"",panoIndex:0},v.needsRender=!1,v.onlyRenderIfNeeds=(r=e.onlyRenderIfNeeds)!==null&&r!==void 0?r:!0,v.imageOptions=__assign({},(i=e.imageOptions)!==null&&i!==void 0?i:{}),v.textureOptions=__assign({},(o=e.textureOptions)!==null&&o!==void 0?o:{}),v.poweredByRealsee=(s=e.poweredByRealsee)!==null&&s!==void 0?s:!0,v.extraElements=[],v.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),DepthPanorama:Object.assign({},e.depthPanorama),VRPanorama:Object.assign({},e.vrPanorama),XRPanorama:Object.assign({},e.xrPanorama)},v.coordinatesSystemTransformers=__spreadArray([],(u=e.coordinatesSystemTransformers)!==null&&u!==void 0?u:[],!0);for(var A=function(B){var O=m.coordinatesSystemTransformers.find(function(F){return F.name===B.name});O||m.coordinatesSystemTransformers.push(__assign({},B))},m=this,y=0,p=BUILTIN_COORDINATESSYSTEMTRANSFORMERS;y<p.length;y++){var g=p[y];A(g)}if(v.fps={testCount:0,testTime:now()},v.info=null,v.modeChangeDuration=(l=e.modeChangeDuration)!==null&&l!==void 0?l:DEFAULT_MODE_CHANGE_DURATION,v.enableWheel=(d=e.enableWheel)!==null&&d!==void 0?d:!0,typeof window<"u")if(e.renderer)e.renderer instanceof InternalWebGLRenderer&&v.throwError(new Error("cannot render a internal renderer")),v.renderer=e.renderer;else try{v.renderer=new InternalWebGLRenderer({preserveDrawingBuffer:e.preserveDrawingBuffer,backgroundColor:e.backgroundColor,backgroundAlpha:e.backgroundAlpha,antialias:e.antialias,webgl2:e==null?void 0:e.webgl2});var b=getViewportScale();v.renderer.setPixelRatio(b===1?window.devicePixelRatio:1),v.renderer.setSize(512,512)}catch(B){B instanceof Error&&v.throwError(B)}v.getPixelsRenderTarget=new THREE__namespace.WebGLRenderTarget(1,1,{encoding:(f=(c=v.renderer)===null||c===void 0?void 0:c.outputEncoding)!==null&&f!==void 0?f:THREE__namespace.sRGBEncoding}),v.scissor=Object.assign({left:0,bottom:0,width:1,height:1},e.scissor),v.camera=new Camera(90),v.scene=new Scene,v.xrCustomObjectsScene=new THREE__namespace.Scene,v.scene.add(v.xrCustomObjectsScene),v.scene.matrixAutoUpdate=!1,v.lastLoadWorkTask=Promise.resolve(),v.requestProxy=(h=e.requestProxy)!==null&&h!==void 0?h:DEFAULT_REQUEST_PROXY,v.networkSubscribe=new NetworkSubscribe,v.networkSubscribe.on("network",function(B,O,F,H){var k;v.emit("network.resource",createEvent("network.resource",{source:B,requestType:O,requestState:F,detail:H})),(k=v.analysis)===null||k===void 0||k.network(v.works,B,O,F,H)}),v.boundingMesh=generateBoundingMesh(new THREE__namespace.Box3(new THREE__namespace.Vector3(-.5,-.5,-.5),new THREE__namespace.Vector3(.5,.5,.5))),v.boundingMesh.name="bounding",v.scene.add(v.boundingMesh),v.models=createModels(),v.models.push(new Model),v.lastModels=createModels(),v.readyCallbacks=[],v.syncingState=!1,v.modelGroup=new THREE__namespace.Group,v.modelGroup.visible=!1,v.modelGroup.name="model",v.modelGroup.matrixAutoUpdate=!1,v.modelGroup.renderOrder=-4,v.scene.add(v.modelGroup),v.helperGroup=new THREE__namespace.Group,v.helperGroup.name="helper",v.helperGroup.matrixAutoUpdate=!1,v.scene.add(v.helperGroup),v.videoTexture=new THREE__namespace.VideoTexture(e.videoInstance||generateDefaultVideoElement()),initLights(v.scene),v.copyEffect=new Effect(v.renderer,v.scene,v.camera,v.models),v.state={mode:v.currentMode,workCode:v.pano.workCode,panoIndex:v.pano.panoIndex,longitude:v.camera.pose.longitude,latitude:v.camera.pose.latitude,fov:v.camera.pose.fov,offset:v.camera.pose.offset.clone(),distance:v.camera.pose.distance},v.stateSynced=!1,v._enableIOSEDR=!1,v.destroyed=!1,v.paused=!0,typeof window<"u"&&(e.play!==!1&&v.play(),v.stopAnimationLoop=AnimationFrameLoop.shared.add(function(B,O){for(var F=[],H=2;H<arguments.length;H++)F[H-2]=arguments[H];v.updateTime.apply(v,__spreadArray([B,O],F,!1))},!1,0,10));var T=function(){typeof document<"u"&&document.fullscreenElement===null&&v.currentMode==="VRPanorama"&&v.controller.emit("vr.requestExit",createEvent("vr.requestExit",{}))};if(typeof document<"u"&&document.addEventListener("fullscreenchange",T,!1),v.removeEventListeners=function(){typeof document<"u"&&document.removeEventListener("fullscreenchange",T,!1)},v.plugins={},e.plugins&&e.plugins.length)for(var _=0,w=e.plugins;_<w.length;_++){var x=w[_];if(typeof x=="function")x(v);else if(Array.isArray(x)){var M=x[0],R=x[1],I=x[2];if(typeof M=="function"){var S=M(v,I);typeof R=="string"&&(v.plugins[R]?v.throwError(new Error("plugin name ".concat(R," is exists."))):v.plugins[R]=S)}}}return v.gpuPickingRenderTarget=new THREE__namespace.WebGLRenderTarget(1,1),v.meshReplaceMaterialMap=new Map,v.meshOriginMaterialMap=new Map,initLegacyEvent(v),v}return Object.defineProperty(t,"version",{get:function(){return"6.0.0-alpha.65"},enumerable:!1,configurable:!0}),Object.defineProperty(t,"dracoPath",{get:function(){return draco.decoderPath},set:function(e){draco.setDecoderPath(e)},enumerable:!1,configurable:!0}),Object.defineProperty(t,"ktx2Path",{get:function(){return ktx2.transcoderPath},set:function(e){ktx2.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,o,s){var u=this;if(o===void 0&&(o=1),s===void 0&&(s=new THREE__namespace.Vector3(0,0,0)),!this.renderer)throw new Error("renderer is not initialized.");this.models.setMaterial({constantColor:s}),this.scene.traverse(function(f){if(!(!(f instanceof THREE__namespace.Mesh)||f instanceof PBMMesh)){var h=Object.keys(i).filter(function(A){return A===f.uuid})[0];if(h)if(u.meshOriginMaterialMap.set(h,f.material),u.meshReplaceMaterialMap.get(h))f.material=u.meshReplaceMaterialMap.get(h);else{var v=new THREE__namespace.ShaderMaterial({uniforms:{color:{value:i[h]}},vertexShader:`
2038
+ `},LineMaterial=function(n){__extends(t,n);function t(e){var r=n.call(this,{uniforms:THREE__namespace.UniformsUtils.clone(lineShader.uniforms),vertexShader:lineShader.vertexShader,fragmentShader:lineShader.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}(THREE__namespace.ShaderMaterial);Object.assign(LineMaterial.prototype,{isLineMaterial:!0});var LineSegments2=function(n){__extends(t,n);function t(e,r){var i=n.call(this)||this;return i.type="LineSegments2",i.geometry=e!==void 0?e:new LineSegmentsGeometry,i.material=r!==void 0?r:new LineMaterial({color:Math.random()*16777215}),i}return t.prototype.computeLineDistances=function(){for(var e=this.geometry,r=e.attributes.instanceStart,i=e.attributes.instanceEnd,o=new Float32Array(2*r.count),s=new THREE__namespace.Vector3,u=new THREE__namespace.Vector3,l=0,d=0,c=r.count;l<c;l++,d+=2)s.fromBufferAttribute(r,l),u.fromBufferAttribute(i,l),o[d]=d===0?0:o[d-1],o[d+1]=o[d]+s.distanceTo(u);var f=new THREE__namespace.InstancedInterleavedBuffer(o,2,1);return e.setAttribute("instanceDistanceStart",new THREE__namespace.InterleavedBufferAttribute(f,1,0)),e.setAttribute("instanceDistanceEnd",new THREE__namespace.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,o=e.camera,s=o.projectionMatrix,u=this.geometry,l=this.material,d=l.resolution,c=l.linewidth,f=u.attributes.instanceStart,h=u.attributes.instanceEnd,v=new THREE__namespace.Vector4,A=new THREE__namespace.Vector4,m=new THREE__namespace.Vector4,y=new THREE__namespace.Vector3,p=new THREE__namespace.Matrix4,g=new THREE__namespace.Line3,b=new THREE__namespace.Vector3;i.at(1,m),m.w=1,m.applyMatrix4(o.matrixWorldInverse),m.applyMatrix4(s),m.multiplyScalar(1/m.w),m.x*=d.x/2,m.y*=d.y/2,m.z=0,y.copy(m);var T=this.matrixWorld;p.multiplyMatrices(o.matrixWorldInverse,T);for(var _=0,w=f.count;_<w;_++){v.fromBufferAttribute(f,_),A.fromBufferAttribute(h,_),v.w=1,A.w=1,v.applyMatrix4(p),A.applyMatrix4(p),v.applyMatrix4(s),A.applyMatrix4(s),v.multiplyScalar(1/v.w),A.multiplyScalar(1/A.w);var x=v.z<-1&&A.z<-1,M=v.z>1&&A.z>1;if(!(x||M)){v.x*=d.x/2,v.y*=d.y/2,A.x*=d.x/2,A.y*=d.y/2,g.start.copy(v),g.start.z=0,g.end.copy(A),g.end.z=0;var R=g.closestPointToPointParameter(y,!0);g.at(R,b);var I=THREE__namespace.MathUtils.lerp(v.z,A.z,R),S=I>=-1&&I<=1,B=y.distanceTo(b)<c*.5;if(S&&B){g.start.fromBufferAttribute(f,_),g.end.fromBufferAttribute(h,_),g.start.applyMatrix4(T),g.end.applyMatrix4(T);var O=new THREE__namespace.Vector3,F=new THREE__namespace.Vector3;i.distanceSqToSegment(g.start,g.end,F,O),r.push({point:F,pointOnLine:O,distance:i.origin.distanceTo(F),object:this,faceIndex:_})}}}},t}(THREE__namespace.Mesh);Object.assign(LineSegments2.prototype,{isLineSegments2:!0});var Line2=function(n){__extends(t,n);function t(e,r){var i=n.call(this,e,r)||this;return i.type="Line2",i}return t}(LineSegments2);Object.assign(Line2.prototype,{isLine2:!0});var LineGeometry=function(n){__extends(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),o=0;o<r;o+=3)i[2*o]=e[o],i[2*o+1]=e[o+1],i[2*o+2]=e[o+2],i[2*o+3]=e[o+3],i[2*o+4]=e[o+4],i[2*o+5]=e[o+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),o=0;o<r;o+=3)i[2*o]=e[o],i[2*o+1]=e[o+1],i[2*o+2]=e[o+2],i[2*o+3]=e[o+3],i[2*o+4]=e[o+4],i[2*o+5]=e[o+5];return n.prototype.setColors.call(this,i),this},t.prototype.fromLine=function(e){var r=e.geometry;if(r instanceof THREE__namespace.Geometry){var i=new THREE__namespace.BufferGeometry().fromGeometry(r);this.setPositions(i.attributes.position.array)}else r instanceof THREE__namespace.BufferGeometry&&this.setPositions(r.attributes.position.array);return this},t.prototype.copy=function(){return this},t}(LineSegmentsGeometry);Object.assign(LineGeometry.prototype,{isLineGeometry:!0});var circleImageURL="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==",DEFAULT_COLOR=14467195,POINT_SIZE=8,DEFAULT_LINEWIDTH=2,DEFAULT_DASHSCALE=20,sharedCircleTexture=null,FiveLine=function(n){__extends(t,n);function t(e,r){e===void 0&&(e=new THREE__namespace.Vector3),r===void 0&&(r=new THREE__namespace.Vector3);var i=n.call(this)||this;i.type="FiveLine",i.needsRender=!0;var o=new LineGeometry,s=new LineMaterial({color:DEFAULT_COLOR,linewidth:DEFAULT_LINEWIDTH,dashScale:DEFAULT_DASHSCALE,dashed:!1});i.line=new Line2(o,s);var u=new THREE__namespace.BufferGeometry,l=new THREE__namespace.PointsMaterial({color:DEFAULT_COLOR,size:POINT_SIZE,map:sharedCircleTexture||(sharedCircleTexture=new THREE__namespace.TextureLoader().load(circleImageURL)),sizeAttenuation:!1,transparent:!0});return i.points=new THREE__namespace.Points(u,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.67"},enumerable:!1,configurable:!0}),t.prototype.setPoints=function(e,r){var i=[].concat(e.toArray(),r.toArray());this.points.geometry.setAttribute("position",new THREE__namespace.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 THREE__namespace.Vector3(e[0],e[1],e[2]),new THREE__namespace.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 o=e[i];i==="dashed"?(r.dashed=o,o?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}(THREE__namespace.Object3D);Object.assign(FiveLine.prototype,{isFiveLine:!0});var Constants={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 fetchJsonFile(n){return __awaiter(this,void 0,void 0,function(){var t;return __generator(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 fetchProfilesList(n){return __awaiter(this,void 0,void 0,function(){var t,e;return __generator(this,function(r){switch(r.label){case 0:if(!n)throw new Error("No basePath supplied");return t="profilesList.json",[4,fetchJsonFile("".concat(n,"/").concat(t))];case 1:return e=r.sent(),[2,e]}})})}function fetchProfile(n,t,e,r){return e===void 0&&(e=null),r===void 0&&(r=!0),__awaiter(this,void 0,void 0,function(){var i,o,s,u,l,d;return __generator(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,fetchProfilesList(t)];case 1:if(i=c.sent(),n.profiles.some(function(f){var h=i[f];return h&&(o={profileId:f,profilePath:"".concat(t,"/").concat(h.path),deprecated:!!h.deprecated}),!!o}),!o){if(!e)throw new Error("No matching profile name found");if(s=i[e],!s)throw new Error('No matching profile name found and default profile "'.concat(e,'" missing.'));o={profileId:e,profilePath:"".concat(t,"/").concat(s.path),deprecated:!!s.deprecated}}return[4,fetchJsonFile(o.profilePath)];case 2:if(u=c.sent(),r){if(d=void 0,d=u.layouts[n.handedness],!d)throw new Error("No matching handedness, ".concat(n.handedness,", in profile ").concat(o.profileId));d.assetPath&&(l=o.profilePath.replace("profile.json",d.assetPath))}return[2,{profile:u,assetPath:l}]}})})}var defaultComponentValues={xAxis:0,yAxis:0,button:0,state:Constants.ComponentState.DEFAULT};function normalizeAxes(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 o=Math.atan2(t,n);e=Math.cos(o),r=Math.sin(o)}var s={normalizedXAxis:e*.5+.5,normalizedYAxis:r*.5+.5};return s}var VisualResponse=function(){function n(t){this.componentProperty=t.componentProperty,this.states=t.states,this.valueNodeName=t.valueNodeName,this.valueNodeProperty=t.valueNodeProperty,this.valueNodeProperty===Constants.VisualResponseProperty.TRANSFORM&&(this.minNodeName=t.minNodeName,this.maxNodeName=t.maxNodeName),this.value=0,this.updateFromComponent(defaultComponentValues)}return n.prototype.updateFromComponent=function(t){var e=t.xAxis,r=t.yAxis,i=t.button,o=t.state,s=normalizeAxes(e,r),u=s.normalizedXAxis,l=s.normalizedYAxis;switch(this.componentProperty){case Constants.ComponentProperty.X_AXIS:this.value=this.states.includes(o)?u:.5;break;case Constants.ComponentProperty.Y_AXIS:this.value=this.states.includes(o)?l:.5;break;case Constants.ComponentProperty.BUTTON:this.value=this.states.includes(o)?i:0;break;case Constants.ComponentProperty.STATE:this.valueNodeProperty===Constants.VisualResponseProperty.VISIBILITY?this.value=this.states.includes(o):this.value=this.states.includes(o)?1:0;break;default:throw new Error("Unexpected visualResponse componentProperty ".concat(this.componentProperty))}},n}(),Component=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 o=new VisualResponse(e.visualResponses[i]);r.visualResponses[i]=o}),this.gamepadIndices=Object.assign({},e.gamepadIndices),this.values={state:Constants.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=__assign({id:this.id},this.values);return t},enumerable:!1,configurable:!0}),n.prototype.updateFromGamepad=function(t){var e=this;if(this.values.state=Constants.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=Constants.ComponentState.PRESSED:(r.touched||this.values.button>Constants.ButtonTouchThreshold)&&(this.values.state=Constants.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===Constants.ComponentState.DEFAULT&&Math.abs(this.values.xAxis)>Constants.AxisTouchThreshold&&(this.values.state=Constants.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===Constants.ComponentState.DEFAULT&&Math.abs(this.values.yAxis)>Constants.AxisTouchThreshold&&(this.values.state=Constants.ComponentState.TOUCHED)),Object.values(this.visualResponses).forEach(function(i){i.updateFromComponent(e.values)})},n}(),MotionController=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(o){var s=i.layoutDescription.components[o];i.components[o]=new Component(o,s)}),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}(),DEFAULT_PROFILES_PATH="https://cdn.jsdelivr.net/npm/@webxr-input-profiles/assets@1.0/dist/profiles",DEFAULT_PROFILE="generic-trigger",XRControllerModel=function(n){__extends(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 THREE__namespace.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 o=i.valueNode,s=i.minNode,u=i.maxNode,l=i.value,d=i.valueNodeProperty;o&&(d===Constants.VisualResponseProperty.VISIBILITY?o.visible=l:d===Constants.VisualResponseProperty.TRANSFORM&&(o.quaternion.copy(s.quaternion).slerp(u.quaternion,l),o.position.lerpVectors(s.position,u.position,l)))})}))},t}(THREE.Object3D);function findNodes(n,t){Object.values(n.components).forEach(function(e){var r=e.type,i=e.touchPointNodeName,o=e.visualResponses;if(r===Constants.ComponentType.TOUCHPAD)if(e.touchPointNode=t.getObjectByName(i),e.touchPointNode){var s=new THREE.SphereGeometry(.001),u=new THREE.MeshBasicMaterial({color:255}),l=new THREE.Mesh(s,u);e.touchPointNode.add(l)}else console.warn("Could not find touch dot, ".concat(e.touchPointNodeName,", in touchpad component ").concat(e.id));Object.values(o).forEach(function(d){var c=d.valueNodeName,f=d.minNodeName,h=d.maxNodeName,v=d.valueNodeProperty;if(v===Constants.VisualResponseProperty.TRANSFORM){if(d.minNode=t.getObjectByName(f),d.maxNode=t.getObjectByName(h),!d.minNode){console.warn("Could not find ".concat(f," in the model"));return}if(!d.maxNode){console.warn("Could not find ".concat(h," in the model"));return}}d.valueNode=t.getObjectByName(c),d.valueNode||console.warn("Could not find ".concat(c," in the model"))})})}function addAssetSceneToControllerModel(n,t){findNodes(n.motionController,t),n.envMap&&t.traverse(function(e){e instanceof THREE__namespace.Mesh&&e.isMesh&&(e.material.envMap=n.envMap,e.material.needsUpdate=!0)}),n.add(t)}var XRControllerModelFactory=function(){function n(t){t===void 0&&(t=null),this.gltfLoader=t,this.path=DEFAULT_PROFILES_PATH,this._assetCache={}}return n.prototype.createControllerModel=function(t){var e=this,r=new XRControllerModel,i=null;return t.addEventListener("connected",function(o){var s=o.data;s.targetRayMode!=="tracked-pointer"||!s.gamepad||fetchProfile(s,e.path,DEFAULT_PROFILE).then(function(u){var l=u.profile,d=u.assetPath;r.motionController=new MotionController(s,l,d);var c=e._assetCache[r.motionController.assetUrl];if(c)i=c.scene.clone(),addAssetSceneToControllerModel(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(),addAssetSceneToControllerModel(r,i)})}}).catch(function(u){console.warn(u)})}),t.addEventListener("disconnected",function(){r.motionController=null,r.remove(i),i=null}),r},n}();function mapPanoResource(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 CONTROLLER_EVNET_DELTA_TIME=300,ROTATE_Y_PI_MATRIX=new THREE__namespace.Matrix4().makeRotationAxis(new THREE__namespace.Vector3(0,1,0),Math.PI),PANO_TEXTURE_SCALE=new THREE__namespace.Vector3(-1,1,1),XRPanoramaController=function(n){__extends(t,n);function t(e){var r,i=n.call(this,e)||this;i.xrManager=new XRManager(i.renderer,i.renderer.getContext(),{onSessionStart:function(d){i.emit("xr.session.start",createEvent("xr.session.start",{session:d,machineType:i.xrManager.machineType}))},onSessionEnd:function(){i.emit("xr.session.end",createEvent("xr.session.end",{session:null,machineType:i.xrManager.machineType}))}}),i.xrControllerRay={left:new THREE__namespace.Raycaster,right:new THREE__namespace.Raycaster},i.xrControllerRay.left.params.Points={threshold:.1},i.xrControllerRay.right.params.Points={threshold:.1},i.pointerLines={left:new FiveLine,right:new FiveLine},i.pointerLines.left.visible=!1,i.pointerLines.right.visible=!0,i.pointerLines.left.setMaterial({color:new THREE__namespace.Vector3(1,1,1)}),i.pointerLines.left.points.material.depthTest=!1,i.pointerLines.right.setMaterial({color:new THREE__namespace.Vector3(1,1,1)}),i.pointerLines.right.points.material.depthTest=!1,i.scene.add(i.pointerLines.left,i.pointerLines.right),i.panoResources={},i.panoResources[i.locationMotion.keyframes[0].key=i.locationMotion.keyframes[1].key=createUuid()]={panoId:panoStringify(i.currentPano),leftPanoPicture:null,position:i.camera.pose.offset.clone(),effect:"fade"},i.parallaxCameraMatrixs=[],i.onlyUseRightController=(r=e.onlyUseRightController)!==null&&r!==void 0?r:!1;var o=AnimationFrameLoop.shared.getContext();if(!o)return console.error("获取session失败,请退出重试"),i;i.on("xr.session.end",function(){i.scene.remove(i.pointerLines.left,i.pointerLines.right)}),i.xrManager.setSession(o),i.controllerWrappers=[new THREE__namespace.Group,new THREE__namespace.Group],i.scene.add(i.controllerWrappers[0],i.controllerWrappers[1]);var s=i.xrManager.getController(0);i.controllerWrappers[0].add(s);var u=i.xrManager.getController(1);i.controllerWrappers[1].add(u);var l=new XRControllerModelFactory;return l.gltfLoader={load:function(d,c){internalFetcher.ajax(d,{responseType:"arraybuffer"}).then(function(f){var h;return parseGltf(f.body,{resourcePath:d.slice(0,d.lastIndexOf("/")+1),search:(h=d.split("?")[1])!==null&&h!==void 0?h:"",fetcher:internalFetcher})}).then(function(f){return c(f)})}},i.on("xr.session.start",function(){var d=i.xrManager.getControllerGrip(0);if(d.add(l.createControllerModel(d)),i.controllerWrappers[0].add(d),!i.onlyUseRightController){var c=i.xrManager.getControllerGrip(1);c.add(l.createControllerModel(c)),i.controllerWrappers[1].add(c)}}),i.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}},i}return t.parseArgs=function(e){if(e instanceof t)return e;var r=__assign(__assign({},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 __assign(__assign({},i),{mode:"XRPanorama"})},t.prototype.moveToPano=function(e,r,i){var o=this,s,u,l,d;this.userAction=i,this.stopMomentumMovement();var c=this.works.getResolvedObserver(e);if(!c)throw new Error("Invalid PanoIndex");var f=this.imageOptions.size;if(typeof f>"u"&&c){var h=c.images.up.match(/\/cube_(\d+)\//);h&&(f=Number(h[1]))}typeof f>"u"&&(f=2048);var v=this.imageOptions.transform,A=function(I,S){return mapPanoResource(applyImageURLOptions(I,v,S))},m=__assign({key:"pano.".concat(c.panoId)},pick(this.imageOptions,["format","size","quality"])),y=c.images,p=(u=(s=c.images.tiles)===null||s===void 0?void 0:s.filter(function(I){return I.size>f}))!==null&&u!==void 0?u:null,g="pano:"+jsonHash([y,m,v]);if(this.pendingTextureTask){if(this.pendingTextureTask.hash===g)return;var b=this.pendingTextureTask.panoId;(l=this.panoMeshes[b])===null||l===void 0||l.setProgress(0),this.emit("pano.texture.abort",createEvent("pano.texture.abort",{error:null,progress:0,meta:null,pano:c.pano})),this.pendingTextureTask.onError(new Error("texture aborted"))}var T=this.models.getMaterial()||{},_=T.pano0,w=T.pano1,x;if((_==null?void 0:_.map.name)===g?x=_:(w==null?void 0:w.map.name)===g&&(x=w),x){var M={panoId:c.panoId,effect:(d=r.effect)!==null&&d!==void 0?d:"fade",leftPanoPicture:{map:x.map,luminanceMap:x.luminanceMap,matrix:new THREE__namespace.Matrix4().compose(c.position,c.quaternion,PANO_TEXTURE_SCALE)},position:c.position.clone()};this.doMoveToPano(c.pano,M,r);return}var R="move-to-pano-"+c.panoId;this.pending.add(R),this.pendingTextureTask={panoId:c.panoId,hash:g,onLoad:function(I){var S;if(o.pending.delete(R),o.destroyed)I.body.dispose();else{I.body.name=g;var B={panoId:c.panoId,effect:(S=r.effect)!==null&&S!==void 0?S:"fade",leftPanoPicture:{map:I.body,luminanceMap:null,matrix:new THREE__namespace.Matrix4().compose(c.position,c.quaternion,PANO_TEXTURE_SCALE)},position:c.position.clone()};o.doMoveToPano(c.pano,B,r)}},onError:function(I){o.pending.delete(R);var S=__assign(__assign(__assign({},c.pano),{mode:o.mode}),clonePose(o.camera.pose));o.emit("pano.error",createEvent("pano.error",{error:I,userAction:o.userAction,options:r,prevPano:o.currentPano,progress:0,state:S})),o.emit("pano.cancel",createEvent("pano.cancel",{error:null,userAction:o.userAction,options:r,prevPano:o.currentPano,progress:0,state:S})),r.moveCancelCallback&&r.moveCancelCallback()}},Promise.all([this.tileLevelForFov&&p&&p.length?this.textureLoader.loadTiledCubeTexture(y,p,{tileMaxLevel:this.TILED_CUBE_TEXTURE_LEVEL,imageURL:{transform:A,options:m},format:THREE__namespace.RGBAFormat,viaAjax:!0,fetcher:getFetcher(c.work)},void 0,void 0,function(I){var S,B;o.emit("pano.texture.progress",createEvent("pano.texture.progress",{error:null,progress:I,meta:null,pano:c.pano})),((S=o.pendingTextureTask)===null||S===void 0?void 0:S.hash)===g&&((B=o.panoMeshes[c.panoId])===null||B===void 0||B.setProgress(I))},this.renderer):this.textureLoader.loadCubeTexture(y,{imageURL:{transform:A,options:m},format:THREE__namespace.RGBAFormat,fetcher:getFetcher(c.work)},void 0,void 0,function(I){var S,B;((S=o.pendingTextureTask)===null||S===void 0?void 0:S.hash)===g&&((B=o.panoMeshes[c.panoId])===null||B===void 0||B.setProgress(I)),o.emit("pano.texture.progress",createEvent("pano.texture.progress",{error:null,progress:I,meta:null,pano:c.pano}))},this.renderer)]).then(function(I){var S,B,O=I[0];((S=o.pendingTextureTask)===null||S===void 0?void 0:S.hash)===g?(o.pendingTextureTask.onLoad(O),(B=o.panoMeshes[c.panoId])===null||B===void 0||B.setProgress(0),delete o.pendingTextureTask,o.emit("pano.texture.success",createEvent("pano.texture.success",{error:null,progress:1,meta:O.meta,pano:c.pano}))):O.body.dispose()}).catch(function(I){var S,B;((S=o.pendingTextureTask)===null||S===void 0?void 0:S.hash)===g&&(o.pendingTextureTask.onError(I),(B=o.panoMeshes[c.panoId])===null||B===void 0||B.setProgress(0),delete o.pendingTextureTask,o.emit("pano.texture.error",createEvent("pano.texture.error",{error:I,progress:0,meta:null,pano:c.pano})),o.emit("error",I))}),this.emit("pano.texture.load",createEvent("pano.texture.load",{error:null,progress:0,meta:null,pano:c.pano}))},t.prototype.doMoveToPano=function(e,r,i){var o=this,s,u,l;i===void 0&&(i={});var d=now(),c=createUuid();this.panoResources[c]=r;var f=1,h,v,A;if(this.locationMotion.ended){var m=this.locationMotion.getKeyFrameSegment(d);m[0];var y=m[1],p=this.locationMotion.value,g=this.panoResourceFromLocationMotionKeyframe(y).position,b=r.position;h=Math.max(g.distanceTo(b),f),v=[{key:y.key,progress:0,value:__assign(__assign({},p),{count:0})},{key:c,progress:1,value:{distance:0,count:1}}],A=0}else{var T=this.locationMotion.getKeyFrameSegment(d),_=T[0],y=T[1],p=this.locationMotion.value,w=this.panoResourceFromLocationMotionKeyframe(_).position,g=this.panoResourceFromLocationMotionKeyframe(y).position,b=r.position,x=y.value.count-p.count,M=Math.max(w.distanceTo(g),f)*x,R=Math.max(g.distanceTo(b),f);h=M+R,v=[{key:_.key,progress:0,value:__assign({},p)},{key:y.key,progress:M/h,value:y.value},{key:c,progress:1,value:{count:y.value.count+1,distance:0}}];var I=this.locationMotionKeyframesLength(this.locationMotion.keyframes),S=this.locationMotionKeyframesLength(v);A=this.locationMotion.getProgressVelocity(d)*I/S}var B=this.calculateMovingDuration(i.duration,h),O={longitude:i.longitude,latitude:i.latitude,fov:i.fov},F=__assign(__assign({},e),{mode:this.mode,longitude:(s=O.longitude)!==null&&s!==void 0?s:this.camera.pose.longitude,latitude:(u=O.latitude)!==null&&u!==void 0?u:this.camera.pose.latitude,fov:(l=O.fov)!==null&&l!==void 0?l:this.camera.pose.fov,offset:r.position.clone(),distance:0}),H=this.currentPano;this.emit("pano.moveTo",createEvent("pano.moveTo",{options:i,prevPano:H,progress:0,state:F,userAction:this.userAction,error:null})),i.moveStartCallback&&i.moveStartCallback(F),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=noop$1,this.videoTexture.needsUpdate=!0),this.panoVideo.setMaterial(null),this.cameraMotion.set(O,B).catch(noop$1);var k=this.locationMotion.setKeyframes(v,B,A);k.then(function(){var N,q,V,D=__assign(__assign({},e),{mode:o.mode,longitude:o.camera.pose.longitude,latitude:o.camera.pose.latitude,fov:o.camera.pose.fov,offset:o.camera.pose.offset.clone(),distance:0});o.emit("pano.arrived",createEvent("pano.arrived",{options:i,prevPano:H,progress:1,state:D,userAction:o.userAction,error:null})),i.moveEndCallback&&i.moveEndCallback(D);var K=o.works.getResolvedObserver(o.currentPano);if(K&&K.video&&o.videoTexture&&o.videoTexture.image instanceof HTMLVideoElement){var z=ROTATE_Y_PI_MATRIX.clone().multiply((V=(q=(N=o.models.getMaterial())===null||N===void 0?void 0:N.pano1)===null||q===void 0?void 0:q.matrix)!==null&&V!==void 0?V:new THREE__namespace.Matrix4).multiply(K.video.matrix),G={map:o.videoTexture,size:K.video.size,matrix:z,alpha:1},W=createUuid(),Q=o.videoTexture.image;Q.setAttribute("uuid",W),canplayVideo().then(function(X){X&&K.video&&Q.getAttribute("uuid")===W&&(Q.oncanplay=function(){Q.oncanplay=noop$1,Q.play()},Q.ontimeupdate=function(){Q.currentTime>.5&&(Q.ontimeupdate=noop$1,o.panoVideo.setMaterial(G))},Q.src=K.video.source)}).catch(function(){Q.removeAttribute("uuid")})}},function(){o.emit("pano.cancel",createEvent("pano.cancel",{options:i,prevPano:H,progress:0,state:F,userAction:o.userAction,error:null})),i.moveCancelCallback&&i.moveCancelCallback()})},t.prototype.checkSelectedPano=function(e){var r=this,i,o,s,u;this.stopMomentumMovement();var l=this.camera.getDirection(new THREE__namespace.Vector3).setY(0),d=null,c=this.works.getResolvedObserver(this.currentPano);if(!c)return null;var f=c.accessibleIds.filter(function(W){var Q=panoParse(W);if(panoEqual(Q,r.currentPano))return!1;var X=r.works.getResolvedObserver(Q);return!X||X.position.distanceTo(r.camera.position)>r.maxAccessibleDistance?!1:X.loadable||X.active}),h=this.models.intersectRaycaster(e)[0];if(h){var v=arrayMin(f,function(W){var Q=r.works.getResolvedObserver(W);if(!Q)return 1/0;var X=Q.standingPosition.clone();return X.distanceTo(h.point)},!0),A=v[0],m=v[1];A&&m<this.panoTapTriggerRadius&&(d=(i=this.works.getResolvedObserver(A))!==null&&i!==void 0?i:null)}if(isNil(d)){var y=this.getForwardObserverOrNot(e);y&&(d=y)}for(var p=0,g=this.locationMotion.keyframes;p<g.length;p++){var b=g[p],T=this.panoResourceFromLocationMotionKeyframe(b);if(!(b.progress<this.locationMotion.progress)&&d&&T.panoId===d.panoId){d=null;break}}if(isNil(d))return this.locationMotion.ended===!0&&this.cameraBounce(),null;if(d&&!d.active){var _=d.panoId;this.panoMeshes[_]&&(this.panoMeshes[_].setDisabled(!1),this.panoMeshes[_].setLoading(!0))}var w={};if(d){w.effect="fade";for(var x=Math.PI/6,M=Math.PI/12,R=new THREE__namespace.Vector3(0,1,0),I=d.position.clone().setY(0).sub(c.position.clone().setY(0)).normalize(),S=I.clone().applyAxisAngle(R,x),B=I.clone().applyAxisAngle(R,-x),O=[],F=[],H=[],k=0,N=d.accessibleIds;k<N.length;k++){var A=N[k],q=panoParse(A);if(!(panoEqual(q,this.currentPano)||panoEqual(q,d.pano))){var V=this.works.getResolvedObserver(A);if(V){var D=V.position.clone().sub(d.position).setY(0);I.angleTo(D)<x?H.push(D):S.angleTo(D)<x?O.push(D):B.angleTo(D)<x&&F.push(D)}}}var K=H.length>0?H:__spreadArray(__spreadArray([],O,!0),F,!0),z=K.slice().sort(function(W,Q){return W.angleTo(I)-Q.angleTo(I)})[0];z&&z.angleTo(l)>M&&(w.longitude=Math.atan2(-z.x,-z.z))}this.cameraMotion.value.latitude<-Math.PI/4&&(w.latitude=clamp(0,this.minLatitude,this.maxLatitude)),this.cameraMotion.value.fov<60&&(w.fov=this.defaultFov);var G={workCode:d.pano.workCode,panoIndex:d.pano.panoIndex,mode:this.mode,longitude:(o=w.longitude)!==null&&o!==void 0?o:this.camera.pose.longitude,latitude:(s=w.latitude)!==null&&s!==void 0?s:this.camera.pose.latitude,fov:(u=w.fov)!==null&&u!==void 0?u:this.camera.pose.fov,distance:0,offset:d?d.position.clone():new THREE__namespace.Vector3};return this.emit("pano.select",createEvent("pano.select",{prevPano:this.currentPano,state:G,userAction:!0,options:w,progress:0,error:null})),d&&d.active?(this.emit("pano.request",createEvent("pano.request",{userAction:!0,prevPano:this.currentPano,progress:0,state:G,options:w,error:null})),d.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,o,s,u,l,d,c,f,h,v=[],A=2;A<arguments.length;A++)v[A-2]=arguments[A];this.userAction=!0;var m={},y={},p=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),y.longitude=this.cameraMotion.value.longitude,y.latitude=this.cameraMotion.value.latitude,y.fov=this.cameraMotion.value.fov),this.modelAlphaMotion.ended===!1&&(this.modelAlphaMotion.update(e),m.modelAlpha=this.modelAlphaMotion.value.modelAlpha),this.perspToOrthoMotion.ended===!1&&(this.perspToOrthoMotion.update(e),this.camera.perspToOrtho.setScalar(clamp(this.perspToOrthoMotion.value.perspToOrtho,0,1))),this.locationMotion.ended===!1){this.locationMotion.update(e);var T=this.locationMotion.getKeyFrameSegment(e),_=T[0],w=T[1],x=this.panoResourceFromLocationMotionKeyframe(_),M=this.panoResourceFromLocationMotionKeyframe(w),R=new THREE__namespace.Vector3().copy(x.position),I=new THREE__namespace.Vector3().copy(M.position),S=this.locationMotion.value.count-w.value.count+1;m.progress=S,M.leftPanoPicture&&(S<1?x.leftPanoPicture&&(m.pano0=x.leftPanoPicture):m.pano0=M.leftPanoPicture,m.pano1=M.leftPanoPicture),b=m.useBlackTransition=M.effect==="instant"||M.effect==="montage",(M.effect==="fade"||M.effect==="montage")&&(m.pano0&&x.leftPanoPicture&&(m.pano0={map:m.pano0.map,luminanceMap:m.pano0.luminanceMap,matrix:x.leftPanoPicture.matrix.clone().setPosition(M.position)}),R.copy(I)),y.distance=this.locationMotion.value.distance,y.offset=new THREE__namespace.Vector3(R.x+(I.x-R.x)*S,R.y+(I.y-R.y)*S,R.z+(I.z-R.z)*S);for(var B=[],O=[],F=0,H=this.locationMotion.keyframes;F<H.length;F++){var k=H[F],N=k.key,q=k.progress;N!==void 0&&(B.push(N),q>=this.locationMotion.progress&&O.push(N))}for(var V=0,D=Object.keys(this.panoResources);V<D.length;V++){var K=D[V];if(!(O.indexOf(K)>=0)){var z=this.panoResources[K];if(z.leftPanoPicture){var G=z.leftPanoPicture.map;if(G){if(G===((o=m.pano0)===null||o===void 0?void 0:o.map)||G===((s=m.pano1)===null||s===void 0?void 0:s.map))continue;G instanceof TileCubeTextureTarget&&G.cubeRenderTarget&&this.colorCubeRenderTargetPool.push(G.cubeRenderTarget),G.dispose(),z.leftPanoPicture=null}}B.indexOf(K)>=0||delete this.panoResources[K]}}this.currentPano=panoParse(M.panoId),this.emit("pano.moving",createEvent("pano.moving",{userAction:this.userAction,prevPano:panoParse(p.panoId),state:__assign(__assign(__assign(__assign({},panoParse(g.panoId)),{mode:this.mode}),clonePose(this.camera.pose)),y),options:{},progress:this.locationMotion.progress,error:null}))}isEmptyObject(m)===!1&&(!((u=m.pano0)===null||u===void 0)&&u.map&&m.pano0.map instanceof TileCubeTextureTarget&&!m.pano0.map.cubeRenderTarget&&(m.pano0.map.cubeRenderTarget=this.colorCubeRenderTargetPool.pop()),!((l=m.pano1)===null||l===void 0)&&l.map&&m.pano1.map instanceof TileCubeTextureTarget&&!m.pano1.map.cubeRenderTarget&&(m.pano1.map.cubeRenderTarget=this.colorCubeRenderTargetPool.pop()),this.models.setMaterial(m)),isEmptyObject(y)===!1&&this.setCamera(y);var W=this.works.getResolvedObserver(this.currentPano),Q=v[1];if(!Q){console.error("xrFrame丢失,请重试");return}if(!this.xrManager.session){console.error("session丢失,请重试");return}var X=this.xrManager.referenceSpace;if(X){var ee=this.xrManager.cameraVR,J=this.xrManager.cameraL,Z=this.xrManager.cameraR,te=[J,Z],ae=Q.getViewerPose(X),re=new THREE__namespace.Vector3(0,0,0);if(ae){var ie;ie=this.xrManager.session.renderState.baseLayer;var de=ae.views;if(!ie){console.error("no layer found");return}this.renderer.setFramebuffer(ie.framebuffer);var se=!1;de.length!==ee.cameras.length&&(ee.cameras.length=0,se=!0),this.parallaxCameraMatrixs=[];var pe=new THREE__namespace.Vector3,$=new THREE__namespace.Vector3;new THREE__namespace.Matrix4().fromArray(de[0].transform.matrix).decompose(pe,new THREE__namespace.Quaternion,new THREE__namespace.Vector3),new THREE__namespace.Matrix4().fromArray(de[1].transform.matrix).decompose($,new THREE__namespace.Quaternion,new THREE__namespace.Vector3),$.clone().sub(pe).normalize();var oe=new THREE__namespace.Vector3,j=new THREE__namespace.Quaternion,ve=new THREE__namespace.Vector3;this.camera.matrix.decompose(oe,j,ve);for(var me=0;me<de.length;me++){var Me=de[me],Re=ie.getViewport(Me),ge=te[me];ge.matrix.fromArray(Me.transform.matrix);var we=new THREE__namespace.Vector3,Ae=new THREE__namespace.Quaternion,le=new THREE__namespace.Vector3;ge.matrix.decompose(we,Ae,le),re.copy(oe),ge.position.copy(oe),ge.quaternion.copy(Ae),ge.scale.copy(le),ge.updateMatrix(),ge.projectionMatrix.fromArray(Me.projectionMatrix),ge.viewport.set(Re.x,Re.y,Re.width,Re.height),se===!0&&ee.cameras.push(ge)}ae.views[0].transform.position,ae.views[1].transform.position;for(var ue=this.xrManager.session.inputSources,me=0;me<this.xrManager.controllers.length;me++){var Fe=this.xrManager.controllers[me],fe=ue[me];if(fe){Fe.update(fe,Q,X);var Se=this.xrManager.getController(me),ye=new THREE__namespace.Vector3(0,1.2,0),ke=Se.position.clone().add(re).sub(ye);fe.handedness==="left"?this.xrControllerRay.left.set(ke,new THREE__namespace.Vector3(0,0,-1).applyEuler(Se.rotation)):fe.handedness==="right"&&this.xrControllerRay.right.set(ke,new THREE__namespace.Vector3(0,0,-1).applyEuler(Se.rotation)),this.controllerWrappers[me].position.copy(new THREE__namespace.Vector3(0,0,0).add(re).sub(ye));var _e=this.models.intersectRaycaster(this.xrControllerRay.right);if(_e.length===0&&(_e=this.xrControllerRay.right.intersectObject(this.boundingMesh,!0).map(function(Le){var Ue;return __assign({floor:(Ue=W==null?void 0:W.floorIndex)!==null&&Ue!==void 0?Ue:0},Le)})),_e.length>=1&&_e[0].face)if(fe.handedness==="right"){var We=this.xrControllerRay.right.intersectObject(this.xrCustomObjectsScene,!0),Xe=_e[0].face.normal,Ee=Xe.clone().multiplyScalar(.05),Pe=_e[0].point.clone().add(Ee);this.intersectMesh.position.copy(Pe);var Je=Pe.clone().add(Ee);if(this.intersectMesh.lookAt(Je),Math.abs(Xe.y)>.99){var be=this.camera.position.clone().sub(Pe);this.intersectMesh.rotation.z=-Math.atan2(be.z,be.x)}this.intersectMesh.visible=!0,this.needsRender=!0,We.length>0?(this.pointerLines.right.setPoints(ke,We[0].point),this.pointerLines.right.points.visible=!0,this.intersectMesh.visible=!1):(this.pointerLines.right.points.visible=!1,this.pointerLines.right.setPoints(ke,_e[0].point));var Oe=_e[0],De=createEvent("intersect.update",{raycaster:(d=this.xrControllerRay.right)!==null&&d!==void 0?d:null,intersection:Oe??null,object:this.intersectMesh});if(this.emit("intersect.update",De),De.defaultPrevented){this.hideIntersectMesh();return}}else this.pointerLines.left.setPoints(ke,_e[0].point)}}if(this.camera.pose.distance>.1||b){if(W)for(var qe=0,Ze=Object.keys(this.panoMeshes);qe<Ze.length;qe++){var Ne=Ze[qe],he=this.panoMeshes[Ne];he.setOpacity(0),he.setCurrent(!1),he.updateTime&&he.updateTime(e,r)}}else if(W){var st=arrayMin(W.visibleIds,function(Be){var Le=i.works.getResolvedObserver(Be);return Le?W.standingPosition.distanceTo(Le.standingPosition):1/0},!0),ze=st[1];ze=clamp(ze,2.5,1/0);for(var tt=W.visibleIds.concat(panoStringify(this.currentPano)),Ge=this.getForwardObserverOrNot(),mt=this.camera.getDirection(new THREE__namespace.Vector3),lt=0,ct=Object.keys(this.panoMeshes);lt<ct.length;lt++){var Ne=ct[lt],he=this.panoMeshes[Ne],rt=this.works.getResolvedObserver(Ne);if(tt.indexOf(Ne)===-1)he.setCurrent(!1),he.setOpacity(0);else if(!rt)he.setCurrent(!1),he.setOpacity(0);else if(!rt.loadable&&!rt.active)he.setCurrent(!1),he.setOpacity(0);else{var nt=he.position.clone().setY(this.camera.position.y).distanceTo(this.camera.position);he.setCurrent(!he.loading&&he.progress===0&&Ge!==null&&Ge.panoId===Ne),he.setOpacity(nt<.01?0:clamp(ze/nt*1.2,.65,.98));var Ie=this.camera.position.clone().setY(he.position.y),xe=new THREE__namespace.Vector3().copy(he.position).sub(Ie).normalize();if(Ne===panoStringify(this.currentPano)){var je=clamp((.5-Ie.distanceTo(he.position))/.5,0,1);xe.multiplyScalar(1-je).add(mt.clone().multiplyScalar(je))}xe.length()>0&&he.quaternion.setFromEuler(new THREE__namespace.Euler(0,Math.atan2(xe.x,xe.z),0))}he.updateTime&&he.updateTime(e,r)}}var at=function(){if(i.tileLevelForFov===!1)return 0;var Be=new THREE__namespace.Vector2(4e3,4e3),Le=g.panoId,Ue=i.works.getResolvedObserver(Le),Ve=i.imageOptions.size;if(typeof Ve>"u"&&Ue){var Et=Ue.images.up.match(/\/cube_(\d+)\//);Et&&(Ve=Number(Et[1]))}typeof Ve>"u"&&(Ve=2048);var ft=0;Ve>=1024&&(ft=1),Ve>=2048&&(ft=2),Ve>=4096&&(ft=3),Ve>=8192&&(ft=4);var ht=i.tileLevelForFov(J.fov,Be);return ht>ft?ht:0}(),At=function(){var Be=new THREE__namespace.PerspectiveCamera;Be.applyMatrix4(ee.matrix),Be.position.set(0,0,0);var Le=i.works.getResolvedObserver(g.panoId),Ue=Le??W;Ue&&Be.quaternion.premultiply(Ue.quaternion.clone().inverse()),Be.updateProjectionMatrix(),Be.updateMatrixWorld(!0);var Ve=new THREE__namespace.Frustum().setFromProjectionMatrix(new THREE__namespace.Matrix4().multiplyMatrices(Be.projectionMatrix,Be.matrixWorldInverse));return Ve}();g.panoId===panoStringify(this.currentPano)&&((c=g.leftPanoPicture)===null||c===void 0?void 0:c.map)instanceof TileCubeTextureTarget&&(g.leftPanoPicture.map.update(At,at),g.leftPanoPicture.map.needsRender===!0&&(this.needsRender=!0));{var yt=this.tiling.object.visible;if(at>this.TILED_CUBE_TEXTURE_LEVEL&&this.initAnimationed){var dt=g.panoId,He=this.works.getResolvedObserver(dt);He?isSimilarVector3(this.camera.position,He.position)&&this.locationMotion.ended?(this.tiling.object.visible=!0,this.tiling.panoId!==dt&&this.tiling.cleanup(),this.tiling.panoId=dt,this.tiling.setResource((h=(f=He.images)===null||f===void 0?void 0:f.tiles)!==null&&h!==void 0?h:[],this.enableIOSEDR&&He.images.luminance?He.images.luminance:null),this.tiling.setFetcher(getFetcher(He.work)),this.tiling.setRotation(He.quaternion),this.tiling.setPosition(He.position),this.tiling.update(At,at,e)):this.tiling.object.visible=!1:this.tiling.object.visible=!1}else this.tiling.object.visible=!1;yt!==this.tiling.object.visible&&(this.tiling.object.needsRender=!0)}this.panoVideo.object.position.copy(this.camera.position),this.panoVideo.updateTime(e),!(!ue||ue.length<1)&&this.updateControllerHelper(ue,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 o=this.xrControllerRay.left,s=this.xrControllerRay.right;if(!(!e||e.length===0)){for(var u={buttons:{X:!1,Y:!1,LeftTrigger:!1,LeftPinch:!1,A:!1,B:!1,RightTrigger:!1,RightPinch:!1}},l=0;l<e.length;l++){var d=e[l].handedness,c=e[l].gamepad;switch(d){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&&(this.emitEvent(c==null?void 0:c.buttons[4].pressed,"X",r),this.emitEvent(c.buttons[5].pressed,"Y",r),this.emitEvent(c==null?void 0:c.buttons[0].pressed,"LeftTrigger",r),this.emitEvent(c==null?void 0:c.buttons[1].pressed,"LeftPinch",r));var f={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};u.buttons.X=c.buttons&&c.buttons[4]?c.buttons[4].pressed:!1,u.buttons.Y=c.buttons&&c.buttons[5]?c==null?void 0:c.buttons[5].pressed:!1,u.buttons.LeftTrigger=c.buttons&&c.buttons[0]?c==null?void 0:c.buttons[0].pressed:!1,u.buttons.LeftPinch=c.buttons&&c.buttons[1]?c==null?void 0:c.buttons[1].pressed:!1,u.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&&(this.emitEvent(c==null?void 0:c.buttons[4].pressed,"A",r),this.emitEvent(c.buttons[5].pressed,"B",r),this.emitEvent(c==null?void 0:c.buttons[0].pressed,"RightTrigger",r),this.emitEvent(c==null?void 0:c.buttons[1].pressed,"RightPinch",r));var h={raycaster:s,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};u.right=h,u.buttons.A=c.buttons&&c.buttons[4]?c==null?void 0:c.buttons[4].pressed:!1,u.buttons.B=c.buttons&&c.buttons[5]?c==null?void 0:c.buttons[5].pressed:!1,u.buttons.RightTrigger=c.buttons&&c.buttons[0]?c==null?void 0:c.buttons[0].pressed:!1,u.buttons.RightPinch=c.buttons&&c.buttons[1]?c==null?void 0:c.buttons[1].pressed:!1;break}}this.emit("xr.controller.update",createEvent("xr.controller.update",u))}},t.prototype.emitEvent=function(e,r,i){var o=this.xrControllerRay.left,s=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",createEvent("xr.gesture.buttonDown",{session:this.xrManager.session,machineType:this.xrManager.machineType,buttons:r,isFinal:!1,isFirst:!0,controllers:{raycaster:{leftRay:o,rightRay:s}}}));else{var u=i-this.xrControllerState[r].touchStartTime;u>CONTROLLER_EVNET_DELTA_TIME&&this.emit("xr.gesture.press",createEvent("xr.gesture.tap",{session:this.xrManager.session,machineType:this.xrManager.machineType,buttons:r,isFinal:!0,isFirst:!0,controllers:{raycaster:{leftRay:o,rightRay:s}}}))}else if(this.xrControllerState[r].touchStart===!0){this.emit("xr.gesture.buttonUp",createEvent("xr.gesture.buttonUp",{session:this.xrManager.session,machineType:this.xrManager.machineType,buttons:r,isFinal:!0,isFirst:!1,controllers:{raycaster:{leftRay:o,rightRay:s}}}));var u=i-this.xrControllerState[r].touchStartTime;if(u<=CONTROLLER_EVNET_DELTA_TIME){var l=this.emit("xr.gesture.tap",createEvent("xr.gesture.tap",{session:this.xrManager.session,machineType:this.xrManager.machineType,buttons:r,isFinal:!0,isFirst:!1,controllers:{raycaster:{leftRay:o,rightRay:s}}}));l||r==="RightTrigger"&&this.checkSelectedPano(this.xrControllerRay.right)}this.xrControllerState[r].touchStart=!1,this.xrControllerState[r].touchStartTime=0}},t}(PanoramaController),Controllers={Floorplan:FloorplanController,Topview:TopviewController,Panorama:PanoramaController,VRPanorama:VRPanoramaController,Model:ModelController,DepthPanorama:DepthPanoramaController,Mapview:MapviewController,XRPanorama:XRPanoramaController},PROXY_CONTROLLER_EVENT_NAMES=["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 initLegacyEvent(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=coordinatesToVector(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 generateDefaultVideoElement(){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}function initLights(n){{var t=new THREE__namespace.DirectionalLight(16777215,.5);t.position.copy(new THREE__namespace.Vector3(1,1,1)),n.add(t)}{var t=new THREE__namespace.DirectionalLight(16777215,.3);n.add(t)}{var t=new THREE__namespace.AmbientLight(16777215,.3);n.add(t)}}function parseKeyValue(n){for(var t,e,r={},i=n.split(/(\;|\,)/),o=0,s=i;o<s.length;o++){var u=s[o],l=u.split("="),d=(t=l[0])===null||t===void 0?void 0:t.trim(),c=(e=l[1])===null||e===void 0?void 0:e.trim();d&&c&&(r[d]=c)}return r}function getViewportScale(){for(var n,t=document.getElementsByTagName("meta"),e=0;e<t.length;e++){var r=t[e];if(r.getAttribute("name")==="viewport"){var i=parseKeyValue((n=r.getAttribute("content"))!==null&&n!==void 0?n:""),o=Number(i["initial-scale"]);if(!isNaN(o))return o}}return 1}const textureURL="data:image/png;base64,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";var imageSize=[351,63],imageOffset=[20,20],vertices=new Float32Array([-.5,-.5,0,.5,-.5,0,-.5,.5,0,.5,.5,0]),uvs=new Float32Array([0,0,1,0,0,1,1,1]),index=new Uint8Array([0,1,2,1,3,2]),geometry=new THREE__namespace.BufferGeometry;geometry.setAttribute("position",new THREE__namespace.BufferAttribute(vertices,3)),geometry.setAttribute("uv",new THREE__namespace.BufferAttribute(uvs,2)),geometry.setIndex(new THREE__namespace.BufferAttribute(index,1));var material=new THREE__namespace.MeshBasicMaterial({transparent:!0,depthTest:!1,depthWrite:!1,stencilWrite:!1,fog:!1}),mesh=new THREE__namespace.Mesh(geometry,material);mesh.matrixAutoUpdate=!1;var scene=new THREE__namespace.Scene;scene.add(mesh),scene.matrixAutoUpdate=!1;var camera=new THREE__namespace.OrthographicCamera(-.5,.5,.5,-.5,.1,1);camera.position.set(0,0,.5),camera.lookAt(0,0,0),camera.updateMatrixWorld(!0),camera.matrixAutoUpdate=!1;var prevViewport=new THREE__namespace.Vector4,prevScissor=new THREE__namespace.Vector4;function renderPoweredByRealsee(n){if(material.map){var r=n.getViewport(prevViewport),i=n.getScissor(prevScissor),o=n.getScissorTest(),s=n.autoClear,u=i.x+imageOffset[0]/3,l=i.y+imageOffset[1]/3,d=imageSize[0]/3,c=imageSize[1]/3;n.setViewport(u,l,d,c),n.setScissor(u,l,d,c),n.setScissorTest(!0),n.autoClear=!1,n.render(scene,camera),n.setViewport(r),n.setScissor(i),n.setScissorTest(o),n.autoClear=s}else{var t=new THREE__namespace.Texture,e=new Image;e.onload=function(){t.image=e,t.wrapS=THREE__namespace.ClampToEdgeWrapping,t.wrapT=THREE__namespace.ClampToEdgeWrapping,t.minFilter=THREE__namespace.LinearFilter,t.needsUpdate=!0,t.generateMipmaps=!1,material.needsUpdate=!0,e.onload=noop$1},e.src=textureURL,material.map=t}}var DEFAULT_MODE_CHANGE_DURATION=800,DEFAULT_REQUEST_PROXY=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/")},BUILTIN_COORDINATESSYSTEMTRANSFORMERS=[{name:"Z",transformToUpAxisZ:function(){return new THREE__namespace.Matrix4}},{name:"Y",transformToUpAxisZ:function(){return new THREE__namespace.Matrix4().makeRotationAxis(new THREE__namespace.Vector3(1,0,0),+Math.PI/2)}},{name:"-Y",transformToUpAxisZ:function(){return new THREE__namespace.Matrix4().makeRotationAxis(new THREE__namespace.Vector3(1,0,0),-Math.PI/2)}},{name:"WGS84",transformToEarthCentered:function(){return new THREE__namespace.Matrix4}},{name:"GCJ02",transformToEarthCentered:function(){return new THREE__namespace.Matrix4}},{name:"BD09",transformToEarthCentered:function(){return new THREE__namespace.Matrix4}}],sharedVector2=new THREE__namespace.Vector2,sharedFrustum=new THREE__namespace.Frustum,sharedProjScreenMatrix=new THREE__namespace.Matrix4,clockForMixer=new WeakMap,worksMap=new WeakMap,emptyWorks=createWorks([]),Five=function(n){__extends(t,n);function t(e){e===void 0&&(e={});var r,i,o,s,u,l,d,c,f,h,v=n.call(this)||this;v.ident=createUuid(),__FIVE_DEBUG__.instances[v.ident]=v,v.renderSwitch01=0,v.currentMode="Panorama",v.pano={workCode:"",panoIndex:0},v.needsRender=!1,v.onlyRenderIfNeeds=(r=e.onlyRenderIfNeeds)!==null&&r!==void 0?r:!0,v.imageOptions=__assign({},(i=e.imageOptions)!==null&&i!==void 0?i:{}),v.textureOptions=__assign({},(o=e.textureOptions)!==null&&o!==void 0?o:{}),v.poweredByRealsee=(s=e.poweredByRealsee)!==null&&s!==void 0?s:!0,v.extraElements=[],v.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),DepthPanorama:Object.assign({},e.depthPanorama),VRPanorama:Object.assign({},e.vrPanorama),XRPanorama:Object.assign({},e.xrPanorama)},v.coordinatesSystemTransformers=__spreadArray([],(u=e.coordinatesSystemTransformers)!==null&&u!==void 0?u:[],!0);for(var A=function(O){var F=m.coordinatesSystemTransformers.find(function(H){return H.name===O.name});F||m.coordinatesSystemTransformers.push(__assign({},O))},m=this,y=0,p=BUILTIN_COORDINATESSYSTEMTRANSFORMERS;y<p.length;y++){var g=p[y];A(g)}if(v.fps={testCount:0,testTime:now()},v.info=null,v.modeChangeDuration=(l=e.modeChangeDuration)!==null&&l!==void 0?l:DEFAULT_MODE_CHANGE_DURATION,v.enableWheel=(d=e.enableWheel)!==null&&d!==void 0?d:!0,typeof window<"u")if(e.renderer)e.renderer instanceof InternalWebGLRenderer&&v.throwError(new Error("cannot render a internal renderer")),v.renderer=e.renderer;else try{v.renderer=new InternalWebGLRenderer({preserveDrawingBuffer:e.preserveDrawingBuffer,backgroundColor:e.backgroundColor,backgroundAlpha:e.backgroundAlpha,antialias:e.antialias,webgl2:e==null?void 0:e.webgl2});var b=getViewportScale();v.renderer.setPixelRatio(b===1?window.devicePixelRatio:1),v.renderer.setSize(512,512)}catch(O){O instanceof Error&&v.throwError(O)}v.getPixelsRenderTarget=new THREE__namespace.WebGLRenderTarget(1,1,{encoding:(f=(c=v.renderer)===null||c===void 0?void 0:c.outputEncoding)!==null&&f!==void 0?f:THREE__namespace.sRGBEncoding}),v.scissor=Object.assign({left:0,bottom:0,width:1,height:1},e.scissor),v.camera=new Camera(90),v.scene=new Scene,v.xrCustomObjectsScene=new THREE__namespace.Scene,v.scene.add(v.xrCustomObjectsScene),v.scene.matrixAutoUpdate=!1,v.lastLoadWorkTask=Promise.resolve(),v.requestProxy=(h=e.requestProxy)!==null&&h!==void 0?h:DEFAULT_REQUEST_PROXY,v.networkSubscribe=new NetworkSubscribe,v.networkSubscribe.on("network",function(O,F,H,k){var N;v.emit("network.resource",createEvent("network.resource",{source:O,requestType:F,requestState:H,detail:k})),(N=v.analysis)===null||N===void 0||N.network(v.works,O,F,H,k)}),v.boundingMesh=generateBoundingMesh(new THREE__namespace.Box3(new THREE__namespace.Vector3(-.5,-.5,-.5),new THREE__namespace.Vector3(.5,.5,.5))),v.boundingMesh.name="bounding",v.scene.add(v.boundingMesh),v.models=createModels(),v.models.push(new Model),v.lastModels=createModels(),v.readyCallbacks=[],v.syncingState=!1,v.modelGroup=new THREE__namespace.Group,v.modelGroup.visible=!1,v.modelGroup.name="model",v.modelGroup.matrixAutoUpdate=!1,v.modelGroup.renderOrder=-4,v.scene.add(v.modelGroup),v.helperGroup=new THREE__namespace.Group,v.helperGroup.name="helper",v.helperGroup.matrixAutoUpdate=!1,v.scene.add(v.helperGroup),v.videoTexture=new THREE__namespace.VideoTexture(e.videoInstance||generateDefaultVideoElement()),initLights(v.scene),v.copyEffect=new Effect(v.renderer,v.scene,v.camera,v.models),v.state={mode:v.currentMode,workCode:v.pano.workCode,panoIndex:v.pano.panoIndex,longitude:v.camera.pose.longitude,latitude:v.camera.pose.latitude,fov:v.camera.pose.fov,offset:v.camera.pose.offset.clone(),distance:v.camera.pose.distance},v.stateSynced=!1,v._enableIOSEDR=!1,v.destroyed=!1,v.paused=!0,typeof window<"u"&&(e.play!==!1&&v.play(),v.stopAnimationLoop=AnimationFrameLoop.shared.add(function(O,F){for(var H=[],k=2;k<arguments.length;k++)H[k-2]=arguments[k];v.updateTime.apply(v,__spreadArray([O,F],H,!1))},!1,0,10));var T=function(){typeof document<"u"&&document.fullscreenElement===null&&v.currentMode==="VRPanorama"&&v.controller.emit("vr.requestExit",createEvent("vr.requestExit",{}))},_=function(){v.needsRender=!0};if(typeof document<"u"&&document.addEventListener("fullscreenchange",T,!1),v.renderer&&v.renderer.domElement.addEventListener("webglcontextrestored",_,!1),v.removeEventListeners=function(){typeof document<"u"&&document.removeEventListener("fullscreenchange",T,!1),v.renderer&&v.renderer.domElement.removeEventListener("webglcontextrestored",_,!1)},v.plugins={},e.plugins&&e.plugins.length)for(var w=0,x=e.plugins;w<x.length;w++){var M=x[w];if(typeof M=="function")M(v);else if(Array.isArray(M)){var R=M[0],I=M[1],S=M[2];if(typeof R=="function"){var B=R(v,S);typeof I=="string"&&(v.plugins[I]?v.throwError(new Error("plugin name ".concat(I," is exists."))):v.plugins[I]=B)}}}return v.gpuPickingRenderTarget=new THREE__namespace.WebGLRenderTarget(1,1),v.meshReplaceMaterialMap=new Map,v.meshOriginMaterialMap=new Map,initLegacyEvent(v),v}return Object.defineProperty(t,"version",{get:function(){return"6.0.0-alpha.67"},enumerable:!1,configurable:!0}),Object.defineProperty(t,"dracoPath",{get:function(){return draco.decoderPath},set:function(e){draco.setDecoderPath(e)},enumerable:!1,configurable:!0}),Object.defineProperty(t,"ktx2Path",{get:function(){return ktx2.transcoderPath},set:function(e){ktx2.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,o,s){var u=this;if(o===void 0&&(o=1),s===void 0&&(s=new THREE__namespace.Vector3(0,0,0)),!this.renderer)throw new Error("renderer is not initialized.");this.models.setMaterial({constantColor:s}),this.scene.traverse(function(f){if(!(!(f instanceof THREE__namespace.Mesh)||f instanceof PBMMesh)){var h=Object.keys(i).filter(function(A){return A===f.uuid})[0];if(h)if(u.meshOriginMaterialMap.set(h,f.material),u.meshReplaceMaterialMap.get(h))f.material=u.meshReplaceMaterialMap.get(h);else{var v=new THREE__namespace.ShaderMaterial({uniforms:{color:{value:i[h]}},vertexShader:`
2039
2039
  void main() {
2040
2040
  vec4 mvPosition = modelViewMatrix * vec4( position, 1.0 );
2041
2041
  gl_Position = projectionMatrix * mvPosition;