@loaders.gl/i3s 4.3.2 → 4.3.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/arcgis-webscene-loader.js +1 -1
- package/dist/dist.dev.js +2 -2
- package/dist/dist.min.js +1 -1
- package/dist/i3s-attribute-loader.js +1 -1
- package/dist/i3s-building-scene-layer-loader.js +1 -1
- package/dist/i3s-content-loader.js +1 -1
- package/dist/i3s-content-worker-node.js +2 -2
- package/dist/i3s-content-worker.js +6 -6
- package/dist/i3s-loader.js +1 -1
- package/dist/i3s-node-page-loader.js +1 -1
- package/dist/i3s-slpk-loader.js +1 -1
- package/dist/index.cjs +8 -8
- package/dist/index.cjs.map +1 -1
- package/dist/lib/parsers/parse-slpk/slpk-archieve.js +1 -1
- package/package.json +12 -12
- package/src/lib/parsers/parse-slpk/slpk-archieve.ts +1 -1
package/dist/dist.min.js
CHANGED
|
@@ -4,6 +4,6 @@
|
|
|
4
4
|
else if (typeof define === 'function' && define.amd) define([], factory);
|
|
5
5
|
else if (typeof exports === 'object') exports['loaders'] = factory();
|
|
6
6
|
else root['loaders'] = factory();})(globalThis, function () {
|
|
7
|
-
"use strict";var __exports__=(()=>{var zl=Object.create;var sr=Object.defineProperty;var Kl=Object.getOwnPropertyDescriptor;var Hl=Object.getOwnPropertyNames;var Vl=Object.getPrototypeOf,Xl=Object.prototype.hasOwnProperty;var J=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),or=(t,e)=>{for(var n in e)sr(t,n,{get:e[n],enumerable:!0})},rr=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of Hl(e))!Xl.call(t,s)&&s!==n&&sr(t,s,{get:()=>e[s],enumerable:!(r=Kl(e,s))||r.enumerable});return t},ir=(t,e,n)=>(rr(t,e,"default"),n&&rr(n,e,"default")),Ct=(t,e,n)=>(n=t!=null?zl(Vl(t)):{},rr(e||!t||!t.__esModule?sr(n,"default",{value:t,enumerable:!0}):n,t)),Wl=t=>rr(sr({},"__esModule",{value:!0}),t);var Ht=J((dm,oi)=>{oi.exports=globalThis.loaders});var Zt=J(at=>{"use strict";var Kd=typeof Uint8Array<"u"&&typeof Uint16Array<"u"&&typeof Int32Array<"u";function Hd(t,e){return Object.prototype.hasOwnProperty.call(t,e)}at.assign=function(t){for(var e=Array.prototype.slice.call(arguments,1);e.length;){var n=e.shift();if(n){if(typeof n!="object")throw new TypeError(n+"must be non-object");for(var r in n)Hd(n,r)&&(t[r]=n[r])}}return t};at.shrinkBuf=function(t,e){return t.length===e?t:t.subarray?t.subarray(0,e):(t.length=e,t)};var Vd={arraySet:function(t,e,n,r,s){if(e.subarray&&t.subarray){t.set(e.subarray(n,n+r),s);return}for(var o=0;o<r;o++)t[s+o]=e[n+o]},flattenChunks:function(t){var e,n,r,s,o,i;for(r=0,e=0,n=t.length;e<n;e++)r+=t[e].length;for(i=new Uint8Array(r),s=0,e=0,n=t.length;e<n;e++)o=t[e],i.set(o,s),s+=o.length;return i}},Xd={arraySet:function(t,e,n,r,s){for(var o=0;o<r;o++)t[s+o]=e[n+o]},flattenChunks:function(t){return[].concat.apply([],t)}};at.setTyped=function(t){t?(at.Buf8=Uint8Array,at.Buf16=Uint16Array,at.Buf32=Int32Array,at.assign(at,Vd)):(at.Buf8=Array,at.Buf16=Array,at.Buf32=Array,at.assign(at,Xd))};at.setTyped(Kd)});var rf=J(Ze=>{"use strict";var Wd=Zt(),qd=4,Nc=0,Pc=1,Zd=2;function qe(t){for(var e=t.length;--e>=0;)t[e]=0}var Qd=0,Kc=1,Yd=2,jd=3,$d=258,Mo=29,kn=256,Pn=kn+1+Mo,We=30,yo=19,Hc=2*Pn+1,ge=15,xo=16,Jd=7,wo=256,Vc=16,Xc=17,Wc=18,Ro=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],Xr=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],tu=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],qc=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],eu=512,Qt=new Array((Pn+2)*2);qe(Qt);var Nn=new Array(We*2);qe(Nn);var Fn=new Array(eu);qe(Fn);var Un=new Array($d-jd+1);qe(Un);var Oo=new Array(Mo);qe(Oo);var Wr=new Array(We);qe(Wr);function go(t,e,n,r,s){this.static_tree=t,this.extra_bits=e,this.extra_base=n,this.elems=r,this.max_length=s,this.has_stree=t&&t.length}var Zc,Qc,Yc;function Eo(t,e){this.dyn_tree=t,this.max_code=0,this.stat_desc=e}function jc(t){return t<256?Fn[t]:Fn[256+(t>>>7)]}function Gn(t,e){t.pending_buf[t.pending++]=e&255,t.pending_buf[t.pending++]=e>>>8&255}function ht(t,e,n){t.bi_valid>xo-n?(t.bi_buf|=e<<t.bi_valid&65535,Gn(t,t.bi_buf),t.bi_buf=e>>xo-t.bi_valid,t.bi_valid+=n-xo):(t.bi_buf|=e<<t.bi_valid&65535,t.bi_valid+=n)}function Ut(t,e,n){ht(t,n[e*2],n[e*2+1])}function $c(t,e){var n=0;do n|=t&1,t>>>=1,n<<=1;while(--e>0);return n>>>1}function nu(t){t.bi_valid===16?(Gn(t,t.bi_buf),t.bi_buf=0,t.bi_valid=0):t.bi_valid>=8&&(t.pending_buf[t.pending++]=t.bi_buf&255,t.bi_buf>>=8,t.bi_valid-=8)}function ru(t,e){var n=e.dyn_tree,r=e.max_code,s=e.stat_desc.static_tree,o=e.stat_desc.has_stree,i=e.stat_desc.extra_bits,a=e.stat_desc.extra_base,f=e.stat_desc.max_length,c,l,d,_,h,u,A=0;for(_=0;_<=ge;_++)t.bl_count[_]=0;for(n[t.heap[t.heap_max]*2+1]=0,c=t.heap_max+1;c<Hc;c++)l=t.heap[c],_=n[n[l*2+1]*2+1]+1,_>f&&(_=f,A++),n[l*2+1]=_,!(l>r)&&(t.bl_count[_]++,h=0,l>=a&&(h=i[l-a]),u=n[l*2],t.opt_len+=u*(_+h),o&&(t.static_len+=u*(s[l*2+1]+h)));if(A!==0){do{for(_=f-1;t.bl_count[_]===0;)_--;t.bl_count[_]--,t.bl_count[_+1]+=2,t.bl_count[f]--,A-=2}while(A>0);for(_=f;_!==0;_--)for(l=t.bl_count[_];l!==0;)d=t.heap[--c],!(d>r)&&(n[d*2+1]!==_&&(t.opt_len+=(_-n[d*2+1])*n[d*2],n[d*2+1]=_),l--)}}function Jc(t,e,n){var r=new Array(ge+1),s=0,o,i;for(o=1;o<=ge;o++)r[o]=s=s+n[o-1]<<1;for(i=0;i<=e;i++){var a=t[i*2+1];a!==0&&(t[i*2]=$c(r[a]++,a))}}function su(){var t,e,n,r,s,o=new Array(ge+1);for(n=0,r=0;r<Mo-1;r++)for(Oo[r]=n,t=0;t<1<<Ro[r];t++)Un[n++]=r;for(Un[n-1]=r,s=0,r=0;r<16;r++)for(Wr[r]=s,t=0;t<1<<Xr[r];t++)Fn[s++]=r;for(s>>=7;r<We;r++)for(Wr[r]=s<<7,t=0;t<1<<Xr[r]-7;t++)Fn[256+s++]=r;for(e=0;e<=ge;e++)o[e]=0;for(t=0;t<=143;)Qt[t*2+1]=8,t++,o[8]++;for(;t<=255;)Qt[t*2+1]=9,t++,o[9]++;for(;t<=279;)Qt[t*2+1]=7,t++,o[7]++;for(;t<=287;)Qt[t*2+1]=8,t++,o[8]++;for(Jc(Qt,Pn+1,o),t=0;t<We;t++)Nn[t*2+1]=5,Nn[t*2]=$c(t,5);Zc=new go(Qt,Ro,kn+1,Pn,ge),Qc=new go(Nn,Xr,0,We,ge),Yc=new go(new Array(0),tu,0,yo,Jd)}function tf(t){var e;for(e=0;e<Pn;e++)t.dyn_ltree[e*2]=0;for(e=0;e<We;e++)t.dyn_dtree[e*2]=0;for(e=0;e<yo;e++)t.bl_tree[e*2]=0;t.dyn_ltree[wo*2]=1,t.opt_len=t.static_len=0,t.last_lit=t.matches=0}function ef(t){t.bi_valid>8?Gn(t,t.bi_buf):t.bi_valid>0&&(t.pending_buf[t.pending++]=t.bi_buf),t.bi_buf=0,t.bi_valid=0}function ou(t,e,n,r){ef(t),r&&(Gn(t,n),Gn(t,~n)),Wd.arraySet(t.pending_buf,t.window,e,n,t.pending),t.pending+=n}function Fc(t,e,n,r){var s=e*2,o=n*2;return t[s]<t[o]||t[s]===t[o]&&r[e]<=r[n]}function So(t,e,n){for(var r=t.heap[n],s=n<<1;s<=t.heap_len&&(s<t.heap_len&&Fc(e,t.heap[s+1],t.heap[s],t.depth)&&s++,!Fc(e,r,t.heap[s],t.depth));)t.heap[n]=t.heap[s],n=s,s<<=1;t.heap[n]=r}function Uc(t,e,n){var r,s,o=0,i,a;if(t.last_lit!==0)do r=t.pending_buf[t.d_buf+o*2]<<8|t.pending_buf[t.d_buf+o*2+1],s=t.pending_buf[t.l_buf+o],o++,r===0?Ut(t,s,e):(i=Un[s],Ut(t,i+kn+1,e),a=Ro[i],a!==0&&(s-=Oo[i],ht(t,s,a)),r--,i=jc(r),Ut(t,i,n),a=Xr[i],a!==0&&(r-=Wr[i],ht(t,r,a)));while(o<t.last_lit);Ut(t,wo,e)}function To(t,e){var n=e.dyn_tree,r=e.stat_desc.static_tree,s=e.stat_desc.has_stree,o=e.stat_desc.elems,i,a,f=-1,c;for(t.heap_len=0,t.heap_max=Hc,i=0;i<o;i++)n[i*2]!==0?(t.heap[++t.heap_len]=f=i,t.depth[i]=0):n[i*2+1]=0;for(;t.heap_len<2;)c=t.heap[++t.heap_len]=f<2?++f:0,n[c*2]=1,t.depth[c]=0,t.opt_len--,s&&(t.static_len-=r[c*2+1]);for(e.max_code=f,i=t.heap_len>>1;i>=1;i--)So(t,n,i);c=o;do i=t.heap[1],t.heap[1]=t.heap[t.heap_len--],So(t,n,1),a=t.heap[1],t.heap[--t.heap_max]=i,t.heap[--t.heap_max]=a,n[c*2]=n[i*2]+n[a*2],t.depth[c]=(t.depth[i]>=t.depth[a]?t.depth[i]:t.depth[a])+1,n[i*2+1]=n[a*2+1]=c,t.heap[1]=c++,So(t,n,1);while(t.heap_len>=2);t.heap[--t.heap_max]=t.heap[1],ru(t,e),Jc(n,f,t.bl_count)}function Gc(t,e,n){var r,s=-1,o,i=e[0*2+1],a=0,f=7,c=4;for(i===0&&(f=138,c=3),e[(n+1)*2+1]=65535,r=0;r<=n;r++)o=i,i=e[(r+1)*2+1],!(++a<f&&o===i)&&(a<c?t.bl_tree[o*2]+=a:o!==0?(o!==s&&t.bl_tree[o*2]++,t.bl_tree[Vc*2]++):a<=10?t.bl_tree[Xc*2]++:t.bl_tree[Wc*2]++,a=0,s=o,i===0?(f=138,c=3):o===i?(f=6,c=3):(f=7,c=4))}function kc(t,e,n){var r,s=-1,o,i=e[0*2+1],a=0,f=7,c=4;for(i===0&&(f=138,c=3),r=0;r<=n;r++)if(o=i,i=e[(r+1)*2+1],!(++a<f&&o===i)){if(a<c)do Ut(t,o,t.bl_tree);while(--a!==0);else o!==0?(o!==s&&(Ut(t,o,t.bl_tree),a--),Ut(t,Vc,t.bl_tree),ht(t,a-3,2)):a<=10?(Ut(t,Xc,t.bl_tree),ht(t,a-3,3)):(Ut(t,Wc,t.bl_tree),ht(t,a-11,7));a=0,s=o,i===0?(f=138,c=3):o===i?(f=6,c=3):(f=7,c=4)}}function iu(t){var e;for(Gc(t,t.dyn_ltree,t.l_desc.max_code),Gc(t,t.dyn_dtree,t.d_desc.max_code),To(t,t.bl_desc),e=yo-1;e>=3&&t.bl_tree[qc[e]*2+1]===0;e--);return t.opt_len+=3*(e+1)+5+5+4,e}function au(t,e,n,r){var s;for(ht(t,e-257,5),ht(t,n-1,5),ht(t,r-4,4),s=0;s<r;s++)ht(t,t.bl_tree[qc[s]*2+1],3);kc(t,t.dyn_ltree,e-1),kc(t,t.dyn_dtree,n-1)}function cu(t){var e=4093624447,n;for(n=0;n<=31;n++,e>>>=1)if(e&1&&t.dyn_ltree[n*2]!==0)return Nc;if(t.dyn_ltree[9*2]!==0||t.dyn_ltree[10*2]!==0||t.dyn_ltree[13*2]!==0)return Pc;for(n=32;n<kn;n++)if(t.dyn_ltree[n*2]!==0)return Pc;return Nc}var zc=!1;function fu(t){zc||(su(),zc=!0),t.l_desc=new Eo(t.dyn_ltree,Zc),t.d_desc=new Eo(t.dyn_dtree,Qc),t.bl_desc=new Eo(t.bl_tree,Yc),t.bi_buf=0,t.bi_valid=0,tf(t)}function nf(t,e,n,r){ht(t,(Qd<<1)+(r?1:0),3),ou(t,e,n,!0)}function lu(t){ht(t,Kc<<1,3),Ut(t,wo,Qt),nu(t)}function hu(t,e,n,r){var s,o,i=0;t.level>0?(t.strm.data_type===Zd&&(t.strm.data_type=cu(t)),To(t,t.l_desc),To(t,t.d_desc),i=iu(t),s=t.opt_len+3+7>>>3,o=t.static_len+3+7>>>3,o<=s&&(s=o)):s=o=n+5,n+4<=s&&e!==-1?nf(t,e,n,r):t.strategy===qd||o===s?(ht(t,(Kc<<1)+(r?1:0),3),Uc(t,Qt,Nn)):(ht(t,(Yd<<1)+(r?1:0),3),au(t,t.l_desc.max_code+1,t.d_desc.max_code+1,i+1),Uc(t,t.dyn_ltree,t.dyn_dtree)),tf(t),r&&ef(t)}function _u(t,e,n){return t.pending_buf[t.d_buf+t.last_lit*2]=e>>>8&255,t.pending_buf[t.d_buf+t.last_lit*2+1]=e&255,t.pending_buf[t.l_buf+t.last_lit]=n&255,t.last_lit++,e===0?t.dyn_ltree[n*2]++:(t.matches++,e--,t.dyn_ltree[(Un[n]+kn+1)*2]++,t.dyn_dtree[jc(e)*2]++),t.last_lit===t.lit_bufsize-1}Ze._tr_init=fu;Ze._tr_stored_block=nf;Ze._tr_flush_block=hu;Ze._tr_tally=_u;Ze._tr_align=lu});var bo=J((LR,sf)=>{"use strict";function du(t,e,n,r){for(var s=t&65535|0,o=t>>>16&65535|0,i=0;n!==0;){i=n>2e3?2e3:n,n-=i;do s=s+e[r++]|0,o=o+s|0;while(--i);s%=65521,o%=65521}return s|o<<16|0}sf.exports=du});var Co=J((NR,of)=>{"use strict";function uu(){for(var t,e=[],n=0;n<256;n++){t=n;for(var r=0;r<8;r++)t=t&1?3988292384^t>>>1:t>>>1;e[n]=t}return e}var pu=uu();function mu(t,e,n,r){var s=pu,o=r+n;t^=-1;for(var i=r;i<o;i++)t=t>>>8^s[(t^e[i])&255];return t^-1}of.exports=mu});var qr=J((PR,af)=>{"use strict";af.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}});var mf=J(zt=>{"use strict";var ct=Zt(),St=rf(),hf=bo(),oe=Co(),Au=qr(),Te=0,xu=1,gu=3,le=4,cf=5,kt=0,ff=1,Rt=-2,Eu=-3,Bo=-5,Su=-1,Ru=1,Zr=2,Tu=3,Mu=4,yu=0,wu=2,$r=8,Ou=9,bu=15,Cu=8,Bu=29,Du=256,Io=Du+1+Bu,Iu=30,vu=19,Lu=2*Io+1,Nu=15,k=3,ce=258,yt=ce+k+1,Pu=32,Jr=42,vo=69,Qr=73,Yr=91,jr=103,Ee=113,Kn=666,$=1,Hn=2,Se=3,je=4,Fu=3;function fe(t,e){return t.msg=Au[e],e}function lf(t){return(t<<1)-(t>4?9:0)}function ae(t){for(var e=t.length;--e>=0;)t[e]=0}function ie(t){var e=t.state,n=e.pending;n>t.avail_out&&(n=t.avail_out),n!==0&&(ct.arraySet(t.output,e.pending_buf,e.pending_out,n,t.next_out),t.next_out+=n,e.pending_out+=n,t.total_out+=n,t.avail_out-=n,e.pending-=n,e.pending===0&&(e.pending_out=0))}function nt(t,e){St._tr_flush_block(t,t.block_start>=0?t.block_start:-1,t.strstart-t.block_start,e),t.block_start=t.strstart,ie(t.strm)}function K(t,e){t.pending_buf[t.pending++]=e}function zn(t,e){t.pending_buf[t.pending++]=e>>>8&255,t.pending_buf[t.pending++]=e&255}function Uu(t,e,n,r){var s=t.avail_in;return s>r&&(s=r),s===0?0:(t.avail_in-=s,ct.arraySet(e,t.input,t.next_in,s,n),t.state.wrap===1?t.adler=hf(t.adler,e,s,n):t.state.wrap===2&&(t.adler=oe(t.adler,e,s,n)),t.next_in+=s,t.total_in+=s,s)}function _f(t,e){var n=t.max_chain_length,r=t.strstart,s,o,i=t.prev_length,a=t.nice_match,f=t.strstart>t.w_size-yt?t.strstart-(t.w_size-yt):0,c=t.window,l=t.w_mask,d=t.prev,_=t.strstart+ce,h=c[r+i-1],u=c[r+i];t.prev_length>=t.good_match&&(n>>=2),a>t.lookahead&&(a=t.lookahead);do if(s=e,!(c[s+i]!==u||c[s+i-1]!==h||c[s]!==c[r]||c[++s]!==c[r+1])){r+=2,s++;do;while(c[++r]===c[++s]&&c[++r]===c[++s]&&c[++r]===c[++s]&&c[++r]===c[++s]&&c[++r]===c[++s]&&c[++r]===c[++s]&&c[++r]===c[++s]&&c[++r]===c[++s]&&r<_);if(o=ce-(_-r),r=_-ce,o>i){if(t.match_start=e,i=o,o>=a)break;h=c[r+i-1],u=c[r+i]}}while((e=d[e&l])>f&&--n!==0);return i<=t.lookahead?i:t.lookahead}function Re(t){var e=t.w_size,n,r,s,o,i;do{if(o=t.window_size-t.lookahead-t.strstart,t.strstart>=e+(e-yt)){ct.arraySet(t.window,t.window,e,e,0),t.match_start-=e,t.strstart-=e,t.block_start-=e,r=t.hash_size,n=r;do s=t.head[--n],t.head[n]=s>=e?s-e:0;while(--r);r=e,n=r;do s=t.prev[--n],t.prev[n]=s>=e?s-e:0;while(--r);o+=e}if(t.strm.avail_in===0)break;if(r=Uu(t.strm,t.window,t.strstart+t.lookahead,o),t.lookahead+=r,t.lookahead+t.insert>=k)for(i=t.strstart-t.insert,t.ins_h=t.window[i],t.ins_h=(t.ins_h<<t.hash_shift^t.window[i+1])&t.hash_mask;t.insert&&(t.ins_h=(t.ins_h<<t.hash_shift^t.window[i+k-1])&t.hash_mask,t.prev[i&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=i,i++,t.insert--,!(t.lookahead+t.insert<k)););}while(t.lookahead<yt&&t.strm.avail_in!==0)}function Gu(t,e){var n=65535;for(n>t.pending_buf_size-5&&(n=t.pending_buf_size-5);;){if(t.lookahead<=1){if(Re(t),t.lookahead===0&&e===Te)return $;if(t.lookahead===0)break}t.strstart+=t.lookahead,t.lookahead=0;var r=t.block_start+n;if((t.strstart===0||t.strstart>=r)&&(t.lookahead=t.strstart-r,t.strstart=r,nt(t,!1),t.strm.avail_out===0)||t.strstart-t.block_start>=t.w_size-yt&&(nt(t,!1),t.strm.avail_out===0))return $}return t.insert=0,e===le?(nt(t,!0),t.strm.avail_out===0?Se:je):(t.strstart>t.block_start&&(nt(t,!1),t.strm.avail_out===0),$)}function Do(t,e){for(var n,r;;){if(t.lookahead<yt){if(Re(t),t.lookahead<yt&&e===Te)return $;if(t.lookahead===0)break}if(n=0,t.lookahead>=k&&(t.ins_h=(t.ins_h<<t.hash_shift^t.window[t.strstart+k-1])&t.hash_mask,n=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),n!==0&&t.strstart-n<=t.w_size-yt&&(t.match_length=_f(t,n)),t.match_length>=k)if(r=St._tr_tally(t,t.strstart-t.match_start,t.match_length-k),t.lookahead-=t.match_length,t.match_length<=t.max_lazy_match&&t.lookahead>=k){t.match_length--;do t.strstart++,t.ins_h=(t.ins_h<<t.hash_shift^t.window[t.strstart+k-1])&t.hash_mask,n=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart;while(--t.match_length!==0);t.strstart++}else t.strstart+=t.match_length,t.match_length=0,t.ins_h=t.window[t.strstart],t.ins_h=(t.ins_h<<t.hash_shift^t.window[t.strstart+1])&t.hash_mask;else r=St._tr_tally(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++;if(r&&(nt(t,!1),t.strm.avail_out===0))return $}return t.insert=t.strstart<k-1?t.strstart:k-1,e===le?(nt(t,!0),t.strm.avail_out===0?Se:je):t.last_lit&&(nt(t,!1),t.strm.avail_out===0)?$:Hn}function Qe(t,e){for(var n,r,s;;){if(t.lookahead<yt){if(Re(t),t.lookahead<yt&&e===Te)return $;if(t.lookahead===0)break}if(n=0,t.lookahead>=k&&(t.ins_h=(t.ins_h<<t.hash_shift^t.window[t.strstart+k-1])&t.hash_mask,n=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),t.prev_length=t.match_length,t.prev_match=t.match_start,t.match_length=k-1,n!==0&&t.prev_length<t.max_lazy_match&&t.strstart-n<=t.w_size-yt&&(t.match_length=_f(t,n),t.match_length<=5&&(t.strategy===Ru||t.match_length===k&&t.strstart-t.match_start>4096)&&(t.match_length=k-1)),t.prev_length>=k&&t.match_length<=t.prev_length){s=t.strstart+t.lookahead-k,r=St._tr_tally(t,t.strstart-1-t.prev_match,t.prev_length-k),t.lookahead-=t.prev_length-1,t.prev_length-=2;do++t.strstart<=s&&(t.ins_h=(t.ins_h<<t.hash_shift^t.window[t.strstart+k-1])&t.hash_mask,n=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart);while(--t.prev_length!==0);if(t.match_available=0,t.match_length=k-1,t.strstart++,r&&(nt(t,!1),t.strm.avail_out===0))return $}else if(t.match_available){if(r=St._tr_tally(t,0,t.window[t.strstart-1]),r&&nt(t,!1),t.strstart++,t.lookahead--,t.strm.avail_out===0)return $}else t.match_available=1,t.strstart++,t.lookahead--}return t.match_available&&(r=St._tr_tally(t,0,t.window[t.strstart-1]),t.match_available=0),t.insert=t.strstart<k-1?t.strstart:k-1,e===le?(nt(t,!0),t.strm.avail_out===0?Se:je):t.last_lit&&(nt(t,!1),t.strm.avail_out===0)?$:Hn}function ku(t,e){for(var n,r,s,o,i=t.window;;){if(t.lookahead<=ce){if(Re(t),t.lookahead<=ce&&e===Te)return $;if(t.lookahead===0)break}if(t.match_length=0,t.lookahead>=k&&t.strstart>0&&(s=t.strstart-1,r=i[s],r===i[++s]&&r===i[++s]&&r===i[++s])){o=t.strstart+ce;do;while(r===i[++s]&&r===i[++s]&&r===i[++s]&&r===i[++s]&&r===i[++s]&&r===i[++s]&&r===i[++s]&&r===i[++s]&&s<o);t.match_length=ce-(o-s),t.match_length>t.lookahead&&(t.match_length=t.lookahead)}if(t.match_length>=k?(n=St._tr_tally(t,1,t.match_length-k),t.lookahead-=t.match_length,t.strstart+=t.match_length,t.match_length=0):(n=St._tr_tally(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++),n&&(nt(t,!1),t.strm.avail_out===0))return $}return t.insert=0,e===le?(nt(t,!0),t.strm.avail_out===0?Se:je):t.last_lit&&(nt(t,!1),t.strm.avail_out===0)?$:Hn}function zu(t,e){for(var n;;){if(t.lookahead===0&&(Re(t),t.lookahead===0)){if(e===Te)return $;break}if(t.match_length=0,n=St._tr_tally(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++,n&&(nt(t,!1),t.strm.avail_out===0))return $}return t.insert=0,e===le?(nt(t,!0),t.strm.avail_out===0?Se:je):t.last_lit&&(nt(t,!1),t.strm.avail_out===0)?$:Hn}function Gt(t,e,n,r,s){this.good_length=t,this.max_lazy=e,this.nice_length=n,this.max_chain=r,this.func=s}var Ye;Ye=[new Gt(0,0,0,0,Gu),new Gt(4,4,8,4,Do),new Gt(4,5,16,8,Do),new Gt(4,6,32,32,Do),new Gt(4,4,16,16,Qe),new Gt(8,16,32,32,Qe),new Gt(8,16,128,128,Qe),new Gt(8,32,128,256,Qe),new Gt(32,128,258,1024,Qe),new Gt(32,258,258,4096,Qe)];function Ku(t){t.window_size=2*t.w_size,ae(t.head),t.max_lazy_match=Ye[t.level].max_lazy,t.good_match=Ye[t.level].good_length,t.nice_match=Ye[t.level].nice_length,t.max_chain_length=Ye[t.level].max_chain,t.strstart=0,t.block_start=0,t.lookahead=0,t.insert=0,t.match_length=t.prev_length=k-1,t.match_available=0,t.ins_h=0}function Hu(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=$r,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new ct.Buf16(Lu*2),this.dyn_dtree=new ct.Buf16((2*Iu+1)*2),this.bl_tree=new ct.Buf16((2*vu+1)*2),ae(this.dyn_ltree),ae(this.dyn_dtree),ae(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new ct.Buf16(Nu+1),this.heap=new ct.Buf16(2*Io+1),ae(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new ct.Buf16(2*Io+1),ae(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function df(t){var e;return!t||!t.state?fe(t,Rt):(t.total_in=t.total_out=0,t.data_type=wu,e=t.state,e.pending=0,e.pending_out=0,e.wrap<0&&(e.wrap=-e.wrap),e.status=e.wrap?Jr:Ee,t.adler=e.wrap===2?0:1,e.last_flush=Te,St._tr_init(e),kt)}function uf(t){var e=df(t);return e===kt&&Ku(t.state),e}function Vu(t,e){return!t||!t.state||t.state.wrap!==2?Rt:(t.state.gzhead=e,kt)}function pf(t,e,n,r,s,o){if(!t)return Rt;var i=1;if(e===Su&&(e=6),r<0?(i=0,r=-r):r>15&&(i=2,r-=16),s<1||s>Ou||n!==$r||r<8||r>15||e<0||e>9||o<0||o>Mu)return fe(t,Rt);r===8&&(r=9);var a=new Hu;return t.state=a,a.strm=t,a.wrap=i,a.gzhead=null,a.w_bits=r,a.w_size=1<<a.w_bits,a.w_mask=a.w_size-1,a.hash_bits=s+7,a.hash_size=1<<a.hash_bits,a.hash_mask=a.hash_size-1,a.hash_shift=~~((a.hash_bits+k-1)/k),a.window=new ct.Buf8(a.w_size*2),a.head=new ct.Buf16(a.hash_size),a.prev=new ct.Buf16(a.w_size),a.lit_bufsize=1<<s+6,a.pending_buf_size=a.lit_bufsize*4,a.pending_buf=new ct.Buf8(a.pending_buf_size),a.d_buf=1*a.lit_bufsize,a.l_buf=(1+2)*a.lit_bufsize,a.level=e,a.strategy=o,a.method=n,uf(t)}function Xu(t,e){return pf(t,e,$r,bu,Cu,yu)}function Wu(t,e){var n,r,s,o;if(!t||!t.state||e>cf||e<0)return t?fe(t,Rt):Rt;if(r=t.state,!t.output||!t.input&&t.avail_in!==0||r.status===Kn&&e!==le)return fe(t,t.avail_out===0?Bo:Rt);if(r.strm=t,n=r.last_flush,r.last_flush=e,r.status===Jr)if(r.wrap===2)t.adler=0,K(r,31),K(r,139),K(r,8),r.gzhead?(K(r,(r.gzhead.text?1:0)+(r.gzhead.hcrc?2:0)+(r.gzhead.extra?4:0)+(r.gzhead.name?8:0)+(r.gzhead.comment?16:0)),K(r,r.gzhead.time&255),K(r,r.gzhead.time>>8&255),K(r,r.gzhead.time>>16&255),K(r,r.gzhead.time>>24&255),K(r,r.level===9?2:r.strategy>=Zr||r.level<2?4:0),K(r,r.gzhead.os&255),r.gzhead.extra&&r.gzhead.extra.length&&(K(r,r.gzhead.extra.length&255),K(r,r.gzhead.extra.length>>8&255)),r.gzhead.hcrc&&(t.adler=oe(t.adler,r.pending_buf,r.pending,0)),r.gzindex=0,r.status=vo):(K(r,0),K(r,0),K(r,0),K(r,0),K(r,0),K(r,r.level===9?2:r.strategy>=Zr||r.level<2?4:0),K(r,Fu),r.status=Ee);else{var i=$r+(r.w_bits-8<<4)<<8,a=-1;r.strategy>=Zr||r.level<2?a=0:r.level<6?a=1:r.level===6?a=2:a=3,i|=a<<6,r.strstart!==0&&(i|=Pu),i+=31-i%31,r.status=Ee,zn(r,i),r.strstart!==0&&(zn(r,t.adler>>>16),zn(r,t.adler&65535)),t.adler=1}if(r.status===vo)if(r.gzhead.extra){for(s=r.pending;r.gzindex<(r.gzhead.extra.length&65535)&&!(r.pending===r.pending_buf_size&&(r.gzhead.hcrc&&r.pending>s&&(t.adler=oe(t.adler,r.pending_buf,r.pending-s,s)),ie(t),s=r.pending,r.pending===r.pending_buf_size));)K(r,r.gzhead.extra[r.gzindex]&255),r.gzindex++;r.gzhead.hcrc&&r.pending>s&&(t.adler=oe(t.adler,r.pending_buf,r.pending-s,s)),r.gzindex===r.gzhead.extra.length&&(r.gzindex=0,r.status=Qr)}else r.status=Qr;if(r.status===Qr)if(r.gzhead.name){s=r.pending;do{if(r.pending===r.pending_buf_size&&(r.gzhead.hcrc&&r.pending>s&&(t.adler=oe(t.adler,r.pending_buf,r.pending-s,s)),ie(t),s=r.pending,r.pending===r.pending_buf_size)){o=1;break}r.gzindex<r.gzhead.name.length?o=r.gzhead.name.charCodeAt(r.gzindex++)&255:o=0,K(r,o)}while(o!==0);r.gzhead.hcrc&&r.pending>s&&(t.adler=oe(t.adler,r.pending_buf,r.pending-s,s)),o===0&&(r.gzindex=0,r.status=Yr)}else r.status=Yr;if(r.status===Yr)if(r.gzhead.comment){s=r.pending;do{if(r.pending===r.pending_buf_size&&(r.gzhead.hcrc&&r.pending>s&&(t.adler=oe(t.adler,r.pending_buf,r.pending-s,s)),ie(t),s=r.pending,r.pending===r.pending_buf_size)){o=1;break}r.gzindex<r.gzhead.comment.length?o=r.gzhead.comment.charCodeAt(r.gzindex++)&255:o=0,K(r,o)}while(o!==0);r.gzhead.hcrc&&r.pending>s&&(t.adler=oe(t.adler,r.pending_buf,r.pending-s,s)),o===0&&(r.status=jr)}else r.status=jr;if(r.status===jr&&(r.gzhead.hcrc?(r.pending+2>r.pending_buf_size&&ie(t),r.pending+2<=r.pending_buf_size&&(K(r,t.adler&255),K(r,t.adler>>8&255),t.adler=0,r.status=Ee)):r.status=Ee),r.pending!==0){if(ie(t),t.avail_out===0)return r.last_flush=-1,kt}else if(t.avail_in===0&&lf(e)<=lf(n)&&e!==le)return fe(t,Bo);if(r.status===Kn&&t.avail_in!==0)return fe(t,Bo);if(t.avail_in!==0||r.lookahead!==0||e!==Te&&r.status!==Kn){var f=r.strategy===Zr?zu(r,e):r.strategy===Tu?ku(r,e):Ye[r.level].func(r,e);if((f===Se||f===je)&&(r.status=Kn),f===$||f===Se)return t.avail_out===0&&(r.last_flush=-1),kt;if(f===Hn&&(e===xu?St._tr_align(r):e!==cf&&(St._tr_stored_block(r,0,0,!1),e===gu&&(ae(r.head),r.lookahead===0&&(r.strstart=0,r.block_start=0,r.insert=0))),ie(t),t.avail_out===0))return r.last_flush=-1,kt}return e!==le?kt:r.wrap<=0?ff:(r.wrap===2?(K(r,t.adler&255),K(r,t.adler>>8&255),K(r,t.adler>>16&255),K(r,t.adler>>24&255),K(r,t.total_in&255),K(r,t.total_in>>8&255),K(r,t.total_in>>16&255),K(r,t.total_in>>24&255)):(zn(r,t.adler>>>16),zn(r,t.adler&65535)),ie(t),r.wrap>0&&(r.wrap=-r.wrap),r.pending!==0?kt:ff)}function qu(t){var e;return!t||!t.state?Rt:(e=t.state.status,e!==Jr&&e!==vo&&e!==Qr&&e!==Yr&&e!==jr&&e!==Ee&&e!==Kn?fe(t,Rt):(t.state=null,e===Ee?fe(t,Eu):kt))}function Zu(t,e){var n=e.length,r,s,o,i,a,f,c,l;if(!t||!t.state||(r=t.state,i=r.wrap,i===2||i===1&&r.status!==Jr||r.lookahead))return Rt;for(i===1&&(t.adler=hf(t.adler,e,n,0)),r.wrap=0,n>=r.w_size&&(i===0&&(ae(r.head),r.strstart=0,r.block_start=0,r.insert=0),l=new ct.Buf8(r.w_size),ct.arraySet(l,e,n-r.w_size,r.w_size,0),e=l,n=r.w_size),a=t.avail_in,f=t.next_in,c=t.input,t.avail_in=n,t.next_in=0,t.input=e,Re(r);r.lookahead>=k;){s=r.strstart,o=r.lookahead-(k-1);do r.ins_h=(r.ins_h<<r.hash_shift^r.window[s+k-1])&r.hash_mask,r.prev[s&r.w_mask]=r.head[r.ins_h],r.head[r.ins_h]=s,s++;while(--o);r.strstart=s,r.lookahead=k-1,Re(r)}return r.strstart+=r.lookahead,r.block_start=r.strstart,r.insert=r.lookahead,r.lookahead=0,r.match_length=r.prev_length=k-1,r.match_available=0,t.next_in=f,t.input=c,t.avail_in=a,r.wrap=i,kt}zt.deflateInit=Xu;zt.deflateInit2=pf;zt.deflateReset=uf;zt.deflateResetKeep=df;zt.deflateSetHeader=Vu;zt.deflate=Wu;zt.deflateEnd=qu;zt.deflateSetDictionary=Zu;zt.deflateInfo="pako deflate (from Nodeca project)"});var Lo=J($e=>{"use strict";var ts=Zt(),Af=!0,xf=!0;try{String.fromCharCode.apply(null,[0])}catch{Af=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch{xf=!1}var Vn=new ts.Buf8(256);for(Yt=0;Yt<256;Yt++)Vn[Yt]=Yt>=252?6:Yt>=248?5:Yt>=240?4:Yt>=224?3:Yt>=192?2:1;var Yt;Vn[254]=Vn[254]=1;$e.string2buf=function(t){var e,n,r,s,o,i=t.length,a=0;for(s=0;s<i;s++)n=t.charCodeAt(s),(n&64512)===55296&&s+1<i&&(r=t.charCodeAt(s+1),(r&64512)===56320&&(n=65536+(n-55296<<10)+(r-56320),s++)),a+=n<128?1:n<2048?2:n<65536?3:4;for(e=new ts.Buf8(a),o=0,s=0;o<a;s++)n=t.charCodeAt(s),(n&64512)===55296&&s+1<i&&(r=t.charCodeAt(s+1),(r&64512)===56320&&(n=65536+(n-55296<<10)+(r-56320),s++)),n<128?e[o++]=n:n<2048?(e[o++]=192|n>>>6,e[o++]=128|n&63):n<65536?(e[o++]=224|n>>>12,e[o++]=128|n>>>6&63,e[o++]=128|n&63):(e[o++]=240|n>>>18,e[o++]=128|n>>>12&63,e[o++]=128|n>>>6&63,e[o++]=128|n&63);return e};function gf(t,e){if(e<65534&&(t.subarray&&xf||!t.subarray&&Af))return String.fromCharCode.apply(null,ts.shrinkBuf(t,e));for(var n="",r=0;r<e;r++)n+=String.fromCharCode(t[r]);return n}$e.buf2binstring=function(t){return gf(t,t.length)};$e.binstring2buf=function(t){for(var e=new ts.Buf8(t.length),n=0,r=e.length;n<r;n++)e[n]=t.charCodeAt(n);return e};$e.buf2string=function(t,e){var n,r,s,o,i=e||t.length,a=new Array(i*2);for(r=0,n=0;n<i;){if(s=t[n++],s<128){a[r++]=s;continue}if(o=Vn[s],o>4){a[r++]=65533,n+=o-1;continue}for(s&=o===2?31:o===3?15:7;o>1&&n<i;)s=s<<6|t[n++]&63,o--;if(o>1){a[r++]=65533;continue}s<65536?a[r++]=s:(s-=65536,a[r++]=55296|s>>10&1023,a[r++]=56320|s&1023)}return gf(a,r)};$e.utf8border=function(t,e){var n;for(e=e||t.length,e>t.length&&(e=t.length),n=e-1;n>=0&&(t[n]&192)===128;)n--;return n<0||n===0?e:n+Vn[t[n]]>e?n:e}});var No=J((GR,Ef)=>{"use strict";function Qu(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}Ef.exports=Qu});var Mf=J(qn=>{"use strict";var Xn=mf(),Wn=Zt(),Fo=Lo(),Uo=qr(),Yu=No(),Tf=Object.prototype.toString,ju=0,Po=4,Je=0,Sf=1,Rf=2,$u=-1,Ju=0,tp=8;function Me(t){if(!(this instanceof Me))return new Me(t);this.options=Wn.assign({level:$u,method:tp,chunkSize:16384,windowBits:15,memLevel:8,strategy:Ju,to:""},t||{});var e=this.options;e.raw&&e.windowBits>0?e.windowBits=-e.windowBits:e.gzip&&e.windowBits>0&&e.windowBits<16&&(e.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Yu,this.strm.avail_out=0;var n=Xn.deflateInit2(this.strm,e.level,e.method,e.windowBits,e.memLevel,e.strategy);if(n!==Je)throw new Error(Uo[n]);if(e.header&&Xn.deflateSetHeader(this.strm,e.header),e.dictionary){var r;if(typeof e.dictionary=="string"?r=Fo.string2buf(e.dictionary):Tf.call(e.dictionary)==="[object ArrayBuffer]"?r=new Uint8Array(e.dictionary):r=e.dictionary,n=Xn.deflateSetDictionary(this.strm,r),n!==Je)throw new Error(Uo[n]);this._dict_set=!0}}Me.prototype.push=function(t,e){var n=this.strm,r=this.options.chunkSize,s,o;if(this.ended)return!1;o=e===~~e?e:e===!0?Po:ju,typeof t=="string"?n.input=Fo.string2buf(t):Tf.call(t)==="[object ArrayBuffer]"?n.input=new Uint8Array(t):n.input=t,n.next_in=0,n.avail_in=n.input.length;do{if(n.avail_out===0&&(n.output=new Wn.Buf8(r),n.next_out=0,n.avail_out=r),s=Xn.deflate(n,o),s!==Sf&&s!==Je)return this.onEnd(s),this.ended=!0,!1;(n.avail_out===0||n.avail_in===0&&(o===Po||o===Rf))&&(this.options.to==="string"?this.onData(Fo.buf2binstring(Wn.shrinkBuf(n.output,n.next_out))):this.onData(Wn.shrinkBuf(n.output,n.next_out)))}while((n.avail_in>0||n.avail_out===0)&&s!==Sf);return o===Po?(s=Xn.deflateEnd(this.strm),this.onEnd(s),this.ended=!0,s===Je):(o===Rf&&(this.onEnd(Je),n.avail_out=0),!0)};Me.prototype.onData=function(t){this.chunks.push(t)};Me.prototype.onEnd=function(t){t===Je&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=Wn.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};function Go(t,e){var n=new Me(e);if(n.push(t,!0),n.err)throw n.msg||Uo[n.err];return n.result}function ep(t,e){return e=e||{},e.raw=!0,Go(t,e)}function np(t,e){return e=e||{},e.gzip=!0,Go(t,e)}qn.Deflate=Me;qn.deflate=Go;qn.deflateRaw=ep;qn.gzip=np});var wf=J((zR,yf)=>{"use strict";var es=30,rp=12;yf.exports=function(e,n){var r,s,o,i,a,f,c,l,d,_,h,u,A,p,S,y,B,T,R,D,I,L,x,m,g;r=e.state,s=e.next_in,m=e.input,o=s+(e.avail_in-5),i=e.next_out,g=e.output,a=i-(n-e.avail_out),f=i+(e.avail_out-257),c=r.dmax,l=r.wsize,d=r.whave,_=r.wnext,h=r.window,u=r.hold,A=r.bits,p=r.lencode,S=r.distcode,y=(1<<r.lenbits)-1,B=(1<<r.distbits)-1;t:do{A<15&&(u+=m[s++]<<A,A+=8,u+=m[s++]<<A,A+=8),T=p[u&y];e:for(;;){if(R=T>>>24,u>>>=R,A-=R,R=T>>>16&255,R===0)g[i++]=T&65535;else if(R&16){D=T&65535,R&=15,R&&(A<R&&(u+=m[s++]<<A,A+=8),D+=u&(1<<R)-1,u>>>=R,A-=R),A<15&&(u+=m[s++]<<A,A+=8,u+=m[s++]<<A,A+=8),T=S[u&B];n:for(;;){if(R=T>>>24,u>>>=R,A-=R,R=T>>>16&255,R&16){if(I=T&65535,R&=15,A<R&&(u+=m[s++]<<A,A+=8,A<R&&(u+=m[s++]<<A,A+=8)),I+=u&(1<<R)-1,I>c){e.msg="invalid distance too far back",r.mode=es;break t}if(u>>>=R,A-=R,R=i-a,I>R){if(R=I-R,R>d&&r.sane){e.msg="invalid distance too far back",r.mode=es;break t}if(L=0,x=h,_===0){if(L+=l-R,R<D){D-=R;do g[i++]=h[L++];while(--R);L=i-I,x=g}}else if(_<R){if(L+=l+_-R,R-=_,R<D){D-=R;do g[i++]=h[L++];while(--R);if(L=0,_<D){R=_,D-=R;do g[i++]=h[L++];while(--R);L=i-I,x=g}}}else if(L+=_-R,R<D){D-=R;do g[i++]=h[L++];while(--R);L=i-I,x=g}for(;D>2;)g[i++]=x[L++],g[i++]=x[L++],g[i++]=x[L++],D-=3;D&&(g[i++]=x[L++],D>1&&(g[i++]=x[L++]))}else{L=i-I;do g[i++]=g[L++],g[i++]=g[L++],g[i++]=g[L++],D-=3;while(D>2);D&&(g[i++]=g[L++],D>1&&(g[i++]=g[L++]))}}else if(R&64){e.msg="invalid distance code",r.mode=es;break t}else{T=S[(T&65535)+(u&(1<<R)-1)];continue n}break}}else if(R&64)if(R&32){r.mode=rp;break t}else{e.msg="invalid literal/length code",r.mode=es;break t}else{T=p[(T&65535)+(u&(1<<R)-1)];continue e}break}}while(s<o&&i<f);D=A>>3,s-=D,A-=D<<3,u&=(1<<A)-1,e.next_in=s,e.next_out=i,e.avail_in=s<o?5+(o-s):5-(s-o),e.avail_out=i<f?257+(f-i):257-(i-f),r.hold=u,r.bits=A}});var vf=J((KR,If)=>{"use strict";var Of=Zt(),tn=15,bf=852,Cf=592,Bf=0,ko=1,Df=2,sp=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],op=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],ip=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],ap=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];If.exports=function(e,n,r,s,o,i,a,f){var c=f.bits,l=0,d=0,_=0,h=0,u=0,A=0,p=0,S=0,y=0,B=0,T,R,D,I,L,x=null,m=0,g,E=new Of.Buf16(tn+1),U=new Of.Buf16(tn+1),F=null,G=0,N,j,rt;for(l=0;l<=tn;l++)E[l]=0;for(d=0;d<s;d++)E[n[r+d]]++;for(u=c,h=tn;h>=1&&E[h]===0;h--);if(u>h&&(u=h),h===0)return o[i++]=1<<24|64<<16|0,o[i++]=1<<24|64<<16|0,f.bits=1,0;for(_=1;_<h&&E[_]===0;_++);for(u<_&&(u=_),S=1,l=1;l<=tn;l++)if(S<<=1,S-=E[l],S<0)return-1;if(S>0&&(e===Bf||h!==1))return-1;for(U[1]=0,l=1;l<tn;l++)U[l+1]=U[l]+E[l];for(d=0;d<s;d++)n[r+d]!==0&&(a[U[n[r+d]]++]=d);if(e===Bf?(x=F=a,g=19):e===ko?(x=sp,m-=257,F=op,G-=257,g=256):(x=ip,F=ap,g=-1),B=0,d=0,l=_,L=i,A=u,p=0,D=-1,y=1<<u,I=y-1,e===ko&&y>bf||e===Df&&y>Cf)return 1;for(;;){N=l-p,a[d]<g?(j=0,rt=a[d]):a[d]>g?(j=F[G+a[d]],rt=x[m+a[d]]):(j=32+64,rt=0),T=1<<l-p,R=1<<A,_=R;do R-=T,o[L+(B>>p)+R]=N<<24|j<<16|rt|0;while(R!==0);for(T=1<<l-1;B&T;)T>>=1;if(T!==0?(B&=T-1,B+=T):B=0,d++,--E[l]===0){if(l===h)break;l=n[r+a[d]]}if(l>u&&(B&I)!==D){for(p===0&&(p=u),L+=_,A=l-p,S=1<<A;A+p<h&&(S-=E[A+p],!(S<=0));)A++,S<<=1;if(y+=1<<A,e===ko&&y>bf||e===Df&&y>Cf)return 1;D=B&I,o[D]=u<<24|A<<16|L-i|0}}return B!==0&&(o[L+B]=l-p<<24|64<<16|0),f.bits=u,0}});var ul=J(wt=>{"use strict";var mt=Zt(),Wo=bo(),Kt=Co(),cp=wf(),Zn=vf(),fp=0,ol=1,il=2,Lf=4,lp=5,ns=6,ye=0,hp=1,_p=2,Tt=-2,al=-3,qo=-4,dp=-5,Nf=8,cl=1,Pf=2,Ff=3,Uf=4,Gf=5,kf=6,zf=7,Kf=8,Hf=9,Vf=10,os=11,jt=12,zo=13,Xf=14,Ko=15,Wf=16,qf=17,Zf=18,Qf=19,rs=20,ss=21,Yf=22,jf=23,$f=24,Jf=25,tl=26,Ho=27,el=28,nl=29,q=30,Zo=31,up=32,pp=852,mp=592,Ap=15,xp=Ap;function rl(t){return(t>>>24&255)+(t>>>8&65280)+((t&65280)<<8)+((t&255)<<24)}function gp(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new mt.Buf16(320),this.work=new mt.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function fl(t){var e;return!t||!t.state?Tt:(e=t.state,t.total_in=t.total_out=e.total=0,t.msg="",e.wrap&&(t.adler=e.wrap&1),e.mode=cl,e.last=0,e.havedict=0,e.dmax=32768,e.head=null,e.hold=0,e.bits=0,e.lencode=e.lendyn=new mt.Buf32(pp),e.distcode=e.distdyn=new mt.Buf32(mp),e.sane=1,e.back=-1,ye)}function ll(t){var e;return!t||!t.state?Tt:(e=t.state,e.wsize=0,e.whave=0,e.wnext=0,fl(t))}function hl(t,e){var n,r;return!t||!t.state||(r=t.state,e<0?(n=0,e=-e):(n=(e>>4)+1,e<48&&(e&=15)),e&&(e<8||e>15))?Tt:(r.window!==null&&r.wbits!==e&&(r.window=null),r.wrap=n,r.wbits=e,ll(t))}function _l(t,e){var n,r;return t?(r=new gp,t.state=r,r.window=null,n=hl(t,e),n!==ye&&(t.state=null),n):Tt}function Ep(t){return _l(t,xp)}var sl=!0,Vo,Xo;function Sp(t){if(sl){var e;for(Vo=new mt.Buf32(512),Xo=new mt.Buf32(32),e=0;e<144;)t.lens[e++]=8;for(;e<256;)t.lens[e++]=9;for(;e<280;)t.lens[e++]=7;for(;e<288;)t.lens[e++]=8;for(Zn(ol,t.lens,0,288,Vo,0,t.work,{bits:9}),e=0;e<32;)t.lens[e++]=5;Zn(il,t.lens,0,32,Xo,0,t.work,{bits:5}),sl=!1}t.lencode=Vo,t.lenbits=9,t.distcode=Xo,t.distbits=5}function dl(t,e,n,r){var s,o=t.state;return o.window===null&&(o.wsize=1<<o.wbits,o.wnext=0,o.whave=0,o.window=new mt.Buf8(o.wsize)),r>=o.wsize?(mt.arraySet(o.window,e,n-o.wsize,o.wsize,0),o.wnext=0,o.whave=o.wsize):(s=o.wsize-o.wnext,s>r&&(s=r),mt.arraySet(o.window,e,n-r,s,o.wnext),r-=s,r?(mt.arraySet(o.window,e,n-r,r,0),o.wnext=r,o.whave=o.wsize):(o.wnext+=s,o.wnext===o.wsize&&(o.wnext=0),o.whave<o.wsize&&(o.whave+=s))),0}function Rp(t,e){var n,r,s,o,i,a,f,c,l,d,_,h,u,A,p=0,S,y,B,T,R,D,I,L,x=new mt.Buf8(4),m,g,E=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!t||!t.state||!t.output||!t.input&&t.avail_in!==0)return Tt;n=t.state,n.mode===jt&&(n.mode=zo),i=t.next_out,s=t.output,f=t.avail_out,o=t.next_in,r=t.input,a=t.avail_in,c=n.hold,l=n.bits,d=a,_=f,L=ye;t:for(;;)switch(n.mode){case cl:if(n.wrap===0){n.mode=zo;break}for(;l<16;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}if(n.wrap&2&&c===35615){n.check=0,x[0]=c&255,x[1]=c>>>8&255,n.check=Kt(n.check,x,2,0),c=0,l=0,n.mode=Pf;break}if(n.flags=0,n.head&&(n.head.done=!1),!(n.wrap&1)||(((c&255)<<8)+(c>>8))%31){t.msg="incorrect header check",n.mode=q;break}if((c&15)!==Nf){t.msg="unknown compression method",n.mode=q;break}if(c>>>=4,l-=4,I=(c&15)+8,n.wbits===0)n.wbits=I;else if(I>n.wbits){t.msg="invalid window size",n.mode=q;break}n.dmax=1<<I,t.adler=n.check=1,n.mode=c&512?Vf:jt,c=0,l=0;break;case Pf:for(;l<16;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}if(n.flags=c,(n.flags&255)!==Nf){t.msg="unknown compression method",n.mode=q;break}if(n.flags&57344){t.msg="unknown header flags set",n.mode=q;break}n.head&&(n.head.text=c>>8&1),n.flags&512&&(x[0]=c&255,x[1]=c>>>8&255,n.check=Kt(n.check,x,2,0)),c=0,l=0,n.mode=Ff;case Ff:for(;l<32;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}n.head&&(n.head.time=c),n.flags&512&&(x[0]=c&255,x[1]=c>>>8&255,x[2]=c>>>16&255,x[3]=c>>>24&255,n.check=Kt(n.check,x,4,0)),c=0,l=0,n.mode=Uf;case Uf:for(;l<16;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}n.head&&(n.head.xflags=c&255,n.head.os=c>>8),n.flags&512&&(x[0]=c&255,x[1]=c>>>8&255,n.check=Kt(n.check,x,2,0)),c=0,l=0,n.mode=Gf;case Gf:if(n.flags&1024){for(;l<16;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}n.length=c,n.head&&(n.head.extra_len=c),n.flags&512&&(x[0]=c&255,x[1]=c>>>8&255,n.check=Kt(n.check,x,2,0)),c=0,l=0}else n.head&&(n.head.extra=null);n.mode=kf;case kf:if(n.flags&1024&&(h=n.length,h>a&&(h=a),h&&(n.head&&(I=n.head.extra_len-n.length,n.head.extra||(n.head.extra=new Array(n.head.extra_len)),mt.arraySet(n.head.extra,r,o,h,I)),n.flags&512&&(n.check=Kt(n.check,r,h,o)),a-=h,o+=h,n.length-=h),n.length))break t;n.length=0,n.mode=zf;case zf:if(n.flags&2048){if(a===0)break t;h=0;do I=r[o+h++],n.head&&I&&n.length<65536&&(n.head.name+=String.fromCharCode(I));while(I&&h<a);if(n.flags&512&&(n.check=Kt(n.check,r,h,o)),a-=h,o+=h,I)break t}else n.head&&(n.head.name=null);n.length=0,n.mode=Kf;case Kf:if(n.flags&4096){if(a===0)break t;h=0;do I=r[o+h++],n.head&&I&&n.length<65536&&(n.head.comment+=String.fromCharCode(I));while(I&&h<a);if(n.flags&512&&(n.check=Kt(n.check,r,h,o)),a-=h,o+=h,I)break t}else n.head&&(n.head.comment=null);n.mode=Hf;case Hf:if(n.flags&512){for(;l<16;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}if(c!==(n.check&65535)){t.msg="header crc mismatch",n.mode=q;break}c=0,l=0}n.head&&(n.head.hcrc=n.flags>>9&1,n.head.done=!0),t.adler=n.check=0,n.mode=jt;break;case Vf:for(;l<32;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}t.adler=n.check=rl(c),c=0,l=0,n.mode=os;case os:if(n.havedict===0)return t.next_out=i,t.avail_out=f,t.next_in=o,t.avail_in=a,n.hold=c,n.bits=l,_p;t.adler=n.check=1,n.mode=jt;case jt:if(e===lp||e===ns)break t;case zo:if(n.last){c>>>=l&7,l-=l&7,n.mode=Ho;break}for(;l<3;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}switch(n.last=c&1,c>>>=1,l-=1,c&3){case 0:n.mode=Xf;break;case 1:if(Sp(n),n.mode=rs,e===ns){c>>>=2,l-=2;break t}break;case 2:n.mode=qf;break;case 3:t.msg="invalid block type",n.mode=q}c>>>=2,l-=2;break;case Xf:for(c>>>=l&7,l-=l&7;l<32;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}if((c&65535)!==(c>>>16^65535)){t.msg="invalid stored block lengths",n.mode=q;break}if(n.length=c&65535,c=0,l=0,n.mode=Ko,e===ns)break t;case Ko:n.mode=Wf;case Wf:if(h=n.length,h){if(h>a&&(h=a),h>f&&(h=f),h===0)break t;mt.arraySet(s,r,o,h,i),a-=h,o+=h,f-=h,i+=h,n.length-=h;break}n.mode=jt;break;case qf:for(;l<14;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}if(n.nlen=(c&31)+257,c>>>=5,l-=5,n.ndist=(c&31)+1,c>>>=5,l-=5,n.ncode=(c&15)+4,c>>>=4,l-=4,n.nlen>286||n.ndist>30){t.msg="too many length or distance symbols",n.mode=q;break}n.have=0,n.mode=Zf;case Zf:for(;n.have<n.ncode;){for(;l<3;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}n.lens[E[n.have++]]=c&7,c>>>=3,l-=3}for(;n.have<19;)n.lens[E[n.have++]]=0;if(n.lencode=n.lendyn,n.lenbits=7,m={bits:n.lenbits},L=Zn(fp,n.lens,0,19,n.lencode,0,n.work,m),n.lenbits=m.bits,L){t.msg="invalid code lengths set",n.mode=q;break}n.have=0,n.mode=Qf;case Qf:for(;n.have<n.nlen+n.ndist;){for(;p=n.lencode[c&(1<<n.lenbits)-1],S=p>>>24,y=p>>>16&255,B=p&65535,!(S<=l);){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}if(B<16)c>>>=S,l-=S,n.lens[n.have++]=B;else{if(B===16){for(g=S+2;l<g;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}if(c>>>=S,l-=S,n.have===0){t.msg="invalid bit length repeat",n.mode=q;break}I=n.lens[n.have-1],h=3+(c&3),c>>>=2,l-=2}else if(B===17){for(g=S+3;l<g;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}c>>>=S,l-=S,I=0,h=3+(c&7),c>>>=3,l-=3}else{for(g=S+7;l<g;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}c>>>=S,l-=S,I=0,h=11+(c&127),c>>>=7,l-=7}if(n.have+h>n.nlen+n.ndist){t.msg="invalid bit length repeat",n.mode=q;break}for(;h--;)n.lens[n.have++]=I}}if(n.mode===q)break;if(n.lens[256]===0){t.msg="invalid code -- missing end-of-block",n.mode=q;break}if(n.lenbits=9,m={bits:n.lenbits},L=Zn(ol,n.lens,0,n.nlen,n.lencode,0,n.work,m),n.lenbits=m.bits,L){t.msg="invalid literal/lengths set",n.mode=q;break}if(n.distbits=6,n.distcode=n.distdyn,m={bits:n.distbits},L=Zn(il,n.lens,n.nlen,n.ndist,n.distcode,0,n.work,m),n.distbits=m.bits,L){t.msg="invalid distances set",n.mode=q;break}if(n.mode=rs,e===ns)break t;case rs:n.mode=ss;case ss:if(a>=6&&f>=258){t.next_out=i,t.avail_out=f,t.next_in=o,t.avail_in=a,n.hold=c,n.bits=l,cp(t,_),i=t.next_out,s=t.output,f=t.avail_out,o=t.next_in,r=t.input,a=t.avail_in,c=n.hold,l=n.bits,n.mode===jt&&(n.back=-1);break}for(n.back=0;p=n.lencode[c&(1<<n.lenbits)-1],S=p>>>24,y=p>>>16&255,B=p&65535,!(S<=l);){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}if(y&&!(y&240)){for(T=S,R=y,D=B;p=n.lencode[D+((c&(1<<T+R)-1)>>T)],S=p>>>24,y=p>>>16&255,B=p&65535,!(T+S<=l);){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}c>>>=T,l-=T,n.back+=T}if(c>>>=S,l-=S,n.back+=S,n.length=B,y===0){n.mode=tl;break}if(y&32){n.back=-1,n.mode=jt;break}if(y&64){t.msg="invalid literal/length code",n.mode=q;break}n.extra=y&15,n.mode=Yf;case Yf:if(n.extra){for(g=n.extra;l<g;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}n.length+=c&(1<<n.extra)-1,c>>>=n.extra,l-=n.extra,n.back+=n.extra}n.was=n.length,n.mode=jf;case jf:for(;p=n.distcode[c&(1<<n.distbits)-1],S=p>>>24,y=p>>>16&255,B=p&65535,!(S<=l);){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}if(!(y&240)){for(T=S,R=y,D=B;p=n.distcode[D+((c&(1<<T+R)-1)>>T)],S=p>>>24,y=p>>>16&255,B=p&65535,!(T+S<=l);){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}c>>>=T,l-=T,n.back+=T}if(c>>>=S,l-=S,n.back+=S,y&64){t.msg="invalid distance code",n.mode=q;break}n.offset=B,n.extra=y&15,n.mode=$f;case $f:if(n.extra){for(g=n.extra;l<g;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}n.offset+=c&(1<<n.extra)-1,c>>>=n.extra,l-=n.extra,n.back+=n.extra}if(n.offset>n.dmax){t.msg="invalid distance too far back",n.mode=q;break}n.mode=Jf;case Jf:if(f===0)break t;if(h=_-f,n.offset>h){if(h=n.offset-h,h>n.whave&&n.sane){t.msg="invalid distance too far back",n.mode=q;break}h>n.wnext?(h-=n.wnext,u=n.wsize-h):u=n.wnext-h,h>n.length&&(h=n.length),A=n.window}else A=s,u=i-n.offset,h=n.length;h>f&&(h=f),f-=h,n.length-=h;do s[i++]=A[u++];while(--h);n.length===0&&(n.mode=ss);break;case tl:if(f===0)break t;s[i++]=n.length,f--,n.mode=ss;break;case Ho:if(n.wrap){for(;l<32;){if(a===0)break t;a--,c|=r[o++]<<l,l+=8}if(_-=f,t.total_out+=_,n.total+=_,_&&(t.adler=n.check=n.flags?Kt(n.check,s,_,i-_):Wo(n.check,s,_,i-_)),_=f,(n.flags?c:rl(c))!==n.check){t.msg="incorrect data check",n.mode=q;break}c=0,l=0}n.mode=el;case el:if(n.wrap&&n.flags){for(;l<32;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}if(c!==(n.total&4294967295)){t.msg="incorrect length check",n.mode=q;break}c=0,l=0}n.mode=nl;case nl:L=hp;break t;case q:L=al;break t;case Zo:return qo;case up:default:return Tt}return t.next_out=i,t.avail_out=f,t.next_in=o,t.avail_in=a,n.hold=c,n.bits=l,(n.wsize||_!==t.avail_out&&n.mode<q&&(n.mode<Ho||e!==Lf))&&dl(t,t.output,t.next_out,_-t.avail_out)?(n.mode=Zo,qo):(d-=t.avail_in,_-=t.avail_out,t.total_in+=d,t.total_out+=_,n.total+=_,n.wrap&&_&&(t.adler=n.check=n.flags?Kt(n.check,s,_,t.next_out-_):Wo(n.check,s,_,t.next_out-_)),t.data_type=n.bits+(n.last?64:0)+(n.mode===jt?128:0)+(n.mode===rs||n.mode===Ko?256:0),(d===0&&_===0||e===Lf)&&L===ye&&(L=dp),L)}function Tp(t){if(!t||!t.state)return Tt;var e=t.state;return e.window&&(e.window=null),t.state=null,ye}function Mp(t,e){var n;return!t||!t.state||(n=t.state,!(n.wrap&2))?Tt:(n.head=e,e.done=!1,ye)}function yp(t,e){var n=e.length,r,s,o;return!t||!t.state||(r=t.state,r.wrap!==0&&r.mode!==os)?Tt:r.mode===os&&(s=1,s=Wo(s,e,n,0),s!==r.check)?al:(o=dl(t,e,n,n),o?(r.mode=Zo,qo):(r.havedict=1,ye))}wt.inflateReset=ll;wt.inflateReset2=hl;wt.inflateResetKeep=fl;wt.inflateInit=Ep;wt.inflateInit2=_l;wt.inflate=Rp;wt.inflateEnd=Tp;wt.inflateGetHeader=Mp;wt.inflateSetDictionary=yp;wt.inflateInfo="pako inflate (from Nodeca project)"});var Qo=J((VR,pl)=>{"use strict";pl.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}});var Al=J((XR,ml)=>{"use strict";function wp(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}ml.exports=wp});var gl=J(Yn=>{"use strict";var en=ul(),Qn=Zt(),is=Lo(),Q=Qo(),Yo=qr(),Op=No(),bp=Al(),xl=Object.prototype.toString;function we(t){if(!(this instanceof we))return new we(t);this.options=Qn.assign({chunkSize:16384,windowBits:0,to:""},t||{});var e=this.options;e.raw&&e.windowBits>=0&&e.windowBits<16&&(e.windowBits=-e.windowBits,e.windowBits===0&&(e.windowBits=-15)),e.windowBits>=0&&e.windowBits<16&&!(t&&t.windowBits)&&(e.windowBits+=32),e.windowBits>15&&e.windowBits<48&&(e.windowBits&15||(e.windowBits|=15)),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Op,this.strm.avail_out=0;var n=en.inflateInit2(this.strm,e.windowBits);if(n!==Q.Z_OK)throw new Error(Yo[n]);if(this.header=new bp,en.inflateGetHeader(this.strm,this.header),e.dictionary&&(typeof e.dictionary=="string"?e.dictionary=is.string2buf(e.dictionary):xl.call(e.dictionary)==="[object ArrayBuffer]"&&(e.dictionary=new Uint8Array(e.dictionary)),e.raw&&(n=en.inflateSetDictionary(this.strm,e.dictionary),n!==Q.Z_OK)))throw new Error(Yo[n])}we.prototype.push=function(t,e){var n=this.strm,r=this.options.chunkSize,s=this.options.dictionary,o,i,a,f,c,l=!1;if(this.ended)return!1;i=e===~~e?e:e===!0?Q.Z_FINISH:Q.Z_NO_FLUSH,typeof t=="string"?n.input=is.binstring2buf(t):xl.call(t)==="[object ArrayBuffer]"?n.input=new Uint8Array(t):n.input=t,n.next_in=0,n.avail_in=n.input.length;do{if(n.avail_out===0&&(n.output=new Qn.Buf8(r),n.next_out=0,n.avail_out=r),o=en.inflate(n,Q.Z_NO_FLUSH),o===Q.Z_NEED_DICT&&s&&(o=en.inflateSetDictionary(this.strm,s)),o===Q.Z_BUF_ERROR&&l===!0&&(o=Q.Z_OK,l=!1),o!==Q.Z_STREAM_END&&o!==Q.Z_OK)return this.onEnd(o),this.ended=!0,!1;n.next_out&&(n.avail_out===0||o===Q.Z_STREAM_END||n.avail_in===0&&(i===Q.Z_FINISH||i===Q.Z_SYNC_FLUSH))&&(this.options.to==="string"?(a=is.utf8border(n.output,n.next_out),f=n.next_out-a,c=is.buf2string(n.output,a),n.next_out=f,n.avail_out=r-f,f&&Qn.arraySet(n.output,n.output,a,f,0),this.onData(c)):this.onData(Qn.shrinkBuf(n.output,n.next_out))),n.avail_in===0&&n.avail_out===0&&(l=!0)}while((n.avail_in>0||n.avail_out===0)&&o!==Q.Z_STREAM_END);return o===Q.Z_STREAM_END&&(i=Q.Z_FINISH),i===Q.Z_FINISH?(o=en.inflateEnd(this.strm),this.onEnd(o),this.ended=!0,o===Q.Z_OK):(i===Q.Z_SYNC_FLUSH&&(this.onEnd(Q.Z_OK),n.avail_out=0),!0)};we.prototype.onData=function(t){this.chunks.push(t)};we.prototype.onEnd=function(t){t===Q.Z_OK&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=Qn.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};function jo(t,e){var n=new we(e);if(n.push(t,!0),n.err)throw n.msg||Yo[n.err];return n.result}function Cp(t,e){return e=e||{},e.raw=!0,jo(t,e)}Yn.Inflate=we;Yn.inflate=jo;Yn.inflateRaw=Cp;Yn.ungzip=jo});var Rl=J((qR,Sl)=>{"use strict";var Bp=Zt().assign,Dp=Mf(),Ip=gl(),vp=Qo(),El={};Bp(El,Dp,Ip,vp);Sl.exports=El});var Tl=J(()=>{});var tr={};or(tr,{ArcGISWebSceneLoader:()=>Pl,COORDINATE_SYSTEM:()=>Lt,I3SAttributeLoader:()=>$n,I3SBuildingSceneLayerLoader:()=>Il,I3SContentLoader:()=>Pr,I3SLoader:()=>Dn,I3SNodePageLoader:()=>kr,LayerError:()=>Jn,SLPKArchive:()=>nn,SLPKLoader:()=>Ml,customizeColors:()=>Gl,loadFeatureAttributes:()=>Cl,parseSLPKArchive:()=>cs});ir(tr,Ct(Ht(),1));var ql={POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6},Zl={BYTE:5120,UNSIGNED_BYTE:5121,SHORT:5122,UNSIGNED_SHORT:5123,INT:5124,UNSIGNED_INT:5125,FLOAT:5126,DOUBLE:5130},he={...ql,...Zl};async function hs(t,e,n,r){return r._parse(t,e,n,r)}function Jt(t,e){if(!t)throw new Error(e||"loader assertion failed.")}var Bt={self:typeof self<"u"&&self,window:typeof window<"u"&&window,global:typeof global<"u"&&global,document:typeof document<"u"&&document},Ql=Bt.self||Bt.window||Bt.global||{},Yl=Bt.window||Bt.self||Bt.global||{},jl=Bt.global||Bt.self||Bt.window||{},$l=Bt.document||{};var At=Boolean(typeof process!="object"||String(process)!=="[object process]"||process.browser);var ii=typeof process<"u"&&process.version&&/v([0-9]*)/.exec(process.version),Jl=ii&&parseFloat(ii[1])||0;function sn(t){globalThis.loaders||={},globalThis.loaders.modules||={},Object.assign(globalThis.loaders.modules,t)}function _s(t){return globalThis.loaders?.modules?.[t]||null}function t0(){return globalThis._loadersgl_?.version||(globalThis._loadersgl_=globalThis._loadersgl_||{},globalThis._loadersgl_.version="4.3.1"),globalThis._loadersgl_.version}var ai=t0();function ci(t,e){if(!t)throw new Error(e||"loaders.gl assertion failed.")}var Dt={self:typeof self<"u"&&self,window:typeof window<"u"&&window,global:typeof global<"u"&&global,document:typeof document<"u"&&document},Sm=Dt.self||Dt.window||Dt.global||{},Rm=Dt.window||Dt.self||Dt.global||{},Tm=Dt.global||Dt.self||Dt.window||{},Mm=Dt.document||{};var De=typeof process!="object"||String(process)!=="[object process]"||process.browser,ar=typeof importScripts=="function",ym=typeof window<"u"&&typeof window.orientation<"u",fi=typeof process<"u"&&process.version&&/v([0-9]*)/.exec(process.version),wm=fi&&parseFloat(fi[1])||0;var ds={};async function It(t,e=null,n={},r=null){return e&&(t=li(t,e,n,r)),ds[t]=ds[t]||e0(t),await ds[t]}function li(t,e,n={},r=null){if(!n.useLocalLibraries&&t.startsWith("http"))return t;r=r||t;let s=n.modules||{};return s[r]?s[r]:De?n.CDN?(ci(n.CDN.startsWith("http")),`${n.CDN}/${e}@${ai}/dist/libs/${r}`):ar?`../src/libs/${r}`:`modules/${e}/src/libs/${r}`:`modules/${e}/dist/libs/${r}`}async function e0(t){if(t.endsWith("wasm"))return await r0(t);if(!De)try{let{requireFromFile:n}=globalThis.loaders||{};return await n?.(t)}catch(n){return console.error(n),null}if(ar)return importScripts(t);let e=await s0(t);return n0(e,t)}function n0(t,e){if(!De){let{requireFromString:r}=globalThis.loaders||{};return r?.(t,e)}if(ar)return eval.call(globalThis,t),null;let n=document.createElement("script");n.id=e;try{n.appendChild(document.createTextNode(t))}catch{n.text=t}return document.body.appendChild(n),null}async function r0(t){let{readFileAsArrayBuffer:e}=globalThis.loaders||{};return De||!e||t.startsWith("http")?await(await fetch(t)).arrayBuffer():await e(t)}async function s0(t){let{readFileAsText:e}=globalThis.loaders||{};return De||!e||t.startsWith("http")?await(await fetch(t)).text():await e(t)}function te(t,e,n){if(n=n||t.byteLength,t.byteLength<n||e.byteLength<n)return!1;let r=new Uint8Array(t),s=new Uint8Array(e);for(let o=0;o<r.length;++o)if(r[o]!==s[o])return!1;return!0}function Ie(...t){return hi(t)}function hi(t){let e=t.map(o=>o instanceof ArrayBuffer?new Uint8Array(o):o),n=e.reduce((o,i)=>o+i.byteLength,0),r=new Uint8Array(n),s=0;for(let o of e)r.set(o,s),s+=o.byteLength;return r.buffer}async function on(t){let e=[];for await(let n of t)e.push(n);return Ie(...e)}function _i(t){return t&&typeof t=="object"&&t.isBuffer}function ve(t){if(_i(t))return t;if(t instanceof ArrayBuffer)return t;if(ArrayBuffer.isView(t))return t.byteOffset===0&&t.byteLength===t.buffer.byteLength?t.buffer:t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength);if(typeof t=="string"){let e=t;return new TextEncoder().encode(e).buffer}if(t&&typeof t=="object"&&t._toArrayBuffer)return t._toArrayBuffer();throw new Error("toArrayBuffer")}function Le(t){return e=>new Promise((n,r)=>t(e,(s,o)=>s?r(s):n(o)))}var an=new Error("Not implemented"),cr=class{handle;size=0;bigsize=0n;url="";constructor(e,n,r){if(globalThis.loaders?.NodeFile)return new globalThis.loaders.NodeFile(e,n,r);throw At?new Error("Can't instantiate NodeFile in browser."):new Error("Can't instantiate NodeFile. Make sure to import @loaders.gl/polyfills first.")}async read(e,n){throw an}async write(e,n,r){throw an}async stat(){throw an}async truncate(e){throw an}async append(e){throw an}async close(){}};var us=t=>t?.getUint8&&t?.slice&&t?.length;var cn=class{file;constructor(e,n=!1){this.file=new cr(e,n?"a+":"r")}async truncate(e){await this.file.truncate(e)}async append(e){await this.file.append(e)}async destroy(){await this.file.close()}async getUint8(e){let n=await this.file.read(e,1),r=new Uint8Array(n).at(0);if(r===void 0)throw new Error("something went wrong");return r}async getUint16(e){let n=await this.file.read(e,2),r=new Uint16Array(n).at(0);if(r===void 0)throw new Error("something went wrong");return r}async getUint32(e){let n=await this.file.read(e,4),r=new Uint32Array(n).at(0);if(r===void 0)throw new Error("something went wrong");return r}async getBigUint64(e){let n=await this.file.read(e,8),r=new BigInt64Array(n).at(0);if(r===void 0)throw new Error("something went wrong");return r}async slice(e,n){let r=n-e;if(r>Number.MAX_SAFE_INTEGER)throw new Error("too big slice");let s=Number(r);return await this.file.read(e,s)}get length(){return this.file.bigsize}};var Ne=t=>{if(t>Number.MAX_SAFE_INTEGER)throw new Error("Offset is out of bounds");return Number(t)},_e=class{file;constructor(e){this.file=e}async destroy(){}async getUint8(e){return this.file.getUint8(Ne(e))}async getUint16(e){return this.file.getUint16(Ne(e),!0)}async getUint32(e){return this.file.getUint32(Ne(e),!0)}async getBigUint64(e){return this.file.getBigUint64(Ne(e),!0)}async slice(e,n){return this.file.buffer.slice(Ne(e),Ne(n))}get length(){return BigInt(this.file.byteLength)}};var o0=1/Math.PI*180,i0=1/180*Math.PI,a0={EPSILON:1e-12,debug:!1,precision:4,printTypes:!1,printDegrees:!1,printRowMajor:!0,_cartographicRadians:!1};globalThis.mathgl=globalThis.mathgl||{config:{...a0}};var X=globalThis.mathgl.config;function ps(t,{precision:e=X.precision}={}){return t=c0(t),`${parseFloat(t.toPrecision(e))}`}function vt(t){return Array.isArray(t)||ArrayBuffer.isView(t)&&!(t instanceof DataView)}function ms(t){return di(t)}function As(t){return ui(t)}function di(t,e){return pi(t,n=>n*i0,e)}function ui(t,e){return pi(t,n=>n*o0,e)}function _t(t,e,n){let r=X.EPSILON;n&&(X.EPSILON=n);try{if(t===e)return!0;if(vt(t)&&vt(e)){if(t.length!==e.length)return!1;for(let s=0;s<t.length;++s)if(!_t(t[s],e[s]))return!1;return!0}return t&&t.equals?t.equals(e):e&&e.equals?e.equals(t):typeof t=="number"&&typeof e=="number"?Math.abs(t-e)<=X.EPSILON*Math.max(1,Math.abs(t),Math.abs(e)):!1}finally{X.EPSILON=r}}function c0(t){return Math.round(t/X.EPSILON)*X.EPSILON}function f0(t){return t.clone?t.clone():new Array(t.length)}function pi(t,e,n){if(vt(t)){let r=t;n=n||f0(r);for(let s=0;s<n.length&&s<r.length;++s){let o=typeof t=="number"?t:t[s];n[s]=e(o,s,n)}return n}return e(t)}var ee=class extends Array{clone(){return new this.constructor().copy(this)}fromArray(e,n=0){for(let r=0;r<this.ELEMENTS;++r)this[r]=e[r+n];return this.check()}toArray(e=[],n=0){for(let r=0;r<this.ELEMENTS;++r)e[n+r]=this[r];return e}toObject(e){return e}from(e){return Array.isArray(e)?this.copy(e):this.fromObject(e)}to(e){return e===this?this:vt(e)?this.toArray(e):this.toObject(e)}toTarget(e){return e?this.to(e):this}toFloat32Array(){return new Float32Array(this)}toString(){return this.formatString(X)}formatString(e){let n="";for(let r=0;r<this.ELEMENTS;++r)n+=(r>0?", ":"")+ps(this[r],e);return`${e.printTypes?this.constructor.name:""}[${n}]`}equals(e){if(!e||this.length!==e.length)return!1;for(let n=0;n<this.ELEMENTS;++n)if(!_t(this[n],e[n]))return!1;return!0}exactEquals(e){if(!e||this.length!==e.length)return!1;for(let n=0;n<this.ELEMENTS;++n)if(this[n]!==e[n])return!1;return!0}negate(){for(let e=0;e<this.ELEMENTS;++e)this[e]=-this[e];return this.check()}lerp(e,n,r){if(r===void 0)return this.lerp(this,e,n);for(let s=0;s<this.ELEMENTS;++s){let o=e[s],i=typeof n=="number"?n:n[s];this[s]=o+r*(i-o)}return this.check()}min(e){for(let n=0;n<this.ELEMENTS;++n)this[n]=Math.min(e[n],this[n]);return this.check()}max(e){for(let n=0;n<this.ELEMENTS;++n)this[n]=Math.max(e[n],this[n]);return this.check()}clamp(e,n){for(let r=0;r<this.ELEMENTS;++r)this[r]=Math.min(Math.max(this[r],e[r]),n[r]);return this.check()}add(...e){for(let n of e)for(let r=0;r<this.ELEMENTS;++r)this[r]+=n[r];return this.check()}subtract(...e){for(let n of e)for(let r=0;r<this.ELEMENTS;++r)this[r]-=n[r];return this.check()}scale(e){if(typeof e=="number")for(let n=0;n<this.ELEMENTS;++n)this[n]*=e;else for(let n=0;n<this.ELEMENTS&&n<e.length;++n)this[n]*=e[n];return this.check()}multiplyByScalar(e){for(let n=0;n<this.ELEMENTS;++n)this[n]*=e;return this.check()}check(){if(X.debug&&!this.validate())throw new Error(`math.gl: ${this.constructor.name} some fields set to invalid numbers'`);return this}validate(){let e=this.length===this.ELEMENTS;for(let n=0;n<this.ELEMENTS;++n)e=e&&Number.isFinite(this[n]);return e}sub(e){return this.subtract(e)}setScalar(e){for(let n=0;n<this.ELEMENTS;++n)this[n]=e;return this.check()}addScalar(e){for(let n=0;n<this.ELEMENTS;++n)this[n]+=e;return this.check()}subScalar(e){return this.addScalar(-e)}multiplyScalar(e){for(let n=0;n<this.ELEMENTS;++n)this[n]*=e;return this.check()}divideScalar(e){return this.multiplyByScalar(1/e)}clampScalar(e,n){for(let r=0;r<this.ELEMENTS;++r)this[r]=Math.min(Math.max(this[r],e),n);return this.check()}get elements(){return this}};function l0(t,e){if(t.length!==e)return!1;for(let n=0;n<t.length;++n)if(!Number.isFinite(t[n]))return!1;return!0}function z(t){if(!Number.isFinite(t))throw new Error(`Invalid number ${JSON.stringify(t)}`);return t}function ne(t,e,n=""){if(X.debug&&!l0(t,e))throw new Error(`math.gl: ${n} some fields set to invalid numbers'`);return t}function tt(t,e){if(!t)throw new Error(`math.gl assertion ${e}`)}var Pe=class extends ee{get x(){return this[0]}set x(e){this[0]=z(e)}get y(){return this[1]}set y(e){this[1]=z(e)}len(){return Math.sqrt(this.lengthSquared())}magnitude(){return this.len()}lengthSquared(){let e=0;for(let n=0;n<this.ELEMENTS;++n)e+=this[n]*this[n];return e}magnitudeSquared(){return this.lengthSquared()}distance(e){return Math.sqrt(this.distanceSquared(e))}distanceSquared(e){let n=0;for(let r=0;r<this.ELEMENTS;++r){let s=this[r]-e[r];n+=s*s}return z(n)}dot(e){let n=0;for(let r=0;r<this.ELEMENTS;++r)n+=this[r]*e[r];return z(n)}normalize(){let e=this.magnitude();if(e!==0)for(let n=0;n<this.ELEMENTS;++n)this[n]/=e;return this.check()}multiply(...e){for(let n of e)for(let r=0;r<this.ELEMENTS;++r)this[r]*=n[r];return this.check()}divide(...e){for(let n of e)for(let r=0;r<this.ELEMENTS;++r)this[r]/=n[r];return this.check()}lengthSq(){return this.lengthSquared()}distanceTo(e){return this.distance(e)}distanceToSquared(e){return this.distanceSquared(e)}getComponent(e){return tt(e>=0&&e<this.ELEMENTS,"index is out of range"),z(this[e])}setComponent(e,n){return tt(e>=0&&e<this.ELEMENTS,"index is out of range"),this[e]=n,this.check()}addVectors(e,n){return this.copy(e).add(n)}subVectors(e,n){return this.copy(e).subtract(n)}multiplyVectors(e,n){return this.copy(e).multiply(n)}addScaledVector(e,n){return this.add(new this.constructor(e).multiplyScalar(n))}};var W=typeof Float32Array<"u"?Float32Array:Array,fn=Math.random;function Fe(t){return t>=0?Math.round(t):t%.5===0?Math.floor(t):Math.round(t)}var MA=Math.PI/180;function h0(){let t=new W(2);return W!=Float32Array&&(t[0]=0,t[1]=0),t}function mi(t,e,n){let r=e[0],s=e[1];return t[0]=n[0]*r+n[3]*s+n[6],t[1]=n[1]*r+n[4]*s+n[7],t}function Ai(t,e,n){let r=e[0],s=e[1];return t[0]=n[0]*r+n[4]*s+n[12],t[1]=n[1]*r+n[5]*s+n[13],t}var yA=function(){let t=h0();return function(e,n,r,s,o,i){let a,f;for(n||(n=2),r||(r=0),s?f=Math.min(s*n+r,e.length):f=e.length,a=r;a<f;a+=n)t[0]=e[a],t[1]=e[a+1],o(t,t,i),e[a]=t[0],e[a+1]=t[1];return e}}();function xi(t,e,n){let r=e[0],s=e[1],o=n[3]*r+n[7]*s||1;return t[0]=(n[0]*r+n[4]*s)/o,t[1]=(n[1]*r+n[5]*s)/o,t}function fr(t,e,n){let r=e[0],s=e[1],o=e[2],i=n[3]*r+n[7]*s+n[11]*o||1;return t[0]=(n[0]*r+n[4]*s+n[8]*o)/i,t[1]=(n[1]*r+n[5]*s+n[9]*o)/i,t[2]=(n[2]*r+n[6]*s+n[10]*o)/i,t}function gi(t,e,n){let r=e[0],s=e[1];return t[0]=n[0]*r+n[2]*s,t[1]=n[1]*r+n[3]*s,t[2]=e[2],t}function Ei(t,e,n){let r=e[0],s=e[1];return t[0]=n[0]*r+n[2]*s,t[1]=n[1]*r+n[3]*s,t[2]=e[2],t[3]=e[3],t}function lr(t,e,n){let r=e[0],s=e[1],o=e[2];return t[0]=n[0]*r+n[3]*s+n[6]*o,t[1]=n[1]*r+n[4]*s+n[7]*o,t[2]=n[2]*r+n[5]*s+n[8]*o,t[3]=e[3],t}var pe={};or(pe,{add:()=>p0,angle:()=>Rs,bezier:()=>b0,ceil:()=>m0,clone:()=>_0,copy:()=>d0,create:()=>hr,cross:()=>de,dist:()=>F0,distance:()=>yi,div:()=>P0,divide:()=>Mi,dot:()=>ln,equals:()=>v0,exactEquals:()=>I0,floor:()=>A0,forEach:()=>k0,fromValues:()=>_r,hermite:()=>O0,inverse:()=>M0,len:()=>Ts,length:()=>Si,lerp:()=>y0,max:()=>g0,min:()=>x0,mul:()=>N0,multiply:()=>Ti,negate:()=>T0,normalize:()=>xs,random:()=>C0,rotateX:()=>gs,rotateY:()=>Es,rotateZ:()=>Ss,round:()=>E0,scale:()=>S0,scaleAndAdd:()=>R0,set:()=>u0,slerp:()=>w0,sqrDist:()=>U0,sqrLen:()=>G0,squaredDistance:()=>wi,squaredLength:()=>Oi,str:()=>D0,sub:()=>L0,subtract:()=>Ri,transformMat3:()=>hn,transformMat4:()=>ue,transformQuat:()=>_n,zero:()=>B0});function hr(){let t=new W(3);return W!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0),t}function _0(t){let e=new W(3);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e}function Si(t){let e=t[0],n=t[1],r=t[2];return Math.sqrt(e*e+n*n+r*r)}function _r(t,e,n){let r=new W(3);return r[0]=t,r[1]=e,r[2]=n,r}function d0(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}function u0(t,e,n,r){return t[0]=e,t[1]=n,t[2]=r,t}function p0(t,e,n){return t[0]=e[0]+n[0],t[1]=e[1]+n[1],t[2]=e[2]+n[2],t}function Ri(t,e,n){return t[0]=e[0]-n[0],t[1]=e[1]-n[1],t[2]=e[2]-n[2],t}function Ti(t,e,n){return t[0]=e[0]*n[0],t[1]=e[1]*n[1],t[2]=e[2]*n[2],t}function Mi(t,e,n){return t[0]=e[0]/n[0],t[1]=e[1]/n[1],t[2]=e[2]/n[2],t}function m0(t,e){return t[0]=Math.ceil(e[0]),t[1]=Math.ceil(e[1]),t[2]=Math.ceil(e[2]),t}function A0(t,e){return t[0]=Math.floor(e[0]),t[1]=Math.floor(e[1]),t[2]=Math.floor(e[2]),t}function x0(t,e,n){return t[0]=Math.min(e[0],n[0]),t[1]=Math.min(e[1],n[1]),t[2]=Math.min(e[2],n[2]),t}function g0(t,e,n){return t[0]=Math.max(e[0],n[0]),t[1]=Math.max(e[1],n[1]),t[2]=Math.max(e[2],n[2]),t}function E0(t,e){return t[0]=Fe(e[0]),t[1]=Fe(e[1]),t[2]=Fe(e[2]),t}function S0(t,e,n){return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t}function R0(t,e,n,r){return t[0]=e[0]+n[0]*r,t[1]=e[1]+n[1]*r,t[2]=e[2]+n[2]*r,t}function yi(t,e){let n=e[0]-t[0],r=e[1]-t[1],s=e[2]-t[2];return Math.sqrt(n*n+r*r+s*s)}function wi(t,e){let n=e[0]-t[0],r=e[1]-t[1],s=e[2]-t[2];return n*n+r*r+s*s}function Oi(t){let e=t[0],n=t[1],r=t[2];return e*e+n*n+r*r}function T0(t,e){return t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t}function M0(t,e){return t[0]=1/e[0],t[1]=1/e[1],t[2]=1/e[2],t}function xs(t,e){let n=e[0],r=e[1],s=e[2],o=n*n+r*r+s*s;return o>0&&(o=1/Math.sqrt(o)),t[0]=e[0]*o,t[1]=e[1]*o,t[2]=e[2]*o,t}function ln(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}function de(t,e,n){let r=e[0],s=e[1],o=e[2],i=n[0],a=n[1],f=n[2];return t[0]=s*f-o*a,t[1]=o*i-r*f,t[2]=r*a-s*i,t}function y0(t,e,n,r){let s=e[0],o=e[1],i=e[2];return t[0]=s+r*(n[0]-s),t[1]=o+r*(n[1]-o),t[2]=i+r*(n[2]-i),t}function w0(t,e,n,r){let s=Math.acos(Math.min(Math.max(ln(e,n),-1),1)),o=Math.sin(s),i=Math.sin((1-r)*s)/o,a=Math.sin(r*s)/o;return t[0]=i*e[0]+a*n[0],t[1]=i*e[1]+a*n[1],t[2]=i*e[2]+a*n[2],t}function O0(t,e,n,r,s,o){let i=o*o,a=i*(2*o-3)+1,f=i*(o-2)+o,c=i*(o-1),l=i*(3-2*o);return t[0]=e[0]*a+n[0]*f+r[0]*c+s[0]*l,t[1]=e[1]*a+n[1]*f+r[1]*c+s[1]*l,t[2]=e[2]*a+n[2]*f+r[2]*c+s[2]*l,t}function b0(t,e,n,r,s,o){let i=1-o,a=i*i,f=o*o,c=a*i,l=3*o*a,d=3*f*i,_=f*o;return t[0]=e[0]*c+n[0]*l+r[0]*d+s[0]*_,t[1]=e[1]*c+n[1]*l+r[1]*d+s[1]*_,t[2]=e[2]*c+n[2]*l+r[2]*d+s[2]*_,t}function C0(t,e){e=e===void 0?1:e;let n=fn()*2*Math.PI,r=fn()*2-1,s=Math.sqrt(1-r*r)*e;return t[0]=Math.cos(n)*s,t[1]=Math.sin(n)*s,t[2]=r*e,t}function ue(t,e,n){let r=e[0],s=e[1],o=e[2],i=n[3]*r+n[7]*s+n[11]*o+n[15];return i=i||1,t[0]=(n[0]*r+n[4]*s+n[8]*o+n[12])/i,t[1]=(n[1]*r+n[5]*s+n[9]*o+n[13])/i,t[2]=(n[2]*r+n[6]*s+n[10]*o+n[14])/i,t}function hn(t,e,n){let r=e[0],s=e[1],o=e[2];return t[0]=r*n[0]+s*n[3]+o*n[6],t[1]=r*n[1]+s*n[4]+o*n[7],t[2]=r*n[2]+s*n[5]+o*n[8],t}function _n(t,e,n){let r=n[0],s=n[1],o=n[2],i=n[3],a=e[0],f=e[1],c=e[2],l=s*c-o*f,d=o*a-r*c,_=r*f-s*a,h=s*_-o*d,u=o*l-r*_,A=r*d-s*l,p=i*2;return l*=p,d*=p,_*=p,h*=2,u*=2,A*=2,t[0]=a+l+h,t[1]=f+d+u,t[2]=c+_+A,t}function gs(t,e,n,r){let s=[],o=[];return s[0]=e[0]-n[0],s[1]=e[1]-n[1],s[2]=e[2]-n[2],o[0]=s[0],o[1]=s[1]*Math.cos(r)-s[2]*Math.sin(r),o[2]=s[1]*Math.sin(r)+s[2]*Math.cos(r),t[0]=o[0]+n[0],t[1]=o[1]+n[1],t[2]=o[2]+n[2],t}function Es(t,e,n,r){let s=[],o=[];return s[0]=e[0]-n[0],s[1]=e[1]-n[1],s[2]=e[2]-n[2],o[0]=s[2]*Math.sin(r)+s[0]*Math.cos(r),o[1]=s[1],o[2]=s[2]*Math.cos(r)-s[0]*Math.sin(r),t[0]=o[0]+n[0],t[1]=o[1]+n[1],t[2]=o[2]+n[2],t}function Ss(t,e,n,r){let s=[],o=[];return s[0]=e[0]-n[0],s[1]=e[1]-n[1],s[2]=e[2]-n[2],o[0]=s[0]*Math.cos(r)-s[1]*Math.sin(r),o[1]=s[0]*Math.sin(r)+s[1]*Math.cos(r),o[2]=s[2],t[0]=o[0]+n[0],t[1]=o[1]+n[1],t[2]=o[2]+n[2],t}function Rs(t,e){let n=t[0],r=t[1],s=t[2],o=e[0],i=e[1],a=e[2],f=Math.sqrt((n*n+r*r+s*s)*(o*o+i*i+a*a)),c=f&&ln(t,e)/f;return Math.acos(Math.min(Math.max(c,-1),1))}function B0(t){return t[0]=0,t[1]=0,t[2]=0,t}function D0(t){return`vec3(${t[0]}, ${t[1]}, ${t[2]})`}function I0(t,e){return t[0]===e[0]&&t[1]===e[1]&&t[2]===e[2]}function v0(t,e){let n=t[0],r=t[1],s=t[2],o=e[0],i=e[1],a=e[2];return Math.abs(n-o)<=1e-6*Math.max(1,Math.abs(n),Math.abs(o))&&Math.abs(r-i)<=1e-6*Math.max(1,Math.abs(r),Math.abs(i))&&Math.abs(s-a)<=1e-6*Math.max(1,Math.abs(s),Math.abs(a))}var L0=Ri,N0=Ti,P0=Mi,F0=yi,U0=wi,Ts=Si,G0=Oi,k0=function(){let t=hr();return function(e,n,r,s,o,i){let a,f;for(n||(n=3),r||(r=0),s?f=Math.min(s*n+r,e.length):f=e.length,a=r;a<f;a+=n)t[0]=e[a],t[1]=e[a+1],t[2]=e[a+2],o(t,t,i),e[a]=t[0],e[a+1]=t[1],e[a+2]=t[2];return e}}();var Ms=[0,0,0],dr,v=class extends Pe{static get ZERO(){return dr||(dr=new v(0,0,0),Object.freeze(dr)),dr}constructor(e=0,n=0,r=0){super(-0,-0,-0),arguments.length===1&&vt(e)?this.copy(e):(X.debug&&(z(e),z(n),z(r)),this[0]=e,this[1]=n,this[2]=r)}set(e,n,r){return this[0]=e,this[1]=n,this[2]=r,this.check()}copy(e){return this[0]=e[0],this[1]=e[1],this[2]=e[2],this.check()}fromObject(e){return X.debug&&(z(e.x),z(e.y),z(e.z)),this[0]=e.x,this[1]=e.y,this[2]=e.z,this.check()}toObject(e){return e.x=this[0],e.y=this[1],e.z=this[2],e}get ELEMENTS(){return 3}get z(){return this[2]}set z(e){this[2]=z(e)}angle(e){return Rs(this,e)}cross(e){return de(this,this,e),this.check()}rotateX({radians:e,origin:n=Ms}){return gs(this,this,n,e),this.check()}rotateY({radians:e,origin:n=Ms}){return Es(this,this,n,e),this.check()}rotateZ({radians:e,origin:n=Ms}){return Ss(this,this,n,e),this.check()}transform(e){return this.transformAsPoint(e)}transformAsPoint(e){return ue(this,this,e),this.check()}transformAsVector(e){return fr(this,this,e),this.check()}transformByMatrix3(e){return hn(this,this,e),this.check()}transformByMatrix2(e){return gi(this,this,e),this.check()}transformByQuaternion(e){return _n(this,this,e),this.check()}};var ur,Ge=class extends Pe{static get ZERO(){return ur||(ur=new Ge(0,0,0,0),Object.freeze(ur)),ur}constructor(e=0,n=0,r=0,s=0){super(-0,-0,-0,-0),vt(e)&&arguments.length===1?this.copy(e):(X.debug&&(z(e),z(n),z(r),z(s)),this[0]=e,this[1]=n,this[2]=r,this[3]=s)}set(e,n,r,s){return this[0]=e,this[1]=n,this[2]=r,this[3]=s,this.check()}copy(e){return this[0]=e[0],this[1]=e[1],this[2]=e[2],this[3]=e[3],this.check()}fromObject(e){return X.debug&&(z(e.x),z(e.y),z(e.z),z(e.w)),this[0]=e.x,this[1]=e.y,this[2]=e.z,this[3]=e.w,this}toObject(e){return e.x=this[0],e.y=this[1],e.z=this[2],e.w=this[3],e}get ELEMENTS(){return 4}get z(){return this[2]}set z(e){this[2]=z(e)}get w(){return this[3]}set w(e){this[3]=z(e)}transform(e){return ue(this,this,e),this.check()}transformByMatrix3(e){return lr(this,this,e),this.check()}transformByMatrix2(e){return Ei(this,this,e),this.check()}transformByQuaternion(e){return _n(this,this,e),this.check()}applyMatrix4(e){return e.transform(this,this),this}};var ke=class extends ee{toString(){let e="[";if(X.printRowMajor){e+="row-major:";for(let n=0;n<this.RANK;++n)for(let r=0;r<this.RANK;++r)e+=` ${this[r*this.RANK+n]}`}else{e+="column-major:";for(let n=0;n<this.ELEMENTS;++n)e+=` ${this[n]}`}return e+="]",e}getElementIndex(e,n){return n*this.RANK+e}getElement(e,n){return this[n*this.RANK+e]}setElement(e,n,r){return this[n*this.RANK+e]=z(r),this}getColumn(e,n=new Array(this.RANK).fill(-0)){let r=e*this.RANK;for(let s=0;s<this.RANK;++s)n[s]=this[r+s];return n}setColumn(e,n){let r=e*this.RANK;for(let s=0;s<this.RANK;++s)this[r+s]=n[s];return this}};function bi(){let t=new W(9);return W!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[5]=0,t[6]=0,t[7]=0),t[0]=1,t[4]=1,t[8]=1,t}function Ci(t,e){if(t===e){let n=e[1],r=e[2],s=e[5];t[1]=e[3],t[2]=e[6],t[3]=n,t[5]=e[7],t[6]=r,t[7]=s}else t[0]=e[0],t[1]=e[3],t[2]=e[6],t[3]=e[1],t[4]=e[4],t[5]=e[7],t[6]=e[2],t[7]=e[5],t[8]=e[8];return t}function Bi(t,e){let n=e[0],r=e[1],s=e[2],o=e[3],i=e[4],a=e[5],f=e[6],c=e[7],l=e[8],d=l*i-a*c,_=-l*o+a*f,h=c*o-i*f,u=n*d+r*_+s*h;return u?(u=1/u,t[0]=d*u,t[1]=(-l*r+s*c)*u,t[2]=(a*r-s*i)*u,t[3]=_*u,t[4]=(l*n-s*f)*u,t[5]=(-a*n+s*o)*u,t[6]=h*u,t[7]=(-c*n+r*f)*u,t[8]=(i*n-r*o)*u,t):null}function Di(t){let e=t[0],n=t[1],r=t[2],s=t[3],o=t[4],i=t[5],a=t[6],f=t[7],c=t[8];return e*(c*o-i*f)+n*(-c*s+i*a)+r*(f*s-o*a)}function ys(t,e,n){let r=e[0],s=e[1],o=e[2],i=e[3],a=e[4],f=e[5],c=e[6],l=e[7],d=e[8],_=n[0],h=n[1],u=n[2],A=n[3],p=n[4],S=n[5],y=n[6],B=n[7],T=n[8];return t[0]=_*r+h*i+u*c,t[1]=_*s+h*a+u*l,t[2]=_*o+h*f+u*d,t[3]=A*r+p*i+S*c,t[4]=A*s+p*a+S*l,t[5]=A*o+p*f+S*d,t[6]=y*r+B*i+T*c,t[7]=y*s+B*a+T*l,t[8]=y*o+B*f+T*d,t}function Ii(t,e,n){let r=e[0],s=e[1],o=e[2],i=e[3],a=e[4],f=e[5],c=e[6],l=e[7],d=e[8],_=n[0],h=n[1];return t[0]=r,t[1]=s,t[2]=o,t[3]=i,t[4]=a,t[5]=f,t[6]=_*r+h*i+c,t[7]=_*s+h*a+l,t[8]=_*o+h*f+d,t}function vi(t,e,n){let r=e[0],s=e[1],o=e[2],i=e[3],a=e[4],f=e[5],c=e[6],l=e[7],d=e[8],_=Math.sin(n),h=Math.cos(n);return t[0]=h*r+_*i,t[1]=h*s+_*a,t[2]=h*o+_*f,t[3]=h*i-_*r,t[4]=h*a-_*s,t[5]=h*f-_*o,t[6]=c,t[7]=l,t[8]=d,t}function ws(t,e,n){let r=n[0],s=n[1];return t[0]=r*e[0],t[1]=r*e[1],t[2]=r*e[2],t[3]=s*e[3],t[4]=s*e[4],t[5]=s*e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t}function Li(t,e){let n=e[0],r=e[1],s=e[2],o=e[3],i=n+n,a=r+r,f=s+s,c=n*i,l=r*i,d=r*a,_=s*i,h=s*a,u=s*f,A=o*i,p=o*a,S=o*f;return t[0]=1-d-u,t[3]=l-S,t[6]=_+p,t[1]=l+S,t[4]=1-c-u,t[7]=h-A,t[2]=_-p,t[5]=h+A,t[8]=1-c-d,t}var Os;(function(t){t[t.COL0ROW0=0]="COL0ROW0",t[t.COL0ROW1=1]="COL0ROW1",t[t.COL0ROW2=2]="COL0ROW2",t[t.COL1ROW0=3]="COL1ROW0",t[t.COL1ROW1=4]="COL1ROW1",t[t.COL1ROW2=5]="COL1ROW2",t[t.COL2ROW0=6]="COL2ROW0",t[t.COL2ROW1=7]="COL2ROW1",t[t.COL2ROW2=8]="COL2ROW2"})(Os||(Os={}));var K0=Object.freeze([1,0,0,0,1,0,0,0,1]),Y=class extends ke{static get IDENTITY(){return V0()}static get ZERO(){return H0()}get ELEMENTS(){return 9}get RANK(){return 3}get INDICES(){return Os}constructor(e,...n){super(-0,-0,-0,-0,-0,-0,-0,-0,-0),arguments.length===1&&Array.isArray(e)?this.copy(e):n.length>0?this.copy([e,...n]):this.identity()}copy(e){return this[0]=e[0],this[1]=e[1],this[2]=e[2],this[3]=e[3],this[4]=e[4],this[5]=e[5],this[6]=e[6],this[7]=e[7],this[8]=e[8],this.check()}identity(){return this.copy(K0)}fromObject(e){return this.check()}fromQuaternion(e){return Li(this,e),this.check()}set(e,n,r,s,o,i,a,f,c){return this[0]=e,this[1]=n,this[2]=r,this[3]=s,this[4]=o,this[5]=i,this[6]=a,this[7]=f,this[8]=c,this.check()}setRowMajor(e,n,r,s,o,i,a,f,c){return this[0]=e,this[1]=s,this[2]=a,this[3]=n,this[4]=o,this[5]=f,this[6]=r,this[7]=i,this[8]=c,this.check()}determinant(){return Di(this)}transpose(){return Ci(this,this),this.check()}invert(){return Bi(this,this),this.check()}multiplyLeft(e){return ys(this,e,this),this.check()}multiplyRight(e){return ys(this,this,e),this.check()}rotate(e){return vi(this,this,e),this.check()}scale(e){return Array.isArray(e)?ws(this,this,e):ws(this,this,[e,e]),this.check()}translate(e){return Ii(this,this,e),this.check()}transform(e,n){let r;switch(e.length){case 2:r=mi(n||[-0,-0],e,this);break;case 3:r=hn(n||[-0,-0,-0],e,this);break;case 4:r=lr(n||[-0,-0,-0,-0],e,this);break;default:throw new Error("Illegal vector")}return ne(r,e.length),r}transformVector(e,n){return this.transform(e,n)}transformVector2(e,n){return this.transform(e,n)}transformVector3(e,n){return this.transform(e,n)}},pr,mr=null;function H0(){return pr||(pr=new Y([0,0,0,0,0,0,0,0,0]),Object.freeze(pr)),pr}function V0(){return mr||(mr=new Y,Object.freeze(mr)),mr}var un={};or(un,{add:()=>ph,adjoint:()=>Y0,clone:()=>W0,copy:()=>q0,create:()=>X0,decompose:()=>ih,determinant:()=>Bs,equals:()=>gh,exactEquals:()=>xh,frob:()=>uh,fromQuat:()=>Fs,fromQuat2:()=>rh,fromRotation:()=>J0,fromRotationTranslation:()=>Pi,fromRotationTranslationScale:()=>ah,fromRotationTranslationScaleOrigin:()=>ch,fromScaling:()=>$0,fromTranslation:()=>j0,fromValues:()=>Z0,fromXRotation:()=>th,fromYRotation:()=>eh,fromZRotation:()=>nh,frustum:()=>Us,getRotation:()=>oh,getScaling:()=>Fi,getTranslation:()=>sh,identity:()=>Ni,invert:()=>Cs,lookAt:()=>zs,mul:()=>Eh,multiply:()=>dn,multiplyScalar:()=>mh,multiplyScalarAndAdd:()=>Ah,ortho:()=>ks,orthoNO:()=>Gi,orthoZO:()=>hh,perspective:()=>Gs,perspectiveFromFieldOfView:()=>lh,perspectiveNO:()=>Ui,perspectiveZO:()=>fh,rotate:()=>vs,rotateX:()=>Ls,rotateY:()=>Ns,rotateZ:()=>Ps,scale:()=>Is,set:()=>Q0,str:()=>dh,sub:()=>Sh,subtract:()=>ki,targetTo:()=>_h,translate:()=>Ds,transpose:()=>bs});function X0(){let t=new W(16);return W!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=0,t[12]=0,t[13]=0,t[14]=0),t[0]=1,t[5]=1,t[10]=1,t[15]=1,t}function W0(t){let e=new W(16);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}function q0(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}function Z0(t,e,n,r,s,o,i,a,f,c,l,d,_,h,u,A){let p=new W(16);return p[0]=t,p[1]=e,p[2]=n,p[3]=r,p[4]=s,p[5]=o,p[6]=i,p[7]=a,p[8]=f,p[9]=c,p[10]=l,p[11]=d,p[12]=_,p[13]=h,p[14]=u,p[15]=A,p}function Q0(t,e,n,r,s,o,i,a,f,c,l,d,_,h,u,A,p){return t[0]=e,t[1]=n,t[2]=r,t[3]=s,t[4]=o,t[5]=i,t[6]=a,t[7]=f,t[8]=c,t[9]=l,t[10]=d,t[11]=_,t[12]=h,t[13]=u,t[14]=A,t[15]=p,t}function Ni(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function bs(t,e){if(t===e){let n=e[1],r=e[2],s=e[3],o=e[6],i=e[7],a=e[11];t[1]=e[4],t[2]=e[8],t[3]=e[12],t[4]=n,t[6]=e[9],t[7]=e[13],t[8]=r,t[9]=o,t[11]=e[14],t[12]=s,t[13]=i,t[14]=a}else t[0]=e[0],t[1]=e[4],t[2]=e[8],t[3]=e[12],t[4]=e[1],t[5]=e[5],t[6]=e[9],t[7]=e[13],t[8]=e[2],t[9]=e[6],t[10]=e[10],t[11]=e[14],t[12]=e[3],t[13]=e[7],t[14]=e[11],t[15]=e[15];return t}function Cs(t,e){let n=e[0],r=e[1],s=e[2],o=e[3],i=e[4],a=e[5],f=e[6],c=e[7],l=e[8],d=e[9],_=e[10],h=e[11],u=e[12],A=e[13],p=e[14],S=e[15],y=n*a-r*i,B=n*f-s*i,T=n*c-o*i,R=r*f-s*a,D=r*c-o*a,I=s*c-o*f,L=l*A-d*u,x=l*p-_*u,m=l*S-h*u,g=d*p-_*A,E=d*S-h*A,U=_*S-h*p,F=y*U-B*E+T*g+R*m-D*x+I*L;return F?(F=1/F,t[0]=(a*U-f*E+c*g)*F,t[1]=(s*E-r*U-o*g)*F,t[2]=(A*I-p*D+S*R)*F,t[3]=(_*D-d*I-h*R)*F,t[4]=(f*m-i*U-c*x)*F,t[5]=(n*U-s*m+o*x)*F,t[6]=(p*T-u*I-S*B)*F,t[7]=(l*I-_*T+h*B)*F,t[8]=(i*E-a*m+c*L)*F,t[9]=(r*m-n*E-o*L)*F,t[10]=(u*D-A*T+S*y)*F,t[11]=(d*T-l*D-h*y)*F,t[12]=(a*x-i*g-f*L)*F,t[13]=(n*g-r*x+s*L)*F,t[14]=(A*B-u*R-p*y)*F,t[15]=(l*R-d*B+_*y)*F,t):null}function Y0(t,e){let n=e[0],r=e[1],s=e[2],o=e[3],i=e[4],a=e[5],f=e[6],c=e[7],l=e[8],d=e[9],_=e[10],h=e[11],u=e[12],A=e[13],p=e[14],S=e[15],y=n*a-r*i,B=n*f-s*i,T=n*c-o*i,R=r*f-s*a,D=r*c-o*a,I=s*c-o*f,L=l*A-d*u,x=l*p-_*u,m=l*S-h*u,g=d*p-_*A,E=d*S-h*A,U=_*S-h*p;return t[0]=a*U-f*E+c*g,t[1]=s*E-r*U-o*g,t[2]=A*I-p*D+S*R,t[3]=_*D-d*I-h*R,t[4]=f*m-i*U-c*x,t[5]=n*U-s*m+o*x,t[6]=p*T-u*I-S*B,t[7]=l*I-_*T+h*B,t[8]=i*E-a*m+c*L,t[9]=r*m-n*E-o*L,t[10]=u*D-A*T+S*y,t[11]=d*T-l*D-h*y,t[12]=a*x-i*g-f*L,t[13]=n*g-r*x+s*L,t[14]=A*B-u*R-p*y,t[15]=l*R-d*B+_*y,t}function Bs(t){let e=t[0],n=t[1],r=t[2],s=t[3],o=t[4],i=t[5],a=t[6],f=t[7],c=t[8],l=t[9],d=t[10],_=t[11],h=t[12],u=t[13],A=t[14],p=t[15],S=e*i-n*o,y=e*a-r*o,B=n*a-r*i,T=c*u-l*h,R=c*A-d*h,D=l*A-d*u,I=e*D-n*R+r*T,L=o*D-i*R+a*T,x=c*B-l*y+d*S,m=h*B-u*y+A*S;return f*I-s*L+p*x-_*m}function dn(t,e,n){let r=e[0],s=e[1],o=e[2],i=e[3],a=e[4],f=e[5],c=e[6],l=e[7],d=e[8],_=e[9],h=e[10],u=e[11],A=e[12],p=e[13],S=e[14],y=e[15],B=n[0],T=n[1],R=n[2],D=n[3];return t[0]=B*r+T*a+R*d+D*A,t[1]=B*s+T*f+R*_+D*p,t[2]=B*o+T*c+R*h+D*S,t[3]=B*i+T*l+R*u+D*y,B=n[4],T=n[5],R=n[6],D=n[7],t[4]=B*r+T*a+R*d+D*A,t[5]=B*s+T*f+R*_+D*p,t[6]=B*o+T*c+R*h+D*S,t[7]=B*i+T*l+R*u+D*y,B=n[8],T=n[9],R=n[10],D=n[11],t[8]=B*r+T*a+R*d+D*A,t[9]=B*s+T*f+R*_+D*p,t[10]=B*o+T*c+R*h+D*S,t[11]=B*i+T*l+R*u+D*y,B=n[12],T=n[13],R=n[14],D=n[15],t[12]=B*r+T*a+R*d+D*A,t[13]=B*s+T*f+R*_+D*p,t[14]=B*o+T*c+R*h+D*S,t[15]=B*i+T*l+R*u+D*y,t}function Ds(t,e,n){let r=n[0],s=n[1],o=n[2],i,a,f,c,l,d,_,h,u,A,p,S;return e===t?(t[12]=e[0]*r+e[4]*s+e[8]*o+e[12],t[13]=e[1]*r+e[5]*s+e[9]*o+e[13],t[14]=e[2]*r+e[6]*s+e[10]*o+e[14],t[15]=e[3]*r+e[7]*s+e[11]*o+e[15]):(i=e[0],a=e[1],f=e[2],c=e[3],l=e[4],d=e[5],_=e[6],h=e[7],u=e[8],A=e[9],p=e[10],S=e[11],t[0]=i,t[1]=a,t[2]=f,t[3]=c,t[4]=l,t[5]=d,t[6]=_,t[7]=h,t[8]=u,t[9]=A,t[10]=p,t[11]=S,t[12]=i*r+l*s+u*o+e[12],t[13]=a*r+d*s+A*o+e[13],t[14]=f*r+_*s+p*o+e[14],t[15]=c*r+h*s+S*o+e[15]),t}function Is(t,e,n){let r=n[0],s=n[1],o=n[2];return t[0]=e[0]*r,t[1]=e[1]*r,t[2]=e[2]*r,t[3]=e[3]*r,t[4]=e[4]*s,t[5]=e[5]*s,t[6]=e[6]*s,t[7]=e[7]*s,t[8]=e[8]*o,t[9]=e[9]*o,t[10]=e[10]*o,t[11]=e[11]*o,t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}function vs(t,e,n,r){let s=r[0],o=r[1],i=r[2],a=Math.sqrt(s*s+o*o+i*i),f,c,l,d,_,h,u,A,p,S,y,B,T,R,D,I,L,x,m,g,E,U,F,G;return a<1e-6?null:(a=1/a,s*=a,o*=a,i*=a,c=Math.sin(n),f=Math.cos(n),l=1-f,d=e[0],_=e[1],h=e[2],u=e[3],A=e[4],p=e[5],S=e[6],y=e[7],B=e[8],T=e[9],R=e[10],D=e[11],I=s*s*l+f,L=o*s*l+i*c,x=i*s*l-o*c,m=s*o*l-i*c,g=o*o*l+f,E=i*o*l+s*c,U=s*i*l+o*c,F=o*i*l-s*c,G=i*i*l+f,t[0]=d*I+A*L+B*x,t[1]=_*I+p*L+T*x,t[2]=h*I+S*L+R*x,t[3]=u*I+y*L+D*x,t[4]=d*m+A*g+B*E,t[5]=_*m+p*g+T*E,t[6]=h*m+S*g+R*E,t[7]=u*m+y*g+D*E,t[8]=d*U+A*F+B*G,t[9]=_*U+p*F+T*G,t[10]=h*U+S*F+R*G,t[11]=u*U+y*F+D*G,e!==t&&(t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t)}function Ls(t,e,n){let r=Math.sin(n),s=Math.cos(n),o=e[4],i=e[5],a=e[6],f=e[7],c=e[8],l=e[9],d=e[10],_=e[11];return e!==t&&(t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[4]=o*s+c*r,t[5]=i*s+l*r,t[6]=a*s+d*r,t[7]=f*s+_*r,t[8]=c*s-o*r,t[9]=l*s-i*r,t[10]=d*s-a*r,t[11]=_*s-f*r,t}function Ns(t,e,n){let r=Math.sin(n),s=Math.cos(n),o=e[0],i=e[1],a=e[2],f=e[3],c=e[8],l=e[9],d=e[10],_=e[11];return e!==t&&(t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=o*s-c*r,t[1]=i*s-l*r,t[2]=a*s-d*r,t[3]=f*s-_*r,t[8]=o*r+c*s,t[9]=i*r+l*s,t[10]=a*r+d*s,t[11]=f*r+_*s,t}function Ps(t,e,n){let r=Math.sin(n),s=Math.cos(n),o=e[0],i=e[1],a=e[2],f=e[3],c=e[4],l=e[5],d=e[6],_=e[7];return e!==t&&(t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=o*s+c*r,t[1]=i*s+l*r,t[2]=a*s+d*r,t[3]=f*s+_*r,t[4]=c*s-o*r,t[5]=l*s-i*r,t[6]=d*s-a*r,t[7]=_*s-f*r,t}function j0(t,e){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=e[0],t[13]=e[1],t[14]=e[2],t[15]=1,t}function $0(t,e){return t[0]=e[0],t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=e[1],t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=e[2],t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function J0(t,e,n){let r=n[0],s=n[1],o=n[2],i=Math.sqrt(r*r+s*s+o*o),a,f,c;return i<1e-6?null:(i=1/i,r*=i,s*=i,o*=i,f=Math.sin(e),a=Math.cos(e),c=1-a,t[0]=r*r*c+a,t[1]=s*r*c+o*f,t[2]=o*r*c-s*f,t[3]=0,t[4]=r*s*c-o*f,t[5]=s*s*c+a,t[6]=o*s*c+r*f,t[7]=0,t[8]=r*o*c+s*f,t[9]=s*o*c-r*f,t[10]=o*o*c+a,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t)}function th(t,e){let n=Math.sin(e),r=Math.cos(e);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=r,t[6]=n,t[7]=0,t[8]=0,t[9]=-n,t[10]=r,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function eh(t,e){let n=Math.sin(e),r=Math.cos(e);return t[0]=r,t[1]=0,t[2]=-n,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=n,t[9]=0,t[10]=r,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function nh(t,e){let n=Math.sin(e),r=Math.cos(e);return t[0]=r,t[1]=n,t[2]=0,t[3]=0,t[4]=-n,t[5]=r,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function Pi(t,e,n){let r=e[0],s=e[1],o=e[2],i=e[3],a=r+r,f=s+s,c=o+o,l=r*a,d=r*f,_=r*c,h=s*f,u=s*c,A=o*c,p=i*a,S=i*f,y=i*c;return t[0]=1-(h+A),t[1]=d+y,t[2]=_-S,t[3]=0,t[4]=d-y,t[5]=1-(l+A),t[6]=u+p,t[7]=0,t[8]=_+S,t[9]=u-p,t[10]=1-(l+h),t[11]=0,t[12]=n[0],t[13]=n[1],t[14]=n[2],t[15]=1,t}function rh(t,e){let n=new W(3),r=-e[0],s=-e[1],o=-e[2],i=e[3],a=e[4],f=e[5],c=e[6],l=e[7],d=r*r+s*s+o*o+i*i;return d>0?(n[0]=(a*i+l*r+f*o-c*s)*2/d,n[1]=(f*i+l*s+c*r-a*o)*2/d,n[2]=(c*i+l*o+a*s-f*r)*2/d):(n[0]=(a*i+l*r+f*o-c*s)*2,n[1]=(f*i+l*s+c*r-a*o)*2,n[2]=(c*i+l*o+a*s-f*r)*2),Pi(t,e,n),t}function sh(t,e){return t[0]=e[12],t[1]=e[13],t[2]=e[14],t}function Fi(t,e){let n=e[0],r=e[1],s=e[2],o=e[4],i=e[5],a=e[6],f=e[8],c=e[9],l=e[10];return t[0]=Math.sqrt(n*n+r*r+s*s),t[1]=Math.sqrt(o*o+i*i+a*a),t[2]=Math.sqrt(f*f+c*c+l*l),t}function oh(t,e){let n=new W(3);Fi(n,e);let r=1/n[0],s=1/n[1],o=1/n[2],i=e[0]*r,a=e[1]*s,f=e[2]*o,c=e[4]*r,l=e[5]*s,d=e[6]*o,_=e[8]*r,h=e[9]*s,u=e[10]*o,A=i+l+u,p=0;return A>0?(p=Math.sqrt(A+1)*2,t[3]=.25*p,t[0]=(d-h)/p,t[1]=(_-f)/p,t[2]=(a-c)/p):i>l&&i>u?(p=Math.sqrt(1+i-l-u)*2,t[3]=(d-h)/p,t[0]=.25*p,t[1]=(a+c)/p,t[2]=(_+f)/p):l>u?(p=Math.sqrt(1+l-i-u)*2,t[3]=(_-f)/p,t[0]=(a+c)/p,t[1]=.25*p,t[2]=(d+h)/p):(p=Math.sqrt(1+u-i-l)*2,t[3]=(a-c)/p,t[0]=(_+f)/p,t[1]=(d+h)/p,t[2]=.25*p),t}function ih(t,e,n,r){e[0]=r[12],e[1]=r[13],e[2]=r[14];let s=r[0],o=r[1],i=r[2],a=r[4],f=r[5],c=r[6],l=r[8],d=r[9],_=r[10];n[0]=Math.sqrt(s*s+o*o+i*i),n[1]=Math.sqrt(a*a+f*f+c*c),n[2]=Math.sqrt(l*l+d*d+_*_);let h=1/n[0],u=1/n[1],A=1/n[2],p=s*h,S=o*u,y=i*A,B=a*h,T=f*u,R=c*A,D=l*h,I=d*u,L=_*A,x=p+T+L,m=0;return x>0?(m=Math.sqrt(x+1)*2,t[3]=.25*m,t[0]=(R-I)/m,t[1]=(D-y)/m,t[2]=(S-B)/m):p>T&&p>L?(m=Math.sqrt(1+p-T-L)*2,t[3]=(R-I)/m,t[0]=.25*m,t[1]=(S+B)/m,t[2]=(D+y)/m):T>L?(m=Math.sqrt(1+T-p-L)*2,t[3]=(D-y)/m,t[0]=(S+B)/m,t[1]=.25*m,t[2]=(R+I)/m):(m=Math.sqrt(1+L-p-T)*2,t[3]=(S-B)/m,t[0]=(D+y)/m,t[1]=(R+I)/m,t[2]=.25*m),t}function ah(t,e,n,r){let s=e[0],o=e[1],i=e[2],a=e[3],f=s+s,c=o+o,l=i+i,d=s*f,_=s*c,h=s*l,u=o*c,A=o*l,p=i*l,S=a*f,y=a*c,B=a*l,T=r[0],R=r[1],D=r[2];return t[0]=(1-(u+p))*T,t[1]=(_+B)*T,t[2]=(h-y)*T,t[3]=0,t[4]=(_-B)*R,t[5]=(1-(d+p))*R,t[6]=(A+S)*R,t[7]=0,t[8]=(h+y)*D,t[9]=(A-S)*D,t[10]=(1-(d+u))*D,t[11]=0,t[12]=n[0],t[13]=n[1],t[14]=n[2],t[15]=1,t}function ch(t,e,n,r,s){let o=e[0],i=e[1],a=e[2],f=e[3],c=o+o,l=i+i,d=a+a,_=o*c,h=o*l,u=o*d,A=i*l,p=i*d,S=a*d,y=f*c,B=f*l,T=f*d,R=r[0],D=r[1],I=r[2],L=s[0],x=s[1],m=s[2],g=(1-(A+S))*R,E=(h+T)*R,U=(u-B)*R,F=(h-T)*D,G=(1-(_+S))*D,N=(p+y)*D,j=(u+B)*I,rt=(p-y)*I,V=(1-(_+A))*I;return t[0]=g,t[1]=E,t[2]=U,t[3]=0,t[4]=F,t[5]=G,t[6]=N,t[7]=0,t[8]=j,t[9]=rt,t[10]=V,t[11]=0,t[12]=n[0]+L-(g*L+F*x+j*m),t[13]=n[1]+x-(E*L+G*x+rt*m),t[14]=n[2]+m-(U*L+N*x+V*m),t[15]=1,t}function Fs(t,e){let n=e[0],r=e[1],s=e[2],o=e[3],i=n+n,a=r+r,f=s+s,c=n*i,l=r*i,d=r*a,_=s*i,h=s*a,u=s*f,A=o*i,p=o*a,S=o*f;return t[0]=1-d-u,t[1]=l+S,t[2]=_-p,t[3]=0,t[4]=l-S,t[5]=1-c-u,t[6]=h+A,t[7]=0,t[8]=_+p,t[9]=h-A,t[10]=1-c-d,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function Us(t,e,n,r,s,o,i){let a=1/(n-e),f=1/(s-r),c=1/(o-i);return t[0]=o*2*a,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=o*2*f,t[6]=0,t[7]=0,t[8]=(n+e)*a,t[9]=(s+r)*f,t[10]=(i+o)*c,t[11]=-1,t[12]=0,t[13]=0,t[14]=i*o*2*c,t[15]=0,t}function Ui(t,e,n,r,s){let o=1/Math.tan(e/2);if(t[0]=o/n,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=o,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=-1,t[12]=0,t[13]=0,t[15]=0,s!=null&&s!==1/0){let i=1/(r-s);t[10]=(s+r)*i,t[14]=2*s*r*i}else t[10]=-1,t[14]=-2*r;return t}var Gs=Ui;function fh(t,e,n,r,s){let o=1/Math.tan(e/2);if(t[0]=o/n,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=o,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=-1,t[12]=0,t[13]=0,t[15]=0,s!=null&&s!==1/0){let i=1/(r-s);t[10]=s*i,t[14]=s*r*i}else t[10]=-1,t[14]=-r;return t}function lh(t,e,n,r){let s=Math.tan(e.upDegrees*Math.PI/180),o=Math.tan(e.downDegrees*Math.PI/180),i=Math.tan(e.leftDegrees*Math.PI/180),a=Math.tan(e.rightDegrees*Math.PI/180),f=2/(i+a),c=2/(s+o);return t[0]=f,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=c,t[6]=0,t[7]=0,t[8]=-((i-a)*f*.5),t[9]=(s-o)*c*.5,t[10]=r/(n-r),t[11]=-1,t[12]=0,t[13]=0,t[14]=r*n/(n-r),t[15]=0,t}function Gi(t,e,n,r,s,o,i){let a=1/(e-n),f=1/(r-s),c=1/(o-i);return t[0]=-2*a,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*f,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*c,t[11]=0,t[12]=(e+n)*a,t[13]=(s+r)*f,t[14]=(i+o)*c,t[15]=1,t}var ks=Gi;function hh(t,e,n,r,s,o,i){let a=1/(e-n),f=1/(r-s),c=1/(o-i);return t[0]=-2*a,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*f,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=c,t[11]=0,t[12]=(e+n)*a,t[13]=(s+r)*f,t[14]=o*c,t[15]=1,t}function zs(t,e,n,r){let s,o,i,a,f,c,l,d,_,h,u=e[0],A=e[1],p=e[2],S=r[0],y=r[1],B=r[2],T=n[0],R=n[1],D=n[2];return Math.abs(u-T)<1e-6&&Math.abs(A-R)<1e-6&&Math.abs(p-D)<1e-6?Ni(t):(d=u-T,_=A-R,h=p-D,s=1/Math.sqrt(d*d+_*_+h*h),d*=s,_*=s,h*=s,o=y*h-B*_,i=B*d-S*h,a=S*_-y*d,s=Math.sqrt(o*o+i*i+a*a),s?(s=1/s,o*=s,i*=s,a*=s):(o=0,i=0,a=0),f=_*a-h*i,c=h*o-d*a,l=d*i-_*o,s=Math.sqrt(f*f+c*c+l*l),s?(s=1/s,f*=s,c*=s,l*=s):(f=0,c=0,l=0),t[0]=o,t[1]=f,t[2]=d,t[3]=0,t[4]=i,t[5]=c,t[6]=_,t[7]=0,t[8]=a,t[9]=l,t[10]=h,t[11]=0,t[12]=-(o*u+i*A+a*p),t[13]=-(f*u+c*A+l*p),t[14]=-(d*u+_*A+h*p),t[15]=1,t)}function _h(t,e,n,r){let s=e[0],o=e[1],i=e[2],a=r[0],f=r[1],c=r[2],l=s-n[0],d=o-n[1],_=i-n[2],h=l*l+d*d+_*_;h>0&&(h=1/Math.sqrt(h),l*=h,d*=h,_*=h);let u=f*_-c*d,A=c*l-a*_,p=a*d-f*l;return h=u*u+A*A+p*p,h>0&&(h=1/Math.sqrt(h),u*=h,A*=h,p*=h),t[0]=u,t[1]=A,t[2]=p,t[3]=0,t[4]=d*p-_*A,t[5]=_*u-l*p,t[6]=l*A-d*u,t[7]=0,t[8]=l,t[9]=d,t[10]=_,t[11]=0,t[12]=s,t[13]=o,t[14]=i,t[15]=1,t}function dh(t){return`mat4(${t[0]}, ${t[1]}, ${t[2]}, ${t[3]}, ${t[4]}, ${t[5]}, ${t[6]}, ${t[7]}, ${t[8]}, ${t[9]}, ${t[10]}, ${t[11]}, ${t[12]}, ${t[13]}, ${t[14]}, ${t[15]})`}function uh(t){return Math.sqrt(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]+t[3]*t[3]+t[4]*t[4]+t[5]*t[5]+t[6]*t[6]+t[7]*t[7]+t[8]*t[8]+t[9]*t[9]+t[10]*t[10]+t[11]*t[11]+t[12]*t[12]+t[13]*t[13]+t[14]*t[14]+t[15]*t[15])}function ph(t,e,n){return t[0]=e[0]+n[0],t[1]=e[1]+n[1],t[2]=e[2]+n[2],t[3]=e[3]+n[3],t[4]=e[4]+n[4],t[5]=e[5]+n[5],t[6]=e[6]+n[6],t[7]=e[7]+n[7],t[8]=e[8]+n[8],t[9]=e[9]+n[9],t[10]=e[10]+n[10],t[11]=e[11]+n[11],t[12]=e[12]+n[12],t[13]=e[13]+n[13],t[14]=e[14]+n[14],t[15]=e[15]+n[15],t}function ki(t,e,n){return t[0]=e[0]-n[0],t[1]=e[1]-n[1],t[2]=e[2]-n[2],t[3]=e[3]-n[3],t[4]=e[4]-n[4],t[5]=e[5]-n[5],t[6]=e[6]-n[6],t[7]=e[7]-n[7],t[8]=e[8]-n[8],t[9]=e[9]-n[9],t[10]=e[10]-n[10],t[11]=e[11]-n[11],t[12]=e[12]-n[12],t[13]=e[13]-n[13],t[14]=e[14]-n[14],t[15]=e[15]-n[15],t}function mh(t,e,n){return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t[3]=e[3]*n,t[4]=e[4]*n,t[5]=e[5]*n,t[6]=e[6]*n,t[7]=e[7]*n,t[8]=e[8]*n,t[9]=e[9]*n,t[10]=e[10]*n,t[11]=e[11]*n,t[12]=e[12]*n,t[13]=e[13]*n,t[14]=e[14]*n,t[15]=e[15]*n,t}function Ah(t,e,n,r){return t[0]=e[0]+n[0]*r,t[1]=e[1]+n[1]*r,t[2]=e[2]+n[2]*r,t[3]=e[3]+n[3]*r,t[4]=e[4]+n[4]*r,t[5]=e[5]+n[5]*r,t[6]=e[6]+n[6]*r,t[7]=e[7]+n[7]*r,t[8]=e[8]+n[8]*r,t[9]=e[9]+n[9]*r,t[10]=e[10]+n[10]*r,t[11]=e[11]+n[11]*r,t[12]=e[12]+n[12]*r,t[13]=e[13]+n[13]*r,t[14]=e[14]+n[14]*r,t[15]=e[15]+n[15]*r,t}function xh(t,e){return t[0]===e[0]&&t[1]===e[1]&&t[2]===e[2]&&t[3]===e[3]&&t[4]===e[4]&&t[5]===e[5]&&t[6]===e[6]&&t[7]===e[7]&&t[8]===e[8]&&t[9]===e[9]&&t[10]===e[10]&&t[11]===e[11]&&t[12]===e[12]&&t[13]===e[13]&&t[14]===e[14]&&t[15]===e[15]}function gh(t,e){let n=t[0],r=t[1],s=t[2],o=t[3],i=t[4],a=t[5],f=t[6],c=t[7],l=t[8],d=t[9],_=t[10],h=t[11],u=t[12],A=t[13],p=t[14],S=t[15],y=e[0],B=e[1],T=e[2],R=e[3],D=e[4],I=e[5],L=e[6],x=e[7],m=e[8],g=e[9],E=e[10],U=e[11],F=e[12],G=e[13],N=e[14],j=e[15];return Math.abs(n-y)<=1e-6*Math.max(1,Math.abs(n),Math.abs(y))&&Math.abs(r-B)<=1e-6*Math.max(1,Math.abs(r),Math.abs(B))&&Math.abs(s-T)<=1e-6*Math.max(1,Math.abs(s),Math.abs(T))&&Math.abs(o-R)<=1e-6*Math.max(1,Math.abs(o),Math.abs(R))&&Math.abs(i-D)<=1e-6*Math.max(1,Math.abs(i),Math.abs(D))&&Math.abs(a-I)<=1e-6*Math.max(1,Math.abs(a),Math.abs(I))&&Math.abs(f-L)<=1e-6*Math.max(1,Math.abs(f),Math.abs(L))&&Math.abs(c-x)<=1e-6*Math.max(1,Math.abs(c),Math.abs(x))&&Math.abs(l-m)<=1e-6*Math.max(1,Math.abs(l),Math.abs(m))&&Math.abs(d-g)<=1e-6*Math.max(1,Math.abs(d),Math.abs(g))&&Math.abs(_-E)<=1e-6*Math.max(1,Math.abs(_),Math.abs(E))&&Math.abs(h-U)<=1e-6*Math.max(1,Math.abs(h),Math.abs(U))&&Math.abs(u-F)<=1e-6*Math.max(1,Math.abs(u),Math.abs(F))&&Math.abs(A-G)<=1e-6*Math.max(1,Math.abs(A),Math.abs(G))&&Math.abs(p-N)<=1e-6*Math.max(1,Math.abs(p),Math.abs(N))&&Math.abs(S-j)<=1e-6*Math.max(1,Math.abs(S),Math.abs(j))}var Eh=dn,Sh=ki;function Rh(){let t=new W(4);return W!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0,t[3]=0),t}function zi(t,e,n){return t[0]=e[0]+n[0],t[1]=e[1]+n[1],t[2]=e[2]+n[2],t[3]=e[3]+n[3],t}function Ki(t,e,n){return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t[3]=e[3]*n,t}function Hi(t){let e=t[0],n=t[1],r=t[2],s=t[3];return Math.sqrt(e*e+n*n+r*r+s*s)}function Vi(t){let e=t[0],n=t[1],r=t[2],s=t[3];return e*e+n*n+r*r+s*s}function Xi(t,e){let n=e[0],r=e[1],s=e[2],o=e[3],i=n*n+r*r+s*s+o*o;return i>0&&(i=1/Math.sqrt(i)),t[0]=n*i,t[1]=r*i,t[2]=s*i,t[3]=o*i,t}function Wi(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]+t[3]*e[3]}function qi(t,e,n,r){let s=e[0],o=e[1],i=e[2],a=e[3];return t[0]=s+r*(n[0]-s),t[1]=o+r*(n[1]-o),t[2]=i+r*(n[2]-i),t[3]=a+r*(n[3]-a),t}function Zi(t,e,n){let r=e[0],s=e[1],o=e[2],i=e[3];return t[0]=n[0]*r+n[4]*s+n[8]*o+n[12]*i,t[1]=n[1]*r+n[5]*s+n[9]*o+n[13]*i,t[2]=n[2]*r+n[6]*s+n[10]*o+n[14]*i,t[3]=n[3]*r+n[7]*s+n[11]*o+n[15]*i,t}function Qi(t,e,n){let r=e[0],s=e[1],o=e[2],i=n[0],a=n[1],f=n[2],c=n[3],l=c*r+a*o-f*s,d=c*s+f*r-i*o,_=c*o+i*s-a*r,h=-i*r-a*s-f*o;return t[0]=l*c+h*-i+d*-f-_*-a,t[1]=d*c+h*-a+_*-i-l*-f,t[2]=_*c+h*-f+l*-a-d*-i,t[3]=e[3],t}var jA=function(){let t=Rh();return function(e,n,r,s,o,i){let a,f;for(n||(n=4),r||(r=0),s?f=Math.min(s*n+r,e.length):f=e.length,a=r;a<f;a+=n)t[0]=e[a],t[1]=e[a+1],t[2]=e[a+2],t[3]=e[a+3],o(t,t,i),e[a]=t[0],e[a+1]=t[1],e[a+2]=t[2],e[a+3]=t[3];return e}}();var Vs;(function(t){t[t.COL0ROW0=0]="COL0ROW0",t[t.COL0ROW1=1]="COL0ROW1",t[t.COL0ROW2=2]="COL0ROW2",t[t.COL0ROW3=3]="COL0ROW3",t[t.COL1ROW0=4]="COL1ROW0",t[t.COL1ROW1=5]="COL1ROW1",t[t.COL1ROW2=6]="COL1ROW2",t[t.COL1ROW3=7]="COL1ROW3",t[t.COL2ROW0=8]="COL2ROW0",t[t.COL2ROW1=9]="COL2ROW1",t[t.COL2ROW2=10]="COL2ROW2",t[t.COL2ROW3=11]="COL2ROW3",t[t.COL3ROW0=12]="COL3ROW0",t[t.COL3ROW1=13]="COL3ROW1",t[t.COL3ROW2=14]="COL3ROW2",t[t.COL3ROW3=15]="COL3ROW3"})(Vs||(Vs={}));var Mh=45*Math.PI/180,yh=1,Ks=.1,Hs=500,wh=Object.freeze([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),dt=class extends ke{static get IDENTITY(){return bh()}static get ZERO(){return Oh()}get ELEMENTS(){return 16}get RANK(){return 4}get INDICES(){return Vs}constructor(e){super(-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0),arguments.length===1&&Array.isArray(e)?this.copy(e):this.identity()}copy(e){return this[0]=e[0],this[1]=e[1],this[2]=e[2],this[3]=e[3],this[4]=e[4],this[5]=e[5],this[6]=e[6],this[7]=e[7],this[8]=e[8],this[9]=e[9],this[10]=e[10],this[11]=e[11],this[12]=e[12],this[13]=e[13],this[14]=e[14],this[15]=e[15],this.check()}set(e,n,r,s,o,i,a,f,c,l,d,_,h,u,A,p){return this[0]=e,this[1]=n,this[2]=r,this[3]=s,this[4]=o,this[5]=i,this[6]=a,this[7]=f,this[8]=c,this[9]=l,this[10]=d,this[11]=_,this[12]=h,this[13]=u,this[14]=A,this[15]=p,this.check()}setRowMajor(e,n,r,s,o,i,a,f,c,l,d,_,h,u,A,p){return this[0]=e,this[1]=o,this[2]=c,this[3]=h,this[4]=n,this[5]=i,this[6]=l,this[7]=u,this[8]=r,this[9]=a,this[10]=d,this[11]=A,this[12]=s,this[13]=f,this[14]=_,this[15]=p,this.check()}toRowMajor(e){return e[0]=this[0],e[1]=this[4],e[2]=this[8],e[3]=this[12],e[4]=this[1],e[5]=this[5],e[6]=this[9],e[7]=this[13],e[8]=this[2],e[9]=this[6],e[10]=this[10],e[11]=this[14],e[12]=this[3],e[13]=this[7],e[14]=this[11],e[15]=this[15],e}identity(){return this.copy(wh)}fromObject(e){return this.check()}fromQuaternion(e){return Fs(this,e),this.check()}frustum(e){let{left:n,right:r,bottom:s,top:o,near:i=Ks,far:a=Hs}=e;return a===1/0?Ch(this,n,r,s,o,i):Us(this,n,r,s,o,i,a),this.check()}lookAt(e){let{eye:n,center:r=[0,0,0],up:s=[0,1,0]}=e;return zs(this,n,r,s),this.check()}ortho(e){let{left:n,right:r,bottom:s,top:o,near:i=Ks,far:a=Hs}=e;return ks(this,n,r,s,o,i,a),this.check()}orthographic(e){let{fovy:n=Mh,aspect:r=yh,focalDistance:s=1,near:o=Ks,far:i=Hs}=e;Yi(n);let a=n/2,f=s*Math.tan(a),c=f*r;return this.ortho({left:-c,right:c,bottom:-f,top:f,near:o,far:i})}perspective(e){let{fovy:n=45*Math.PI/180,aspect:r=1,near:s=.1,far:o=500}=e;return Yi(n),Gs(this,n,r,s,o),this.check()}determinant(){return Bs(this)}getScale(e=[-0,-0,-0]){return e[0]=Math.sqrt(this[0]*this[0]+this[1]*this[1]+this[2]*this[2]),e[1]=Math.sqrt(this[4]*this[4]+this[5]*this[5]+this[6]*this[6]),e[2]=Math.sqrt(this[8]*this[8]+this[9]*this[9]+this[10]*this[10]),e}getTranslation(e=[-0,-0,-0]){return e[0]=this[12],e[1]=this[13],e[2]=this[14],e}getRotation(e,n){e=e||[-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0],n=n||[-0,-0,-0];let r=this.getScale(n),s=1/r[0],o=1/r[1],i=1/r[2];return e[0]=this[0]*s,e[1]=this[1]*o,e[2]=this[2]*i,e[3]=0,e[4]=this[4]*s,e[5]=this[5]*o,e[6]=this[6]*i,e[7]=0,e[8]=this[8]*s,e[9]=this[9]*o,e[10]=this[10]*i,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}getRotationMatrix3(e,n){e=e||[-0,-0,-0,-0,-0,-0,-0,-0,-0],n=n||[-0,-0,-0];let r=this.getScale(n),s=1/r[0],o=1/r[1],i=1/r[2];return e[0]=this[0]*s,e[1]=this[1]*o,e[2]=this[2]*i,e[3]=this[4]*s,e[4]=this[5]*o,e[5]=this[6]*i,e[6]=this[8]*s,e[7]=this[9]*o,e[8]=this[10]*i,e}transpose(){return bs(this,this),this.check()}invert(){return Cs(this,this),this.check()}multiplyLeft(e){return dn(this,e,this),this.check()}multiplyRight(e){return dn(this,this,e),this.check()}rotateX(e){return Ls(this,this,e),this.check()}rotateY(e){return Ns(this,this,e),this.check()}rotateZ(e){return Ps(this,this,e),this.check()}rotateXYZ(e){return this.rotateX(e[0]).rotateY(e[1]).rotateZ(e[2])}rotateAxis(e,n){return vs(this,this,e,n),this.check()}scale(e){return Is(this,this,Array.isArray(e)?e:[e,e,e]),this.check()}translate(e){return Ds(this,this,e),this.check()}transform(e,n){return e.length===4?(n=Zi(n||[-0,-0,-0,-0],e,this),ne(n,4),n):this.transformAsPoint(e,n)}transformAsPoint(e,n){let{length:r}=e,s;switch(r){case 2:s=Ai(n||[-0,-0],e,this);break;case 3:s=ue(n||[-0,-0,-0],e,this);break;default:throw new Error("Illegal vector")}return ne(s,e.length),s}transformAsVector(e,n){let r;switch(e.length){case 2:r=xi(n||[-0,-0],e,this);break;case 3:r=fr(n||[-0,-0,-0],e,this);break;default:throw new Error("Illegal vector")}return ne(r,e.length),r}transformPoint(e,n){return this.transformAsPoint(e,n)}transformVector(e,n){return this.transformAsPoint(e,n)}transformDirection(e,n){return this.transformAsVector(e,n)}makeRotationX(e){return this.identity().rotateX(e)}makeTranslation(e,n,r){return this.identity().translate([e,n,r])}},Ar,xr;function Oh(){return Ar||(Ar=new dt([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]),Object.freeze(Ar)),Ar}function bh(){return xr||(xr=new dt,Object.freeze(xr)),xr}function Yi(t){if(t>Math.PI*2)throw Error("expected radians")}function Ch(t,e,n,r,s,o){let i=2*o/(n-e),a=2*o/(s-r),f=(n+e)/(n-e),c=(s+r)/(s-r),l=-1,d=-1,_=-2*o;return t[0]=i,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=a,t[6]=0,t[7]=0,t[8]=f,t[9]=c,t[10]=l,t[11]=d,t[12]=0,t[13]=0,t[14]=_,t[15]=0,t}function ji(){let t=new W(4);return W!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0),t[3]=1,t}function $i(t){return t[0]=0,t[1]=0,t[2]=0,t[3]=1,t}function Xs(t,e,n){n=n*.5;let r=Math.sin(n);return t[0]=r*e[0],t[1]=r*e[1],t[2]=r*e[2],t[3]=Math.cos(n),t}function Ws(t,e,n){let r=e[0],s=e[1],o=e[2],i=e[3],a=n[0],f=n[1],c=n[2],l=n[3];return t[0]=r*l+i*a+s*c-o*f,t[1]=s*l+i*f+o*a-r*c,t[2]=o*l+i*c+r*f-s*a,t[3]=i*l-r*a-s*f-o*c,t}function Ji(t,e,n){n*=.5;let r=e[0],s=e[1],o=e[2],i=e[3],a=Math.sin(n),f=Math.cos(n);return t[0]=r*f+i*a,t[1]=s*f+o*a,t[2]=o*f-s*a,t[3]=i*f-r*a,t}function ta(t,e,n){n*=.5;let r=e[0],s=e[1],o=e[2],i=e[3],a=Math.sin(n),f=Math.cos(n);return t[0]=r*f-o*a,t[1]=s*f+i*a,t[2]=o*f+r*a,t[3]=i*f-s*a,t}function ea(t,e,n){n*=.5;let r=e[0],s=e[1],o=e[2],i=e[3],a=Math.sin(n),f=Math.cos(n);return t[0]=r*f+s*a,t[1]=s*f-r*a,t[2]=o*f+i*a,t[3]=i*f-o*a,t}function na(t,e){let n=e[0],r=e[1],s=e[2];return t[0]=n,t[1]=r,t[2]=s,t[3]=Math.sqrt(Math.abs(1-n*n-r*r-s*s)),t}function pn(t,e,n,r){let s=e[0],o=e[1],i=e[2],a=e[3],f=n[0],c=n[1],l=n[2],d=n[3],_,h,u,A,p;return _=s*f+o*c+i*l+a*d,_<0&&(_=-_,f=-f,c=-c,l=-l,d=-d),1-_>1e-6?(h=Math.acos(_),p=Math.sin(h),u=Math.sin((1-r)*h)/p,A=Math.sin(r*h)/p):(u=1-r,A=r),t[0]=u*s+A*f,t[1]=u*o+A*c,t[2]=u*i+A*l,t[3]=u*a+A*d,t}function ra(t,e){let n=e[0],r=e[1],s=e[2],o=e[3],i=n*n+r*r+s*s+o*o,a=i?1/i:0;return t[0]=-n*a,t[1]=-r*a,t[2]=-s*a,t[3]=o*a,t}function sa(t,e){return t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t[3]=e[3],t}function qs(t,e){let n=e[0]+e[4]+e[8],r;if(n>0)r=Math.sqrt(n+1),t[3]=.5*r,r=.5/r,t[0]=(e[5]-e[7])*r,t[1]=(e[6]-e[2])*r,t[2]=(e[1]-e[3])*r;else{let s=0;e[4]>e[0]&&(s=1),e[8]>e[s*3+s]&&(s=2);let o=(s+1)%3,i=(s+2)%3;r=Math.sqrt(e[s*3+s]-e[o*3+o]-e[i*3+i]+1),t[s]=.5*r,r=.5/r,t[3]=(e[o*3+i]-e[i*3+o])*r,t[o]=(e[o*3+s]+e[s*3+o])*r,t[i]=(e[i*3+s]+e[s*3+i])*r}return t}var oa=zi;var ia=Ki,aa=Wi,ca=qi,fa=Hi;var la=Vi;var ha=Xi;var _a=function(){let t=hr(),e=_r(1,0,0),n=_r(0,1,0);return function(r,s,o){let i=ln(s,o);return i<-.999999?(de(t,e,s),Ts(t)<1e-6&&de(t,n,s),xs(t,t),Xs(r,t,Math.PI),r):i>.999999?(r[0]=0,r[1]=0,r[2]=0,r[3]=1,r):(de(t,s,o),r[0]=t[0],r[1]=t[1],r[2]=t[2],r[3]=1+i,ha(r,r))}}(),hx=function(){let t=ji(),e=ji();return function(n,r,s,o,i,a){return pn(t,r,i,a),pn(e,s,o,a),pn(n,t,e,2*a*(1-a)),n}}(),_x=function(){let t=bi();return function(e,n,r,s){return t[0]=r[0],t[3]=r[1],t[6]=r[2],t[1]=s[0],t[4]=s[1],t[7]=s[2],t[2]=-n[0],t[5]=-n[1],t[8]=-n[2],ha(e,qs(e,t))}}();var Bh=[0,0,0,1],ze=class extends ee{constructor(e=0,n=0,r=0,s=1){super(-0,-0,-0,-0),Array.isArray(e)&&arguments.length===1?this.copy(e):this.set(e,n,r,s)}copy(e){return this[0]=e[0],this[1]=e[1],this[2]=e[2],this[3]=e[3],this.check()}set(e,n,r,s){return this[0]=e,this[1]=n,this[2]=r,this[3]=s,this.check()}fromObject(e){return this[0]=e.x,this[1]=e.y,this[2]=e.z,this[3]=e.w,this.check()}fromMatrix3(e){return qs(this,e),this.check()}fromAxisRotation(e,n){return Xs(this,e,n),this.check()}identity(){return $i(this),this.check()}setAxisAngle(e,n){return this.fromAxisRotation(e,n)}get ELEMENTS(){return 4}get x(){return this[0]}set x(e){this[0]=z(e)}get y(){return this[1]}set y(e){this[1]=z(e)}get z(){return this[2]}set z(e){this[2]=z(e)}get w(){return this[3]}set w(e){this[3]=z(e)}len(){return fa(this)}lengthSquared(){return la(this)}dot(e){return aa(this,e)}rotationTo(e,n){return _a(this,e,n),this.check()}add(e){return oa(this,this,e),this.check()}calculateW(){return na(this,this),this.check()}conjugate(){return sa(this,this),this.check()}invert(){return ra(this,this),this.check()}lerp(e,n,r){return r===void 0?this.lerp(this,e,n):(ca(this,e,n,r),this.check())}multiplyRight(e){return Ws(this,this,e),this.check()}multiplyLeft(e){return Ws(this,e,this),this.check()}normalize(){let e=this.len(),n=e>0?1/e:0;return this[0]=this[0]*n,this[1]=this[1]*n,this[2]=this[2]*n,this[3]=this[3]*n,e===0&&(this[3]=1),this.check()}rotateX(e){return Ji(this,this,e),this.check()}rotateY(e){return ta(this,this,e),this.check()}rotateZ(e){return ea(this,this,e),this.check()}scale(e){return ia(this,this,e),this.check()}slerp(e,n,r){let s,o,i;switch(arguments.length){case 1:({start:s=Bh,target:o,ratio:i}=e);break;case 2:s=this,o=e,i=n;break;default:s=e,o=n,i=r}return pn(this,s,o,i),this.check()}transformVector4(e,n=new Ge){return Qi(n,e,this),ne(n,4)}lengthSq(){return this.lengthSquared()}setFromAxisAngle(e,n){return this.setAxisAngle(e,n)}premultiply(e){return this.multiplyLeft(e)}multiply(e){return this.multiplyRight(e)}};var Vt={};or(Vt,{EPSILON1:()=>Dh,EPSILON10:()=>kh,EPSILON11:()=>zh,EPSILON12:()=>Kh,EPSILON13:()=>Hh,EPSILON14:()=>Vh,EPSILON15:()=>Xh,EPSILON16:()=>Wh,EPSILON17:()=>qh,EPSILON18:()=>Zh,EPSILON19:()=>Qh,EPSILON2:()=>Ih,EPSILON20:()=>Yh,EPSILON3:()=>vh,EPSILON4:()=>Lh,EPSILON5:()=>Nh,EPSILON6:()=>Ph,EPSILON7:()=>Fh,EPSILON8:()=>Uh,EPSILON9:()=>Gh,PI_OVER_FOUR:()=>$h,PI_OVER_SIX:()=>Jh,PI_OVER_TWO:()=>jh,TWO_PI:()=>t1});var Dh=.1,Ih=.01,vh=.001,Lh=1e-4,Nh=1e-5,Ph=1e-6,Fh=1e-7,Uh=1e-8,Gh=1e-9,kh=1e-10,zh=1e-11,Kh=1e-12,Hh=1e-13,Vh=1e-14,Xh=1e-15,Wh=1e-16,qh=1e-17,Zh=1e-18,Qh=1e-19,Yh=1e-20,jh=Math.PI/2,$h=Math.PI/4,Jh=Math.PI/6,t1=Math.PI*2;function Zs(t){switch(t){case"UInt8":return Uint8Array;case"UInt16":return Uint16Array;case"UInt32":return Uint32Array;case"Float32":return Float32Array;case"UInt64":return Float64Array;default:throw new Error(`parse i3s tile content: unknown type of data: ${t}`)}}var da={UInt8:he.UNSIGNED_BYTE,UInt16:he.UNSIGNED_SHORT,Float32:he.FLOAT,UInt32:he.UNSIGNED_INT,UInt64:he.DOUBLE};function Ke(t){switch(t){case"UInt8":return 1;case"UInt16":case"Int16":return 2;case"UInt32":case"Int32":case"Float32":return 4;case"UInt64":case"Int64":case"Float64":return 8;default:throw new Error(`parse i3s tile content: unknown size of data: ${t}`)}}var ua="String",pa="Oid32",ma="Float64",Aa="Int16",Lt;(function(t){t[t.DEFAULT=-1]="DEFAULT",t[t.LNGLAT=1]="LNGLAT",t[t.METER_OFFSETS=2]="METER_OFFSETS",t[t.LNGLAT_OFFSETS=3]="LNGLAT_OFFSETS",t[t.CARTESIAN=0]="CARTESIAN"})(Lt||(Lt={}));var Tc=Ct(Ht(),1);var yn=Ct(Ht(),1);var Xt=6356752314245179e-9,e1={radii:[6378137,6378137,Xt],radiiSquared:[6378137*6378137,6378137*6378137,Xt*Xt],oneOverRadii:[1/6378137,1/6378137,1/Xt],oneOverRadiiSquared:[1/(6378137*6378137),1/(6378137*6378137),1/(Xt*Xt)],maximumRadius:Math.max(6378137,6378137,Xt),centerToleranceSquared:.1};function gr(t){return t}var Wx=new v;function n1(t,e=[],n=gr){return"longitude"in t?(e[0]=n(t.longitude),e[1]=n(t.latitude),e[2]=t.height):"x"in t?(e[0]=n(t.x),e[1]=n(t.y),e[2]=t.z):(e[0]=n(t[0]),e[1]=n(t[1]),e[2]=t[2]),e}function xa(t,e=[]){return n1(t,e,X._cartographicRadians?gr:ms)}function r1(t,e,n=gr){return"longitude"in e?(e.longitude=n(t[0]),e.latitude=n(t[1]),e.height=t[2]):"x"in e?(e.x=n(t[0]),e.y=n(t[1]),e.z=t[2]):(e[0]=n(t[0]),e[1]=n(t[1]),e[2]=t[2]),e}function ga(t,e){return r1(t,e,X._cartographicRadians?gr:As)}var Ea=1e-14,s1=new v,Sa={up:{south:"east",north:"west",west:"south",east:"north"},down:{south:"west",north:"east",west:"north",east:"south"},south:{up:"west",down:"east",west:"down",east:"up"},north:{up:"east",down:"west",west:"up",east:"down"},west:{up:"north",down:"south",north:"down",south:"up"},east:{up:"south",down:"north",north:"up",south:"down"}},Qs={north:[-1,0,0],east:[0,1,0],up:[0,0,1],south:[1,0,0],west:[0,-1,0],down:[0,0,-1]},mn={east:new v,north:new v,up:new v,west:new v,south:new v,down:new v},o1=new v,i1=new v,a1=new v;function Ys(t,e,n,r,s,o){let i=Sa[e]&&Sa[e][n];tt(i&&(!r||r===i));let a,f,c,l=s1.copy(s);if(_t(l.x,0,Ea)&&_t(l.y,0,Ea)){let _=Math.sign(l.z);a=o1.fromArray(Qs[e]),e!=="east"&&e!=="west"&&a.scale(_),f=i1.fromArray(Qs[n]),n!=="east"&&n!=="west"&&f.scale(_),c=a1.fromArray(Qs[r]),r!=="east"&&r!=="west"&&c.scale(_)}else{let{up:_,east:h,north:u}=mn;h.set(-l.y,l.x,0).normalize(),t.geodeticSurfaceNormal(l,_),u.copy(_).cross(h);let{down:A,west:p,south:S}=mn;A.copy(_).scale(-1),p.copy(h).scale(-1),S.copy(u).scale(-1),a=mn[e],f=mn[n],c=mn[r]}return o[0]=a.x,o[1]=a.y,o[2]=a.z,o[3]=0,o[4]=f.x,o[5]=f.y,o[6]=f.z,o[7]=0,o[8]=c.x,o[9]=c.y,o[10]=c.z,o[11]=0,o[12]=l.x,o[13]=l.y,o[14]=l.z,o[15]=1,o}var He=new v,c1=new v,f1=new v;function Ra(t,e,n=[]){let{oneOverRadii:r,oneOverRadiiSquared:s,centerToleranceSquared:o}=e;He.from(t);let i=He.x,a=He.y,f=He.z,c=r.x,l=r.y,d=r.z,_=i*i*c*c,h=a*a*l*l,u=f*f*d*d,A=_+h+u,p=Math.sqrt(1/A);if(!Number.isFinite(p))return;let S=c1;if(S.copy(t).scale(p),A<o)return S.to(n);let y=s.x,B=s.y,T=s.z,R=f1;R.set(S.x*y*2,S.y*B*2,S.z*T*2);let D=(1-p)*He.len()/(.5*R.len()),I=0,L,x,m,g;do{D-=I,L=1/(1+D*y),x=1/(1+D*B),m=1/(1+D*T);let E=L*L,U=x*x,F=m*m,G=E*L,N=U*x,j=F*m;g=_*E+h*U+u*F-1;let V=-2*(_*G*y+h*N*B+u*j*T);I=g/V}while(Math.abs(g)>Vt.EPSILON12);return He.scale([L,x,m]).to(n)}var Er=new v,Ta=new v,_1=new v,Mt=new v,d1=new v,Sr=new v,xt=class{constructor(e=0,n=0,r=0){this.centerToleranceSquared=Vt.EPSILON1,tt(e>=0),tt(n>=0),tt(r>=0),this.radii=new v(e,n,r),this.radiiSquared=new v(e*e,n*n,r*r),this.radiiToTheFourth=new v(e*e*e*e,n*n*n*n,r*r*r*r),this.oneOverRadii=new v(e===0?0:1/e,n===0?0:1/n,r===0?0:1/r),this.oneOverRadiiSquared=new v(e===0?0:1/(e*e),n===0?0:1/(n*n),r===0?0:1/(r*r)),this.minimumRadius=Math.min(e,n,r),this.maximumRadius=Math.max(e,n,r),this.radiiSquared.z!==0&&(this.squaredXOverSquaredZ=this.radiiSquared.x/this.radiiSquared.z),Object.freeze(this)}equals(e){return this===e||Boolean(e&&this.radii.equals(e.radii))}toString(){return this.radii.toString()}cartographicToCartesian(e,n=[0,0,0]){let r=Ta,s=_1,[,,o]=e;this.geodeticSurfaceNormalCartographic(e,r),s.copy(this.radiiSquared).scale(r);let i=Math.sqrt(r.dot(s));return s.scale(1/i),r.scale(o),s.add(r),s.to(n)}cartesianToCartographic(e,n=[0,0,0]){Sr.from(e);let r=this.scaleToGeodeticSurface(Sr,Mt);if(!r)return;let s=this.geodeticSurfaceNormal(r,Ta),o=d1;o.copy(Sr).subtract(r);let i=Math.atan2(s.y,s.x),a=Math.asin(s.z),f=Math.sign(pe.dot(o,Sr))*pe.length(o);return ga([i,a,f],n)}eastNorthUpToFixedFrame(e,n=new dt){return Ys(this,"east","north","up",e,n)}localFrameToFixedFrame(e,n,r,s,o=new dt){return Ys(this,e,n,r,s,o)}geocentricSurfaceNormal(e,n=[0,0,0]){return Er.from(e).normalize().to(n)}geodeticSurfaceNormalCartographic(e,n=[0,0,0]){let r=xa(e),s=r[0],o=r[1],i=Math.cos(o);return Er.set(i*Math.cos(s),i*Math.sin(s),Math.sin(o)).normalize(),Er.to(n)}geodeticSurfaceNormal(e,n=[0,0,0]){return Er.from(e).scale(this.oneOverRadiiSquared).normalize().to(n)}scaleToGeodeticSurface(e,n){return Ra(e,this,n)}scaleToGeocentricSurface(e,n=[0,0,0]){Mt.from(e);let r=Mt.x,s=Mt.y,o=Mt.z,i=this.oneOverRadiiSquared,a=1/Math.sqrt(r*r*i.x+s*s*i.y+o*o*i.z);return Mt.multiplyScalar(a).to(n)}transformPositionToScaledSpace(e,n=[0,0,0]){return Mt.from(e).scale(this.oneOverRadii).to(n)}transformPositionFromScaledSpace(e,n=[0,0,0]){return Mt.from(e).scale(this.radii).to(n)}getSurfaceNormalIntersectionWithZAxis(e,n=0,r=[0,0,0]){tt(_t(this.radii.x,this.radii.y,Vt.EPSILON15)),tt(this.radii.z>0),Mt.from(e);let s=Mt.z*(1-this.squaredXOverSquaredZ);if(!(Math.abs(s)>=this.radii.z-n))return Mt.set(0,0,s).to(r)}};xt.WGS84=new xt(6378137,6378137,Xt);var Ma="4.3.1";var u1=globalThis.loaders?.parseImageNode,js=typeof Image<"u",$s=typeof ImageBitmap<"u",p1=Boolean(u1),Js=At?!0:p1;function ya(t){switch(t){case"auto":return $s||js||Js;case"imagebitmap":return $s;case"image":return js;case"data":return Js;default:throw new Error(`@loaders.gl/images: image ${t} not supported in this environment`)}}function wa(){if($s)return"imagebitmap";if(js)return"image";if(Js)return"data";throw new Error("Install '@loaders.gl/polyfills' to parse images under Node.js")}function m1(t){let e=A1(t);if(!e)throw new Error("Not an image");return e}function Oa(t){switch(m1(t)){case"data":return t;case"image":case"imagebitmap":let e=document.createElement("canvas"),n=e.getContext("2d");if(!n)throw new Error("getImageData");return e.width=t.width,e.height=t.height,n.drawImage(t,0,0),n.getImageData(0,0,t.width,t.height);default:throw new Error("getImageData")}}function A1(t){return typeof ImageBitmap<"u"&&t instanceof ImageBitmap?"imagebitmap":typeof Image<"u"&&t instanceof Image?"image":t&&typeof t=="object"&&t.data&&t.width&&t.height?"data":null}var x1=/^data:image\/svg\+xml/,g1=/\.svg((\?|#).*)?$/;function Rr(t){return t&&(x1.test(t)||g1.test(t))}function ba(t,e){if(Rr(e)){let r=new TextDecoder().decode(t);try{typeof unescape=="function"&&typeof encodeURIComponent=="function"&&(r=unescape(encodeURIComponent(r)))}catch(o){throw new Error(o.message)}return`data:image/svg+xml;base64,${btoa(r)}`}return to(t,e)}function to(t,e){if(Rr(e))throw new Error("SVG cannot be parsed directly to imagebitmap");return new Blob([new Uint8Array(t)])}async function Tr(t,e,n){let r=ba(t,n),s=self.URL||self.webkitURL,o=typeof r!="string"&&s.createObjectURL(r);try{return await E1(o||r,e)}finally{o&&s.revokeObjectURL(o)}}async function E1(t,e){let n=new Image;return n.src=t,e.image&&e.image.decode&&n.decode?(await n.decode(),n):await new Promise((r,s)=>{try{n.onload=()=>r(n),n.onerror=o=>{let i=o instanceof Error?o.message:"error";s(new Error(i))}}catch(o){s(o)}})}var S1={},Ca=!0;async function Ba(t,e,n){let r;Rr(n)?r=await Tr(t,e,n):r=to(t,n);let s=e&&e.imagebitmap;return await R1(r,s)}async function R1(t,e=null){if((T1(e)||!Ca)&&(e=null),e)try{return await createImageBitmap(t,e)}catch(n){console.warn(n),Ca=!1}return await createImageBitmap(t)}function T1(t){for(let e in t||S1)return!1;return!0}function Da(t){return!O1(t,"ftyp",4)||!(t[8]&96)?null:M1(t)}function M1(t){switch(y1(t,8,12).replace("\0"," ").trim()){case"avif":case"avis":return{extension:"avif",mimeType:"image/avif"};default:return null}}function y1(t,e,n){return String.fromCharCode(...t.slice(e,n))}function w1(t){return[...t].map(e=>e.charCodeAt(0))}function O1(t,e,n=0){let r=w1(e);for(let s=0;s<r.length;++s)if(r[s]!==t[s+n])return!1;return!0}var Nt=!1,An=!0;function Mr(t){let e=xn(t);return C1(e)||I1(e)||B1(e)||D1(e)||b1(e)}function b1(t){let e=new Uint8Array(t instanceof DataView?t.buffer:t),n=Da(e);return n?{mimeType:n.mimeType,width:0,height:0}:null}function C1(t){let e=xn(t);return e.byteLength>=24&&e.getUint32(0,Nt)===2303741511?{mimeType:"image/png",width:e.getUint32(16,Nt),height:e.getUint32(20,Nt)}:null}function B1(t){let e=xn(t);return e.byteLength>=10&&e.getUint32(0,Nt)===1195984440?{mimeType:"image/gif",width:e.getUint16(6,An),height:e.getUint16(8,An)}:null}function D1(t){let e=xn(t);return e.byteLength>=14&&e.getUint16(0,Nt)===16973&&e.getUint32(2,An)===e.byteLength?{mimeType:"image/bmp",width:e.getUint32(18,An),height:e.getUint32(22,An)}:null}function I1(t){let e=xn(t);if(!(e.byteLength>=3&&e.getUint16(0,Nt)===65496&&e.getUint8(2)===255))return null;let{tableMarkers:r,sofMarkers:s}=v1(),o=2;for(;o+9<e.byteLength;){let i=e.getUint16(o,Nt);if(s.has(i))return{mimeType:"image/jpeg",height:e.getUint16(o+5,Nt),width:e.getUint16(o+7,Nt)};if(!r.has(i))return null;o+=2,o+=e.getUint16(o,Nt)}return null}function v1(){let t=new Set([65499,65476,65484,65501,65534]);for(let n=65504;n<65520;++n)t.add(n);return{tableMarkers:t,sofMarkers:new Set([65472,65473,65474,65475,65477,65478,65479,65481,65482,65483,65485,65486,65487,65502])}}function xn(t){if(t instanceof DataView)return t;if(ArrayBuffer.isView(t))return new DataView(t.buffer);if(t instanceof ArrayBuffer)return new DataView(t);throw new Error("toDataView")}async function Ia(t,e){let{mimeType:n}=Mr(t)||{},r=globalThis.loaders?.parseImageNode;return Jt(r),await r(t,n)}async function va(t,e,n){e=e||{};let s=(e.image||{}).type||"auto",{url:o}=n||{},i=L1(s),a;switch(i){case"imagebitmap":a=await Ba(t,e,o);break;case"image":a=await Tr(t,e,o);break;case"data":a=await Ia(t,e);break;default:Jt(!1)}return s==="data"&&(a=Oa(a)),a}function L1(t){switch(t){case"auto":case"data":return wa();default:return ya(t),t}}var N1=["png","jpg","jpeg","gif","webp","bmp","ico","svg","avif"],P1=["image/png","image/jpeg","image/gif","image/webp","image/avif","image/bmp","image/vnd.microsoft.icon","image/svg+xml"],F1={image:{type:"auto",decode:!0}},yr={dataType:null,batchType:null,id:"image",module:"images",name:"Images",version:Ma,mimeTypes:P1,extensions:N1,parse:va,tests:[t=>Boolean(Mr(new DataView(t)))],options:F1};var La="4.3.1";var Na={dataType:null,batchType:null,name:"Draco",id:"draco",module:"draco",version:La,worker:!0,extensions:["drc"],mimeTypes:["application/octet-stream"],binary:!0,tests:["DRACO"],options:{draco:{decoderType:typeof WebAssembly=="object"?"wasm":"js",libraryPath:"libs/",extraAttributes:{},attributeNameEntry:void 0}}};function Pa(t){switch(t.constructor){case Int8Array:return"int8";case Uint8Array:case Uint8ClampedArray:return"uint8";case Int16Array:return"int16";case Uint16Array:return"uint16";case Int32Array:return"int32";case Uint32Array:return"uint32";case Float32Array:return"float32";case Float64Array:return"float64";default:return"null"}}function eo(t){let e=1/0,n=1/0,r=1/0,s=-1/0,o=-1/0,i=-1/0,a=t.POSITION?t.POSITION.value:[],f=a&&a.length;for(let c=0;c<f;c+=3){let l=a[c],d=a[c+1],_=a[c+2];e=l<e?l:e,n=d<n?d:n,r=_<r?_:r,s=l>s?l:s,o=d>o?d:o,i=_>i?_:i}return[[e,n,r],[s,o,i]]}function no(t,e,n){let r=Pa(e.value),s=n||Fa(e);return{name:t,type:{type:"fixed-size-list",listSize:e.size,children:[{name:"value",type:r}]},nullable:!1,metadata:s}}function Fa(t){let e={};return"byteOffset"in t&&(e.byteOffset=t.byteOffset.toString(10)),"byteStride"in t&&(e.byteStride=t.byteStride.toString(10)),"normalized"in t&&(e.normalized=t.normalized.toString()),e}function Ga(t,e,n){let r=ka(e.metadata),s=[],o=U1(e.attributes);for(let i in t){let a=t[i],f=Ua(i,a,o[i]);s.push(f)}if(n){let i=Ua("indices",n);s.push(i)}return{fields:s,metadata:r}}function U1(t){let e={};for(let n in t){let r=t[n];e[r.name||"undefined"]=r}return e}function Ua(t,e,n){let r=n?ka(n.metadata):void 0;return no(t,e,r)}function ka(t){Object.entries(t);let e={};for(let n in t)e[`${n}.string`]=JSON.stringify(t[n]);return e}var za={POSITION:"POSITION",NORMAL:"NORMAL",COLOR:"COLOR_0",TEX_COORD:"TEXCOORD_0"},G1={1:Int8Array,2:Uint8Array,3:Int16Array,4:Uint16Array,5:Int32Array,6:Uint32Array,9:Float32Array},k1=4,gn=class{draco;decoder;metadataQuerier;constructor(e){this.draco=e,this.decoder=new this.draco.Decoder,this.metadataQuerier=new this.draco.MetadataQuerier}destroy(){this.draco.destroy(this.decoder),this.draco.destroy(this.metadataQuerier)}parseSync(e,n={}){let r=new this.draco.DecoderBuffer;r.Init(new Int8Array(e),e.byteLength),this._disableAttributeTransforms(n);let s=this.decoder.GetEncodedGeometryType(r),o=s===this.draco.TRIANGULAR_MESH?new this.draco.Mesh:new this.draco.PointCloud;try{let i;switch(s){case this.draco.TRIANGULAR_MESH:i=this.decoder.DecodeBufferToMesh(r,o);break;case this.draco.POINT_CLOUD:i=this.decoder.DecodeBufferToPointCloud(r,o);break;default:throw new Error("DRACO: Unknown geometry type.")}if(!i.ok()||!o.ptr){let _=`DRACO decompression failed: ${i.error_msg()}`;throw new Error(_)}let a=this._getDracoLoaderData(o,s,n),f=this._getMeshData(o,a,n),c=eo(f.attributes),l=Ga(f.attributes,a,f.indices);return{loader:"draco",loaderData:a,header:{vertexCount:o.num_points(),boundingBox:c},...f,schema:l}}finally{this.draco.destroy(r),o&&this.draco.destroy(o)}}_getDracoLoaderData(e,n,r){let s=this._getTopLevelMetadata(e),o=this._getDracoAttributes(e,r);return{geometry_type:n,num_attributes:e.num_attributes(),num_points:e.num_points(),num_faces:e instanceof this.draco.Mesh?e.num_faces():0,metadata:s,attributes:o}}_getDracoAttributes(e,n){let r={};for(let s=0;s<e.num_attributes();s++){let o=this.decoder.GetAttribute(e,s),i=this._getAttributeMetadata(e,s);r[o.unique_id()]={unique_id:o.unique_id(),attribute_type:o.attribute_type(),data_type:o.data_type(),num_components:o.num_components(),byte_offset:o.byte_offset(),byte_stride:o.byte_stride(),normalized:o.normalized(),attribute_index:s,metadata:i};let a=this._getQuantizationTransform(o,n);a&&(r[o.unique_id()].quantization_transform=a);let f=this._getOctahedronTransform(o,n);f&&(r[o.unique_id()].octahedron_transform=f)}return r}_getMeshData(e,n,r){let s=this._getMeshAttributes(n,e,r);if(!s.POSITION)throw new Error("DRACO: No position attribute found.");if(e instanceof this.draco.Mesh)switch(r.topology){case"triangle-strip":return{topology:"triangle-strip",mode:4,attributes:s,indices:{value:this._getTriangleStripIndices(e),size:1}};case"triangle-list":default:return{topology:"triangle-list",mode:5,attributes:s,indices:{value:this._getTriangleListIndices(e),size:1}}}return{topology:"point-list",mode:0,attributes:s}}_getMeshAttributes(e,n,r){let s={};for(let o of Object.values(e.attributes)){let i=this._deduceAttributeName(o,r);o.name=i;let a=this._getAttributeValues(n,o);if(a){let{value:f,size:c}=a;s[i]={value:f,size:c,byteOffset:o.byte_offset,byteStride:o.byte_stride,normalized:o.normalized}}}return s}_getTriangleListIndices(e){let r=e.num_faces()*3,s=r*k1,o=this.draco._malloc(s);try{return this.decoder.GetTrianglesUInt32Array(e,s,o),new Uint32Array(this.draco.HEAPF32.buffer,o,r).slice()}finally{this.draco._free(o)}}_getTriangleStripIndices(e){let n=new this.draco.DracoInt32Array;try{return this.decoder.GetTriangleStripsFromMesh(e,n),H1(n)}finally{this.draco.destroy(n)}}_getAttributeValues(e,n){let r=G1[n.data_type];if(!r)return console.warn(`DRACO: Unsupported attribute type ${n.data_type}`),null;let s=n.num_components,i=e.num_points()*s,a=i*r.BYTES_PER_ELEMENT,f=z1(this.draco,r),c,l=this.draco._malloc(a);try{let d=this.decoder.GetAttribute(e,n.attribute_index);this.decoder.GetAttributeDataArrayForAllPoints(e,d,f,a,l),c=new r(this.draco.HEAPF32.buffer,l,i).slice()}finally{this.draco._free(l)}return{value:c,size:s}}_deduceAttributeName(e,n){let r=e.unique_id;for(let[i,a]of Object.entries(n.extraAttributes||{}))if(a===r)return i;let s=e.attribute_type;for(let i in za)if(this.draco[i]===s)return za[i];let o=n.attributeNameEntry||"name";return e.metadata[o]?e.metadata[o].string:`CUSTOM_ATTRIBUTE_${r}`}_getTopLevelMetadata(e){let n=this.decoder.GetMetadata(e);return this._getDracoMetadata(n)}_getAttributeMetadata(e,n){let r=this.decoder.GetAttributeMetadata(e,n);return this._getDracoMetadata(r)}_getDracoMetadata(e){if(!e||!e.ptr)return{};let n={},r=this.metadataQuerier.NumEntries(e);for(let s=0;s<r;s++){let o=this.metadataQuerier.GetEntryName(e,s);n[o]=this._getDracoMetadataField(e,o)}return n}_getDracoMetadataField(e,n){let r=new this.draco.DracoInt32Array;try{this.metadataQuerier.GetIntEntryArray(e,n,r);let s=K1(r);return{int:this.metadataQuerier.GetIntEntry(e,n),string:this.metadataQuerier.GetStringEntry(e,n),double:this.metadataQuerier.GetDoubleEntry(e,n),intArray:s}}finally{this.draco.destroy(r)}}_disableAttributeTransforms(e){let{quantizedAttributes:n=[],octahedronAttributes:r=[]}=e,s=[...n,...r];for(let o of s)this.decoder.SkipAttributeTransform(this.draco[o])}_getQuantizationTransform(e,n){let{quantizedAttributes:r=[]}=n,s=e.attribute_type();if(r.map(i=>this.decoder[i]).includes(s)){let i=new this.draco.AttributeQuantizationTransform;try{if(i.InitFromAttribute(e))return{quantization_bits:i.quantization_bits(),range:i.range(),min_values:new Float32Array([1,2,3]).map(a=>i.min_value(a))}}finally{this.draco.destroy(i)}}return null}_getOctahedronTransform(e,n){let{octahedronAttributes:r=[]}=n,s=e.attribute_type();if(r.map(i=>this.decoder[i]).includes(s)){let i=new this.draco.AttributeQuantizationTransform;try{if(i.InitFromAttribute(e))return{quantization_bits:i.quantization_bits()}}finally{this.draco.destroy(i)}}return null}};function z1(t,e){switch(e){case Float32Array:return t.DT_FLOAT32;case Int8Array:return t.DT_INT8;case Int16Array:return t.DT_INT16;case Int32Array:return t.DT_INT32;case Uint8Array:return t.DT_UINT8;case Uint16Array:return t.DT_UINT16;case Uint32Array:return t.DT_UINT32;default:return t.DT_INVALID}}function K1(t){let e=t.size(),n=new Int32Array(e);for(let r=0;r<e;r++)n[r]=t.GetValue(r);return n}function H1(t){let e=t.size(),n=new Int32Array(e);for(let r=0;r<e;r++)n[r]=t.GetValue(r);return n}var V1="1.5.6",X1="1.4.1",ro=`https://www.gstatic.com/draco/versioned/decoders/${V1}`,lt={DECODER:"draco_wasm_wrapper.js",DECODER_WASM:"draco_decoder.wasm",FALLBACK_DECODER:"draco_decoder.js",ENCODER:"draco_encoder.js"},so={[lt.DECODER]:`${ro}/${lt.DECODER}`,[lt.DECODER_WASM]:`${ro}/${lt.DECODER_WASM}`,[lt.FALLBACK_DECODER]:`${ro}/${lt.FALLBACK_DECODER}`,[lt.ENCODER]:`https://raw.githubusercontent.com/google/draco/${X1}/javascript/${lt.ENCODER}`},oo;async function Ka(t){let e=t.modules||{};return e.draco3d?oo||=e.draco3d.createDecoderModule({}).then(n=>({draco:n})):oo||=W1(t),await oo}async function W1(t){let e,n;switch(t.draco&&t.draco.decoderType){case"js":e=await It(so[lt.FALLBACK_DECODER],"draco",t,lt.FALLBACK_DECODER);break;case"wasm":default:[e,n]=await Promise.all([await It(so[lt.DECODER],"draco",t,lt.DECODER),await It(so[lt.DECODER_WASM],"draco",t,lt.DECODER_WASM)])}return e=e||globalThis.DracoDecoderModule,await q1(e,n)}function q1(t,e){let n={};return e&&(n.wasmBinary=e),new Promise(r=>{t({...n,onModuleLoaded:s=>r({draco:s})})})}var Ha={...Na,parse:Z1};async function Z1(t,e){let{draco:n}=await Ka(e),r=new gn(n);try{return r.parseSync(t,e?.draco)}finally{r.destroy()}}var wr="4.3.1";var Or={TRANSCODER:"basis_transcoder.js",TRANSCODER_WASM:"basis_transcoder.wasm",ENCODER:"basis_encoder.js",ENCODER_WASM:"basis_encoder.wasm"},Va;async function ao(t){sn(t.modules);let e=_s("basis");return e||(Va||=Q1(t),await Va)}async function Q1(t){let e=null,n=null;return[e,n]=await Promise.all([await It(Or.TRANSCODER,"textures",t),await It(Or.TRANSCODER_WASM,"textures",t)]),e=e||globalThis.BASIS,await Y1(e,n)}function Y1(t,e){let n={};return e&&(n.wasmBinary=e),new Promise(r=>{t(n).then(s=>{let{BasisFile:o,initializeBasis:i}=s;i(),r({BasisFile:o})})})}var io;async function co(t){let e=t.modules||{};return e.basisEncoder?e.basisEncoder:(io=io||j1(t),await io)}async function j1(t){let e=null,n=null;return[e,n]=await Promise.all([await It(Or.ENCODER,"textures",t),await It(Or.ENCODER_WASM,"textures",t)]),e=e||globalThis.BASIS,await $1(e,n)}function $1(t,e){let n={};return e&&(n.wasmBinary=e),new Promise(r=>{t(n).then(s=>{let{BasisFile:o,KTX2File:i,initializeBasis:a,BasisEncoder:f}=s;a(),r({BasisFile:o,KTX2File:i,BasisEncoder:f})})})}var M={COMPRESSED_RGB_S3TC_DXT1_EXT:33776,COMPRESSED_RGBA_S3TC_DXT1_EXT:33777,COMPRESSED_RGBA_S3TC_DXT3_EXT:33778,COMPRESSED_RGBA_S3TC_DXT5_EXT:33779,COMPRESSED_R11_EAC:37488,COMPRESSED_SIGNED_R11_EAC:37489,COMPRESSED_RG11_EAC:37490,COMPRESSED_SIGNED_RG11_EAC:37491,COMPRESSED_RGB8_ETC2:37492,COMPRESSED_RGBA8_ETC2_EAC:37493,COMPRESSED_SRGB8_ETC2:37494,COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:37495,COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2:37496,COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2:37497,COMPRESSED_RGB_PVRTC_4BPPV1_IMG:35840,COMPRESSED_RGBA_PVRTC_4BPPV1_IMG:35842,COMPRESSED_RGB_PVRTC_2BPPV1_IMG:35841,COMPRESSED_RGBA_PVRTC_2BPPV1_IMG:35843,COMPRESSED_RGB_ETC1_WEBGL:36196,COMPRESSED_RGB_ATC_WEBGL:35986,COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL:35987,COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL:34798,COMPRESSED_RGBA_ASTC_4X4_KHR:37808,COMPRESSED_RGBA_ASTC_5X4_KHR:37809,COMPRESSED_RGBA_ASTC_5X5_KHR:37810,COMPRESSED_RGBA_ASTC_6X5_KHR:37811,COMPRESSED_RGBA_ASTC_6X6_KHR:37812,COMPRESSED_RGBA_ASTC_8X5_KHR:37813,COMPRESSED_RGBA_ASTC_8X6_KHR:37814,COMPRESSED_RGBA_ASTC_8X8_KHR:37815,COMPRESSED_RGBA_ASTC_10X5_KHR:37816,COMPRESSED_RGBA_ASTC_10X6_KHR:37817,COMPRESSED_RGBA_ASTC_10X8_KHR:37818,COMPRESSED_RGBA_ASTC_10X10_KHR:37819,COMPRESSED_RGBA_ASTC_12X10_KHR:37820,COMPRESSED_RGBA_ASTC_12X12_KHR:37821,COMPRESSED_SRGB8_ALPHA8_ASTC_4X4_KHR:37840,COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR:37841,COMPRESSED_SRGB8_ALPHA8_ASTC_5X5_KHR:37842,COMPRESSED_SRGB8_ALPHA8_ASTC_6X5_KHR:37843,COMPRESSED_SRGB8_ALPHA8_ASTC_6X6_KHR:37844,COMPRESSED_SRGB8_ALPHA8_ASTC_8X5_KHR:37845,COMPRESSED_SRGB8_ALPHA8_ASTC_8X6_KHR:37846,COMPRESSED_SRGB8_ALPHA8_ASTC_8X8_KHR:37847,COMPRESSED_SRGB8_ALPHA8_ASTC_10X5_KHR:37848,COMPRESSED_SRGB8_ALPHA8_ASTC_10X6_KHR:37849,COMPRESSED_SRGB8_ALPHA8_ASTC_10X8_KHR:37850,COMPRESSED_SRGB8_ALPHA8_ASTC_10X10_KHR:37851,COMPRESSED_SRGB8_ALPHA8_ASTC_12X10_KHR:37852,COMPRESSED_SRGB8_ALPHA8_ASTC_12X12_KHR:37853,COMPRESSED_RED_RGTC1_EXT:36283,COMPRESSED_SIGNED_RED_RGTC1_EXT:36284,COMPRESSED_RED_GREEN_RGTC2_EXT:36285,COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT:36286,COMPRESSED_SRGB_S3TC_DXT1_EXT:35916,COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT:35917,COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT:35918,COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT:35919};var J1=["","WEBKIT_","MOZ_"],Xa={WEBGL_compressed_texture_s3tc:"dxt",WEBGL_compressed_texture_s3tc_srgb:"dxt-srgb",WEBGL_compressed_texture_etc1:"etc1",WEBGL_compressed_texture_etc:"etc2",WEBGL_compressed_texture_pvrtc:"pvrtc",WEBGL_compressed_texture_atc:"atc",WEBGL_compressed_texture_astc:"astc",EXT_texture_compression_rgtc:"rgtc"},br=null;function En(t){if(!br){t=t||t_()||void 0,br=new Set;for(let e of J1)for(let n in Xa)if(t&&t.getExtension(`${e}${n}`)){let r=Xa[n];br.add(r)}}return br}function t_(){try{return document.createElement("canvas").getContext("webgl")}catch{return null}}var fo=class{constructor(){this.vkFormat=0,this.typeSize=1,this.pixelWidth=0,this.pixelHeight=0,this.pixelDepth=0,this.layerCount=0,this.faceCount=1,this.supercompressionScheme=0,this.levels=[],this.dataFormatDescriptor=[{vendorId:0,descriptorType:0,descriptorBlockSize:0,versionNumber:2,colorModel:0,colorPrimaries:1,transferFunction:2,flags:0,texelBlockDimension:[0,0,0,0],bytesPlane:[0,0,0,0,0,0,0,0],samples:[]}],this.keyValue={},this.globalData=null}},me=class{constructor(e,n,r,s){this._dataView=void 0,this._littleEndian=void 0,this._offset=void 0,this._dataView=new DataView(e.buffer,e.byteOffset+n,r),this._littleEndian=s,this._offset=0}_nextUint8(){let e=this._dataView.getUint8(this._offset);return this._offset+=1,e}_nextUint16(){let e=this._dataView.getUint16(this._offset,this._littleEndian);return this._offset+=2,e}_nextUint32(){let e=this._dataView.getUint32(this._offset,this._littleEndian);return this._offset+=4,e}_nextUint64(){let e=this._dataView.getUint32(this._offset,this._littleEndian),n=this._dataView.getUint32(this._offset+4,this._littleEndian),r=e+2**32*n;return this._offset+=8,r}_nextInt32(){let e=this._dataView.getInt32(this._offset,this._littleEndian);return this._offset+=4,e}_nextUint8Array(e){let n=new Uint8Array(this._dataView.buffer,this._dataView.byteOffset+this._offset,e);return this._offset+=e,n}_skip(e){return this._offset+=e,this}_scan(e,n=0){let r=this._offset,s=0;for(;this._dataView.getUint8(this._offset)!==n&&s<e;)s++,this._offset++;return s<e&&this._offset++,new Uint8Array(this._dataView.buffer,this._dataView.byteOffset+r,s)}};var _g=new Uint8Array([0]),it=[171,75,84,88,32,50,48,187,13,10,26,10];function Wa(t){return new TextDecoder().decode(t)}function qa(t){let e=new Uint8Array(t.buffer,t.byteOffset,it.length);if(e[0]!==it[0]||e[1]!==it[1]||e[2]!==it[2]||e[3]!==it[3]||e[4]!==it[4]||e[5]!==it[5]||e[6]!==it[6]||e[7]!==it[7]||e[8]!==it[8]||e[9]!==it[9]||e[10]!==it[10]||e[11]!==it[11])throw new Error("Missing KTX 2.0 identifier.");let n=new fo,r=17*Uint32Array.BYTES_PER_ELEMENT,s=new me(t,it.length,r,!0);n.vkFormat=s._nextUint32(),n.typeSize=s._nextUint32(),n.pixelWidth=s._nextUint32(),n.pixelHeight=s._nextUint32(),n.pixelDepth=s._nextUint32(),n.layerCount=s._nextUint32(),n.faceCount=s._nextUint32();let o=s._nextUint32();n.supercompressionScheme=s._nextUint32();let i=s._nextUint32(),a=s._nextUint32(),f=s._nextUint32(),c=s._nextUint32(),l=s._nextUint64(),d=s._nextUint64(),_=o*3*8,h=new me(t,it.length+r,_,!0);for(let st=0;st<o;st++)n.levels.push({levelData:new Uint8Array(t.buffer,t.byteOffset+h._nextUint64(),h._nextUint64()),uncompressedByteLength:h._nextUint64()});let u=new me(t,i,a,!0),A={vendorId:u._skip(4)._nextUint16(),descriptorType:u._nextUint16(),versionNumber:u._nextUint16(),descriptorBlockSize:u._nextUint16(),colorModel:u._nextUint8(),colorPrimaries:u._nextUint8(),transferFunction:u._nextUint8(),flags:u._nextUint8(),texelBlockDimension:[u._nextUint8(),u._nextUint8(),u._nextUint8(),u._nextUint8()],bytesPlane:[u._nextUint8(),u._nextUint8(),u._nextUint8(),u._nextUint8(),u._nextUint8(),u._nextUint8(),u._nextUint8(),u._nextUint8()],samples:[]},p=6,S=4,y=(A.descriptorBlockSize/4-p)/S;for(let st=0;st<y;st++){let Ot={bitOffset:u._nextUint16(),bitLength:u._nextUint8(),channelType:u._nextUint8(),samplePosition:[u._nextUint8(),u._nextUint8(),u._nextUint8(),u._nextUint8()],sampleLower:-1/0,sampleUpper:1/0};Ot.channelType&64?(Ot.sampleLower=u._nextInt32(),Ot.sampleUpper=u._nextInt32()):(Ot.sampleLower=u._nextUint32(),Ot.sampleUpper=u._nextUint32()),A.samples[st]=Ot}n.dataFormatDescriptor.length=0,n.dataFormatDescriptor.push(A);let B=new me(t,f,c,!0);for(;B._offset<c;){let st=B._nextUint32(),Ot=B._scan(st),Be=Wa(Ot);if(n.keyValue[Be]=B._nextUint8Array(st-Ot.byteLength-1),Be.match(/^ktx/i)){let w=Wa(n.keyValue[Be]);n.keyValue[Be]=w.substring(0,w.lastIndexOf("\0"))}let O=st%4?4-st%4:0;B._skip(O)}if(d<=0)return n;let T=new me(t,l,d,!0),R=T._nextUint16(),D=T._nextUint16(),I=T._nextUint32(),L=T._nextUint32(),x=T._nextUint32(),m=T._nextUint32(),g=[];for(let st=0;st<o;st++)g.push({imageFlags:T._nextUint32(),rgbSliceByteOffset:T._nextUint32(),rgbSliceByteLength:T._nextUint32(),alphaSliceByteOffset:T._nextUint32(),alphaSliceByteLength:T._nextUint32()});let E=l+T._offset,U=E+I,F=U+L,G=F+x,N=new Uint8Array(t.buffer,t.byteOffset+E,I),j=new Uint8Array(t.buffer,t.byteOffset+U,L),rt=new Uint8Array(t.buffer,t.byteOffset+F,x),V=new Uint8Array(t.buffer,t.byteOffset+G,m);return n.globalData={endpointCount:R,selectorCount:D,imageDescs:g,endpointsData:N,selectorsData:j,tablesData:rt,extendedData:V},n}function Ve(t,e){let n=new Array(e.mipMapLevels),r=e.width,s=e.height,o=0;for(let i=0;i<e.mipMapLevels;++i){let a=n_(e,r,s,t,i),f=e_(t,i,o,a);n[i]={compressed:!0,format:e.internalFormat,data:f,width:r,height:s,levelSize:a},r=Math.max(1,r>>1),s=Math.max(1,s>>1),o+=a}return n}function e_(t,e,n,r){return Array.isArray(t)?t[e].levelData:new Uint8Array(t.buffer,t.byteOffset+n,r)}function n_(t,e,n,r,s){return Array.isArray(r)?t.sizeFunction(r[s]):t.sizeFunction(e,n)}var r_={131:M.COMPRESSED_RGB_S3TC_DXT1_EXT,132:M.COMPRESSED_SRGB_S3TC_DXT1_EXT,133:M.COMPRESSED_RGBA_S3TC_DXT1_EXT,134:M.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT,135:M.COMPRESSED_RGBA_S3TC_DXT3_EXT,136:M.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT,137:M.COMPRESSED_RGBA_S3TC_DXT5_EXT,138:M.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT,139:M.COMPRESSED_RED_RGTC1_EXT,140:M.COMPRESSED_SIGNED_RED_RGTC1_EXT,141:M.COMPRESSED_RED_GREEN_RGTC2_EXT,142:M.COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT,147:M.COMPRESSED_RGB8_ETC2,148:M.COMPRESSED_SRGB8_ETC2,149:M.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2,150:M.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2,151:M.COMPRESSED_RGBA8_ETC2_EAC,152:M.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC,153:M.COMPRESSED_R11_EAC,154:M.COMPRESSED_SIGNED_R11_EAC,155:M.COMPRESSED_RG11_EAC,156:M.COMPRESSED_SIGNED_RG11_EAC,157:M.COMPRESSED_RGBA_ASTC_4x4_KHR,158:M.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR,159:M.COMPRESSED_RGBA_ASTC_5x4_KHR,160:M.COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR,161:M.COMPRESSED_RGBA_ASTC_5x5_KHR,162:M.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR,163:M.COMPRESSED_RGBA_ASTC_6x5_KHR,164:M.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR,165:M.COMPRESSED_RGBA_ASTC_6x6_KHR,166:M.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR,167:M.COMPRESSED_RGBA_ASTC_8x5_KHR,168:M.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR,169:M.COMPRESSED_RGBA_ASTC_8x6_KHR,170:M.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR,171:M.COMPRESSED_RGBA_ASTC_8x8_KHR,172:M.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR,173:M.COMPRESSED_RGBA_ASTC_10x5_KHR,174:M.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR,175:M.COMPRESSED_RGBA_ASTC_10x6_KHR,176:M.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR,177:M.COMPRESSED_RGBA_ASTC_10x8_KHR,178:M.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR,179:M.COMPRESSED_RGBA_ASTC_10x10_KHR,180:M.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR,181:M.COMPRESSED_RGBA_ASTC_12x10_KHR,182:M.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR,183:M.COMPRESSED_RGBA_ASTC_12x12_KHR,184:M.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR,1000054e3:M.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG,1000054001:M.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG,1000066e3:M.COMPRESSED_RGBA_ASTC_4x4_KHR,1000066001:M.COMPRESSED_RGBA_ASTC_5x4_KHR,1000066002:M.COMPRESSED_RGBA_ASTC_5x5_KHR,1000066003:M.COMPRESSED_RGBA_ASTC_6x5_KHR,1000066004:M.COMPRESSED_RGBA_ASTC_6x6_KHR,1000066005:M.COMPRESSED_RGBA_ASTC_8x5_KHR,1000066006:M.COMPRESSED_RGBA_ASTC_8x6_KHR,1000066007:M.COMPRESSED_RGBA_ASTC_8x8_KHR,1000066008:M.COMPRESSED_RGBA_ASTC_10x5_KHR,1000066009:M.COMPRESSED_RGBA_ASTC_10x6_KHR,1000066010:M.COMPRESSED_RGBA_ASTC_10x8_KHR,1000066011:M.COMPRESSED_RGBA_ASTC_10x10_KHR,1000066012:M.COMPRESSED_RGBA_ASTC_12x10_KHR,1000066013:M.COMPRESSED_RGBA_ASTC_12x12_KHR};function Za(t){return r_[t]}var ut=[171,75,84,88,32,50,48,187,13,10,26,10];function Cr(t){let e=new Uint8Array(t);return!(e.byteLength<ut.length||e[0]!==ut[0]||e[1]!==ut[1]||e[2]!==ut[2]||e[3]!==ut[3]||e[4]!==ut[4]||e[5]!==ut[5]||e[6]!==ut[6]||e[7]!==ut[7]||e[8]!==ut[8]||e[9]!==ut[9]||e[10]!==ut[10]||e[11]!==ut[11])}function Qa(t){let e=new Uint8Array(t),n=qa(e),r=Math.max(1,n.levels.length),s=n.pixelWidth,o=n.pixelHeight,i=Za(n.vkFormat);return Ve(n.levels,{mipMapLevels:r,width:s,height:o,sizeFunction:a=>a.uncompressedByteLength,internalFormat:i})}var s_={etc1:{basisFormat:0,compressed:!0,format:M.COMPRESSED_RGB_ETC1_WEBGL},etc2:{basisFormat:1,compressed:!0},bc1:{basisFormat:2,compressed:!0,format:M.COMPRESSED_RGB_S3TC_DXT1_EXT},bc3:{basisFormat:3,compressed:!0,format:M.COMPRESSED_RGBA_S3TC_DXT5_EXT},bc4:{basisFormat:4,compressed:!0},bc5:{basisFormat:5,compressed:!0},"bc7-m6-opaque-only":{basisFormat:6,compressed:!0},"bc7-m5":{basisFormat:7,compressed:!0},"pvrtc1-4-rgb":{basisFormat:8,compressed:!0,format:M.COMPRESSED_RGB_PVRTC_4BPPV1_IMG},"pvrtc1-4-rgba":{basisFormat:9,compressed:!0,format:M.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG},"astc-4x4":{basisFormat:10,compressed:!0,format:M.COMPRESSED_RGBA_ASTC_4X4_KHR},"atc-rgb":{basisFormat:11,compressed:!0},"atc-rgba-interpolated-alpha":{basisFormat:12,compressed:!0},rgba32:{basisFormat:13,compressed:!1},rgb565:{basisFormat:14,compressed:!1},bgr565:{basisFormat:15,compressed:!1},rgba4444:{basisFormat:16,compressed:!1}};async function Br(t,e){if(e.basis.containerFormat==="auto"){if(Cr(t)){let r=await co(e);return Ya(r.KTX2File,t,e)}let{BasisFile:n}=await ao(e);return lo(n,t,e)}switch(e.basis.module){case"encoder":let n=await co(e);switch(e.basis.containerFormat){case"ktx2":return Ya(n.KTX2File,t,e);case"basis":default:return lo(n.BasisFile,t,e)}case"transcoder":default:let{BasisFile:r}=await ao(e);return lo(r,t,e)}}function lo(t,e,n){let r=new t(new Uint8Array(e));try{if(!r.startTranscoding())throw new Error("Failed to start basis transcoding");let s=r.getNumImages(),o=[];for(let i=0;i<s;i++){let a=r.getNumLevels(i),f=[];for(let c=0;c<a;c++)f.push(o_(r,i,c,n));o.push(f)}return o}finally{r.close(),r.delete()}}function o_(t,e,n,r){let s=t.getImageWidth(e,n),o=t.getImageHeight(e,n),i=t.getHasAlpha(),{compressed:a,format:f,basisFormat:c}=ja(r,i),l=t.getImageTranscodedSizeInBytes(e,n,c),d=new Uint8Array(l);if(!t.transcodeImage(d,e,n,c,0,0))throw new Error("failed to start Basis transcoding");return{width:s,height:o,data:d,compressed:a,format:f,hasAlpha:i}}function Ya(t,e,n){let r=new t(new Uint8Array(e));try{if(!r.startTranscoding())throw new Error("failed to start KTX2 transcoding");let s=r.getLevels(),o=[];for(let i=0;i<s;i++)o.push(i_(r,i,n));return[o]}finally{r.close(),r.delete()}}function i_(t,e,n){let{alphaFlag:r,height:s,width:o}=t.getImageLevelInfo(e,0,0),{compressed:i,format:a,basisFormat:f}=ja(n,r),c=t.getImageTranscodedSizeInBytes(e,0,0,f),l=new Uint8Array(c);if(!t.transcodeImage(l,e,0,0,f,0,-1,-1))throw new Error("Failed to transcode KTX2 image");return{width:o,height:s,data:l,compressed:i,levelSize:c,hasAlpha:r,format:a}}function ja(t,e){let n=t&&t.basis&&t.basis.format;return n==="auto"&&(n=Dr()),typeof n=="object"&&(n=e?n.alpha:n.noAlpha),n=n.toLowerCase(),s_[n]}function Dr(){let t=En();return t.has("astc")?"astc-4x4":t.has("dxt")?{alpha:"bc3",noAlpha:"bc1"}:t.has("pvrtc")?{alpha:"pvrtc1-4-rgba",noAlpha:"pvrtc1-4-rgb"}:t.has("etc1")?"etc1":t.has("etc2")?"etc2":"rgb565"}var $a={dataType:null,batchType:null,name:"Basis",id:"basis",module:"textures",version:wr,worker:!0,extensions:["basis","ktx2"],mimeTypes:["application/octet-stream","image/ktx2"],tests:["sB"],binary:!0,options:{basis:{format:"auto",libraryPath:"libs/",containerFormat:"auto",module:"transcoder"}}},Sn={...$a,parse:Br};var pt={MAGIC_NUMBER:542327876,HEADER_LENGTH:31,MAGIC_NUMBER_INDEX:0,HEADER_SIZE_INDEX:1,HEADER_FLAGS_INDEX:2,HEADER_HEIGHT_INDEX:3,HEADER_WIDTH_INDEX:4,MIPMAPCOUNT_INDEX:7,HEADER_PF_FLAGS_INDEX:20,HEADER_PF_FOURCC_INDEX:21,DDSD_MIPMAPCOUNT:131072,DDPF_FOURCC:4},a_={DXT1:M.COMPRESSED_RGB_S3TC_DXT1_EXT,DXT3:M.COMPRESSED_RGBA_S3TC_DXT3_EXT,DXT5:M.COMPRESSED_RGBA_S3TC_DXT5_EXT,"ATC ":M.COMPRESSED_RGB_ATC_WEBGL,ATCA:M.COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL,ATCI:M.COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL},c_=ec,f_=Ir,l_=Ir,h_={DXT1:ec,DXT3:Ir,DXT5:Ir,"ATC ":c_,ATCA:f_,ATCI:l_};function Ja(t){return new Uint32Array(t,0,pt.HEADER_LENGTH)[pt.MAGIC_NUMBER_INDEX]===pt.MAGIC_NUMBER}function tc(t){let e=new Int32Array(t,0,pt.HEADER_LENGTH),n=e[pt.HEADER_PF_FOURCC_INDEX];Jt(Boolean(e[pt.HEADER_PF_FLAGS_INDEX]&pt.DDPF_FOURCC),"DDS: Unsupported format, must contain a FourCC code");let r=__(n),s=a_[r],o=h_[r];Jt(s&&o,`DDS: Unknown pixel format ${n}`);let i=1;e[pt.HEADER_FLAGS_INDEX]&pt.DDSD_MIPMAPCOUNT&&(i=Math.max(1,e[pt.MIPMAPCOUNT_INDEX]));let a=e[pt.HEADER_WIDTH_INDEX],f=e[pt.HEADER_HEIGHT_INDEX],c=e[pt.HEADER_SIZE_INDEX]+4,l=new Uint8Array(t,c);return Ve(l,{mipMapLevels:i,width:a,height:f,sizeFunction:o,internalFormat:s})}function ec(t,e){return(t+3>>2)*(e+3>>2)*8}function Ir(t,e){return(t+3>>2)*(e+3>>2)*16}function __(t){return String.fromCharCode(t&255,t>>8&255,t>>16&255,t>>24&255)}var gt={MAGIC_NUMBER:55727696,MAGIC_NUMBER_EXTRA:1347834371,HEADER_LENGTH:13,HEADER_SIZE:52,MAGIC_NUMBER_INDEX:0,PIXEL_FORMAT_INDEX:2,COLOUR_SPACE_INDEX:4,HEIGHT_INDEX:6,WIDTH_INDEX:7,MIPMAPCOUNT_INDEX:11,METADATA_SIZE_INDEX:12},d_={0:[M.COMPRESSED_RGB_PVRTC_2BPPV1_IMG],1:[M.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG],2:[M.COMPRESSED_RGB_PVRTC_4BPPV1_IMG],3:[M.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG],6:[M.COMPRESSED_RGB_ETC1_WEBGL],7:[M.COMPRESSED_RGB_S3TC_DXT1_EXT],9:[M.COMPRESSED_RGBA_S3TC_DXT3_EXT],11:[M.COMPRESSED_RGBA_S3TC_DXT5_EXT],22:[M.COMPRESSED_RGB8_ETC2],23:[M.COMPRESSED_RGBA8_ETC2_EAC],24:[M.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2],25:[M.COMPRESSED_R11_EAC],26:[M.COMPRESSED_RG11_EAC],27:[M.COMPRESSED_RGBA_ASTC_4X4_KHR,M.COMPRESSED_SRGB8_ALPHA8_ASTC_4X4_KHR],28:[M.COMPRESSED_RGBA_ASTC_5X4_KHR,M.COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR],29:[M.COMPRESSED_RGBA_ASTC_5X5_KHR,M.COMPRESSED_SRGB8_ALPHA8_ASTC_5X5_KHR],30:[M.COMPRESSED_RGBA_ASTC_6X5_KHR,M.COMPRESSED_SRGB8_ALPHA8_ASTC_6X5_KHR],31:[M.COMPRESSED_RGBA_ASTC_6X6_KHR,M.COMPRESSED_SRGB8_ALPHA8_ASTC_6X6_KHR],32:[M.COMPRESSED_RGBA_ASTC_8X5_KHR,M.COMPRESSED_SRGB8_ALPHA8_ASTC_8X5_KHR],33:[M.COMPRESSED_RGBA_ASTC_8X6_KHR,M.COMPRESSED_SRGB8_ALPHA8_ASTC_8X6_KHR],34:[M.COMPRESSED_RGBA_ASTC_8X8_KHR,M.COMPRESSED_SRGB8_ALPHA8_ASTC_8X8_KHR],35:[M.COMPRESSED_RGBA_ASTC_10X5_KHR,M.COMPRESSED_SRGB8_ALPHA8_ASTC_10X5_KHR],36:[M.COMPRESSED_RGBA_ASTC_10X6_KHR,M.COMPRESSED_SRGB8_ALPHA8_ASTC_10X6_KHR],37:[M.COMPRESSED_RGBA_ASTC_10X8_KHR,M.COMPRESSED_SRGB8_ALPHA8_ASTC_10X8_KHR],38:[M.COMPRESSED_RGBA_ASTC_10X10_KHR,M.COMPRESSED_SRGB8_ALPHA8_ASTC_10X10_KHR],39:[M.COMPRESSED_RGBA_ASTC_12X10_KHR,M.COMPRESSED_SRGB8_ALPHA8_ASTC_12X10_KHR],40:[M.COMPRESSED_RGBA_ASTC_12X12_KHR,M.COMPRESSED_SRGB8_ALPHA8_ASTC_12X12_KHR]},u_={0:nc,1:nc,2:rc,3:rc,6:Rn,7:Rn,9:Tn,11:Tn,22:Rn,23:Tn,24:Rn,25:Rn,26:Tn,27:Tn,28:p_,29:m_,30:A_,31:x_,32:g_,33:E_,34:S_,35:R_,36:T_,37:M_,38:y_,39:w_,40:O_};function sc(t){let n=new Uint32Array(t,0,gt.HEADER_LENGTH)[gt.MAGIC_NUMBER_INDEX];return n===gt.MAGIC_NUMBER||n===gt.MAGIC_NUMBER_EXTRA}function oc(t){let e=new Uint32Array(t,0,gt.HEADER_LENGTH),n=e[gt.PIXEL_FORMAT_INDEX],r=e[gt.COLOUR_SPACE_INDEX],s=d_[n]||[],o=s.length>1&&r?s[1]:s[0],i=u_[n],a=e[gt.MIPMAPCOUNT_INDEX],f=e[gt.WIDTH_INDEX],c=e[gt.HEIGHT_INDEX],l=gt.HEADER_SIZE+e[gt.METADATA_SIZE_INDEX],d=new Uint8Array(t,l);return Ve(d,{mipMapLevels:a,width:f,height:c,sizeFunction:i,internalFormat:o})}function nc(t,e){return t=Math.max(t,16),e=Math.max(e,8),t*e/4}function rc(t,e){return t=Math.max(t,8),e=Math.max(e,8),t*e/2}function Rn(t,e){return Math.floor((t+3)/4)*Math.floor((e+3)/4)*8}function Tn(t,e){return Math.floor((t+3)/4)*Math.floor((e+3)/4)*16}function p_(t,e){return Math.floor((t+4)/5)*Math.floor((e+3)/4)*16}function m_(t,e){return Math.floor((t+4)/5)*Math.floor((e+4)/5)*16}function A_(t,e){return Math.floor((t+5)/6)*Math.floor((e+4)/5)*16}function x_(t,e){return Math.floor((t+5)/6)*Math.floor((e+5)/6)*16}function g_(t,e){return Math.floor((t+7)/8)*Math.floor((e+4)/5)*16}function E_(t,e){return Math.floor((t+7)/8)*Math.floor((e+5)/6)*16}function S_(t,e){return Math.floor((t+7)/8)*Math.floor((e+7)/8)*16}function R_(t,e){return Math.floor((t+9)/10)*Math.floor((e+4)/5)*16}function T_(t,e){return Math.floor((t+9)/10)*Math.floor((e+5)/6)*16}function M_(t,e){return Math.floor((t+9)/10)*Math.floor((e+7)/8)*16}function y_(t,e){return Math.floor((t+9)/10)*Math.floor((e+9)/10)*16}function w_(t,e){return Math.floor((t+11)/12)*Math.floor((e+9)/10)*16}function O_(t,e){return Math.floor((t+11)/12)*Math.floor((e+11)/12)*16}function ic(t){if(Cr(t))return Qa(t);if(Ja(t))return tc(t);if(sc(t))return oc(t);throw new Error("Texture container format not recognized")}var ac={dataType:null,batchType:null,name:"Texture Containers",id:"compressed-texture",module:"textures",version:wr,worker:!0,extensions:["ktx","ktx2","dds","pvr"],mimeTypes:["image/ktx2","image/ktx","image/vnd-ms.dds","image/x-dds","application/octet-stream"],binary:!0,options:{"compressed-texture":{libraryPath:"libs/",useBasis:!1}}},vr={...ac,parse:async(t,e)=>e?.["compressed-texture"]?.useBasis?(e.basis={format:{alpha:"BC3",noAlpha:"BC1"},...e.basis,containerFormat:"ktx2",module:"encoder"},(await Br(t,e))[0]):ic(t)};var Mn;(function(t){t.vertexCount="vertexCount",t.featureCount="featureCount"})(Mn||(Mn={}));function Lr(t){let e;try{let n=new URL(t);e=`${n.origin}${n.pathname}`,e.startsWith("null")&&(e=null)}catch{e=null}return e||t}function Pt(t,e=null){return e?`${t}?token=${e}`:t}function cc(t,e){let{attributeData:n=[]}=e,r=[];for(let s=0;s<n.length;s++){let o=n[s].href.replace("./","");r.push(`${t}/${o}`)}return r}function fc(t,e,n){let r=[],{attributeStorageInfo:s=[]}=t;for(let o=0;o<s.length;o++){let i=s[o].key;r.push(`${e}/nodes/${n}/attributes/${i}/0`)}return r}var Nr=new v([0,0,0]);function b_(t){switch(t){case"ktx-etc2":case"dds":return vr;case"ktx2":return Sn;case"jpg":case"png":default:return yr}}var C_="i3s-attribute-type";async function dc(t,e,n,r,s){let o={attributes:{},indices:null,featureIds:[],vertexCount:0,modelMatrix:new dt,coordinateSystem:0,byteLength:0,texture:null};if(e.textureUrl){let i=Pt(e.textureUrl,r?.i3s?.token),a=b_(e.textureFormat),l=await(await(s?.fetch||fetch)(i)).arrayBuffer();if(r?.i3s.decodeTextures){if(a===yr){let d={...e.textureLoaderOptions,image:{type:"data"}};try{let _=await hs(l,[],d,s);o.texture=_}catch{let h=await(0,yn.parse)(l,a,d,s);o.texture=h}}else if(a===vr||a===Sn){let d=await(0,yn.load)(l,a,e.textureLoaderOptions);a===Sn&&(d=d[0]),o.texture={compressed:!0,mipmaps:!1,width:d[0].width,height:d[0].height,data:d}}}else o.texture=l}return o.material=U_(e.materialDefinition,o.texture),o.material&&(o.texture=null),await B_(t,o,e,n,r)}async function B_(t,e,n,r,s){let o=t.byteLength,i,a,f=0,c=0,l;if(n.isDracoGeometry){let d=await(0,yn.parse)(t,Ha,{draco:{attributeNameEntry:C_}});a=d.header.vertexCount,l=d.indices?.value;let{POSITION:_,NORMAL:h,COLOR_0:u,TEXCOORD_0:A,["feature-index"]:p,["uv-region"]:S}=d.attributes;i={position:_,normal:h,color:u,uv0:A,uvRegion:S,id:p},D_(i,d);let y=K_(p);y&&z_(i,y)}else{let{vertexAttributes:d,ordering:_,featureAttributes:h,featureAttributeOrder:u}=r.store.defaultGeometrySchema,A=v_(t,r);f=A.byteOffset,a=A.vertexCount,c=A.featureCount;let{attributes:p,byteOffset:S}=hc(t,f,d,a,_),{attributes:y}=hc(t,S,h,c,u);k_(y),i=I_(p,y)}if(!s?.i3s?.coordinateSystem||s.i3s.coordinateSystem===Lt.METER_OFFSETS){let d=N_(i.position,n);e.modelMatrix=d.invert(),e.coordinateSystem=Lt.METER_OFFSETS}else e.modelMatrix=F_(i.position),e.coordinateSystem=Lt.LNGLAT_OFFSETS;e.attributes={positions:i.position,normals:i.normal,colors:lc(i.color),texCoords:i.uv0,uvRegions:lc(i.uvRegion||i.region)},e.indices=l||null,i.id&&i.id.value&&(e.featureIds=i.id.value);for(let d in e.attributes)e.attributes[d]||delete e.attributes[d];return e.vertexCount=a,e.byteLength=o,e}function D_(t,e){for(let n in e.loaderData.attributes){let r=e.loaderData.attributes[n];switch(r.name){case"POSITION":t.position.metadata=r.metadata;break;case"feature-index":t.id.metadata=r.metadata;break;default:break}}}function I_(t,e){return{...t,...e}}function lc(t){return t&&(t.normalized=!0,t)}function v_(t,e){let n=0,r=0,s=0;for(let{property:o,type:i}of e.store.defaultGeometrySchema.header){let a=Zs(i);switch(o){case Mn.vertexCount.toString():r=new a(t,0,4)[0],n+=Ke(i);break;case Mn.featureCount.toString():s=new a(t,4,4)[0],n+=Ke(i);break;default:break}}return{vertexCount:r,featureCount:s,byteOffset:n}}function hc(t,e,n,r,s){let o={};for(let i of s)if(n[i]){let{valueType:a,valuesPerElement:f}=n[i];if(e+r*f*Ke(a)<=t.byteLength){let c=t.slice(e),l;if(a==="UInt64")l=L_(c,r*f,Ke(a));else{let d=Zs(a);l=new d(c,0,r*f)}switch(o[i]={value:l,type:da[a],size:f},i){case"color":o.color.normalized=!0;break;case"position":case"region":case"normal":default:}e=e+r*f*Ke(a)}else if(i!=="uv0")break}return{attributes:o,byteOffset:e}}function L_(t,e,n){let r=[],s=new DataView(t),o=0;for(let i=0;i<e;i++){let a=s.getUint32(o,!0),f=s.getUint32(o+4,!0),c=a+2**32*f;r.push(c),o+=n}return new Uint32Array(r)}function N_(t,e){let n=e.mbs,r=t.value,s=t.metadata,o=new dt,i=new v(n[0],n[1],n[2]),a=new v;return xt.WGS84.cartographicToCartesian(i,a),xt.WGS84.eastNorthUpToFixedFrame(a,o),t.value=P_(r,s,i),o}function P_(t,e={},n){let r=new Float64Array(t.length),s=e["i3s-scale_x"]&&e["i3s-scale_x"].double||1,o=e["i3s-scale_y"]&&e["i3s-scale_y"].double||1;for(let i=0;i<r.length;i+=3)r[i]=t[i]*s+n.x,r[i+1]=t[i+1]*o+n.y,r[i+2]=t[i+2]+n.z;for(let i=0;i<r.length;i+=3)xt.WGS84.cartographicToCartesian(r.subarray(i,i+3),Nr),r[i]=Nr.x,r[i+1]=Nr.y,r[i+2]=Nr.z;return r}function F_(t){let e=t.metadata,n=e?.["i3s-scale_x"]?.double||1,r=e?.["i3s-scale_y"]?.double||1,s=new dt;return s[0]=n,s[5]=r,s}function U_(t,e){let n;return t?n={...t,pbrMetallicRoughness:t.pbrMetallicRoughness?{...t.pbrMetallicRoughness}:{baseColorFactor:[255,255,255,255]}}:(n={pbrMetallicRoughness:{}},e?n.pbrMetallicRoughness.baseColorTexture={texCoord:0}:n.pbrMetallicRoughness.baseColorFactor=[255,255,255,255]),n.alphaCutoff=n.alphaCutoff||.25,n.alphaMode&&(n.alphaMode=n.alphaMode.toUpperCase()),n.emissiveFactor&&(n.emissiveFactor=_c(n.emissiveFactor)),n.pbrMetallicRoughness&&n.pbrMetallicRoughness.baseColorFactor&&(n.pbrMetallicRoughness.baseColorFactor=_c(n.pbrMetallicRoughness.baseColorFactor)),e&&G_(n,e),n}function _c(t){let e=[...t];for(let n=0;n<t.length;n++)e[n]=t[n]/255;return e}function G_(t,e){let n={source:{image:e}};t.pbrMetallicRoughness&&t.pbrMetallicRoughness.baseColorTexture?t.pbrMetallicRoughness.baseColorTexture={...t.pbrMetallicRoughness.baseColorTexture,texture:n}:t.emissiveTexture?t.emissiveTexture={...t.emissiveTexture,texture:n}:t.pbrMetallicRoughness&&t.pbrMetallicRoughness.metallicRoughnessTexture?t.pbrMetallicRoughness.metallicRoughnessTexture={...t.pbrMetallicRoughness.metallicRoughnessTexture,texture:n}:t.normalTexture?t.normalTexture={...t.normalTexture,texture:n}:t.occlusionTexture&&(t.occlusionTexture={...t.occlusionTexture,texture:n})}function k_(t){let{id:e,faceRange:n}=t;if(!e||!n)return;let r=e.value,s=n.value,o=s[s.length-1]+1,i=new Uint32Array(o*3),a=0,f=0;for(let c=1;c<s.length;c+=2){let l=Number(r[a]),d=s[c],_=s[c-1],h=d-_+1,u=f+h*3;i.fill(l,f,u),a++,f=u}t.id.value=i}function z_(t,e){let n=t.id.value,r=new Float32Array(n.length);for(let s=0;s<n.length;s++)r[s]=e[n[s]];t.id.value=r}function K_(t){return t?.metadata?.["i3s-feature-ids"]?.intArray}var H_="4.3.1",Pr={dataType:null,batchType:null,name:"I3S Content (Indexed Scene Layers)",id:"i3s-content",module:"i3s",worker:!0,version:H_,mimeTypes:["application/octet-stream"],parse:V_,extensions:["bin"],options:{"i3s-content":{}}};async function V_(t,e,n){let{tile:r,_tileOptions:s,tileset:o,_tilesetOptions:i}=e?.i3s||{},a=s||r,f=i||o;return!a||!f?null:await dc(t,a,f,e,n)}var et={OUTSIDE:-1,INTERSECTING:0,INSIDE:1};var _E=new v,dE=new v;var wn=new v,uc=new v,re=class{constructor(e=[0,0,0],n=0){this.radius=-0,this.center=new v,this.fromCenterRadius(e,n)}fromCenterRadius(e,n){return this.center.from(e),this.radius=n,this}fromCornerPoints(e,n){return n=wn.from(n),this.center=new v().from(e).add(n).scale(.5),this.radius=this.center.distance(n),this}equals(e){return this===e||Boolean(e)&&this.center.equals(e.center)&&this.radius===e.radius}clone(){return new re(this.center,this.radius)}union(e){let n=this.center,r=this.radius,s=e.center,o=e.radius,i=wn.copy(s).subtract(n),a=i.magnitude();if(r>=a+o)return this.clone();if(o>=a+r)return e.clone();let f=(r+a+o)*.5;return uc.copy(i).scale((-r+f)/a).add(n),this.center.copy(uc),this.radius=f,this}expand(e){let r=wn.from(e).subtract(this.center).magnitude();return r>this.radius&&(this.radius=r),this}transform(e){this.center.transform(e);let n=un.getScaling(wn,e);return this.radius=Math.max(n[0],Math.max(n[1],n[2]))*this.radius,this}distanceSquaredTo(e){let n=this.distanceTo(e);return n*n}distanceTo(e){let r=wn.from(e).subtract(this.center);return Math.max(0,r.len()-this.radius)}intersectPlane(e){let n=this.center,r=this.radius,o=e.normal.dot(n)+e.distance;return o<-r?et.OUTSIDE:o<r?et.INTERSECTING:et.INSIDE}};var X_=new v,W_=new v,Fr=new v,Ur=new v,Gr=new v,q_=new v,Z_=new v,Wt={COLUMN0ROW0:0,COLUMN0ROW1:1,COLUMN0ROW2:2,COLUMN1ROW0:3,COLUMN1ROW1:4,COLUMN1ROW2:5,COLUMN2ROW0:6,COLUMN2ROW1:7,COLUMN2ROW2:8},se=class{constructor(e=[0,0,0],n=[0,0,0,0,0,0,0,0,0]){this.center=new v().from(e),this.halfAxes=new Y(n)}get halfSize(){let e=this.halfAxes.getColumn(0),n=this.halfAxes.getColumn(1),r=this.halfAxes.getColumn(2);return[new v(e).len(),new v(n).len(),new v(r).len()]}get quaternion(){let e=this.halfAxes.getColumn(0),n=this.halfAxes.getColumn(1),r=this.halfAxes.getColumn(2),s=new v(e).normalize(),o=new v(n).normalize(),i=new v(r).normalize();return new ze().fromMatrix3(new Y([...s,...o,...i]))}fromCenterHalfSizeQuaternion(e,n,r){let s=new ze(r),o=new Y().fromQuaternion(s);return o[0]=o[0]*n[0],o[1]=o[1]*n[0],o[2]=o[2]*n[0],o[3]=o[3]*n[1],o[4]=o[4]*n[1],o[5]=o[5]*n[1],o[6]=o[6]*n[2],o[7]=o[7]*n[2],o[8]=o[8]*n[2],this.center=new v().from(e),this.halfAxes=o,this}clone(){return new se(this.center,this.halfAxes)}equals(e){return this===e||Boolean(e)&&this.center.equals(e.center)&&this.halfAxes.equals(e.halfAxes)}getBoundingSphere(e=new re){let n=this.halfAxes,r=n.getColumn(0,Fr),s=n.getColumn(1,Ur),o=n.getColumn(2,Gr),i=X_.copy(r).add(s).add(o);return e.center.copy(this.center),e.radius=i.magnitude(),e}intersectPlane(e){let n=this.center,r=e.normal,s=this.halfAxes,o=r.x,i=r.y,a=r.z,f=Math.abs(o*s[Wt.COLUMN0ROW0]+i*s[Wt.COLUMN0ROW1]+a*s[Wt.COLUMN0ROW2])+Math.abs(o*s[Wt.COLUMN1ROW0]+i*s[Wt.COLUMN1ROW1]+a*s[Wt.COLUMN1ROW2])+Math.abs(o*s[Wt.COLUMN2ROW0]+i*s[Wt.COLUMN2ROW1]+a*s[Wt.COLUMN2ROW2]),c=r.dot(n)+e.distance;return c<=-f?et.OUTSIDE:c>=f?et.INSIDE:et.INTERSECTING}distanceTo(e){return Math.sqrt(this.distanceSquaredTo(e))}distanceSquaredTo(e){let n=W_.from(e).subtract(this.center),r=this.halfAxes,s=r.getColumn(0,Fr),o=r.getColumn(1,Ur),i=r.getColumn(2,Gr),a=s.magnitude(),f=o.magnitude(),c=i.magnitude();s.normalize(),o.normalize(),i.normalize();let l=0,d;return d=Math.abs(n.dot(s))-a,d>0&&(l+=d*d),d=Math.abs(n.dot(o))-f,d>0&&(l+=d*d),d=Math.abs(n.dot(i))-c,d>0&&(l+=d*d),l}computePlaneDistances(e,n,r=[-0,-0]){let s=Number.POSITIVE_INFINITY,o=Number.NEGATIVE_INFINITY,i=this.center,a=this.halfAxes,f=a.getColumn(0,Fr),c=a.getColumn(1,Ur),l=a.getColumn(2,Gr),d=q_.copy(f).add(c).add(l).add(i),_=Z_.copy(d).subtract(e),h=n.dot(_);return s=Math.min(h,s),o=Math.max(h,o),d.copy(i).add(f).add(c).subtract(l),_.copy(d).subtract(e),h=n.dot(_),s=Math.min(h,s),o=Math.max(h,o),d.copy(i).add(f).subtract(c).add(l),_.copy(d).subtract(e),h=n.dot(_),s=Math.min(h,s),o=Math.max(h,o),d.copy(i).add(f).subtract(c).subtract(l),_.copy(d).subtract(e),h=n.dot(_),s=Math.min(h,s),o=Math.max(h,o),i.copy(d).subtract(f).add(c).add(l),_.copy(d).subtract(e),h=n.dot(_),s=Math.min(h,s),o=Math.max(h,o),i.copy(d).subtract(f).add(c).subtract(l),_.copy(d).subtract(e),h=n.dot(_),s=Math.min(h,s),o=Math.max(h,o),i.copy(d).subtract(f).subtract(c).add(l),_.copy(d).subtract(e),h=n.dot(_),s=Math.min(h,s),o=Math.max(h,o),i.copy(d).subtract(f).subtract(c).subtract(l),_.copy(d).subtract(e),h=n.dot(_),s=Math.min(h,s),o=Math.max(h,o),r[0]=s,r[1]=o,r}transform(e){this.center.transformAsPoint(e);let n=this.halfAxes.getColumn(0,Fr);n.transformAsPoint(e);let r=this.halfAxes.getColumn(1,Ur);r.transformAsPoint(e);let s=this.halfAxes.getColumn(2,Gr);return s.transformAsPoint(e),this.halfAxes=new Y([...n,...r,...s]),this}getTransform(){throw new Error("not implemented")}};var pc=new v,mc=new v,qt=class{constructor(e=[0,0,1],n=0){this.normal=new v,this.distance=-0,this.fromNormalDistance(e,n)}fromNormalDistance(e,n){return tt(Number.isFinite(n)),this.normal.from(e).normalize(),this.distance=n,this}fromPointNormal(e,n){e=pc.from(e),this.normal.from(n).normalize();let r=-this.normal.dot(e);return this.distance=r,this}fromCoefficients(e,n,r,s){return this.normal.set(e,n,r),tt(_t(this.normal.len(),1)),this.distance=s,this}clone(){return new qt(this.normal,this.distance)}equals(e){return _t(this.distance,e.distance)&&_t(this.normal,e.normal)}getPointDistance(e){return this.normal.dot(e)+this.distance}transform(e){let n=mc.copy(this.normal).transformAsVector(e).normalize(),r=this.normal.scale(-this.distance).transform(e);return this.fromPointNormal(r,n)}projectPointOntoPlane(e,n=[0,0,0]){let r=pc.from(e),s=this.getPointDistance(r),o=mc.copy(this.normal).scale(s);return r.subtract(o).to(n)}};var Ac=[new v([1,0,0]),new v([0,1,0]),new v([0,0,1])],xc=new v,Q_=new v,Et=class{constructor(e=[]){this.planes=e}fromBoundingSphere(e){this.planes.length=2*Ac.length;let n=e.center,r=e.radius,s=0;for(let o of Ac){let i=this.planes[s],a=this.planes[s+1];i||(i=this.planes[s]=new qt),a||(a=this.planes[s+1]=new qt);let f=xc.copy(o).scale(-r).add(n);i.fromPointNormal(f,o);let c=xc.copy(o).scale(r).add(n),l=Q_.copy(o).negate();a.fromPointNormal(c,l),s+=2}return this}computeVisibility(e){let n=et.INSIDE;for(let r of this.planes)switch(e.intersectPlane(r)){case et.OUTSIDE:return et.OUTSIDE;case et.INTERSECTING:n=et.INTERSECTING;break;default:}return n}computeVisibilityWithPlaneMask(e,n){if(tt(Number.isFinite(n),"parentPlaneMask is required."),n===Et.MASK_OUTSIDE||n===Et.MASK_INSIDE)return n;let r=Et.MASK_INSIDE,s=this.planes;for(let o=0;o<this.planes.length;++o){let i=o<31?1<<o:0;if(o<31&&!(n&i))continue;let a=s[o],f=e.intersectPlane(a);if(f===et.OUTSIDE)return Et.MASK_OUTSIDE;f===et.INTERSECTING&&(r|=i)}return r}};Et.MASK_OUTSIDE=4294967295;Et.MASK_INSIDE=0;Et.MASK_INDETERMINATE=2147483647;var DE=new v,IE=new v,vE=new v,LE=new v,NE=new v;var zE=new v,KE=new v,HE=new v,VE=new v,XE=new v,WE=new v,qE=new v,ZE=new v,QE=new v,YE=new v,jE=new v,$E=new v;var eS=new Y,nS=new Y,rS=new Y,sS=new Y,oS=new Y;var hS=new v,_S=new v,dS=new v,uS=new v,pS=new v,mS=new Y,AS={diagonal:new Y,unitary:new Y};var Ec=Ct(Ht(),1);var On;(function(t){t[t.ADD=1]="ADD",t[t.REPLACE=2]="REPLACE"})(On||(On={}));var bn;(function(t){t.EMPTY="empty",t.SCENEGRAPH="scenegraph",t.POINTCLOUD="pointcloud",t.MESH="mesh"})(bn||(bn={}));var Cn;(function(t){t.I3S="I3S",t.TILES3D="TILES3D"})(Cn||(Cn={}));var ho;(function(t){t.GEOMETRIC_ERROR="geometricError",t.MAX_SCREEN_THRESHOLD="maxScreenThreshold"})(ho||(ho={}));var gc=Ct(Ht(),1);var J_="4.3.1",kr={dataType:null,batchType:null,name:"I3S Node Page",id:"i3s-node-page",module:"i3s",version:J_,mimeTypes:["application/json"],parse:td,extensions:["json"],options:{i3s:{}}};async function td(t,e){return JSON.parse(new TextDecoder().decode(t))}var Bn=class{tileset;nodePages=[];pendingNodePages=[];nodesPerPage;options;lodSelectionMetricType;textureDefinitionsSelectedFormats=[];nodesInNodePages;url;textureLoaderOptions={};constructor(e,n="",r){this.tileset={...e},this.url=n,this.nodesPerPage=e.nodePages?.nodesPerPage||64,this.lodSelectionMetricType=e.nodePages?.lodSelectionMetricType,this.options=r,this.nodesInNodePages=0,this.initSelectedFormatsForTextureDefinitions(e)}async getNodeById(e){let n=Math.floor(e/this.nodesPerPage);if(!this.nodePages[n]&&!this.pendingNodePages[n]){let s=Pt(`${this.url}/nodepages/${n}`,this.options.i3s?.token);this.pendingNodePages[n]={status:"Pending",promise:(0,gc.load)(s,kr,this.options)},this.nodePages[n]=await this.pendingNodePages[n].promise,this.nodesInNodePages+=this.nodePages[n].nodes.length,this.pendingNodePages[n].status="Done"}this.pendingNodePages[n].status==="Pending"&&(this.nodePages[n]=await this.pendingNodePages[n].promise);let r=e%this.nodesPerPage;return this.nodePages[n].nodes[r]}async formTileFromNodePages(e){let n=await this.getNodeById(e),r=[],s=[];for(let h of n.children||[])s.push(this.getNodeById(h));let o=await Promise.all(s);for(let h of o)r.push({id:h.index.toString(),obb:h.obb});let i,a,f,c="jpg",l=[],d=!1;if(n&&n.mesh){let{url:h,isDracoGeometry:u}=n.mesh.geometry&&this.getContentUrl(n.mesh.geometry)||{isDracoGeometry:!1};i=h,d=u;let{textureData:A,materialDefinition:p}=this.getInformationFromMaterial(n.mesh.material);f=p,c=A.format||c,A.name&&(a=`${this.url}/nodes/${n.mesh.material.resource}/textures/${A.name}`),this.tileset.attributeStorageInfo&&(l=fc(this.tileset,this.url,n.mesh.attribute.resource))}let _=this.getLodSelection(n);return _o({id:e.toString(),lodSelection:_,obb:n.obb,contentUrl:i,textureUrl:a,attributeUrls:l,materialDefinition:f,textureFormat:c,textureLoaderOptions:this.textureLoaderOptions,children:r,isDracoGeometry:d})}getContentUrl(e){let n=null,r=this.tileset.geometryDefinitions[e.definition],s=-1;if(this.options.i3s&&this.options.i3s.useDracoGeometry&&(s=r.geometryBuffers.findIndex(o=>o.compressedAttributes&&o.compressedAttributes.encoding==="draco")),s===-1&&(s=r.geometryBuffers.findIndex(o=>!o.compressedAttributes)),s!==-1){let o=Boolean(r.geometryBuffers[s].compressedAttributes);n={url:`${this.url}/nodes/${e.resource}/geometries/${s}`,isDracoGeometry:o}}return n}getLodSelection(e){let n=[];return this.lodSelectionMetricType==="maxScreenThresholdSQ"&&n.push({metricType:"maxScreenThreshold",maxError:Math.sqrt(e.lodThreshold/(Math.PI*.25))}),n.push({metricType:this.lodSelectionMetricType,maxError:e.lodThreshold}),n}getInformationFromMaterial(e){let n={textureData:{name:null}};if(e){let r=this.tileset.materialDefinitions?.[e.definition];if(r){n.materialDefinition=r;let s=r?.pbrMetallicRoughness?.baseColorTexture?.textureSetDefinitionId;typeof s=="number"&&(n.textureData=this.textureDefinitionsSelectedFormats[s]||n.textureData)}}return n}initSelectedFormatsForTextureDefinitions(e){this.textureDefinitionsSelectedFormats=[];let n=this.getSupportedTextureFormats(),r=e.textureSetDefinitions||[];for(let s of r){let o=s&&s.formats||[],i=null;for(let a of n){let f=o.find(c=>c.format===a);if(f){i=f;break}}i&&i.format==="ktx2"&&(this.textureLoaderOptions.basis={format:Dr(),containerFormat:"ktx2",module:"encoder"}),this.textureDefinitionsSelectedFormats.push(i)}}getSupportedTextureFormats(){let e=[];if(!this.options.i3s||this.options.i3s.useCompressedTextures){let n=En();n.has("etc2")&&e.push("ktx-etc2"),n.has("dxt")&&e.push("dds"),e.push("ktx2")}return e.push("jpg"),e.push("png"),e}};function Sc(t,e){let n=e.url||"",r;t.geometryData&&(r=`${n}/${t.geometryData[0].href}`);let s;t.textureData&&(s=`${n}/${t.textureData[0].href}`);let o;t.attributeData&&(o=cc(n,t));let i=t.children||[];return _o({...t,children:i,url:n,contentUrl:r,textureUrl:s,textureFormat:"jpg",attributeUrls:o,isDracoGeometry:!1})}function _o(t){let e={},n=[0,0,0,1];if(t.mbs)n=t.mbs,e.sphere=[...xt.WGS84.cartographicToCartesian(t.mbs.slice(0,3)),t.mbs[3]];else if(t.obb){e.box=[...xt.WGS84.cartographicToCartesian(t.obb.center),...t.obb.halfSize,...t.obb.quaternion];let f=new se().fromCenterHalfSizeQuaternion(e.box.slice(0,3),t.obb.halfSize,t.obb.quaternion).getBoundingSphere();e.sphere=[...f.center,f.radius],n=[...t.obb.center,f.radius]}let r=t.lodSelection?.[0].metricType,s=t.lodSelection?.[0].maxError,o=bn.MESH,i=On.REPLACE;return{...t,mbs:n,boundingVolume:e,lodMetricType:r,lodMetricValue:s,type:o,refine:i}}async function Rc(t,e,n){let r=Lr(n.url||""),s,o;if(t.nodePages)s=new Bn(t,r,e),o=await s.formTileFromNodePages(0);else{let i=e.i3s,a=Pt(`${r}/nodes/root`,i.token);o=await(0,Ec.load)(a,Dn,{...e,i3s:{...e.i3s,loadContent:!1,isTileHeader:!0,isTileset:!1}})}return{...t,loader:Dn,url:r,basePath:r,type:Cn.I3S,nodePagesTile:s,root:o,lodMetricType:o.lodMetricType,lodMetricValue:o.lodMetricValue}}var ed="4.3.1",nd=/layers\/[0-9]+$/,rd=/\.slpk$/,sd=/nodes\/([0-9-]+|root)$/,od="504b0304",id="PointCloud",Dn={dataType:null,batchType:null,name:"I3S (Indexed Scene Layers)",id:"i3s",module:"i3s",version:ed,mimeTypes:["application/octet-stream"],parse:ad,extensions:["bin"],options:{i3s:{token:null,isTileset:"auto",isTileHeader:"auto",tile:null,tileset:null,_tileOptions:null,_tilesetOptions:null,useDracoGeometry:!0,useCompressedTextures:!0,decodeTextures:!0,coordinateSystem:Lt.METER_OFFSETS}}};async function ad(t,e={},n){let r=n.url;if(e.i3s=e.i3s||{},hd(t)===od)throw new Error("Files with .slpk extention currently are not supported by I3SLoader");let o=Lr(r),i;e.i3s.isTileset==="auto"?i=nd.test(o)||rd.test(o):i=e.i3s.isTileset;let a;return e.isTileHeader==="auto"?a=sd.test(o):a=e.i3s.isTileHeader,i?t=await fd(t,e,n):a?t=await ld(t,n):t=await cd(t,e),t}async function cd(t,e){return await(0,Tc.parse)(t,Pr,e)}async function fd(t,e,n){let r=JSON.parse(new TextDecoder().decode(t));if(r?.layerType===id)throw new Error("Point Cloud layers currently are not supported by I3SLoader");return await Rc(r,e,n)}async function ld(t,e){return t=JSON.parse(new TextDecoder().decode(t)),Sc(t,e)}function hd(t){return t instanceof ArrayBuffer?[...new Uint8Array(t,0,4)].map(e=>e.toString(16).padStart(2,"0")).join(""):null}var In=async(t,e)=>{let n=[await t.getUint8(t.length-1n),await t.getUint8(t.length-2n),await t.getUint8(t.length-3n),void 0],r=-1,s=t.length-4n;do{let o=s;s-=BigInt(1024),s=s>=0n?s:0n;let i=new Uint8Array(await t.slice(s,o));for(let a=i.length-1;a>-1;a--)if(n[3]=n[2],n[2]=n[1],n[1]=n[0],n[0]=i[a],n.every((f,c)=>f===e[c])){r=a;break}}while(r===-1&&s>0n);return s+BigInt(r)};var Mc=new Uint8Array([80,75,5,6]),yc=new Uint8Array([80,75,6,7]),wc=new Uint8Array([80,75,6,6]),_d=8n;var dd=12n,ud=16n;var pd=8n,md=24n;var Ad=40n,xd=48n;var Oc=async t=>{let e=await In(t,Mc),n=BigInt(await t.getUint16(e+_d)),r=BigInt(await t.getUint32(e+dd)),s=BigInt(await t.getUint32(e+ud)),o=e-20n,i=0n,a=await t.slice(o,o+4n);if(te(a,yc)){i=await t.getBigUint64(o+pd);let f=await t.slice(i,i+4n);if(!te(f,wc.buffer))throw new Error("zip64 EoCD not found");n=await t.getBigUint64(i+md),r=await t.getBigUint64(i+Ad),s=await t.getBigUint64(i+xd)}else o=0n;return{cdRecordsNumber:n,cdStartOffset:s,cdByteSize:r,offsets:{zip64EoCDOffset:i,zip64EoCDLocatorOffset:o,zipEoCDOffset:e}}};var iR=[{offset:0,size:4,default:new DataView(Mc.buffer).getUint32(0,!0)},{offset:4,size:2,default:0},{offset:6,size:2,default:0},{offset:8,size:2,name:"recordsNumber"},{offset:10,size:2,name:"recordsNumber"},{offset:12,size:4,name:"cdSize"},{offset:16,size:4,name:"cdOffset"},{offset:20,size:2,default:0}];var aR=[{offset:0,size:4,default:new DataView(yc.buffer).getUint32(0,!0)},{offset:4,size:4,default:0},{offset:8,size:8,name:"eoCDStart"},{offset:16,size:4,default:1}],cR=[{offset:0,size:4,default:new DataView(wc.buffer).getUint32(0,!0)},{offset:4,size:8,default:44},{offset:12,size:2,default:45},{offset:14,size:2,default:45},{offset:16,size:4,default:0},{offset:20,size:4,default:0},{offset:24,size:8,name:"recordsNumber"},{offset:32,size:8,name:"recordsNumber"},{offset:40,size:8,name:"cdSize"},{offset:48,size:8,name:"cdOffset"}];var gd=20,Ed=24,Sd=28,Rd=30,Td=32,Md=42,zr=46n,Ln=new Uint8Array([80,75,1,2]),vn=async(t,e)=>{if(t>=e.length)return null;let n=new DataView(await e.slice(t,t+zr)),r=n.buffer.slice(0,4);if(!te(r,Ln.buffer))return null;let s=BigInt(n.getUint32(gd,!0)),o=BigInt(n.getUint32(Ed,!0)),i=n.getUint16(Rd,!0),a=BigInt(n.getUint16(Td,!0)),f=n.getUint16(Sd,!0),c=await e.slice(t+zr,t+zr+BigInt(f+i)),l=c.slice(0,f),d=new TextDecoder().decode(l),_=t+zr+BigInt(f),h=n.getUint32(Md,!0),u=BigInt(h),A=new DataView(c.slice(f,c.byteLength)),p={uncompressedSize:o,compressedSize:s,localHeaderOffset:u,startDisk:a},S=yd(p,A);return{...p,...S,extraFieldLength:i,fileNameLength:f,fileName:d,extraOffset:_}};async function*Xe(t){let{cdStartOffset:e,cdByteSize:n}=await Oc(t),r=new _e(new DataView(await t.slice(e,e+n))),s=await vn(0n,r);for(;s;)yield s,s=await vn(s.extraOffset+BigInt(s.extraFieldLength),r)}var bc=(...t)=>t[0]+t[1]*16,yd=(t,e)=>{let n=wd(t),r={};if(n.length>0){let s=n.reduce((a,f)=>a+f.length,0),o=new Uint8Array(e.buffer).findIndex((a,f,c)=>bc(c[f],c[f+1])===1&&bc(c[f+2],c[f+3])===s),i=0;for(let a of n){let f=i;r[a.name]=e.getBigUint64(o+4+f,!0),i=f+a.length}}return r},wd=t=>{let e=[];return t.uncompressedSize===BigInt(4294967295)&&e.push({name:"uncompressedSize",length:8}),t.compressedSize===BigInt(4294967295)&&e.push({name:"compressedSize",length:8}),t.localHeaderOffset===BigInt(4294967295)&&e.push({name:"localHeaderOffset",length:8}),t.startDisk===BigInt(4294967295)&&e.push({name:"startDisk",length:4}),e};var _R=[{offset:0,size:4,default:new DataView(Ln.buffer).getUint32(0,!0)},{offset:4,size:2,default:45},{offset:6,size:2,default:45},{offset:8,size:2,default:0},{offset:10,size:2,default:0},{offset:12,size:2,default:0},{offset:14,size:2,default:0},{offset:16,size:4,name:"crc32"},{offset:20,size:4,name:"length"},{offset:24,size:4,name:"length"},{offset:28,size:2,name:"fnlength"},{offset:30,size:2,default:0,name:"extraLength"},{offset:32,size:2,default:0},{offset:34,size:2,default:0},{offset:36,size:2,default:0},{offset:38,size:4,default:0},{offset:42,size:4,name:"offset"}];var Od=8,bd=18,Cd=22,Bd=26,Dd=28,Kr=30n,uo=new Uint8Array([80,75,3,4]),Ae=async(t,e)=>{let n=new DataView(await e.slice(t,t+Kr)),r=n.buffer.slice(0,4);if(!te(r,uo))return null;let s=n.getUint16(Bd,!0),o=n.getUint16(Dd,!0),i=await e.slice(t+Kr,t+Kr+BigInt(s+o)),a=i.slice(0,s),f=new DataView(i.slice(s,i.byteLength)),c=new TextDecoder().decode(a).split("\\").join("/"),l=t+Kr+BigInt(s+o),d=n.getUint16(Od,!0),_=BigInt(n.getUint32(bd,!0)),h=BigInt(n.getUint32(Cd,!0)),u=4;return h===BigInt(4294967295)&&(h=f.getBigUint64(u,!0),u+=8),_===BigInt(4294967295)&&(_=f.getBigUint64(u,!0),u+=8),l===BigInt(4294967295)&&(l=f.getBigUint64(u,!0)),{fileNameLength:s,fileName:c,extraFieldLength:o,fileDataOffset:l,compressedSize:_,compressionMethod:d}};var pR=[{offset:0,size:4,default:new DataView(uo.buffer).getUint32(0,!0)},{offset:4,size:2,default:45},{offset:6,size:2,default:0},{offset:8,size:2,default:0},{offset:10,size:2,default:0},{offset:12,size:2,default:0},{offset:14,size:4,name:"crc32"},{offset:18,size:4,name:"length"},{offset:22,size:4,name:"length"},{offset:26,size:2,name:"fnlength"},{offset:28,size:2,default:0,name:"extraLength"}];var Hr=class{constructor(e={}){this.hashBatches=this.hashBatches.bind(this)}async preload(){}async*hashBatches(e,n="base64"){let r=[];for await(let i of e)r.push(i),yield i;let s=await this.concatenate(r),o=await this.hash(s,n);this.options.crypto?.onEnd?.({hash:o})}async concatenate(e){return await on(e)}};function Cc(t){t=`${t}`;for(let n=0;n<t.length;n++)if(t.charCodeAt(n)>255)return null;let e="";for(let n=0;n<t.length;n+=3){let r=[void 0,void 0,void 0,void 0];r[0]=t.charCodeAt(n)>>2,r[1]=(t.charCodeAt(n)&3)<<4,t.length>n+1&&(r[1]|=t.charCodeAt(n+1)>>4,r[2]=(t.charCodeAt(n+1)&15)<<2),t.length>n+2&&(r[2]|=t.charCodeAt(n+2)>>6,r[3]=t.charCodeAt(n+2)&63);for(let s=0;s<r.length;s++)typeof r[s]>"u"?e+="=":e+=Id(r[s])}return e}function Id(t){if(t<26)return String.fromCharCode(t+"A".charCodeAt(0));if(t<52)return String.fromCharCode(t-26+"a".charCodeAt(0));if(t<62)return String.fromCharCode(t-52+"0".charCodeAt(0));if(t===62)return"+";if(t===63)return"/"}function Bc(t,e){switch(e){case"hex":return t;case"base64":return vd(t);default:throw new Error(e)}}function vd(t){t.length%2!==0&&(t=`0${t}`);let n=(t.match(/\w{2}/g)||[]).map(r=>String.fromCharCode(parseInt(r,16))).join("");return Cc(n)||""}var Ic=typeof atob=="function"?atob:typeof Buffer=="function"?kd:Lc,Ld=Ic("AGFzbQEAAAABDANgAX8AYAAAYAABfwIeAgdpbXBvcnRzA2xvZwAAB2ltcG9ydHMDbWVtAgABAzIxAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAAAAAAAAAAAAgICAgIAAAAAAAaYARt/AUGBxpS6Bgt/AUGJ17b+fgt/AUH+uevFeQt/AUH2qMmBAQt/AUEAC38BQQALfwFBAAt/AUEAC38BQQALfwFBAAt/AUEAC38BQQALfwFBAAt/AUEAC38BQQALfwFBAAt/AUEAC38BQQALfwFBAAt/AUEAC38BQQALfwFBAAt/AUEAC38BQQALfwFBAAt/AUEAC38BQQALB7oCJQhvbmVGdWxsQQAYCG9uZUZ1bGxCABkIb25lRnVsbEMAGghvbmVGdWxsRAAbBWxvb3BzAAEEbG9vcAACBXByaW1lAAMFbG9vcEEABAZsb29wQTEABQZsb29wQTIABgZsb29wQTMABwZsb29wQTQACAVsb29wQgAJBmxvb3BCMQAKBmxvb3BCMgALBmxvb3BCMwAMBmxvb3BCNAANBWxvb3BDAA4GbG9vcEMxAA8GbG9vcEMyABAGbG9vcEMzABEGbG9vcEM0ABIFbG9vcEQAEwZsb29wRDEAFAZsb29wRDIAFQZsb29wRDMAFgZsb29wRDQAFwRnZXRBACgEZ2V0QgApBGdldEMAKgRnZXREACsEZ2V0WAAsBHNldEEALQRzZXRCAC4Ec2V0QwAvBHNldEQAMARzZXRYADEKzA0xWwEBf0EAJAggAEEGdCEBAkADQCMIIAFGDQEjACQEIwEkBSMCJAYjAyQHEAIjBCMAaiQAIwUjAWokASMGIwJqJAIjByMDaiQDIwhBwABqJAgMAAsLIwgjGmokGgsTACMIIxpqJAkQAxAEEAkQDhATC6IBAEEAIwlqKAIAJApBBCMJaigCACQLQQgjCWooAgAkDEEMIwlqKAIAJA1BECMJaigCACQOQRQjCWooAgAkD0EYIwlqKAIAJBBBHCMJaigCACQRQSAjCWooAgAkEkEkIwlqKAIAJBNBKCMJaigCACQUQSwjCWooAgAkFUEwIwlqKAIAJBZBNCMJaigCACQXQTgjCWooAgAkGEE8IwlqKAIAJBkLCgAQBRAGEAcQCAsuAEH4yKq7fSMKahAYQdbunsZ+IwtqEBtB2+GBoQIjDGoQGkHunfeNfCMNahAZCy0AQa+f8Kt/Iw5qEBhBqoyfvAQjD2oQG0GTjMHBeiMQahAaQYGqmmojEWoQGQssAEHYsYLMBiMSahAYQa/vk9p4IxNqEBtBsbd9IxRqEBpBvq/zyngjFWoQGQstAEGiosDcBiMWahAYQZPj4WwjF2oQG0GOh+WzeiMYahAaQaGQ0M0EIxlqEBkLCgAQChALEAwQDQsuAEHiyviwfyMLahAcQcDmgoJ8IxBqEB9B0bT5sgIjFWoQHkGqj9vNfiMKahAdCy0AQd2gvLF9Iw9qEBxB06iQEiMUahAfQYHNh8V9IxlqEB5ByPfPvn4jDmoQHQsuAEHmm4ePAiMTahAcQdaP3Jl8IxhqEB9Bh5vUpn8jDWoQHkHtqeiqBCMSahAdCy0AQYXSj896IxdqEBxB+Me+ZyMMahAfQdmFvLsGIxFqEB5Bipmp6XgjFmoQHQsKABAPEBAQERASCysAQcLyaCMPahAgQYHtx7t4IxJqECNBosL17AYjFWoQIkGM8JRvIxhqECELLgBBxNT7pXojC2oQIEGpn/veBCMOahAjQeCW7bV/IxFqECJB8Pj+9XsjFGoQIQstAEHG/e3EAiMXahAgQfrPhNV+IwpqECNBheG8p30jDWoQIkGFuqAkIxBqECELLgBBuaDTzn0jE2oQIEHls+62fiMWahAjQfj5if0BIxlqECJB5ayxpXwjDGoQIQsKABAUEBUQFhAXCy0AQcTEpKF/IwpqECRBl/+rmQQjEWoQJ0Gnx9DceiMYahAmQbnAzmQjD2oQJQstAEHDs+2qBiMWahAkQZKZs/h4Iw1qECdB/ei/fyMUahAmQdG7kax4IwtqECULLQBBz/yh/QYjEmoQJEHgzbNxIxlqECdBlIaFmHojEGoQJkGho6DwBCMXahAlCy4AQYL9zbp/Iw5qECRBteTr6XsjFWoQJ0G7pd/WAiMMahAmQZGnm9x+IxNqECULKAEBf0F/IwFzIwNxIwEjAnFyIwBqIABqIgFBB3QgAUEZdnIjAWokAAsoAQF/QX8jAnMjAHEjAiMDcXIjAWogAGoiAUEWdCABQQp2ciMCaiQBCygBAX9BfyMDcyMBcSMDIwBxciMCaiAAaiIBQRF0IAFBD3ZyIwNqJAILKAEBf0F/IwBzIwJxIwAjAXFyIwNqIABqIgFBDHQgAUEUdnIjAGokAwsoAQF/IwJBfyMDc3EjASMDcXIjAGogAGoiAUEFdCABQRt2ciMBaiQACygBAX8jA0F/IwBzcSMCIwBxciMBaiAAaiIBQRR0IAFBDHZyIwJqJAELKAEBfyMAQX8jAXNxIwMjAXFyIwJqIABqIgFBDnQgAUESdnIjA2okAgsoAQF/IwFBfyMCc3EjACMCcXIjA2ogAGoiAUEJdCABQRd2ciMAaiQDCyIBAX8jASMCcyMDcyMAaiAAaiIBQQR0IAFBHHZyIwFqJAALIgEBfyMCIwNzIwBzIwFqIABqIgFBF3QgAUEJdnIjAmokAQsiAQF/IwMjAHMjAXMjAmogAGoiAUEQdCABQRB2ciMDaiQCCyIBAX8jACMBcyMCcyMDaiAAaiIBQQt0IAFBFXZyIwBqJAMLJQEBf0F/IwNzIwFyIwJzIwBqIABqIgFBBnQgAUEadnIjAWokAAslAQF/QX8jAHMjAnIjA3MjAWogAGoiAUEVdCABQQt2ciMCaiQBCyUBAX9BfyMBcyMDciMAcyMCaiAAaiIBQQ90IAFBEXZyIwNqJAILJQEBf0F/IwJzIwByIwFzIwNqIABqIgFBCnQgAUEWdnIjAGokAwsEACMACwQAIwELBAAjAgsEACMDCwQAIxoLBgAgACQACwYAIAAkAQsGACAAJAILBgAgACQDCwYAIAAkGgsA6gQEbmFtZQGSAzIAA2xvZwEFbG9vcHMCBGxvb3ADBXByaW1lBAVsb29wQQUGbG9vcEExBgZsb29wQTIHBmxvb3BBMwgGbG9vcEE0CQVsb29wQgoGbG9vcEIxCwZsb29wQjIMBmxvb3BCMw0GbG9vcEI0DgVsb29wQw8GbG9vcEMxEAZsb29wQzIRBmxvb3BDMxIGbG9vcEM0EwVsb29wRBQGbG9vcEQxFQZsb29wRDIWBmxvb3BEMxcGbG9vcEQ0GAhvbmVGdWxsQRkIb25lRnVsbEIaCG9uZUZ1bGxDGwhvbmVGdWxsRBwIdHdvRnVsbEEdCHR3b0Z1bGxCHgh0d29GdWxsQx8IdHdvRnVsbEQgCHRyZUZ1bGxBIQh0cmVGdWxsQiIIdHJlRnVsbEMjCHRyZUZ1bGxEJAhxdWFGdWxsQSUIcXVhRnVsbEImCHF1YUZ1bGxDJwhxdWFGdWxsRCgEZ2V0QSkEZ2V0QioEZ2V0QysEZ2V0RCwEZ2V0WC0Ec2V0QS4Ec2V0Qi8Ec2V0QzAEc2V0RDEEc2V0WALNATIAAQAAAQIAAAEIbnVtbG9vcHMCAAMABAAFAAYABwAIAAkACgALAAwADQAOAA8AEAARABIAEwAUABUAFgAXABgCAAABAW4ZAgAAAQFuGgIAAAEBbhsCAAABAW4cAgAAAQFuHQIAAAEBbh4CAAABAW4fAgAAAQFuIAIAAAEBbiECAAABAW4iAgAAAQFuIwIAAAEBbiQCAAABAW4lAgAAAQFuJgIAAAEBbicCAAABAW4oACkAKgArACwALQEAAC4BAAAvAQAAMAEAADEBAAA="),po=WebAssembly&&Ic!==Lc?Gd(Ld).buffer:!1,Ft=zd(),mo=240*16*16,vc=Math.floor(mo*16*1.066666667),Nd=268435456-65536,Dc="Parameter must be Buffer, ArrayBuffer or Uint8Array",Pd="Parameter exceeds max size of 255.9 Mbytes";po||console.log("WebAssembly not available or WASM module could not be decoded; md5WASM will fall back to JavaScript");function Ao(t){var e,n,r,s,o,i,a,f,c,l;let d=Ud(),_=Fd(),h={},u=new Date().getTime();return h.then=function(y){return a=y,p(),h},h.catch=function(y){return f=y,h},t&&typeof t=="object"?typeof Buffer=="function"&&t.constructor===Buffer?i=t:t.constructor===Uint8Array||t.constructor===ArrayBuffer?i=t.constructor===ArrayBuffer?new Uint8Array(t):t:S(new TypeError(Dc)):S(new TypeError(Dc)),i&&(o=i.length,po&&o>vc?o>Nd?S(new Error(Pd)):(e=new WebAssembly.Memory({initial:o>32e6?o>64e6?o>128e6?4096:2048:1024:512}),n=new Uint32Array(e.buffer),s={mem:e,log:console.log},r={imports:s},WebAssembly.instantiate(po,r).then(A)):p(d(i))),h;function A(y){p(_(i,y.instance.exports,n))}function p(y){var B=Boolean(y)?y:c;Boolean(y)&&(l=new Date().getTime()),typeof a=="function"?Boolean(B)&&(a(B,l-u),a=f=null):Boolean(y)&&(c=y)}function S(y){typeof f=="function"&&f(y)}}function Fd(){var t,e,n,r,s,o,i,a,f,c,l,d,_,h=function(u){var A,p,S,y,B,T,R,D,I,L,x,m,g,E,U,F,G,N,j,rt,V,st,Ot=new Date().getTime(),Be=0,O=1732584193,w=-271733879,b=-1732584194,C=271733878,Z=0,rn=u.length*8,er;for(er=kl(u,_),_[rn>>>5]|=128<<rn%32,_[(rn+64>>>9<<4)+14]=rn,er=(rn+64>>>9<<4)+15,V=_;Z<er;)er>Z+vc?(r(O),o(w),a(b),c(C),e(mo),Z=Z+mo*16,O=n(),w=s(),b=i(),C=f(),Be++):(G=O,N=w,j=b,rt=C,A=V[Z+0]>>>0,p=V[Z+1]>>>0,S=V[Z+2]>>>0,y=V[Z+3]>>>0,B=V[Z+4]>>>0,T=V[Z+5]>>>0,R=V[Z+6]>>>0,D=V[Z+7]>>>0,I=V[Z+8]>>>0,L=V[Z+9]>>>0,x=V[Z+10]>>>0,m=V[Z+11]>>>0,g=V[Z+12]>>>0,E=V[Z+13]>>>0,U=V[Z+14]>>>0,F=V[Z+15]>>>0,O=P(7,25,O+(w&b|~w&C)+A-680876936)+w,C=P(12,20,C+(O&w|~O&b)+p-389564586)+O,b=P(17,15,b+(C&O|~C&w)+S+606105819)+C,w=P(22,10,w+(b&C|~b&O)+y-1044525330)+b,O=P(7,25,O+(w&b|~w&C)+B-176418897)+w,C=P(12,20,C+(O&w|~O&b)+T+1200080426)+O,b=P(17,15,b+(C&O|~C&w)+R-1473231341)+C,w=P(22,10,w+(b&C|~b&O)+D-45705983)+b,O=P(7,25,O+(w&b|~w&C)+I+1770035416)+w,C=P(12,20,C+(O&w|~O&b)+L-1958414417)+O,b=P(17,15,b+(C&O|~C&w)+x-42063)+C,w=P(22,10,w+(b&C|~b&O)+m-1990404162)+b,O=P(7,25,O+(w&b|~w&C)+g+1804603682)+w,C=P(12,20,C+(O&w|~O&b)+E-40341101)+O,b=P(17,15,b+(C&O|~C&w)+U-1502002290)+C,w=P(22,10,w+(b&C|~b&O)+F+1236535329)+b,O=P(5,27,O+(w&C|b&~C)+p-165796510)+w,C=P(9,23,C+(O&b|w&~b)+R-1069501632)+O,b=P(14,18,b+(C&w|O&~w)+m+643717713)+C,w=P(20,12,w+(b&O|C&~O)+A-373897302)+b,O=P(5,27,O+(w&C|b&~C)+T-701558691)+w,C=P(9,23,C+(O&b|w&~b)+x+38016083)+O,b=P(14,18,b+(C&w|O&~w)+F-660478335)+C,w=P(20,12,w+(b&O|C&~O)+B-405537848)+b,O=P(5,27,O+(w&C|b&~C)+L+568446438)+w,C=P(9,23,C+(O&b|w&~b)+U-1019803690)+O,b=P(14,18,b+(C&w|O&~w)+y-187363961)+C,w=P(20,12,w+(b&O|C&~O)+I+1163531501)+b,O=P(5,27,O+(w&C|b&~C)+E-1444681467)+w,C=P(9,23,C+(O&b|w&~b)+S-51403784)+O,b=P(14,18,b+(C&w|O&~w)+D+1735328473)+C,w=P(20,12,w+(b&O|C&~O)+g-1926607734)+b,O=P(4,28,O+(w^b^C)+T-378558)+w,C=P(11,21,C+(O^w^b)+I-2022574463)+O,b=P(16,16,b+(C^O^w)+m+1839030562)+C,w=P(23,9,w+(b^C^O)+U-35309556)+b,O=P(4,28,O+(w^b^C)+p-1530992060)+w,C=P(11,21,C+(O^w^b)+B+1272893353)+O,b=P(16,16,b+(C^O^w)+D-155497632)+C,w=P(23,9,w+(b^C^O)+x-1094730640)+b,O=P(4,28,O+(w^b^C)+E+681279174)+w,C=P(11,21,C+(O^w^b)+A-358537222)+O,b=P(16,16,b+(C^O^w)+y-722521979)+C,w=P(23,9,w+(b^C^O)+R+76029189)+b,O=P(4,28,O+(w^b^C)+L-640364487)+w,C=P(11,21,C+(O^w^b)+g-421815835)+O,b=P(16,16,b+(C^O^w)+F+530742520)+C,w=P(23,9,w+(b^C^O)+S-995338651)+b,O=P(6,26,O+(b^(w|~C))+A-198630844)+w,C=P(10,22,C+(w^(O|~b))+D+1126891415)+O,b=P(15,17,b+(O^(C|~w))+U-1416354905)+C,w=P(21,11,w+(C^(b|~O))+T-57434055)+b,O=P(6,26,O+(b^(w|~C))+g+1700485571)+w,C=P(10,22,C+(w^(O|~b))+y-1894986606)+O,b=P(15,17,b+(O^(C|~w))+x-1051523)+C,w=P(21,11,w+(C^(b|~O))+p-2054922799)+b,O=P(6,26,O+(b^(w|~C))+I+1873313359)+w,C=P(10,22,C+(w^(O|~b))+F-30611744)+O,b=P(15,17,b+(O^(C|~w))+R-1560198380)+C,w=P(21,11,w+(C^(b|~O))+E+1309151649)+b,O=P(6,26,O+(b^(w|~C))+B-145523070)+w,C=P(10,22,C+(w^(O|~b))+m-1120210379)+O,b=P(15,17,b+(O^(C|~w))+S+718787259)+C,w=P(21,11,w+(C^(b|~O))+L-343485551)+b,Z=Z+16,O=O+G>>>0,w=w+N>>>0,b=b+j>>>0,C=C+rt>>>0);return Ft.endian([O,w,b,C]);function P(ot,nr,bt){return bt<<ot|bt>>>nr}function kl(ot,nr){for(var bt=-1,ls=Math.floor((ot.length-1)/4),ft=0,ei,ni,ri,si;ls-8>bt++;)ft=bt<<2,nr[bt]=ot[ft+0]|ot[ft+1]<<8|ot[ft+2]<<16|ot[ft+3]<<24;for(bt--;ls>bt++;)ft=bt<<2,ei=typeof ot[ft+0]>"u"?0:ot[ft+0],ni=typeof ot[ft+1]>"u"?0:ot[ft+1],ri=typeof ot[ft+2]>"u"?0:ot[ft+2],si=typeof ot[ft+3]>"u"?0:ot[ft+3],nr[bt]=ei|ni<<8|ri<<16|si<<24;return ls+1}};return function(u,A,p,S){var y;return e=A.loops,t=A.loop,n=A.getA,s=A.getB,i=A.getC,f=A.getD,l=A.getX,r=A.setA,o=A.setB,a=A.setC,c=A.setD,d=A.setX,_=p,y=Ft.wordsToBytes(h(u)),S&&S.asBytes?y:Ft.bytesconvertNumberToHex(y)}}function Ud(){var t=function(e,n){var r,s,o,i,a,f,c,l,d,_,h,u,A,p,S,y,B,T,R,D,I,L=new Date().getTime(),x=1732584193,m=-271733879,g=-1732584194,E=271733878,U=e.length*8;I=Ft.bytesToWords(e);for(var F=0;F<I.length;F++)I[F]=(I[F]<<8|I[F]>>>24)&16711935|(I[F]<<24|I[F]>>>8)&4278255360;I[U>>>5]|=128<<U%32,I[(U+64>>>9<<4)+14]=U;for(var G=0;G<I.length;G+=16)B=x,T=m,R=g,D=E,r=I[G+0]>>>0,s=I[G+1]>>>0,o=I[G+2]>>>0,i=I[G+3]>>>0,a=I[G+4]>>>0,f=I[G+5]>>>0,c=I[G+6]>>>0,l=I[G+7]>>>0,d=I[G+8]>>>0,_=I[G+9]>>>0,h=I[G+10]>>>0,u=I[G+11]>>>0,A=I[G+12]>>>0,p=I[G+13]>>>0,S=I[G+14]>>>0,y=I[G+15]>>>0,x=N(7,25,x+(m&g|~m&E)+r-680876936)+m,E=N(12,20,E+(x&m|~x&g)+s-389564586)+x,g=N(17,15,g+(E&x|~E&m)+o+606105819)+E,m=N(22,10,m+(g&E|~g&x)+i-1044525330)+g,x=N(7,25,x+(m&g|~m&E)+a-176418897)+m,E=N(12,20,E+(x&m|~x&g)+f+1200080426)+x,g=N(17,15,g+(E&x|~E&m)+c-1473231341)+E,m=N(22,10,m+(g&E|~g&x)+l-45705983)+g,x=N(7,25,x+(m&g|~m&E)+d+1770035416)+m,E=N(12,20,E+(x&m|~x&g)+_-1958414417)+x,g=N(17,15,g+(E&x|~E&m)+h-42063)+E,m=N(22,10,m+(g&E|~g&x)+u-1990404162)+g,x=N(7,25,x+(m&g|~m&E)+A+1804603682)+m,E=N(12,20,E+(x&m|~x&g)+p-40341101)+x,g=N(17,15,g+(E&x|~E&m)+S-1502002290)+E,m=N(22,10,m+(g&E|~g&x)+y+1236535329)+g,x=N(5,27,x+(m&E|g&~E)+s-165796510)+m,E=N(9,23,E+(x&g|m&~g)+c-1069501632)+x,g=N(14,18,g+(E&m|x&~m)+u+643717713)+E,m=N(20,12,m+(g&x|E&~x)+r-373897302)+g,x=N(5,27,x+(m&E|g&~E)+f-701558691)+m,E=N(9,23,E+(x&g|m&~g)+h+38016083)+x,g=N(14,18,g+(E&m|x&~m)+y-660478335)+E,m=N(20,12,m+(g&x|E&~x)+a-405537848)+g,x=N(5,27,x+(m&E|g&~E)+_+568446438)+m,E=N(9,23,E+(x&g|m&~g)+S-1019803690)+x,g=N(14,18,g+(E&m|x&~m)+i-187363961)+E,m=N(20,12,m+(g&x|E&~x)+d+1163531501)+g,x=N(5,27,x+(m&E|g&~E)+p-1444681467)+m,E=N(9,23,E+(x&g|m&~g)+o-51403784)+x,g=N(14,18,g+(E&m|x&~m)+l+1735328473)+E,m=N(20,12,m+(g&x|E&~x)+A-1926607734)+g,x=N(4,28,x+(m^g^E)+f-378558)+m,E=N(11,21,E+(x^m^g)+d-2022574463)+x,g=N(16,16,g+(E^x^m)+u+1839030562)+E,m=N(23,9,m+(g^E^x)+S-35309556)+g,x=N(4,28,x+(m^g^E)+s-1530992060)+m,E=N(11,21,E+(x^m^g)+a+1272893353)+x,g=N(16,16,g+(E^x^m)+l-155497632)+E,m=N(23,9,m+(g^E^x)+h-1094730640)+g,x=N(4,28,x+(m^g^E)+p+681279174)+m,E=N(11,21,E+(x^m^g)+r-358537222)+x,g=N(16,16,g+(E^x^m)+i-722521979)+E,m=N(23,9,m+(g^E^x)+c+76029189)+g,x=N(4,28,x+(m^g^E)+_-640364487)+m,E=N(11,21,E+(x^m^g)+A-421815835)+x,g=N(16,16,g+(E^x^m)+y+530742520)+E,m=N(23,9,m+(g^E^x)+o-995338651)+g,x=N(6,26,x+(g^(m|~E))+r-198630844)+m,E=N(10,22,E+(m^(x|~g))+l+1126891415)+x,g=N(15,17,g+(x^(E|~m))+S-1416354905)+E,m=N(21,11,m+(E^(g|~x))+f-57434055)+g,x=N(6,26,x+(g^(m|~E))+A+1700485571)+m,E=N(10,22,E+(m^(x|~g))+i-1894986606)+x,g=N(15,17,g+(x^(E|~m))+h-1051523)+E,m=N(21,11,m+(E^(g|~x))+s-2054922799)+g,x=N(6,26,x+(g^(m|~E))+d+1873313359)+m,E=N(10,22,E+(m^(x|~g))+y-30611744)+x,g=N(15,17,g+(x^(E|~m))+c-1560198380)+E,m=N(21,11,m+(E^(g|~x))+p+1309151649)+g,x=N(6,26,x+(g^(m|~E))+a-145523070)+m,E=N(10,22,E+(m^(x|~g))+u-1120210379)+x,g=N(15,17,g+(x^(E|~m))+o+718787259)+E,m=N(21,11,m+(E^(g|~x))+_-343485551)+g,x=x+B>>>0,m=m+T>>>0,g=g+R>>>0,E=E+D>>>0;return Ft.endian([x,m,g,E]);function N(j,rt,V){return V<<j|V>>>rt}};return function(e,n){var r=Ft.wordsToBytes(t(e,n)),s=n&&n.asBytes?r:Ft.bytesconvertNumberToHex(r);return s}}function Gd(t){var e,n,r,s=-1;for(e=t.length-1,n=new ArrayBuffer(t.length),r=new Uint8Array(n);e>s++;)r[s]=t.charCodeAt(s);return r}function kd(t){return Buffer.from(t,"base64").toString("binary")}function Lc(t){return t}function zd(){var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";return{rotl:function(e,n){return e<<n|e>>>32-n},endian:function(e){if(e.constructor==Number)return Ft.rotl(e,8)&16711935|Ft.rotl(e,24)&4278255360;for(var n=0;n<e.length;n++)e[n]=Ft.endian(e[n]);return e},bytesToWords:function(e){for(var n=[],r=0,s=0;r<e.length;r++,s+=8)n[s>>>5]|=e[r]<<24-s%32;return n},wordsToBytes:function(e){for(var n=[],r=0;r<e.length*32;r+=8)n.push(e[r>>>5]>>>24-r%32&255);return n},bytesconvertNumberToHex:function(e){for(var n=[],r=0;r<e.length;r++)n.push((e[r]>>>4).toString(16)),n.push((e[r]&15).toString(16));return n.join("")}}}var xe=class extends Hr{name="md5";options;constructor(e={}){super(),this.options=e}async hash(e,n){let s=await new Promise((o,i)=>Ao(e).then(o).catch(i));return Bc(s,n)}};var Vr=class{constructor(e){this.compressBatches=this.compressBatches.bind(this),this.decompressBatches=this.decompressBatches.bind(this)}async preload(e={}){sn(e)}async compress(e){return await this.preload(),this.compressSync(e)}async decompress(e,n){return await this.preload(),this.decompressSync(e,n)}compressSync(e){throw new Error(`${this.name}: sync compression not supported`)}decompressSync(e,n){throw new Error(`${this.name}: sync decompression not supported`)}async*compressBatches(e){let n=await this.concatenate(e);yield this.compress(n)}async*decompressBatches(e){let n=await this.concatenate(e);yield this.decompress(n)}concatenate(e){return on(e)}improveError(e){return e.message.includes(this.name)||(e.message=`${this.name} ${e.message}`),e}};var Oe=Ct(Rl(),1),$t=Ct(Tl(),1),be=class extends Vr{name="deflate";extensions=[];contentEncodings=["deflate"];isSupported=!0;options;_chunks=[];constructor(e={}){super(e),this.options=e}async compress(e){if(!At&&this.options.deflate?.useZlib){let n=this.options.deflate?.gzip?await Le($t.default.gzip)(e):await Le($t.default.deflate)(e);return ve(n)}return this.compressSync(e)}async decompress(e){if(!At&&this.options.deflate?.useZlib){let n=this.options.deflate?.gzip?await Le($t.default.gunzip)(e):await Le($t.default.inflate)(e);return ve(n)}return this.decompressSync(e)}compressSync(e){if(!At&&this.options.deflate?.useZlib){let o=this.options.deflate?.gzip?$t.default.gzipSync(e):$t.default.deflateSync(e);return ve(o)}let n=this.options?.deflate||{},r=new Uint8Array(e);return(this.options?.raw?Oe.default.deflateRaw:Oe.default.deflate)(r,n).buffer}decompressSync(e){if(!At&&this.options.deflate?.useZlib){let o=this.options.deflate?.gzip?$t.default.gunzipSync(e):$t.default.inflateSync(e);return ve(o)}let n=this.options?.deflate||{},r=new Uint8Array(e);return(this.options?.raw?Oe.default.inflateRaw:Oe.default.inflate)(r,n).buffer}async*compressBatches(e){let n=this.options?.deflate||{},r=new Oe.default.Deflate(n);yield*this.transformBatches(r,e)}async*decompressBatches(e){let n=this.options?.deflate||{},r=new Oe.default.Inflate(n);yield*this.transformBatches(r,e)}async*transformBatches(e,n){e.onData=this._onData.bind(this),e.onEnd=this._onEnd.bind(this);for await(let i of n){let a=new Uint8Array(i);if(!e.push(a,!1))throw new Error(`${this._getError()}write`);yield*this._getChunks()}let r=new Uint8Array(0),s=e.push(r,!0);yield*this._getChunks()}_onData(e){this._chunks.push(e)}_onEnd(e){if(e!==0)throw new Error(this._getError(e)+this._chunks.length)}_getChunks(){let e=this._chunks;return this._chunks=[],e}_getError(e=0){let n={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"};return`${this.name}: ${n[e]}`}};var jn=class extends be{name="gzip";extensions=["gz","gzip"];contentEncodings=["gzip","x-gzip"];isSupported=!0;constructor(e){super({...e,deflate:{...e?.gzip,gzip:!0}})}};var Lp={0:async t=>t,8:async t=>await new be({raw:!0}).decompress(t)},as=class{fileProvider=null;fileName;archive=null;constructor(e){if(typeof e=="string")if(this.fileName=e,!At)this.fileProvider=new cn(e);else throw new Error("Cannot open file for random access in a WEB browser");else e instanceof Ce?(this.fileProvider=e.fileProvider,this.archive=e,this.fileName=e.fileName):us(e)&&(this.fileProvider=e)}async destroy(){this.fileProvider&&await this.fileProvider.destroy()}async readdir(){if(!this.fileProvider)throw new Error("No data detected in the zip archive");let e=[],n=Xe(this.fileProvider);for await(let r of n)e.push(r.fileName);return e}async stat(e){let n=await this.getCDFileHeader(e);return{...n,size:Number(n.uncompressedSize)}}async fetch(e){this.fileName&&e.indexOf(this.fileName)===0&&(e=e.substring(this.fileName.length+1));let n;if(this.archive)n=await this.archive.getFile(e,"http");else{if(!this.fileProvider)throw new Error("No data detected in the zip archive");let s=await this.getCDFileHeader(e),o=await Ae(s.localHeaderOffset,this.fileProvider);if(!o)throw new Error("Local file header has not been found in the zip archive`");let i=Lp[o.compressionMethod.toString()];if(!i)throw Error("Only Deflation compression is supported");let a=await this.fileProvider.slice(o.fileDataOffset,o.fileDataOffset+o.compressedSize);n=await i(a)}let r=new Response(n);return Object.defineProperty(r,"url",{value:e?`${this.fileName||""}/${e}`:this.fileName||""}),r}async getCDFileHeader(e){if(!this.fileProvider)throw new Error("No data detected in the zip archive");let n=Xe(this.fileProvider),r=null;for await(let s of n)if(s.fileName===e){r=s;break}if(!r)throw new Error("File has not been found in the zip archive");return r}};var Ce=class{fileProvider;fileName;constructor(e,n,r){this.fileProvider=e,this.fileName=r}async getFileWithoutHash(e){return await(await new as(this.fileProvider).fetch(e)).arrayBuffer()}};function $o(t){let e=new DataView(t),n={};for(let r=0;r<t.byteLength;r=r+24){let s=e.getBigUint64(r+16,!0),o=Np(t,r,16);n[o]=s}return n}function Np(t,e,n){return[...new Uint8Array(t,e,n)].map(r=>r.toString(16).padStart(2,"0")).join("")}async function Jo(t){let e=Xe(t);return Pp(e)}async function Pp(t){let e=new xe,n=new TextEncoder,r={};for await(let s of t){let o=s.fileName.split("\\").join("/").toLocaleLowerCase(),i=n.encode(o).buffer,a=await e.hash(i,"hex");r[a]=s.localHeaderOffset}return r}var Fp=[{test:/^$/,extensions:["3dSceneLayer.json.gz"]},{test:/nodepages\/\d+$/,extensions:[".json.gz"]},{test:/sublayers\/\d+$/,extensions:["/3dSceneLayer.json.gz"]},{test:/nodes\/(\d+|root)$/,extensions:["/3dNodeIndexDocument.json.gz"]},{test:/nodes\/\d+\/textures\/.+$/,extensions:[".jpg",".png",".bin.dds.gz",".ktx",".ktx2"]},{test:/nodes\/\d+\/geometries\/\d+$/,extensions:[".bin.gz",".draco.gz"]},{test:/nodes\/\d+\/attributes\/f_\d+\/\d+$/,extensions:[".bin.gz"]},{test:/statistics\/f_\d+\/\d+$/,extensions:[".json.gz"]},{test:/nodes\/\d+\/shared$/,extensions:["/sharedResource.json.gz"]}],nn=class extends Ce{hashTable;_textEncoder=new TextEncoder;_textDecoder=new TextDecoder;_md5Hash=new xe;constructor(e,n,r){super(e,n,r),this.hashTable=n}async getFile(e,n="raw"){if(n==="http"){let r=Fp.find(s=>s.test.test(e))?.extensions;if(r){let s;for(let o of r)if(s=await this.getDataByPath(`${e}${o}`),s)break;if(s)return s}}if(n==="raw"){let r=await this.getDataByPath(`${e}.gz`);if(r)return r;let s=await this.getFileBytes(e);if(s)return s}throw new Error(`No such file in the archive: ${e}`)}async getDataByPath(e){let n=await this.getFileBytes(e.toLocaleLowerCase());if(n||(n=await this.getFileBytes(e)),!!n)return/\.gz$/.test(e)?await new jn().decompress(n):n}async getFileBytes(e){let n;if(this.hashTable){let r=this._textEncoder.encode(e),s=await this._md5Hash.hash(r.buffer,"hex"),o=this.hashTable[s];if(o===void 0)return;let i=await Ae(o,this.fileProvider);if(!i)return;n=await this.fileProvider.slice(i.fileDataOffset,i.fileDataOffset+i.compressedSize)}else try{n=await this.getFileWithoutHash(e)}catch{n=void 0}return n}};async function cs(t,e,n){let r=await In(t,Ln),s=await vn(r,t),o;if(s?.fileName!=="@specialIndexFileHASH128@")o=await Jo(t),e?.("SLPK doesnt contain hash file, hash info has been composed according to zip archive headers");else{let i=await Ae(s.localHeaderOffset,t);if(!i)throw new Error("corrupted SLPK");let a=i.fileDataOffset,f=await t.slice(a,a+i.compressedSize);o=$o(f)}return new nn(t,o,n)}var Up="4.3.1",Ml={dataType:null,batchType:null,name:"I3S SLPK (Scene Layer Package)",id:"slpk",module:"i3s",version:Up,mimeTypes:["application/octet-stream"],extensions:["slpk"],options:{},parse:async(t,e={})=>(await cs(new _e(new DataView(t)))).getFile(e.slpk?.path??"",e.slpk?.pathMode)};var bl=Ct(Ht(),1);function wl(t,e){let{attributeName:n,attributeType:r}=e;return n?{[n]:r?Gp(r,t):null}:{}}function Gp(t,e){switch(t){case ua:return Kp(e);case pa:return yl(e);case ma:return zp(e);case Aa:return kp(e);default:return yl(e)}}function yl(t){return new Uint32Array(t,4)}function kp(t){return new Int16Array(t,4)}function zp(t){return new Float64Array(t,8)}function Kp(t){let s=[];try{let o=new DataView(t,0,4).getUint32(0,!0),i=new Uint32Array(t,8,o),a=8+o*4;for(let f of i){let c=new TextDecoder("utf-8"),l=new Uint8Array(t,a,f);s.push(c.decode(l)),a+=f}}catch(o){console.error("Parse string attribute error: ",o.message)}return s}var Hp="4.3.1",Ol="",Vp="rejected",$n={dataType:null,batchType:null,name:"I3S Attribute",id:"i3s-attribute",module:"i3s",version:Hp,mimeTypes:["application/binary"],parse:async(t,e)=>wl(t,e),extensions:["bin"],options:{},binary:!0};async function Cl(t,e,n={}){let{attributeStorageInfo:r,attributeUrls:s,tilesetFields:o}=Xp(t);if(!r||!s||e<0)return null;let i=[],a=[];for(let f=0;f<r.length;f++){let c=Pt(s[f],n.i3s?.token),l=r[f].name,d=ti(r[f]),_={...n,attributeName:l,attributeType:d},h=(0,bl.load)(c,$n,_);a.push(h)}try{i=await Promise.allSettled(a)}catch{}return i.length?qp(i,r,e,o):null}function Xp(t){let e=t.tileset?.tileset?.attributeStorageInfo,n=t.header?.attributeUrls,r=t.tileset?.tileset?.fields||[];return{attributeStorageInfo:e,attributeUrls:n,tilesetFields:r}}function ti(t){return t.hasOwnProperty("objectIds")?"Oid32":t.hasOwnProperty("attributeValues")?t.attributeValues.valueType:""}function Wp(t){return t.find(n=>n.name.includes("OBJECTID"))?.name}function qp(t,e,n,r){let s=Wp(e),o=t.find(a=>a.value[s]);if(!o)return null;let i=o.value[s].indexOf(n);return i<0?null:Zp(t,i,e,r)}function Zp(t,e,n,r){let s={};for(let o=0;o<n.length;o++){let i=n[o].name,a=Qp(i,r),f=Yp(t,o,i);s[i]=jp(f,e,a)}return s}function Qp(t,e){return e.find(r=>r.name===t||r.alias===t)?.domain?.codedValues||[]}function Yp(t,e,n){let r=t[e];return r.status===Vp?null:r.value[n]}function jp(t,e,n){let r=Ol;return t&&e in t&&(r=String(t[e]).replace(/\u0000|NaN/g,"").trim()),n.length&&(r=n.find(o=>o.code===Number(r))?.name||Ol),r}var $p="3DObject";async function Bl(t,e){let n=JSON.parse(new TextDecoder().decode(t)),{sublayers:r}=n;return{header:n,sublayers:Dl(r,e)}}function Dl(t,e){let n=[];for(let r=0;r<t.length;r++){let s=t[r],{id:o,layerType:i,visibility:a=!0,...f}=s;if(i===$p){let c=`${e}/sublayers/${o}`;n.push({url:c,id:o,layerType:i,visibility:a,...f})}s?.sublayers?.length&&(n=[...n,...Dl(s.sublayers,e)])}return n}var Jp="4.3.1",Il={dataType:null,batchType:null,name:"I3S Building Scene Layer",id:"i3s-building-scene-layer",module:"i3s",version:Jp,mimeTypes:["application/json"],parse:tm,extensions:["json"],options:{}};async function tm(t,e,n){if(!n?.url)throw new Error("Url is not provided");return Bl(t,n.url)}var fs=Ct(Ht(),1),em=4326,nm="ArcGISSceneServiceLayer",rm="BuildingSceneLayer",sm="IntegratedMeshLayer",vl="GroupLayer",om=[nm,sm,rm,vl],im="NO_AVAILABLE_SUPPORTED_LAYERS_ERROR",am="NOT_SUPPORTED_CRS_ERROR",Jn=class extends Error{details;constructor(e,n){super(e),this.details=n,this.name="LayerError"}};async function Ll(t){let e=JSON.parse(new TextDecoder().decode(t)),{operationalLayers:n}=e,{layers:r,unsupportedLayers:s}=await Nl(n,!0);if(!r.length)throw new Jn(im,s);return{header:e,layers:r,unsupportedLayers:s}}async function Nl(t,e){let n=[],r=[];for(let s=0;s<t.length;s++){let o=t[s];if(om.includes(o.layerType)?(e&&o.layerType!==vl&&(await cm(o),e=!1),n.push(o)):r.push(o),o.layers?.length){let{layers:a,unsupportedLayers:f}=await Nl(o.layers,e);o.layers=a,r=[...r,...f]}}return{layers:n,unsupportedLayers:r}}async function cm(t){try{if((await(0,fs.load)(t.url,fs.JSONLoader))?.spatialReference?.wkid!==em)throw new Error(am)}catch(e){throw e}}var fm="4.3.1",Pl={dataType:null,batchType:null,name:"ArcGIS Web Scene Loader",id:"arcgis-web-scene",module:"i3s",version:fm,mimeTypes:["application/json"],parse:lm,extensions:["json"],options:{}};async function lm(t){return Ll(t)}var Ul=Ct(Ht(),1);async function Gl(t,e,n,r,s,o,i){if(!o)return t;let a={...t,value:new Uint8Array(t.value)},f=r.find(({name:h})=>h===o?.attributeName);if(!f||!["esriFieldTypeDouble","esriFieldTypeInteger","esriFieldTypeSmallInteger"].includes(f.type))return t;let c=await Fl(f.name,n,s,i);if(!c)return t;let l=r.find(({type:h})=>h==="esriFieldTypeOID");if(!l)return t;let d=await Fl(l.name,n,s,i);if(!d)return t;let _={};for(let h=0;h<d[l.name].length;h++)_[d[l.name][h]]=hm(c[f.name][h],o);for(let h=0;h<e.length;h++){let u=_[e[h]];u&&(o.mode==="multiply"?u.forEach((A,p)=>{a.value[h*4+p]=a.value[h*4+p]*A/255}):a.value.set(u,h*4))}return a}function hm(t,e){if(!e)return[255,255,255,255];let{minValue:n,maxValue:r,minColor:s,maxColor:o}=e,i=(t-n)/(r-n),a=[255,255,255,255];for(let f=0;f<s.length;f++)a[f]=Math.round((o[f]-s[f])*i+s[f]);return a}async function Fl(t,e,n,r){let s=n.findIndex(({name:f})=>t===f);if(s===-1)return null;let o=Pt(e[s],r),i=ti(n[s]);return await(0,Ul.load)(o,$n,{attributeName:t,attributeType:i})}return Wl(tr);})();
|
|
7
|
+
"use strict";var __exports__=(()=>{var zl=Object.create;var sr=Object.defineProperty;var Kl=Object.getOwnPropertyDescriptor;var Hl=Object.getOwnPropertyNames;var Vl=Object.getPrototypeOf,Xl=Object.prototype.hasOwnProperty;var J=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),or=(t,e)=>{for(var n in e)sr(t,n,{get:e[n],enumerable:!0})},rr=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of Hl(e))!Xl.call(t,s)&&s!==n&&sr(t,s,{get:()=>e[s],enumerable:!(r=Kl(e,s))||r.enumerable});return t},ir=(t,e,n)=>(rr(t,e,"default"),n&&rr(n,e,"default")),Ct=(t,e,n)=>(n=t!=null?zl(Vl(t)):{},rr(e||!t||!t.__esModule?sr(n,"default",{value:t,enumerable:!0}):n,t)),Wl=t=>rr(sr({},"__esModule",{value:!0}),t);var Ht=J((dm,oi)=>{oi.exports=globalThis.loaders});var Zt=J(at=>{"use strict";var Kd=typeof Uint8Array<"u"&&typeof Uint16Array<"u"&&typeof Int32Array<"u";function Hd(t,e){return Object.prototype.hasOwnProperty.call(t,e)}at.assign=function(t){for(var e=Array.prototype.slice.call(arguments,1);e.length;){var n=e.shift();if(n){if(typeof n!="object")throw new TypeError(n+"must be non-object");for(var r in n)Hd(n,r)&&(t[r]=n[r])}}return t};at.shrinkBuf=function(t,e){return t.length===e?t:t.subarray?t.subarray(0,e):(t.length=e,t)};var Vd={arraySet:function(t,e,n,r,s){if(e.subarray&&t.subarray){t.set(e.subarray(n,n+r),s);return}for(var o=0;o<r;o++)t[s+o]=e[n+o]},flattenChunks:function(t){var e,n,r,s,o,i;for(r=0,e=0,n=t.length;e<n;e++)r+=t[e].length;for(i=new Uint8Array(r),s=0,e=0,n=t.length;e<n;e++)o=t[e],i.set(o,s),s+=o.length;return i}},Xd={arraySet:function(t,e,n,r,s){for(var o=0;o<r;o++)t[s+o]=e[n+o]},flattenChunks:function(t){return[].concat.apply([],t)}};at.setTyped=function(t){t?(at.Buf8=Uint8Array,at.Buf16=Uint16Array,at.Buf32=Int32Array,at.assign(at,Vd)):(at.Buf8=Array,at.Buf16=Array,at.Buf32=Array,at.assign(at,Xd))};at.setTyped(Kd)});var rf=J(Ze=>{"use strict";var Wd=Zt(),qd=4,Nc=0,Pc=1,Zd=2;function qe(t){for(var e=t.length;--e>=0;)t[e]=0}var Qd=0,Kc=1,Yd=2,jd=3,$d=258,Mo=29,kn=256,Pn=kn+1+Mo,We=30,yo=19,Hc=2*Pn+1,ge=15,xo=16,Jd=7,wo=256,Vc=16,Xc=17,Wc=18,Ro=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],Xr=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],tu=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],qc=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],eu=512,Qt=new Array((Pn+2)*2);qe(Qt);var Nn=new Array(We*2);qe(Nn);var Fn=new Array(eu);qe(Fn);var Un=new Array($d-jd+1);qe(Un);var Oo=new Array(Mo);qe(Oo);var Wr=new Array(We);qe(Wr);function go(t,e,n,r,s){this.static_tree=t,this.extra_bits=e,this.extra_base=n,this.elems=r,this.max_length=s,this.has_stree=t&&t.length}var Zc,Qc,Yc;function Eo(t,e){this.dyn_tree=t,this.max_code=0,this.stat_desc=e}function jc(t){return t<256?Fn[t]:Fn[256+(t>>>7)]}function Gn(t,e){t.pending_buf[t.pending++]=e&255,t.pending_buf[t.pending++]=e>>>8&255}function ht(t,e,n){t.bi_valid>xo-n?(t.bi_buf|=e<<t.bi_valid&65535,Gn(t,t.bi_buf),t.bi_buf=e>>xo-t.bi_valid,t.bi_valid+=n-xo):(t.bi_buf|=e<<t.bi_valid&65535,t.bi_valid+=n)}function Ut(t,e,n){ht(t,n[e*2],n[e*2+1])}function $c(t,e){var n=0;do n|=t&1,t>>>=1,n<<=1;while(--e>0);return n>>>1}function nu(t){t.bi_valid===16?(Gn(t,t.bi_buf),t.bi_buf=0,t.bi_valid=0):t.bi_valid>=8&&(t.pending_buf[t.pending++]=t.bi_buf&255,t.bi_buf>>=8,t.bi_valid-=8)}function ru(t,e){var n=e.dyn_tree,r=e.max_code,s=e.stat_desc.static_tree,o=e.stat_desc.has_stree,i=e.stat_desc.extra_bits,a=e.stat_desc.extra_base,f=e.stat_desc.max_length,c,l,d,_,h,u,A=0;for(_=0;_<=ge;_++)t.bl_count[_]=0;for(n[t.heap[t.heap_max]*2+1]=0,c=t.heap_max+1;c<Hc;c++)l=t.heap[c],_=n[n[l*2+1]*2+1]+1,_>f&&(_=f,A++),n[l*2+1]=_,!(l>r)&&(t.bl_count[_]++,h=0,l>=a&&(h=i[l-a]),u=n[l*2],t.opt_len+=u*(_+h),o&&(t.static_len+=u*(s[l*2+1]+h)));if(A!==0){do{for(_=f-1;t.bl_count[_]===0;)_--;t.bl_count[_]--,t.bl_count[_+1]+=2,t.bl_count[f]--,A-=2}while(A>0);for(_=f;_!==0;_--)for(l=t.bl_count[_];l!==0;)d=t.heap[--c],!(d>r)&&(n[d*2+1]!==_&&(t.opt_len+=(_-n[d*2+1])*n[d*2],n[d*2+1]=_),l--)}}function Jc(t,e,n){var r=new Array(ge+1),s=0,o,i;for(o=1;o<=ge;o++)r[o]=s=s+n[o-1]<<1;for(i=0;i<=e;i++){var a=t[i*2+1];a!==0&&(t[i*2]=$c(r[a]++,a))}}function su(){var t,e,n,r,s,o=new Array(ge+1);for(n=0,r=0;r<Mo-1;r++)for(Oo[r]=n,t=0;t<1<<Ro[r];t++)Un[n++]=r;for(Un[n-1]=r,s=0,r=0;r<16;r++)for(Wr[r]=s,t=0;t<1<<Xr[r];t++)Fn[s++]=r;for(s>>=7;r<We;r++)for(Wr[r]=s<<7,t=0;t<1<<Xr[r]-7;t++)Fn[256+s++]=r;for(e=0;e<=ge;e++)o[e]=0;for(t=0;t<=143;)Qt[t*2+1]=8,t++,o[8]++;for(;t<=255;)Qt[t*2+1]=9,t++,o[9]++;for(;t<=279;)Qt[t*2+1]=7,t++,o[7]++;for(;t<=287;)Qt[t*2+1]=8,t++,o[8]++;for(Jc(Qt,Pn+1,o),t=0;t<We;t++)Nn[t*2+1]=5,Nn[t*2]=$c(t,5);Zc=new go(Qt,Ro,kn+1,Pn,ge),Qc=new go(Nn,Xr,0,We,ge),Yc=new go(new Array(0),tu,0,yo,Jd)}function tf(t){var e;for(e=0;e<Pn;e++)t.dyn_ltree[e*2]=0;for(e=0;e<We;e++)t.dyn_dtree[e*2]=0;for(e=0;e<yo;e++)t.bl_tree[e*2]=0;t.dyn_ltree[wo*2]=1,t.opt_len=t.static_len=0,t.last_lit=t.matches=0}function ef(t){t.bi_valid>8?Gn(t,t.bi_buf):t.bi_valid>0&&(t.pending_buf[t.pending++]=t.bi_buf),t.bi_buf=0,t.bi_valid=0}function ou(t,e,n,r){ef(t),r&&(Gn(t,n),Gn(t,~n)),Wd.arraySet(t.pending_buf,t.window,e,n,t.pending),t.pending+=n}function Fc(t,e,n,r){var s=e*2,o=n*2;return t[s]<t[o]||t[s]===t[o]&&r[e]<=r[n]}function So(t,e,n){for(var r=t.heap[n],s=n<<1;s<=t.heap_len&&(s<t.heap_len&&Fc(e,t.heap[s+1],t.heap[s],t.depth)&&s++,!Fc(e,r,t.heap[s],t.depth));)t.heap[n]=t.heap[s],n=s,s<<=1;t.heap[n]=r}function Uc(t,e,n){var r,s,o=0,i,a;if(t.last_lit!==0)do r=t.pending_buf[t.d_buf+o*2]<<8|t.pending_buf[t.d_buf+o*2+1],s=t.pending_buf[t.l_buf+o],o++,r===0?Ut(t,s,e):(i=Un[s],Ut(t,i+kn+1,e),a=Ro[i],a!==0&&(s-=Oo[i],ht(t,s,a)),r--,i=jc(r),Ut(t,i,n),a=Xr[i],a!==0&&(r-=Wr[i],ht(t,r,a)));while(o<t.last_lit);Ut(t,wo,e)}function To(t,e){var n=e.dyn_tree,r=e.stat_desc.static_tree,s=e.stat_desc.has_stree,o=e.stat_desc.elems,i,a,f=-1,c;for(t.heap_len=0,t.heap_max=Hc,i=0;i<o;i++)n[i*2]!==0?(t.heap[++t.heap_len]=f=i,t.depth[i]=0):n[i*2+1]=0;for(;t.heap_len<2;)c=t.heap[++t.heap_len]=f<2?++f:0,n[c*2]=1,t.depth[c]=0,t.opt_len--,s&&(t.static_len-=r[c*2+1]);for(e.max_code=f,i=t.heap_len>>1;i>=1;i--)So(t,n,i);c=o;do i=t.heap[1],t.heap[1]=t.heap[t.heap_len--],So(t,n,1),a=t.heap[1],t.heap[--t.heap_max]=i,t.heap[--t.heap_max]=a,n[c*2]=n[i*2]+n[a*2],t.depth[c]=(t.depth[i]>=t.depth[a]?t.depth[i]:t.depth[a])+1,n[i*2+1]=n[a*2+1]=c,t.heap[1]=c++,So(t,n,1);while(t.heap_len>=2);t.heap[--t.heap_max]=t.heap[1],ru(t,e),Jc(n,f,t.bl_count)}function Gc(t,e,n){var r,s=-1,o,i=e[0*2+1],a=0,f=7,c=4;for(i===0&&(f=138,c=3),e[(n+1)*2+1]=65535,r=0;r<=n;r++)o=i,i=e[(r+1)*2+1],!(++a<f&&o===i)&&(a<c?t.bl_tree[o*2]+=a:o!==0?(o!==s&&t.bl_tree[o*2]++,t.bl_tree[Vc*2]++):a<=10?t.bl_tree[Xc*2]++:t.bl_tree[Wc*2]++,a=0,s=o,i===0?(f=138,c=3):o===i?(f=6,c=3):(f=7,c=4))}function kc(t,e,n){var r,s=-1,o,i=e[0*2+1],a=0,f=7,c=4;for(i===0&&(f=138,c=3),r=0;r<=n;r++)if(o=i,i=e[(r+1)*2+1],!(++a<f&&o===i)){if(a<c)do Ut(t,o,t.bl_tree);while(--a!==0);else o!==0?(o!==s&&(Ut(t,o,t.bl_tree),a--),Ut(t,Vc,t.bl_tree),ht(t,a-3,2)):a<=10?(Ut(t,Xc,t.bl_tree),ht(t,a-3,3)):(Ut(t,Wc,t.bl_tree),ht(t,a-11,7));a=0,s=o,i===0?(f=138,c=3):o===i?(f=6,c=3):(f=7,c=4)}}function iu(t){var e;for(Gc(t,t.dyn_ltree,t.l_desc.max_code),Gc(t,t.dyn_dtree,t.d_desc.max_code),To(t,t.bl_desc),e=yo-1;e>=3&&t.bl_tree[qc[e]*2+1]===0;e--);return t.opt_len+=3*(e+1)+5+5+4,e}function au(t,e,n,r){var s;for(ht(t,e-257,5),ht(t,n-1,5),ht(t,r-4,4),s=0;s<r;s++)ht(t,t.bl_tree[qc[s]*2+1],3);kc(t,t.dyn_ltree,e-1),kc(t,t.dyn_dtree,n-1)}function cu(t){var e=4093624447,n;for(n=0;n<=31;n++,e>>>=1)if(e&1&&t.dyn_ltree[n*2]!==0)return Nc;if(t.dyn_ltree[9*2]!==0||t.dyn_ltree[10*2]!==0||t.dyn_ltree[13*2]!==0)return Pc;for(n=32;n<kn;n++)if(t.dyn_ltree[n*2]!==0)return Pc;return Nc}var zc=!1;function fu(t){zc||(su(),zc=!0),t.l_desc=new Eo(t.dyn_ltree,Zc),t.d_desc=new Eo(t.dyn_dtree,Qc),t.bl_desc=new Eo(t.bl_tree,Yc),t.bi_buf=0,t.bi_valid=0,tf(t)}function nf(t,e,n,r){ht(t,(Qd<<1)+(r?1:0),3),ou(t,e,n,!0)}function lu(t){ht(t,Kc<<1,3),Ut(t,wo,Qt),nu(t)}function hu(t,e,n,r){var s,o,i=0;t.level>0?(t.strm.data_type===Zd&&(t.strm.data_type=cu(t)),To(t,t.l_desc),To(t,t.d_desc),i=iu(t),s=t.opt_len+3+7>>>3,o=t.static_len+3+7>>>3,o<=s&&(s=o)):s=o=n+5,n+4<=s&&e!==-1?nf(t,e,n,r):t.strategy===qd||o===s?(ht(t,(Kc<<1)+(r?1:0),3),Uc(t,Qt,Nn)):(ht(t,(Yd<<1)+(r?1:0),3),au(t,t.l_desc.max_code+1,t.d_desc.max_code+1,i+1),Uc(t,t.dyn_ltree,t.dyn_dtree)),tf(t),r&&ef(t)}function _u(t,e,n){return t.pending_buf[t.d_buf+t.last_lit*2]=e>>>8&255,t.pending_buf[t.d_buf+t.last_lit*2+1]=e&255,t.pending_buf[t.l_buf+t.last_lit]=n&255,t.last_lit++,e===0?t.dyn_ltree[n*2]++:(t.matches++,e--,t.dyn_ltree[(Un[n]+kn+1)*2]++,t.dyn_dtree[jc(e)*2]++),t.last_lit===t.lit_bufsize-1}Ze._tr_init=fu;Ze._tr_stored_block=nf;Ze._tr_flush_block=hu;Ze._tr_tally=_u;Ze._tr_align=lu});var bo=J((LR,sf)=>{"use strict";function du(t,e,n,r){for(var s=t&65535|0,o=t>>>16&65535|0,i=0;n!==0;){i=n>2e3?2e3:n,n-=i;do s=s+e[r++]|0,o=o+s|0;while(--i);s%=65521,o%=65521}return s|o<<16|0}sf.exports=du});var Co=J((NR,of)=>{"use strict";function uu(){for(var t,e=[],n=0;n<256;n++){t=n;for(var r=0;r<8;r++)t=t&1?3988292384^t>>>1:t>>>1;e[n]=t}return e}var pu=uu();function mu(t,e,n,r){var s=pu,o=r+n;t^=-1;for(var i=r;i<o;i++)t=t>>>8^s[(t^e[i])&255];return t^-1}of.exports=mu});var qr=J((PR,af)=>{"use strict";af.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}});var mf=J(zt=>{"use strict";var ct=Zt(),St=rf(),hf=bo(),oe=Co(),Au=qr(),Te=0,xu=1,gu=3,le=4,cf=5,kt=0,ff=1,Rt=-2,Eu=-3,Bo=-5,Su=-1,Ru=1,Zr=2,Tu=3,Mu=4,yu=0,wu=2,$r=8,Ou=9,bu=15,Cu=8,Bu=29,Du=256,Io=Du+1+Bu,Iu=30,vu=19,Lu=2*Io+1,Nu=15,k=3,ce=258,yt=ce+k+1,Pu=32,Jr=42,vo=69,Qr=73,Yr=91,jr=103,Ee=113,Kn=666,$=1,Hn=2,Se=3,je=4,Fu=3;function fe(t,e){return t.msg=Au[e],e}function lf(t){return(t<<1)-(t>4?9:0)}function ae(t){for(var e=t.length;--e>=0;)t[e]=0}function ie(t){var e=t.state,n=e.pending;n>t.avail_out&&(n=t.avail_out),n!==0&&(ct.arraySet(t.output,e.pending_buf,e.pending_out,n,t.next_out),t.next_out+=n,e.pending_out+=n,t.total_out+=n,t.avail_out-=n,e.pending-=n,e.pending===0&&(e.pending_out=0))}function nt(t,e){St._tr_flush_block(t,t.block_start>=0?t.block_start:-1,t.strstart-t.block_start,e),t.block_start=t.strstart,ie(t.strm)}function K(t,e){t.pending_buf[t.pending++]=e}function zn(t,e){t.pending_buf[t.pending++]=e>>>8&255,t.pending_buf[t.pending++]=e&255}function Uu(t,e,n,r){var s=t.avail_in;return s>r&&(s=r),s===0?0:(t.avail_in-=s,ct.arraySet(e,t.input,t.next_in,s,n),t.state.wrap===1?t.adler=hf(t.adler,e,s,n):t.state.wrap===2&&(t.adler=oe(t.adler,e,s,n)),t.next_in+=s,t.total_in+=s,s)}function _f(t,e){var n=t.max_chain_length,r=t.strstart,s,o,i=t.prev_length,a=t.nice_match,f=t.strstart>t.w_size-yt?t.strstart-(t.w_size-yt):0,c=t.window,l=t.w_mask,d=t.prev,_=t.strstart+ce,h=c[r+i-1],u=c[r+i];t.prev_length>=t.good_match&&(n>>=2),a>t.lookahead&&(a=t.lookahead);do if(s=e,!(c[s+i]!==u||c[s+i-1]!==h||c[s]!==c[r]||c[++s]!==c[r+1])){r+=2,s++;do;while(c[++r]===c[++s]&&c[++r]===c[++s]&&c[++r]===c[++s]&&c[++r]===c[++s]&&c[++r]===c[++s]&&c[++r]===c[++s]&&c[++r]===c[++s]&&c[++r]===c[++s]&&r<_);if(o=ce-(_-r),r=_-ce,o>i){if(t.match_start=e,i=o,o>=a)break;h=c[r+i-1],u=c[r+i]}}while((e=d[e&l])>f&&--n!==0);return i<=t.lookahead?i:t.lookahead}function Re(t){var e=t.w_size,n,r,s,o,i;do{if(o=t.window_size-t.lookahead-t.strstart,t.strstart>=e+(e-yt)){ct.arraySet(t.window,t.window,e,e,0),t.match_start-=e,t.strstart-=e,t.block_start-=e,r=t.hash_size,n=r;do s=t.head[--n],t.head[n]=s>=e?s-e:0;while(--r);r=e,n=r;do s=t.prev[--n],t.prev[n]=s>=e?s-e:0;while(--r);o+=e}if(t.strm.avail_in===0)break;if(r=Uu(t.strm,t.window,t.strstart+t.lookahead,o),t.lookahead+=r,t.lookahead+t.insert>=k)for(i=t.strstart-t.insert,t.ins_h=t.window[i],t.ins_h=(t.ins_h<<t.hash_shift^t.window[i+1])&t.hash_mask;t.insert&&(t.ins_h=(t.ins_h<<t.hash_shift^t.window[i+k-1])&t.hash_mask,t.prev[i&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=i,i++,t.insert--,!(t.lookahead+t.insert<k)););}while(t.lookahead<yt&&t.strm.avail_in!==0)}function Gu(t,e){var n=65535;for(n>t.pending_buf_size-5&&(n=t.pending_buf_size-5);;){if(t.lookahead<=1){if(Re(t),t.lookahead===0&&e===Te)return $;if(t.lookahead===0)break}t.strstart+=t.lookahead,t.lookahead=0;var r=t.block_start+n;if((t.strstart===0||t.strstart>=r)&&(t.lookahead=t.strstart-r,t.strstart=r,nt(t,!1),t.strm.avail_out===0)||t.strstart-t.block_start>=t.w_size-yt&&(nt(t,!1),t.strm.avail_out===0))return $}return t.insert=0,e===le?(nt(t,!0),t.strm.avail_out===0?Se:je):(t.strstart>t.block_start&&(nt(t,!1),t.strm.avail_out===0),$)}function Do(t,e){for(var n,r;;){if(t.lookahead<yt){if(Re(t),t.lookahead<yt&&e===Te)return $;if(t.lookahead===0)break}if(n=0,t.lookahead>=k&&(t.ins_h=(t.ins_h<<t.hash_shift^t.window[t.strstart+k-1])&t.hash_mask,n=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),n!==0&&t.strstart-n<=t.w_size-yt&&(t.match_length=_f(t,n)),t.match_length>=k)if(r=St._tr_tally(t,t.strstart-t.match_start,t.match_length-k),t.lookahead-=t.match_length,t.match_length<=t.max_lazy_match&&t.lookahead>=k){t.match_length--;do t.strstart++,t.ins_h=(t.ins_h<<t.hash_shift^t.window[t.strstart+k-1])&t.hash_mask,n=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart;while(--t.match_length!==0);t.strstart++}else t.strstart+=t.match_length,t.match_length=0,t.ins_h=t.window[t.strstart],t.ins_h=(t.ins_h<<t.hash_shift^t.window[t.strstart+1])&t.hash_mask;else r=St._tr_tally(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++;if(r&&(nt(t,!1),t.strm.avail_out===0))return $}return t.insert=t.strstart<k-1?t.strstart:k-1,e===le?(nt(t,!0),t.strm.avail_out===0?Se:je):t.last_lit&&(nt(t,!1),t.strm.avail_out===0)?$:Hn}function Qe(t,e){for(var n,r,s;;){if(t.lookahead<yt){if(Re(t),t.lookahead<yt&&e===Te)return $;if(t.lookahead===0)break}if(n=0,t.lookahead>=k&&(t.ins_h=(t.ins_h<<t.hash_shift^t.window[t.strstart+k-1])&t.hash_mask,n=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),t.prev_length=t.match_length,t.prev_match=t.match_start,t.match_length=k-1,n!==0&&t.prev_length<t.max_lazy_match&&t.strstart-n<=t.w_size-yt&&(t.match_length=_f(t,n),t.match_length<=5&&(t.strategy===Ru||t.match_length===k&&t.strstart-t.match_start>4096)&&(t.match_length=k-1)),t.prev_length>=k&&t.match_length<=t.prev_length){s=t.strstart+t.lookahead-k,r=St._tr_tally(t,t.strstart-1-t.prev_match,t.prev_length-k),t.lookahead-=t.prev_length-1,t.prev_length-=2;do++t.strstart<=s&&(t.ins_h=(t.ins_h<<t.hash_shift^t.window[t.strstart+k-1])&t.hash_mask,n=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart);while(--t.prev_length!==0);if(t.match_available=0,t.match_length=k-1,t.strstart++,r&&(nt(t,!1),t.strm.avail_out===0))return $}else if(t.match_available){if(r=St._tr_tally(t,0,t.window[t.strstart-1]),r&&nt(t,!1),t.strstart++,t.lookahead--,t.strm.avail_out===0)return $}else t.match_available=1,t.strstart++,t.lookahead--}return t.match_available&&(r=St._tr_tally(t,0,t.window[t.strstart-1]),t.match_available=0),t.insert=t.strstart<k-1?t.strstart:k-1,e===le?(nt(t,!0),t.strm.avail_out===0?Se:je):t.last_lit&&(nt(t,!1),t.strm.avail_out===0)?$:Hn}function ku(t,e){for(var n,r,s,o,i=t.window;;){if(t.lookahead<=ce){if(Re(t),t.lookahead<=ce&&e===Te)return $;if(t.lookahead===0)break}if(t.match_length=0,t.lookahead>=k&&t.strstart>0&&(s=t.strstart-1,r=i[s],r===i[++s]&&r===i[++s]&&r===i[++s])){o=t.strstart+ce;do;while(r===i[++s]&&r===i[++s]&&r===i[++s]&&r===i[++s]&&r===i[++s]&&r===i[++s]&&r===i[++s]&&r===i[++s]&&s<o);t.match_length=ce-(o-s),t.match_length>t.lookahead&&(t.match_length=t.lookahead)}if(t.match_length>=k?(n=St._tr_tally(t,1,t.match_length-k),t.lookahead-=t.match_length,t.strstart+=t.match_length,t.match_length=0):(n=St._tr_tally(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++),n&&(nt(t,!1),t.strm.avail_out===0))return $}return t.insert=0,e===le?(nt(t,!0),t.strm.avail_out===0?Se:je):t.last_lit&&(nt(t,!1),t.strm.avail_out===0)?$:Hn}function zu(t,e){for(var n;;){if(t.lookahead===0&&(Re(t),t.lookahead===0)){if(e===Te)return $;break}if(t.match_length=0,n=St._tr_tally(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++,n&&(nt(t,!1),t.strm.avail_out===0))return $}return t.insert=0,e===le?(nt(t,!0),t.strm.avail_out===0?Se:je):t.last_lit&&(nt(t,!1),t.strm.avail_out===0)?$:Hn}function Gt(t,e,n,r,s){this.good_length=t,this.max_lazy=e,this.nice_length=n,this.max_chain=r,this.func=s}var Ye;Ye=[new Gt(0,0,0,0,Gu),new Gt(4,4,8,4,Do),new Gt(4,5,16,8,Do),new Gt(4,6,32,32,Do),new Gt(4,4,16,16,Qe),new Gt(8,16,32,32,Qe),new Gt(8,16,128,128,Qe),new Gt(8,32,128,256,Qe),new Gt(32,128,258,1024,Qe),new Gt(32,258,258,4096,Qe)];function Ku(t){t.window_size=2*t.w_size,ae(t.head),t.max_lazy_match=Ye[t.level].max_lazy,t.good_match=Ye[t.level].good_length,t.nice_match=Ye[t.level].nice_length,t.max_chain_length=Ye[t.level].max_chain,t.strstart=0,t.block_start=0,t.lookahead=0,t.insert=0,t.match_length=t.prev_length=k-1,t.match_available=0,t.ins_h=0}function Hu(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=$r,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new ct.Buf16(Lu*2),this.dyn_dtree=new ct.Buf16((2*Iu+1)*2),this.bl_tree=new ct.Buf16((2*vu+1)*2),ae(this.dyn_ltree),ae(this.dyn_dtree),ae(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new ct.Buf16(Nu+1),this.heap=new ct.Buf16(2*Io+1),ae(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new ct.Buf16(2*Io+1),ae(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function df(t){var e;return!t||!t.state?fe(t,Rt):(t.total_in=t.total_out=0,t.data_type=wu,e=t.state,e.pending=0,e.pending_out=0,e.wrap<0&&(e.wrap=-e.wrap),e.status=e.wrap?Jr:Ee,t.adler=e.wrap===2?0:1,e.last_flush=Te,St._tr_init(e),kt)}function uf(t){var e=df(t);return e===kt&&Ku(t.state),e}function Vu(t,e){return!t||!t.state||t.state.wrap!==2?Rt:(t.state.gzhead=e,kt)}function pf(t,e,n,r,s,o){if(!t)return Rt;var i=1;if(e===Su&&(e=6),r<0?(i=0,r=-r):r>15&&(i=2,r-=16),s<1||s>Ou||n!==$r||r<8||r>15||e<0||e>9||o<0||o>Mu)return fe(t,Rt);r===8&&(r=9);var a=new Hu;return t.state=a,a.strm=t,a.wrap=i,a.gzhead=null,a.w_bits=r,a.w_size=1<<a.w_bits,a.w_mask=a.w_size-1,a.hash_bits=s+7,a.hash_size=1<<a.hash_bits,a.hash_mask=a.hash_size-1,a.hash_shift=~~((a.hash_bits+k-1)/k),a.window=new ct.Buf8(a.w_size*2),a.head=new ct.Buf16(a.hash_size),a.prev=new ct.Buf16(a.w_size),a.lit_bufsize=1<<s+6,a.pending_buf_size=a.lit_bufsize*4,a.pending_buf=new ct.Buf8(a.pending_buf_size),a.d_buf=1*a.lit_bufsize,a.l_buf=(1+2)*a.lit_bufsize,a.level=e,a.strategy=o,a.method=n,uf(t)}function Xu(t,e){return pf(t,e,$r,bu,Cu,yu)}function Wu(t,e){var n,r,s,o;if(!t||!t.state||e>cf||e<0)return t?fe(t,Rt):Rt;if(r=t.state,!t.output||!t.input&&t.avail_in!==0||r.status===Kn&&e!==le)return fe(t,t.avail_out===0?Bo:Rt);if(r.strm=t,n=r.last_flush,r.last_flush=e,r.status===Jr)if(r.wrap===2)t.adler=0,K(r,31),K(r,139),K(r,8),r.gzhead?(K(r,(r.gzhead.text?1:0)+(r.gzhead.hcrc?2:0)+(r.gzhead.extra?4:0)+(r.gzhead.name?8:0)+(r.gzhead.comment?16:0)),K(r,r.gzhead.time&255),K(r,r.gzhead.time>>8&255),K(r,r.gzhead.time>>16&255),K(r,r.gzhead.time>>24&255),K(r,r.level===9?2:r.strategy>=Zr||r.level<2?4:0),K(r,r.gzhead.os&255),r.gzhead.extra&&r.gzhead.extra.length&&(K(r,r.gzhead.extra.length&255),K(r,r.gzhead.extra.length>>8&255)),r.gzhead.hcrc&&(t.adler=oe(t.adler,r.pending_buf,r.pending,0)),r.gzindex=0,r.status=vo):(K(r,0),K(r,0),K(r,0),K(r,0),K(r,0),K(r,r.level===9?2:r.strategy>=Zr||r.level<2?4:0),K(r,Fu),r.status=Ee);else{var i=$r+(r.w_bits-8<<4)<<8,a=-1;r.strategy>=Zr||r.level<2?a=0:r.level<6?a=1:r.level===6?a=2:a=3,i|=a<<6,r.strstart!==0&&(i|=Pu),i+=31-i%31,r.status=Ee,zn(r,i),r.strstart!==0&&(zn(r,t.adler>>>16),zn(r,t.adler&65535)),t.adler=1}if(r.status===vo)if(r.gzhead.extra){for(s=r.pending;r.gzindex<(r.gzhead.extra.length&65535)&&!(r.pending===r.pending_buf_size&&(r.gzhead.hcrc&&r.pending>s&&(t.adler=oe(t.adler,r.pending_buf,r.pending-s,s)),ie(t),s=r.pending,r.pending===r.pending_buf_size));)K(r,r.gzhead.extra[r.gzindex]&255),r.gzindex++;r.gzhead.hcrc&&r.pending>s&&(t.adler=oe(t.adler,r.pending_buf,r.pending-s,s)),r.gzindex===r.gzhead.extra.length&&(r.gzindex=0,r.status=Qr)}else r.status=Qr;if(r.status===Qr)if(r.gzhead.name){s=r.pending;do{if(r.pending===r.pending_buf_size&&(r.gzhead.hcrc&&r.pending>s&&(t.adler=oe(t.adler,r.pending_buf,r.pending-s,s)),ie(t),s=r.pending,r.pending===r.pending_buf_size)){o=1;break}r.gzindex<r.gzhead.name.length?o=r.gzhead.name.charCodeAt(r.gzindex++)&255:o=0,K(r,o)}while(o!==0);r.gzhead.hcrc&&r.pending>s&&(t.adler=oe(t.adler,r.pending_buf,r.pending-s,s)),o===0&&(r.gzindex=0,r.status=Yr)}else r.status=Yr;if(r.status===Yr)if(r.gzhead.comment){s=r.pending;do{if(r.pending===r.pending_buf_size&&(r.gzhead.hcrc&&r.pending>s&&(t.adler=oe(t.adler,r.pending_buf,r.pending-s,s)),ie(t),s=r.pending,r.pending===r.pending_buf_size)){o=1;break}r.gzindex<r.gzhead.comment.length?o=r.gzhead.comment.charCodeAt(r.gzindex++)&255:o=0,K(r,o)}while(o!==0);r.gzhead.hcrc&&r.pending>s&&(t.adler=oe(t.adler,r.pending_buf,r.pending-s,s)),o===0&&(r.status=jr)}else r.status=jr;if(r.status===jr&&(r.gzhead.hcrc?(r.pending+2>r.pending_buf_size&&ie(t),r.pending+2<=r.pending_buf_size&&(K(r,t.adler&255),K(r,t.adler>>8&255),t.adler=0,r.status=Ee)):r.status=Ee),r.pending!==0){if(ie(t),t.avail_out===0)return r.last_flush=-1,kt}else if(t.avail_in===0&&lf(e)<=lf(n)&&e!==le)return fe(t,Bo);if(r.status===Kn&&t.avail_in!==0)return fe(t,Bo);if(t.avail_in!==0||r.lookahead!==0||e!==Te&&r.status!==Kn){var f=r.strategy===Zr?zu(r,e):r.strategy===Tu?ku(r,e):Ye[r.level].func(r,e);if((f===Se||f===je)&&(r.status=Kn),f===$||f===Se)return t.avail_out===0&&(r.last_flush=-1),kt;if(f===Hn&&(e===xu?St._tr_align(r):e!==cf&&(St._tr_stored_block(r,0,0,!1),e===gu&&(ae(r.head),r.lookahead===0&&(r.strstart=0,r.block_start=0,r.insert=0))),ie(t),t.avail_out===0))return r.last_flush=-1,kt}return e!==le?kt:r.wrap<=0?ff:(r.wrap===2?(K(r,t.adler&255),K(r,t.adler>>8&255),K(r,t.adler>>16&255),K(r,t.adler>>24&255),K(r,t.total_in&255),K(r,t.total_in>>8&255),K(r,t.total_in>>16&255),K(r,t.total_in>>24&255)):(zn(r,t.adler>>>16),zn(r,t.adler&65535)),ie(t),r.wrap>0&&(r.wrap=-r.wrap),r.pending!==0?kt:ff)}function qu(t){var e;return!t||!t.state?Rt:(e=t.state.status,e!==Jr&&e!==vo&&e!==Qr&&e!==Yr&&e!==jr&&e!==Ee&&e!==Kn?fe(t,Rt):(t.state=null,e===Ee?fe(t,Eu):kt))}function Zu(t,e){var n=e.length,r,s,o,i,a,f,c,l;if(!t||!t.state||(r=t.state,i=r.wrap,i===2||i===1&&r.status!==Jr||r.lookahead))return Rt;for(i===1&&(t.adler=hf(t.adler,e,n,0)),r.wrap=0,n>=r.w_size&&(i===0&&(ae(r.head),r.strstart=0,r.block_start=0,r.insert=0),l=new ct.Buf8(r.w_size),ct.arraySet(l,e,n-r.w_size,r.w_size,0),e=l,n=r.w_size),a=t.avail_in,f=t.next_in,c=t.input,t.avail_in=n,t.next_in=0,t.input=e,Re(r);r.lookahead>=k;){s=r.strstart,o=r.lookahead-(k-1);do r.ins_h=(r.ins_h<<r.hash_shift^r.window[s+k-1])&r.hash_mask,r.prev[s&r.w_mask]=r.head[r.ins_h],r.head[r.ins_h]=s,s++;while(--o);r.strstart=s,r.lookahead=k-1,Re(r)}return r.strstart+=r.lookahead,r.block_start=r.strstart,r.insert=r.lookahead,r.lookahead=0,r.match_length=r.prev_length=k-1,r.match_available=0,t.next_in=f,t.input=c,t.avail_in=a,r.wrap=i,kt}zt.deflateInit=Xu;zt.deflateInit2=pf;zt.deflateReset=uf;zt.deflateResetKeep=df;zt.deflateSetHeader=Vu;zt.deflate=Wu;zt.deflateEnd=qu;zt.deflateSetDictionary=Zu;zt.deflateInfo="pako deflate (from Nodeca project)"});var Lo=J($e=>{"use strict";var ts=Zt(),Af=!0,xf=!0;try{String.fromCharCode.apply(null,[0])}catch{Af=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch{xf=!1}var Vn=new ts.Buf8(256);for(Yt=0;Yt<256;Yt++)Vn[Yt]=Yt>=252?6:Yt>=248?5:Yt>=240?4:Yt>=224?3:Yt>=192?2:1;var Yt;Vn[254]=Vn[254]=1;$e.string2buf=function(t){var e,n,r,s,o,i=t.length,a=0;for(s=0;s<i;s++)n=t.charCodeAt(s),(n&64512)===55296&&s+1<i&&(r=t.charCodeAt(s+1),(r&64512)===56320&&(n=65536+(n-55296<<10)+(r-56320),s++)),a+=n<128?1:n<2048?2:n<65536?3:4;for(e=new ts.Buf8(a),o=0,s=0;o<a;s++)n=t.charCodeAt(s),(n&64512)===55296&&s+1<i&&(r=t.charCodeAt(s+1),(r&64512)===56320&&(n=65536+(n-55296<<10)+(r-56320),s++)),n<128?e[o++]=n:n<2048?(e[o++]=192|n>>>6,e[o++]=128|n&63):n<65536?(e[o++]=224|n>>>12,e[o++]=128|n>>>6&63,e[o++]=128|n&63):(e[o++]=240|n>>>18,e[o++]=128|n>>>12&63,e[o++]=128|n>>>6&63,e[o++]=128|n&63);return e};function gf(t,e){if(e<65534&&(t.subarray&&xf||!t.subarray&&Af))return String.fromCharCode.apply(null,ts.shrinkBuf(t,e));for(var n="",r=0;r<e;r++)n+=String.fromCharCode(t[r]);return n}$e.buf2binstring=function(t){return gf(t,t.length)};$e.binstring2buf=function(t){for(var e=new ts.Buf8(t.length),n=0,r=e.length;n<r;n++)e[n]=t.charCodeAt(n);return e};$e.buf2string=function(t,e){var n,r,s,o,i=e||t.length,a=new Array(i*2);for(r=0,n=0;n<i;){if(s=t[n++],s<128){a[r++]=s;continue}if(o=Vn[s],o>4){a[r++]=65533,n+=o-1;continue}for(s&=o===2?31:o===3?15:7;o>1&&n<i;)s=s<<6|t[n++]&63,o--;if(o>1){a[r++]=65533;continue}s<65536?a[r++]=s:(s-=65536,a[r++]=55296|s>>10&1023,a[r++]=56320|s&1023)}return gf(a,r)};$e.utf8border=function(t,e){var n;for(e=e||t.length,e>t.length&&(e=t.length),n=e-1;n>=0&&(t[n]&192)===128;)n--;return n<0||n===0?e:n+Vn[t[n]]>e?n:e}});var No=J((GR,Ef)=>{"use strict";function Qu(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}Ef.exports=Qu});var Mf=J(qn=>{"use strict";var Xn=mf(),Wn=Zt(),Fo=Lo(),Uo=qr(),Yu=No(),Tf=Object.prototype.toString,ju=0,Po=4,Je=0,Sf=1,Rf=2,$u=-1,Ju=0,tp=8;function Me(t){if(!(this instanceof Me))return new Me(t);this.options=Wn.assign({level:$u,method:tp,chunkSize:16384,windowBits:15,memLevel:8,strategy:Ju,to:""},t||{});var e=this.options;e.raw&&e.windowBits>0?e.windowBits=-e.windowBits:e.gzip&&e.windowBits>0&&e.windowBits<16&&(e.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Yu,this.strm.avail_out=0;var n=Xn.deflateInit2(this.strm,e.level,e.method,e.windowBits,e.memLevel,e.strategy);if(n!==Je)throw new Error(Uo[n]);if(e.header&&Xn.deflateSetHeader(this.strm,e.header),e.dictionary){var r;if(typeof e.dictionary=="string"?r=Fo.string2buf(e.dictionary):Tf.call(e.dictionary)==="[object ArrayBuffer]"?r=new Uint8Array(e.dictionary):r=e.dictionary,n=Xn.deflateSetDictionary(this.strm,r),n!==Je)throw new Error(Uo[n]);this._dict_set=!0}}Me.prototype.push=function(t,e){var n=this.strm,r=this.options.chunkSize,s,o;if(this.ended)return!1;o=e===~~e?e:e===!0?Po:ju,typeof t=="string"?n.input=Fo.string2buf(t):Tf.call(t)==="[object ArrayBuffer]"?n.input=new Uint8Array(t):n.input=t,n.next_in=0,n.avail_in=n.input.length;do{if(n.avail_out===0&&(n.output=new Wn.Buf8(r),n.next_out=0,n.avail_out=r),s=Xn.deflate(n,o),s!==Sf&&s!==Je)return this.onEnd(s),this.ended=!0,!1;(n.avail_out===0||n.avail_in===0&&(o===Po||o===Rf))&&(this.options.to==="string"?this.onData(Fo.buf2binstring(Wn.shrinkBuf(n.output,n.next_out))):this.onData(Wn.shrinkBuf(n.output,n.next_out)))}while((n.avail_in>0||n.avail_out===0)&&s!==Sf);return o===Po?(s=Xn.deflateEnd(this.strm),this.onEnd(s),this.ended=!0,s===Je):(o===Rf&&(this.onEnd(Je),n.avail_out=0),!0)};Me.prototype.onData=function(t){this.chunks.push(t)};Me.prototype.onEnd=function(t){t===Je&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=Wn.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};function Go(t,e){var n=new Me(e);if(n.push(t,!0),n.err)throw n.msg||Uo[n.err];return n.result}function ep(t,e){return e=e||{},e.raw=!0,Go(t,e)}function np(t,e){return e=e||{},e.gzip=!0,Go(t,e)}qn.Deflate=Me;qn.deflate=Go;qn.deflateRaw=ep;qn.gzip=np});var wf=J((zR,yf)=>{"use strict";var es=30,rp=12;yf.exports=function(e,n){var r,s,o,i,a,f,c,l,d,_,h,u,A,p,S,y,B,T,R,D,I,L,x,m,g;r=e.state,s=e.next_in,m=e.input,o=s+(e.avail_in-5),i=e.next_out,g=e.output,a=i-(n-e.avail_out),f=i+(e.avail_out-257),c=r.dmax,l=r.wsize,d=r.whave,_=r.wnext,h=r.window,u=r.hold,A=r.bits,p=r.lencode,S=r.distcode,y=(1<<r.lenbits)-1,B=(1<<r.distbits)-1;t:do{A<15&&(u+=m[s++]<<A,A+=8,u+=m[s++]<<A,A+=8),T=p[u&y];e:for(;;){if(R=T>>>24,u>>>=R,A-=R,R=T>>>16&255,R===0)g[i++]=T&65535;else if(R&16){D=T&65535,R&=15,R&&(A<R&&(u+=m[s++]<<A,A+=8),D+=u&(1<<R)-1,u>>>=R,A-=R),A<15&&(u+=m[s++]<<A,A+=8,u+=m[s++]<<A,A+=8),T=S[u&B];n:for(;;){if(R=T>>>24,u>>>=R,A-=R,R=T>>>16&255,R&16){if(I=T&65535,R&=15,A<R&&(u+=m[s++]<<A,A+=8,A<R&&(u+=m[s++]<<A,A+=8)),I+=u&(1<<R)-1,I>c){e.msg="invalid distance too far back",r.mode=es;break t}if(u>>>=R,A-=R,R=i-a,I>R){if(R=I-R,R>d&&r.sane){e.msg="invalid distance too far back",r.mode=es;break t}if(L=0,x=h,_===0){if(L+=l-R,R<D){D-=R;do g[i++]=h[L++];while(--R);L=i-I,x=g}}else if(_<R){if(L+=l+_-R,R-=_,R<D){D-=R;do g[i++]=h[L++];while(--R);if(L=0,_<D){R=_,D-=R;do g[i++]=h[L++];while(--R);L=i-I,x=g}}}else if(L+=_-R,R<D){D-=R;do g[i++]=h[L++];while(--R);L=i-I,x=g}for(;D>2;)g[i++]=x[L++],g[i++]=x[L++],g[i++]=x[L++],D-=3;D&&(g[i++]=x[L++],D>1&&(g[i++]=x[L++]))}else{L=i-I;do g[i++]=g[L++],g[i++]=g[L++],g[i++]=g[L++],D-=3;while(D>2);D&&(g[i++]=g[L++],D>1&&(g[i++]=g[L++]))}}else if(R&64){e.msg="invalid distance code",r.mode=es;break t}else{T=S[(T&65535)+(u&(1<<R)-1)];continue n}break}}else if(R&64)if(R&32){r.mode=rp;break t}else{e.msg="invalid literal/length code",r.mode=es;break t}else{T=p[(T&65535)+(u&(1<<R)-1)];continue e}break}}while(s<o&&i<f);D=A>>3,s-=D,A-=D<<3,u&=(1<<A)-1,e.next_in=s,e.next_out=i,e.avail_in=s<o?5+(o-s):5-(s-o),e.avail_out=i<f?257+(f-i):257-(i-f),r.hold=u,r.bits=A}});var vf=J((KR,If)=>{"use strict";var Of=Zt(),tn=15,bf=852,Cf=592,Bf=0,ko=1,Df=2,sp=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],op=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],ip=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],ap=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];If.exports=function(e,n,r,s,o,i,a,f){var c=f.bits,l=0,d=0,_=0,h=0,u=0,A=0,p=0,S=0,y=0,B=0,T,R,D,I,L,x=null,m=0,g,E=new Of.Buf16(tn+1),U=new Of.Buf16(tn+1),F=null,G=0,N,j,rt;for(l=0;l<=tn;l++)E[l]=0;for(d=0;d<s;d++)E[n[r+d]]++;for(u=c,h=tn;h>=1&&E[h]===0;h--);if(u>h&&(u=h),h===0)return o[i++]=1<<24|64<<16|0,o[i++]=1<<24|64<<16|0,f.bits=1,0;for(_=1;_<h&&E[_]===0;_++);for(u<_&&(u=_),S=1,l=1;l<=tn;l++)if(S<<=1,S-=E[l],S<0)return-1;if(S>0&&(e===Bf||h!==1))return-1;for(U[1]=0,l=1;l<tn;l++)U[l+1]=U[l]+E[l];for(d=0;d<s;d++)n[r+d]!==0&&(a[U[n[r+d]]++]=d);if(e===Bf?(x=F=a,g=19):e===ko?(x=sp,m-=257,F=op,G-=257,g=256):(x=ip,F=ap,g=-1),B=0,d=0,l=_,L=i,A=u,p=0,D=-1,y=1<<u,I=y-1,e===ko&&y>bf||e===Df&&y>Cf)return 1;for(;;){N=l-p,a[d]<g?(j=0,rt=a[d]):a[d]>g?(j=F[G+a[d]],rt=x[m+a[d]]):(j=32+64,rt=0),T=1<<l-p,R=1<<A,_=R;do R-=T,o[L+(B>>p)+R]=N<<24|j<<16|rt|0;while(R!==0);for(T=1<<l-1;B&T;)T>>=1;if(T!==0?(B&=T-1,B+=T):B=0,d++,--E[l]===0){if(l===h)break;l=n[r+a[d]]}if(l>u&&(B&I)!==D){for(p===0&&(p=u),L+=_,A=l-p,S=1<<A;A+p<h&&(S-=E[A+p],!(S<=0));)A++,S<<=1;if(y+=1<<A,e===ko&&y>bf||e===Df&&y>Cf)return 1;D=B&I,o[D]=u<<24|A<<16|L-i|0}}return B!==0&&(o[L+B]=l-p<<24|64<<16|0),f.bits=u,0}});var ul=J(wt=>{"use strict";var mt=Zt(),Wo=bo(),Kt=Co(),cp=wf(),Zn=vf(),fp=0,ol=1,il=2,Lf=4,lp=5,ns=6,ye=0,hp=1,_p=2,Tt=-2,al=-3,qo=-4,dp=-5,Nf=8,cl=1,Pf=2,Ff=3,Uf=4,Gf=5,kf=6,zf=7,Kf=8,Hf=9,Vf=10,os=11,jt=12,zo=13,Xf=14,Ko=15,Wf=16,qf=17,Zf=18,Qf=19,rs=20,ss=21,Yf=22,jf=23,$f=24,Jf=25,tl=26,Ho=27,el=28,nl=29,q=30,Zo=31,up=32,pp=852,mp=592,Ap=15,xp=Ap;function rl(t){return(t>>>24&255)+(t>>>8&65280)+((t&65280)<<8)+((t&255)<<24)}function gp(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new mt.Buf16(320),this.work=new mt.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function fl(t){var e;return!t||!t.state?Tt:(e=t.state,t.total_in=t.total_out=e.total=0,t.msg="",e.wrap&&(t.adler=e.wrap&1),e.mode=cl,e.last=0,e.havedict=0,e.dmax=32768,e.head=null,e.hold=0,e.bits=0,e.lencode=e.lendyn=new mt.Buf32(pp),e.distcode=e.distdyn=new mt.Buf32(mp),e.sane=1,e.back=-1,ye)}function ll(t){var e;return!t||!t.state?Tt:(e=t.state,e.wsize=0,e.whave=0,e.wnext=0,fl(t))}function hl(t,e){var n,r;return!t||!t.state||(r=t.state,e<0?(n=0,e=-e):(n=(e>>4)+1,e<48&&(e&=15)),e&&(e<8||e>15))?Tt:(r.window!==null&&r.wbits!==e&&(r.window=null),r.wrap=n,r.wbits=e,ll(t))}function _l(t,e){var n,r;return t?(r=new gp,t.state=r,r.window=null,n=hl(t,e),n!==ye&&(t.state=null),n):Tt}function Ep(t){return _l(t,xp)}var sl=!0,Vo,Xo;function Sp(t){if(sl){var e;for(Vo=new mt.Buf32(512),Xo=new mt.Buf32(32),e=0;e<144;)t.lens[e++]=8;for(;e<256;)t.lens[e++]=9;for(;e<280;)t.lens[e++]=7;for(;e<288;)t.lens[e++]=8;for(Zn(ol,t.lens,0,288,Vo,0,t.work,{bits:9}),e=0;e<32;)t.lens[e++]=5;Zn(il,t.lens,0,32,Xo,0,t.work,{bits:5}),sl=!1}t.lencode=Vo,t.lenbits=9,t.distcode=Xo,t.distbits=5}function dl(t,e,n,r){var s,o=t.state;return o.window===null&&(o.wsize=1<<o.wbits,o.wnext=0,o.whave=0,o.window=new mt.Buf8(o.wsize)),r>=o.wsize?(mt.arraySet(o.window,e,n-o.wsize,o.wsize,0),o.wnext=0,o.whave=o.wsize):(s=o.wsize-o.wnext,s>r&&(s=r),mt.arraySet(o.window,e,n-r,s,o.wnext),r-=s,r?(mt.arraySet(o.window,e,n-r,r,0),o.wnext=r,o.whave=o.wsize):(o.wnext+=s,o.wnext===o.wsize&&(o.wnext=0),o.whave<o.wsize&&(o.whave+=s))),0}function Rp(t,e){var n,r,s,o,i,a,f,c,l,d,_,h,u,A,p=0,S,y,B,T,R,D,I,L,x=new mt.Buf8(4),m,g,E=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!t||!t.state||!t.output||!t.input&&t.avail_in!==0)return Tt;n=t.state,n.mode===jt&&(n.mode=zo),i=t.next_out,s=t.output,f=t.avail_out,o=t.next_in,r=t.input,a=t.avail_in,c=n.hold,l=n.bits,d=a,_=f,L=ye;t:for(;;)switch(n.mode){case cl:if(n.wrap===0){n.mode=zo;break}for(;l<16;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}if(n.wrap&2&&c===35615){n.check=0,x[0]=c&255,x[1]=c>>>8&255,n.check=Kt(n.check,x,2,0),c=0,l=0,n.mode=Pf;break}if(n.flags=0,n.head&&(n.head.done=!1),!(n.wrap&1)||(((c&255)<<8)+(c>>8))%31){t.msg="incorrect header check",n.mode=q;break}if((c&15)!==Nf){t.msg="unknown compression method",n.mode=q;break}if(c>>>=4,l-=4,I=(c&15)+8,n.wbits===0)n.wbits=I;else if(I>n.wbits){t.msg="invalid window size",n.mode=q;break}n.dmax=1<<I,t.adler=n.check=1,n.mode=c&512?Vf:jt,c=0,l=0;break;case Pf:for(;l<16;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}if(n.flags=c,(n.flags&255)!==Nf){t.msg="unknown compression method",n.mode=q;break}if(n.flags&57344){t.msg="unknown header flags set",n.mode=q;break}n.head&&(n.head.text=c>>8&1),n.flags&512&&(x[0]=c&255,x[1]=c>>>8&255,n.check=Kt(n.check,x,2,0)),c=0,l=0,n.mode=Ff;case Ff:for(;l<32;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}n.head&&(n.head.time=c),n.flags&512&&(x[0]=c&255,x[1]=c>>>8&255,x[2]=c>>>16&255,x[3]=c>>>24&255,n.check=Kt(n.check,x,4,0)),c=0,l=0,n.mode=Uf;case Uf:for(;l<16;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}n.head&&(n.head.xflags=c&255,n.head.os=c>>8),n.flags&512&&(x[0]=c&255,x[1]=c>>>8&255,n.check=Kt(n.check,x,2,0)),c=0,l=0,n.mode=Gf;case Gf:if(n.flags&1024){for(;l<16;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}n.length=c,n.head&&(n.head.extra_len=c),n.flags&512&&(x[0]=c&255,x[1]=c>>>8&255,n.check=Kt(n.check,x,2,0)),c=0,l=0}else n.head&&(n.head.extra=null);n.mode=kf;case kf:if(n.flags&1024&&(h=n.length,h>a&&(h=a),h&&(n.head&&(I=n.head.extra_len-n.length,n.head.extra||(n.head.extra=new Array(n.head.extra_len)),mt.arraySet(n.head.extra,r,o,h,I)),n.flags&512&&(n.check=Kt(n.check,r,h,o)),a-=h,o+=h,n.length-=h),n.length))break t;n.length=0,n.mode=zf;case zf:if(n.flags&2048){if(a===0)break t;h=0;do I=r[o+h++],n.head&&I&&n.length<65536&&(n.head.name+=String.fromCharCode(I));while(I&&h<a);if(n.flags&512&&(n.check=Kt(n.check,r,h,o)),a-=h,o+=h,I)break t}else n.head&&(n.head.name=null);n.length=0,n.mode=Kf;case Kf:if(n.flags&4096){if(a===0)break t;h=0;do I=r[o+h++],n.head&&I&&n.length<65536&&(n.head.comment+=String.fromCharCode(I));while(I&&h<a);if(n.flags&512&&(n.check=Kt(n.check,r,h,o)),a-=h,o+=h,I)break t}else n.head&&(n.head.comment=null);n.mode=Hf;case Hf:if(n.flags&512){for(;l<16;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}if(c!==(n.check&65535)){t.msg="header crc mismatch",n.mode=q;break}c=0,l=0}n.head&&(n.head.hcrc=n.flags>>9&1,n.head.done=!0),t.adler=n.check=0,n.mode=jt;break;case Vf:for(;l<32;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}t.adler=n.check=rl(c),c=0,l=0,n.mode=os;case os:if(n.havedict===0)return t.next_out=i,t.avail_out=f,t.next_in=o,t.avail_in=a,n.hold=c,n.bits=l,_p;t.adler=n.check=1,n.mode=jt;case jt:if(e===lp||e===ns)break t;case zo:if(n.last){c>>>=l&7,l-=l&7,n.mode=Ho;break}for(;l<3;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}switch(n.last=c&1,c>>>=1,l-=1,c&3){case 0:n.mode=Xf;break;case 1:if(Sp(n),n.mode=rs,e===ns){c>>>=2,l-=2;break t}break;case 2:n.mode=qf;break;case 3:t.msg="invalid block type",n.mode=q}c>>>=2,l-=2;break;case Xf:for(c>>>=l&7,l-=l&7;l<32;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}if((c&65535)!==(c>>>16^65535)){t.msg="invalid stored block lengths",n.mode=q;break}if(n.length=c&65535,c=0,l=0,n.mode=Ko,e===ns)break t;case Ko:n.mode=Wf;case Wf:if(h=n.length,h){if(h>a&&(h=a),h>f&&(h=f),h===0)break t;mt.arraySet(s,r,o,h,i),a-=h,o+=h,f-=h,i+=h,n.length-=h;break}n.mode=jt;break;case qf:for(;l<14;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}if(n.nlen=(c&31)+257,c>>>=5,l-=5,n.ndist=(c&31)+1,c>>>=5,l-=5,n.ncode=(c&15)+4,c>>>=4,l-=4,n.nlen>286||n.ndist>30){t.msg="too many length or distance symbols",n.mode=q;break}n.have=0,n.mode=Zf;case Zf:for(;n.have<n.ncode;){for(;l<3;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}n.lens[E[n.have++]]=c&7,c>>>=3,l-=3}for(;n.have<19;)n.lens[E[n.have++]]=0;if(n.lencode=n.lendyn,n.lenbits=7,m={bits:n.lenbits},L=Zn(fp,n.lens,0,19,n.lencode,0,n.work,m),n.lenbits=m.bits,L){t.msg="invalid code lengths set",n.mode=q;break}n.have=0,n.mode=Qf;case Qf:for(;n.have<n.nlen+n.ndist;){for(;p=n.lencode[c&(1<<n.lenbits)-1],S=p>>>24,y=p>>>16&255,B=p&65535,!(S<=l);){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}if(B<16)c>>>=S,l-=S,n.lens[n.have++]=B;else{if(B===16){for(g=S+2;l<g;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}if(c>>>=S,l-=S,n.have===0){t.msg="invalid bit length repeat",n.mode=q;break}I=n.lens[n.have-1],h=3+(c&3),c>>>=2,l-=2}else if(B===17){for(g=S+3;l<g;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}c>>>=S,l-=S,I=0,h=3+(c&7),c>>>=3,l-=3}else{for(g=S+7;l<g;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}c>>>=S,l-=S,I=0,h=11+(c&127),c>>>=7,l-=7}if(n.have+h>n.nlen+n.ndist){t.msg="invalid bit length repeat",n.mode=q;break}for(;h--;)n.lens[n.have++]=I}}if(n.mode===q)break;if(n.lens[256]===0){t.msg="invalid code -- missing end-of-block",n.mode=q;break}if(n.lenbits=9,m={bits:n.lenbits},L=Zn(ol,n.lens,0,n.nlen,n.lencode,0,n.work,m),n.lenbits=m.bits,L){t.msg="invalid literal/lengths set",n.mode=q;break}if(n.distbits=6,n.distcode=n.distdyn,m={bits:n.distbits},L=Zn(il,n.lens,n.nlen,n.ndist,n.distcode,0,n.work,m),n.distbits=m.bits,L){t.msg="invalid distances set",n.mode=q;break}if(n.mode=rs,e===ns)break t;case rs:n.mode=ss;case ss:if(a>=6&&f>=258){t.next_out=i,t.avail_out=f,t.next_in=o,t.avail_in=a,n.hold=c,n.bits=l,cp(t,_),i=t.next_out,s=t.output,f=t.avail_out,o=t.next_in,r=t.input,a=t.avail_in,c=n.hold,l=n.bits,n.mode===jt&&(n.back=-1);break}for(n.back=0;p=n.lencode[c&(1<<n.lenbits)-1],S=p>>>24,y=p>>>16&255,B=p&65535,!(S<=l);){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}if(y&&!(y&240)){for(T=S,R=y,D=B;p=n.lencode[D+((c&(1<<T+R)-1)>>T)],S=p>>>24,y=p>>>16&255,B=p&65535,!(T+S<=l);){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}c>>>=T,l-=T,n.back+=T}if(c>>>=S,l-=S,n.back+=S,n.length=B,y===0){n.mode=tl;break}if(y&32){n.back=-1,n.mode=jt;break}if(y&64){t.msg="invalid literal/length code",n.mode=q;break}n.extra=y&15,n.mode=Yf;case Yf:if(n.extra){for(g=n.extra;l<g;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}n.length+=c&(1<<n.extra)-1,c>>>=n.extra,l-=n.extra,n.back+=n.extra}n.was=n.length,n.mode=jf;case jf:for(;p=n.distcode[c&(1<<n.distbits)-1],S=p>>>24,y=p>>>16&255,B=p&65535,!(S<=l);){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}if(!(y&240)){for(T=S,R=y,D=B;p=n.distcode[D+((c&(1<<T+R)-1)>>T)],S=p>>>24,y=p>>>16&255,B=p&65535,!(T+S<=l);){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}c>>>=T,l-=T,n.back+=T}if(c>>>=S,l-=S,n.back+=S,y&64){t.msg="invalid distance code",n.mode=q;break}n.offset=B,n.extra=y&15,n.mode=$f;case $f:if(n.extra){for(g=n.extra;l<g;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}n.offset+=c&(1<<n.extra)-1,c>>>=n.extra,l-=n.extra,n.back+=n.extra}if(n.offset>n.dmax){t.msg="invalid distance too far back",n.mode=q;break}n.mode=Jf;case Jf:if(f===0)break t;if(h=_-f,n.offset>h){if(h=n.offset-h,h>n.whave&&n.sane){t.msg="invalid distance too far back",n.mode=q;break}h>n.wnext?(h-=n.wnext,u=n.wsize-h):u=n.wnext-h,h>n.length&&(h=n.length),A=n.window}else A=s,u=i-n.offset,h=n.length;h>f&&(h=f),f-=h,n.length-=h;do s[i++]=A[u++];while(--h);n.length===0&&(n.mode=ss);break;case tl:if(f===0)break t;s[i++]=n.length,f--,n.mode=ss;break;case Ho:if(n.wrap){for(;l<32;){if(a===0)break t;a--,c|=r[o++]<<l,l+=8}if(_-=f,t.total_out+=_,n.total+=_,_&&(t.adler=n.check=n.flags?Kt(n.check,s,_,i-_):Wo(n.check,s,_,i-_)),_=f,(n.flags?c:rl(c))!==n.check){t.msg="incorrect data check",n.mode=q;break}c=0,l=0}n.mode=el;case el:if(n.wrap&&n.flags){for(;l<32;){if(a===0)break t;a--,c+=r[o++]<<l,l+=8}if(c!==(n.total&4294967295)){t.msg="incorrect length check",n.mode=q;break}c=0,l=0}n.mode=nl;case nl:L=hp;break t;case q:L=al;break t;case Zo:return qo;case up:default:return Tt}return t.next_out=i,t.avail_out=f,t.next_in=o,t.avail_in=a,n.hold=c,n.bits=l,(n.wsize||_!==t.avail_out&&n.mode<q&&(n.mode<Ho||e!==Lf))&&dl(t,t.output,t.next_out,_-t.avail_out)?(n.mode=Zo,qo):(d-=t.avail_in,_-=t.avail_out,t.total_in+=d,t.total_out+=_,n.total+=_,n.wrap&&_&&(t.adler=n.check=n.flags?Kt(n.check,s,_,t.next_out-_):Wo(n.check,s,_,t.next_out-_)),t.data_type=n.bits+(n.last?64:0)+(n.mode===jt?128:0)+(n.mode===rs||n.mode===Ko?256:0),(d===0&&_===0||e===Lf)&&L===ye&&(L=dp),L)}function Tp(t){if(!t||!t.state)return Tt;var e=t.state;return e.window&&(e.window=null),t.state=null,ye}function Mp(t,e){var n;return!t||!t.state||(n=t.state,!(n.wrap&2))?Tt:(n.head=e,e.done=!1,ye)}function yp(t,e){var n=e.length,r,s,o;return!t||!t.state||(r=t.state,r.wrap!==0&&r.mode!==os)?Tt:r.mode===os&&(s=1,s=Wo(s,e,n,0),s!==r.check)?al:(o=dl(t,e,n,n),o?(r.mode=Zo,qo):(r.havedict=1,ye))}wt.inflateReset=ll;wt.inflateReset2=hl;wt.inflateResetKeep=fl;wt.inflateInit=Ep;wt.inflateInit2=_l;wt.inflate=Rp;wt.inflateEnd=Tp;wt.inflateGetHeader=Mp;wt.inflateSetDictionary=yp;wt.inflateInfo="pako inflate (from Nodeca project)"});var Qo=J((VR,pl)=>{"use strict";pl.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}});var Al=J((XR,ml)=>{"use strict";function wp(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}ml.exports=wp});var gl=J(Yn=>{"use strict";var en=ul(),Qn=Zt(),is=Lo(),Q=Qo(),Yo=qr(),Op=No(),bp=Al(),xl=Object.prototype.toString;function we(t){if(!(this instanceof we))return new we(t);this.options=Qn.assign({chunkSize:16384,windowBits:0,to:""},t||{});var e=this.options;e.raw&&e.windowBits>=0&&e.windowBits<16&&(e.windowBits=-e.windowBits,e.windowBits===0&&(e.windowBits=-15)),e.windowBits>=0&&e.windowBits<16&&!(t&&t.windowBits)&&(e.windowBits+=32),e.windowBits>15&&e.windowBits<48&&(e.windowBits&15||(e.windowBits|=15)),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Op,this.strm.avail_out=0;var n=en.inflateInit2(this.strm,e.windowBits);if(n!==Q.Z_OK)throw new Error(Yo[n]);if(this.header=new bp,en.inflateGetHeader(this.strm,this.header),e.dictionary&&(typeof e.dictionary=="string"?e.dictionary=is.string2buf(e.dictionary):xl.call(e.dictionary)==="[object ArrayBuffer]"&&(e.dictionary=new Uint8Array(e.dictionary)),e.raw&&(n=en.inflateSetDictionary(this.strm,e.dictionary),n!==Q.Z_OK)))throw new Error(Yo[n])}we.prototype.push=function(t,e){var n=this.strm,r=this.options.chunkSize,s=this.options.dictionary,o,i,a,f,c,l=!1;if(this.ended)return!1;i=e===~~e?e:e===!0?Q.Z_FINISH:Q.Z_NO_FLUSH,typeof t=="string"?n.input=is.binstring2buf(t):xl.call(t)==="[object ArrayBuffer]"?n.input=new Uint8Array(t):n.input=t,n.next_in=0,n.avail_in=n.input.length;do{if(n.avail_out===0&&(n.output=new Qn.Buf8(r),n.next_out=0,n.avail_out=r),o=en.inflate(n,Q.Z_NO_FLUSH),o===Q.Z_NEED_DICT&&s&&(o=en.inflateSetDictionary(this.strm,s)),o===Q.Z_BUF_ERROR&&l===!0&&(o=Q.Z_OK,l=!1),o!==Q.Z_STREAM_END&&o!==Q.Z_OK)return this.onEnd(o),this.ended=!0,!1;n.next_out&&(n.avail_out===0||o===Q.Z_STREAM_END||n.avail_in===0&&(i===Q.Z_FINISH||i===Q.Z_SYNC_FLUSH))&&(this.options.to==="string"?(a=is.utf8border(n.output,n.next_out),f=n.next_out-a,c=is.buf2string(n.output,a),n.next_out=f,n.avail_out=r-f,f&&Qn.arraySet(n.output,n.output,a,f,0),this.onData(c)):this.onData(Qn.shrinkBuf(n.output,n.next_out))),n.avail_in===0&&n.avail_out===0&&(l=!0)}while((n.avail_in>0||n.avail_out===0)&&o!==Q.Z_STREAM_END);return o===Q.Z_STREAM_END&&(i=Q.Z_FINISH),i===Q.Z_FINISH?(o=en.inflateEnd(this.strm),this.onEnd(o),this.ended=!0,o===Q.Z_OK):(i===Q.Z_SYNC_FLUSH&&(this.onEnd(Q.Z_OK),n.avail_out=0),!0)};we.prototype.onData=function(t){this.chunks.push(t)};we.prototype.onEnd=function(t){t===Q.Z_OK&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=Qn.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};function jo(t,e){var n=new we(e);if(n.push(t,!0),n.err)throw n.msg||Yo[n.err];return n.result}function Cp(t,e){return e=e||{},e.raw=!0,jo(t,e)}Yn.Inflate=we;Yn.inflate=jo;Yn.inflateRaw=Cp;Yn.ungzip=jo});var Rl=J((qR,Sl)=>{"use strict";var Bp=Zt().assign,Dp=Mf(),Ip=gl(),vp=Qo(),El={};Bp(El,Dp,Ip,vp);Sl.exports=El});var Tl=J(()=>{});var tr={};or(tr,{ArcGISWebSceneLoader:()=>Pl,COORDINATE_SYSTEM:()=>Lt,I3SAttributeLoader:()=>$n,I3SBuildingSceneLayerLoader:()=>Il,I3SContentLoader:()=>Pr,I3SLoader:()=>Dn,I3SNodePageLoader:()=>kr,LayerError:()=>Jn,SLPKArchive:()=>nn,SLPKLoader:()=>Ml,customizeColors:()=>Gl,loadFeatureAttributes:()=>Cl,parseSLPKArchive:()=>cs});ir(tr,Ct(Ht(),1));var ql={POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6},Zl={BYTE:5120,UNSIGNED_BYTE:5121,SHORT:5122,UNSIGNED_SHORT:5123,INT:5124,UNSIGNED_INT:5125,FLOAT:5126,DOUBLE:5130},he={...ql,...Zl};async function hs(t,e,n,r){return r._parse(t,e,n,r)}function Jt(t,e){if(!t)throw new Error(e||"loader assertion failed.")}var Bt={self:typeof self<"u"&&self,window:typeof window<"u"&&window,global:typeof global<"u"&&global,document:typeof document<"u"&&document},Ql=Bt.self||Bt.window||Bt.global||{},Yl=Bt.window||Bt.self||Bt.global||{},jl=Bt.global||Bt.self||Bt.window||{},$l=Bt.document||{};var At=Boolean(typeof process!="object"||String(process)!=="[object process]"||process.browser);var ii=typeof process<"u"&&process.version&&/v([0-9]*)/.exec(process.version),Jl=ii&&parseFloat(ii[1])||0;function sn(t){globalThis.loaders||={},globalThis.loaders.modules||={},Object.assign(globalThis.loaders.modules,t)}function _s(t){return globalThis.loaders?.modules?.[t]||null}function t0(){return globalThis._loadersgl_?.version||(globalThis._loadersgl_=globalThis._loadersgl_||{},globalThis._loadersgl_.version="4.3.2"),globalThis._loadersgl_.version}var ai=t0();function ci(t,e){if(!t)throw new Error(e||"loaders.gl assertion failed.")}var Dt={self:typeof self<"u"&&self,window:typeof window<"u"&&window,global:typeof global<"u"&&global,document:typeof document<"u"&&document},Sm=Dt.self||Dt.window||Dt.global||{},Rm=Dt.window||Dt.self||Dt.global||{},Tm=Dt.global||Dt.self||Dt.window||{},Mm=Dt.document||{};var De=typeof process!="object"||String(process)!=="[object process]"||process.browser,ar=typeof importScripts=="function",ym=typeof window<"u"&&typeof window.orientation<"u",fi=typeof process<"u"&&process.version&&/v([0-9]*)/.exec(process.version),wm=fi&&parseFloat(fi[1])||0;var ds={};async function It(t,e=null,n={},r=null){return e&&(t=li(t,e,n,r)),ds[t]=ds[t]||e0(t),await ds[t]}function li(t,e,n={},r=null){if(!n.useLocalLibraries&&t.startsWith("http"))return t;r=r||t;let s=n.modules||{};return s[r]?s[r]:De?n.CDN?(ci(n.CDN.startsWith("http")),`${n.CDN}/${e}@${ai}/dist/libs/${r}`):ar?`../src/libs/${r}`:`modules/${e}/src/libs/${r}`:`modules/${e}/dist/libs/${r}`}async function e0(t){if(t.endsWith("wasm"))return await r0(t);if(!De)try{let{requireFromFile:n}=globalThis.loaders||{};return await n?.(t)}catch(n){return console.error(n),null}if(ar)return importScripts(t);let e=await s0(t);return n0(e,t)}function n0(t,e){if(!De){let{requireFromString:r}=globalThis.loaders||{};return r?.(t,e)}if(ar)return eval.call(globalThis,t),null;let n=document.createElement("script");n.id=e;try{n.appendChild(document.createTextNode(t))}catch{n.text=t}return document.body.appendChild(n),null}async function r0(t){let{readFileAsArrayBuffer:e}=globalThis.loaders||{};return De||!e||t.startsWith("http")?await(await fetch(t)).arrayBuffer():await e(t)}async function s0(t){let{readFileAsText:e}=globalThis.loaders||{};return De||!e||t.startsWith("http")?await(await fetch(t)).text():await e(t)}function te(t,e,n){if(n=n||t.byteLength,t.byteLength<n||e.byteLength<n)return!1;let r=new Uint8Array(t),s=new Uint8Array(e);for(let o=0;o<r.length;++o)if(r[o]!==s[o])return!1;return!0}function Ie(...t){return hi(t)}function hi(t){let e=t.map(o=>o instanceof ArrayBuffer?new Uint8Array(o):o),n=e.reduce((o,i)=>o+i.byteLength,0),r=new Uint8Array(n),s=0;for(let o of e)r.set(o,s),s+=o.byteLength;return r.buffer}async function on(t){let e=[];for await(let n of t)e.push(n);return Ie(...e)}function _i(t){return t&&typeof t=="object"&&t.isBuffer}function ve(t){if(_i(t))return t;if(t instanceof ArrayBuffer)return t;if(ArrayBuffer.isView(t))return t.byteOffset===0&&t.byteLength===t.buffer.byteLength?t.buffer:t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength);if(typeof t=="string"){let e=t;return new TextEncoder().encode(e).buffer}if(t&&typeof t=="object"&&t._toArrayBuffer)return t._toArrayBuffer();throw new Error("toArrayBuffer")}function Le(t){return e=>new Promise((n,r)=>t(e,(s,o)=>s?r(s):n(o)))}var an=new Error("Not implemented"),cr=class{handle;size=0;bigsize=0n;url="";constructor(e,n,r){if(globalThis.loaders?.NodeFile)return new globalThis.loaders.NodeFile(e,n,r);throw At?new Error("Can't instantiate NodeFile in browser."):new Error("Can't instantiate NodeFile. Make sure to import @loaders.gl/polyfills first.")}async read(e,n){throw an}async write(e,n,r){throw an}async stat(){throw an}async truncate(e){throw an}async append(e){throw an}async close(){}};var us=t=>t?.getUint8&&t?.slice&&t?.length;var cn=class{file;constructor(e,n=!1){this.file=new cr(e,n?"a+":"r")}async truncate(e){await this.file.truncate(e)}async append(e){await this.file.append(e)}async destroy(){await this.file.close()}async getUint8(e){let n=await this.file.read(e,1),r=new Uint8Array(n).at(0);if(r===void 0)throw new Error("something went wrong");return r}async getUint16(e){let n=await this.file.read(e,2),r=new Uint16Array(n).at(0);if(r===void 0)throw new Error("something went wrong");return r}async getUint32(e){let n=await this.file.read(e,4),r=new Uint32Array(n).at(0);if(r===void 0)throw new Error("something went wrong");return r}async getBigUint64(e){let n=await this.file.read(e,8),r=new BigInt64Array(n).at(0);if(r===void 0)throw new Error("something went wrong");return r}async slice(e,n){let r=n-e;if(r>Number.MAX_SAFE_INTEGER)throw new Error("too big slice");let s=Number(r);return await this.file.read(e,s)}get length(){return this.file.bigsize}};var Ne=t=>{if(t>Number.MAX_SAFE_INTEGER)throw new Error("Offset is out of bounds");return Number(t)},_e=class{file;constructor(e){this.file=e}async destroy(){}async getUint8(e){return this.file.getUint8(Ne(e))}async getUint16(e){return this.file.getUint16(Ne(e),!0)}async getUint32(e){return this.file.getUint32(Ne(e),!0)}async getBigUint64(e){return this.file.getBigUint64(Ne(e),!0)}async slice(e,n){return this.file.buffer.slice(Ne(e),Ne(n))}get length(){return BigInt(this.file.byteLength)}};var o0=1/Math.PI*180,i0=1/180*Math.PI,a0={EPSILON:1e-12,debug:!1,precision:4,printTypes:!1,printDegrees:!1,printRowMajor:!0,_cartographicRadians:!1};globalThis.mathgl=globalThis.mathgl||{config:{...a0}};var X=globalThis.mathgl.config;function ps(t,{precision:e=X.precision}={}){return t=c0(t),`${parseFloat(t.toPrecision(e))}`}function vt(t){return Array.isArray(t)||ArrayBuffer.isView(t)&&!(t instanceof DataView)}function ms(t){return di(t)}function As(t){return ui(t)}function di(t,e){return pi(t,n=>n*i0,e)}function ui(t,e){return pi(t,n=>n*o0,e)}function _t(t,e,n){let r=X.EPSILON;n&&(X.EPSILON=n);try{if(t===e)return!0;if(vt(t)&&vt(e)){if(t.length!==e.length)return!1;for(let s=0;s<t.length;++s)if(!_t(t[s],e[s]))return!1;return!0}return t&&t.equals?t.equals(e):e&&e.equals?e.equals(t):typeof t=="number"&&typeof e=="number"?Math.abs(t-e)<=X.EPSILON*Math.max(1,Math.abs(t),Math.abs(e)):!1}finally{X.EPSILON=r}}function c0(t){return Math.round(t/X.EPSILON)*X.EPSILON}function f0(t){return t.clone?t.clone():new Array(t.length)}function pi(t,e,n){if(vt(t)){let r=t;n=n||f0(r);for(let s=0;s<n.length&&s<r.length;++s){let o=typeof t=="number"?t:t[s];n[s]=e(o,s,n)}return n}return e(t)}var ee=class extends Array{clone(){return new this.constructor().copy(this)}fromArray(e,n=0){for(let r=0;r<this.ELEMENTS;++r)this[r]=e[r+n];return this.check()}toArray(e=[],n=0){for(let r=0;r<this.ELEMENTS;++r)e[n+r]=this[r];return e}toObject(e){return e}from(e){return Array.isArray(e)?this.copy(e):this.fromObject(e)}to(e){return e===this?this:vt(e)?this.toArray(e):this.toObject(e)}toTarget(e){return e?this.to(e):this}toFloat32Array(){return new Float32Array(this)}toString(){return this.formatString(X)}formatString(e){let n="";for(let r=0;r<this.ELEMENTS;++r)n+=(r>0?", ":"")+ps(this[r],e);return`${e.printTypes?this.constructor.name:""}[${n}]`}equals(e){if(!e||this.length!==e.length)return!1;for(let n=0;n<this.ELEMENTS;++n)if(!_t(this[n],e[n]))return!1;return!0}exactEquals(e){if(!e||this.length!==e.length)return!1;for(let n=0;n<this.ELEMENTS;++n)if(this[n]!==e[n])return!1;return!0}negate(){for(let e=0;e<this.ELEMENTS;++e)this[e]=-this[e];return this.check()}lerp(e,n,r){if(r===void 0)return this.lerp(this,e,n);for(let s=0;s<this.ELEMENTS;++s){let o=e[s],i=typeof n=="number"?n:n[s];this[s]=o+r*(i-o)}return this.check()}min(e){for(let n=0;n<this.ELEMENTS;++n)this[n]=Math.min(e[n],this[n]);return this.check()}max(e){for(let n=0;n<this.ELEMENTS;++n)this[n]=Math.max(e[n],this[n]);return this.check()}clamp(e,n){for(let r=0;r<this.ELEMENTS;++r)this[r]=Math.min(Math.max(this[r],e[r]),n[r]);return this.check()}add(...e){for(let n of e)for(let r=0;r<this.ELEMENTS;++r)this[r]+=n[r];return this.check()}subtract(...e){for(let n of e)for(let r=0;r<this.ELEMENTS;++r)this[r]-=n[r];return this.check()}scale(e){if(typeof e=="number")for(let n=0;n<this.ELEMENTS;++n)this[n]*=e;else for(let n=0;n<this.ELEMENTS&&n<e.length;++n)this[n]*=e[n];return this.check()}multiplyByScalar(e){for(let n=0;n<this.ELEMENTS;++n)this[n]*=e;return this.check()}check(){if(X.debug&&!this.validate())throw new Error(`math.gl: ${this.constructor.name} some fields set to invalid numbers'`);return this}validate(){let e=this.length===this.ELEMENTS;for(let n=0;n<this.ELEMENTS;++n)e=e&&Number.isFinite(this[n]);return e}sub(e){return this.subtract(e)}setScalar(e){for(let n=0;n<this.ELEMENTS;++n)this[n]=e;return this.check()}addScalar(e){for(let n=0;n<this.ELEMENTS;++n)this[n]+=e;return this.check()}subScalar(e){return this.addScalar(-e)}multiplyScalar(e){for(let n=0;n<this.ELEMENTS;++n)this[n]*=e;return this.check()}divideScalar(e){return this.multiplyByScalar(1/e)}clampScalar(e,n){for(let r=0;r<this.ELEMENTS;++r)this[r]=Math.min(Math.max(this[r],e),n);return this.check()}get elements(){return this}};function l0(t,e){if(t.length!==e)return!1;for(let n=0;n<t.length;++n)if(!Number.isFinite(t[n]))return!1;return!0}function z(t){if(!Number.isFinite(t))throw new Error(`Invalid number ${JSON.stringify(t)}`);return t}function ne(t,e,n=""){if(X.debug&&!l0(t,e))throw new Error(`math.gl: ${n} some fields set to invalid numbers'`);return t}function tt(t,e){if(!t)throw new Error(`math.gl assertion ${e}`)}var Pe=class extends ee{get x(){return this[0]}set x(e){this[0]=z(e)}get y(){return this[1]}set y(e){this[1]=z(e)}len(){return Math.sqrt(this.lengthSquared())}magnitude(){return this.len()}lengthSquared(){let e=0;for(let n=0;n<this.ELEMENTS;++n)e+=this[n]*this[n];return e}magnitudeSquared(){return this.lengthSquared()}distance(e){return Math.sqrt(this.distanceSquared(e))}distanceSquared(e){let n=0;for(let r=0;r<this.ELEMENTS;++r){let s=this[r]-e[r];n+=s*s}return z(n)}dot(e){let n=0;for(let r=0;r<this.ELEMENTS;++r)n+=this[r]*e[r];return z(n)}normalize(){let e=this.magnitude();if(e!==0)for(let n=0;n<this.ELEMENTS;++n)this[n]/=e;return this.check()}multiply(...e){for(let n of e)for(let r=0;r<this.ELEMENTS;++r)this[r]*=n[r];return this.check()}divide(...e){for(let n of e)for(let r=0;r<this.ELEMENTS;++r)this[r]/=n[r];return this.check()}lengthSq(){return this.lengthSquared()}distanceTo(e){return this.distance(e)}distanceToSquared(e){return this.distanceSquared(e)}getComponent(e){return tt(e>=0&&e<this.ELEMENTS,"index is out of range"),z(this[e])}setComponent(e,n){return tt(e>=0&&e<this.ELEMENTS,"index is out of range"),this[e]=n,this.check()}addVectors(e,n){return this.copy(e).add(n)}subVectors(e,n){return this.copy(e).subtract(n)}multiplyVectors(e,n){return this.copy(e).multiply(n)}addScaledVector(e,n){return this.add(new this.constructor(e).multiplyScalar(n))}};var W=typeof Float32Array<"u"?Float32Array:Array,fn=Math.random;function Fe(t){return t>=0?Math.round(t):t%.5===0?Math.floor(t):Math.round(t)}var MA=Math.PI/180;function h0(){let t=new W(2);return W!=Float32Array&&(t[0]=0,t[1]=0),t}function mi(t,e,n){let r=e[0],s=e[1];return t[0]=n[0]*r+n[3]*s+n[6],t[1]=n[1]*r+n[4]*s+n[7],t}function Ai(t,e,n){let r=e[0],s=e[1];return t[0]=n[0]*r+n[4]*s+n[12],t[1]=n[1]*r+n[5]*s+n[13],t}var yA=function(){let t=h0();return function(e,n,r,s,o,i){let a,f;for(n||(n=2),r||(r=0),s?f=Math.min(s*n+r,e.length):f=e.length,a=r;a<f;a+=n)t[0]=e[a],t[1]=e[a+1],o(t,t,i),e[a]=t[0],e[a+1]=t[1];return e}}();function xi(t,e,n){let r=e[0],s=e[1],o=n[3]*r+n[7]*s||1;return t[0]=(n[0]*r+n[4]*s)/o,t[1]=(n[1]*r+n[5]*s)/o,t}function fr(t,e,n){let r=e[0],s=e[1],o=e[2],i=n[3]*r+n[7]*s+n[11]*o||1;return t[0]=(n[0]*r+n[4]*s+n[8]*o)/i,t[1]=(n[1]*r+n[5]*s+n[9]*o)/i,t[2]=(n[2]*r+n[6]*s+n[10]*o)/i,t}function gi(t,e,n){let r=e[0],s=e[1];return t[0]=n[0]*r+n[2]*s,t[1]=n[1]*r+n[3]*s,t[2]=e[2],t}function Ei(t,e,n){let r=e[0],s=e[1];return t[0]=n[0]*r+n[2]*s,t[1]=n[1]*r+n[3]*s,t[2]=e[2],t[3]=e[3],t}function lr(t,e,n){let r=e[0],s=e[1],o=e[2];return t[0]=n[0]*r+n[3]*s+n[6]*o,t[1]=n[1]*r+n[4]*s+n[7]*o,t[2]=n[2]*r+n[5]*s+n[8]*o,t[3]=e[3],t}var pe={};or(pe,{add:()=>p0,angle:()=>Rs,bezier:()=>b0,ceil:()=>m0,clone:()=>_0,copy:()=>d0,create:()=>hr,cross:()=>de,dist:()=>F0,distance:()=>yi,div:()=>P0,divide:()=>Mi,dot:()=>ln,equals:()=>v0,exactEquals:()=>I0,floor:()=>A0,forEach:()=>k0,fromValues:()=>_r,hermite:()=>O0,inverse:()=>M0,len:()=>Ts,length:()=>Si,lerp:()=>y0,max:()=>g0,min:()=>x0,mul:()=>N0,multiply:()=>Ti,negate:()=>T0,normalize:()=>xs,random:()=>C0,rotateX:()=>gs,rotateY:()=>Es,rotateZ:()=>Ss,round:()=>E0,scale:()=>S0,scaleAndAdd:()=>R0,set:()=>u0,slerp:()=>w0,sqrDist:()=>U0,sqrLen:()=>G0,squaredDistance:()=>wi,squaredLength:()=>Oi,str:()=>D0,sub:()=>L0,subtract:()=>Ri,transformMat3:()=>hn,transformMat4:()=>ue,transformQuat:()=>_n,zero:()=>B0});function hr(){let t=new W(3);return W!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0),t}function _0(t){let e=new W(3);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e}function Si(t){let e=t[0],n=t[1],r=t[2];return Math.sqrt(e*e+n*n+r*r)}function _r(t,e,n){let r=new W(3);return r[0]=t,r[1]=e,r[2]=n,r}function d0(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}function u0(t,e,n,r){return t[0]=e,t[1]=n,t[2]=r,t}function p0(t,e,n){return t[0]=e[0]+n[0],t[1]=e[1]+n[1],t[2]=e[2]+n[2],t}function Ri(t,e,n){return t[0]=e[0]-n[0],t[1]=e[1]-n[1],t[2]=e[2]-n[2],t}function Ti(t,e,n){return t[0]=e[0]*n[0],t[1]=e[1]*n[1],t[2]=e[2]*n[2],t}function Mi(t,e,n){return t[0]=e[0]/n[0],t[1]=e[1]/n[1],t[2]=e[2]/n[2],t}function m0(t,e){return t[0]=Math.ceil(e[0]),t[1]=Math.ceil(e[1]),t[2]=Math.ceil(e[2]),t}function A0(t,e){return t[0]=Math.floor(e[0]),t[1]=Math.floor(e[1]),t[2]=Math.floor(e[2]),t}function x0(t,e,n){return t[0]=Math.min(e[0],n[0]),t[1]=Math.min(e[1],n[1]),t[2]=Math.min(e[2],n[2]),t}function g0(t,e,n){return t[0]=Math.max(e[0],n[0]),t[1]=Math.max(e[1],n[1]),t[2]=Math.max(e[2],n[2]),t}function E0(t,e){return t[0]=Fe(e[0]),t[1]=Fe(e[1]),t[2]=Fe(e[2]),t}function S0(t,e,n){return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t}function R0(t,e,n,r){return t[0]=e[0]+n[0]*r,t[1]=e[1]+n[1]*r,t[2]=e[2]+n[2]*r,t}function yi(t,e){let n=e[0]-t[0],r=e[1]-t[1],s=e[2]-t[2];return Math.sqrt(n*n+r*r+s*s)}function wi(t,e){let n=e[0]-t[0],r=e[1]-t[1],s=e[2]-t[2];return n*n+r*r+s*s}function Oi(t){let e=t[0],n=t[1],r=t[2];return e*e+n*n+r*r}function T0(t,e){return t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t}function M0(t,e){return t[0]=1/e[0],t[1]=1/e[1],t[2]=1/e[2],t}function xs(t,e){let n=e[0],r=e[1],s=e[2],o=n*n+r*r+s*s;return o>0&&(o=1/Math.sqrt(o)),t[0]=e[0]*o,t[1]=e[1]*o,t[2]=e[2]*o,t}function ln(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}function de(t,e,n){let r=e[0],s=e[1],o=e[2],i=n[0],a=n[1],f=n[2];return t[0]=s*f-o*a,t[1]=o*i-r*f,t[2]=r*a-s*i,t}function y0(t,e,n,r){let s=e[0],o=e[1],i=e[2];return t[0]=s+r*(n[0]-s),t[1]=o+r*(n[1]-o),t[2]=i+r*(n[2]-i),t}function w0(t,e,n,r){let s=Math.acos(Math.min(Math.max(ln(e,n),-1),1)),o=Math.sin(s),i=Math.sin((1-r)*s)/o,a=Math.sin(r*s)/o;return t[0]=i*e[0]+a*n[0],t[1]=i*e[1]+a*n[1],t[2]=i*e[2]+a*n[2],t}function O0(t,e,n,r,s,o){let i=o*o,a=i*(2*o-3)+1,f=i*(o-2)+o,c=i*(o-1),l=i*(3-2*o);return t[0]=e[0]*a+n[0]*f+r[0]*c+s[0]*l,t[1]=e[1]*a+n[1]*f+r[1]*c+s[1]*l,t[2]=e[2]*a+n[2]*f+r[2]*c+s[2]*l,t}function b0(t,e,n,r,s,o){let i=1-o,a=i*i,f=o*o,c=a*i,l=3*o*a,d=3*f*i,_=f*o;return t[0]=e[0]*c+n[0]*l+r[0]*d+s[0]*_,t[1]=e[1]*c+n[1]*l+r[1]*d+s[1]*_,t[2]=e[2]*c+n[2]*l+r[2]*d+s[2]*_,t}function C0(t,e){e=e===void 0?1:e;let n=fn()*2*Math.PI,r=fn()*2-1,s=Math.sqrt(1-r*r)*e;return t[0]=Math.cos(n)*s,t[1]=Math.sin(n)*s,t[2]=r*e,t}function ue(t,e,n){let r=e[0],s=e[1],o=e[2],i=n[3]*r+n[7]*s+n[11]*o+n[15];return i=i||1,t[0]=(n[0]*r+n[4]*s+n[8]*o+n[12])/i,t[1]=(n[1]*r+n[5]*s+n[9]*o+n[13])/i,t[2]=(n[2]*r+n[6]*s+n[10]*o+n[14])/i,t}function hn(t,e,n){let r=e[0],s=e[1],o=e[2];return t[0]=r*n[0]+s*n[3]+o*n[6],t[1]=r*n[1]+s*n[4]+o*n[7],t[2]=r*n[2]+s*n[5]+o*n[8],t}function _n(t,e,n){let r=n[0],s=n[1],o=n[2],i=n[3],a=e[0],f=e[1],c=e[2],l=s*c-o*f,d=o*a-r*c,_=r*f-s*a,h=s*_-o*d,u=o*l-r*_,A=r*d-s*l,p=i*2;return l*=p,d*=p,_*=p,h*=2,u*=2,A*=2,t[0]=a+l+h,t[1]=f+d+u,t[2]=c+_+A,t}function gs(t,e,n,r){let s=[],o=[];return s[0]=e[0]-n[0],s[1]=e[1]-n[1],s[2]=e[2]-n[2],o[0]=s[0],o[1]=s[1]*Math.cos(r)-s[2]*Math.sin(r),o[2]=s[1]*Math.sin(r)+s[2]*Math.cos(r),t[0]=o[0]+n[0],t[1]=o[1]+n[1],t[2]=o[2]+n[2],t}function Es(t,e,n,r){let s=[],o=[];return s[0]=e[0]-n[0],s[1]=e[1]-n[1],s[2]=e[2]-n[2],o[0]=s[2]*Math.sin(r)+s[0]*Math.cos(r),o[1]=s[1],o[2]=s[2]*Math.cos(r)-s[0]*Math.sin(r),t[0]=o[0]+n[0],t[1]=o[1]+n[1],t[2]=o[2]+n[2],t}function Ss(t,e,n,r){let s=[],o=[];return s[0]=e[0]-n[0],s[1]=e[1]-n[1],s[2]=e[2]-n[2],o[0]=s[0]*Math.cos(r)-s[1]*Math.sin(r),o[1]=s[0]*Math.sin(r)+s[1]*Math.cos(r),o[2]=s[2],t[0]=o[0]+n[0],t[1]=o[1]+n[1],t[2]=o[2]+n[2],t}function Rs(t,e){let n=t[0],r=t[1],s=t[2],o=e[0],i=e[1],a=e[2],f=Math.sqrt((n*n+r*r+s*s)*(o*o+i*i+a*a)),c=f&&ln(t,e)/f;return Math.acos(Math.min(Math.max(c,-1),1))}function B0(t){return t[0]=0,t[1]=0,t[2]=0,t}function D0(t){return`vec3(${t[0]}, ${t[1]}, ${t[2]})`}function I0(t,e){return t[0]===e[0]&&t[1]===e[1]&&t[2]===e[2]}function v0(t,e){let n=t[0],r=t[1],s=t[2],o=e[0],i=e[1],a=e[2];return Math.abs(n-o)<=1e-6*Math.max(1,Math.abs(n),Math.abs(o))&&Math.abs(r-i)<=1e-6*Math.max(1,Math.abs(r),Math.abs(i))&&Math.abs(s-a)<=1e-6*Math.max(1,Math.abs(s),Math.abs(a))}var L0=Ri,N0=Ti,P0=Mi,F0=yi,U0=wi,Ts=Si,G0=Oi,k0=function(){let t=hr();return function(e,n,r,s,o,i){let a,f;for(n||(n=3),r||(r=0),s?f=Math.min(s*n+r,e.length):f=e.length,a=r;a<f;a+=n)t[0]=e[a],t[1]=e[a+1],t[2]=e[a+2],o(t,t,i),e[a]=t[0],e[a+1]=t[1],e[a+2]=t[2];return e}}();var Ms=[0,0,0],dr,v=class extends Pe{static get ZERO(){return dr||(dr=new v(0,0,0),Object.freeze(dr)),dr}constructor(e=0,n=0,r=0){super(-0,-0,-0),arguments.length===1&&vt(e)?this.copy(e):(X.debug&&(z(e),z(n),z(r)),this[0]=e,this[1]=n,this[2]=r)}set(e,n,r){return this[0]=e,this[1]=n,this[2]=r,this.check()}copy(e){return this[0]=e[0],this[1]=e[1],this[2]=e[2],this.check()}fromObject(e){return X.debug&&(z(e.x),z(e.y),z(e.z)),this[0]=e.x,this[1]=e.y,this[2]=e.z,this.check()}toObject(e){return e.x=this[0],e.y=this[1],e.z=this[2],e}get ELEMENTS(){return 3}get z(){return this[2]}set z(e){this[2]=z(e)}angle(e){return Rs(this,e)}cross(e){return de(this,this,e),this.check()}rotateX({radians:e,origin:n=Ms}){return gs(this,this,n,e),this.check()}rotateY({radians:e,origin:n=Ms}){return Es(this,this,n,e),this.check()}rotateZ({radians:e,origin:n=Ms}){return Ss(this,this,n,e),this.check()}transform(e){return this.transformAsPoint(e)}transformAsPoint(e){return ue(this,this,e),this.check()}transformAsVector(e){return fr(this,this,e),this.check()}transformByMatrix3(e){return hn(this,this,e),this.check()}transformByMatrix2(e){return gi(this,this,e),this.check()}transformByQuaternion(e){return _n(this,this,e),this.check()}};var ur,Ge=class extends Pe{static get ZERO(){return ur||(ur=new Ge(0,0,0,0),Object.freeze(ur)),ur}constructor(e=0,n=0,r=0,s=0){super(-0,-0,-0,-0),vt(e)&&arguments.length===1?this.copy(e):(X.debug&&(z(e),z(n),z(r),z(s)),this[0]=e,this[1]=n,this[2]=r,this[3]=s)}set(e,n,r,s){return this[0]=e,this[1]=n,this[2]=r,this[3]=s,this.check()}copy(e){return this[0]=e[0],this[1]=e[1],this[2]=e[2],this[3]=e[3],this.check()}fromObject(e){return X.debug&&(z(e.x),z(e.y),z(e.z),z(e.w)),this[0]=e.x,this[1]=e.y,this[2]=e.z,this[3]=e.w,this}toObject(e){return e.x=this[0],e.y=this[1],e.z=this[2],e.w=this[3],e}get ELEMENTS(){return 4}get z(){return this[2]}set z(e){this[2]=z(e)}get w(){return this[3]}set w(e){this[3]=z(e)}transform(e){return ue(this,this,e),this.check()}transformByMatrix3(e){return lr(this,this,e),this.check()}transformByMatrix2(e){return Ei(this,this,e),this.check()}transformByQuaternion(e){return _n(this,this,e),this.check()}applyMatrix4(e){return e.transform(this,this),this}};var ke=class extends ee{toString(){let e="[";if(X.printRowMajor){e+="row-major:";for(let n=0;n<this.RANK;++n)for(let r=0;r<this.RANK;++r)e+=` ${this[r*this.RANK+n]}`}else{e+="column-major:";for(let n=0;n<this.ELEMENTS;++n)e+=` ${this[n]}`}return e+="]",e}getElementIndex(e,n){return n*this.RANK+e}getElement(e,n){return this[n*this.RANK+e]}setElement(e,n,r){return this[n*this.RANK+e]=z(r),this}getColumn(e,n=new Array(this.RANK).fill(-0)){let r=e*this.RANK;for(let s=0;s<this.RANK;++s)n[s]=this[r+s];return n}setColumn(e,n){let r=e*this.RANK;for(let s=0;s<this.RANK;++s)this[r+s]=n[s];return this}};function bi(){let t=new W(9);return W!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[5]=0,t[6]=0,t[7]=0),t[0]=1,t[4]=1,t[8]=1,t}function Ci(t,e){if(t===e){let n=e[1],r=e[2],s=e[5];t[1]=e[3],t[2]=e[6],t[3]=n,t[5]=e[7],t[6]=r,t[7]=s}else t[0]=e[0],t[1]=e[3],t[2]=e[6],t[3]=e[1],t[4]=e[4],t[5]=e[7],t[6]=e[2],t[7]=e[5],t[8]=e[8];return t}function Bi(t,e){let n=e[0],r=e[1],s=e[2],o=e[3],i=e[4],a=e[5],f=e[6],c=e[7],l=e[8],d=l*i-a*c,_=-l*o+a*f,h=c*o-i*f,u=n*d+r*_+s*h;return u?(u=1/u,t[0]=d*u,t[1]=(-l*r+s*c)*u,t[2]=(a*r-s*i)*u,t[3]=_*u,t[4]=(l*n-s*f)*u,t[5]=(-a*n+s*o)*u,t[6]=h*u,t[7]=(-c*n+r*f)*u,t[8]=(i*n-r*o)*u,t):null}function Di(t){let e=t[0],n=t[1],r=t[2],s=t[3],o=t[4],i=t[5],a=t[6],f=t[7],c=t[8];return e*(c*o-i*f)+n*(-c*s+i*a)+r*(f*s-o*a)}function ys(t,e,n){let r=e[0],s=e[1],o=e[2],i=e[3],a=e[4],f=e[5],c=e[6],l=e[7],d=e[8],_=n[0],h=n[1],u=n[2],A=n[3],p=n[4],S=n[5],y=n[6],B=n[7],T=n[8];return t[0]=_*r+h*i+u*c,t[1]=_*s+h*a+u*l,t[2]=_*o+h*f+u*d,t[3]=A*r+p*i+S*c,t[4]=A*s+p*a+S*l,t[5]=A*o+p*f+S*d,t[6]=y*r+B*i+T*c,t[7]=y*s+B*a+T*l,t[8]=y*o+B*f+T*d,t}function Ii(t,e,n){let r=e[0],s=e[1],o=e[2],i=e[3],a=e[4],f=e[5],c=e[6],l=e[7],d=e[8],_=n[0],h=n[1];return t[0]=r,t[1]=s,t[2]=o,t[3]=i,t[4]=a,t[5]=f,t[6]=_*r+h*i+c,t[7]=_*s+h*a+l,t[8]=_*o+h*f+d,t}function vi(t,e,n){let r=e[0],s=e[1],o=e[2],i=e[3],a=e[4],f=e[5],c=e[6],l=e[7],d=e[8],_=Math.sin(n),h=Math.cos(n);return t[0]=h*r+_*i,t[1]=h*s+_*a,t[2]=h*o+_*f,t[3]=h*i-_*r,t[4]=h*a-_*s,t[5]=h*f-_*o,t[6]=c,t[7]=l,t[8]=d,t}function ws(t,e,n){let r=n[0],s=n[1];return t[0]=r*e[0],t[1]=r*e[1],t[2]=r*e[2],t[3]=s*e[3],t[4]=s*e[4],t[5]=s*e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t}function Li(t,e){let n=e[0],r=e[1],s=e[2],o=e[3],i=n+n,a=r+r,f=s+s,c=n*i,l=r*i,d=r*a,_=s*i,h=s*a,u=s*f,A=o*i,p=o*a,S=o*f;return t[0]=1-d-u,t[3]=l-S,t[6]=_+p,t[1]=l+S,t[4]=1-c-u,t[7]=h-A,t[2]=_-p,t[5]=h+A,t[8]=1-c-d,t}var Os;(function(t){t[t.COL0ROW0=0]="COL0ROW0",t[t.COL0ROW1=1]="COL0ROW1",t[t.COL0ROW2=2]="COL0ROW2",t[t.COL1ROW0=3]="COL1ROW0",t[t.COL1ROW1=4]="COL1ROW1",t[t.COL1ROW2=5]="COL1ROW2",t[t.COL2ROW0=6]="COL2ROW0",t[t.COL2ROW1=7]="COL2ROW1",t[t.COL2ROW2=8]="COL2ROW2"})(Os||(Os={}));var K0=Object.freeze([1,0,0,0,1,0,0,0,1]),Y=class extends ke{static get IDENTITY(){return V0()}static get ZERO(){return H0()}get ELEMENTS(){return 9}get RANK(){return 3}get INDICES(){return Os}constructor(e,...n){super(-0,-0,-0,-0,-0,-0,-0,-0,-0),arguments.length===1&&Array.isArray(e)?this.copy(e):n.length>0?this.copy([e,...n]):this.identity()}copy(e){return this[0]=e[0],this[1]=e[1],this[2]=e[2],this[3]=e[3],this[4]=e[4],this[5]=e[5],this[6]=e[6],this[7]=e[7],this[8]=e[8],this.check()}identity(){return this.copy(K0)}fromObject(e){return this.check()}fromQuaternion(e){return Li(this,e),this.check()}set(e,n,r,s,o,i,a,f,c){return this[0]=e,this[1]=n,this[2]=r,this[3]=s,this[4]=o,this[5]=i,this[6]=a,this[7]=f,this[8]=c,this.check()}setRowMajor(e,n,r,s,o,i,a,f,c){return this[0]=e,this[1]=s,this[2]=a,this[3]=n,this[4]=o,this[5]=f,this[6]=r,this[7]=i,this[8]=c,this.check()}determinant(){return Di(this)}transpose(){return Ci(this,this),this.check()}invert(){return Bi(this,this),this.check()}multiplyLeft(e){return ys(this,e,this),this.check()}multiplyRight(e){return ys(this,this,e),this.check()}rotate(e){return vi(this,this,e),this.check()}scale(e){return Array.isArray(e)?ws(this,this,e):ws(this,this,[e,e]),this.check()}translate(e){return Ii(this,this,e),this.check()}transform(e,n){let r;switch(e.length){case 2:r=mi(n||[-0,-0],e,this);break;case 3:r=hn(n||[-0,-0,-0],e,this);break;case 4:r=lr(n||[-0,-0,-0,-0],e,this);break;default:throw new Error("Illegal vector")}return ne(r,e.length),r}transformVector(e,n){return this.transform(e,n)}transformVector2(e,n){return this.transform(e,n)}transformVector3(e,n){return this.transform(e,n)}},pr,mr=null;function H0(){return pr||(pr=new Y([0,0,0,0,0,0,0,0,0]),Object.freeze(pr)),pr}function V0(){return mr||(mr=new Y,Object.freeze(mr)),mr}var un={};or(un,{add:()=>ph,adjoint:()=>Y0,clone:()=>W0,copy:()=>q0,create:()=>X0,decompose:()=>ih,determinant:()=>Bs,equals:()=>gh,exactEquals:()=>xh,frob:()=>uh,fromQuat:()=>Fs,fromQuat2:()=>rh,fromRotation:()=>J0,fromRotationTranslation:()=>Pi,fromRotationTranslationScale:()=>ah,fromRotationTranslationScaleOrigin:()=>ch,fromScaling:()=>$0,fromTranslation:()=>j0,fromValues:()=>Z0,fromXRotation:()=>th,fromYRotation:()=>eh,fromZRotation:()=>nh,frustum:()=>Us,getRotation:()=>oh,getScaling:()=>Fi,getTranslation:()=>sh,identity:()=>Ni,invert:()=>Cs,lookAt:()=>zs,mul:()=>Eh,multiply:()=>dn,multiplyScalar:()=>mh,multiplyScalarAndAdd:()=>Ah,ortho:()=>ks,orthoNO:()=>Gi,orthoZO:()=>hh,perspective:()=>Gs,perspectiveFromFieldOfView:()=>lh,perspectiveNO:()=>Ui,perspectiveZO:()=>fh,rotate:()=>vs,rotateX:()=>Ls,rotateY:()=>Ns,rotateZ:()=>Ps,scale:()=>Is,set:()=>Q0,str:()=>dh,sub:()=>Sh,subtract:()=>ki,targetTo:()=>_h,translate:()=>Ds,transpose:()=>bs});function X0(){let t=new W(16);return W!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=0,t[12]=0,t[13]=0,t[14]=0),t[0]=1,t[5]=1,t[10]=1,t[15]=1,t}function W0(t){let e=new W(16);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}function q0(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}function Z0(t,e,n,r,s,o,i,a,f,c,l,d,_,h,u,A){let p=new W(16);return p[0]=t,p[1]=e,p[2]=n,p[3]=r,p[4]=s,p[5]=o,p[6]=i,p[7]=a,p[8]=f,p[9]=c,p[10]=l,p[11]=d,p[12]=_,p[13]=h,p[14]=u,p[15]=A,p}function Q0(t,e,n,r,s,o,i,a,f,c,l,d,_,h,u,A,p){return t[0]=e,t[1]=n,t[2]=r,t[3]=s,t[4]=o,t[5]=i,t[6]=a,t[7]=f,t[8]=c,t[9]=l,t[10]=d,t[11]=_,t[12]=h,t[13]=u,t[14]=A,t[15]=p,t}function Ni(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function bs(t,e){if(t===e){let n=e[1],r=e[2],s=e[3],o=e[6],i=e[7],a=e[11];t[1]=e[4],t[2]=e[8],t[3]=e[12],t[4]=n,t[6]=e[9],t[7]=e[13],t[8]=r,t[9]=o,t[11]=e[14],t[12]=s,t[13]=i,t[14]=a}else t[0]=e[0],t[1]=e[4],t[2]=e[8],t[3]=e[12],t[4]=e[1],t[5]=e[5],t[6]=e[9],t[7]=e[13],t[8]=e[2],t[9]=e[6],t[10]=e[10],t[11]=e[14],t[12]=e[3],t[13]=e[7],t[14]=e[11],t[15]=e[15];return t}function Cs(t,e){let n=e[0],r=e[1],s=e[2],o=e[3],i=e[4],a=e[5],f=e[6],c=e[7],l=e[8],d=e[9],_=e[10],h=e[11],u=e[12],A=e[13],p=e[14],S=e[15],y=n*a-r*i,B=n*f-s*i,T=n*c-o*i,R=r*f-s*a,D=r*c-o*a,I=s*c-o*f,L=l*A-d*u,x=l*p-_*u,m=l*S-h*u,g=d*p-_*A,E=d*S-h*A,U=_*S-h*p,F=y*U-B*E+T*g+R*m-D*x+I*L;return F?(F=1/F,t[0]=(a*U-f*E+c*g)*F,t[1]=(s*E-r*U-o*g)*F,t[2]=(A*I-p*D+S*R)*F,t[3]=(_*D-d*I-h*R)*F,t[4]=(f*m-i*U-c*x)*F,t[5]=(n*U-s*m+o*x)*F,t[6]=(p*T-u*I-S*B)*F,t[7]=(l*I-_*T+h*B)*F,t[8]=(i*E-a*m+c*L)*F,t[9]=(r*m-n*E-o*L)*F,t[10]=(u*D-A*T+S*y)*F,t[11]=(d*T-l*D-h*y)*F,t[12]=(a*x-i*g-f*L)*F,t[13]=(n*g-r*x+s*L)*F,t[14]=(A*B-u*R-p*y)*F,t[15]=(l*R-d*B+_*y)*F,t):null}function Y0(t,e){let n=e[0],r=e[1],s=e[2],o=e[3],i=e[4],a=e[5],f=e[6],c=e[7],l=e[8],d=e[9],_=e[10],h=e[11],u=e[12],A=e[13],p=e[14],S=e[15],y=n*a-r*i,B=n*f-s*i,T=n*c-o*i,R=r*f-s*a,D=r*c-o*a,I=s*c-o*f,L=l*A-d*u,x=l*p-_*u,m=l*S-h*u,g=d*p-_*A,E=d*S-h*A,U=_*S-h*p;return t[0]=a*U-f*E+c*g,t[1]=s*E-r*U-o*g,t[2]=A*I-p*D+S*R,t[3]=_*D-d*I-h*R,t[4]=f*m-i*U-c*x,t[5]=n*U-s*m+o*x,t[6]=p*T-u*I-S*B,t[7]=l*I-_*T+h*B,t[8]=i*E-a*m+c*L,t[9]=r*m-n*E-o*L,t[10]=u*D-A*T+S*y,t[11]=d*T-l*D-h*y,t[12]=a*x-i*g-f*L,t[13]=n*g-r*x+s*L,t[14]=A*B-u*R-p*y,t[15]=l*R-d*B+_*y,t}function Bs(t){let e=t[0],n=t[1],r=t[2],s=t[3],o=t[4],i=t[5],a=t[6],f=t[7],c=t[8],l=t[9],d=t[10],_=t[11],h=t[12],u=t[13],A=t[14],p=t[15],S=e*i-n*o,y=e*a-r*o,B=n*a-r*i,T=c*u-l*h,R=c*A-d*h,D=l*A-d*u,I=e*D-n*R+r*T,L=o*D-i*R+a*T,x=c*B-l*y+d*S,m=h*B-u*y+A*S;return f*I-s*L+p*x-_*m}function dn(t,e,n){let r=e[0],s=e[1],o=e[2],i=e[3],a=e[4],f=e[5],c=e[6],l=e[7],d=e[8],_=e[9],h=e[10],u=e[11],A=e[12],p=e[13],S=e[14],y=e[15],B=n[0],T=n[1],R=n[2],D=n[3];return t[0]=B*r+T*a+R*d+D*A,t[1]=B*s+T*f+R*_+D*p,t[2]=B*o+T*c+R*h+D*S,t[3]=B*i+T*l+R*u+D*y,B=n[4],T=n[5],R=n[6],D=n[7],t[4]=B*r+T*a+R*d+D*A,t[5]=B*s+T*f+R*_+D*p,t[6]=B*o+T*c+R*h+D*S,t[7]=B*i+T*l+R*u+D*y,B=n[8],T=n[9],R=n[10],D=n[11],t[8]=B*r+T*a+R*d+D*A,t[9]=B*s+T*f+R*_+D*p,t[10]=B*o+T*c+R*h+D*S,t[11]=B*i+T*l+R*u+D*y,B=n[12],T=n[13],R=n[14],D=n[15],t[12]=B*r+T*a+R*d+D*A,t[13]=B*s+T*f+R*_+D*p,t[14]=B*o+T*c+R*h+D*S,t[15]=B*i+T*l+R*u+D*y,t}function Ds(t,e,n){let r=n[0],s=n[1],o=n[2],i,a,f,c,l,d,_,h,u,A,p,S;return e===t?(t[12]=e[0]*r+e[4]*s+e[8]*o+e[12],t[13]=e[1]*r+e[5]*s+e[9]*o+e[13],t[14]=e[2]*r+e[6]*s+e[10]*o+e[14],t[15]=e[3]*r+e[7]*s+e[11]*o+e[15]):(i=e[0],a=e[1],f=e[2],c=e[3],l=e[4],d=e[5],_=e[6],h=e[7],u=e[8],A=e[9],p=e[10],S=e[11],t[0]=i,t[1]=a,t[2]=f,t[3]=c,t[4]=l,t[5]=d,t[6]=_,t[7]=h,t[8]=u,t[9]=A,t[10]=p,t[11]=S,t[12]=i*r+l*s+u*o+e[12],t[13]=a*r+d*s+A*o+e[13],t[14]=f*r+_*s+p*o+e[14],t[15]=c*r+h*s+S*o+e[15]),t}function Is(t,e,n){let r=n[0],s=n[1],o=n[2];return t[0]=e[0]*r,t[1]=e[1]*r,t[2]=e[2]*r,t[3]=e[3]*r,t[4]=e[4]*s,t[5]=e[5]*s,t[6]=e[6]*s,t[7]=e[7]*s,t[8]=e[8]*o,t[9]=e[9]*o,t[10]=e[10]*o,t[11]=e[11]*o,t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}function vs(t,e,n,r){let s=r[0],o=r[1],i=r[2],a=Math.sqrt(s*s+o*o+i*i),f,c,l,d,_,h,u,A,p,S,y,B,T,R,D,I,L,x,m,g,E,U,F,G;return a<1e-6?null:(a=1/a,s*=a,o*=a,i*=a,c=Math.sin(n),f=Math.cos(n),l=1-f,d=e[0],_=e[1],h=e[2],u=e[3],A=e[4],p=e[5],S=e[6],y=e[7],B=e[8],T=e[9],R=e[10],D=e[11],I=s*s*l+f,L=o*s*l+i*c,x=i*s*l-o*c,m=s*o*l-i*c,g=o*o*l+f,E=i*o*l+s*c,U=s*i*l+o*c,F=o*i*l-s*c,G=i*i*l+f,t[0]=d*I+A*L+B*x,t[1]=_*I+p*L+T*x,t[2]=h*I+S*L+R*x,t[3]=u*I+y*L+D*x,t[4]=d*m+A*g+B*E,t[5]=_*m+p*g+T*E,t[6]=h*m+S*g+R*E,t[7]=u*m+y*g+D*E,t[8]=d*U+A*F+B*G,t[9]=_*U+p*F+T*G,t[10]=h*U+S*F+R*G,t[11]=u*U+y*F+D*G,e!==t&&(t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t)}function Ls(t,e,n){let r=Math.sin(n),s=Math.cos(n),o=e[4],i=e[5],a=e[6],f=e[7],c=e[8],l=e[9],d=e[10],_=e[11];return e!==t&&(t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[4]=o*s+c*r,t[5]=i*s+l*r,t[6]=a*s+d*r,t[7]=f*s+_*r,t[8]=c*s-o*r,t[9]=l*s-i*r,t[10]=d*s-a*r,t[11]=_*s-f*r,t}function Ns(t,e,n){let r=Math.sin(n),s=Math.cos(n),o=e[0],i=e[1],a=e[2],f=e[3],c=e[8],l=e[9],d=e[10],_=e[11];return e!==t&&(t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=o*s-c*r,t[1]=i*s-l*r,t[2]=a*s-d*r,t[3]=f*s-_*r,t[8]=o*r+c*s,t[9]=i*r+l*s,t[10]=a*r+d*s,t[11]=f*r+_*s,t}function Ps(t,e,n){let r=Math.sin(n),s=Math.cos(n),o=e[0],i=e[1],a=e[2],f=e[3],c=e[4],l=e[5],d=e[6],_=e[7];return e!==t&&(t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=o*s+c*r,t[1]=i*s+l*r,t[2]=a*s+d*r,t[3]=f*s+_*r,t[4]=c*s-o*r,t[5]=l*s-i*r,t[6]=d*s-a*r,t[7]=_*s-f*r,t}function j0(t,e){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=e[0],t[13]=e[1],t[14]=e[2],t[15]=1,t}function $0(t,e){return t[0]=e[0],t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=e[1],t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=e[2],t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function J0(t,e,n){let r=n[0],s=n[1],o=n[2],i=Math.sqrt(r*r+s*s+o*o),a,f,c;return i<1e-6?null:(i=1/i,r*=i,s*=i,o*=i,f=Math.sin(e),a=Math.cos(e),c=1-a,t[0]=r*r*c+a,t[1]=s*r*c+o*f,t[2]=o*r*c-s*f,t[3]=0,t[4]=r*s*c-o*f,t[5]=s*s*c+a,t[6]=o*s*c+r*f,t[7]=0,t[8]=r*o*c+s*f,t[9]=s*o*c-r*f,t[10]=o*o*c+a,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t)}function th(t,e){let n=Math.sin(e),r=Math.cos(e);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=r,t[6]=n,t[7]=0,t[8]=0,t[9]=-n,t[10]=r,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function eh(t,e){let n=Math.sin(e),r=Math.cos(e);return t[0]=r,t[1]=0,t[2]=-n,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=n,t[9]=0,t[10]=r,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function nh(t,e){let n=Math.sin(e),r=Math.cos(e);return t[0]=r,t[1]=n,t[2]=0,t[3]=0,t[4]=-n,t[5]=r,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function Pi(t,e,n){let r=e[0],s=e[1],o=e[2],i=e[3],a=r+r,f=s+s,c=o+o,l=r*a,d=r*f,_=r*c,h=s*f,u=s*c,A=o*c,p=i*a,S=i*f,y=i*c;return t[0]=1-(h+A),t[1]=d+y,t[2]=_-S,t[3]=0,t[4]=d-y,t[5]=1-(l+A),t[6]=u+p,t[7]=0,t[8]=_+S,t[9]=u-p,t[10]=1-(l+h),t[11]=0,t[12]=n[0],t[13]=n[1],t[14]=n[2],t[15]=1,t}function rh(t,e){let n=new W(3),r=-e[0],s=-e[1],o=-e[2],i=e[3],a=e[4],f=e[5],c=e[6],l=e[7],d=r*r+s*s+o*o+i*i;return d>0?(n[0]=(a*i+l*r+f*o-c*s)*2/d,n[1]=(f*i+l*s+c*r-a*o)*2/d,n[2]=(c*i+l*o+a*s-f*r)*2/d):(n[0]=(a*i+l*r+f*o-c*s)*2,n[1]=(f*i+l*s+c*r-a*o)*2,n[2]=(c*i+l*o+a*s-f*r)*2),Pi(t,e,n),t}function sh(t,e){return t[0]=e[12],t[1]=e[13],t[2]=e[14],t}function Fi(t,e){let n=e[0],r=e[1],s=e[2],o=e[4],i=e[5],a=e[6],f=e[8],c=e[9],l=e[10];return t[0]=Math.sqrt(n*n+r*r+s*s),t[1]=Math.sqrt(o*o+i*i+a*a),t[2]=Math.sqrt(f*f+c*c+l*l),t}function oh(t,e){let n=new W(3);Fi(n,e);let r=1/n[0],s=1/n[1],o=1/n[2],i=e[0]*r,a=e[1]*s,f=e[2]*o,c=e[4]*r,l=e[5]*s,d=e[6]*o,_=e[8]*r,h=e[9]*s,u=e[10]*o,A=i+l+u,p=0;return A>0?(p=Math.sqrt(A+1)*2,t[3]=.25*p,t[0]=(d-h)/p,t[1]=(_-f)/p,t[2]=(a-c)/p):i>l&&i>u?(p=Math.sqrt(1+i-l-u)*2,t[3]=(d-h)/p,t[0]=.25*p,t[1]=(a+c)/p,t[2]=(_+f)/p):l>u?(p=Math.sqrt(1+l-i-u)*2,t[3]=(_-f)/p,t[0]=(a+c)/p,t[1]=.25*p,t[2]=(d+h)/p):(p=Math.sqrt(1+u-i-l)*2,t[3]=(a-c)/p,t[0]=(_+f)/p,t[1]=(d+h)/p,t[2]=.25*p),t}function ih(t,e,n,r){e[0]=r[12],e[1]=r[13],e[2]=r[14];let s=r[0],o=r[1],i=r[2],a=r[4],f=r[5],c=r[6],l=r[8],d=r[9],_=r[10];n[0]=Math.sqrt(s*s+o*o+i*i),n[1]=Math.sqrt(a*a+f*f+c*c),n[2]=Math.sqrt(l*l+d*d+_*_);let h=1/n[0],u=1/n[1],A=1/n[2],p=s*h,S=o*u,y=i*A,B=a*h,T=f*u,R=c*A,D=l*h,I=d*u,L=_*A,x=p+T+L,m=0;return x>0?(m=Math.sqrt(x+1)*2,t[3]=.25*m,t[0]=(R-I)/m,t[1]=(D-y)/m,t[2]=(S-B)/m):p>T&&p>L?(m=Math.sqrt(1+p-T-L)*2,t[3]=(R-I)/m,t[0]=.25*m,t[1]=(S+B)/m,t[2]=(D+y)/m):T>L?(m=Math.sqrt(1+T-p-L)*2,t[3]=(D-y)/m,t[0]=(S+B)/m,t[1]=.25*m,t[2]=(R+I)/m):(m=Math.sqrt(1+L-p-T)*2,t[3]=(S-B)/m,t[0]=(D+y)/m,t[1]=(R+I)/m,t[2]=.25*m),t}function ah(t,e,n,r){let s=e[0],o=e[1],i=e[2],a=e[3],f=s+s,c=o+o,l=i+i,d=s*f,_=s*c,h=s*l,u=o*c,A=o*l,p=i*l,S=a*f,y=a*c,B=a*l,T=r[0],R=r[1],D=r[2];return t[0]=(1-(u+p))*T,t[1]=(_+B)*T,t[2]=(h-y)*T,t[3]=0,t[4]=(_-B)*R,t[5]=(1-(d+p))*R,t[6]=(A+S)*R,t[7]=0,t[8]=(h+y)*D,t[9]=(A-S)*D,t[10]=(1-(d+u))*D,t[11]=0,t[12]=n[0],t[13]=n[1],t[14]=n[2],t[15]=1,t}function ch(t,e,n,r,s){let o=e[0],i=e[1],a=e[2],f=e[3],c=o+o,l=i+i,d=a+a,_=o*c,h=o*l,u=o*d,A=i*l,p=i*d,S=a*d,y=f*c,B=f*l,T=f*d,R=r[0],D=r[1],I=r[2],L=s[0],x=s[1],m=s[2],g=(1-(A+S))*R,E=(h+T)*R,U=(u-B)*R,F=(h-T)*D,G=(1-(_+S))*D,N=(p+y)*D,j=(u+B)*I,rt=(p-y)*I,V=(1-(_+A))*I;return t[0]=g,t[1]=E,t[2]=U,t[3]=0,t[4]=F,t[5]=G,t[6]=N,t[7]=0,t[8]=j,t[9]=rt,t[10]=V,t[11]=0,t[12]=n[0]+L-(g*L+F*x+j*m),t[13]=n[1]+x-(E*L+G*x+rt*m),t[14]=n[2]+m-(U*L+N*x+V*m),t[15]=1,t}function Fs(t,e){let n=e[0],r=e[1],s=e[2],o=e[3],i=n+n,a=r+r,f=s+s,c=n*i,l=r*i,d=r*a,_=s*i,h=s*a,u=s*f,A=o*i,p=o*a,S=o*f;return t[0]=1-d-u,t[1]=l+S,t[2]=_-p,t[3]=0,t[4]=l-S,t[5]=1-c-u,t[6]=h+A,t[7]=0,t[8]=_+p,t[9]=h-A,t[10]=1-c-d,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function Us(t,e,n,r,s,o,i){let a=1/(n-e),f=1/(s-r),c=1/(o-i);return t[0]=o*2*a,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=o*2*f,t[6]=0,t[7]=0,t[8]=(n+e)*a,t[9]=(s+r)*f,t[10]=(i+o)*c,t[11]=-1,t[12]=0,t[13]=0,t[14]=i*o*2*c,t[15]=0,t}function Ui(t,e,n,r,s){let o=1/Math.tan(e/2);if(t[0]=o/n,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=o,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=-1,t[12]=0,t[13]=0,t[15]=0,s!=null&&s!==1/0){let i=1/(r-s);t[10]=(s+r)*i,t[14]=2*s*r*i}else t[10]=-1,t[14]=-2*r;return t}var Gs=Ui;function fh(t,e,n,r,s){let o=1/Math.tan(e/2);if(t[0]=o/n,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=o,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=-1,t[12]=0,t[13]=0,t[15]=0,s!=null&&s!==1/0){let i=1/(r-s);t[10]=s*i,t[14]=s*r*i}else t[10]=-1,t[14]=-r;return t}function lh(t,e,n,r){let s=Math.tan(e.upDegrees*Math.PI/180),o=Math.tan(e.downDegrees*Math.PI/180),i=Math.tan(e.leftDegrees*Math.PI/180),a=Math.tan(e.rightDegrees*Math.PI/180),f=2/(i+a),c=2/(s+o);return t[0]=f,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=c,t[6]=0,t[7]=0,t[8]=-((i-a)*f*.5),t[9]=(s-o)*c*.5,t[10]=r/(n-r),t[11]=-1,t[12]=0,t[13]=0,t[14]=r*n/(n-r),t[15]=0,t}function Gi(t,e,n,r,s,o,i){let a=1/(e-n),f=1/(r-s),c=1/(o-i);return t[0]=-2*a,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*f,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*c,t[11]=0,t[12]=(e+n)*a,t[13]=(s+r)*f,t[14]=(i+o)*c,t[15]=1,t}var ks=Gi;function hh(t,e,n,r,s,o,i){let a=1/(e-n),f=1/(r-s),c=1/(o-i);return t[0]=-2*a,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*f,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=c,t[11]=0,t[12]=(e+n)*a,t[13]=(s+r)*f,t[14]=o*c,t[15]=1,t}function zs(t,e,n,r){let s,o,i,a,f,c,l,d,_,h,u=e[0],A=e[1],p=e[2],S=r[0],y=r[1],B=r[2],T=n[0],R=n[1],D=n[2];return Math.abs(u-T)<1e-6&&Math.abs(A-R)<1e-6&&Math.abs(p-D)<1e-6?Ni(t):(d=u-T,_=A-R,h=p-D,s=1/Math.sqrt(d*d+_*_+h*h),d*=s,_*=s,h*=s,o=y*h-B*_,i=B*d-S*h,a=S*_-y*d,s=Math.sqrt(o*o+i*i+a*a),s?(s=1/s,o*=s,i*=s,a*=s):(o=0,i=0,a=0),f=_*a-h*i,c=h*o-d*a,l=d*i-_*o,s=Math.sqrt(f*f+c*c+l*l),s?(s=1/s,f*=s,c*=s,l*=s):(f=0,c=0,l=0),t[0]=o,t[1]=f,t[2]=d,t[3]=0,t[4]=i,t[5]=c,t[6]=_,t[7]=0,t[8]=a,t[9]=l,t[10]=h,t[11]=0,t[12]=-(o*u+i*A+a*p),t[13]=-(f*u+c*A+l*p),t[14]=-(d*u+_*A+h*p),t[15]=1,t)}function _h(t,e,n,r){let s=e[0],o=e[1],i=e[2],a=r[0],f=r[1],c=r[2],l=s-n[0],d=o-n[1],_=i-n[2],h=l*l+d*d+_*_;h>0&&(h=1/Math.sqrt(h),l*=h,d*=h,_*=h);let u=f*_-c*d,A=c*l-a*_,p=a*d-f*l;return h=u*u+A*A+p*p,h>0&&(h=1/Math.sqrt(h),u*=h,A*=h,p*=h),t[0]=u,t[1]=A,t[2]=p,t[3]=0,t[4]=d*p-_*A,t[5]=_*u-l*p,t[6]=l*A-d*u,t[7]=0,t[8]=l,t[9]=d,t[10]=_,t[11]=0,t[12]=s,t[13]=o,t[14]=i,t[15]=1,t}function dh(t){return`mat4(${t[0]}, ${t[1]}, ${t[2]}, ${t[3]}, ${t[4]}, ${t[5]}, ${t[6]}, ${t[7]}, ${t[8]}, ${t[9]}, ${t[10]}, ${t[11]}, ${t[12]}, ${t[13]}, ${t[14]}, ${t[15]})`}function uh(t){return Math.sqrt(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]+t[3]*t[3]+t[4]*t[4]+t[5]*t[5]+t[6]*t[6]+t[7]*t[7]+t[8]*t[8]+t[9]*t[9]+t[10]*t[10]+t[11]*t[11]+t[12]*t[12]+t[13]*t[13]+t[14]*t[14]+t[15]*t[15])}function ph(t,e,n){return t[0]=e[0]+n[0],t[1]=e[1]+n[1],t[2]=e[2]+n[2],t[3]=e[3]+n[3],t[4]=e[4]+n[4],t[5]=e[5]+n[5],t[6]=e[6]+n[6],t[7]=e[7]+n[7],t[8]=e[8]+n[8],t[9]=e[9]+n[9],t[10]=e[10]+n[10],t[11]=e[11]+n[11],t[12]=e[12]+n[12],t[13]=e[13]+n[13],t[14]=e[14]+n[14],t[15]=e[15]+n[15],t}function ki(t,e,n){return t[0]=e[0]-n[0],t[1]=e[1]-n[1],t[2]=e[2]-n[2],t[3]=e[3]-n[3],t[4]=e[4]-n[4],t[5]=e[5]-n[5],t[6]=e[6]-n[6],t[7]=e[7]-n[7],t[8]=e[8]-n[8],t[9]=e[9]-n[9],t[10]=e[10]-n[10],t[11]=e[11]-n[11],t[12]=e[12]-n[12],t[13]=e[13]-n[13],t[14]=e[14]-n[14],t[15]=e[15]-n[15],t}function mh(t,e,n){return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t[3]=e[3]*n,t[4]=e[4]*n,t[5]=e[5]*n,t[6]=e[6]*n,t[7]=e[7]*n,t[8]=e[8]*n,t[9]=e[9]*n,t[10]=e[10]*n,t[11]=e[11]*n,t[12]=e[12]*n,t[13]=e[13]*n,t[14]=e[14]*n,t[15]=e[15]*n,t}function Ah(t,e,n,r){return t[0]=e[0]+n[0]*r,t[1]=e[1]+n[1]*r,t[2]=e[2]+n[2]*r,t[3]=e[3]+n[3]*r,t[4]=e[4]+n[4]*r,t[5]=e[5]+n[5]*r,t[6]=e[6]+n[6]*r,t[7]=e[7]+n[7]*r,t[8]=e[8]+n[8]*r,t[9]=e[9]+n[9]*r,t[10]=e[10]+n[10]*r,t[11]=e[11]+n[11]*r,t[12]=e[12]+n[12]*r,t[13]=e[13]+n[13]*r,t[14]=e[14]+n[14]*r,t[15]=e[15]+n[15]*r,t}function xh(t,e){return t[0]===e[0]&&t[1]===e[1]&&t[2]===e[2]&&t[3]===e[3]&&t[4]===e[4]&&t[5]===e[5]&&t[6]===e[6]&&t[7]===e[7]&&t[8]===e[8]&&t[9]===e[9]&&t[10]===e[10]&&t[11]===e[11]&&t[12]===e[12]&&t[13]===e[13]&&t[14]===e[14]&&t[15]===e[15]}function gh(t,e){let n=t[0],r=t[1],s=t[2],o=t[3],i=t[4],a=t[5],f=t[6],c=t[7],l=t[8],d=t[9],_=t[10],h=t[11],u=t[12],A=t[13],p=t[14],S=t[15],y=e[0],B=e[1],T=e[2],R=e[3],D=e[4],I=e[5],L=e[6],x=e[7],m=e[8],g=e[9],E=e[10],U=e[11],F=e[12],G=e[13],N=e[14],j=e[15];return Math.abs(n-y)<=1e-6*Math.max(1,Math.abs(n),Math.abs(y))&&Math.abs(r-B)<=1e-6*Math.max(1,Math.abs(r),Math.abs(B))&&Math.abs(s-T)<=1e-6*Math.max(1,Math.abs(s),Math.abs(T))&&Math.abs(o-R)<=1e-6*Math.max(1,Math.abs(o),Math.abs(R))&&Math.abs(i-D)<=1e-6*Math.max(1,Math.abs(i),Math.abs(D))&&Math.abs(a-I)<=1e-6*Math.max(1,Math.abs(a),Math.abs(I))&&Math.abs(f-L)<=1e-6*Math.max(1,Math.abs(f),Math.abs(L))&&Math.abs(c-x)<=1e-6*Math.max(1,Math.abs(c),Math.abs(x))&&Math.abs(l-m)<=1e-6*Math.max(1,Math.abs(l),Math.abs(m))&&Math.abs(d-g)<=1e-6*Math.max(1,Math.abs(d),Math.abs(g))&&Math.abs(_-E)<=1e-6*Math.max(1,Math.abs(_),Math.abs(E))&&Math.abs(h-U)<=1e-6*Math.max(1,Math.abs(h),Math.abs(U))&&Math.abs(u-F)<=1e-6*Math.max(1,Math.abs(u),Math.abs(F))&&Math.abs(A-G)<=1e-6*Math.max(1,Math.abs(A),Math.abs(G))&&Math.abs(p-N)<=1e-6*Math.max(1,Math.abs(p),Math.abs(N))&&Math.abs(S-j)<=1e-6*Math.max(1,Math.abs(S),Math.abs(j))}var Eh=dn,Sh=ki;function Rh(){let t=new W(4);return W!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0,t[3]=0),t}function zi(t,e,n){return t[0]=e[0]+n[0],t[1]=e[1]+n[1],t[2]=e[2]+n[2],t[3]=e[3]+n[3],t}function Ki(t,e,n){return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t[3]=e[3]*n,t}function Hi(t){let e=t[0],n=t[1],r=t[2],s=t[3];return Math.sqrt(e*e+n*n+r*r+s*s)}function Vi(t){let e=t[0],n=t[1],r=t[2],s=t[3];return e*e+n*n+r*r+s*s}function Xi(t,e){let n=e[0],r=e[1],s=e[2],o=e[3],i=n*n+r*r+s*s+o*o;return i>0&&(i=1/Math.sqrt(i)),t[0]=n*i,t[1]=r*i,t[2]=s*i,t[3]=o*i,t}function Wi(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]+t[3]*e[3]}function qi(t,e,n,r){let s=e[0],o=e[1],i=e[2],a=e[3];return t[0]=s+r*(n[0]-s),t[1]=o+r*(n[1]-o),t[2]=i+r*(n[2]-i),t[3]=a+r*(n[3]-a),t}function Zi(t,e,n){let r=e[0],s=e[1],o=e[2],i=e[3];return t[0]=n[0]*r+n[4]*s+n[8]*o+n[12]*i,t[1]=n[1]*r+n[5]*s+n[9]*o+n[13]*i,t[2]=n[2]*r+n[6]*s+n[10]*o+n[14]*i,t[3]=n[3]*r+n[7]*s+n[11]*o+n[15]*i,t}function Qi(t,e,n){let r=e[0],s=e[1],o=e[2],i=n[0],a=n[1],f=n[2],c=n[3],l=c*r+a*o-f*s,d=c*s+f*r-i*o,_=c*o+i*s-a*r,h=-i*r-a*s-f*o;return t[0]=l*c+h*-i+d*-f-_*-a,t[1]=d*c+h*-a+_*-i-l*-f,t[2]=_*c+h*-f+l*-a-d*-i,t[3]=e[3],t}var jA=function(){let t=Rh();return function(e,n,r,s,o,i){let a,f;for(n||(n=4),r||(r=0),s?f=Math.min(s*n+r,e.length):f=e.length,a=r;a<f;a+=n)t[0]=e[a],t[1]=e[a+1],t[2]=e[a+2],t[3]=e[a+3],o(t,t,i),e[a]=t[0],e[a+1]=t[1],e[a+2]=t[2],e[a+3]=t[3];return e}}();var Vs;(function(t){t[t.COL0ROW0=0]="COL0ROW0",t[t.COL0ROW1=1]="COL0ROW1",t[t.COL0ROW2=2]="COL0ROW2",t[t.COL0ROW3=3]="COL0ROW3",t[t.COL1ROW0=4]="COL1ROW0",t[t.COL1ROW1=5]="COL1ROW1",t[t.COL1ROW2=6]="COL1ROW2",t[t.COL1ROW3=7]="COL1ROW3",t[t.COL2ROW0=8]="COL2ROW0",t[t.COL2ROW1=9]="COL2ROW1",t[t.COL2ROW2=10]="COL2ROW2",t[t.COL2ROW3=11]="COL2ROW3",t[t.COL3ROW0=12]="COL3ROW0",t[t.COL3ROW1=13]="COL3ROW1",t[t.COL3ROW2=14]="COL3ROW2",t[t.COL3ROW3=15]="COL3ROW3"})(Vs||(Vs={}));var Mh=45*Math.PI/180,yh=1,Ks=.1,Hs=500,wh=Object.freeze([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),dt=class extends ke{static get IDENTITY(){return bh()}static get ZERO(){return Oh()}get ELEMENTS(){return 16}get RANK(){return 4}get INDICES(){return Vs}constructor(e){super(-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0),arguments.length===1&&Array.isArray(e)?this.copy(e):this.identity()}copy(e){return this[0]=e[0],this[1]=e[1],this[2]=e[2],this[3]=e[3],this[4]=e[4],this[5]=e[5],this[6]=e[6],this[7]=e[7],this[8]=e[8],this[9]=e[9],this[10]=e[10],this[11]=e[11],this[12]=e[12],this[13]=e[13],this[14]=e[14],this[15]=e[15],this.check()}set(e,n,r,s,o,i,a,f,c,l,d,_,h,u,A,p){return this[0]=e,this[1]=n,this[2]=r,this[3]=s,this[4]=o,this[5]=i,this[6]=a,this[7]=f,this[8]=c,this[9]=l,this[10]=d,this[11]=_,this[12]=h,this[13]=u,this[14]=A,this[15]=p,this.check()}setRowMajor(e,n,r,s,o,i,a,f,c,l,d,_,h,u,A,p){return this[0]=e,this[1]=o,this[2]=c,this[3]=h,this[4]=n,this[5]=i,this[6]=l,this[7]=u,this[8]=r,this[9]=a,this[10]=d,this[11]=A,this[12]=s,this[13]=f,this[14]=_,this[15]=p,this.check()}toRowMajor(e){return e[0]=this[0],e[1]=this[4],e[2]=this[8],e[3]=this[12],e[4]=this[1],e[5]=this[5],e[6]=this[9],e[7]=this[13],e[8]=this[2],e[9]=this[6],e[10]=this[10],e[11]=this[14],e[12]=this[3],e[13]=this[7],e[14]=this[11],e[15]=this[15],e}identity(){return this.copy(wh)}fromObject(e){return this.check()}fromQuaternion(e){return Fs(this,e),this.check()}frustum(e){let{left:n,right:r,bottom:s,top:o,near:i=Ks,far:a=Hs}=e;return a===1/0?Ch(this,n,r,s,o,i):Us(this,n,r,s,o,i,a),this.check()}lookAt(e){let{eye:n,center:r=[0,0,0],up:s=[0,1,0]}=e;return zs(this,n,r,s),this.check()}ortho(e){let{left:n,right:r,bottom:s,top:o,near:i=Ks,far:a=Hs}=e;return ks(this,n,r,s,o,i,a),this.check()}orthographic(e){let{fovy:n=Mh,aspect:r=yh,focalDistance:s=1,near:o=Ks,far:i=Hs}=e;Yi(n);let a=n/2,f=s*Math.tan(a),c=f*r;return this.ortho({left:-c,right:c,bottom:-f,top:f,near:o,far:i})}perspective(e){let{fovy:n=45*Math.PI/180,aspect:r=1,near:s=.1,far:o=500}=e;return Yi(n),Gs(this,n,r,s,o),this.check()}determinant(){return Bs(this)}getScale(e=[-0,-0,-0]){return e[0]=Math.sqrt(this[0]*this[0]+this[1]*this[1]+this[2]*this[2]),e[1]=Math.sqrt(this[4]*this[4]+this[5]*this[5]+this[6]*this[6]),e[2]=Math.sqrt(this[8]*this[8]+this[9]*this[9]+this[10]*this[10]),e}getTranslation(e=[-0,-0,-0]){return e[0]=this[12],e[1]=this[13],e[2]=this[14],e}getRotation(e,n){e=e||[-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0],n=n||[-0,-0,-0];let r=this.getScale(n),s=1/r[0],o=1/r[1],i=1/r[2];return e[0]=this[0]*s,e[1]=this[1]*o,e[2]=this[2]*i,e[3]=0,e[4]=this[4]*s,e[5]=this[5]*o,e[6]=this[6]*i,e[7]=0,e[8]=this[8]*s,e[9]=this[9]*o,e[10]=this[10]*i,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}getRotationMatrix3(e,n){e=e||[-0,-0,-0,-0,-0,-0,-0,-0,-0],n=n||[-0,-0,-0];let r=this.getScale(n),s=1/r[0],o=1/r[1],i=1/r[2];return e[0]=this[0]*s,e[1]=this[1]*o,e[2]=this[2]*i,e[3]=this[4]*s,e[4]=this[5]*o,e[5]=this[6]*i,e[6]=this[8]*s,e[7]=this[9]*o,e[8]=this[10]*i,e}transpose(){return bs(this,this),this.check()}invert(){return Cs(this,this),this.check()}multiplyLeft(e){return dn(this,e,this),this.check()}multiplyRight(e){return dn(this,this,e),this.check()}rotateX(e){return Ls(this,this,e),this.check()}rotateY(e){return Ns(this,this,e),this.check()}rotateZ(e){return Ps(this,this,e),this.check()}rotateXYZ(e){return this.rotateX(e[0]).rotateY(e[1]).rotateZ(e[2])}rotateAxis(e,n){return vs(this,this,e,n),this.check()}scale(e){return Is(this,this,Array.isArray(e)?e:[e,e,e]),this.check()}translate(e){return Ds(this,this,e),this.check()}transform(e,n){return e.length===4?(n=Zi(n||[-0,-0,-0,-0],e,this),ne(n,4),n):this.transformAsPoint(e,n)}transformAsPoint(e,n){let{length:r}=e,s;switch(r){case 2:s=Ai(n||[-0,-0],e,this);break;case 3:s=ue(n||[-0,-0,-0],e,this);break;default:throw new Error("Illegal vector")}return ne(s,e.length),s}transformAsVector(e,n){let r;switch(e.length){case 2:r=xi(n||[-0,-0],e,this);break;case 3:r=fr(n||[-0,-0,-0],e,this);break;default:throw new Error("Illegal vector")}return ne(r,e.length),r}transformPoint(e,n){return this.transformAsPoint(e,n)}transformVector(e,n){return this.transformAsPoint(e,n)}transformDirection(e,n){return this.transformAsVector(e,n)}makeRotationX(e){return this.identity().rotateX(e)}makeTranslation(e,n,r){return this.identity().translate([e,n,r])}},Ar,xr;function Oh(){return Ar||(Ar=new dt([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]),Object.freeze(Ar)),Ar}function bh(){return xr||(xr=new dt,Object.freeze(xr)),xr}function Yi(t){if(t>Math.PI*2)throw Error("expected radians")}function Ch(t,e,n,r,s,o){let i=2*o/(n-e),a=2*o/(s-r),f=(n+e)/(n-e),c=(s+r)/(s-r),l=-1,d=-1,_=-2*o;return t[0]=i,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=a,t[6]=0,t[7]=0,t[8]=f,t[9]=c,t[10]=l,t[11]=d,t[12]=0,t[13]=0,t[14]=_,t[15]=0,t}function ji(){let t=new W(4);return W!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0),t[3]=1,t}function $i(t){return t[0]=0,t[1]=0,t[2]=0,t[3]=1,t}function Xs(t,e,n){n=n*.5;let r=Math.sin(n);return t[0]=r*e[0],t[1]=r*e[1],t[2]=r*e[2],t[3]=Math.cos(n),t}function Ws(t,e,n){let r=e[0],s=e[1],o=e[2],i=e[3],a=n[0],f=n[1],c=n[2],l=n[3];return t[0]=r*l+i*a+s*c-o*f,t[1]=s*l+i*f+o*a-r*c,t[2]=o*l+i*c+r*f-s*a,t[3]=i*l-r*a-s*f-o*c,t}function Ji(t,e,n){n*=.5;let r=e[0],s=e[1],o=e[2],i=e[3],a=Math.sin(n),f=Math.cos(n);return t[0]=r*f+i*a,t[1]=s*f+o*a,t[2]=o*f-s*a,t[3]=i*f-r*a,t}function ta(t,e,n){n*=.5;let r=e[0],s=e[1],o=e[2],i=e[3],a=Math.sin(n),f=Math.cos(n);return t[0]=r*f-o*a,t[1]=s*f+i*a,t[2]=o*f+r*a,t[3]=i*f-s*a,t}function ea(t,e,n){n*=.5;let r=e[0],s=e[1],o=e[2],i=e[3],a=Math.sin(n),f=Math.cos(n);return t[0]=r*f+s*a,t[1]=s*f-r*a,t[2]=o*f+i*a,t[3]=i*f-o*a,t}function na(t,e){let n=e[0],r=e[1],s=e[2];return t[0]=n,t[1]=r,t[2]=s,t[3]=Math.sqrt(Math.abs(1-n*n-r*r-s*s)),t}function pn(t,e,n,r){let s=e[0],o=e[1],i=e[2],a=e[3],f=n[0],c=n[1],l=n[2],d=n[3],_,h,u,A,p;return _=s*f+o*c+i*l+a*d,_<0&&(_=-_,f=-f,c=-c,l=-l,d=-d),1-_>1e-6?(h=Math.acos(_),p=Math.sin(h),u=Math.sin((1-r)*h)/p,A=Math.sin(r*h)/p):(u=1-r,A=r),t[0]=u*s+A*f,t[1]=u*o+A*c,t[2]=u*i+A*l,t[3]=u*a+A*d,t}function ra(t,e){let n=e[0],r=e[1],s=e[2],o=e[3],i=n*n+r*r+s*s+o*o,a=i?1/i:0;return t[0]=-n*a,t[1]=-r*a,t[2]=-s*a,t[3]=o*a,t}function sa(t,e){return t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t[3]=e[3],t}function qs(t,e){let n=e[0]+e[4]+e[8],r;if(n>0)r=Math.sqrt(n+1),t[3]=.5*r,r=.5/r,t[0]=(e[5]-e[7])*r,t[1]=(e[6]-e[2])*r,t[2]=(e[1]-e[3])*r;else{let s=0;e[4]>e[0]&&(s=1),e[8]>e[s*3+s]&&(s=2);let o=(s+1)%3,i=(s+2)%3;r=Math.sqrt(e[s*3+s]-e[o*3+o]-e[i*3+i]+1),t[s]=.5*r,r=.5/r,t[3]=(e[o*3+i]-e[i*3+o])*r,t[o]=(e[o*3+s]+e[s*3+o])*r,t[i]=(e[i*3+s]+e[s*3+i])*r}return t}var oa=zi;var ia=Ki,aa=Wi,ca=qi,fa=Hi;var la=Vi;var ha=Xi;var _a=function(){let t=hr(),e=_r(1,0,0),n=_r(0,1,0);return function(r,s,o){let i=ln(s,o);return i<-.999999?(de(t,e,s),Ts(t)<1e-6&&de(t,n,s),xs(t,t),Xs(r,t,Math.PI),r):i>.999999?(r[0]=0,r[1]=0,r[2]=0,r[3]=1,r):(de(t,s,o),r[0]=t[0],r[1]=t[1],r[2]=t[2],r[3]=1+i,ha(r,r))}}(),hx=function(){let t=ji(),e=ji();return function(n,r,s,o,i,a){return pn(t,r,i,a),pn(e,s,o,a),pn(n,t,e,2*a*(1-a)),n}}(),_x=function(){let t=bi();return function(e,n,r,s){return t[0]=r[0],t[3]=r[1],t[6]=r[2],t[1]=s[0],t[4]=s[1],t[7]=s[2],t[2]=-n[0],t[5]=-n[1],t[8]=-n[2],ha(e,qs(e,t))}}();var Bh=[0,0,0,1],ze=class extends ee{constructor(e=0,n=0,r=0,s=1){super(-0,-0,-0,-0),Array.isArray(e)&&arguments.length===1?this.copy(e):this.set(e,n,r,s)}copy(e){return this[0]=e[0],this[1]=e[1],this[2]=e[2],this[3]=e[3],this.check()}set(e,n,r,s){return this[0]=e,this[1]=n,this[2]=r,this[3]=s,this.check()}fromObject(e){return this[0]=e.x,this[1]=e.y,this[2]=e.z,this[3]=e.w,this.check()}fromMatrix3(e){return qs(this,e),this.check()}fromAxisRotation(e,n){return Xs(this,e,n),this.check()}identity(){return $i(this),this.check()}setAxisAngle(e,n){return this.fromAxisRotation(e,n)}get ELEMENTS(){return 4}get x(){return this[0]}set x(e){this[0]=z(e)}get y(){return this[1]}set y(e){this[1]=z(e)}get z(){return this[2]}set z(e){this[2]=z(e)}get w(){return this[3]}set w(e){this[3]=z(e)}len(){return fa(this)}lengthSquared(){return la(this)}dot(e){return aa(this,e)}rotationTo(e,n){return _a(this,e,n),this.check()}add(e){return oa(this,this,e),this.check()}calculateW(){return na(this,this),this.check()}conjugate(){return sa(this,this),this.check()}invert(){return ra(this,this),this.check()}lerp(e,n,r){return r===void 0?this.lerp(this,e,n):(ca(this,e,n,r),this.check())}multiplyRight(e){return Ws(this,this,e),this.check()}multiplyLeft(e){return Ws(this,e,this),this.check()}normalize(){let e=this.len(),n=e>0?1/e:0;return this[0]=this[0]*n,this[1]=this[1]*n,this[2]=this[2]*n,this[3]=this[3]*n,e===0&&(this[3]=1),this.check()}rotateX(e){return Ji(this,this,e),this.check()}rotateY(e){return ta(this,this,e),this.check()}rotateZ(e){return ea(this,this,e),this.check()}scale(e){return ia(this,this,e),this.check()}slerp(e,n,r){let s,o,i;switch(arguments.length){case 1:({start:s=Bh,target:o,ratio:i}=e);break;case 2:s=this,o=e,i=n;break;default:s=e,o=n,i=r}return pn(this,s,o,i),this.check()}transformVector4(e,n=new Ge){return Qi(n,e,this),ne(n,4)}lengthSq(){return this.lengthSquared()}setFromAxisAngle(e,n){return this.setAxisAngle(e,n)}premultiply(e){return this.multiplyLeft(e)}multiply(e){return this.multiplyRight(e)}};var Vt={};or(Vt,{EPSILON1:()=>Dh,EPSILON10:()=>kh,EPSILON11:()=>zh,EPSILON12:()=>Kh,EPSILON13:()=>Hh,EPSILON14:()=>Vh,EPSILON15:()=>Xh,EPSILON16:()=>Wh,EPSILON17:()=>qh,EPSILON18:()=>Zh,EPSILON19:()=>Qh,EPSILON2:()=>Ih,EPSILON20:()=>Yh,EPSILON3:()=>vh,EPSILON4:()=>Lh,EPSILON5:()=>Nh,EPSILON6:()=>Ph,EPSILON7:()=>Fh,EPSILON8:()=>Uh,EPSILON9:()=>Gh,PI_OVER_FOUR:()=>$h,PI_OVER_SIX:()=>Jh,PI_OVER_TWO:()=>jh,TWO_PI:()=>t1});var Dh=.1,Ih=.01,vh=.001,Lh=1e-4,Nh=1e-5,Ph=1e-6,Fh=1e-7,Uh=1e-8,Gh=1e-9,kh=1e-10,zh=1e-11,Kh=1e-12,Hh=1e-13,Vh=1e-14,Xh=1e-15,Wh=1e-16,qh=1e-17,Zh=1e-18,Qh=1e-19,Yh=1e-20,jh=Math.PI/2,$h=Math.PI/4,Jh=Math.PI/6,t1=Math.PI*2;function Zs(t){switch(t){case"UInt8":return Uint8Array;case"UInt16":return Uint16Array;case"UInt32":return Uint32Array;case"Float32":return Float32Array;case"UInt64":return Float64Array;default:throw new Error(`parse i3s tile content: unknown type of data: ${t}`)}}var da={UInt8:he.UNSIGNED_BYTE,UInt16:he.UNSIGNED_SHORT,Float32:he.FLOAT,UInt32:he.UNSIGNED_INT,UInt64:he.DOUBLE};function Ke(t){switch(t){case"UInt8":return 1;case"UInt16":case"Int16":return 2;case"UInt32":case"Int32":case"Float32":return 4;case"UInt64":case"Int64":case"Float64":return 8;default:throw new Error(`parse i3s tile content: unknown size of data: ${t}`)}}var ua="String",pa="Oid32",ma="Float64",Aa="Int16",Lt;(function(t){t[t.DEFAULT=-1]="DEFAULT",t[t.LNGLAT=1]="LNGLAT",t[t.METER_OFFSETS=2]="METER_OFFSETS",t[t.LNGLAT_OFFSETS=3]="LNGLAT_OFFSETS",t[t.CARTESIAN=0]="CARTESIAN"})(Lt||(Lt={}));var Tc=Ct(Ht(),1);var yn=Ct(Ht(),1);var Xt=6356752314245179e-9,e1={radii:[6378137,6378137,Xt],radiiSquared:[6378137*6378137,6378137*6378137,Xt*Xt],oneOverRadii:[1/6378137,1/6378137,1/Xt],oneOverRadiiSquared:[1/(6378137*6378137),1/(6378137*6378137),1/(Xt*Xt)],maximumRadius:Math.max(6378137,6378137,Xt),centerToleranceSquared:.1};function gr(t){return t}var Wx=new v;function n1(t,e=[],n=gr){return"longitude"in t?(e[0]=n(t.longitude),e[1]=n(t.latitude),e[2]=t.height):"x"in t?(e[0]=n(t.x),e[1]=n(t.y),e[2]=t.z):(e[0]=n(t[0]),e[1]=n(t[1]),e[2]=t[2]),e}function xa(t,e=[]){return n1(t,e,X._cartographicRadians?gr:ms)}function r1(t,e,n=gr){return"longitude"in e?(e.longitude=n(t[0]),e.latitude=n(t[1]),e.height=t[2]):"x"in e?(e.x=n(t[0]),e.y=n(t[1]),e.z=t[2]):(e[0]=n(t[0]),e[1]=n(t[1]),e[2]=t[2]),e}function ga(t,e){return r1(t,e,X._cartographicRadians?gr:As)}var Ea=1e-14,s1=new v,Sa={up:{south:"east",north:"west",west:"south",east:"north"},down:{south:"west",north:"east",west:"north",east:"south"},south:{up:"west",down:"east",west:"down",east:"up"},north:{up:"east",down:"west",west:"up",east:"down"},west:{up:"north",down:"south",north:"down",south:"up"},east:{up:"south",down:"north",north:"up",south:"down"}},Qs={north:[-1,0,0],east:[0,1,0],up:[0,0,1],south:[1,0,0],west:[0,-1,0],down:[0,0,-1]},mn={east:new v,north:new v,up:new v,west:new v,south:new v,down:new v},o1=new v,i1=new v,a1=new v;function Ys(t,e,n,r,s,o){let i=Sa[e]&&Sa[e][n];tt(i&&(!r||r===i));let a,f,c,l=s1.copy(s);if(_t(l.x,0,Ea)&&_t(l.y,0,Ea)){let _=Math.sign(l.z);a=o1.fromArray(Qs[e]),e!=="east"&&e!=="west"&&a.scale(_),f=i1.fromArray(Qs[n]),n!=="east"&&n!=="west"&&f.scale(_),c=a1.fromArray(Qs[r]),r!=="east"&&r!=="west"&&c.scale(_)}else{let{up:_,east:h,north:u}=mn;h.set(-l.y,l.x,0).normalize(),t.geodeticSurfaceNormal(l,_),u.copy(_).cross(h);let{down:A,west:p,south:S}=mn;A.copy(_).scale(-1),p.copy(h).scale(-1),S.copy(u).scale(-1),a=mn[e],f=mn[n],c=mn[r]}return o[0]=a.x,o[1]=a.y,o[2]=a.z,o[3]=0,o[4]=f.x,o[5]=f.y,o[6]=f.z,o[7]=0,o[8]=c.x,o[9]=c.y,o[10]=c.z,o[11]=0,o[12]=l.x,o[13]=l.y,o[14]=l.z,o[15]=1,o}var He=new v,c1=new v,f1=new v;function Ra(t,e,n=[]){let{oneOverRadii:r,oneOverRadiiSquared:s,centerToleranceSquared:o}=e;He.from(t);let i=He.x,a=He.y,f=He.z,c=r.x,l=r.y,d=r.z,_=i*i*c*c,h=a*a*l*l,u=f*f*d*d,A=_+h+u,p=Math.sqrt(1/A);if(!Number.isFinite(p))return;let S=c1;if(S.copy(t).scale(p),A<o)return S.to(n);let y=s.x,B=s.y,T=s.z,R=f1;R.set(S.x*y*2,S.y*B*2,S.z*T*2);let D=(1-p)*He.len()/(.5*R.len()),I=0,L,x,m,g;do{D-=I,L=1/(1+D*y),x=1/(1+D*B),m=1/(1+D*T);let E=L*L,U=x*x,F=m*m,G=E*L,N=U*x,j=F*m;g=_*E+h*U+u*F-1;let V=-2*(_*G*y+h*N*B+u*j*T);I=g/V}while(Math.abs(g)>Vt.EPSILON12);return He.scale([L,x,m]).to(n)}var Er=new v,Ta=new v,_1=new v,Mt=new v,d1=new v,Sr=new v,xt=class{constructor(e=0,n=0,r=0){this.centerToleranceSquared=Vt.EPSILON1,tt(e>=0),tt(n>=0),tt(r>=0),this.radii=new v(e,n,r),this.radiiSquared=new v(e*e,n*n,r*r),this.radiiToTheFourth=new v(e*e*e*e,n*n*n*n,r*r*r*r),this.oneOverRadii=new v(e===0?0:1/e,n===0?0:1/n,r===0?0:1/r),this.oneOverRadiiSquared=new v(e===0?0:1/(e*e),n===0?0:1/(n*n),r===0?0:1/(r*r)),this.minimumRadius=Math.min(e,n,r),this.maximumRadius=Math.max(e,n,r),this.radiiSquared.z!==0&&(this.squaredXOverSquaredZ=this.radiiSquared.x/this.radiiSquared.z),Object.freeze(this)}equals(e){return this===e||Boolean(e&&this.radii.equals(e.radii))}toString(){return this.radii.toString()}cartographicToCartesian(e,n=[0,0,0]){let r=Ta,s=_1,[,,o]=e;this.geodeticSurfaceNormalCartographic(e,r),s.copy(this.radiiSquared).scale(r);let i=Math.sqrt(r.dot(s));return s.scale(1/i),r.scale(o),s.add(r),s.to(n)}cartesianToCartographic(e,n=[0,0,0]){Sr.from(e);let r=this.scaleToGeodeticSurface(Sr,Mt);if(!r)return;let s=this.geodeticSurfaceNormal(r,Ta),o=d1;o.copy(Sr).subtract(r);let i=Math.atan2(s.y,s.x),a=Math.asin(s.z),f=Math.sign(pe.dot(o,Sr))*pe.length(o);return ga([i,a,f],n)}eastNorthUpToFixedFrame(e,n=new dt){return Ys(this,"east","north","up",e,n)}localFrameToFixedFrame(e,n,r,s,o=new dt){return Ys(this,e,n,r,s,o)}geocentricSurfaceNormal(e,n=[0,0,0]){return Er.from(e).normalize().to(n)}geodeticSurfaceNormalCartographic(e,n=[0,0,0]){let r=xa(e),s=r[0],o=r[1],i=Math.cos(o);return Er.set(i*Math.cos(s),i*Math.sin(s),Math.sin(o)).normalize(),Er.to(n)}geodeticSurfaceNormal(e,n=[0,0,0]){return Er.from(e).scale(this.oneOverRadiiSquared).normalize().to(n)}scaleToGeodeticSurface(e,n){return Ra(e,this,n)}scaleToGeocentricSurface(e,n=[0,0,0]){Mt.from(e);let r=Mt.x,s=Mt.y,o=Mt.z,i=this.oneOverRadiiSquared,a=1/Math.sqrt(r*r*i.x+s*s*i.y+o*o*i.z);return Mt.multiplyScalar(a).to(n)}transformPositionToScaledSpace(e,n=[0,0,0]){return Mt.from(e).scale(this.oneOverRadii).to(n)}transformPositionFromScaledSpace(e,n=[0,0,0]){return Mt.from(e).scale(this.radii).to(n)}getSurfaceNormalIntersectionWithZAxis(e,n=0,r=[0,0,0]){tt(_t(this.radii.x,this.radii.y,Vt.EPSILON15)),tt(this.radii.z>0),Mt.from(e);let s=Mt.z*(1-this.squaredXOverSquaredZ);if(!(Math.abs(s)>=this.radii.z-n))return Mt.set(0,0,s).to(r)}};xt.WGS84=new xt(6378137,6378137,Xt);var Ma="4.3.2";var u1=globalThis.loaders?.parseImageNode,js=typeof Image<"u",$s=typeof ImageBitmap<"u",p1=Boolean(u1),Js=At?!0:p1;function ya(t){switch(t){case"auto":return $s||js||Js;case"imagebitmap":return $s;case"image":return js;case"data":return Js;default:throw new Error(`@loaders.gl/images: image ${t} not supported in this environment`)}}function wa(){if($s)return"imagebitmap";if(js)return"image";if(Js)return"data";throw new Error("Install '@loaders.gl/polyfills' to parse images under Node.js")}function m1(t){let e=A1(t);if(!e)throw new Error("Not an image");return e}function Oa(t){switch(m1(t)){case"data":return t;case"image":case"imagebitmap":let e=document.createElement("canvas"),n=e.getContext("2d");if(!n)throw new Error("getImageData");return e.width=t.width,e.height=t.height,n.drawImage(t,0,0),n.getImageData(0,0,t.width,t.height);default:throw new Error("getImageData")}}function A1(t){return typeof ImageBitmap<"u"&&t instanceof ImageBitmap?"imagebitmap":typeof Image<"u"&&t instanceof Image?"image":t&&typeof t=="object"&&t.data&&t.width&&t.height?"data":null}var x1=/^data:image\/svg\+xml/,g1=/\.svg((\?|#).*)?$/;function Rr(t){return t&&(x1.test(t)||g1.test(t))}function ba(t,e){if(Rr(e)){let r=new TextDecoder().decode(t);try{typeof unescape=="function"&&typeof encodeURIComponent=="function"&&(r=unescape(encodeURIComponent(r)))}catch(o){throw new Error(o.message)}return`data:image/svg+xml;base64,${btoa(r)}`}return to(t,e)}function to(t,e){if(Rr(e))throw new Error("SVG cannot be parsed directly to imagebitmap");return new Blob([new Uint8Array(t)])}async function Tr(t,e,n){let r=ba(t,n),s=self.URL||self.webkitURL,o=typeof r!="string"&&s.createObjectURL(r);try{return await E1(o||r,e)}finally{o&&s.revokeObjectURL(o)}}async function E1(t,e){let n=new Image;return n.src=t,e.image&&e.image.decode&&n.decode?(await n.decode(),n):await new Promise((r,s)=>{try{n.onload=()=>r(n),n.onerror=o=>{let i=o instanceof Error?o.message:"error";s(new Error(i))}}catch(o){s(o)}})}var S1={},Ca=!0;async function Ba(t,e,n){let r;Rr(n)?r=await Tr(t,e,n):r=to(t,n);let s=e&&e.imagebitmap;return await R1(r,s)}async function R1(t,e=null){if((T1(e)||!Ca)&&(e=null),e)try{return await createImageBitmap(t,e)}catch(n){console.warn(n),Ca=!1}return await createImageBitmap(t)}function T1(t){for(let e in t||S1)return!1;return!0}function Da(t){return!O1(t,"ftyp",4)||!(t[8]&96)?null:M1(t)}function M1(t){switch(y1(t,8,12).replace("\0"," ").trim()){case"avif":case"avis":return{extension:"avif",mimeType:"image/avif"};default:return null}}function y1(t,e,n){return String.fromCharCode(...t.slice(e,n))}function w1(t){return[...t].map(e=>e.charCodeAt(0))}function O1(t,e,n=0){let r=w1(e);for(let s=0;s<r.length;++s)if(r[s]!==t[s+n])return!1;return!0}var Nt=!1,An=!0;function Mr(t){let e=xn(t);return C1(e)||I1(e)||B1(e)||D1(e)||b1(e)}function b1(t){let e=new Uint8Array(t instanceof DataView?t.buffer:t),n=Da(e);return n?{mimeType:n.mimeType,width:0,height:0}:null}function C1(t){let e=xn(t);return e.byteLength>=24&&e.getUint32(0,Nt)===2303741511?{mimeType:"image/png",width:e.getUint32(16,Nt),height:e.getUint32(20,Nt)}:null}function B1(t){let e=xn(t);return e.byteLength>=10&&e.getUint32(0,Nt)===1195984440?{mimeType:"image/gif",width:e.getUint16(6,An),height:e.getUint16(8,An)}:null}function D1(t){let e=xn(t);return e.byteLength>=14&&e.getUint16(0,Nt)===16973&&e.getUint32(2,An)===e.byteLength?{mimeType:"image/bmp",width:e.getUint32(18,An),height:e.getUint32(22,An)}:null}function I1(t){let e=xn(t);if(!(e.byteLength>=3&&e.getUint16(0,Nt)===65496&&e.getUint8(2)===255))return null;let{tableMarkers:r,sofMarkers:s}=v1(),o=2;for(;o+9<e.byteLength;){let i=e.getUint16(o,Nt);if(s.has(i))return{mimeType:"image/jpeg",height:e.getUint16(o+5,Nt),width:e.getUint16(o+7,Nt)};if(!r.has(i))return null;o+=2,o+=e.getUint16(o,Nt)}return null}function v1(){let t=new Set([65499,65476,65484,65501,65534]);for(let n=65504;n<65520;++n)t.add(n);return{tableMarkers:t,sofMarkers:new Set([65472,65473,65474,65475,65477,65478,65479,65481,65482,65483,65485,65486,65487,65502])}}function xn(t){if(t instanceof DataView)return t;if(ArrayBuffer.isView(t))return new DataView(t.buffer);if(t instanceof ArrayBuffer)return new DataView(t);throw new Error("toDataView")}async function Ia(t,e){let{mimeType:n}=Mr(t)||{},r=globalThis.loaders?.parseImageNode;return Jt(r),await r(t,n)}async function va(t,e,n){e=e||{};let s=(e.image||{}).type||"auto",{url:o}=n||{},i=L1(s),a;switch(i){case"imagebitmap":a=await Ba(t,e,o);break;case"image":a=await Tr(t,e,o);break;case"data":a=await Ia(t,e);break;default:Jt(!1)}return s==="data"&&(a=Oa(a)),a}function L1(t){switch(t){case"auto":case"data":return wa();default:return ya(t),t}}var N1=["png","jpg","jpeg","gif","webp","bmp","ico","svg","avif"],P1=["image/png","image/jpeg","image/gif","image/webp","image/avif","image/bmp","image/vnd.microsoft.icon","image/svg+xml"],F1={image:{type:"auto",decode:!0}},yr={dataType:null,batchType:null,id:"image",module:"images",name:"Images",version:Ma,mimeTypes:P1,extensions:N1,parse:va,tests:[t=>Boolean(Mr(new DataView(t)))],options:F1};var La="4.3.2";var Na={dataType:null,batchType:null,name:"Draco",id:"draco",module:"draco",version:La,worker:!0,extensions:["drc"],mimeTypes:["application/octet-stream"],binary:!0,tests:["DRACO"],options:{draco:{decoderType:typeof WebAssembly=="object"?"wasm":"js",libraryPath:"libs/",extraAttributes:{},attributeNameEntry:void 0}}};function Pa(t){switch(t.constructor){case Int8Array:return"int8";case Uint8Array:case Uint8ClampedArray:return"uint8";case Int16Array:return"int16";case Uint16Array:return"uint16";case Int32Array:return"int32";case Uint32Array:return"uint32";case Float32Array:return"float32";case Float64Array:return"float64";default:return"null"}}function eo(t){let e=1/0,n=1/0,r=1/0,s=-1/0,o=-1/0,i=-1/0,a=t.POSITION?t.POSITION.value:[],f=a&&a.length;for(let c=0;c<f;c+=3){let l=a[c],d=a[c+1],_=a[c+2];e=l<e?l:e,n=d<n?d:n,r=_<r?_:r,s=l>s?l:s,o=d>o?d:o,i=_>i?_:i}return[[e,n,r],[s,o,i]]}function no(t,e,n){let r=Pa(e.value),s=n||Fa(e);return{name:t,type:{type:"fixed-size-list",listSize:e.size,children:[{name:"value",type:r}]},nullable:!1,metadata:s}}function Fa(t){let e={};return"byteOffset"in t&&(e.byteOffset=t.byteOffset.toString(10)),"byteStride"in t&&(e.byteStride=t.byteStride.toString(10)),"normalized"in t&&(e.normalized=t.normalized.toString()),e}function Ga(t,e,n){let r=ka(e.metadata),s=[],o=U1(e.attributes);for(let i in t){let a=t[i],f=Ua(i,a,o[i]);s.push(f)}if(n){let i=Ua("indices",n);s.push(i)}return{fields:s,metadata:r}}function U1(t){let e={};for(let n in t){let r=t[n];e[r.name||"undefined"]=r}return e}function Ua(t,e,n){let r=n?ka(n.metadata):void 0;return no(t,e,r)}function ka(t){Object.entries(t);let e={};for(let n in t)e[`${n}.string`]=JSON.stringify(t[n]);return e}var za={POSITION:"POSITION",NORMAL:"NORMAL",COLOR:"COLOR_0",TEX_COORD:"TEXCOORD_0"},G1={1:Int8Array,2:Uint8Array,3:Int16Array,4:Uint16Array,5:Int32Array,6:Uint32Array,9:Float32Array},k1=4,gn=class{draco;decoder;metadataQuerier;constructor(e){this.draco=e,this.decoder=new this.draco.Decoder,this.metadataQuerier=new this.draco.MetadataQuerier}destroy(){this.draco.destroy(this.decoder),this.draco.destroy(this.metadataQuerier)}parseSync(e,n={}){let r=new this.draco.DecoderBuffer;r.Init(new Int8Array(e),e.byteLength),this._disableAttributeTransforms(n);let s=this.decoder.GetEncodedGeometryType(r),o=s===this.draco.TRIANGULAR_MESH?new this.draco.Mesh:new this.draco.PointCloud;try{let i;switch(s){case this.draco.TRIANGULAR_MESH:i=this.decoder.DecodeBufferToMesh(r,o);break;case this.draco.POINT_CLOUD:i=this.decoder.DecodeBufferToPointCloud(r,o);break;default:throw new Error("DRACO: Unknown geometry type.")}if(!i.ok()||!o.ptr){let _=`DRACO decompression failed: ${i.error_msg()}`;throw new Error(_)}let a=this._getDracoLoaderData(o,s,n),f=this._getMeshData(o,a,n),c=eo(f.attributes),l=Ga(f.attributes,a,f.indices);return{loader:"draco",loaderData:a,header:{vertexCount:o.num_points(),boundingBox:c},...f,schema:l}}finally{this.draco.destroy(r),o&&this.draco.destroy(o)}}_getDracoLoaderData(e,n,r){let s=this._getTopLevelMetadata(e),o=this._getDracoAttributes(e,r);return{geometry_type:n,num_attributes:e.num_attributes(),num_points:e.num_points(),num_faces:e instanceof this.draco.Mesh?e.num_faces():0,metadata:s,attributes:o}}_getDracoAttributes(e,n){let r={};for(let s=0;s<e.num_attributes();s++){let o=this.decoder.GetAttribute(e,s),i=this._getAttributeMetadata(e,s);r[o.unique_id()]={unique_id:o.unique_id(),attribute_type:o.attribute_type(),data_type:o.data_type(),num_components:o.num_components(),byte_offset:o.byte_offset(),byte_stride:o.byte_stride(),normalized:o.normalized(),attribute_index:s,metadata:i};let a=this._getQuantizationTransform(o,n);a&&(r[o.unique_id()].quantization_transform=a);let f=this._getOctahedronTransform(o,n);f&&(r[o.unique_id()].octahedron_transform=f)}return r}_getMeshData(e,n,r){let s=this._getMeshAttributes(n,e,r);if(!s.POSITION)throw new Error("DRACO: No position attribute found.");if(e instanceof this.draco.Mesh)switch(r.topology){case"triangle-strip":return{topology:"triangle-strip",mode:4,attributes:s,indices:{value:this._getTriangleStripIndices(e),size:1}};case"triangle-list":default:return{topology:"triangle-list",mode:5,attributes:s,indices:{value:this._getTriangleListIndices(e),size:1}}}return{topology:"point-list",mode:0,attributes:s}}_getMeshAttributes(e,n,r){let s={};for(let o of Object.values(e.attributes)){let i=this._deduceAttributeName(o,r);o.name=i;let a=this._getAttributeValues(n,o);if(a){let{value:f,size:c}=a;s[i]={value:f,size:c,byteOffset:o.byte_offset,byteStride:o.byte_stride,normalized:o.normalized}}}return s}_getTriangleListIndices(e){let r=e.num_faces()*3,s=r*k1,o=this.draco._malloc(s);try{return this.decoder.GetTrianglesUInt32Array(e,s,o),new Uint32Array(this.draco.HEAPF32.buffer,o,r).slice()}finally{this.draco._free(o)}}_getTriangleStripIndices(e){let n=new this.draco.DracoInt32Array;try{return this.decoder.GetTriangleStripsFromMesh(e,n),H1(n)}finally{this.draco.destroy(n)}}_getAttributeValues(e,n){let r=G1[n.data_type];if(!r)return console.warn(`DRACO: Unsupported attribute type ${n.data_type}`),null;let s=n.num_components,i=e.num_points()*s,a=i*r.BYTES_PER_ELEMENT,f=z1(this.draco,r),c,l=this.draco._malloc(a);try{let d=this.decoder.GetAttribute(e,n.attribute_index);this.decoder.GetAttributeDataArrayForAllPoints(e,d,f,a,l),c=new r(this.draco.HEAPF32.buffer,l,i).slice()}finally{this.draco._free(l)}return{value:c,size:s}}_deduceAttributeName(e,n){let r=e.unique_id;for(let[i,a]of Object.entries(n.extraAttributes||{}))if(a===r)return i;let s=e.attribute_type;for(let i in za)if(this.draco[i]===s)return za[i];let o=n.attributeNameEntry||"name";return e.metadata[o]?e.metadata[o].string:`CUSTOM_ATTRIBUTE_${r}`}_getTopLevelMetadata(e){let n=this.decoder.GetMetadata(e);return this._getDracoMetadata(n)}_getAttributeMetadata(e,n){let r=this.decoder.GetAttributeMetadata(e,n);return this._getDracoMetadata(r)}_getDracoMetadata(e){if(!e||!e.ptr)return{};let n={},r=this.metadataQuerier.NumEntries(e);for(let s=0;s<r;s++){let o=this.metadataQuerier.GetEntryName(e,s);n[o]=this._getDracoMetadataField(e,o)}return n}_getDracoMetadataField(e,n){let r=new this.draco.DracoInt32Array;try{this.metadataQuerier.GetIntEntryArray(e,n,r);let s=K1(r);return{int:this.metadataQuerier.GetIntEntry(e,n),string:this.metadataQuerier.GetStringEntry(e,n),double:this.metadataQuerier.GetDoubleEntry(e,n),intArray:s}}finally{this.draco.destroy(r)}}_disableAttributeTransforms(e){let{quantizedAttributes:n=[],octahedronAttributes:r=[]}=e,s=[...n,...r];for(let o of s)this.decoder.SkipAttributeTransform(this.draco[o])}_getQuantizationTransform(e,n){let{quantizedAttributes:r=[]}=n,s=e.attribute_type();if(r.map(i=>this.decoder[i]).includes(s)){let i=new this.draco.AttributeQuantizationTransform;try{if(i.InitFromAttribute(e))return{quantization_bits:i.quantization_bits(),range:i.range(),min_values:new Float32Array([1,2,3]).map(a=>i.min_value(a))}}finally{this.draco.destroy(i)}}return null}_getOctahedronTransform(e,n){let{octahedronAttributes:r=[]}=n,s=e.attribute_type();if(r.map(i=>this.decoder[i]).includes(s)){let i=new this.draco.AttributeQuantizationTransform;try{if(i.InitFromAttribute(e))return{quantization_bits:i.quantization_bits()}}finally{this.draco.destroy(i)}}return null}};function z1(t,e){switch(e){case Float32Array:return t.DT_FLOAT32;case Int8Array:return t.DT_INT8;case Int16Array:return t.DT_INT16;case Int32Array:return t.DT_INT32;case Uint8Array:return t.DT_UINT8;case Uint16Array:return t.DT_UINT16;case Uint32Array:return t.DT_UINT32;default:return t.DT_INVALID}}function K1(t){let e=t.size(),n=new Int32Array(e);for(let r=0;r<e;r++)n[r]=t.GetValue(r);return n}function H1(t){let e=t.size(),n=new Int32Array(e);for(let r=0;r<e;r++)n[r]=t.GetValue(r);return n}var V1="1.5.6",X1="1.4.1",ro=`https://www.gstatic.com/draco/versioned/decoders/${V1}`,lt={DECODER:"draco_wasm_wrapper.js",DECODER_WASM:"draco_decoder.wasm",FALLBACK_DECODER:"draco_decoder.js",ENCODER:"draco_encoder.js"},so={[lt.DECODER]:`${ro}/${lt.DECODER}`,[lt.DECODER_WASM]:`${ro}/${lt.DECODER_WASM}`,[lt.FALLBACK_DECODER]:`${ro}/${lt.FALLBACK_DECODER}`,[lt.ENCODER]:`https://raw.githubusercontent.com/google/draco/${X1}/javascript/${lt.ENCODER}`},oo;async function Ka(t){let e=t.modules||{};return e.draco3d?oo||=e.draco3d.createDecoderModule({}).then(n=>({draco:n})):oo||=W1(t),await oo}async function W1(t){let e,n;switch(t.draco&&t.draco.decoderType){case"js":e=await It(so[lt.FALLBACK_DECODER],"draco",t,lt.FALLBACK_DECODER);break;case"wasm":default:[e,n]=await Promise.all([await It(so[lt.DECODER],"draco",t,lt.DECODER),await It(so[lt.DECODER_WASM],"draco",t,lt.DECODER_WASM)])}return e=e||globalThis.DracoDecoderModule,await q1(e,n)}function q1(t,e){let n={};return e&&(n.wasmBinary=e),new Promise(r=>{t({...n,onModuleLoaded:s=>r({draco:s})})})}var Ha={...Na,parse:Z1};async function Z1(t,e){let{draco:n}=await Ka(e),r=new gn(n);try{return r.parseSync(t,e?.draco)}finally{r.destroy()}}var wr="4.3.2";var Or={TRANSCODER:"basis_transcoder.js",TRANSCODER_WASM:"basis_transcoder.wasm",ENCODER:"basis_encoder.js",ENCODER_WASM:"basis_encoder.wasm"},Va;async function ao(t){sn(t.modules);let e=_s("basis");return e||(Va||=Q1(t),await Va)}async function Q1(t){let e=null,n=null;return[e,n]=await Promise.all([await It(Or.TRANSCODER,"textures",t),await It(Or.TRANSCODER_WASM,"textures",t)]),e=e||globalThis.BASIS,await Y1(e,n)}function Y1(t,e){let n={};return e&&(n.wasmBinary=e),new Promise(r=>{t(n).then(s=>{let{BasisFile:o,initializeBasis:i}=s;i(),r({BasisFile:o})})})}var io;async function co(t){let e=t.modules||{};return e.basisEncoder?e.basisEncoder:(io=io||j1(t),await io)}async function j1(t){let e=null,n=null;return[e,n]=await Promise.all([await It(Or.ENCODER,"textures",t),await It(Or.ENCODER_WASM,"textures",t)]),e=e||globalThis.BASIS,await $1(e,n)}function $1(t,e){let n={};return e&&(n.wasmBinary=e),new Promise(r=>{t(n).then(s=>{let{BasisFile:o,KTX2File:i,initializeBasis:a,BasisEncoder:f}=s;a(),r({BasisFile:o,KTX2File:i,BasisEncoder:f})})})}var M={COMPRESSED_RGB_S3TC_DXT1_EXT:33776,COMPRESSED_RGBA_S3TC_DXT1_EXT:33777,COMPRESSED_RGBA_S3TC_DXT3_EXT:33778,COMPRESSED_RGBA_S3TC_DXT5_EXT:33779,COMPRESSED_R11_EAC:37488,COMPRESSED_SIGNED_R11_EAC:37489,COMPRESSED_RG11_EAC:37490,COMPRESSED_SIGNED_RG11_EAC:37491,COMPRESSED_RGB8_ETC2:37492,COMPRESSED_RGBA8_ETC2_EAC:37493,COMPRESSED_SRGB8_ETC2:37494,COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:37495,COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2:37496,COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2:37497,COMPRESSED_RGB_PVRTC_4BPPV1_IMG:35840,COMPRESSED_RGBA_PVRTC_4BPPV1_IMG:35842,COMPRESSED_RGB_PVRTC_2BPPV1_IMG:35841,COMPRESSED_RGBA_PVRTC_2BPPV1_IMG:35843,COMPRESSED_RGB_ETC1_WEBGL:36196,COMPRESSED_RGB_ATC_WEBGL:35986,COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL:35987,COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL:34798,COMPRESSED_RGBA_ASTC_4X4_KHR:37808,COMPRESSED_RGBA_ASTC_5X4_KHR:37809,COMPRESSED_RGBA_ASTC_5X5_KHR:37810,COMPRESSED_RGBA_ASTC_6X5_KHR:37811,COMPRESSED_RGBA_ASTC_6X6_KHR:37812,COMPRESSED_RGBA_ASTC_8X5_KHR:37813,COMPRESSED_RGBA_ASTC_8X6_KHR:37814,COMPRESSED_RGBA_ASTC_8X8_KHR:37815,COMPRESSED_RGBA_ASTC_10X5_KHR:37816,COMPRESSED_RGBA_ASTC_10X6_KHR:37817,COMPRESSED_RGBA_ASTC_10X8_KHR:37818,COMPRESSED_RGBA_ASTC_10X10_KHR:37819,COMPRESSED_RGBA_ASTC_12X10_KHR:37820,COMPRESSED_RGBA_ASTC_12X12_KHR:37821,COMPRESSED_SRGB8_ALPHA8_ASTC_4X4_KHR:37840,COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR:37841,COMPRESSED_SRGB8_ALPHA8_ASTC_5X5_KHR:37842,COMPRESSED_SRGB8_ALPHA8_ASTC_6X5_KHR:37843,COMPRESSED_SRGB8_ALPHA8_ASTC_6X6_KHR:37844,COMPRESSED_SRGB8_ALPHA8_ASTC_8X5_KHR:37845,COMPRESSED_SRGB8_ALPHA8_ASTC_8X6_KHR:37846,COMPRESSED_SRGB8_ALPHA8_ASTC_8X8_KHR:37847,COMPRESSED_SRGB8_ALPHA8_ASTC_10X5_KHR:37848,COMPRESSED_SRGB8_ALPHA8_ASTC_10X6_KHR:37849,COMPRESSED_SRGB8_ALPHA8_ASTC_10X8_KHR:37850,COMPRESSED_SRGB8_ALPHA8_ASTC_10X10_KHR:37851,COMPRESSED_SRGB8_ALPHA8_ASTC_12X10_KHR:37852,COMPRESSED_SRGB8_ALPHA8_ASTC_12X12_KHR:37853,COMPRESSED_RED_RGTC1_EXT:36283,COMPRESSED_SIGNED_RED_RGTC1_EXT:36284,COMPRESSED_RED_GREEN_RGTC2_EXT:36285,COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT:36286,COMPRESSED_SRGB_S3TC_DXT1_EXT:35916,COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT:35917,COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT:35918,COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT:35919};var J1=["","WEBKIT_","MOZ_"],Xa={WEBGL_compressed_texture_s3tc:"dxt",WEBGL_compressed_texture_s3tc_srgb:"dxt-srgb",WEBGL_compressed_texture_etc1:"etc1",WEBGL_compressed_texture_etc:"etc2",WEBGL_compressed_texture_pvrtc:"pvrtc",WEBGL_compressed_texture_atc:"atc",WEBGL_compressed_texture_astc:"astc",EXT_texture_compression_rgtc:"rgtc"},br=null;function En(t){if(!br){t=t||t_()||void 0,br=new Set;for(let e of J1)for(let n in Xa)if(t&&t.getExtension(`${e}${n}`)){let r=Xa[n];br.add(r)}}return br}function t_(){try{return document.createElement("canvas").getContext("webgl")}catch{return null}}var fo=class{constructor(){this.vkFormat=0,this.typeSize=1,this.pixelWidth=0,this.pixelHeight=0,this.pixelDepth=0,this.layerCount=0,this.faceCount=1,this.supercompressionScheme=0,this.levels=[],this.dataFormatDescriptor=[{vendorId:0,descriptorType:0,descriptorBlockSize:0,versionNumber:2,colorModel:0,colorPrimaries:1,transferFunction:2,flags:0,texelBlockDimension:[0,0,0,0],bytesPlane:[0,0,0,0,0,0,0,0],samples:[]}],this.keyValue={},this.globalData=null}},me=class{constructor(e,n,r,s){this._dataView=void 0,this._littleEndian=void 0,this._offset=void 0,this._dataView=new DataView(e.buffer,e.byteOffset+n,r),this._littleEndian=s,this._offset=0}_nextUint8(){let e=this._dataView.getUint8(this._offset);return this._offset+=1,e}_nextUint16(){let e=this._dataView.getUint16(this._offset,this._littleEndian);return this._offset+=2,e}_nextUint32(){let e=this._dataView.getUint32(this._offset,this._littleEndian);return this._offset+=4,e}_nextUint64(){let e=this._dataView.getUint32(this._offset,this._littleEndian),n=this._dataView.getUint32(this._offset+4,this._littleEndian),r=e+2**32*n;return this._offset+=8,r}_nextInt32(){let e=this._dataView.getInt32(this._offset,this._littleEndian);return this._offset+=4,e}_nextUint8Array(e){let n=new Uint8Array(this._dataView.buffer,this._dataView.byteOffset+this._offset,e);return this._offset+=e,n}_skip(e){return this._offset+=e,this}_scan(e,n=0){let r=this._offset,s=0;for(;this._dataView.getUint8(this._offset)!==n&&s<e;)s++,this._offset++;return s<e&&this._offset++,new Uint8Array(this._dataView.buffer,this._dataView.byteOffset+r,s)}};var _g=new Uint8Array([0]),it=[171,75,84,88,32,50,48,187,13,10,26,10];function Wa(t){return new TextDecoder().decode(t)}function qa(t){let e=new Uint8Array(t.buffer,t.byteOffset,it.length);if(e[0]!==it[0]||e[1]!==it[1]||e[2]!==it[2]||e[3]!==it[3]||e[4]!==it[4]||e[5]!==it[5]||e[6]!==it[6]||e[7]!==it[7]||e[8]!==it[8]||e[9]!==it[9]||e[10]!==it[10]||e[11]!==it[11])throw new Error("Missing KTX 2.0 identifier.");let n=new fo,r=17*Uint32Array.BYTES_PER_ELEMENT,s=new me(t,it.length,r,!0);n.vkFormat=s._nextUint32(),n.typeSize=s._nextUint32(),n.pixelWidth=s._nextUint32(),n.pixelHeight=s._nextUint32(),n.pixelDepth=s._nextUint32(),n.layerCount=s._nextUint32(),n.faceCount=s._nextUint32();let o=s._nextUint32();n.supercompressionScheme=s._nextUint32();let i=s._nextUint32(),a=s._nextUint32(),f=s._nextUint32(),c=s._nextUint32(),l=s._nextUint64(),d=s._nextUint64(),_=o*3*8,h=new me(t,it.length+r,_,!0);for(let st=0;st<o;st++)n.levels.push({levelData:new Uint8Array(t.buffer,t.byteOffset+h._nextUint64(),h._nextUint64()),uncompressedByteLength:h._nextUint64()});let u=new me(t,i,a,!0),A={vendorId:u._skip(4)._nextUint16(),descriptorType:u._nextUint16(),versionNumber:u._nextUint16(),descriptorBlockSize:u._nextUint16(),colorModel:u._nextUint8(),colorPrimaries:u._nextUint8(),transferFunction:u._nextUint8(),flags:u._nextUint8(),texelBlockDimension:[u._nextUint8(),u._nextUint8(),u._nextUint8(),u._nextUint8()],bytesPlane:[u._nextUint8(),u._nextUint8(),u._nextUint8(),u._nextUint8(),u._nextUint8(),u._nextUint8(),u._nextUint8(),u._nextUint8()],samples:[]},p=6,S=4,y=(A.descriptorBlockSize/4-p)/S;for(let st=0;st<y;st++){let Ot={bitOffset:u._nextUint16(),bitLength:u._nextUint8(),channelType:u._nextUint8(),samplePosition:[u._nextUint8(),u._nextUint8(),u._nextUint8(),u._nextUint8()],sampleLower:-1/0,sampleUpper:1/0};Ot.channelType&64?(Ot.sampleLower=u._nextInt32(),Ot.sampleUpper=u._nextInt32()):(Ot.sampleLower=u._nextUint32(),Ot.sampleUpper=u._nextUint32()),A.samples[st]=Ot}n.dataFormatDescriptor.length=0,n.dataFormatDescriptor.push(A);let B=new me(t,f,c,!0);for(;B._offset<c;){let st=B._nextUint32(),Ot=B._scan(st),Be=Wa(Ot);if(n.keyValue[Be]=B._nextUint8Array(st-Ot.byteLength-1),Be.match(/^ktx/i)){let w=Wa(n.keyValue[Be]);n.keyValue[Be]=w.substring(0,w.lastIndexOf("\0"))}let O=st%4?4-st%4:0;B._skip(O)}if(d<=0)return n;let T=new me(t,l,d,!0),R=T._nextUint16(),D=T._nextUint16(),I=T._nextUint32(),L=T._nextUint32(),x=T._nextUint32(),m=T._nextUint32(),g=[];for(let st=0;st<o;st++)g.push({imageFlags:T._nextUint32(),rgbSliceByteOffset:T._nextUint32(),rgbSliceByteLength:T._nextUint32(),alphaSliceByteOffset:T._nextUint32(),alphaSliceByteLength:T._nextUint32()});let E=l+T._offset,U=E+I,F=U+L,G=F+x,N=new Uint8Array(t.buffer,t.byteOffset+E,I),j=new Uint8Array(t.buffer,t.byteOffset+U,L),rt=new Uint8Array(t.buffer,t.byteOffset+F,x),V=new Uint8Array(t.buffer,t.byteOffset+G,m);return n.globalData={endpointCount:R,selectorCount:D,imageDescs:g,endpointsData:N,selectorsData:j,tablesData:rt,extendedData:V},n}function Ve(t,e){let n=new Array(e.mipMapLevels),r=e.width,s=e.height,o=0;for(let i=0;i<e.mipMapLevels;++i){let a=n_(e,r,s,t,i),f=e_(t,i,o,a);n[i]={compressed:!0,format:e.internalFormat,data:f,width:r,height:s,levelSize:a},r=Math.max(1,r>>1),s=Math.max(1,s>>1),o+=a}return n}function e_(t,e,n,r){return Array.isArray(t)?t[e].levelData:new Uint8Array(t.buffer,t.byteOffset+n,r)}function n_(t,e,n,r,s){return Array.isArray(r)?t.sizeFunction(r[s]):t.sizeFunction(e,n)}var r_={131:M.COMPRESSED_RGB_S3TC_DXT1_EXT,132:M.COMPRESSED_SRGB_S3TC_DXT1_EXT,133:M.COMPRESSED_RGBA_S3TC_DXT1_EXT,134:M.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT,135:M.COMPRESSED_RGBA_S3TC_DXT3_EXT,136:M.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT,137:M.COMPRESSED_RGBA_S3TC_DXT5_EXT,138:M.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT,139:M.COMPRESSED_RED_RGTC1_EXT,140:M.COMPRESSED_SIGNED_RED_RGTC1_EXT,141:M.COMPRESSED_RED_GREEN_RGTC2_EXT,142:M.COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT,147:M.COMPRESSED_RGB8_ETC2,148:M.COMPRESSED_SRGB8_ETC2,149:M.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2,150:M.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2,151:M.COMPRESSED_RGBA8_ETC2_EAC,152:M.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC,153:M.COMPRESSED_R11_EAC,154:M.COMPRESSED_SIGNED_R11_EAC,155:M.COMPRESSED_RG11_EAC,156:M.COMPRESSED_SIGNED_RG11_EAC,157:M.COMPRESSED_RGBA_ASTC_4x4_KHR,158:M.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR,159:M.COMPRESSED_RGBA_ASTC_5x4_KHR,160:M.COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR,161:M.COMPRESSED_RGBA_ASTC_5x5_KHR,162:M.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR,163:M.COMPRESSED_RGBA_ASTC_6x5_KHR,164:M.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR,165:M.COMPRESSED_RGBA_ASTC_6x6_KHR,166:M.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR,167:M.COMPRESSED_RGBA_ASTC_8x5_KHR,168:M.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR,169:M.COMPRESSED_RGBA_ASTC_8x6_KHR,170:M.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR,171:M.COMPRESSED_RGBA_ASTC_8x8_KHR,172:M.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR,173:M.COMPRESSED_RGBA_ASTC_10x5_KHR,174:M.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR,175:M.COMPRESSED_RGBA_ASTC_10x6_KHR,176:M.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR,177:M.COMPRESSED_RGBA_ASTC_10x8_KHR,178:M.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR,179:M.COMPRESSED_RGBA_ASTC_10x10_KHR,180:M.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR,181:M.COMPRESSED_RGBA_ASTC_12x10_KHR,182:M.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR,183:M.COMPRESSED_RGBA_ASTC_12x12_KHR,184:M.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR,1000054e3:M.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG,1000054001:M.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG,1000066e3:M.COMPRESSED_RGBA_ASTC_4x4_KHR,1000066001:M.COMPRESSED_RGBA_ASTC_5x4_KHR,1000066002:M.COMPRESSED_RGBA_ASTC_5x5_KHR,1000066003:M.COMPRESSED_RGBA_ASTC_6x5_KHR,1000066004:M.COMPRESSED_RGBA_ASTC_6x6_KHR,1000066005:M.COMPRESSED_RGBA_ASTC_8x5_KHR,1000066006:M.COMPRESSED_RGBA_ASTC_8x6_KHR,1000066007:M.COMPRESSED_RGBA_ASTC_8x8_KHR,1000066008:M.COMPRESSED_RGBA_ASTC_10x5_KHR,1000066009:M.COMPRESSED_RGBA_ASTC_10x6_KHR,1000066010:M.COMPRESSED_RGBA_ASTC_10x8_KHR,1000066011:M.COMPRESSED_RGBA_ASTC_10x10_KHR,1000066012:M.COMPRESSED_RGBA_ASTC_12x10_KHR,1000066013:M.COMPRESSED_RGBA_ASTC_12x12_KHR};function Za(t){return r_[t]}var ut=[171,75,84,88,32,50,48,187,13,10,26,10];function Cr(t){let e=new Uint8Array(t);return!(e.byteLength<ut.length||e[0]!==ut[0]||e[1]!==ut[1]||e[2]!==ut[2]||e[3]!==ut[3]||e[4]!==ut[4]||e[5]!==ut[5]||e[6]!==ut[6]||e[7]!==ut[7]||e[8]!==ut[8]||e[9]!==ut[9]||e[10]!==ut[10]||e[11]!==ut[11])}function Qa(t){let e=new Uint8Array(t),n=qa(e),r=Math.max(1,n.levels.length),s=n.pixelWidth,o=n.pixelHeight,i=Za(n.vkFormat);return Ve(n.levels,{mipMapLevels:r,width:s,height:o,sizeFunction:a=>a.uncompressedByteLength,internalFormat:i})}var s_={etc1:{basisFormat:0,compressed:!0,format:M.COMPRESSED_RGB_ETC1_WEBGL},etc2:{basisFormat:1,compressed:!0},bc1:{basisFormat:2,compressed:!0,format:M.COMPRESSED_RGB_S3TC_DXT1_EXT},bc3:{basisFormat:3,compressed:!0,format:M.COMPRESSED_RGBA_S3TC_DXT5_EXT},bc4:{basisFormat:4,compressed:!0},bc5:{basisFormat:5,compressed:!0},"bc7-m6-opaque-only":{basisFormat:6,compressed:!0},"bc7-m5":{basisFormat:7,compressed:!0},"pvrtc1-4-rgb":{basisFormat:8,compressed:!0,format:M.COMPRESSED_RGB_PVRTC_4BPPV1_IMG},"pvrtc1-4-rgba":{basisFormat:9,compressed:!0,format:M.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG},"astc-4x4":{basisFormat:10,compressed:!0,format:M.COMPRESSED_RGBA_ASTC_4X4_KHR},"atc-rgb":{basisFormat:11,compressed:!0},"atc-rgba-interpolated-alpha":{basisFormat:12,compressed:!0},rgba32:{basisFormat:13,compressed:!1},rgb565:{basisFormat:14,compressed:!1},bgr565:{basisFormat:15,compressed:!1},rgba4444:{basisFormat:16,compressed:!1}};async function Br(t,e){if(e.basis.containerFormat==="auto"){if(Cr(t)){let r=await co(e);return Ya(r.KTX2File,t,e)}let{BasisFile:n}=await ao(e);return lo(n,t,e)}switch(e.basis.module){case"encoder":let n=await co(e);switch(e.basis.containerFormat){case"ktx2":return Ya(n.KTX2File,t,e);case"basis":default:return lo(n.BasisFile,t,e)}case"transcoder":default:let{BasisFile:r}=await ao(e);return lo(r,t,e)}}function lo(t,e,n){let r=new t(new Uint8Array(e));try{if(!r.startTranscoding())throw new Error("Failed to start basis transcoding");let s=r.getNumImages(),o=[];for(let i=0;i<s;i++){let a=r.getNumLevels(i),f=[];for(let c=0;c<a;c++)f.push(o_(r,i,c,n));o.push(f)}return o}finally{r.close(),r.delete()}}function o_(t,e,n,r){let s=t.getImageWidth(e,n),o=t.getImageHeight(e,n),i=t.getHasAlpha(),{compressed:a,format:f,basisFormat:c}=ja(r,i),l=t.getImageTranscodedSizeInBytes(e,n,c),d=new Uint8Array(l);if(!t.transcodeImage(d,e,n,c,0,0))throw new Error("failed to start Basis transcoding");return{width:s,height:o,data:d,compressed:a,format:f,hasAlpha:i}}function Ya(t,e,n){let r=new t(new Uint8Array(e));try{if(!r.startTranscoding())throw new Error("failed to start KTX2 transcoding");let s=r.getLevels(),o=[];for(let i=0;i<s;i++)o.push(i_(r,i,n));return[o]}finally{r.close(),r.delete()}}function i_(t,e,n){let{alphaFlag:r,height:s,width:o}=t.getImageLevelInfo(e,0,0),{compressed:i,format:a,basisFormat:f}=ja(n,r),c=t.getImageTranscodedSizeInBytes(e,0,0,f),l=new Uint8Array(c);if(!t.transcodeImage(l,e,0,0,f,0,-1,-1))throw new Error("Failed to transcode KTX2 image");return{width:o,height:s,data:l,compressed:i,levelSize:c,hasAlpha:r,format:a}}function ja(t,e){let n=t&&t.basis&&t.basis.format;return n==="auto"&&(n=Dr()),typeof n=="object"&&(n=e?n.alpha:n.noAlpha),n=n.toLowerCase(),s_[n]}function Dr(){let t=En();return t.has("astc")?"astc-4x4":t.has("dxt")?{alpha:"bc3",noAlpha:"bc1"}:t.has("pvrtc")?{alpha:"pvrtc1-4-rgba",noAlpha:"pvrtc1-4-rgb"}:t.has("etc1")?"etc1":t.has("etc2")?"etc2":"rgb565"}var $a={dataType:null,batchType:null,name:"Basis",id:"basis",module:"textures",version:wr,worker:!0,extensions:["basis","ktx2"],mimeTypes:["application/octet-stream","image/ktx2"],tests:["sB"],binary:!0,options:{basis:{format:"auto",libraryPath:"libs/",containerFormat:"auto",module:"transcoder"}}},Sn={...$a,parse:Br};var pt={MAGIC_NUMBER:542327876,HEADER_LENGTH:31,MAGIC_NUMBER_INDEX:0,HEADER_SIZE_INDEX:1,HEADER_FLAGS_INDEX:2,HEADER_HEIGHT_INDEX:3,HEADER_WIDTH_INDEX:4,MIPMAPCOUNT_INDEX:7,HEADER_PF_FLAGS_INDEX:20,HEADER_PF_FOURCC_INDEX:21,DDSD_MIPMAPCOUNT:131072,DDPF_FOURCC:4},a_={DXT1:M.COMPRESSED_RGB_S3TC_DXT1_EXT,DXT3:M.COMPRESSED_RGBA_S3TC_DXT3_EXT,DXT5:M.COMPRESSED_RGBA_S3TC_DXT5_EXT,"ATC ":M.COMPRESSED_RGB_ATC_WEBGL,ATCA:M.COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL,ATCI:M.COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL},c_=ec,f_=Ir,l_=Ir,h_={DXT1:ec,DXT3:Ir,DXT5:Ir,"ATC ":c_,ATCA:f_,ATCI:l_};function Ja(t){return new Uint32Array(t,0,pt.HEADER_LENGTH)[pt.MAGIC_NUMBER_INDEX]===pt.MAGIC_NUMBER}function tc(t){let e=new Int32Array(t,0,pt.HEADER_LENGTH),n=e[pt.HEADER_PF_FOURCC_INDEX];Jt(Boolean(e[pt.HEADER_PF_FLAGS_INDEX]&pt.DDPF_FOURCC),"DDS: Unsupported format, must contain a FourCC code");let r=__(n),s=a_[r],o=h_[r];Jt(s&&o,`DDS: Unknown pixel format ${n}`);let i=1;e[pt.HEADER_FLAGS_INDEX]&pt.DDSD_MIPMAPCOUNT&&(i=Math.max(1,e[pt.MIPMAPCOUNT_INDEX]));let a=e[pt.HEADER_WIDTH_INDEX],f=e[pt.HEADER_HEIGHT_INDEX],c=e[pt.HEADER_SIZE_INDEX]+4,l=new Uint8Array(t,c);return Ve(l,{mipMapLevels:i,width:a,height:f,sizeFunction:o,internalFormat:s})}function ec(t,e){return(t+3>>2)*(e+3>>2)*8}function Ir(t,e){return(t+3>>2)*(e+3>>2)*16}function __(t){return String.fromCharCode(t&255,t>>8&255,t>>16&255,t>>24&255)}var gt={MAGIC_NUMBER:55727696,MAGIC_NUMBER_EXTRA:1347834371,HEADER_LENGTH:13,HEADER_SIZE:52,MAGIC_NUMBER_INDEX:0,PIXEL_FORMAT_INDEX:2,COLOUR_SPACE_INDEX:4,HEIGHT_INDEX:6,WIDTH_INDEX:7,MIPMAPCOUNT_INDEX:11,METADATA_SIZE_INDEX:12},d_={0:[M.COMPRESSED_RGB_PVRTC_2BPPV1_IMG],1:[M.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG],2:[M.COMPRESSED_RGB_PVRTC_4BPPV1_IMG],3:[M.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG],6:[M.COMPRESSED_RGB_ETC1_WEBGL],7:[M.COMPRESSED_RGB_S3TC_DXT1_EXT],9:[M.COMPRESSED_RGBA_S3TC_DXT3_EXT],11:[M.COMPRESSED_RGBA_S3TC_DXT5_EXT],22:[M.COMPRESSED_RGB8_ETC2],23:[M.COMPRESSED_RGBA8_ETC2_EAC],24:[M.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2],25:[M.COMPRESSED_R11_EAC],26:[M.COMPRESSED_RG11_EAC],27:[M.COMPRESSED_RGBA_ASTC_4X4_KHR,M.COMPRESSED_SRGB8_ALPHA8_ASTC_4X4_KHR],28:[M.COMPRESSED_RGBA_ASTC_5X4_KHR,M.COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR],29:[M.COMPRESSED_RGBA_ASTC_5X5_KHR,M.COMPRESSED_SRGB8_ALPHA8_ASTC_5X5_KHR],30:[M.COMPRESSED_RGBA_ASTC_6X5_KHR,M.COMPRESSED_SRGB8_ALPHA8_ASTC_6X5_KHR],31:[M.COMPRESSED_RGBA_ASTC_6X6_KHR,M.COMPRESSED_SRGB8_ALPHA8_ASTC_6X6_KHR],32:[M.COMPRESSED_RGBA_ASTC_8X5_KHR,M.COMPRESSED_SRGB8_ALPHA8_ASTC_8X5_KHR],33:[M.COMPRESSED_RGBA_ASTC_8X6_KHR,M.COMPRESSED_SRGB8_ALPHA8_ASTC_8X6_KHR],34:[M.COMPRESSED_RGBA_ASTC_8X8_KHR,M.COMPRESSED_SRGB8_ALPHA8_ASTC_8X8_KHR],35:[M.COMPRESSED_RGBA_ASTC_10X5_KHR,M.COMPRESSED_SRGB8_ALPHA8_ASTC_10X5_KHR],36:[M.COMPRESSED_RGBA_ASTC_10X6_KHR,M.COMPRESSED_SRGB8_ALPHA8_ASTC_10X6_KHR],37:[M.COMPRESSED_RGBA_ASTC_10X8_KHR,M.COMPRESSED_SRGB8_ALPHA8_ASTC_10X8_KHR],38:[M.COMPRESSED_RGBA_ASTC_10X10_KHR,M.COMPRESSED_SRGB8_ALPHA8_ASTC_10X10_KHR],39:[M.COMPRESSED_RGBA_ASTC_12X10_KHR,M.COMPRESSED_SRGB8_ALPHA8_ASTC_12X10_KHR],40:[M.COMPRESSED_RGBA_ASTC_12X12_KHR,M.COMPRESSED_SRGB8_ALPHA8_ASTC_12X12_KHR]},u_={0:nc,1:nc,2:rc,3:rc,6:Rn,7:Rn,9:Tn,11:Tn,22:Rn,23:Tn,24:Rn,25:Rn,26:Tn,27:Tn,28:p_,29:m_,30:A_,31:x_,32:g_,33:E_,34:S_,35:R_,36:T_,37:M_,38:y_,39:w_,40:O_};function sc(t){let n=new Uint32Array(t,0,gt.HEADER_LENGTH)[gt.MAGIC_NUMBER_INDEX];return n===gt.MAGIC_NUMBER||n===gt.MAGIC_NUMBER_EXTRA}function oc(t){let e=new Uint32Array(t,0,gt.HEADER_LENGTH),n=e[gt.PIXEL_FORMAT_INDEX],r=e[gt.COLOUR_SPACE_INDEX],s=d_[n]||[],o=s.length>1&&r?s[1]:s[0],i=u_[n],a=e[gt.MIPMAPCOUNT_INDEX],f=e[gt.WIDTH_INDEX],c=e[gt.HEIGHT_INDEX],l=gt.HEADER_SIZE+e[gt.METADATA_SIZE_INDEX],d=new Uint8Array(t,l);return Ve(d,{mipMapLevels:a,width:f,height:c,sizeFunction:i,internalFormat:o})}function nc(t,e){return t=Math.max(t,16),e=Math.max(e,8),t*e/4}function rc(t,e){return t=Math.max(t,8),e=Math.max(e,8),t*e/2}function Rn(t,e){return Math.floor((t+3)/4)*Math.floor((e+3)/4)*8}function Tn(t,e){return Math.floor((t+3)/4)*Math.floor((e+3)/4)*16}function p_(t,e){return Math.floor((t+4)/5)*Math.floor((e+3)/4)*16}function m_(t,e){return Math.floor((t+4)/5)*Math.floor((e+4)/5)*16}function A_(t,e){return Math.floor((t+5)/6)*Math.floor((e+4)/5)*16}function x_(t,e){return Math.floor((t+5)/6)*Math.floor((e+5)/6)*16}function g_(t,e){return Math.floor((t+7)/8)*Math.floor((e+4)/5)*16}function E_(t,e){return Math.floor((t+7)/8)*Math.floor((e+5)/6)*16}function S_(t,e){return Math.floor((t+7)/8)*Math.floor((e+7)/8)*16}function R_(t,e){return Math.floor((t+9)/10)*Math.floor((e+4)/5)*16}function T_(t,e){return Math.floor((t+9)/10)*Math.floor((e+5)/6)*16}function M_(t,e){return Math.floor((t+9)/10)*Math.floor((e+7)/8)*16}function y_(t,e){return Math.floor((t+9)/10)*Math.floor((e+9)/10)*16}function w_(t,e){return Math.floor((t+11)/12)*Math.floor((e+9)/10)*16}function O_(t,e){return Math.floor((t+11)/12)*Math.floor((e+11)/12)*16}function ic(t){if(Cr(t))return Qa(t);if(Ja(t))return tc(t);if(sc(t))return oc(t);throw new Error("Texture container format not recognized")}var ac={dataType:null,batchType:null,name:"Texture Containers",id:"compressed-texture",module:"textures",version:wr,worker:!0,extensions:["ktx","ktx2","dds","pvr"],mimeTypes:["image/ktx2","image/ktx","image/vnd-ms.dds","image/x-dds","application/octet-stream"],binary:!0,options:{"compressed-texture":{libraryPath:"libs/",useBasis:!1}}},vr={...ac,parse:async(t,e)=>e?.["compressed-texture"]?.useBasis?(e.basis={format:{alpha:"BC3",noAlpha:"BC1"},...e.basis,containerFormat:"ktx2",module:"encoder"},(await Br(t,e))[0]):ic(t)};var Mn;(function(t){t.vertexCount="vertexCount",t.featureCount="featureCount"})(Mn||(Mn={}));function Lr(t){let e;try{let n=new URL(t);e=`${n.origin}${n.pathname}`,e.startsWith("null")&&(e=null)}catch{e=null}return e||t}function Pt(t,e=null){return e?`${t}?token=${e}`:t}function cc(t,e){let{attributeData:n=[]}=e,r=[];for(let s=0;s<n.length;s++){let o=n[s].href.replace("./","");r.push(`${t}/${o}`)}return r}function fc(t,e,n){let r=[],{attributeStorageInfo:s=[]}=t;for(let o=0;o<s.length;o++){let i=s[o].key;r.push(`${e}/nodes/${n}/attributes/${i}/0`)}return r}var Nr=new v([0,0,0]);function b_(t){switch(t){case"ktx-etc2":case"dds":return vr;case"ktx2":return Sn;case"jpg":case"png":default:return yr}}var C_="i3s-attribute-type";async function dc(t,e,n,r,s){let o={attributes:{},indices:null,featureIds:[],vertexCount:0,modelMatrix:new dt,coordinateSystem:0,byteLength:0,texture:null};if(e.textureUrl){let i=Pt(e.textureUrl,r?.i3s?.token),a=b_(e.textureFormat),l=await(await(s?.fetch||fetch)(i)).arrayBuffer();if(r?.i3s.decodeTextures){if(a===yr){let d={...e.textureLoaderOptions,image:{type:"data"}};try{let _=await hs(l,[],d,s);o.texture=_}catch{let h=await(0,yn.parse)(l,a,d,s);o.texture=h}}else if(a===vr||a===Sn){let d=await(0,yn.load)(l,a,e.textureLoaderOptions);a===Sn&&(d=d[0]),o.texture={compressed:!0,mipmaps:!1,width:d[0].width,height:d[0].height,data:d}}}else o.texture=l}return o.material=U_(e.materialDefinition,o.texture),o.material&&(o.texture=null),await B_(t,o,e,n,r)}async function B_(t,e,n,r,s){let o=t.byteLength,i,a,f=0,c=0,l;if(n.isDracoGeometry){let d=await(0,yn.parse)(t,Ha,{draco:{attributeNameEntry:C_}});a=d.header.vertexCount,l=d.indices?.value;let{POSITION:_,NORMAL:h,COLOR_0:u,TEXCOORD_0:A,["feature-index"]:p,["uv-region"]:S}=d.attributes;i={position:_,normal:h,color:u,uv0:A,uvRegion:S,id:p},D_(i,d);let y=K_(p);y&&z_(i,y)}else{let{vertexAttributes:d,ordering:_,featureAttributes:h,featureAttributeOrder:u}=r.store.defaultGeometrySchema,A=v_(t,r);f=A.byteOffset,a=A.vertexCount,c=A.featureCount;let{attributes:p,byteOffset:S}=hc(t,f,d,a,_),{attributes:y}=hc(t,S,h,c,u);k_(y),i=I_(p,y)}if(!s?.i3s?.coordinateSystem||s.i3s.coordinateSystem===Lt.METER_OFFSETS){let d=N_(i.position,n);e.modelMatrix=d.invert(),e.coordinateSystem=Lt.METER_OFFSETS}else e.modelMatrix=F_(i.position),e.coordinateSystem=Lt.LNGLAT_OFFSETS;e.attributes={positions:i.position,normals:i.normal,colors:lc(i.color),texCoords:i.uv0,uvRegions:lc(i.uvRegion||i.region)},e.indices=l||null,i.id&&i.id.value&&(e.featureIds=i.id.value);for(let d in e.attributes)e.attributes[d]||delete e.attributes[d];return e.vertexCount=a,e.byteLength=o,e}function D_(t,e){for(let n in e.loaderData.attributes){let r=e.loaderData.attributes[n];switch(r.name){case"POSITION":t.position.metadata=r.metadata;break;case"feature-index":t.id.metadata=r.metadata;break;default:break}}}function I_(t,e){return{...t,...e}}function lc(t){return t&&(t.normalized=!0,t)}function v_(t,e){let n=0,r=0,s=0;for(let{property:o,type:i}of e.store.defaultGeometrySchema.header){let a=Zs(i);switch(o){case Mn.vertexCount.toString():r=new a(t,0,4)[0],n+=Ke(i);break;case Mn.featureCount.toString():s=new a(t,4,4)[0],n+=Ke(i);break;default:break}}return{vertexCount:r,featureCount:s,byteOffset:n}}function hc(t,e,n,r,s){let o={};for(let i of s)if(n[i]){let{valueType:a,valuesPerElement:f}=n[i];if(e+r*f*Ke(a)<=t.byteLength){let c=t.slice(e),l;if(a==="UInt64")l=L_(c,r*f,Ke(a));else{let d=Zs(a);l=new d(c,0,r*f)}switch(o[i]={value:l,type:da[a],size:f},i){case"color":o.color.normalized=!0;break;case"position":case"region":case"normal":default:}e=e+r*f*Ke(a)}else if(i!=="uv0")break}return{attributes:o,byteOffset:e}}function L_(t,e,n){let r=[],s=new DataView(t),o=0;for(let i=0;i<e;i++){let a=s.getUint32(o,!0),f=s.getUint32(o+4,!0),c=a+2**32*f;r.push(c),o+=n}return new Uint32Array(r)}function N_(t,e){let n=e.mbs,r=t.value,s=t.metadata,o=new dt,i=new v(n[0],n[1],n[2]),a=new v;return xt.WGS84.cartographicToCartesian(i,a),xt.WGS84.eastNorthUpToFixedFrame(a,o),t.value=P_(r,s,i),o}function P_(t,e={},n){let r=new Float64Array(t.length),s=e["i3s-scale_x"]&&e["i3s-scale_x"].double||1,o=e["i3s-scale_y"]&&e["i3s-scale_y"].double||1;for(let i=0;i<r.length;i+=3)r[i]=t[i]*s+n.x,r[i+1]=t[i+1]*o+n.y,r[i+2]=t[i+2]+n.z;for(let i=0;i<r.length;i+=3)xt.WGS84.cartographicToCartesian(r.subarray(i,i+3),Nr),r[i]=Nr.x,r[i+1]=Nr.y,r[i+2]=Nr.z;return r}function F_(t){let e=t.metadata,n=e?.["i3s-scale_x"]?.double||1,r=e?.["i3s-scale_y"]?.double||1,s=new dt;return s[0]=n,s[5]=r,s}function U_(t,e){let n;return t?n={...t,pbrMetallicRoughness:t.pbrMetallicRoughness?{...t.pbrMetallicRoughness}:{baseColorFactor:[255,255,255,255]}}:(n={pbrMetallicRoughness:{}},e?n.pbrMetallicRoughness.baseColorTexture={texCoord:0}:n.pbrMetallicRoughness.baseColorFactor=[255,255,255,255]),n.alphaCutoff=n.alphaCutoff||.25,n.alphaMode&&(n.alphaMode=n.alphaMode.toUpperCase()),n.emissiveFactor&&(n.emissiveFactor=_c(n.emissiveFactor)),n.pbrMetallicRoughness&&n.pbrMetallicRoughness.baseColorFactor&&(n.pbrMetallicRoughness.baseColorFactor=_c(n.pbrMetallicRoughness.baseColorFactor)),e&&G_(n,e),n}function _c(t){let e=[...t];for(let n=0;n<t.length;n++)e[n]=t[n]/255;return e}function G_(t,e){let n={source:{image:e}};t.pbrMetallicRoughness&&t.pbrMetallicRoughness.baseColorTexture?t.pbrMetallicRoughness.baseColorTexture={...t.pbrMetallicRoughness.baseColorTexture,texture:n}:t.emissiveTexture?t.emissiveTexture={...t.emissiveTexture,texture:n}:t.pbrMetallicRoughness&&t.pbrMetallicRoughness.metallicRoughnessTexture?t.pbrMetallicRoughness.metallicRoughnessTexture={...t.pbrMetallicRoughness.metallicRoughnessTexture,texture:n}:t.normalTexture?t.normalTexture={...t.normalTexture,texture:n}:t.occlusionTexture&&(t.occlusionTexture={...t.occlusionTexture,texture:n})}function k_(t){let{id:e,faceRange:n}=t;if(!e||!n)return;let r=e.value,s=n.value,o=s[s.length-1]+1,i=new Uint32Array(o*3),a=0,f=0;for(let c=1;c<s.length;c+=2){let l=Number(r[a]),d=s[c],_=s[c-1],h=d-_+1,u=f+h*3;i.fill(l,f,u),a++,f=u}t.id.value=i}function z_(t,e){let n=t.id.value,r=new Float32Array(n.length);for(let s=0;s<n.length;s++)r[s]=e[n[s]];t.id.value=r}function K_(t){return t?.metadata?.["i3s-feature-ids"]?.intArray}var H_="4.3.2",Pr={dataType:null,batchType:null,name:"I3S Content (Indexed Scene Layers)",id:"i3s-content",module:"i3s",worker:!0,version:H_,mimeTypes:["application/octet-stream"],parse:V_,extensions:["bin"],options:{"i3s-content":{}}};async function V_(t,e,n){let{tile:r,_tileOptions:s,tileset:o,_tilesetOptions:i}=e?.i3s||{},a=s||r,f=i||o;return!a||!f?null:await dc(t,a,f,e,n)}var et={OUTSIDE:-1,INTERSECTING:0,INSIDE:1};var _E=new v,dE=new v;var wn=new v,uc=new v,re=class{constructor(e=[0,0,0],n=0){this.radius=-0,this.center=new v,this.fromCenterRadius(e,n)}fromCenterRadius(e,n){return this.center.from(e),this.radius=n,this}fromCornerPoints(e,n){return n=wn.from(n),this.center=new v().from(e).add(n).scale(.5),this.radius=this.center.distance(n),this}equals(e){return this===e||Boolean(e)&&this.center.equals(e.center)&&this.radius===e.radius}clone(){return new re(this.center,this.radius)}union(e){let n=this.center,r=this.radius,s=e.center,o=e.radius,i=wn.copy(s).subtract(n),a=i.magnitude();if(r>=a+o)return this.clone();if(o>=a+r)return e.clone();let f=(r+a+o)*.5;return uc.copy(i).scale((-r+f)/a).add(n),this.center.copy(uc),this.radius=f,this}expand(e){let r=wn.from(e).subtract(this.center).magnitude();return r>this.radius&&(this.radius=r),this}transform(e){this.center.transform(e);let n=un.getScaling(wn,e);return this.radius=Math.max(n[0],Math.max(n[1],n[2]))*this.radius,this}distanceSquaredTo(e){let n=this.distanceTo(e);return n*n}distanceTo(e){let r=wn.from(e).subtract(this.center);return Math.max(0,r.len()-this.radius)}intersectPlane(e){let n=this.center,r=this.radius,o=e.normal.dot(n)+e.distance;return o<-r?et.OUTSIDE:o<r?et.INTERSECTING:et.INSIDE}};var X_=new v,W_=new v,Fr=new v,Ur=new v,Gr=new v,q_=new v,Z_=new v,Wt={COLUMN0ROW0:0,COLUMN0ROW1:1,COLUMN0ROW2:2,COLUMN1ROW0:3,COLUMN1ROW1:4,COLUMN1ROW2:5,COLUMN2ROW0:6,COLUMN2ROW1:7,COLUMN2ROW2:8},se=class{constructor(e=[0,0,0],n=[0,0,0,0,0,0,0,0,0]){this.center=new v().from(e),this.halfAxes=new Y(n)}get halfSize(){let e=this.halfAxes.getColumn(0),n=this.halfAxes.getColumn(1),r=this.halfAxes.getColumn(2);return[new v(e).len(),new v(n).len(),new v(r).len()]}get quaternion(){let e=this.halfAxes.getColumn(0),n=this.halfAxes.getColumn(1),r=this.halfAxes.getColumn(2),s=new v(e).normalize(),o=new v(n).normalize(),i=new v(r).normalize();return new ze().fromMatrix3(new Y([...s,...o,...i]))}fromCenterHalfSizeQuaternion(e,n,r){let s=new ze(r),o=new Y().fromQuaternion(s);return o[0]=o[0]*n[0],o[1]=o[1]*n[0],o[2]=o[2]*n[0],o[3]=o[3]*n[1],o[4]=o[4]*n[1],o[5]=o[5]*n[1],o[6]=o[6]*n[2],o[7]=o[7]*n[2],o[8]=o[8]*n[2],this.center=new v().from(e),this.halfAxes=o,this}clone(){return new se(this.center,this.halfAxes)}equals(e){return this===e||Boolean(e)&&this.center.equals(e.center)&&this.halfAxes.equals(e.halfAxes)}getBoundingSphere(e=new re){let n=this.halfAxes,r=n.getColumn(0,Fr),s=n.getColumn(1,Ur),o=n.getColumn(2,Gr),i=X_.copy(r).add(s).add(o);return e.center.copy(this.center),e.radius=i.magnitude(),e}intersectPlane(e){let n=this.center,r=e.normal,s=this.halfAxes,o=r.x,i=r.y,a=r.z,f=Math.abs(o*s[Wt.COLUMN0ROW0]+i*s[Wt.COLUMN0ROW1]+a*s[Wt.COLUMN0ROW2])+Math.abs(o*s[Wt.COLUMN1ROW0]+i*s[Wt.COLUMN1ROW1]+a*s[Wt.COLUMN1ROW2])+Math.abs(o*s[Wt.COLUMN2ROW0]+i*s[Wt.COLUMN2ROW1]+a*s[Wt.COLUMN2ROW2]),c=r.dot(n)+e.distance;return c<=-f?et.OUTSIDE:c>=f?et.INSIDE:et.INTERSECTING}distanceTo(e){return Math.sqrt(this.distanceSquaredTo(e))}distanceSquaredTo(e){let n=W_.from(e).subtract(this.center),r=this.halfAxes,s=r.getColumn(0,Fr),o=r.getColumn(1,Ur),i=r.getColumn(2,Gr),a=s.magnitude(),f=o.magnitude(),c=i.magnitude();s.normalize(),o.normalize(),i.normalize();let l=0,d;return d=Math.abs(n.dot(s))-a,d>0&&(l+=d*d),d=Math.abs(n.dot(o))-f,d>0&&(l+=d*d),d=Math.abs(n.dot(i))-c,d>0&&(l+=d*d),l}computePlaneDistances(e,n,r=[-0,-0]){let s=Number.POSITIVE_INFINITY,o=Number.NEGATIVE_INFINITY,i=this.center,a=this.halfAxes,f=a.getColumn(0,Fr),c=a.getColumn(1,Ur),l=a.getColumn(2,Gr),d=q_.copy(f).add(c).add(l).add(i),_=Z_.copy(d).subtract(e),h=n.dot(_);return s=Math.min(h,s),o=Math.max(h,o),d.copy(i).add(f).add(c).subtract(l),_.copy(d).subtract(e),h=n.dot(_),s=Math.min(h,s),o=Math.max(h,o),d.copy(i).add(f).subtract(c).add(l),_.copy(d).subtract(e),h=n.dot(_),s=Math.min(h,s),o=Math.max(h,o),d.copy(i).add(f).subtract(c).subtract(l),_.copy(d).subtract(e),h=n.dot(_),s=Math.min(h,s),o=Math.max(h,o),i.copy(d).subtract(f).add(c).add(l),_.copy(d).subtract(e),h=n.dot(_),s=Math.min(h,s),o=Math.max(h,o),i.copy(d).subtract(f).add(c).subtract(l),_.copy(d).subtract(e),h=n.dot(_),s=Math.min(h,s),o=Math.max(h,o),i.copy(d).subtract(f).subtract(c).add(l),_.copy(d).subtract(e),h=n.dot(_),s=Math.min(h,s),o=Math.max(h,o),i.copy(d).subtract(f).subtract(c).subtract(l),_.copy(d).subtract(e),h=n.dot(_),s=Math.min(h,s),o=Math.max(h,o),r[0]=s,r[1]=o,r}transform(e){this.center.transformAsPoint(e);let n=this.halfAxes.getColumn(0,Fr);n.transformAsPoint(e);let r=this.halfAxes.getColumn(1,Ur);r.transformAsPoint(e);let s=this.halfAxes.getColumn(2,Gr);return s.transformAsPoint(e),this.halfAxes=new Y([...n,...r,...s]),this}getTransform(){throw new Error("not implemented")}};var pc=new v,mc=new v,qt=class{constructor(e=[0,0,1],n=0){this.normal=new v,this.distance=-0,this.fromNormalDistance(e,n)}fromNormalDistance(e,n){return tt(Number.isFinite(n)),this.normal.from(e).normalize(),this.distance=n,this}fromPointNormal(e,n){e=pc.from(e),this.normal.from(n).normalize();let r=-this.normal.dot(e);return this.distance=r,this}fromCoefficients(e,n,r,s){return this.normal.set(e,n,r),tt(_t(this.normal.len(),1)),this.distance=s,this}clone(){return new qt(this.normal,this.distance)}equals(e){return _t(this.distance,e.distance)&&_t(this.normal,e.normal)}getPointDistance(e){return this.normal.dot(e)+this.distance}transform(e){let n=mc.copy(this.normal).transformAsVector(e).normalize(),r=this.normal.scale(-this.distance).transform(e);return this.fromPointNormal(r,n)}projectPointOntoPlane(e,n=[0,0,0]){let r=pc.from(e),s=this.getPointDistance(r),o=mc.copy(this.normal).scale(s);return r.subtract(o).to(n)}};var Ac=[new v([1,0,0]),new v([0,1,0]),new v([0,0,1])],xc=new v,Q_=new v,Et=class{constructor(e=[]){this.planes=e}fromBoundingSphere(e){this.planes.length=2*Ac.length;let n=e.center,r=e.radius,s=0;for(let o of Ac){let i=this.planes[s],a=this.planes[s+1];i||(i=this.planes[s]=new qt),a||(a=this.planes[s+1]=new qt);let f=xc.copy(o).scale(-r).add(n);i.fromPointNormal(f,o);let c=xc.copy(o).scale(r).add(n),l=Q_.copy(o).negate();a.fromPointNormal(c,l),s+=2}return this}computeVisibility(e){let n=et.INSIDE;for(let r of this.planes)switch(e.intersectPlane(r)){case et.OUTSIDE:return et.OUTSIDE;case et.INTERSECTING:n=et.INTERSECTING;break;default:}return n}computeVisibilityWithPlaneMask(e,n){if(tt(Number.isFinite(n),"parentPlaneMask is required."),n===Et.MASK_OUTSIDE||n===Et.MASK_INSIDE)return n;let r=Et.MASK_INSIDE,s=this.planes;for(let o=0;o<this.planes.length;++o){let i=o<31?1<<o:0;if(o<31&&!(n&i))continue;let a=s[o],f=e.intersectPlane(a);if(f===et.OUTSIDE)return Et.MASK_OUTSIDE;f===et.INTERSECTING&&(r|=i)}return r}};Et.MASK_OUTSIDE=4294967295;Et.MASK_INSIDE=0;Et.MASK_INDETERMINATE=2147483647;var DE=new v,IE=new v,vE=new v,LE=new v,NE=new v;var zE=new v,KE=new v,HE=new v,VE=new v,XE=new v,WE=new v,qE=new v,ZE=new v,QE=new v,YE=new v,jE=new v,$E=new v;var eS=new Y,nS=new Y,rS=new Y,sS=new Y,oS=new Y;var hS=new v,_S=new v,dS=new v,uS=new v,pS=new v,mS=new Y,AS={diagonal:new Y,unitary:new Y};var Ec=Ct(Ht(),1);var On;(function(t){t[t.ADD=1]="ADD",t[t.REPLACE=2]="REPLACE"})(On||(On={}));var bn;(function(t){t.EMPTY="empty",t.SCENEGRAPH="scenegraph",t.POINTCLOUD="pointcloud",t.MESH="mesh"})(bn||(bn={}));var Cn;(function(t){t.I3S="I3S",t.TILES3D="TILES3D"})(Cn||(Cn={}));var ho;(function(t){t.GEOMETRIC_ERROR="geometricError",t.MAX_SCREEN_THRESHOLD="maxScreenThreshold"})(ho||(ho={}));var gc=Ct(Ht(),1);var J_="4.3.2",kr={dataType:null,batchType:null,name:"I3S Node Page",id:"i3s-node-page",module:"i3s",version:J_,mimeTypes:["application/json"],parse:td,extensions:["json"],options:{i3s:{}}};async function td(t,e){return JSON.parse(new TextDecoder().decode(t))}var Bn=class{tileset;nodePages=[];pendingNodePages=[];nodesPerPage;options;lodSelectionMetricType;textureDefinitionsSelectedFormats=[];nodesInNodePages;url;textureLoaderOptions={};constructor(e,n="",r){this.tileset={...e},this.url=n,this.nodesPerPage=e.nodePages?.nodesPerPage||64,this.lodSelectionMetricType=e.nodePages?.lodSelectionMetricType,this.options=r,this.nodesInNodePages=0,this.initSelectedFormatsForTextureDefinitions(e)}async getNodeById(e){let n=Math.floor(e/this.nodesPerPage);if(!this.nodePages[n]&&!this.pendingNodePages[n]){let s=Pt(`${this.url}/nodepages/${n}`,this.options.i3s?.token);this.pendingNodePages[n]={status:"Pending",promise:(0,gc.load)(s,kr,this.options)},this.nodePages[n]=await this.pendingNodePages[n].promise,this.nodesInNodePages+=this.nodePages[n].nodes.length,this.pendingNodePages[n].status="Done"}this.pendingNodePages[n].status==="Pending"&&(this.nodePages[n]=await this.pendingNodePages[n].promise);let r=e%this.nodesPerPage;return this.nodePages[n].nodes[r]}async formTileFromNodePages(e){let n=await this.getNodeById(e),r=[],s=[];for(let h of n.children||[])s.push(this.getNodeById(h));let o=await Promise.all(s);for(let h of o)r.push({id:h.index.toString(),obb:h.obb});let i,a,f,c="jpg",l=[],d=!1;if(n&&n.mesh){let{url:h,isDracoGeometry:u}=n.mesh.geometry&&this.getContentUrl(n.mesh.geometry)||{isDracoGeometry:!1};i=h,d=u;let{textureData:A,materialDefinition:p}=this.getInformationFromMaterial(n.mesh.material);f=p,c=A.format||c,A.name&&(a=`${this.url}/nodes/${n.mesh.material.resource}/textures/${A.name}`),this.tileset.attributeStorageInfo&&(l=fc(this.tileset,this.url,n.mesh.attribute.resource))}let _=this.getLodSelection(n);return _o({id:e.toString(),lodSelection:_,obb:n.obb,contentUrl:i,textureUrl:a,attributeUrls:l,materialDefinition:f,textureFormat:c,textureLoaderOptions:this.textureLoaderOptions,children:r,isDracoGeometry:d})}getContentUrl(e){let n=null,r=this.tileset.geometryDefinitions[e.definition],s=-1;if(this.options.i3s&&this.options.i3s.useDracoGeometry&&(s=r.geometryBuffers.findIndex(o=>o.compressedAttributes&&o.compressedAttributes.encoding==="draco")),s===-1&&(s=r.geometryBuffers.findIndex(o=>!o.compressedAttributes)),s!==-1){let o=Boolean(r.geometryBuffers[s].compressedAttributes);n={url:`${this.url}/nodes/${e.resource}/geometries/${s}`,isDracoGeometry:o}}return n}getLodSelection(e){let n=[];return this.lodSelectionMetricType==="maxScreenThresholdSQ"&&n.push({metricType:"maxScreenThreshold",maxError:Math.sqrt(e.lodThreshold/(Math.PI*.25))}),n.push({metricType:this.lodSelectionMetricType,maxError:e.lodThreshold}),n}getInformationFromMaterial(e){let n={textureData:{name:null}};if(e){let r=this.tileset.materialDefinitions?.[e.definition];if(r){n.materialDefinition=r;let s=r?.pbrMetallicRoughness?.baseColorTexture?.textureSetDefinitionId;typeof s=="number"&&(n.textureData=this.textureDefinitionsSelectedFormats[s]||n.textureData)}}return n}initSelectedFormatsForTextureDefinitions(e){this.textureDefinitionsSelectedFormats=[];let n=this.getSupportedTextureFormats(),r=e.textureSetDefinitions||[];for(let s of r){let o=s&&s.formats||[],i=null;for(let a of n){let f=o.find(c=>c.format===a);if(f){i=f;break}}i&&i.format==="ktx2"&&(this.textureLoaderOptions.basis={format:Dr(),containerFormat:"ktx2",module:"encoder"}),this.textureDefinitionsSelectedFormats.push(i)}}getSupportedTextureFormats(){let e=[];if(!this.options.i3s||this.options.i3s.useCompressedTextures){let n=En();n.has("etc2")&&e.push("ktx-etc2"),n.has("dxt")&&e.push("dds"),e.push("ktx2")}return e.push("jpg"),e.push("png"),e}};function Sc(t,e){let n=e.url||"",r;t.geometryData&&(r=`${n}/${t.geometryData[0].href}`);let s;t.textureData&&(s=`${n}/${t.textureData[0].href}`);let o;t.attributeData&&(o=cc(n,t));let i=t.children||[];return _o({...t,children:i,url:n,contentUrl:r,textureUrl:s,textureFormat:"jpg",attributeUrls:o,isDracoGeometry:!1})}function _o(t){let e={},n=[0,0,0,1];if(t.mbs)n=t.mbs,e.sphere=[...xt.WGS84.cartographicToCartesian(t.mbs.slice(0,3)),t.mbs[3]];else if(t.obb){e.box=[...xt.WGS84.cartographicToCartesian(t.obb.center),...t.obb.halfSize,...t.obb.quaternion];let f=new se().fromCenterHalfSizeQuaternion(e.box.slice(0,3),t.obb.halfSize,t.obb.quaternion).getBoundingSphere();e.sphere=[...f.center,f.radius],n=[...t.obb.center,f.radius]}let r=t.lodSelection?.[0].metricType,s=t.lodSelection?.[0].maxError,o=bn.MESH,i=On.REPLACE;return{...t,mbs:n,boundingVolume:e,lodMetricType:r,lodMetricValue:s,type:o,refine:i}}async function Rc(t,e,n){let r=Lr(n.url||""),s,o;if(t.nodePages)s=new Bn(t,r,e),o=await s.formTileFromNodePages(0);else{let i=e.i3s,a=Pt(`${r}/nodes/root`,i.token);o=await(0,Ec.load)(a,Dn,{...e,i3s:{...e.i3s,loadContent:!1,isTileHeader:!0,isTileset:!1}})}return{...t,loader:Dn,url:r,basePath:r,type:Cn.I3S,nodePagesTile:s,root:o,lodMetricType:o.lodMetricType,lodMetricValue:o.lodMetricValue}}var ed="4.3.2",nd=/layers\/[0-9]+$/,rd=/\.slpk$/,sd=/nodes\/([0-9-]+|root)$/,od="504b0304",id="PointCloud",Dn={dataType:null,batchType:null,name:"I3S (Indexed Scene Layers)",id:"i3s",module:"i3s",version:ed,mimeTypes:["application/octet-stream"],parse:ad,extensions:["bin"],options:{i3s:{token:null,isTileset:"auto",isTileHeader:"auto",tile:null,tileset:null,_tileOptions:null,_tilesetOptions:null,useDracoGeometry:!0,useCompressedTextures:!0,decodeTextures:!0,coordinateSystem:Lt.METER_OFFSETS}}};async function ad(t,e={},n){let r=n.url;if(e.i3s=e.i3s||{},hd(t)===od)throw new Error("Files with .slpk extention currently are not supported by I3SLoader");let o=Lr(r),i;e.i3s.isTileset==="auto"?i=nd.test(o)||rd.test(o):i=e.i3s.isTileset;let a;return e.isTileHeader==="auto"?a=sd.test(o):a=e.i3s.isTileHeader,i?t=await fd(t,e,n):a?t=await ld(t,n):t=await cd(t,e),t}async function cd(t,e){return await(0,Tc.parse)(t,Pr,e)}async function fd(t,e,n){let r=JSON.parse(new TextDecoder().decode(t));if(r?.layerType===id)throw new Error("Point Cloud layers currently are not supported by I3SLoader");return await Rc(r,e,n)}async function ld(t,e){return t=JSON.parse(new TextDecoder().decode(t)),Sc(t,e)}function hd(t){return t instanceof ArrayBuffer?[...new Uint8Array(t,0,4)].map(e=>e.toString(16).padStart(2,"0")).join(""):null}var In=async(t,e)=>{let n=[await t.getUint8(t.length-1n),await t.getUint8(t.length-2n),await t.getUint8(t.length-3n),void 0],r=-1,s=t.length-4n;do{let o=s;s-=BigInt(1024),s=s>=0n?s:0n;let i=new Uint8Array(await t.slice(s,o));for(let a=i.length-1;a>-1;a--)if(n[3]=n[2],n[2]=n[1],n[1]=n[0],n[0]=i[a],n.every((f,c)=>f===e[c])){r=a;break}}while(r===-1&&s>0n);return s+BigInt(r)};var Mc=new Uint8Array([80,75,5,6]),yc=new Uint8Array([80,75,6,7]),wc=new Uint8Array([80,75,6,6]),_d=8n;var dd=12n,ud=16n;var pd=8n,md=24n;var Ad=40n,xd=48n;var Oc=async t=>{let e=await In(t,Mc),n=BigInt(await t.getUint16(e+_d)),r=BigInt(await t.getUint32(e+dd)),s=BigInt(await t.getUint32(e+ud)),o=e-20n,i=0n,a=await t.slice(o,o+4n);if(te(a,yc)){i=await t.getBigUint64(o+pd);let f=await t.slice(i,i+4n);if(!te(f,wc.buffer))throw new Error("zip64 EoCD not found");n=await t.getBigUint64(i+md),r=await t.getBigUint64(i+Ad),s=await t.getBigUint64(i+xd)}else o=0n;return{cdRecordsNumber:n,cdStartOffset:s,cdByteSize:r,offsets:{zip64EoCDOffset:i,zip64EoCDLocatorOffset:o,zipEoCDOffset:e}}};var iR=[{offset:0,size:4,default:new DataView(Mc.buffer).getUint32(0,!0)},{offset:4,size:2,default:0},{offset:6,size:2,default:0},{offset:8,size:2,name:"recordsNumber"},{offset:10,size:2,name:"recordsNumber"},{offset:12,size:4,name:"cdSize"},{offset:16,size:4,name:"cdOffset"},{offset:20,size:2,default:0}];var aR=[{offset:0,size:4,default:new DataView(yc.buffer).getUint32(0,!0)},{offset:4,size:4,default:0},{offset:8,size:8,name:"eoCDStart"},{offset:16,size:4,default:1}],cR=[{offset:0,size:4,default:new DataView(wc.buffer).getUint32(0,!0)},{offset:4,size:8,default:44},{offset:12,size:2,default:45},{offset:14,size:2,default:45},{offset:16,size:4,default:0},{offset:20,size:4,default:0},{offset:24,size:8,name:"recordsNumber"},{offset:32,size:8,name:"recordsNumber"},{offset:40,size:8,name:"cdSize"},{offset:48,size:8,name:"cdOffset"}];var gd=20,Ed=24,Sd=28,Rd=30,Td=32,Md=42,zr=46n,Ln=new Uint8Array([80,75,1,2]),vn=async(t,e)=>{if(t>=e.length)return null;let n=new DataView(await e.slice(t,t+zr)),r=n.buffer.slice(0,4);if(!te(r,Ln.buffer))return null;let s=BigInt(n.getUint32(gd,!0)),o=BigInt(n.getUint32(Ed,!0)),i=n.getUint16(Rd,!0),a=BigInt(n.getUint16(Td,!0)),f=n.getUint16(Sd,!0),c=await e.slice(t+zr,t+zr+BigInt(f+i)),l=c.slice(0,f),d=new TextDecoder().decode(l),_=t+zr+BigInt(f),h=n.getUint32(Md,!0),u=BigInt(h),A=new DataView(c.slice(f,c.byteLength)),p={uncompressedSize:o,compressedSize:s,localHeaderOffset:u,startDisk:a},S=yd(p,A);return{...p,...S,extraFieldLength:i,fileNameLength:f,fileName:d,extraOffset:_}};async function*Xe(t){let{cdStartOffset:e,cdByteSize:n}=await Oc(t),r=new _e(new DataView(await t.slice(e,e+n))),s=await vn(0n,r);for(;s;)yield s,s=await vn(s.extraOffset+BigInt(s.extraFieldLength),r)}var bc=(...t)=>t[0]+t[1]*16,yd=(t,e)=>{let n=wd(t),r={};if(n.length>0){let s=n.reduce((a,f)=>a+f.length,0),o=new Uint8Array(e.buffer).findIndex((a,f,c)=>bc(c[f],c[f+1])===1&&bc(c[f+2],c[f+3])===s),i=0;for(let a of n){let f=i;r[a.name]=e.getBigUint64(o+4+f,!0),i=f+a.length}}return r},wd=t=>{let e=[];return t.uncompressedSize===BigInt(4294967295)&&e.push({name:"uncompressedSize",length:8}),t.compressedSize===BigInt(4294967295)&&e.push({name:"compressedSize",length:8}),t.localHeaderOffset===BigInt(4294967295)&&e.push({name:"localHeaderOffset",length:8}),t.startDisk===BigInt(4294967295)&&e.push({name:"startDisk",length:4}),e};var _R=[{offset:0,size:4,default:new DataView(Ln.buffer).getUint32(0,!0)},{offset:4,size:2,default:45},{offset:6,size:2,default:45},{offset:8,size:2,default:0},{offset:10,size:2,default:0},{offset:12,size:2,default:0},{offset:14,size:2,default:0},{offset:16,size:4,name:"crc32"},{offset:20,size:4,name:"length"},{offset:24,size:4,name:"length"},{offset:28,size:2,name:"fnlength"},{offset:30,size:2,default:0,name:"extraLength"},{offset:32,size:2,default:0},{offset:34,size:2,default:0},{offset:36,size:2,default:0},{offset:38,size:4,default:0},{offset:42,size:4,name:"offset"}];var Od=8,bd=18,Cd=22,Bd=26,Dd=28,Kr=30n,uo=new Uint8Array([80,75,3,4]),Ae=async(t,e)=>{let n=new DataView(await e.slice(t,t+Kr)),r=n.buffer.slice(0,4);if(!te(r,uo))return null;let s=n.getUint16(Bd,!0),o=n.getUint16(Dd,!0),i=await e.slice(t+Kr,t+Kr+BigInt(s+o)),a=i.slice(0,s),f=new DataView(i.slice(s,i.byteLength)),c=new TextDecoder().decode(a).split("\\").join("/"),l=t+Kr+BigInt(s+o),d=n.getUint16(Od,!0),_=BigInt(n.getUint32(bd,!0)),h=BigInt(n.getUint32(Cd,!0)),u=4;return h===BigInt(4294967295)&&(h=f.getBigUint64(u,!0),u+=8),_===BigInt(4294967295)&&(_=f.getBigUint64(u,!0),u+=8),l===BigInt(4294967295)&&(l=f.getBigUint64(u,!0)),{fileNameLength:s,fileName:c,extraFieldLength:o,fileDataOffset:l,compressedSize:_,compressionMethod:d}};var pR=[{offset:0,size:4,default:new DataView(uo.buffer).getUint32(0,!0)},{offset:4,size:2,default:45},{offset:6,size:2,default:0},{offset:8,size:2,default:0},{offset:10,size:2,default:0},{offset:12,size:2,default:0},{offset:14,size:4,name:"crc32"},{offset:18,size:4,name:"length"},{offset:22,size:4,name:"length"},{offset:26,size:2,name:"fnlength"},{offset:28,size:2,default:0,name:"extraLength"}];var Hr=class{constructor(e={}){this.hashBatches=this.hashBatches.bind(this)}async preload(){}async*hashBatches(e,n="base64"){let r=[];for await(let i of e)r.push(i),yield i;let s=await this.concatenate(r),o=await this.hash(s,n);this.options.crypto?.onEnd?.({hash:o})}async concatenate(e){return await on(e)}};function Cc(t){t=`${t}`;for(let n=0;n<t.length;n++)if(t.charCodeAt(n)>255)return null;let e="";for(let n=0;n<t.length;n+=3){let r=[void 0,void 0,void 0,void 0];r[0]=t.charCodeAt(n)>>2,r[1]=(t.charCodeAt(n)&3)<<4,t.length>n+1&&(r[1]|=t.charCodeAt(n+1)>>4,r[2]=(t.charCodeAt(n+1)&15)<<2),t.length>n+2&&(r[2]|=t.charCodeAt(n+2)>>6,r[3]=t.charCodeAt(n+2)&63);for(let s=0;s<r.length;s++)typeof r[s]>"u"?e+="=":e+=Id(r[s])}return e}function Id(t){if(t<26)return String.fromCharCode(t+"A".charCodeAt(0));if(t<52)return String.fromCharCode(t-26+"a".charCodeAt(0));if(t<62)return String.fromCharCode(t-52+"0".charCodeAt(0));if(t===62)return"+";if(t===63)return"/"}function Bc(t,e){switch(e){case"hex":return t;case"base64":return vd(t);default:throw new Error(e)}}function vd(t){t.length%2!==0&&(t=`0${t}`);let n=(t.match(/\w{2}/g)||[]).map(r=>String.fromCharCode(parseInt(r,16))).join("");return Cc(n)||""}var Ic=typeof atob=="function"?atob:typeof Buffer=="function"?kd:Lc,Ld=Ic("AGFzbQEAAAABDANgAX8AYAAAYAABfwIeAgdpbXBvcnRzA2xvZwAAB2ltcG9ydHMDbWVtAgABAzIxAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAAAAAAAAAAAAgICAgIAAAAAAAaYARt/AUGBxpS6Bgt/AUGJ17b+fgt/AUH+uevFeQt/AUH2qMmBAQt/AUEAC38BQQALfwFBAAt/AUEAC38BQQALfwFBAAt/AUEAC38BQQALfwFBAAt/AUEAC38BQQALfwFBAAt/AUEAC38BQQALfwFBAAt/AUEAC38BQQALfwFBAAt/AUEAC38BQQALfwFBAAt/AUEAC38BQQALB7oCJQhvbmVGdWxsQQAYCG9uZUZ1bGxCABkIb25lRnVsbEMAGghvbmVGdWxsRAAbBWxvb3BzAAEEbG9vcAACBXByaW1lAAMFbG9vcEEABAZsb29wQTEABQZsb29wQTIABgZsb29wQTMABwZsb29wQTQACAVsb29wQgAJBmxvb3BCMQAKBmxvb3BCMgALBmxvb3BCMwAMBmxvb3BCNAANBWxvb3BDAA4GbG9vcEMxAA8GbG9vcEMyABAGbG9vcEMzABEGbG9vcEM0ABIFbG9vcEQAEwZsb29wRDEAFAZsb29wRDIAFQZsb29wRDMAFgZsb29wRDQAFwRnZXRBACgEZ2V0QgApBGdldEMAKgRnZXREACsEZ2V0WAAsBHNldEEALQRzZXRCAC4Ec2V0QwAvBHNldEQAMARzZXRYADEKzA0xWwEBf0EAJAggAEEGdCEBAkADQCMIIAFGDQEjACQEIwEkBSMCJAYjAyQHEAIjBCMAaiQAIwUjAWokASMGIwJqJAIjByMDaiQDIwhBwABqJAgMAAsLIwgjGmokGgsTACMIIxpqJAkQAxAEEAkQDhATC6IBAEEAIwlqKAIAJApBBCMJaigCACQLQQgjCWooAgAkDEEMIwlqKAIAJA1BECMJaigCACQOQRQjCWooAgAkD0EYIwlqKAIAJBBBHCMJaigCACQRQSAjCWooAgAkEkEkIwlqKAIAJBNBKCMJaigCACQUQSwjCWooAgAkFUEwIwlqKAIAJBZBNCMJaigCACQXQTgjCWooAgAkGEE8IwlqKAIAJBkLCgAQBRAGEAcQCAsuAEH4yKq7fSMKahAYQdbunsZ+IwtqEBtB2+GBoQIjDGoQGkHunfeNfCMNahAZCy0AQa+f8Kt/Iw5qEBhBqoyfvAQjD2oQG0GTjMHBeiMQahAaQYGqmmojEWoQGQssAEHYsYLMBiMSahAYQa/vk9p4IxNqEBtBsbd9IxRqEBpBvq/zyngjFWoQGQstAEGiosDcBiMWahAYQZPj4WwjF2oQG0GOh+WzeiMYahAaQaGQ0M0EIxlqEBkLCgAQChALEAwQDQsuAEHiyviwfyMLahAcQcDmgoJ8IxBqEB9B0bT5sgIjFWoQHkGqj9vNfiMKahAdCy0AQd2gvLF9Iw9qEBxB06iQEiMUahAfQYHNh8V9IxlqEB5ByPfPvn4jDmoQHQsuAEHmm4ePAiMTahAcQdaP3Jl8IxhqEB9Bh5vUpn8jDWoQHkHtqeiqBCMSahAdCy0AQYXSj896IxdqEBxB+Me+ZyMMahAfQdmFvLsGIxFqEB5Bipmp6XgjFmoQHQsKABAPEBAQERASCysAQcLyaCMPahAgQYHtx7t4IxJqECNBosL17AYjFWoQIkGM8JRvIxhqECELLgBBxNT7pXojC2oQIEGpn/veBCMOahAjQeCW7bV/IxFqECJB8Pj+9XsjFGoQIQstAEHG/e3EAiMXahAgQfrPhNV+IwpqECNBheG8p30jDWoQIkGFuqAkIxBqECELLgBBuaDTzn0jE2oQIEHls+62fiMWahAjQfj5if0BIxlqECJB5ayxpXwjDGoQIQsKABAUEBUQFhAXCy0AQcTEpKF/IwpqECRBl/+rmQQjEWoQJ0Gnx9DceiMYahAmQbnAzmQjD2oQJQstAEHDs+2qBiMWahAkQZKZs/h4Iw1qECdB/ei/fyMUahAmQdG7kax4IwtqECULLQBBz/yh/QYjEmoQJEHgzbNxIxlqECdBlIaFmHojEGoQJkGho6DwBCMXahAlCy4AQYL9zbp/Iw5qECRBteTr6XsjFWoQJ0G7pd/WAiMMahAmQZGnm9x+IxNqECULKAEBf0F/IwFzIwNxIwEjAnFyIwBqIABqIgFBB3QgAUEZdnIjAWokAAsoAQF/QX8jAnMjAHEjAiMDcXIjAWogAGoiAUEWdCABQQp2ciMCaiQBCygBAX9BfyMDcyMBcSMDIwBxciMCaiAAaiIBQRF0IAFBD3ZyIwNqJAILKAEBf0F/IwBzIwJxIwAjAXFyIwNqIABqIgFBDHQgAUEUdnIjAGokAwsoAQF/IwJBfyMDc3EjASMDcXIjAGogAGoiAUEFdCABQRt2ciMBaiQACygBAX8jA0F/IwBzcSMCIwBxciMBaiAAaiIBQRR0IAFBDHZyIwJqJAELKAEBfyMAQX8jAXNxIwMjAXFyIwJqIABqIgFBDnQgAUESdnIjA2okAgsoAQF/IwFBfyMCc3EjACMCcXIjA2ogAGoiAUEJdCABQRd2ciMAaiQDCyIBAX8jASMCcyMDcyMAaiAAaiIBQQR0IAFBHHZyIwFqJAALIgEBfyMCIwNzIwBzIwFqIABqIgFBF3QgAUEJdnIjAmokAQsiAQF/IwMjAHMjAXMjAmogAGoiAUEQdCABQRB2ciMDaiQCCyIBAX8jACMBcyMCcyMDaiAAaiIBQQt0IAFBFXZyIwBqJAMLJQEBf0F/IwNzIwFyIwJzIwBqIABqIgFBBnQgAUEadnIjAWokAAslAQF/QX8jAHMjAnIjA3MjAWogAGoiAUEVdCABQQt2ciMCaiQBCyUBAX9BfyMBcyMDciMAcyMCaiAAaiIBQQ90IAFBEXZyIwNqJAILJQEBf0F/IwJzIwByIwFzIwNqIABqIgFBCnQgAUEWdnIjAGokAwsEACMACwQAIwELBAAjAgsEACMDCwQAIxoLBgAgACQACwYAIAAkAQsGACAAJAILBgAgACQDCwYAIAAkGgsA6gQEbmFtZQGSAzIAA2xvZwEFbG9vcHMCBGxvb3ADBXByaW1lBAVsb29wQQUGbG9vcEExBgZsb29wQTIHBmxvb3BBMwgGbG9vcEE0CQVsb29wQgoGbG9vcEIxCwZsb29wQjIMBmxvb3BCMw0GbG9vcEI0DgVsb29wQw8GbG9vcEMxEAZsb29wQzIRBmxvb3BDMxIGbG9vcEM0EwVsb29wRBQGbG9vcEQxFQZsb29wRDIWBmxvb3BEMxcGbG9vcEQ0GAhvbmVGdWxsQRkIb25lRnVsbEIaCG9uZUZ1bGxDGwhvbmVGdWxsRBwIdHdvRnVsbEEdCHR3b0Z1bGxCHgh0d29GdWxsQx8IdHdvRnVsbEQgCHRyZUZ1bGxBIQh0cmVGdWxsQiIIdHJlRnVsbEMjCHRyZUZ1bGxEJAhxdWFGdWxsQSUIcXVhRnVsbEImCHF1YUZ1bGxDJwhxdWFGdWxsRCgEZ2V0QSkEZ2V0QioEZ2V0QysEZ2V0RCwEZ2V0WC0Ec2V0QS4Ec2V0Qi8Ec2V0QzAEc2V0RDEEc2V0WALNATIAAQAAAQIAAAEIbnVtbG9vcHMCAAMABAAFAAYABwAIAAkACgALAAwADQAOAA8AEAARABIAEwAUABUAFgAXABgCAAABAW4ZAgAAAQFuGgIAAAEBbhsCAAABAW4cAgAAAQFuHQIAAAEBbh4CAAABAW4fAgAAAQFuIAIAAAEBbiECAAABAW4iAgAAAQFuIwIAAAEBbiQCAAABAW4lAgAAAQFuJgIAAAEBbicCAAABAW4oACkAKgArACwALQEAAC4BAAAvAQAAMAEAADEBAAA="),po=WebAssembly&&Ic!==Lc?Gd(Ld).buffer:!1,Ft=zd(),mo=240*16*16,vc=Math.floor(mo*16*1.066666667),Nd=268435456-65536,Dc="Parameter must be Buffer, ArrayBuffer or Uint8Array",Pd="Parameter exceeds max size of 255.9 Mbytes";po||console.log("WebAssembly not available or WASM module could not be decoded; md5WASM will fall back to JavaScript");function Ao(t){var e,n,r,s,o,i,a,f,c,l;let d=Ud(),_=Fd(),h={},u=new Date().getTime();return h.then=function(y){return a=y,p(),h},h.catch=function(y){return f=y,h},t&&typeof t=="object"?typeof Buffer=="function"&&t.constructor===Buffer?i=t:t.constructor===Uint8Array||t.constructor===ArrayBuffer?i=t.constructor===ArrayBuffer?new Uint8Array(t):t:S(new TypeError(Dc)):S(new TypeError(Dc)),i&&(o=i.length,po&&o>vc?o>Nd?S(new Error(Pd)):(e=new WebAssembly.Memory({initial:o>32e6?o>64e6?o>128e6?4096:2048:1024:512}),n=new Uint32Array(e.buffer),s={mem:e,log:console.log},r={imports:s},WebAssembly.instantiate(po,r).then(A)):p(d(i))),h;function A(y){p(_(i,y.instance.exports,n))}function p(y){var B=Boolean(y)?y:c;Boolean(y)&&(l=new Date().getTime()),typeof a=="function"?Boolean(B)&&(a(B,l-u),a=f=null):Boolean(y)&&(c=y)}function S(y){typeof f=="function"&&f(y)}}function Fd(){var t,e,n,r,s,o,i,a,f,c,l,d,_,h=function(u){var A,p,S,y,B,T,R,D,I,L,x,m,g,E,U,F,G,N,j,rt,V,st,Ot=new Date().getTime(),Be=0,O=1732584193,w=-271733879,b=-1732584194,C=271733878,Z=0,rn=u.length*8,er;for(er=kl(u,_),_[rn>>>5]|=128<<rn%32,_[(rn+64>>>9<<4)+14]=rn,er=(rn+64>>>9<<4)+15,V=_;Z<er;)er>Z+vc?(r(O),o(w),a(b),c(C),e(mo),Z=Z+mo*16,O=n(),w=s(),b=i(),C=f(),Be++):(G=O,N=w,j=b,rt=C,A=V[Z+0]>>>0,p=V[Z+1]>>>0,S=V[Z+2]>>>0,y=V[Z+3]>>>0,B=V[Z+4]>>>0,T=V[Z+5]>>>0,R=V[Z+6]>>>0,D=V[Z+7]>>>0,I=V[Z+8]>>>0,L=V[Z+9]>>>0,x=V[Z+10]>>>0,m=V[Z+11]>>>0,g=V[Z+12]>>>0,E=V[Z+13]>>>0,U=V[Z+14]>>>0,F=V[Z+15]>>>0,O=P(7,25,O+(w&b|~w&C)+A-680876936)+w,C=P(12,20,C+(O&w|~O&b)+p-389564586)+O,b=P(17,15,b+(C&O|~C&w)+S+606105819)+C,w=P(22,10,w+(b&C|~b&O)+y-1044525330)+b,O=P(7,25,O+(w&b|~w&C)+B-176418897)+w,C=P(12,20,C+(O&w|~O&b)+T+1200080426)+O,b=P(17,15,b+(C&O|~C&w)+R-1473231341)+C,w=P(22,10,w+(b&C|~b&O)+D-45705983)+b,O=P(7,25,O+(w&b|~w&C)+I+1770035416)+w,C=P(12,20,C+(O&w|~O&b)+L-1958414417)+O,b=P(17,15,b+(C&O|~C&w)+x-42063)+C,w=P(22,10,w+(b&C|~b&O)+m-1990404162)+b,O=P(7,25,O+(w&b|~w&C)+g+1804603682)+w,C=P(12,20,C+(O&w|~O&b)+E-40341101)+O,b=P(17,15,b+(C&O|~C&w)+U-1502002290)+C,w=P(22,10,w+(b&C|~b&O)+F+1236535329)+b,O=P(5,27,O+(w&C|b&~C)+p-165796510)+w,C=P(9,23,C+(O&b|w&~b)+R-1069501632)+O,b=P(14,18,b+(C&w|O&~w)+m+643717713)+C,w=P(20,12,w+(b&O|C&~O)+A-373897302)+b,O=P(5,27,O+(w&C|b&~C)+T-701558691)+w,C=P(9,23,C+(O&b|w&~b)+x+38016083)+O,b=P(14,18,b+(C&w|O&~w)+F-660478335)+C,w=P(20,12,w+(b&O|C&~O)+B-405537848)+b,O=P(5,27,O+(w&C|b&~C)+L+568446438)+w,C=P(9,23,C+(O&b|w&~b)+U-1019803690)+O,b=P(14,18,b+(C&w|O&~w)+y-187363961)+C,w=P(20,12,w+(b&O|C&~O)+I+1163531501)+b,O=P(5,27,O+(w&C|b&~C)+E-1444681467)+w,C=P(9,23,C+(O&b|w&~b)+S-51403784)+O,b=P(14,18,b+(C&w|O&~w)+D+1735328473)+C,w=P(20,12,w+(b&O|C&~O)+g-1926607734)+b,O=P(4,28,O+(w^b^C)+T-378558)+w,C=P(11,21,C+(O^w^b)+I-2022574463)+O,b=P(16,16,b+(C^O^w)+m+1839030562)+C,w=P(23,9,w+(b^C^O)+U-35309556)+b,O=P(4,28,O+(w^b^C)+p-1530992060)+w,C=P(11,21,C+(O^w^b)+B+1272893353)+O,b=P(16,16,b+(C^O^w)+D-155497632)+C,w=P(23,9,w+(b^C^O)+x-1094730640)+b,O=P(4,28,O+(w^b^C)+E+681279174)+w,C=P(11,21,C+(O^w^b)+A-358537222)+O,b=P(16,16,b+(C^O^w)+y-722521979)+C,w=P(23,9,w+(b^C^O)+R+76029189)+b,O=P(4,28,O+(w^b^C)+L-640364487)+w,C=P(11,21,C+(O^w^b)+g-421815835)+O,b=P(16,16,b+(C^O^w)+F+530742520)+C,w=P(23,9,w+(b^C^O)+S-995338651)+b,O=P(6,26,O+(b^(w|~C))+A-198630844)+w,C=P(10,22,C+(w^(O|~b))+D+1126891415)+O,b=P(15,17,b+(O^(C|~w))+U-1416354905)+C,w=P(21,11,w+(C^(b|~O))+T-57434055)+b,O=P(6,26,O+(b^(w|~C))+g+1700485571)+w,C=P(10,22,C+(w^(O|~b))+y-1894986606)+O,b=P(15,17,b+(O^(C|~w))+x-1051523)+C,w=P(21,11,w+(C^(b|~O))+p-2054922799)+b,O=P(6,26,O+(b^(w|~C))+I+1873313359)+w,C=P(10,22,C+(w^(O|~b))+F-30611744)+O,b=P(15,17,b+(O^(C|~w))+R-1560198380)+C,w=P(21,11,w+(C^(b|~O))+E+1309151649)+b,O=P(6,26,O+(b^(w|~C))+B-145523070)+w,C=P(10,22,C+(w^(O|~b))+m-1120210379)+O,b=P(15,17,b+(O^(C|~w))+S+718787259)+C,w=P(21,11,w+(C^(b|~O))+L-343485551)+b,Z=Z+16,O=O+G>>>0,w=w+N>>>0,b=b+j>>>0,C=C+rt>>>0);return Ft.endian([O,w,b,C]);function P(ot,nr,bt){return bt<<ot|bt>>>nr}function kl(ot,nr){for(var bt=-1,ls=Math.floor((ot.length-1)/4),ft=0,ei,ni,ri,si;ls-8>bt++;)ft=bt<<2,nr[bt]=ot[ft+0]|ot[ft+1]<<8|ot[ft+2]<<16|ot[ft+3]<<24;for(bt--;ls>bt++;)ft=bt<<2,ei=typeof ot[ft+0]>"u"?0:ot[ft+0],ni=typeof ot[ft+1]>"u"?0:ot[ft+1],ri=typeof ot[ft+2]>"u"?0:ot[ft+2],si=typeof ot[ft+3]>"u"?0:ot[ft+3],nr[bt]=ei|ni<<8|ri<<16|si<<24;return ls+1}};return function(u,A,p,S){var y;return e=A.loops,t=A.loop,n=A.getA,s=A.getB,i=A.getC,f=A.getD,l=A.getX,r=A.setA,o=A.setB,a=A.setC,c=A.setD,d=A.setX,_=p,y=Ft.wordsToBytes(h(u)),S&&S.asBytes?y:Ft.bytesconvertNumberToHex(y)}}function Ud(){var t=function(e,n){var r,s,o,i,a,f,c,l,d,_,h,u,A,p,S,y,B,T,R,D,I,L=new Date().getTime(),x=1732584193,m=-271733879,g=-1732584194,E=271733878,U=e.length*8;I=Ft.bytesToWords(e);for(var F=0;F<I.length;F++)I[F]=(I[F]<<8|I[F]>>>24)&16711935|(I[F]<<24|I[F]>>>8)&4278255360;I[U>>>5]|=128<<U%32,I[(U+64>>>9<<4)+14]=U;for(var G=0;G<I.length;G+=16)B=x,T=m,R=g,D=E,r=I[G+0]>>>0,s=I[G+1]>>>0,o=I[G+2]>>>0,i=I[G+3]>>>0,a=I[G+4]>>>0,f=I[G+5]>>>0,c=I[G+6]>>>0,l=I[G+7]>>>0,d=I[G+8]>>>0,_=I[G+9]>>>0,h=I[G+10]>>>0,u=I[G+11]>>>0,A=I[G+12]>>>0,p=I[G+13]>>>0,S=I[G+14]>>>0,y=I[G+15]>>>0,x=N(7,25,x+(m&g|~m&E)+r-680876936)+m,E=N(12,20,E+(x&m|~x&g)+s-389564586)+x,g=N(17,15,g+(E&x|~E&m)+o+606105819)+E,m=N(22,10,m+(g&E|~g&x)+i-1044525330)+g,x=N(7,25,x+(m&g|~m&E)+a-176418897)+m,E=N(12,20,E+(x&m|~x&g)+f+1200080426)+x,g=N(17,15,g+(E&x|~E&m)+c-1473231341)+E,m=N(22,10,m+(g&E|~g&x)+l-45705983)+g,x=N(7,25,x+(m&g|~m&E)+d+1770035416)+m,E=N(12,20,E+(x&m|~x&g)+_-1958414417)+x,g=N(17,15,g+(E&x|~E&m)+h-42063)+E,m=N(22,10,m+(g&E|~g&x)+u-1990404162)+g,x=N(7,25,x+(m&g|~m&E)+A+1804603682)+m,E=N(12,20,E+(x&m|~x&g)+p-40341101)+x,g=N(17,15,g+(E&x|~E&m)+S-1502002290)+E,m=N(22,10,m+(g&E|~g&x)+y+1236535329)+g,x=N(5,27,x+(m&E|g&~E)+s-165796510)+m,E=N(9,23,E+(x&g|m&~g)+c-1069501632)+x,g=N(14,18,g+(E&m|x&~m)+u+643717713)+E,m=N(20,12,m+(g&x|E&~x)+r-373897302)+g,x=N(5,27,x+(m&E|g&~E)+f-701558691)+m,E=N(9,23,E+(x&g|m&~g)+h+38016083)+x,g=N(14,18,g+(E&m|x&~m)+y-660478335)+E,m=N(20,12,m+(g&x|E&~x)+a-405537848)+g,x=N(5,27,x+(m&E|g&~E)+_+568446438)+m,E=N(9,23,E+(x&g|m&~g)+S-1019803690)+x,g=N(14,18,g+(E&m|x&~m)+i-187363961)+E,m=N(20,12,m+(g&x|E&~x)+d+1163531501)+g,x=N(5,27,x+(m&E|g&~E)+p-1444681467)+m,E=N(9,23,E+(x&g|m&~g)+o-51403784)+x,g=N(14,18,g+(E&m|x&~m)+l+1735328473)+E,m=N(20,12,m+(g&x|E&~x)+A-1926607734)+g,x=N(4,28,x+(m^g^E)+f-378558)+m,E=N(11,21,E+(x^m^g)+d-2022574463)+x,g=N(16,16,g+(E^x^m)+u+1839030562)+E,m=N(23,9,m+(g^E^x)+S-35309556)+g,x=N(4,28,x+(m^g^E)+s-1530992060)+m,E=N(11,21,E+(x^m^g)+a+1272893353)+x,g=N(16,16,g+(E^x^m)+l-155497632)+E,m=N(23,9,m+(g^E^x)+h-1094730640)+g,x=N(4,28,x+(m^g^E)+p+681279174)+m,E=N(11,21,E+(x^m^g)+r-358537222)+x,g=N(16,16,g+(E^x^m)+i-722521979)+E,m=N(23,9,m+(g^E^x)+c+76029189)+g,x=N(4,28,x+(m^g^E)+_-640364487)+m,E=N(11,21,E+(x^m^g)+A-421815835)+x,g=N(16,16,g+(E^x^m)+y+530742520)+E,m=N(23,9,m+(g^E^x)+o-995338651)+g,x=N(6,26,x+(g^(m|~E))+r-198630844)+m,E=N(10,22,E+(m^(x|~g))+l+1126891415)+x,g=N(15,17,g+(x^(E|~m))+S-1416354905)+E,m=N(21,11,m+(E^(g|~x))+f-57434055)+g,x=N(6,26,x+(g^(m|~E))+A+1700485571)+m,E=N(10,22,E+(m^(x|~g))+i-1894986606)+x,g=N(15,17,g+(x^(E|~m))+h-1051523)+E,m=N(21,11,m+(E^(g|~x))+s-2054922799)+g,x=N(6,26,x+(g^(m|~E))+d+1873313359)+m,E=N(10,22,E+(m^(x|~g))+y-30611744)+x,g=N(15,17,g+(x^(E|~m))+c-1560198380)+E,m=N(21,11,m+(E^(g|~x))+p+1309151649)+g,x=N(6,26,x+(g^(m|~E))+a-145523070)+m,E=N(10,22,E+(m^(x|~g))+u-1120210379)+x,g=N(15,17,g+(x^(E|~m))+o+718787259)+E,m=N(21,11,m+(E^(g|~x))+_-343485551)+g,x=x+B>>>0,m=m+T>>>0,g=g+R>>>0,E=E+D>>>0;return Ft.endian([x,m,g,E]);function N(j,rt,V){return V<<j|V>>>rt}};return function(e,n){var r=Ft.wordsToBytes(t(e,n)),s=n&&n.asBytes?r:Ft.bytesconvertNumberToHex(r);return s}}function Gd(t){var e,n,r,s=-1;for(e=t.length-1,n=new ArrayBuffer(t.length),r=new Uint8Array(n);e>s++;)r[s]=t.charCodeAt(s);return r}function kd(t){return Buffer.from(t,"base64").toString("binary")}function Lc(t){return t}function zd(){var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";return{rotl:function(e,n){return e<<n|e>>>32-n},endian:function(e){if(e.constructor==Number)return Ft.rotl(e,8)&16711935|Ft.rotl(e,24)&4278255360;for(var n=0;n<e.length;n++)e[n]=Ft.endian(e[n]);return e},bytesToWords:function(e){for(var n=[],r=0,s=0;r<e.length;r++,s+=8)n[s>>>5]|=e[r]<<24-s%32;return n},wordsToBytes:function(e){for(var n=[],r=0;r<e.length*32;r+=8)n.push(e[r>>>5]>>>24-r%32&255);return n},bytesconvertNumberToHex:function(e){for(var n=[],r=0;r<e.length;r++)n.push((e[r]>>>4).toString(16)),n.push((e[r]&15).toString(16));return n.join("")}}}var xe=class extends Hr{name="md5";options;constructor(e={}){super(),this.options=e}async hash(e,n){let s=await new Promise((o,i)=>Ao(e).then(o).catch(i));return Bc(s,n)}};var Vr=class{constructor(e){this.compressBatches=this.compressBatches.bind(this),this.decompressBatches=this.decompressBatches.bind(this)}async preload(e={}){sn(e)}async compress(e){return await this.preload(),this.compressSync(e)}async decompress(e,n){return await this.preload(),this.decompressSync(e,n)}compressSync(e){throw new Error(`${this.name}: sync compression not supported`)}decompressSync(e,n){throw new Error(`${this.name}: sync decompression not supported`)}async*compressBatches(e){let n=await this.concatenate(e);yield this.compress(n)}async*decompressBatches(e){let n=await this.concatenate(e);yield this.decompress(n)}concatenate(e){return on(e)}improveError(e){return e.message.includes(this.name)||(e.message=`${this.name} ${e.message}`),e}};var Oe=Ct(Rl(),1),$t=Ct(Tl(),1),be=class extends Vr{name="deflate";extensions=[];contentEncodings=["deflate"];isSupported=!0;options;_chunks=[];constructor(e={}){super(e),this.options=e}async compress(e){if(!At&&this.options.deflate?.useZlib){let n=this.options.deflate?.gzip?await Le($t.default.gzip)(e):await Le($t.default.deflate)(e);return ve(n)}return this.compressSync(e)}async decompress(e){if(!At&&this.options.deflate?.useZlib){let n=this.options.deflate?.gzip?await Le($t.default.gunzip)(e):await Le($t.default.inflate)(e);return ve(n)}return this.decompressSync(e)}compressSync(e){if(!At&&this.options.deflate?.useZlib){let o=this.options.deflate?.gzip?$t.default.gzipSync(e):$t.default.deflateSync(e);return ve(o)}let n=this.options?.deflate||{},r=new Uint8Array(e);return(this.options?.raw?Oe.default.deflateRaw:Oe.default.deflate)(r,n).buffer}decompressSync(e){if(!At&&this.options.deflate?.useZlib){let o=this.options.deflate?.gzip?$t.default.gunzipSync(e):$t.default.inflateSync(e);return ve(o)}let n=this.options?.deflate||{},r=new Uint8Array(e);return(this.options?.raw?Oe.default.inflateRaw:Oe.default.inflate)(r,n).buffer}async*compressBatches(e){let n=this.options?.deflate||{},r=new Oe.default.Deflate(n);yield*this.transformBatches(r,e)}async*decompressBatches(e){let n=this.options?.deflate||{},r=new Oe.default.Inflate(n);yield*this.transformBatches(r,e)}async*transformBatches(e,n){e.onData=this._onData.bind(this),e.onEnd=this._onEnd.bind(this);for await(let i of n){let a=new Uint8Array(i);if(!e.push(a,!1))throw new Error(`${this._getError()}write`);yield*this._getChunks()}let r=new Uint8Array(0),s=e.push(r,!0);yield*this._getChunks()}_onData(e){this._chunks.push(e)}_onEnd(e){if(e!==0)throw new Error(this._getError(e)+this._chunks.length)}_getChunks(){let e=this._chunks;return this._chunks=[],e}_getError(e=0){let n={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"};return`${this.name}: ${n[e]}`}};var jn=class extends be{name="gzip";extensions=["gz","gzip"];contentEncodings=["gzip","x-gzip"];isSupported=!0;constructor(e){super({...e,deflate:{...e?.gzip,gzip:!0}})}};var Lp={0:async t=>t,8:async t=>await new be({raw:!0}).decompress(t)},as=class{fileProvider=null;fileName;archive=null;constructor(e){if(typeof e=="string")if(this.fileName=e,!At)this.fileProvider=new cn(e);else throw new Error("Cannot open file for random access in a WEB browser");else e instanceof Ce?(this.fileProvider=e.fileProvider,this.archive=e,this.fileName=e.fileName):us(e)&&(this.fileProvider=e)}async destroy(){this.fileProvider&&await this.fileProvider.destroy()}async readdir(){if(!this.fileProvider)throw new Error("No data detected in the zip archive");let e=[],n=Xe(this.fileProvider);for await(let r of n)e.push(r.fileName);return e}async stat(e){let n=await this.getCDFileHeader(e);return{...n,size:Number(n.uncompressedSize)}}async fetch(e){this.fileName&&e.indexOf(this.fileName)===0&&(e=e.substring(this.fileName.length+1));let n;if(this.archive)n=await this.archive.getFile(e,"http");else{if(!this.fileProvider)throw new Error("No data detected in the zip archive");let s=await this.getCDFileHeader(e),o=await Ae(s.localHeaderOffset,this.fileProvider);if(!o)throw new Error("Local file header has not been found in the zip archive`");let i=Lp[o.compressionMethod.toString()];if(!i)throw Error("Only Deflation compression is supported");let a=await this.fileProvider.slice(o.fileDataOffset,o.fileDataOffset+o.compressedSize);n=await i(a)}let r=new Response(n);return Object.defineProperty(r,"url",{value:e?`${this.fileName||""}/${e}`:this.fileName||""}),r}async getCDFileHeader(e){if(!this.fileProvider)throw new Error("No data detected in the zip archive");let n=Xe(this.fileProvider),r=null;for await(let s of n)if(s.fileName===e){r=s;break}if(!r)throw new Error("File has not been found in the zip archive");return r}};var Ce=class{fileProvider;fileName;constructor(e,n,r){this.fileProvider=e,this.fileName=r}async getFileWithoutHash(e){return await(await new as(this.fileProvider).fetch(e)).arrayBuffer()}};function $o(t){let e=new DataView(t),n={};for(let r=0;r<t.byteLength;r=r+24){let s=e.getBigUint64(r+16,!0),o=Np(t,r,16);n[o]=s}return n}function Np(t,e,n){return[...new Uint8Array(t,e,n)].map(r=>r.toString(16).padStart(2,"0")).join("")}async function Jo(t){let e=Xe(t);return Pp(e)}async function Pp(t){let e=new xe,n=new TextEncoder,r={};for await(let s of t){let o=s.fileName.split("\\").join("/").toLocaleLowerCase(),i=n.encode(o).buffer,a=await e.hash(i,"hex");r[a]=s.localHeaderOffset}return r}var Fp=[{test:/^$/,extensions:["3dSceneLayer.json.gz"]},{test:/nodepages\/\d+$/,extensions:[".json.gz"]},{test:/sublayers\/\d+$/,extensions:["/3dSceneLayer.json.gz"]},{test:/nodes\/(\d+|root)$/,extensions:["/3dNodeIndexDocument.json.gz"]},{test:/nodes\/\d+\/textures\/.+$/,extensions:[".jpg",".png",".bin.dds.gz",".ktx",".ktx2"]},{test:/nodes\/\d+\/geometries\/\d+$/,extensions:[".bin.gz",".draco.gz"]},{test:/nodes\/\d+\/attributes\/f_\d+\/\d+$/,extensions:[".bin.gz"]},{test:/statistics\/(f_\d+\/\d+|summary)$/,extensions:[".json.gz"]},{test:/nodes\/\d+\/shared$/,extensions:["/sharedResource.json.gz"]}],nn=class extends Ce{hashTable;_textEncoder=new TextEncoder;_textDecoder=new TextDecoder;_md5Hash=new xe;constructor(e,n,r){super(e,n,r),this.hashTable=n}async getFile(e,n="raw"){if(n==="http"){let r=Fp.find(s=>s.test.test(e))?.extensions;if(r){let s;for(let o of r)if(s=await this.getDataByPath(`${e}${o}`),s)break;if(s)return s}}if(n==="raw"){let r=await this.getDataByPath(`${e}.gz`);if(r)return r;let s=await this.getFileBytes(e);if(s)return s}throw new Error(`No such file in the archive: ${e}`)}async getDataByPath(e){let n=await this.getFileBytes(e.toLocaleLowerCase());if(n||(n=await this.getFileBytes(e)),!!n)return/\.gz$/.test(e)?await new jn().decompress(n):n}async getFileBytes(e){let n;if(this.hashTable){let r=this._textEncoder.encode(e),s=await this._md5Hash.hash(r.buffer,"hex"),o=this.hashTable[s];if(o===void 0)return;let i=await Ae(o,this.fileProvider);if(!i)return;n=await this.fileProvider.slice(i.fileDataOffset,i.fileDataOffset+i.compressedSize)}else try{n=await this.getFileWithoutHash(e)}catch{n=void 0}return n}};async function cs(t,e,n){let r=await In(t,Ln),s=await vn(r,t),o;if(s?.fileName!=="@specialIndexFileHASH128@")o=await Jo(t),e?.("SLPK doesnt contain hash file, hash info has been composed according to zip archive headers");else{let i=await Ae(s.localHeaderOffset,t);if(!i)throw new Error("corrupted SLPK");let a=i.fileDataOffset,f=await t.slice(a,a+i.compressedSize);o=$o(f)}return new nn(t,o,n)}var Up="4.3.2",Ml={dataType:null,batchType:null,name:"I3S SLPK (Scene Layer Package)",id:"slpk",module:"i3s",version:Up,mimeTypes:["application/octet-stream"],extensions:["slpk"],options:{},parse:async(t,e={})=>(await cs(new _e(new DataView(t)))).getFile(e.slpk?.path??"",e.slpk?.pathMode)};var bl=Ct(Ht(),1);function wl(t,e){let{attributeName:n,attributeType:r}=e;return n?{[n]:r?Gp(r,t):null}:{}}function Gp(t,e){switch(t){case ua:return Kp(e);case pa:return yl(e);case ma:return zp(e);case Aa:return kp(e);default:return yl(e)}}function yl(t){return new Uint32Array(t,4)}function kp(t){return new Int16Array(t,4)}function zp(t){return new Float64Array(t,8)}function Kp(t){let s=[];try{let o=new DataView(t,0,4).getUint32(0,!0),i=new Uint32Array(t,8,o),a=8+o*4;for(let f of i){let c=new TextDecoder("utf-8"),l=new Uint8Array(t,a,f);s.push(c.decode(l)),a+=f}}catch(o){console.error("Parse string attribute error: ",o.message)}return s}var Hp="4.3.2",Ol="",Vp="rejected",$n={dataType:null,batchType:null,name:"I3S Attribute",id:"i3s-attribute",module:"i3s",version:Hp,mimeTypes:["application/binary"],parse:async(t,e)=>wl(t,e),extensions:["bin"],options:{},binary:!0};async function Cl(t,e,n={}){let{attributeStorageInfo:r,attributeUrls:s,tilesetFields:o}=Xp(t);if(!r||!s||e<0)return null;let i=[],a=[];for(let f=0;f<r.length;f++){let c=Pt(s[f],n.i3s?.token),l=r[f].name,d=ti(r[f]),_={...n,attributeName:l,attributeType:d},h=(0,bl.load)(c,$n,_);a.push(h)}try{i=await Promise.allSettled(a)}catch{}return i.length?qp(i,r,e,o):null}function Xp(t){let e=t.tileset?.tileset?.attributeStorageInfo,n=t.header?.attributeUrls,r=t.tileset?.tileset?.fields||[];return{attributeStorageInfo:e,attributeUrls:n,tilesetFields:r}}function ti(t){return t.hasOwnProperty("objectIds")?"Oid32":t.hasOwnProperty("attributeValues")?t.attributeValues.valueType:""}function Wp(t){return t.find(n=>n.name.includes("OBJECTID"))?.name}function qp(t,e,n,r){let s=Wp(e),o=t.find(a=>a.value[s]);if(!o)return null;let i=o.value[s].indexOf(n);return i<0?null:Zp(t,i,e,r)}function Zp(t,e,n,r){let s={};for(let o=0;o<n.length;o++){let i=n[o].name,a=Qp(i,r),f=Yp(t,o,i);s[i]=jp(f,e,a)}return s}function Qp(t,e){return e.find(r=>r.name===t||r.alias===t)?.domain?.codedValues||[]}function Yp(t,e,n){let r=t[e];return r.status===Vp?null:r.value[n]}function jp(t,e,n){let r=Ol;return t&&e in t&&(r=String(t[e]).replace(/\u0000|NaN/g,"").trim()),n.length&&(r=n.find(o=>o.code===Number(r))?.name||Ol),r}var $p="3DObject";async function Bl(t,e){let n=JSON.parse(new TextDecoder().decode(t)),{sublayers:r}=n;return{header:n,sublayers:Dl(r,e)}}function Dl(t,e){let n=[];for(let r=0;r<t.length;r++){let s=t[r],{id:o,layerType:i,visibility:a=!0,...f}=s;if(i===$p){let c=`${e}/sublayers/${o}`;n.push({url:c,id:o,layerType:i,visibility:a,...f})}s?.sublayers?.length&&(n=[...n,...Dl(s.sublayers,e)])}return n}var Jp="4.3.2",Il={dataType:null,batchType:null,name:"I3S Building Scene Layer",id:"i3s-building-scene-layer",module:"i3s",version:Jp,mimeTypes:["application/json"],parse:tm,extensions:["json"],options:{}};async function tm(t,e,n){if(!n?.url)throw new Error("Url is not provided");return Bl(t,n.url)}var fs=Ct(Ht(),1),em=4326,nm="ArcGISSceneServiceLayer",rm="BuildingSceneLayer",sm="IntegratedMeshLayer",vl="GroupLayer",om=[nm,sm,rm,vl],im="NO_AVAILABLE_SUPPORTED_LAYERS_ERROR",am="NOT_SUPPORTED_CRS_ERROR",Jn=class extends Error{details;constructor(e,n){super(e),this.details=n,this.name="LayerError"}};async function Ll(t){let e=JSON.parse(new TextDecoder().decode(t)),{operationalLayers:n}=e,{layers:r,unsupportedLayers:s}=await Nl(n,!0);if(!r.length)throw new Jn(im,s);return{header:e,layers:r,unsupportedLayers:s}}async function Nl(t,e){let n=[],r=[];for(let s=0;s<t.length;s++){let o=t[s];if(om.includes(o.layerType)?(e&&o.layerType!==vl&&(await cm(o),e=!1),n.push(o)):r.push(o),o.layers?.length){let{layers:a,unsupportedLayers:f}=await Nl(o.layers,e);o.layers=a,r=[...r,...f]}}return{layers:n,unsupportedLayers:r}}async function cm(t){try{if((await(0,fs.load)(t.url,fs.JSONLoader))?.spatialReference?.wkid!==em)throw new Error(am)}catch(e){throw e}}var fm="4.3.2",Pl={dataType:null,batchType:null,name:"ArcGIS Web Scene Loader",id:"arcgis-web-scene",module:"i3s",version:fm,mimeTypes:["application/json"],parse:lm,extensions:["json"],options:{}};async function lm(t){return Ll(t)}var Ul=Ct(Ht(),1);async function Gl(t,e,n,r,s,o,i){if(!o)return t;let a={...t,value:new Uint8Array(t.value)},f=r.find(({name:h})=>h===o?.attributeName);if(!f||!["esriFieldTypeDouble","esriFieldTypeInteger","esriFieldTypeSmallInteger"].includes(f.type))return t;let c=await Fl(f.name,n,s,i);if(!c)return t;let l=r.find(({type:h})=>h==="esriFieldTypeOID");if(!l)return t;let d=await Fl(l.name,n,s,i);if(!d)return t;let _={};for(let h=0;h<d[l.name].length;h++)_[d[l.name][h]]=hm(c[f.name][h],o);for(let h=0;h<e.length;h++){let u=_[e[h]];u&&(o.mode==="multiply"?u.forEach((A,p)=>{a.value[h*4+p]=a.value[h*4+p]*A/255}):a.value.set(u,h*4))}return a}function hm(t,e){if(!e)return[255,255,255,255];let{minValue:n,maxValue:r,minColor:s,maxColor:o}=e,i=(t-n)/(r-n),a=[255,255,255,255];for(let f=0;f<s.length;f++)a[f]=Math.round((o[f]-s[f])*i+s[f]);return a}async function Fl(t,e,n,r){let s=n.findIndex(({name:f})=>t===f);if(s===-1)return null;let o=Pt(e[s],r),i=ti(n[s]);return await(0,Ul.load)(o,$n,{attributeName:t,attributeType:i})}return Wl(tr);})();
|
|
8
8
|
return __exports__;
|
|
9
9
|
});
|