@loaders.gl/i3s 4.3.2 → 4.4.0-alpha.2
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 +1736 -1734
- 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 +39 -39
- package/dist/i3s-content-worker-node.js.map +4 -4
- package/dist/i3s-content-worker.js +125 -123
- 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 +2 -2
- package/dist/lib/parsers/parse-slpk/slpk-archieve.js +1 -1
- package/package.json +13 -13
- 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 nn=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),on=(t,e)=>{for(var r in e)nn(t,r,{get:e[r],enumerable:!0})},rn=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Hl(e))!Xl.call(t,o)&&o!==r&&nn(t,o,{get:()=>e[o],enumerable:!(n=Kl(e,o))||n.enumerable});return t},sn=(t,e,r)=>(rn(t,e,"default"),r&&rn(r,e,"default")),Ct=(t,e,r)=>(r=t!=null?zl(Vl(t)):{},rn(e||!t||!t.__esModule?nn(r,"default",{value:t,enumerable:!0}):r,t)),Wl=t=>rn(nn({},"__esModule",{value:!0}),t);var Ht=J((dm,ii)=>{ii.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 r=e.shift();if(r){if(typeof r!="object")throw new TypeError(r+"must be non-object");for(var n in r)Hd(r,n)&&(t[n]=r[n])}}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,r,n,o){if(e.subarray&&t.subarray){t.set(e.subarray(r,r+n),o);return}for(var s=0;s<n;s++)t[o+s]=e[r+s]},flattenChunks:function(t){var e,r,n,o,s,i;for(n=0,e=0,r=t.length;e<r;e++)n+=t[e].length;for(i=new Uint8Array(n),o=0,e=0,r=t.length;e<r;e++)s=t[e],i.set(s,o),o+=s.length;return i}},Xd={arraySet:function(t,e,r,n,o){for(var s=0;s<n;s++)t[o+s]=e[r+s]},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 nf=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,ys=29,kr=256,Nr=kr+1+ys,We=30,ws=19,Hc=2*Nr+1,ge=15,gs=16,Jd=7,Os=256,Vc=16,Xc=17,Wc=18,Ts=[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],Xn=[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((Nr+2)*2);qe(Qt);var Lr=new Array(We*2);qe(Lr);var Pr=new Array(eu);qe(Pr);var Fr=new Array($d-jd+1);qe(Fr);var bs=new Array(ys);qe(bs);var Wn=new Array(We);qe(Wn);function Es(t,e,r,n,o){this.static_tree=t,this.extra_bits=e,this.extra_base=r,this.elems=n,this.max_length=o,this.has_stree=t&&t.length}var Zc,Qc,Yc;function Ss(t,e){this.dyn_tree=t,this.max_code=0,this.stat_desc=e}function jc(t){return t<256?Pr[t]:Pr[256+(t>>>7)]}function Ur(t,e){t.pending_buf[t.pending++]=e&255,t.pending_buf[t.pending++]=e>>>8&255}function ht(t,e,r){t.bi_valid>gs-r?(t.bi_buf|=e<<t.bi_valid&65535,Ur(t,t.bi_buf),t.bi_buf=e>>gs-t.bi_valid,t.bi_valid+=r-gs):(t.bi_buf|=e<<t.bi_valid&65535,t.bi_valid+=r)}function Ut(t,e,r){ht(t,r[e*2],r[e*2+1])}function $c(t,e){var r=0;do r|=t&1,t>>>=1,r<<=1;while(--e>0);return r>>>1}function ru(t){t.bi_valid===16?(Ur(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 nu(t,e){var r=e.dyn_tree,n=e.max_code,o=e.stat_desc.static_tree,s=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(r[t.heap[t.heap_max]*2+1]=0,c=t.heap_max+1;c<Hc;c++)l=t.heap[c],_=r[r[l*2+1]*2+1]+1,_>f&&(_=f,A++),r[l*2+1]=_,!(l>n)&&(t.bl_count[_]++,h=0,l>=a&&(h=i[l-a]),u=r[l*2],t.opt_len+=u*(_+h),s&&(t.static_len+=u*(o[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>n)&&(r[d*2+1]!==_&&(t.opt_len+=(_-r[d*2+1])*r[d*2],r[d*2+1]=_),l--)}}function Jc(t,e,r){var n=new Array(ge+1),o=0,s,i;for(s=1;s<=ge;s++)n[s]=o=o+r[s-1]<<1;for(i=0;i<=e;i++){var a=t[i*2+1];a!==0&&(t[i*2]=$c(n[a]++,a))}}function ou(){var t,e,r,n,o,s=new Array(ge+1);for(r=0,n=0;n<ys-1;n++)for(bs[n]=r,t=0;t<1<<Ts[n];t++)Fr[r++]=n;for(Fr[r-1]=n,o=0,n=0;n<16;n++)for(Wn[n]=o,t=0;t<1<<Xn[n];t++)Pr[o++]=n;for(o>>=7;n<We;n++)for(Wn[n]=o<<7,t=0;t<1<<Xn[n]-7;t++)Pr[256+o++]=n;for(e=0;e<=ge;e++)s[e]=0;for(t=0;t<=143;)Qt[t*2+1]=8,t++,s[8]++;for(;t<=255;)Qt[t*2+1]=9,t++,s[9]++;for(;t<=279;)Qt[t*2+1]=7,t++,s[7]++;for(;t<=287;)Qt[t*2+1]=8,t++,s[8]++;for(Jc(Qt,Nr+1,s),t=0;t<We;t++)Lr[t*2+1]=5,Lr[t*2]=$c(t,5);Zc=new Es(Qt,Ts,kr+1,Nr,ge),Qc=new Es(Lr,Xn,0,We,ge),Yc=new Es(new Array(0),tu,0,ws,Jd)}function tf(t){var e;for(e=0;e<Nr;e++)t.dyn_ltree[e*2]=0;for(e=0;e<We;e++)t.dyn_dtree[e*2]=0;for(e=0;e<ws;e++)t.bl_tree[e*2]=0;t.dyn_ltree[Os*2]=1,t.opt_len=t.static_len=0,t.last_lit=t.matches=0}function ef(t){t.bi_valid>8?Ur(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 su(t,e,r,n){ef(t),n&&(Ur(t,r),Ur(t,~r)),Wd.arraySet(t.pending_buf,t.window,e,r,t.pending),t.pending+=r}function Fc(t,e,r,n){var o=e*2,s=r*2;return t[o]<t[s]||t[o]===t[s]&&n[e]<=n[r]}function Rs(t,e,r){for(var n=t.heap[r],o=r<<1;o<=t.heap_len&&(o<t.heap_len&&Fc(e,t.heap[o+1],t.heap[o],t.depth)&&o++,!Fc(e,n,t.heap[o],t.depth));)t.heap[r]=t.heap[o],r=o,o<<=1;t.heap[r]=n}function Uc(t,e,r){var n,o,s=0,i,a;if(t.last_lit!==0)do n=t.pending_buf[t.d_buf+s*2]<<8|t.pending_buf[t.d_buf+s*2+1],o=t.pending_buf[t.l_buf+s],s++,n===0?Ut(t,o,e):(i=Fr[o],Ut(t,i+kr+1,e),a=Ts[i],a!==0&&(o-=bs[i],ht(t,o,a)),n--,i=jc(n),Ut(t,i,r),a=Xn[i],a!==0&&(n-=Wn[i],ht(t,n,a)));while(s<t.last_lit);Ut(t,Os,e)}function Ms(t,e){var r=e.dyn_tree,n=e.stat_desc.static_tree,o=e.stat_desc.has_stree,s=e.stat_desc.elems,i,a,f=-1,c;for(t.heap_len=0,t.heap_max=Hc,i=0;i<s;i++)r[i*2]!==0?(t.heap[++t.heap_len]=f=i,t.depth[i]=0):r[i*2+1]=0;for(;t.heap_len<2;)c=t.heap[++t.heap_len]=f<2?++f:0,r[c*2]=1,t.depth[c]=0,t.opt_len--,o&&(t.static_len-=n[c*2+1]);for(e.max_code=f,i=t.heap_len>>1;i>=1;i--)Rs(t,r,i);c=s;do i=t.heap[1],t.heap[1]=t.heap[t.heap_len--],Rs(t,r,1),a=t.heap[1],t.heap[--t.heap_max]=i,t.heap[--t.heap_max]=a,r[c*2]=r[i*2]+r[a*2],t.depth[c]=(t.depth[i]>=t.depth[a]?t.depth[i]:t.depth[a])+1,r[i*2+1]=r[a*2+1]=c,t.heap[1]=c++,Rs(t,r,1);while(t.heap_len>=2);t.heap[--t.heap_max]=t.heap[1],nu(t,e),Jc(r,f,t.bl_count)}function kc(t,e,r){var n,o=-1,s,i=e[0*2+1],a=0,f=7,c=4;for(i===0&&(f=138,c=3),e[(r+1)*2+1]=65535,n=0;n<=r;n++)s=i,i=e[(n+1)*2+1],!(++a<f&&s===i)&&(a<c?t.bl_tree[s*2]+=a:s!==0?(s!==o&&t.bl_tree[s*2]++,t.bl_tree[Vc*2]++):a<=10?t.bl_tree[Xc*2]++:t.bl_tree[Wc*2]++,a=0,o=s,i===0?(f=138,c=3):s===i?(f=6,c=3):(f=7,c=4))}function Gc(t,e,r){var n,o=-1,s,i=e[0*2+1],a=0,f=7,c=4;for(i===0&&(f=138,c=3),n=0;n<=r;n++)if(s=i,i=e[(n+1)*2+1],!(++a<f&&s===i)){if(a<c)do Ut(t,s,t.bl_tree);while(--a!==0);else s!==0?(s!==o&&(Ut(t,s,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,o=s,i===0?(f=138,c=3):s===i?(f=6,c=3):(f=7,c=4)}}function iu(t){var e;for(kc(t,t.dyn_ltree,t.l_desc.max_code),kc(t,t.dyn_dtree,t.d_desc.max_code),Ms(t,t.bl_desc),e=ws-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,r,n){var o;for(ht(t,e-257,5),ht(t,r-1,5),ht(t,n-4,4),o=0;o<n;o++)ht(t,t.bl_tree[qc[o]*2+1],3);Gc(t,t.dyn_ltree,e-1),Gc(t,t.dyn_dtree,r-1)}function cu(t){var e=4093624447,r;for(r=0;r<=31;r++,e>>>=1)if(e&1&&t.dyn_ltree[r*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(r=32;r<kr;r++)if(t.dyn_ltree[r*2]!==0)return Pc;return Nc}var zc=!1;function fu(t){zc||(ou(),zc=!0),t.l_desc=new Ss(t.dyn_ltree,Zc),t.d_desc=new Ss(t.dyn_dtree,Qc),t.bl_desc=new Ss(t.bl_tree,Yc),t.bi_buf=0,t.bi_valid=0,tf(t)}function rf(t,e,r,n){ht(t,(Qd<<1)+(n?1:0),3),su(t,e,r,!0)}function lu(t){ht(t,Kc<<1,3),Ut(t,Os,Qt),ru(t)}function hu(t,e,r,n){var o,s,i=0;t.level>0?(t.strm.data_type===Zd&&(t.strm.data_type=cu(t)),Ms(t,t.l_desc),Ms(t,t.d_desc),i=iu(t),o=t.opt_len+3+7>>>3,s=t.static_len+3+7>>>3,s<=o&&(o=s)):o=s=r+5,r+4<=o&&e!==-1?rf(t,e,r,n):t.strategy===qd||s===o?(ht(t,(Kc<<1)+(n?1:0),3),Uc(t,Qt,Lr)):(ht(t,(Yd<<1)+(n?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),n&&ef(t)}function _u(t,e,r){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]=r&255,t.last_lit++,e===0?t.dyn_ltree[r*2]++:(t.matches++,e--,t.dyn_ltree[(Fr[r]+kr+1)*2]++,t.dyn_dtree[jc(e)*2]++),t.last_lit===t.lit_bufsize-1}Ze._tr_init=fu;Ze._tr_stored_block=rf;Ze._tr_flush_block=hu;Ze._tr_tally=_u;Ze._tr_align=lu});var Cs=J((LR,of)=>{"use strict";function du(t,e,r,n){for(var o=t&65535|0,s=t>>>16&65535|0,i=0;r!==0;){i=r>2e3?2e3:r,r-=i;do o=o+e[n++]|0,s=s+o|0;while(--i);o%=65521,s%=65521}return o|s<<16|0}of.exports=du});var Bs=J((NR,sf)=>{"use strict";function uu(){for(var t,e=[],r=0;r<256;r++){t=r;for(var n=0;n<8;n++)t=t&1?3988292384^t>>>1:t>>>1;e[r]=t}return e}var pu=uu();function mu(t,e,r,n){var o=pu,s=n+r;t^=-1;for(var i=n;i<s;i++)t=t>>>8^o[(t^e[i])&255];return t^-1}sf.exports=mu});var qn=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=nf(),hf=Cs(),se=Bs(),Au=qn(),Te=0,xu=1,gu=3,le=4,cf=5,Gt=0,ff=1,Rt=-2,Eu=-3,Ds=-5,Su=-1,Ru=1,Zn=2,Tu=3,Mu=4,yu=0,wu=2,$n=8,Ou=9,bu=15,Cu=8,Bu=29,Du=256,vs=Du+1+Bu,Iu=30,vu=19,Lu=2*vs+1,Nu=15,G=3,ce=258,yt=ce+G+1,Pu=32,Jn=42,Ls=69,Qn=73,Yn=91,jn=103,Ee=113,zr=666,$=1,Kr=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,r=e.pending;r>t.avail_out&&(r=t.avail_out),r!==0&&(ct.arraySet(t.output,e.pending_buf,e.pending_out,r,t.next_out),t.next_out+=r,e.pending_out+=r,t.total_out+=r,t.avail_out-=r,e.pending-=r,e.pending===0&&(e.pending_out=0))}function rt(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 Gr(t,e){t.pending_buf[t.pending++]=e>>>8&255,t.pending_buf[t.pending++]=e&255}function Uu(t,e,r,n){var o=t.avail_in;return o>n&&(o=n),o===0?0:(t.avail_in-=o,ct.arraySet(e,t.input,t.next_in,o,r),t.state.wrap===1?t.adler=hf(t.adler,e,o,r):t.state.wrap===2&&(t.adler=se(t.adler,e,o,r)),t.next_in+=o,t.total_in+=o,o)}function _f(t,e){var r=t.max_chain_length,n=t.strstart,o,s,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[n+i-1],u=c[n+i];t.prev_length>=t.good_match&&(r>>=2),a>t.lookahead&&(a=t.lookahead);do if(o=e,!(c[o+i]!==u||c[o+i-1]!==h||c[o]!==c[n]||c[++o]!==c[n+1])){n+=2,o++;do;while(c[++n]===c[++o]&&c[++n]===c[++o]&&c[++n]===c[++o]&&c[++n]===c[++o]&&c[++n]===c[++o]&&c[++n]===c[++o]&&c[++n]===c[++o]&&c[++n]===c[++o]&&n<_);if(s=ce-(_-n),n=_-ce,s>i){if(t.match_start=e,i=s,s>=a)break;h=c[n+i-1],u=c[n+i]}}while((e=d[e&l])>f&&--r!==0);return i<=t.lookahead?i:t.lookahead}function Re(t){var e=t.w_size,r,n,o,s,i;do{if(s=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,n=t.hash_size,r=n;do o=t.head[--r],t.head[r]=o>=e?o-e:0;while(--n);n=e,r=n;do o=t.prev[--r],t.prev[r]=o>=e?o-e:0;while(--n);s+=e}if(t.strm.avail_in===0)break;if(n=Uu(t.strm,t.window,t.strstart+t.lookahead,s),t.lookahead+=n,t.lookahead+t.insert>=G)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+G-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<G)););}while(t.lookahead<yt&&t.strm.avail_in!==0)}function ku(t,e){var r=65535;for(r>t.pending_buf_size-5&&(r=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 n=t.block_start+r;if((t.strstart===0||t.strstart>=n)&&(t.lookahead=t.strstart-n,t.strstart=n,rt(t,!1),t.strm.avail_out===0)||t.strstart-t.block_start>=t.w_size-yt&&(rt(t,!1),t.strm.avail_out===0))return $}return t.insert=0,e===le?(rt(t,!0),t.strm.avail_out===0?Se:je):(t.strstart>t.block_start&&(rt(t,!1),t.strm.avail_out===0),$)}function Is(t,e){for(var r,n;;){if(t.lookahead<yt){if(Re(t),t.lookahead<yt&&e===Te)return $;if(t.lookahead===0)break}if(r=0,t.lookahead>=G&&(t.ins_h=(t.ins_h<<t.hash_shift^t.window[t.strstart+G-1])&t.hash_mask,r=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),r!==0&&t.strstart-r<=t.w_size-yt&&(t.match_length=_f(t,r)),t.match_length>=G)if(n=St._tr_tally(t,t.strstart-t.match_start,t.match_length-G),t.lookahead-=t.match_length,t.match_length<=t.max_lazy_match&&t.lookahead>=G){t.match_length--;do t.strstart++,t.ins_h=(t.ins_h<<t.hash_shift^t.window[t.strstart+G-1])&t.hash_mask,r=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 n=St._tr_tally(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++;if(n&&(rt(t,!1),t.strm.avail_out===0))return $}return t.insert=t.strstart<G-1?t.strstart:G-1,e===le?(rt(t,!0),t.strm.avail_out===0?Se:je):t.last_lit&&(rt(t,!1),t.strm.avail_out===0)?$:Kr}function Qe(t,e){for(var r,n,o;;){if(t.lookahead<yt){if(Re(t),t.lookahead<yt&&e===Te)return $;if(t.lookahead===0)break}if(r=0,t.lookahead>=G&&(t.ins_h=(t.ins_h<<t.hash_shift^t.window[t.strstart+G-1])&t.hash_mask,r=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=G-1,r!==0&&t.prev_length<t.max_lazy_match&&t.strstart-r<=t.w_size-yt&&(t.match_length=_f(t,r),t.match_length<=5&&(t.strategy===Ru||t.match_length===G&&t.strstart-t.match_start>4096)&&(t.match_length=G-1)),t.prev_length>=G&&t.match_length<=t.prev_length){o=t.strstart+t.lookahead-G,n=St._tr_tally(t,t.strstart-1-t.prev_match,t.prev_length-G),t.lookahead-=t.prev_length-1,t.prev_length-=2;do++t.strstart<=o&&(t.ins_h=(t.ins_h<<t.hash_shift^t.window[t.strstart+G-1])&t.hash_mask,r=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=G-1,t.strstart++,n&&(rt(t,!1),t.strm.avail_out===0))return $}else if(t.match_available){if(n=St._tr_tally(t,0,t.window[t.strstart-1]),n&&rt(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&&(n=St._tr_tally(t,0,t.window[t.strstart-1]),t.match_available=0),t.insert=t.strstart<G-1?t.strstart:G-1,e===le?(rt(t,!0),t.strm.avail_out===0?Se:je):t.last_lit&&(rt(t,!1),t.strm.avail_out===0)?$:Kr}function Gu(t,e){for(var r,n,o,s,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>=G&&t.strstart>0&&(o=t.strstart-1,n=i[o],n===i[++o]&&n===i[++o]&&n===i[++o])){s=t.strstart+ce;do;while(n===i[++o]&&n===i[++o]&&n===i[++o]&&n===i[++o]&&n===i[++o]&&n===i[++o]&&n===i[++o]&&n===i[++o]&&o<s);t.match_length=ce-(s-o),t.match_length>t.lookahead&&(t.match_length=t.lookahead)}if(t.match_length>=G?(r=St._tr_tally(t,1,t.match_length-G),t.lookahead-=t.match_length,t.strstart+=t.match_length,t.match_length=0):(r=St._tr_tally(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++),r&&(rt(t,!1),t.strm.avail_out===0))return $}return t.insert=0,e===le?(rt(t,!0),t.strm.avail_out===0?Se:je):t.last_lit&&(rt(t,!1),t.strm.avail_out===0)?$:Kr}function zu(t,e){for(var r;;){if(t.lookahead===0&&(Re(t),t.lookahead===0)){if(e===Te)return $;break}if(t.match_length=0,r=St._tr_tally(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++,r&&(rt(t,!1),t.strm.avail_out===0))return $}return t.insert=0,e===le?(rt(t,!0),t.strm.avail_out===0?Se:je):t.last_lit&&(rt(t,!1),t.strm.avail_out===0)?$:Kr}function kt(t,e,r,n,o){this.good_length=t,this.max_lazy=e,this.nice_length=r,this.max_chain=n,this.func=o}var Ye;Ye=[new kt(0,0,0,0,ku),new kt(4,4,8,4,Is),new kt(4,5,16,8,Is),new kt(4,6,32,32,Is),new kt(4,4,16,16,Qe),new kt(8,16,32,32,Qe),new kt(8,16,128,128,Qe),new kt(8,32,128,256,Qe),new kt(32,128,258,1024,Qe),new kt(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=G-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=$n,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*vs+1),ae(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new ct.Buf16(2*vs+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?Jn:Ee,t.adler=e.wrap===2?0:1,e.last_flush=Te,St._tr_init(e),Gt)}function uf(t){var e=df(t);return e===Gt&&Ku(t.state),e}function Vu(t,e){return!t||!t.state||t.state.wrap!==2?Rt:(t.state.gzhead=e,Gt)}function pf(t,e,r,n,o,s){if(!t)return Rt;var i=1;if(e===Su&&(e=6),n<0?(i=0,n=-n):n>15&&(i=2,n-=16),o<1||o>Ou||r!==$n||n<8||n>15||e<0||e>9||s<0||s>Mu)return fe(t,Rt);n===8&&(n=9);var a=new Hu;return t.state=a,a.strm=t,a.wrap=i,a.gzhead=null,a.w_bits=n,a.w_size=1<<a.w_bits,a.w_mask=a.w_size-1,a.hash_bits=o+7,a.hash_size=1<<a.hash_bits,a.hash_mask=a.hash_size-1,a.hash_shift=~~((a.hash_bits+G-1)/G),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<<o+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=s,a.method=r,uf(t)}function Xu(t,e){return pf(t,e,$n,bu,Cu,yu)}function Wu(t,e){var r,n,o,s;if(!t||!t.state||e>cf||e<0)return t?fe(t,Rt):Rt;if(n=t.state,!t.output||!t.input&&t.avail_in!==0||n.status===zr&&e!==le)return fe(t,t.avail_out===0?Ds:Rt);if(n.strm=t,r=n.last_flush,n.last_flush=e,n.status===Jn)if(n.wrap===2)t.adler=0,K(n,31),K(n,139),K(n,8),n.gzhead?(K(n,(n.gzhead.text?1:0)+(n.gzhead.hcrc?2:0)+(n.gzhead.extra?4:0)+(n.gzhead.name?8:0)+(n.gzhead.comment?16:0)),K(n,n.gzhead.time&255),K(n,n.gzhead.time>>8&255),K(n,n.gzhead.time>>16&255),K(n,n.gzhead.time>>24&255),K(n,n.level===9?2:n.strategy>=Zn||n.level<2?4:0),K(n,n.gzhead.os&255),n.gzhead.extra&&n.gzhead.extra.length&&(K(n,n.gzhead.extra.length&255),K(n,n.gzhead.extra.length>>8&255)),n.gzhead.hcrc&&(t.adler=se(t.adler,n.pending_buf,n.pending,0)),n.gzindex=0,n.status=Ls):(K(n,0),K(n,0),K(n,0),K(n,0),K(n,0),K(n,n.level===9?2:n.strategy>=Zn||n.level<2?4:0),K(n,Fu),n.status=Ee);else{var i=$n+(n.w_bits-8<<4)<<8,a=-1;n.strategy>=Zn||n.level<2?a=0:n.level<6?a=1:n.level===6?a=2:a=3,i|=a<<6,n.strstart!==0&&(i|=Pu),i+=31-i%31,n.status=Ee,Gr(n,i),n.strstart!==0&&(Gr(n,t.adler>>>16),Gr(n,t.adler&65535)),t.adler=1}if(n.status===Ls)if(n.gzhead.extra){for(o=n.pending;n.gzindex<(n.gzhead.extra.length&65535)&&!(n.pending===n.pending_buf_size&&(n.gzhead.hcrc&&n.pending>o&&(t.adler=se(t.adler,n.pending_buf,n.pending-o,o)),ie(t),o=n.pending,n.pending===n.pending_buf_size));)K(n,n.gzhead.extra[n.gzindex]&255),n.gzindex++;n.gzhead.hcrc&&n.pending>o&&(t.adler=se(t.adler,n.pending_buf,n.pending-o,o)),n.gzindex===n.gzhead.extra.length&&(n.gzindex=0,n.status=Qn)}else n.status=Qn;if(n.status===Qn)if(n.gzhead.name){o=n.pending;do{if(n.pending===n.pending_buf_size&&(n.gzhead.hcrc&&n.pending>o&&(t.adler=se(t.adler,n.pending_buf,n.pending-o,o)),ie(t),o=n.pending,n.pending===n.pending_buf_size)){s=1;break}n.gzindex<n.gzhead.name.length?s=n.gzhead.name.charCodeAt(n.gzindex++)&255:s=0,K(n,s)}while(s!==0);n.gzhead.hcrc&&n.pending>o&&(t.adler=se(t.adler,n.pending_buf,n.pending-o,o)),s===0&&(n.gzindex=0,n.status=Yn)}else n.status=Yn;if(n.status===Yn)if(n.gzhead.comment){o=n.pending;do{if(n.pending===n.pending_buf_size&&(n.gzhead.hcrc&&n.pending>o&&(t.adler=se(t.adler,n.pending_buf,n.pending-o,o)),ie(t),o=n.pending,n.pending===n.pending_buf_size)){s=1;break}n.gzindex<n.gzhead.comment.length?s=n.gzhead.comment.charCodeAt(n.gzindex++)&255:s=0,K(n,s)}while(s!==0);n.gzhead.hcrc&&n.pending>o&&(t.adler=se(t.adler,n.pending_buf,n.pending-o,o)),s===0&&(n.status=jn)}else n.status=jn;if(n.status===jn&&(n.gzhead.hcrc?(n.pending+2>n.pending_buf_size&&ie(t),n.pending+2<=n.pending_buf_size&&(K(n,t.adler&255),K(n,t.adler>>8&255),t.adler=0,n.status=Ee)):n.status=Ee),n.pending!==0){if(ie(t),t.avail_out===0)return n.last_flush=-1,Gt}else if(t.avail_in===0&&lf(e)<=lf(r)&&e!==le)return fe(t,Ds);if(n.status===zr&&t.avail_in!==0)return fe(t,Ds);if(t.avail_in!==0||n.lookahead!==0||e!==Te&&n.status!==zr){var f=n.strategy===Zn?zu(n,e):n.strategy===Tu?Gu(n,e):Ye[n.level].func(n,e);if((f===Se||f===je)&&(n.status=zr),f===$||f===Se)return t.avail_out===0&&(n.last_flush=-1),Gt;if(f===Kr&&(e===xu?St._tr_align(n):e!==cf&&(St._tr_stored_block(n,0,0,!1),e===gu&&(ae(n.head),n.lookahead===0&&(n.strstart=0,n.block_start=0,n.insert=0))),ie(t),t.avail_out===0))return n.last_flush=-1,Gt}return e!==le?Gt:n.wrap<=0?ff:(n.wrap===2?(K(n,t.adler&255),K(n,t.adler>>8&255),K(n,t.adler>>16&255),K(n,t.adler>>24&255),K(n,t.total_in&255),K(n,t.total_in>>8&255),K(n,t.total_in>>16&255),K(n,t.total_in>>24&255)):(Gr(n,t.adler>>>16),Gr(n,t.adler&65535)),ie(t),n.wrap>0&&(n.wrap=-n.wrap),n.pending!==0?Gt:ff)}function qu(t){var e;return!t||!t.state?Rt:(e=t.state.status,e!==Jn&&e!==Ls&&e!==Qn&&e!==Yn&&e!==jn&&e!==Ee&&e!==zr?fe(t,Rt):(t.state=null,e===Ee?fe(t,Eu):Gt))}function Zu(t,e){var r=e.length,n,o,s,i,a,f,c,l;if(!t||!t.state||(n=t.state,i=n.wrap,i===2||i===1&&n.status!==Jn||n.lookahead))return Rt;for(i===1&&(t.adler=hf(t.adler,e,r,0)),n.wrap=0,r>=n.w_size&&(i===0&&(ae(n.head),n.strstart=0,n.block_start=0,n.insert=0),l=new ct.Buf8(n.w_size),ct.arraySet(l,e,r-n.w_size,n.w_size,0),e=l,r=n.w_size),a=t.avail_in,f=t.next_in,c=t.input,t.avail_in=r,t.next_in=0,t.input=e,Re(n);n.lookahead>=G;){o=n.strstart,s=n.lookahead-(G-1);do n.ins_h=(n.ins_h<<n.hash_shift^n.window[o+G-1])&n.hash_mask,n.prev[o&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=o,o++;while(--s);n.strstart=o,n.lookahead=G-1,Re(n)}return n.strstart+=n.lookahead,n.block_start=n.strstart,n.insert=n.lookahead,n.lookahead=0,n.match_length=n.prev_length=G-1,n.match_available=0,t.next_in=f,t.input=c,t.avail_in=a,n.wrap=i,Gt}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 Ns=J($e=>{"use strict";var to=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 Hr=new to.Buf8(256);for(Yt=0;Yt<256;Yt++)Hr[Yt]=Yt>=252?6:Yt>=248?5:Yt>=240?4:Yt>=224?3:Yt>=192?2:1;var Yt;Hr[254]=Hr[254]=1;$e.string2buf=function(t){var e,r,n,o,s,i=t.length,a=0;for(o=0;o<i;o++)r=t.charCodeAt(o),(r&64512)===55296&&o+1<i&&(n=t.charCodeAt(o+1),(n&64512)===56320&&(r=65536+(r-55296<<10)+(n-56320),o++)),a+=r<128?1:r<2048?2:r<65536?3:4;for(e=new to.Buf8(a),s=0,o=0;s<a;o++)r=t.charCodeAt(o),(r&64512)===55296&&o+1<i&&(n=t.charCodeAt(o+1),(n&64512)===56320&&(r=65536+(r-55296<<10)+(n-56320),o++)),r<128?e[s++]=r:r<2048?(e[s++]=192|r>>>6,e[s++]=128|r&63):r<65536?(e[s++]=224|r>>>12,e[s++]=128|r>>>6&63,e[s++]=128|r&63):(e[s++]=240|r>>>18,e[s++]=128|r>>>12&63,e[s++]=128|r>>>6&63,e[s++]=128|r&63);return e};function gf(t,e){if(e<65534&&(t.subarray&&xf||!t.subarray&&Af))return String.fromCharCode.apply(null,to.shrinkBuf(t,e));for(var r="",n=0;n<e;n++)r+=String.fromCharCode(t[n]);return r}$e.buf2binstring=function(t){return gf(t,t.length)};$e.binstring2buf=function(t){for(var e=new to.Buf8(t.length),r=0,n=e.length;r<n;r++)e[r]=t.charCodeAt(r);return e};$e.buf2string=function(t,e){var r,n,o,s,i=e||t.length,a=new Array(i*2);for(n=0,r=0;r<i;){if(o=t[r++],o<128){a[n++]=o;continue}if(s=Hr[o],s>4){a[n++]=65533,r+=s-1;continue}for(o&=s===2?31:s===3?15:7;s>1&&r<i;)o=o<<6|t[r++]&63,s--;if(s>1){a[n++]=65533;continue}o<65536?a[n++]=o:(o-=65536,a[n++]=55296|o>>10&1023,a[n++]=56320|o&1023)}return gf(a,n)};$e.utf8border=function(t,e){var r;for(e=e||t.length,e>t.length&&(e=t.length),r=e-1;r>=0&&(t[r]&192)===128;)r--;return r<0||r===0?e:r+Hr[t[r]]>e?r:e}});var Ps=J((kR,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(Wr=>{"use strict";var Vr=mf(),Xr=Zt(),Us=Ns(),ks=qn(),Yu=Ps(),Tf=Object.prototype.toString,ju=0,Fs=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=Xr.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 r=Vr.deflateInit2(this.strm,e.level,e.method,e.windowBits,e.memLevel,e.strategy);if(r!==Je)throw new Error(ks[r]);if(e.header&&Vr.deflateSetHeader(this.strm,e.header),e.dictionary){var n;if(typeof e.dictionary=="string"?n=Us.string2buf(e.dictionary):Tf.call(e.dictionary)==="[object ArrayBuffer]"?n=new Uint8Array(e.dictionary):n=e.dictionary,r=Vr.deflateSetDictionary(this.strm,n),r!==Je)throw new Error(ks[r]);this._dict_set=!0}}Me.prototype.push=function(t,e){var r=this.strm,n=this.options.chunkSize,o,s;if(this.ended)return!1;s=e===~~e?e:e===!0?Fs:ju,typeof t=="string"?r.input=Us.string2buf(t):Tf.call(t)==="[object ArrayBuffer]"?r.input=new Uint8Array(t):r.input=t,r.next_in=0,r.avail_in=r.input.length;do{if(r.avail_out===0&&(r.output=new Xr.Buf8(n),r.next_out=0,r.avail_out=n),o=Vr.deflate(r,s),o!==Sf&&o!==Je)return this.onEnd(o),this.ended=!0,!1;(r.avail_out===0||r.avail_in===0&&(s===Fs||s===Rf))&&(this.options.to==="string"?this.onData(Us.buf2binstring(Xr.shrinkBuf(r.output,r.next_out))):this.onData(Xr.shrinkBuf(r.output,r.next_out)))}while((r.avail_in>0||r.avail_out===0)&&o!==Sf);return s===Fs?(o=Vr.deflateEnd(this.strm),this.onEnd(o),this.ended=!0,o===Je):(s===Rf&&(this.onEnd(Je),r.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=Xr.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};function Gs(t,e){var r=new Me(e);if(r.push(t,!0),r.err)throw r.msg||ks[r.err];return r.result}function ep(t,e){return e=e||{},e.raw=!0,Gs(t,e)}function rp(t,e){return e=e||{},e.gzip=!0,Gs(t,e)}Wr.Deflate=Me;Wr.deflate=Gs;Wr.deflateRaw=ep;Wr.gzip=rp});var wf=J((zR,yf)=>{"use strict";var eo=30,np=12;yf.exports=function(e,r){var n,o,s,i,a,f,c,l,d,_,h,u,A,p,S,y,B,T,R,D,I,L,x,m,g;n=e.state,o=e.next_in,m=e.input,s=o+(e.avail_in-5),i=e.next_out,g=e.output,a=i-(r-e.avail_out),f=i+(e.avail_out-257),c=n.dmax,l=n.wsize,d=n.whave,_=n.wnext,h=n.window,u=n.hold,A=n.bits,p=n.lencode,S=n.distcode,y=(1<<n.lenbits)-1,B=(1<<n.distbits)-1;t:do{A<15&&(u+=m[o++]<<A,A+=8,u+=m[o++]<<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[o++]<<A,A+=8),D+=u&(1<<R)-1,u>>>=R,A-=R),A<15&&(u+=m[o++]<<A,A+=8,u+=m[o++]<<A,A+=8),T=S[u&B];r: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[o++]<<A,A+=8,A<R&&(u+=m[o++]<<A,A+=8)),I+=u&(1<<R)-1,I>c){e.msg="invalid distance too far back",n.mode=eo;break t}if(u>>>=R,A-=R,R=i-a,I>R){if(R=I-R,R>d&&n.sane){e.msg="invalid distance too far back",n.mode=eo;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",n.mode=eo;break t}else{T=S[(T&65535)+(u&(1<<R)-1)];continue r}break}}else if(R&64)if(R&32){n.mode=np;break t}else{e.msg="invalid literal/length code",n.mode=eo;break t}else{T=p[(T&65535)+(u&(1<<R)-1)];continue e}break}}while(o<s&&i<f);D=A>>3,o-=D,A-=D<<3,u&=(1<<A)-1,e.next_in=o,e.next_out=i,e.avail_in=o<s?5+(s-o):5-(o-s),e.avail_out=i<f?257+(f-i):257-(i-f),n.hold=u,n.bits=A}});var vf=J((KR,If)=>{"use strict";var Of=Zt(),tr=15,bf=852,Cf=592,Bf=0,zs=1,Df=2,op=[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],sp=[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,r,n,o,s,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(tr+1),U=new Of.Buf16(tr+1),F=null,k=0,N,j,nt;for(l=0;l<=tr;l++)E[l]=0;for(d=0;d<o;d++)E[r[n+d]]++;for(u=c,h=tr;h>=1&&E[h]===0;h--);if(u>h&&(u=h),h===0)return s[i++]=1<<24|64<<16|0,s[i++]=1<<24|64<<16|0,f.bits=1,0;for(_=1;_<h&&E[_]===0;_++);for(u<_&&(u=_),S=1,l=1;l<=tr;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<tr;l++)U[l+1]=U[l]+E[l];for(d=0;d<o;d++)r[n+d]!==0&&(a[U[r[n+d]]++]=d);if(e===Bf?(x=F=a,g=19):e===zs?(x=op,m-=257,F=sp,k-=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===zs&&y>bf||e===Df&&y>Cf)return 1;for(;;){N=l-p,a[d]<g?(j=0,nt=a[d]):a[d]>g?(j=F[k+a[d]],nt=x[m+a[d]]):(j=32+64,nt=0),T=1<<l-p,R=1<<A,_=R;do R-=T,s[L+(B>>p)+R]=N<<24|j<<16|nt|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=r[n+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===zs&&y>bf||e===Df&&y>Cf)return 1;D=B&I,s[D]=u<<24|A<<16|L-i|0}}return B!==0&&(s[L+B]=l-p<<24|64<<16|0),f.bits=u,0}});var ul=J(wt=>{"use strict";var mt=Zt(),qs=Cs(),Kt=Bs(),cp=wf(),qr=vf(),fp=0,sl=1,il=2,Lf=4,lp=5,ro=6,ye=0,hp=1,_p=2,Tt=-2,al=-3,Zs=-4,dp=-5,Nf=8,cl=1,Pf=2,Ff=3,Uf=4,kf=5,Gf=6,zf=7,Kf=8,Hf=9,Vf=10,so=11,jt=12,Ks=13,Xf=14,Hs=15,Wf=16,qf=17,Zf=18,Qf=19,no=20,oo=21,Yf=22,jf=23,$f=24,Jf=25,tl=26,Vs=27,el=28,rl=29,q=30,Qs=31,up=32,pp=852,mp=592,Ap=15,xp=Ap;function nl(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 r,n;return!t||!t.state||(n=t.state,e<0?(r=0,e=-e):(r=(e>>4)+1,e<48&&(e&=15)),e&&(e<8||e>15))?Tt:(n.window!==null&&n.wbits!==e&&(n.window=null),n.wrap=r,n.wbits=e,ll(t))}function _l(t,e){var r,n;return t?(n=new gp,t.state=n,n.window=null,r=hl(t,e),r!==ye&&(t.state=null),r):Tt}function Ep(t){return _l(t,xp)}var ol=!0,Xs,Ws;function Sp(t){if(ol){var e;for(Xs=new mt.Buf32(512),Ws=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(qr(sl,t.lens,0,288,Xs,0,t.work,{bits:9}),e=0;e<32;)t.lens[e++]=5;qr(il,t.lens,0,32,Ws,0,t.work,{bits:5}),ol=!1}t.lencode=Xs,t.lenbits=9,t.distcode=Ws,t.distbits=5}function dl(t,e,r,n){var o,s=t.state;return s.window===null&&(s.wsize=1<<s.wbits,s.wnext=0,s.whave=0,s.window=new mt.Buf8(s.wsize)),n>=s.wsize?(mt.arraySet(s.window,e,r-s.wsize,s.wsize,0),s.wnext=0,s.whave=s.wsize):(o=s.wsize-s.wnext,o>n&&(o=n),mt.arraySet(s.window,e,r-n,o,s.wnext),n-=o,n?(mt.arraySet(s.window,e,r-n,n,0),s.wnext=n,s.whave=s.wsize):(s.wnext+=o,s.wnext===s.wsize&&(s.wnext=0),s.whave<s.wsize&&(s.whave+=o))),0}function Rp(t,e){var r,n,o,s,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;r=t.state,r.mode===jt&&(r.mode=Ks),i=t.next_out,o=t.output,f=t.avail_out,s=t.next_in,n=t.input,a=t.avail_in,c=r.hold,l=r.bits,d=a,_=f,L=ye;t:for(;;)switch(r.mode){case cl:if(r.wrap===0){r.mode=Ks;break}for(;l<16;){if(a===0)break t;a--,c+=n[s++]<<l,l+=8}if(r.wrap&2&&c===35615){r.check=0,x[0]=c&255,x[1]=c>>>8&255,r.check=Kt(r.check,x,2,0),c=0,l=0,r.mode=Pf;break}if(r.flags=0,r.head&&(r.head.done=!1),!(r.wrap&1)||(((c&255)<<8)+(c>>8))%31){t.msg="incorrect header check",r.mode=q;break}if((c&15)!==Nf){t.msg="unknown compression method",r.mode=q;break}if(c>>>=4,l-=4,I=(c&15)+8,r.wbits===0)r.wbits=I;else if(I>r.wbits){t.msg="invalid window size",r.mode=q;break}r.dmax=1<<I,t.adler=r.check=1,r.mode=c&512?Vf:jt,c=0,l=0;break;case Pf:for(;l<16;){if(a===0)break t;a--,c+=n[s++]<<l,l+=8}if(r.flags=c,(r.flags&255)!==Nf){t.msg="unknown compression method",r.mode=q;break}if(r.flags&57344){t.msg="unknown header flags set",r.mode=q;break}r.head&&(r.head.text=c>>8&1),r.flags&512&&(x[0]=c&255,x[1]=c>>>8&255,r.check=Kt(r.check,x,2,0)),c=0,l=0,r.mode=Ff;case Ff:for(;l<32;){if(a===0)break t;a--,c+=n[s++]<<l,l+=8}r.head&&(r.head.time=c),r.flags&512&&(x[0]=c&255,x[1]=c>>>8&255,x[2]=c>>>16&255,x[3]=c>>>24&255,r.check=Kt(r.check,x,4,0)),c=0,l=0,r.mode=Uf;case Uf:for(;l<16;){if(a===0)break t;a--,c+=n[s++]<<l,l+=8}r.head&&(r.head.xflags=c&255,r.head.os=c>>8),r.flags&512&&(x[0]=c&255,x[1]=c>>>8&255,r.check=Kt(r.check,x,2,0)),c=0,l=0,r.mode=kf;case kf:if(r.flags&1024){for(;l<16;){if(a===0)break t;a--,c+=n[s++]<<l,l+=8}r.length=c,r.head&&(r.head.extra_len=c),r.flags&512&&(x[0]=c&255,x[1]=c>>>8&255,r.check=Kt(r.check,x,2,0)),c=0,l=0}else r.head&&(r.head.extra=null);r.mode=Gf;case Gf:if(r.flags&1024&&(h=r.length,h>a&&(h=a),h&&(r.head&&(I=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Array(r.head.extra_len)),mt.arraySet(r.head.extra,n,s,h,I)),r.flags&512&&(r.check=Kt(r.check,n,h,s)),a-=h,s+=h,r.length-=h),r.length))break t;r.length=0,r.mode=zf;case zf:if(r.flags&2048){if(a===0)break t;h=0;do I=n[s+h++],r.head&&I&&r.length<65536&&(r.head.name+=String.fromCharCode(I));while(I&&h<a);if(r.flags&512&&(r.check=Kt(r.check,n,h,s)),a-=h,s+=h,I)break t}else r.head&&(r.head.name=null);r.length=0,r.mode=Kf;case Kf:if(r.flags&4096){if(a===0)break t;h=0;do I=n[s+h++],r.head&&I&&r.length<65536&&(r.head.comment+=String.fromCharCode(I));while(I&&h<a);if(r.flags&512&&(r.check=Kt(r.check,n,h,s)),a-=h,s+=h,I)break t}else r.head&&(r.head.comment=null);r.mode=Hf;case Hf:if(r.flags&512){for(;l<16;){if(a===0)break t;a--,c+=n[s++]<<l,l+=8}if(c!==(r.check&65535)){t.msg="header crc mismatch",r.mode=q;break}c=0,l=0}r.head&&(r.head.hcrc=r.flags>>9&1,r.head.done=!0),t.adler=r.check=0,r.mode=jt;break;case Vf:for(;l<32;){if(a===0)break t;a--,c+=n[s++]<<l,l+=8}t.adler=r.check=nl(c),c=0,l=0,r.mode=so;case so:if(r.havedict===0)return t.next_out=i,t.avail_out=f,t.next_in=s,t.avail_in=a,r.hold=c,r.bits=l,_p;t.adler=r.check=1,r.mode=jt;case jt:if(e===lp||e===ro)break t;case Ks:if(r.last){c>>>=l&7,l-=l&7,r.mode=Vs;break}for(;l<3;){if(a===0)break t;a--,c+=n[s++]<<l,l+=8}switch(r.last=c&1,c>>>=1,l-=1,c&3){case 0:r.mode=Xf;break;case 1:if(Sp(r),r.mode=no,e===ro){c>>>=2,l-=2;break t}break;case 2:r.mode=qf;break;case 3:t.msg="invalid block type",r.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+=n[s++]<<l,l+=8}if((c&65535)!==(c>>>16^65535)){t.msg="invalid stored block lengths",r.mode=q;break}if(r.length=c&65535,c=0,l=0,r.mode=Hs,e===ro)break t;case Hs:r.mode=Wf;case Wf:if(h=r.length,h){if(h>a&&(h=a),h>f&&(h=f),h===0)break t;mt.arraySet(o,n,s,h,i),a-=h,s+=h,f-=h,i+=h,r.length-=h;break}r.mode=jt;break;case qf:for(;l<14;){if(a===0)break t;a--,c+=n[s++]<<l,l+=8}if(r.nlen=(c&31)+257,c>>>=5,l-=5,r.ndist=(c&31)+1,c>>>=5,l-=5,r.ncode=(c&15)+4,c>>>=4,l-=4,r.nlen>286||r.ndist>30){t.msg="too many length or distance symbols",r.mode=q;break}r.have=0,r.mode=Zf;case Zf:for(;r.have<r.ncode;){for(;l<3;){if(a===0)break t;a--,c+=n[s++]<<l,l+=8}r.lens[E[r.have++]]=c&7,c>>>=3,l-=3}for(;r.have<19;)r.lens[E[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,m={bits:r.lenbits},L=qr(fp,r.lens,0,19,r.lencode,0,r.work,m),r.lenbits=m.bits,L){t.msg="invalid code lengths set",r.mode=q;break}r.have=0,r.mode=Qf;case Qf:for(;r.have<r.nlen+r.ndist;){for(;p=r.lencode[c&(1<<r.lenbits)-1],S=p>>>24,y=p>>>16&255,B=p&65535,!(S<=l);){if(a===0)break t;a--,c+=n[s++]<<l,l+=8}if(B<16)c>>>=S,l-=S,r.lens[r.have++]=B;else{if(B===16){for(g=S+2;l<g;){if(a===0)break t;a--,c+=n[s++]<<l,l+=8}if(c>>>=S,l-=S,r.have===0){t.msg="invalid bit length repeat",r.mode=q;break}I=r.lens[r.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+=n[s++]<<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+=n[s++]<<l,l+=8}c>>>=S,l-=S,I=0,h=11+(c&127),c>>>=7,l-=7}if(r.have+h>r.nlen+r.ndist){t.msg="invalid bit length repeat",r.mode=q;break}for(;h--;)r.lens[r.have++]=I}}if(r.mode===q)break;if(r.lens[256]===0){t.msg="invalid code -- missing end-of-block",r.mode=q;break}if(r.lenbits=9,m={bits:r.lenbits},L=qr(sl,r.lens,0,r.nlen,r.lencode,0,r.work,m),r.lenbits=m.bits,L){t.msg="invalid literal/lengths set",r.mode=q;break}if(r.distbits=6,r.distcode=r.distdyn,m={bits:r.distbits},L=qr(il,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,m),r.distbits=m.bits,L){t.msg="invalid distances set",r.mode=q;break}if(r.mode=no,e===ro)break t;case no:r.mode=oo;case oo:if(a>=6&&f>=258){t.next_out=i,t.avail_out=f,t.next_in=s,t.avail_in=a,r.hold=c,r.bits=l,cp(t,_),i=t.next_out,o=t.output,f=t.avail_out,s=t.next_in,n=t.input,a=t.avail_in,c=r.hold,l=r.bits,r.mode===jt&&(r.back=-1);break}for(r.back=0;p=r.lencode[c&(1<<r.lenbits)-1],S=p>>>24,y=p>>>16&255,B=p&65535,!(S<=l);){if(a===0)break t;a--,c+=n[s++]<<l,l+=8}if(y&&!(y&240)){for(T=S,R=y,D=B;p=r.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+=n[s++]<<l,l+=8}c>>>=T,l-=T,r.back+=T}if(c>>>=S,l-=S,r.back+=S,r.length=B,y===0){r.mode=tl;break}if(y&32){r.back=-1,r.mode=jt;break}if(y&64){t.msg="invalid literal/length code",r.mode=q;break}r.extra=y&15,r.mode=Yf;case Yf:if(r.extra){for(g=r.extra;l<g;){if(a===0)break t;a--,c+=n[s++]<<l,l+=8}r.length+=c&(1<<r.extra)-1,c>>>=r.extra,l-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=jf;case jf:for(;p=r.distcode[c&(1<<r.distbits)-1],S=p>>>24,y=p>>>16&255,B=p&65535,!(S<=l);){if(a===0)break t;a--,c+=n[s++]<<l,l+=8}if(!(y&240)){for(T=S,R=y,D=B;p=r.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+=n[s++]<<l,l+=8}c>>>=T,l-=T,r.back+=T}if(c>>>=S,l-=S,r.back+=S,y&64){t.msg="invalid distance code",r.mode=q;break}r.offset=B,r.extra=y&15,r.mode=$f;case $f:if(r.extra){for(g=r.extra;l<g;){if(a===0)break t;a--,c+=n[s++]<<l,l+=8}r.offset+=c&(1<<r.extra)-1,c>>>=r.extra,l-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){t.msg="invalid distance too far back",r.mode=q;break}r.mode=Jf;case Jf:if(f===0)break t;if(h=_-f,r.offset>h){if(h=r.offset-h,h>r.whave&&r.sane){t.msg="invalid distance too far back",r.mode=q;break}h>r.wnext?(h-=r.wnext,u=r.wsize-h):u=r.wnext-h,h>r.length&&(h=r.length),A=r.window}else A=o,u=i-r.offset,h=r.length;h>f&&(h=f),f-=h,r.length-=h;do o[i++]=A[u++];while(--h);r.length===0&&(r.mode=oo);break;case tl:if(f===0)break t;o[i++]=r.length,f--,r.mode=oo;break;case Vs:if(r.wrap){for(;l<32;){if(a===0)break t;a--,c|=n[s++]<<l,l+=8}if(_-=f,t.total_out+=_,r.total+=_,_&&(t.adler=r.check=r.flags?Kt(r.check,o,_,i-_):qs(r.check,o,_,i-_)),_=f,(r.flags?c:nl(c))!==r.check){t.msg="incorrect data check",r.mode=q;break}c=0,l=0}r.mode=el;case el:if(r.wrap&&r.flags){for(;l<32;){if(a===0)break t;a--,c+=n[s++]<<l,l+=8}if(c!==(r.total&4294967295)){t.msg="incorrect length check",r.mode=q;break}c=0,l=0}r.mode=rl;case rl:L=hp;break t;case q:L=al;break t;case Qs:return Zs;case up:default:return Tt}return t.next_out=i,t.avail_out=f,t.next_in=s,t.avail_in=a,r.hold=c,r.bits=l,(r.wsize||_!==t.avail_out&&r.mode<q&&(r.mode<Vs||e!==Lf))&&dl(t,t.output,t.next_out,_-t.avail_out)?(r.mode=Qs,Zs):(d-=t.avail_in,_-=t.avail_out,t.total_in+=d,t.total_out+=_,r.total+=_,r.wrap&&_&&(t.adler=r.check=r.flags?Kt(r.check,o,_,t.next_out-_):qs(r.check,o,_,t.next_out-_)),t.data_type=r.bits+(r.last?64:0)+(r.mode===jt?128:0)+(r.mode===no||r.mode===Hs?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 r;return!t||!t.state||(r=t.state,!(r.wrap&2))?Tt:(r.head=e,e.done=!1,ye)}function yp(t,e){var r=e.length,n,o,s;return!t||!t.state||(n=t.state,n.wrap!==0&&n.mode!==so)?Tt:n.mode===so&&(o=1,o=qs(o,e,r,0),o!==n.check)?al:(s=dl(t,e,r,r),s?(n.mode=Qs,Zs):(n.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 Ys=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(Qr=>{"use strict";var er=ul(),Zr=Zt(),io=Ns(),Q=Ys(),js=qn(),Op=Ps(),bp=Al(),xl=Object.prototype.toString;function we(t){if(!(this instanceof we))return new we(t);this.options=Zr.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 r=er.inflateInit2(this.strm,e.windowBits);if(r!==Q.Z_OK)throw new Error(js[r]);if(this.header=new bp,er.inflateGetHeader(this.strm,this.header),e.dictionary&&(typeof e.dictionary=="string"?e.dictionary=io.string2buf(e.dictionary):xl.call(e.dictionary)==="[object ArrayBuffer]"&&(e.dictionary=new Uint8Array(e.dictionary)),e.raw&&(r=er.inflateSetDictionary(this.strm,e.dictionary),r!==Q.Z_OK)))throw new Error(js[r])}we.prototype.push=function(t,e){var r=this.strm,n=this.options.chunkSize,o=this.options.dictionary,s,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"?r.input=io.binstring2buf(t):xl.call(t)==="[object ArrayBuffer]"?r.input=new Uint8Array(t):r.input=t,r.next_in=0,r.avail_in=r.input.length;do{if(r.avail_out===0&&(r.output=new Zr.Buf8(n),r.next_out=0,r.avail_out=n),s=er.inflate(r,Q.Z_NO_FLUSH),s===Q.Z_NEED_DICT&&o&&(s=er.inflateSetDictionary(this.strm,o)),s===Q.Z_BUF_ERROR&&l===!0&&(s=Q.Z_OK,l=!1),s!==Q.Z_STREAM_END&&s!==Q.Z_OK)return this.onEnd(s),this.ended=!0,!1;r.next_out&&(r.avail_out===0||s===Q.Z_STREAM_END||r.avail_in===0&&(i===Q.Z_FINISH||i===Q.Z_SYNC_FLUSH))&&(this.options.to==="string"?(a=io.utf8border(r.output,r.next_out),f=r.next_out-a,c=io.buf2string(r.output,a),r.next_out=f,r.avail_out=n-f,f&&Zr.arraySet(r.output,r.output,a,f,0),this.onData(c)):this.onData(Zr.shrinkBuf(r.output,r.next_out))),r.avail_in===0&&r.avail_out===0&&(l=!0)}while((r.avail_in>0||r.avail_out===0)&&s!==Q.Z_STREAM_END);return s===Q.Z_STREAM_END&&(i=Q.Z_FINISH),i===Q.Z_FINISH?(s=er.inflateEnd(this.strm),this.onEnd(s),this.ended=!0,s===Q.Z_OK):(i===Q.Z_SYNC_FLUSH&&(this.onEnd(Q.Z_OK),r.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=Zr.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};function $s(t,e){var r=new we(e);if(r.push(t,!0),r.err)throw r.msg||js[r.err];return r.result}function Cp(t,e){return e=e||{},e.raw=!0,$s(t,e)}Qr.Inflate=we;Qr.inflate=$s;Qr.inflateRaw=Cp;Qr.ungzip=$s});var Rl=J((qR,Sl)=>{"use strict";var Bp=Zt().assign,Dp=Mf(),Ip=gl(),vp=Ys(),El={};Bp(El,Dp,Ip,vp);Sl.exports=El});var Tl=J(()=>{});var Jr={};on(Jr,{ArcGISWebSceneLoader:()=>Pl,COORDINATE_SYSTEM:()=>Dt,I3SAttributeLoader:()=>jr,I3SBuildingSceneLayerLoader:()=>Il,I3SContentLoader:()=>Pn,I3SLoader:()=>Br,I3SNodePageLoader:()=>Gn,LayerError:()=>$r,SLPKArchive:()=>rr,SLPKLoader:()=>Ml,customizeColors:()=>kl,loadFeatureAttributes:()=>Cl,parseSLPKArchive:()=>co});sn(Jr,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};var Ql=1/Math.PI*180,Yl=1/180*Math.PI,jl={EPSILON:1e-12,debug:!1,precision:4,printTypes:!1,printDegrees:!1,printRowMajor:!0,_cartographicRadians:!1};globalThis.mathgl=globalThis.mathgl||{config:{...jl}};var X=globalThis.mathgl.config;function ho(t,{precision:e=X.precision}={}){return t=$l(t),`${parseFloat(t.toPrecision(e))}`}function Bt(t){return Array.isArray(t)||ArrayBuffer.isView(t)&&!(t instanceof DataView)}function _o(t){return ai(t)}function uo(t){return ci(t)}function ai(t,e){return fi(t,r=>r*Yl,e)}function ci(t,e){return fi(t,r=>r*Ql,e)}function _t(t,e,r){let n=X.EPSILON;r&&(X.EPSILON=r);try{if(t===e)return!0;if(Bt(t)&&Bt(e)){if(t.length!==e.length)return!1;for(let o=0;o<t.length;++o)if(!_t(t[o],e[o]))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=n}}function $l(t){return Math.round(t/X.EPSILON)*X.EPSILON}function Jl(t){return t.clone?t.clone():new Array(t.length)}function fi(t,e,r){if(Bt(t)){let n=t;r=r||Jl(n);for(let o=0;o<r.length&&o<n.length;++o){let s=typeof t=="number"?t:t[o];r[o]=e(s,o,r)}return r}return e(t)}var Jt=class extends Array{clone(){return new this.constructor().copy(this)}fromArray(e,r=0){for(let n=0;n<this.ELEMENTS;++n)this[n]=e[n+r];return this.check()}toArray(e=[],r=0){for(let n=0;n<this.ELEMENTS;++n)e[r+n]=this[n];return e}toObject(e){return e}from(e){return Array.isArray(e)?this.copy(e):this.fromObject(e)}to(e){return e===this?this:Bt(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 r="";for(let n=0;n<this.ELEMENTS;++n)r+=(n>0?", ":"")+ho(this[n],e);return`${e.printTypes?this.constructor.name:""}[${r}]`}equals(e){if(!e||this.length!==e.length)return!1;for(let r=0;r<this.ELEMENTS;++r)if(!_t(this[r],e[r]))return!1;return!0}exactEquals(e){if(!e||this.length!==e.length)return!1;for(let r=0;r<this.ELEMENTS;++r)if(this[r]!==e[r])return!1;return!0}negate(){for(let e=0;e<this.ELEMENTS;++e)this[e]=-this[e];return this.check()}lerp(e,r,n){if(n===void 0)return this.lerp(this,e,r);for(let o=0;o<this.ELEMENTS;++o){let s=e[o],i=typeof r=="number"?r:r[o];this[o]=s+n*(i-s)}return this.check()}min(e){for(let r=0;r<this.ELEMENTS;++r)this[r]=Math.min(e[r],this[r]);return this.check()}max(e){for(let r=0;r<this.ELEMENTS;++r)this[r]=Math.max(e[r],this[r]);return this.check()}clamp(e,r){for(let n=0;n<this.ELEMENTS;++n)this[n]=Math.min(Math.max(this[n],e[n]),r[n]);return this.check()}add(...e){for(let r of e)for(let n=0;n<this.ELEMENTS;++n)this[n]+=r[n];return this.check()}subtract(...e){for(let r of e)for(let n=0;n<this.ELEMENTS;++n)this[n]-=r[n];return this.check()}scale(e){if(typeof e=="number")for(let r=0;r<this.ELEMENTS;++r)this[r]*=e;else for(let r=0;r<this.ELEMENTS&&r<e.length;++r)this[r]*=e[r];return this.check()}multiplyByScalar(e){for(let r=0;r<this.ELEMENTS;++r)this[r]*=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 r=0;r<this.ELEMENTS;++r)e=e&&Number.isFinite(this[r]);return e}sub(e){return this.subtract(e)}setScalar(e){for(let r=0;r<this.ELEMENTS;++r)this[r]=e;return this.check()}addScalar(e){for(let r=0;r<this.ELEMENTS;++r)this[r]+=e;return this.check()}subScalar(e){return this.addScalar(-e)}multiplyScalar(e){for(let r=0;r<this.ELEMENTS;++r)this[r]*=e;return this.check()}divideScalar(e){return this.multiplyByScalar(1/e)}clampScalar(e,r){for(let n=0;n<this.ELEMENTS;++n)this[n]=Math.min(Math.max(this[n],e),r);return this.check()}get elements(){return this}};function t0(t,e){if(t.length!==e)return!1;for(let r=0;r<t.length;++r)if(!Number.isFinite(t[r]))return!1;return!0}function z(t){if(!Number.isFinite(t))throw new Error(`Invalid number ${JSON.stringify(t)}`);return t}function te(t,e,r=""){if(X.debug&&!t0(t,e))throw new Error(`math.gl: ${r} some fields set to invalid numbers'`);return t}function tt(t,e){if(!t)throw new Error(`math.gl assertion ${e}`)}var De=class extends Jt{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 r=0;r<this.ELEMENTS;++r)e+=this[r]*this[r];return e}magnitudeSquared(){return this.lengthSquared()}distance(e){return Math.sqrt(this.distanceSquared(e))}distanceSquared(e){let r=0;for(let n=0;n<this.ELEMENTS;++n){let o=this[n]-e[n];r+=o*o}return z(r)}dot(e){let r=0;for(let n=0;n<this.ELEMENTS;++n)r+=this[n]*e[n];return z(r)}normalize(){let e=this.magnitude();if(e!==0)for(let r=0;r<this.ELEMENTS;++r)this[r]/=e;return this.check()}multiply(...e){for(let r of e)for(let n=0;n<this.ELEMENTS;++n)this[n]*=r[n];return this.check()}divide(...e){for(let r of e)for(let n=0;n<this.ELEMENTS;++n)this[n]/=r[n];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,r){return tt(e>=0&&e<this.ELEMENTS,"index is out of range"),this[e]=r,this.check()}addVectors(e,r){return this.copy(e).add(r)}subVectors(e,r){return this.copy(e).subtract(r)}multiplyVectors(e,r){return this.copy(e).multiply(r)}addScaledVector(e,r){return this.add(new this.constructor(e).multiplyScalar(r))}};var W=typeof Float32Array<"u"?Float32Array:Array,or=Math.random;function Ie(t){return t>=0?Math.round(t):t%.5===0?Math.floor(t):Math.round(t)}var ym=Math.PI/180;function e0(){let t=new W(2);return W!=Float32Array&&(t[0]=0,t[1]=0),t}function li(t,e,r){let n=e[0],o=e[1];return t[0]=r[0]*n+r[3]*o+r[6],t[1]=r[1]*n+r[4]*o+r[7],t}function hi(t,e,r){let n=e[0],o=e[1];return t[0]=r[0]*n+r[4]*o+r[12],t[1]=r[1]*n+r[5]*o+r[13],t}var wm=function(){let t=e0();return function(e,r,n,o,s,i){let a,f;for(r||(r=2),n||(n=0),o?f=Math.min(o*r+n,e.length):f=e.length,a=n;a<f;a+=r)t[0]=e[a],t[1]=e[a+1],s(t,t,i),e[a]=t[0],e[a+1]=t[1];return e}}();function _i(t,e,r){let n=e[0],o=e[1],s=r[3]*n+r[7]*o||1;return t[0]=(r[0]*n+r[4]*o)/s,t[1]=(r[1]*n+r[5]*o)/s,t}function an(t,e,r){let n=e[0],o=e[1],s=e[2],i=r[3]*n+r[7]*o+r[11]*s||1;return t[0]=(r[0]*n+r[4]*o+r[8]*s)/i,t[1]=(r[1]*n+r[5]*o+r[9]*s)/i,t[2]=(r[2]*n+r[6]*o+r[10]*s)/i,t}function di(t,e,r){let n=e[0],o=e[1];return t[0]=r[0]*n+r[2]*o,t[1]=r[1]*n+r[3]*o,t[2]=e[2],t}function ui(t,e,r){let n=e[0],o=e[1];return t[0]=r[0]*n+r[2]*o,t[1]=r[1]*n+r[3]*o,t[2]=e[2],t[3]=e[3],t}function cn(t,e,r){let n=e[0],o=e[1],s=e[2];return t[0]=r[0]*n+r[3]*o+r[6]*s,t[1]=r[1]*n+r[4]*o+r[7]*s,t[2]=r[2]*n+r[5]*o+r[8]*s,t[3]=e[3],t}var ue={};on(ue,{add:()=>s0,angle:()=>go,bezier:()=>x0,ceil:()=>i0,clone:()=>r0,copy:()=>n0,create:()=>fn,cross:()=>_e,dist:()=>O0,distance:()=>gi,div:()=>w0,divide:()=>xi,dot:()=>sr,equals:()=>T0,exactEquals:()=>R0,floor:()=>a0,forEach:()=>B0,fromValues:()=>ln,hermite:()=>A0,inverse:()=>u0,len:()=>Eo,length:()=>pi,lerp:()=>p0,max:()=>f0,min:()=>c0,mul:()=>y0,multiply:()=>Ai,negate:()=>d0,normalize:()=>po,random:()=>g0,rotateX:()=>mo,rotateY:()=>Ao,rotateZ:()=>xo,round:()=>l0,scale:()=>h0,scaleAndAdd:()=>_0,set:()=>o0,slerp:()=>m0,sqrDist:()=>b0,sqrLen:()=>C0,squaredDistance:()=>Ei,squaredLength:()=>Si,str:()=>S0,sub:()=>M0,subtract:()=>mi,transformMat3:()=>ir,transformMat4:()=>de,transformQuat:()=>ar,zero:()=>E0});function fn(){let t=new W(3);return W!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0),t}function r0(t){let e=new W(3);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e}function pi(t){let e=t[0],r=t[1],n=t[2];return Math.sqrt(e*e+r*r+n*n)}function ln(t,e,r){let n=new W(3);return n[0]=t,n[1]=e,n[2]=r,n}function n0(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}function o0(t,e,r,n){return t[0]=e,t[1]=r,t[2]=n,t}function s0(t,e,r){return t[0]=e[0]+r[0],t[1]=e[1]+r[1],t[2]=e[2]+r[2],t}function mi(t,e,r){return t[0]=e[0]-r[0],t[1]=e[1]-r[1],t[2]=e[2]-r[2],t}function Ai(t,e,r){return t[0]=e[0]*r[0],t[1]=e[1]*r[1],t[2]=e[2]*r[2],t}function xi(t,e,r){return t[0]=e[0]/r[0],t[1]=e[1]/r[1],t[2]=e[2]/r[2],t}function i0(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 c0(t,e,r){return t[0]=Math.min(e[0],r[0]),t[1]=Math.min(e[1],r[1]),t[2]=Math.min(e[2],r[2]),t}function f0(t,e,r){return t[0]=Math.max(e[0],r[0]),t[1]=Math.max(e[1],r[1]),t[2]=Math.max(e[2],r[2]),t}function l0(t,e){return t[0]=Ie(e[0]),t[1]=Ie(e[1]),t[2]=Ie(e[2]),t}function h0(t,e,r){return t[0]=e[0]*r,t[1]=e[1]*r,t[2]=e[2]*r,t}function _0(t,e,r,n){return t[0]=e[0]+r[0]*n,t[1]=e[1]+r[1]*n,t[2]=e[2]+r[2]*n,t}function gi(t,e){let r=e[0]-t[0],n=e[1]-t[1],o=e[2]-t[2];return Math.sqrt(r*r+n*n+o*o)}function Ei(t,e){let r=e[0]-t[0],n=e[1]-t[1],o=e[2]-t[2];return r*r+n*n+o*o}function Si(t){let e=t[0],r=t[1],n=t[2];return e*e+r*r+n*n}function d0(t,e){return t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t}function u0(t,e){return t[0]=1/e[0],t[1]=1/e[1],t[2]=1/e[2],t}function po(t,e){let r=e[0],n=e[1],o=e[2],s=r*r+n*n+o*o;return s>0&&(s=1/Math.sqrt(s)),t[0]=e[0]*s,t[1]=e[1]*s,t[2]=e[2]*s,t}function sr(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}function _e(t,e,r){let n=e[0],o=e[1],s=e[2],i=r[0],a=r[1],f=r[2];return t[0]=o*f-s*a,t[1]=s*i-n*f,t[2]=n*a-o*i,t}function p0(t,e,r,n){let o=e[0],s=e[1],i=e[2];return t[0]=o+n*(r[0]-o),t[1]=s+n*(r[1]-s),t[2]=i+n*(r[2]-i),t}function m0(t,e,r,n){let o=Math.acos(Math.min(Math.max(sr(e,r),-1),1)),s=Math.sin(o),i=Math.sin((1-n)*o)/s,a=Math.sin(n*o)/s;return t[0]=i*e[0]+a*r[0],t[1]=i*e[1]+a*r[1],t[2]=i*e[2]+a*r[2],t}function A0(t,e,r,n,o,s){let i=s*s,a=i*(2*s-3)+1,f=i*(s-2)+s,c=i*(s-1),l=i*(3-2*s);return t[0]=e[0]*a+r[0]*f+n[0]*c+o[0]*l,t[1]=e[1]*a+r[1]*f+n[1]*c+o[1]*l,t[2]=e[2]*a+r[2]*f+n[2]*c+o[2]*l,t}function x0(t,e,r,n,o,s){let i=1-s,a=i*i,f=s*s,c=a*i,l=3*s*a,d=3*f*i,_=f*s;return t[0]=e[0]*c+r[0]*l+n[0]*d+o[0]*_,t[1]=e[1]*c+r[1]*l+n[1]*d+o[1]*_,t[2]=e[2]*c+r[2]*l+n[2]*d+o[2]*_,t}function g0(t,e){e=e===void 0?1:e;let r=or()*2*Math.PI,n=or()*2-1,o=Math.sqrt(1-n*n)*e;return t[0]=Math.cos(r)*o,t[1]=Math.sin(r)*o,t[2]=n*e,t}function de(t,e,r){let n=e[0],o=e[1],s=e[2],i=r[3]*n+r[7]*o+r[11]*s+r[15];return i=i||1,t[0]=(r[0]*n+r[4]*o+r[8]*s+r[12])/i,t[1]=(r[1]*n+r[5]*o+r[9]*s+r[13])/i,t[2]=(r[2]*n+r[6]*o+r[10]*s+r[14])/i,t}function ir(t,e,r){let n=e[0],o=e[1],s=e[2];return t[0]=n*r[0]+o*r[3]+s*r[6],t[1]=n*r[1]+o*r[4]+s*r[7],t[2]=n*r[2]+o*r[5]+s*r[8],t}function ar(t,e,r){let n=r[0],o=r[1],s=r[2],i=r[3],a=e[0],f=e[1],c=e[2],l=o*c-s*f,d=s*a-n*c,_=n*f-o*a,h=o*_-s*d,u=s*l-n*_,A=n*d-o*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 mo(t,e,r,n){let o=[],s=[];return o[0]=e[0]-r[0],o[1]=e[1]-r[1],o[2]=e[2]-r[2],s[0]=o[0],s[1]=o[1]*Math.cos(n)-o[2]*Math.sin(n),s[2]=o[1]*Math.sin(n)+o[2]*Math.cos(n),t[0]=s[0]+r[0],t[1]=s[1]+r[1],t[2]=s[2]+r[2],t}function Ao(t,e,r,n){let o=[],s=[];return o[0]=e[0]-r[0],o[1]=e[1]-r[1],o[2]=e[2]-r[2],s[0]=o[2]*Math.sin(n)+o[0]*Math.cos(n),s[1]=o[1],s[2]=o[2]*Math.cos(n)-o[0]*Math.sin(n),t[0]=s[0]+r[0],t[1]=s[1]+r[1],t[2]=s[2]+r[2],t}function xo(t,e,r,n){let o=[],s=[];return o[0]=e[0]-r[0],o[1]=e[1]-r[1],o[2]=e[2]-r[2],s[0]=o[0]*Math.cos(n)-o[1]*Math.sin(n),s[1]=o[0]*Math.sin(n)+o[1]*Math.cos(n),s[2]=o[2],t[0]=s[0]+r[0],t[1]=s[1]+r[1],t[2]=s[2]+r[2],t}function go(t,e){let r=t[0],n=t[1],o=t[2],s=e[0],i=e[1],a=e[2],f=Math.sqrt((r*r+n*n+o*o)*(s*s+i*i+a*a)),c=f&&sr(t,e)/f;return Math.acos(Math.min(Math.max(c,-1),1))}function E0(t){return t[0]=0,t[1]=0,t[2]=0,t}function S0(t){return`vec3(${t[0]}, ${t[1]}, ${t[2]})`}function R0(t,e){return t[0]===e[0]&&t[1]===e[1]&&t[2]===e[2]}function T0(t,e){let r=t[0],n=t[1],o=t[2],s=e[0],i=e[1],a=e[2];return Math.abs(r-s)<=1e-6*Math.max(1,Math.abs(r),Math.abs(s))&&Math.abs(n-i)<=1e-6*Math.max(1,Math.abs(n),Math.abs(i))&&Math.abs(o-a)<=1e-6*Math.max(1,Math.abs(o),Math.abs(a))}var M0=mi,y0=Ai,w0=xi,O0=gi,b0=Ei,Eo=pi,C0=Si,B0=function(){let t=fn();return function(e,r,n,o,s,i){let a,f;for(r||(r=3),n||(n=0),o?f=Math.min(o*r+n,e.length):f=e.length,a=n;a<f;a+=r)t[0]=e[a],t[1]=e[a+1],t[2]=e[a+2],s(t,t,i),e[a]=t[0],e[a+1]=t[1],e[a+2]=t[2];return e}}();var So=[0,0,0],hn,v=class extends De{static get ZERO(){return hn||(hn=new v(0,0,0),Object.freeze(hn)),hn}constructor(e=0,r=0,n=0){super(-0,-0,-0),arguments.length===1&&Bt(e)?this.copy(e):(X.debug&&(z(e),z(r),z(n)),this[0]=e,this[1]=r,this[2]=n)}set(e,r,n){return this[0]=e,this[1]=r,this[2]=n,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 go(this,e)}cross(e){return _e(this,this,e),this.check()}rotateX({radians:e,origin:r=So}){return mo(this,this,r,e),this.check()}rotateY({radians:e,origin:r=So}){return Ao(this,this,r,e),this.check()}rotateZ({radians:e,origin:r=So}){return xo(this,this,r,e),this.check()}transform(e){return this.transformAsPoint(e)}transformAsPoint(e){return de(this,this,e),this.check()}transformAsVector(e){return an(this,this,e),this.check()}transformByMatrix3(e){return ir(this,this,e),this.check()}transformByMatrix2(e){return di(this,this,e),this.check()}transformByQuaternion(e){return ar(this,this,e),this.check()}};var _n,Le=class extends De{static get ZERO(){return _n||(_n=new Le(0,0,0,0),Object.freeze(_n)),_n}constructor(e=0,r=0,n=0,o=0){super(-0,-0,-0,-0),Bt(e)&&arguments.length===1?this.copy(e):(X.debug&&(z(e),z(r),z(n),z(o)),this[0]=e,this[1]=r,this[2]=n,this[3]=o)}set(e,r,n,o){return this[0]=e,this[1]=r,this[2]=n,this[3]=o,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 de(this,this,e),this.check()}transformByMatrix3(e){return cn(this,this,e),this.check()}transformByMatrix2(e){return ui(this,this,e),this.check()}transformByQuaternion(e){return ar(this,this,e),this.check()}applyMatrix4(e){return e.transform(this,this),this}};var Ne=class extends Jt{toString(){let e="[";if(X.printRowMajor){e+="row-major:";for(let r=0;r<this.RANK;++r)for(let n=0;n<this.RANK;++n)e+=` ${this[n*this.RANK+r]}`}else{e+="column-major:";for(let r=0;r<this.ELEMENTS;++r)e+=` ${this[r]}`}return e+="]",e}getElementIndex(e,r){return r*this.RANK+e}getElement(e,r){return this[r*this.RANK+e]}setElement(e,r,n){return this[r*this.RANK+e]=z(n),this}getColumn(e,r=new Array(this.RANK).fill(-0)){let n=e*this.RANK;for(let o=0;o<this.RANK;++o)r[o]=this[n+o];return r}setColumn(e,r){let n=e*this.RANK;for(let o=0;o<this.RANK;++o)this[n+o]=r[o];return this}};function Ri(){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 Ti(t,e){if(t===e){let r=e[1],n=e[2],o=e[5];t[1]=e[3],t[2]=e[6],t[3]=r,t[5]=e[7],t[6]=n,t[7]=o}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 Mi(t,e){let r=e[0],n=e[1],o=e[2],s=e[3],i=e[4],a=e[5],f=e[6],c=e[7],l=e[8],d=l*i-a*c,_=-l*s+a*f,h=c*s-i*f,u=r*d+n*_+o*h;return u?(u=1/u,t[0]=d*u,t[1]=(-l*n+o*c)*u,t[2]=(a*n-o*i)*u,t[3]=_*u,t[4]=(l*r-o*f)*u,t[5]=(-a*r+o*s)*u,t[6]=h*u,t[7]=(-c*r+n*f)*u,t[8]=(i*r-n*s)*u,t):null}function yi(t){let e=t[0],r=t[1],n=t[2],o=t[3],s=t[4],i=t[5],a=t[6],f=t[7],c=t[8];return e*(c*s-i*f)+r*(-c*o+i*a)+n*(f*o-s*a)}function Ro(t,e,r){let n=e[0],o=e[1],s=e[2],i=e[3],a=e[4],f=e[5],c=e[6],l=e[7],d=e[8],_=r[0],h=r[1],u=r[2],A=r[3],p=r[4],S=r[5],y=r[6],B=r[7],T=r[8];return t[0]=_*n+h*i+u*c,t[1]=_*o+h*a+u*l,t[2]=_*s+h*f+u*d,t[3]=A*n+p*i+S*c,t[4]=A*o+p*a+S*l,t[5]=A*s+p*f+S*d,t[6]=y*n+B*i+T*c,t[7]=y*o+B*a+T*l,t[8]=y*s+B*f+T*d,t}function wi(t,e,r){let n=e[0],o=e[1],s=e[2],i=e[3],a=e[4],f=e[5],c=e[6],l=e[7],d=e[8],_=r[0],h=r[1];return t[0]=n,t[1]=o,t[2]=s,t[3]=i,t[4]=a,t[5]=f,t[6]=_*n+h*i+c,t[7]=_*o+h*a+l,t[8]=_*s+h*f+d,t}function Oi(t,e,r){let n=e[0],o=e[1],s=e[2],i=e[3],a=e[4],f=e[5],c=e[6],l=e[7],d=e[8],_=Math.sin(r),h=Math.cos(r);return t[0]=h*n+_*i,t[1]=h*o+_*a,t[2]=h*s+_*f,t[3]=h*i-_*n,t[4]=h*a-_*o,t[5]=h*f-_*s,t[6]=c,t[7]=l,t[8]=d,t}function To(t,e,r){let n=r[0],o=r[1];return t[0]=n*e[0],t[1]=n*e[1],t[2]=n*e[2],t[3]=o*e[3],t[4]=o*e[4],t[5]=o*e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t}function bi(t,e){let r=e[0],n=e[1],o=e[2],s=e[3],i=r+r,a=n+n,f=o+o,c=r*i,l=n*i,d=n*a,_=o*i,h=o*a,u=o*f,A=s*i,p=s*a,S=s*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 Mo;(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"})(Mo||(Mo={}));var I0=Object.freeze([1,0,0,0,1,0,0,0,1]),Y=class extends Ne{static get IDENTITY(){return L0()}static get ZERO(){return v0()}get ELEMENTS(){return 9}get RANK(){return 3}get INDICES(){return Mo}constructor(e,...r){super(-0,-0,-0,-0,-0,-0,-0,-0,-0),arguments.length===1&&Array.isArray(e)?this.copy(e):r.length>0?this.copy([e,...r]):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(I0)}fromObject(e){return this.check()}fromQuaternion(e){return bi(this,e),this.check()}set(e,r,n,o,s,i,a,f,c){return this[0]=e,this[1]=r,this[2]=n,this[3]=o,this[4]=s,this[5]=i,this[6]=a,this[7]=f,this[8]=c,this.check()}setRowMajor(e,r,n,o,s,i,a,f,c){return this[0]=e,this[1]=o,this[2]=a,this[3]=r,this[4]=s,this[5]=f,this[6]=n,this[7]=i,this[8]=c,this.check()}determinant(){return yi(this)}transpose(){return Ti(this,this),this.check()}invert(){return Mi(this,this),this.check()}multiplyLeft(e){return Ro(this,e,this),this.check()}multiplyRight(e){return Ro(this,this,e),this.check()}rotate(e){return Oi(this,this,e),this.check()}scale(e){return Array.isArray(e)?To(this,this,e):To(this,this,[e,e]),this.check()}translate(e){return wi(this,this,e),this.check()}transform(e,r){let n;switch(e.length){case 2:n=li(r||[-0,-0],e,this);break;case 3:n=ir(r||[-0,-0,-0],e,this);break;case 4:n=cn(r||[-0,-0,-0,-0],e,this);break;default:throw new Error("Illegal vector")}return te(n,e.length),n}transformVector(e,r){return this.transform(e,r)}transformVector2(e,r){return this.transform(e,r)}transformVector3(e,r){return this.transform(e,r)}},dn,un=null;function v0(){return dn||(dn=new Y([0,0,0,0,0,0,0,0,0]),Object.freeze(dn)),dn}function L0(){return un||(un=new Y,Object.freeze(un)),un}var fr={};on(fr,{add:()=>sh,adjoint:()=>G0,clone:()=>P0,copy:()=>F0,create:()=>N0,decompose:()=>Y0,determinant:()=>Oo,equals:()=>fh,exactEquals:()=>ch,frob:()=>oh,fromQuat:()=>Lo,fromQuat2:()=>q0,fromRotation:()=>H0,fromRotationTranslation:()=>Bi,fromRotationTranslationScale:()=>j0,fromRotationTranslationScaleOrigin:()=>$0,fromScaling:()=>K0,fromTranslation:()=>z0,fromValues:()=>U0,fromXRotation:()=>V0,fromYRotation:()=>X0,fromZRotation:()=>W0,frustum:()=>No,getRotation:()=>Q0,getScaling:()=>Di,getTranslation:()=>Z0,identity:()=>Ci,invert:()=>wo,lookAt:()=>Uo,mul:()=>lh,multiply:()=>cr,multiplyScalar:()=>ih,multiplyScalarAndAdd:()=>ah,ortho:()=>Fo,orthoNO:()=>vi,orthoZO:()=>eh,perspective:()=>Po,perspectiveFromFieldOfView:()=>th,perspectiveNO:()=>Ii,perspectiveZO:()=>J0,rotate:()=>Bo,rotateX:()=>Do,rotateY:()=>Io,rotateZ:()=>vo,scale:()=>Co,set:()=>k0,str:()=>nh,sub:()=>hh,subtract:()=>Li,targetTo:()=>rh,translate:()=>bo,transpose:()=>yo});function N0(){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 P0(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 F0(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 U0(t,e,r,n,o,s,i,a,f,c,l,d,_,h,u,A){let p=new W(16);return p[0]=t,p[1]=e,p[2]=r,p[3]=n,p[4]=o,p[5]=s,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 k0(t,e,r,n,o,s,i,a,f,c,l,d,_,h,u,A,p){return t[0]=e,t[1]=r,t[2]=n,t[3]=o,t[4]=s,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 Ci(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 yo(t,e){if(t===e){let r=e[1],n=e[2],o=e[3],s=e[6],i=e[7],a=e[11];t[1]=e[4],t[2]=e[8],t[3]=e[12],t[4]=r,t[6]=e[9],t[7]=e[13],t[8]=n,t[9]=s,t[11]=e[14],t[12]=o,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 wo(t,e){let r=e[0],n=e[1],o=e[2],s=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=r*a-n*i,B=r*f-o*i,T=r*c-s*i,R=n*f-o*a,D=n*c-s*a,I=o*c-s*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]=(o*E-n*U-s*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]=(r*U-o*m+s*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]=(n*m-r*E-s*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]=(r*g-n*x+o*L)*F,t[14]=(A*B-u*R-p*y)*F,t[15]=(l*R-d*B+_*y)*F,t):null}function G0(t,e){let r=e[0],n=e[1],o=e[2],s=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=r*a-n*i,B=r*f-o*i,T=r*c-s*i,R=n*f-o*a,D=n*c-s*a,I=o*c-s*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]=o*E-n*U-s*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]=r*U-o*m+s*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]=n*m-r*E-s*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]=r*g-n*x+o*L,t[14]=A*B-u*R-p*y,t[15]=l*R-d*B+_*y,t}function Oo(t){let e=t[0],r=t[1],n=t[2],o=t[3],s=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-r*s,y=e*a-n*s,B=r*a-n*i,T=c*u-l*h,R=c*A-d*h,D=l*A-d*u,I=e*D-r*R+n*T,L=s*D-i*R+a*T,x=c*B-l*y+d*S,m=h*B-u*y+A*S;return f*I-o*L+p*x-_*m}function cr(t,e,r){let n=e[0],o=e[1],s=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=r[0],T=r[1],R=r[2],D=r[3];return t[0]=B*n+T*a+R*d+D*A,t[1]=B*o+T*f+R*_+D*p,t[2]=B*s+T*c+R*h+D*S,t[3]=B*i+T*l+R*u+D*y,B=r[4],T=r[5],R=r[6],D=r[7],t[4]=B*n+T*a+R*d+D*A,t[5]=B*o+T*f+R*_+D*p,t[6]=B*s+T*c+R*h+D*S,t[7]=B*i+T*l+R*u+D*y,B=r[8],T=r[9],R=r[10],D=r[11],t[8]=B*n+T*a+R*d+D*A,t[9]=B*o+T*f+R*_+D*p,t[10]=B*s+T*c+R*h+D*S,t[11]=B*i+T*l+R*u+D*y,B=r[12],T=r[13],R=r[14],D=r[15],t[12]=B*n+T*a+R*d+D*A,t[13]=B*o+T*f+R*_+D*p,t[14]=B*s+T*c+R*h+D*S,t[15]=B*i+T*l+R*u+D*y,t}function bo(t,e,r){let n=r[0],o=r[1],s=r[2],i,a,f,c,l,d,_,h,u,A,p,S;return e===t?(t[12]=e[0]*n+e[4]*o+e[8]*s+e[12],t[13]=e[1]*n+e[5]*o+e[9]*s+e[13],t[14]=e[2]*n+e[6]*o+e[10]*s+e[14],t[15]=e[3]*n+e[7]*o+e[11]*s+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*n+l*o+u*s+e[12],t[13]=a*n+d*o+A*s+e[13],t[14]=f*n+_*o+p*s+e[14],t[15]=c*n+h*o+S*s+e[15]),t}function Co(t,e,r){let n=r[0],o=r[1],s=r[2];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]*o,t[5]=e[5]*o,t[6]=e[6]*o,t[7]=e[7]*o,t[8]=e[8]*s,t[9]=e[9]*s,t[10]=e[10]*s,t[11]=e[11]*s,t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}function Bo(t,e,r,n){let o=n[0],s=n[1],i=n[2],a=Math.sqrt(o*o+s*s+i*i),f,c,l,d,_,h,u,A,p,S,y,B,T,R,D,I,L,x,m,g,E,U,F,k;return a<1e-6?null:(a=1/a,o*=a,s*=a,i*=a,c=Math.sin(r),f=Math.cos(r),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=o*o*l+f,L=s*o*l+i*c,x=i*o*l-s*c,m=o*s*l-i*c,g=s*s*l+f,E=i*s*l+o*c,U=o*i*l+s*c,F=s*i*l-o*c,k=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*k,t[9]=_*U+p*F+T*k,t[10]=h*U+S*F+R*k,t[11]=u*U+y*F+D*k,e!==t&&(t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t)}function Do(t,e,r){let n=Math.sin(r),o=Math.cos(r),s=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]=s*o+c*n,t[5]=i*o+l*n,t[6]=a*o+d*n,t[7]=f*o+_*n,t[8]=c*o-s*n,t[9]=l*o-i*n,t[10]=d*o-a*n,t[11]=_*o-f*n,t}function Io(t,e,r){let n=Math.sin(r),o=Math.cos(r),s=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]=s*o-c*n,t[1]=i*o-l*n,t[2]=a*o-d*n,t[3]=f*o-_*n,t[8]=s*n+c*o,t[9]=i*n+l*o,t[10]=a*n+d*o,t[11]=f*n+_*o,t}function vo(t,e,r){let n=Math.sin(r),o=Math.cos(r),s=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]=s*o+c*n,t[1]=i*o+l*n,t[2]=a*o+d*n,t[3]=f*o+_*n,t[4]=c*o-s*n,t[5]=l*o-i*n,t[6]=d*o-a*n,t[7]=_*o-f*n,t}function z0(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 K0(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 H0(t,e,r){let n=r[0],o=r[1],s=r[2],i=Math.sqrt(n*n+o*o+s*s),a,f,c;return i<1e-6?null:(i=1/i,n*=i,o*=i,s*=i,f=Math.sin(e),a=Math.cos(e),c=1-a,t[0]=n*n*c+a,t[1]=o*n*c+s*f,t[2]=s*n*c-o*f,t[3]=0,t[4]=n*o*c-s*f,t[5]=o*o*c+a,t[6]=s*o*c+n*f,t[7]=0,t[8]=n*s*c+o*f,t[9]=o*s*c-n*f,t[10]=s*s*c+a,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t)}function V0(t,e){let r=Math.sin(e),n=Math.cos(e);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=n,t[6]=r,t[7]=0,t[8]=0,t[9]=-r,t[10]=n,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function X0(t,e){let r=Math.sin(e),n=Math.cos(e);return t[0]=n,t[1]=0,t[2]=-r,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=r,t[9]=0,t[10]=n,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function W0(t,e){let r=Math.sin(e),n=Math.cos(e);return t[0]=n,t[1]=r,t[2]=0,t[3]=0,t[4]=-r,t[5]=n,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 Bi(t,e,r){let n=e[0],o=e[1],s=e[2],i=e[3],a=n+n,f=o+o,c=s+s,l=n*a,d=n*f,_=n*c,h=o*f,u=o*c,A=s*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]=r[0],t[13]=r[1],t[14]=r[2],t[15]=1,t}function q0(t,e){let r=new W(3),n=-e[0],o=-e[1],s=-e[2],i=e[3],a=e[4],f=e[5],c=e[6],l=e[7],d=n*n+o*o+s*s+i*i;return d>0?(r[0]=(a*i+l*n+f*s-c*o)*2/d,r[1]=(f*i+l*o+c*n-a*s)*2/d,r[2]=(c*i+l*s+a*o-f*n)*2/d):(r[0]=(a*i+l*n+f*s-c*o)*2,r[1]=(f*i+l*o+c*n-a*s)*2,r[2]=(c*i+l*s+a*o-f*n)*2),Bi(t,e,r),t}function Z0(t,e){return t[0]=e[12],t[1]=e[13],t[2]=e[14],t}function Di(t,e){let r=e[0],n=e[1],o=e[2],s=e[4],i=e[5],a=e[6],f=e[8],c=e[9],l=e[10];return t[0]=Math.sqrt(r*r+n*n+o*o),t[1]=Math.sqrt(s*s+i*i+a*a),t[2]=Math.sqrt(f*f+c*c+l*l),t}function Q0(t,e){let r=new W(3);Di(r,e);let n=1/r[0],o=1/r[1],s=1/r[2],i=e[0]*n,a=e[1]*o,f=e[2]*s,c=e[4]*n,l=e[5]*o,d=e[6]*s,_=e[8]*n,h=e[9]*o,u=e[10]*s,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 Y0(t,e,r,n){e[0]=n[12],e[1]=n[13],e[2]=n[14];let o=n[0],s=n[1],i=n[2],a=n[4],f=n[5],c=n[6],l=n[8],d=n[9],_=n[10];r[0]=Math.sqrt(o*o+s*s+i*i),r[1]=Math.sqrt(a*a+f*f+c*c),r[2]=Math.sqrt(l*l+d*d+_*_);let h=1/r[0],u=1/r[1],A=1/r[2],p=o*h,S=s*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 j0(t,e,r,n){let o=e[0],s=e[1],i=e[2],a=e[3],f=o+o,c=s+s,l=i+i,d=o*f,_=o*c,h=o*l,u=s*c,A=s*l,p=i*l,S=a*f,y=a*c,B=a*l,T=n[0],R=n[1],D=n[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]=r[0],t[13]=r[1],t[14]=r[2],t[15]=1,t}function $0(t,e,r,n,o){let s=e[0],i=e[1],a=e[2],f=e[3],c=s+s,l=i+i,d=a+a,_=s*c,h=s*l,u=s*d,A=i*l,p=i*d,S=a*d,y=f*c,B=f*l,T=f*d,R=n[0],D=n[1],I=n[2],L=o[0],x=o[1],m=o[2],g=(1-(A+S))*R,E=(h+T)*R,U=(u-B)*R,F=(h-T)*D,k=(1-(_+S))*D,N=(p+y)*D,j=(u+B)*I,nt=(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]=k,t[6]=N,t[7]=0,t[8]=j,t[9]=nt,t[10]=V,t[11]=0,t[12]=r[0]+L-(g*L+F*x+j*m),t[13]=r[1]+x-(E*L+k*x+nt*m),t[14]=r[2]+m-(U*L+N*x+V*m),t[15]=1,t}function Lo(t,e){let r=e[0],n=e[1],o=e[2],s=e[3],i=r+r,a=n+n,f=o+o,c=r*i,l=n*i,d=n*a,_=o*i,h=o*a,u=o*f,A=s*i,p=s*a,S=s*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 No(t,e,r,n,o,s,i){let a=1/(r-e),f=1/(o-n),c=1/(s-i);return t[0]=s*2*a,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=s*2*f,t[6]=0,t[7]=0,t[8]=(r+e)*a,t[9]=(o+n)*f,t[10]=(i+s)*c,t[11]=-1,t[12]=0,t[13]=0,t[14]=i*s*2*c,t[15]=0,t}function Ii(t,e,r,n,o){let s=1/Math.tan(e/2);if(t[0]=s/r,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=s,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=-1,t[12]=0,t[13]=0,t[15]=0,o!=null&&o!==1/0){let i=1/(n-o);t[10]=(o+n)*i,t[14]=2*o*n*i}else t[10]=-1,t[14]=-2*n;return t}var Po=Ii;function J0(t,e,r,n,o){let s=1/Math.tan(e/2);if(t[0]=s/r,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=s,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=-1,t[12]=0,t[13]=0,t[15]=0,o!=null&&o!==1/0){let i=1/(n-o);t[10]=o*i,t[14]=o*n*i}else t[10]=-1,t[14]=-n;return t}function th(t,e,r,n){let o=Math.tan(e.upDegrees*Math.PI/180),s=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/(o+s);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]=(o-s)*c*.5,t[10]=n/(r-n),t[11]=-1,t[12]=0,t[13]=0,t[14]=n*r/(r-n),t[15]=0,t}function vi(t,e,r,n,o,s,i){let a=1/(e-r),f=1/(n-o),c=1/(s-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+r)*a,t[13]=(o+n)*f,t[14]=(i+s)*c,t[15]=1,t}var Fo=vi;function eh(t,e,r,n,o,s,i){let a=1/(e-r),f=1/(n-o),c=1/(s-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+r)*a,t[13]=(o+n)*f,t[14]=s*c,t[15]=1,t}function Uo(t,e,r,n){let o,s,i,a,f,c,l,d,_,h,u=e[0],A=e[1],p=e[2],S=n[0],y=n[1],B=n[2],T=r[0],R=r[1],D=r[2];return Math.abs(u-T)<1e-6&&Math.abs(A-R)<1e-6&&Math.abs(p-D)<1e-6?Ci(t):(d=u-T,_=A-R,h=p-D,o=1/Math.sqrt(d*d+_*_+h*h),d*=o,_*=o,h*=o,s=y*h-B*_,i=B*d-S*h,a=S*_-y*d,o=Math.sqrt(s*s+i*i+a*a),o?(o=1/o,s*=o,i*=o,a*=o):(s=0,i=0,a=0),f=_*a-h*i,c=h*s-d*a,l=d*i-_*s,o=Math.sqrt(f*f+c*c+l*l),o?(o=1/o,f*=o,c*=o,l*=o):(f=0,c=0,l=0),t[0]=s,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]=-(s*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 rh(t,e,r,n){let o=e[0],s=e[1],i=e[2],a=n[0],f=n[1],c=n[2],l=o-r[0],d=s-r[1],_=i-r[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]=o,t[13]=s,t[14]=i,t[15]=1,t}function nh(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 oh(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 sh(t,e,r){return t[0]=e[0]+r[0],t[1]=e[1]+r[1],t[2]=e[2]+r[2],t[3]=e[3]+r[3],t[4]=e[4]+r[4],t[5]=e[5]+r[5],t[6]=e[6]+r[6],t[7]=e[7]+r[7],t[8]=e[8]+r[8],t[9]=e[9]+r[9],t[10]=e[10]+r[10],t[11]=e[11]+r[11],t[12]=e[12]+r[12],t[13]=e[13]+r[13],t[14]=e[14]+r[14],t[15]=e[15]+r[15],t}function Li(t,e,r){return t[0]=e[0]-r[0],t[1]=e[1]-r[1],t[2]=e[2]-r[2],t[3]=e[3]-r[3],t[4]=e[4]-r[4],t[5]=e[5]-r[5],t[6]=e[6]-r[6],t[7]=e[7]-r[7],t[8]=e[8]-r[8],t[9]=e[9]-r[9],t[10]=e[10]-r[10],t[11]=e[11]-r[11],t[12]=e[12]-r[12],t[13]=e[13]-r[13],t[14]=e[14]-r[14],t[15]=e[15]-r[15],t}function ih(t,e,r){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]*r,t[5]=e[5]*r,t[6]=e[6]*r,t[7]=e[7]*r,t[8]=e[8]*r,t[9]=e[9]*r,t[10]=e[10]*r,t[11]=e[11]*r,t[12]=e[12]*r,t[13]=e[13]*r,t[14]=e[14]*r,t[15]=e[15]*r,t}function ah(t,e,r,n){return t[0]=e[0]+r[0]*n,t[1]=e[1]+r[1]*n,t[2]=e[2]+r[2]*n,t[3]=e[3]+r[3]*n,t[4]=e[4]+r[4]*n,t[5]=e[5]+r[5]*n,t[6]=e[6]+r[6]*n,t[7]=e[7]+r[7]*n,t[8]=e[8]+r[8]*n,t[9]=e[9]+r[9]*n,t[10]=e[10]+r[10]*n,t[11]=e[11]+r[11]*n,t[12]=e[12]+r[12]*n,t[13]=e[13]+r[13]*n,t[14]=e[14]+r[14]*n,t[15]=e[15]+r[15]*n,t}function ch(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 fh(t,e){let r=t[0],n=t[1],o=t[2],s=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],k=e[13],N=e[14],j=e[15];return Math.abs(r-y)<=1e-6*Math.max(1,Math.abs(r),Math.abs(y))&&Math.abs(n-B)<=1e-6*Math.max(1,Math.abs(n),Math.abs(B))&&Math.abs(o-T)<=1e-6*Math.max(1,Math.abs(o),Math.abs(T))&&Math.abs(s-R)<=1e-6*Math.max(1,Math.abs(s),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-k)<=1e-6*Math.max(1,Math.abs(A),Math.abs(k))&&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 lh=cr,hh=Li;function _h(){let t=new W(4);return W!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0,t[3]=0),t}function Ni(t,e,r){return t[0]=e[0]+r[0],t[1]=e[1]+r[1],t[2]=e[2]+r[2],t[3]=e[3]+r[3],t}function Pi(t,e,r){return t[0]=e[0]*r,t[1]=e[1]*r,t[2]=e[2]*r,t[3]=e[3]*r,t}function Fi(t){let e=t[0],r=t[1],n=t[2],o=t[3];return Math.sqrt(e*e+r*r+n*n+o*o)}function Ui(t){let e=t[0],r=t[1],n=t[2],o=t[3];return e*e+r*r+n*n+o*o}function ki(t,e){let r=e[0],n=e[1],o=e[2],s=e[3],i=r*r+n*n+o*o+s*s;return i>0&&(i=1/Math.sqrt(i)),t[0]=r*i,t[1]=n*i,t[2]=o*i,t[3]=s*i,t}function Gi(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]+t[3]*e[3]}function zi(t,e,r,n){let o=e[0],s=e[1],i=e[2],a=e[3];return t[0]=o+n*(r[0]-o),t[1]=s+n*(r[1]-s),t[2]=i+n*(r[2]-i),t[3]=a+n*(r[3]-a),t}function Ki(t,e,r){let n=e[0],o=e[1],s=e[2],i=e[3];return t[0]=r[0]*n+r[4]*o+r[8]*s+r[12]*i,t[1]=r[1]*n+r[5]*o+r[9]*s+r[13]*i,t[2]=r[2]*n+r[6]*o+r[10]*s+r[14]*i,t[3]=r[3]*n+r[7]*o+r[11]*s+r[15]*i,t}function Hi(t,e,r){let n=e[0],o=e[1],s=e[2],i=r[0],a=r[1],f=r[2],c=r[3],l=c*n+a*s-f*o,d=c*o+f*n-i*s,_=c*s+i*o-a*n,h=-i*n-a*o-f*s;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 $m=function(){let t=_h();return function(e,r,n,o,s,i){let a,f;for(r||(r=4),n||(n=0),o?f=Math.min(o*r+n,e.length):f=e.length,a=n;a<f;a+=r)t[0]=e[a],t[1]=e[a+1],t[2]=e[a+2],t[3]=e[a+3],s(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 zo;(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"})(zo||(zo={}));var uh=45*Math.PI/180,ph=1,ko=.1,Go=500,mh=Object.freeze([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),dt=class extends Ne{static get IDENTITY(){return xh()}static get ZERO(){return Ah()}get ELEMENTS(){return 16}get RANK(){return 4}get INDICES(){return zo}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,r,n,o,s,i,a,f,c,l,d,_,h,u,A,p){return this[0]=e,this[1]=r,this[2]=n,this[3]=o,this[4]=s,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,r,n,o,s,i,a,f,c,l,d,_,h,u,A,p){return this[0]=e,this[1]=s,this[2]=c,this[3]=h,this[4]=r,this[5]=i,this[6]=l,this[7]=u,this[8]=n,this[9]=a,this[10]=d,this[11]=A,this[12]=o,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(mh)}fromObject(e){return this.check()}fromQuaternion(e){return Lo(this,e),this.check()}frustum(e){let{left:r,right:n,bottom:o,top:s,near:i=ko,far:a=Go}=e;return a===1/0?gh(this,r,n,o,s,i):No(this,r,n,o,s,i,a),this.check()}lookAt(e){let{eye:r,center:n=[0,0,0],up:o=[0,1,0]}=e;return Uo(this,r,n,o),this.check()}ortho(e){let{left:r,right:n,bottom:o,top:s,near:i=ko,far:a=Go}=e;return Fo(this,r,n,o,s,i,a),this.check()}orthographic(e){let{fovy:r=uh,aspect:n=ph,focalDistance:o=1,near:s=ko,far:i=Go}=e;Vi(r);let a=r/2,f=o*Math.tan(a),c=f*n;return this.ortho({left:-c,right:c,bottom:-f,top:f,near:s,far:i})}perspective(e){let{fovy:r=45*Math.PI/180,aspect:n=1,near:o=.1,far:s=500}=e;return Vi(r),Po(this,r,n,o,s),this.check()}determinant(){return Oo(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,r){e=e||[-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0],r=r||[-0,-0,-0];let n=this.getScale(r),o=1/n[0],s=1/n[1],i=1/n[2];return e[0]=this[0]*o,e[1]=this[1]*s,e[2]=this[2]*i,e[3]=0,e[4]=this[4]*o,e[5]=this[5]*s,e[6]=this[6]*i,e[7]=0,e[8]=this[8]*o,e[9]=this[9]*s,e[10]=this[10]*i,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}getRotationMatrix3(e,r){e=e||[-0,-0,-0,-0,-0,-0,-0,-0,-0],r=r||[-0,-0,-0];let n=this.getScale(r),o=1/n[0],s=1/n[1],i=1/n[2];return e[0]=this[0]*o,e[1]=this[1]*s,e[2]=this[2]*i,e[3]=this[4]*o,e[4]=this[5]*s,e[5]=this[6]*i,e[6]=this[8]*o,e[7]=this[9]*s,e[8]=this[10]*i,e}transpose(){return yo(this,this),this.check()}invert(){return wo(this,this),this.check()}multiplyLeft(e){return cr(this,e,this),this.check()}multiplyRight(e){return cr(this,this,e),this.check()}rotateX(e){return Do(this,this,e),this.check()}rotateY(e){return Io(this,this,e),this.check()}rotateZ(e){return vo(this,this,e),this.check()}rotateXYZ(e){return this.rotateX(e[0]).rotateY(e[1]).rotateZ(e[2])}rotateAxis(e,r){return Bo(this,this,e,r),this.check()}scale(e){return Co(this,this,Array.isArray(e)?e:[e,e,e]),this.check()}translate(e){return bo(this,this,e),this.check()}transform(e,r){return e.length===4?(r=Ki(r||[-0,-0,-0,-0],e,this),te(r,4),r):this.transformAsPoint(e,r)}transformAsPoint(e,r){let{length:n}=e,o;switch(n){case 2:o=hi(r||[-0,-0],e,this);break;case 3:o=de(r||[-0,-0,-0],e,this);break;default:throw new Error("Illegal vector")}return te(o,e.length),o}transformAsVector(e,r){let n;switch(e.length){case 2:n=_i(r||[-0,-0],e,this);break;case 3:n=an(r||[-0,-0,-0],e,this);break;default:throw new Error("Illegal vector")}return te(n,e.length),n}transformPoint(e,r){return this.transformAsPoint(e,r)}transformVector(e,r){return this.transformAsPoint(e,r)}transformDirection(e,r){return this.transformAsVector(e,r)}makeRotationX(e){return this.identity().rotateX(e)}makeTranslation(e,r,n){return this.identity().translate([e,r,n])}},pn,mn;function Ah(){return pn||(pn=new dt([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]),Object.freeze(pn)),pn}function xh(){return mn||(mn=new dt,Object.freeze(mn)),mn}function Vi(t){if(t>Math.PI*2)throw Error("expected radians")}function gh(t,e,r,n,o,s){let i=2*s/(r-e),a=2*s/(o-n),f=(r+e)/(r-e),c=(o+n)/(o-n),l=-1,d=-1,_=-2*s;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 Xi(){let t=new W(4);return W!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0),t[3]=1,t}function Wi(t){return t[0]=0,t[1]=0,t[2]=0,t[3]=1,t}function Ko(t,e,r){r=r*.5;let n=Math.sin(r);return t[0]=n*e[0],t[1]=n*e[1],t[2]=n*e[2],t[3]=Math.cos(r),t}function Ho(t,e,r){let n=e[0],o=e[1],s=e[2],i=e[3],a=r[0],f=r[1],c=r[2],l=r[3];return t[0]=n*l+i*a+o*c-s*f,t[1]=o*l+i*f+s*a-n*c,t[2]=s*l+i*c+n*f-o*a,t[3]=i*l-n*a-o*f-s*c,t}function qi(t,e,r){r*=.5;let n=e[0],o=e[1],s=e[2],i=e[3],a=Math.sin(r),f=Math.cos(r);return t[0]=n*f+i*a,t[1]=o*f+s*a,t[2]=s*f-o*a,t[3]=i*f-n*a,t}function Zi(t,e,r){r*=.5;let n=e[0],o=e[1],s=e[2],i=e[3],a=Math.sin(r),f=Math.cos(r);return t[0]=n*f-s*a,t[1]=o*f+i*a,t[2]=s*f+n*a,t[3]=i*f-o*a,t}function Qi(t,e,r){r*=.5;let n=e[0],o=e[1],s=e[2],i=e[3],a=Math.sin(r),f=Math.cos(r);return t[0]=n*f+o*a,t[1]=o*f-n*a,t[2]=s*f+i*a,t[3]=i*f-s*a,t}function Yi(t,e){let r=e[0],n=e[1],o=e[2];return t[0]=r,t[1]=n,t[2]=o,t[3]=Math.sqrt(Math.abs(1-r*r-n*n-o*o)),t}function lr(t,e,r,n){let o=e[0],s=e[1],i=e[2],a=e[3],f=r[0],c=r[1],l=r[2],d=r[3],_,h,u,A,p;return _=o*f+s*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-n)*h)/p,A=Math.sin(n*h)/p):(u=1-n,A=n),t[0]=u*o+A*f,t[1]=u*s+A*c,t[2]=u*i+A*l,t[3]=u*a+A*d,t}function ji(t,e){let r=e[0],n=e[1],o=e[2],s=e[3],i=r*r+n*n+o*o+s*s,a=i?1/i:0;return t[0]=-r*a,t[1]=-n*a,t[2]=-o*a,t[3]=s*a,t}function $i(t,e){return t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t[3]=e[3],t}function Vo(t,e){let r=e[0]+e[4]+e[8],n;if(r>0)n=Math.sqrt(r+1),t[3]=.5*n,n=.5/n,t[0]=(e[5]-e[7])*n,t[1]=(e[6]-e[2])*n,t[2]=(e[1]-e[3])*n;else{let o=0;e[4]>e[0]&&(o=1),e[8]>e[o*3+o]&&(o=2);let s=(o+1)%3,i=(o+2)%3;n=Math.sqrt(e[o*3+o]-e[s*3+s]-e[i*3+i]+1),t[o]=.5*n,n=.5/n,t[3]=(e[s*3+i]-e[i*3+s])*n,t[s]=(e[s*3+o]+e[o*3+s])*n,t[i]=(e[i*3+o]+e[o*3+i])*n}return t}var Ji=Ni;var ta=Pi,ea=Gi,ra=zi,na=Fi;var oa=Ui;var sa=ki;var ia=function(){let t=fn(),e=ln(1,0,0),r=ln(0,1,0);return function(n,o,s){let i=sr(o,s);return i<-.999999?(_e(t,e,o),Eo(t)<1e-6&&_e(t,r,o),po(t,t),Ko(n,t,Math.PI),n):i>.999999?(n[0]=0,n[1]=0,n[2]=0,n[3]=1,n):(_e(t,o,s),n[0]=t[0],n[1]=t[1],n[2]=t[2],n[3]=1+i,sa(n,n))}}(),_A=function(){let t=Xi(),e=Xi();return function(r,n,o,s,i,a){return lr(t,n,i,a),lr(e,o,s,a),lr(r,t,e,2*a*(1-a)),r}}(),dA=function(){let t=Ri();return function(e,r,n,o){return t[0]=n[0],t[3]=n[1],t[6]=n[2],t[1]=o[0],t[4]=o[1],t[7]=o[2],t[2]=-r[0],t[5]=-r[1],t[8]=-r[2],sa(e,Vo(e,t))}}();var Eh=[0,0,0,1],Pe=class extends Jt{constructor(e=0,r=0,n=0,o=1){super(-0,-0,-0,-0),Array.isArray(e)&&arguments.length===1?this.copy(e):this.set(e,r,n,o)}copy(e){return this[0]=e[0],this[1]=e[1],this[2]=e[2],this[3]=e[3],this.check()}set(e,r,n,o){return this[0]=e,this[1]=r,this[2]=n,this[3]=o,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 Vo(this,e),this.check()}fromAxisRotation(e,r){return Ko(this,e,r),this.check()}identity(){return Wi(this),this.check()}setAxisAngle(e,r){return this.fromAxisRotation(e,r)}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 na(this)}lengthSquared(){return oa(this)}dot(e){return ea(this,e)}rotationTo(e,r){return ia(this,e,r),this.check()}add(e){return Ji(this,this,e),this.check()}calculateW(){return Yi(this,this),this.check()}conjugate(){return $i(this,this),this.check()}invert(){return ji(this,this),this.check()}lerp(e,r,n){return n===void 0?this.lerp(this,e,r):(ra(this,e,r,n),this.check())}multiplyRight(e){return Ho(this,this,e),this.check()}multiplyLeft(e){return Ho(this,e,this),this.check()}normalize(){let e=this.len(),r=e>0?1/e:0;return this[0]=this[0]*r,this[1]=this[1]*r,this[2]=this[2]*r,this[3]=this[3]*r,e===0&&(this[3]=1),this.check()}rotateX(e){return qi(this,this,e),this.check()}rotateY(e){return Zi(this,this,e),this.check()}rotateZ(e){return Qi(this,this,e),this.check()}scale(e){return ta(this,this,e),this.check()}slerp(e,r,n){let o,s,i;switch(arguments.length){case 1:({start:o=Eh,target:s,ratio:i}=e);break;case 2:o=this,s=e,i=r;break;default:o=e,s=r,i=n}return lr(this,o,s,i),this.check()}transformVector4(e,r=new Le){return Hi(r,e,this),te(r,4)}lengthSq(){return this.lengthSquared()}setFromAxisAngle(e,r){return this.setAxisAngle(e,r)}premultiply(e){return this.multiplyLeft(e)}multiply(e){return this.multiplyRight(e)}};var Vt={};on(Vt,{EPSILON1:()=>Sh,EPSILON10:()=>Bh,EPSILON11:()=>Dh,EPSILON12:()=>Ih,EPSILON13:()=>vh,EPSILON14:()=>Lh,EPSILON15:()=>Nh,EPSILON16:()=>Ph,EPSILON17:()=>Fh,EPSILON18:()=>Uh,EPSILON19:()=>kh,EPSILON2:()=>Rh,EPSILON20:()=>Gh,EPSILON3:()=>Th,EPSILON4:()=>Mh,EPSILON5:()=>yh,EPSILON6:()=>wh,EPSILON7:()=>Oh,EPSILON8:()=>bh,EPSILON9:()=>Ch,PI_OVER_FOUR:()=>Kh,PI_OVER_SIX:()=>Hh,PI_OVER_TWO:()=>zh,TWO_PI:()=>Vh});var Sh=.1,Rh=.01,Th=.001,Mh=1e-4,yh=1e-5,wh=1e-6,Oh=1e-7,bh=1e-8,Ch=1e-9,Bh=1e-10,Dh=1e-11,Ih=1e-12,vh=1e-13,Lh=1e-14,Nh=1e-15,Ph=1e-16,Fh=1e-17,Uh=1e-18,kh=1e-19,Gh=1e-20,zh=Math.PI/2,Kh=Math.PI/4,Hh=Math.PI/6,Vh=Math.PI*2;function Xo(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 aa={UInt8:he.UNSIGNED_BYTE,UInt16:he.UNSIGNED_SHORT,Float32:he.FLOAT,UInt32:he.UNSIGNED_INT,UInt64:he.DOUBLE};function Fe(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 ca="String",fa="Oid32",la="Float64",ha="Int16",Dt;(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"})(Dt||(Dt={}));var Tc=Ct(Ht(),1);var Mr=Ct(Ht(),1);var Xt=6356752314245179e-9,Xh={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 An(t){return t}var qA=new v;function Wh(t,e=[],r=An){return"longitude"in t?(e[0]=r(t.longitude),e[1]=r(t.latitude),e[2]=t.height):"x"in t?(e[0]=r(t.x),e[1]=r(t.y),e[2]=t.z):(e[0]=r(t[0]),e[1]=r(t[1]),e[2]=t[2]),e}function _a(t,e=[]){return Wh(t,e,X._cartographicRadians?An:_o)}function qh(t,e,r=An){return"longitude"in e?(e.longitude=r(t[0]),e.latitude=r(t[1]),e.height=t[2]):"x"in e?(e.x=r(t[0]),e.y=r(t[1]),e.z=t[2]):(e[0]=r(t[0]),e[1]=r(t[1]),e[2]=t[2]),e}function da(t,e){return qh(t,e,X._cartographicRadians?An:uo)}var ua=1e-14,Zh=new v,pa={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"}},Wo={north:[-1,0,0],east:[0,1,0],up:[0,0,1],south:[1,0,0],west:[0,-1,0],down:[0,0,-1]},hr={east:new v,north:new v,up:new v,west:new v,south:new v,down:new v},Qh=new v,Yh=new v,jh=new v;function qo(t,e,r,n,o,s){let i=pa[e]&&pa[e][r];tt(i&&(!n||n===i));let a,f,c,l=Zh.copy(o);if(_t(l.x,0,ua)&&_t(l.y,0,ua)){let _=Math.sign(l.z);a=Qh.fromArray(Wo[e]),e!=="east"&&e!=="west"&&a.scale(_),f=Yh.fromArray(Wo[r]),r!=="east"&&r!=="west"&&f.scale(_),c=jh.fromArray(Wo[n]),n!=="east"&&n!=="west"&&c.scale(_)}else{let{up:_,east:h,north:u}=hr;h.set(-l.y,l.x,0).normalize(),t.geodeticSurfaceNormal(l,_),u.copy(_).cross(h);let{down:A,west:p,south:S}=hr;A.copy(_).scale(-1),p.copy(h).scale(-1),S.copy(u).scale(-1),a=hr[e],f=hr[r],c=hr[n]}return s[0]=a.x,s[1]=a.y,s[2]=a.z,s[3]=0,s[4]=f.x,s[5]=f.y,s[6]=f.z,s[7]=0,s[8]=c.x,s[9]=c.y,s[10]=c.z,s[11]=0,s[12]=l.x,s[13]=l.y,s[14]=l.z,s[15]=1,s}var Ue=new v,$h=new v,Jh=new v;function ma(t,e,r=[]){let{oneOverRadii:n,oneOverRadiiSquared:o,centerToleranceSquared:s}=e;Ue.from(t);let i=Ue.x,a=Ue.y,f=Ue.z,c=n.x,l=n.y,d=n.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=$h;if(S.copy(t).scale(p),A<s)return S.to(r);let y=o.x,B=o.y,T=o.z,R=Jh;R.set(S.x*y*2,S.y*B*2,S.z*T*2);let D=(1-p)*Ue.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,k=E*L,N=U*x,j=F*m;g=_*E+h*U+u*F-1;let V=-2*(_*k*y+h*N*B+u*j*T);I=g/V}while(Math.abs(g)>Vt.EPSILON12);return Ue.scale([L,x,m]).to(r)}var xn=new v,Aa=new v,r1=new v,Mt=new v,n1=new v,gn=new v,At=class{constructor(e=0,r=0,n=0){this.centerToleranceSquared=Vt.EPSILON1,tt(e>=0),tt(r>=0),tt(n>=0),this.radii=new v(e,r,n),this.radiiSquared=new v(e*e,r*r,n*n),this.radiiToTheFourth=new v(e*e*e*e,r*r*r*r,n*n*n*n),this.oneOverRadii=new v(e===0?0:1/e,r===0?0:1/r,n===0?0:1/n),this.oneOverRadiiSquared=new v(e===0?0:1/(e*e),r===0?0:1/(r*r),n===0?0:1/(n*n)),this.minimumRadius=Math.min(e,r,n),this.maximumRadius=Math.max(e,r,n),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,r=[0,0,0]){let n=Aa,o=r1,[,,s]=e;this.geodeticSurfaceNormalCartographic(e,n),o.copy(this.radiiSquared).scale(n);let i=Math.sqrt(n.dot(o));return o.scale(1/i),n.scale(s),o.add(n),o.to(r)}cartesianToCartographic(e,r=[0,0,0]){gn.from(e);let n=this.scaleToGeodeticSurface(gn,Mt);if(!n)return;let o=this.geodeticSurfaceNormal(n,Aa),s=n1;s.copy(gn).subtract(n);let i=Math.atan2(o.y,o.x),a=Math.asin(o.z),f=Math.sign(ue.dot(s,gn))*ue.length(s);return da([i,a,f],r)}eastNorthUpToFixedFrame(e,r=new dt){return qo(this,"east","north","up",e,r)}localFrameToFixedFrame(e,r,n,o,s=new dt){return qo(this,e,r,n,o,s)}geocentricSurfaceNormal(e,r=[0,0,0]){return xn.from(e).normalize().to(r)}geodeticSurfaceNormalCartographic(e,r=[0,0,0]){let n=_a(e),o=n[0],s=n[1],i=Math.cos(s);return xn.set(i*Math.cos(o),i*Math.sin(o),Math.sin(s)).normalize(),xn.to(r)}geodeticSurfaceNormal(e,r=[0,0,0]){return xn.from(e).scale(this.oneOverRadiiSquared).normalize().to(r)}scaleToGeodeticSurface(e,r){return ma(e,this,r)}scaleToGeocentricSurface(e,r=[0,0,0]){Mt.from(e);let n=Mt.x,o=Mt.y,s=Mt.z,i=this.oneOverRadiiSquared,a=1/Math.sqrt(n*n*i.x+o*o*i.y+s*s*i.z);return Mt.multiplyScalar(a).to(r)}transformPositionToScaledSpace(e,r=[0,0,0]){return Mt.from(e).scale(this.oneOverRadii).to(r)}transformPositionFromScaledSpace(e,r=[0,0,0]){return Mt.from(e).scale(this.radii).to(r)}getSurfaceNormalIntersectionWithZAxis(e,r=0,n=[0,0,0]){tt(_t(this.radii.x,this.radii.y,Vt.EPSILON15)),tt(this.radii.z>0),Mt.from(e);let o=Mt.z*(1-this.squaredXOverSquaredZ);if(!(Math.abs(o)>=this.radii.z-r))return Mt.set(0,0,o).to(n)}};At.WGS84=new At(6378137,6378137,Xt);async function Zo(t,e,r,n){return n._parse(t,e,r,n)}function ee(t,e){if(!t)throw new Error(e||"loader assertion failed.")}var It={self:typeof self<"u"&&self,window:typeof window<"u"&&window,global:typeof global<"u"&&global,document:typeof document<"u"&&document},o1=It.self||It.window||It.global||{},s1=It.window||It.self||It.global||{},i1=It.global||It.self||It.window||{},a1=It.document||{};var xt=Boolean(typeof process!="object"||String(process)!=="[object process]"||process.browser);var xa=typeof process<"u"&&process.version&&/v([0-9]*)/.exec(process.version),c1=xa&&parseFloat(xa[1])||0;function _r(t){globalThis.loaders||={},globalThis.loaders.modules||={},Object.assign(globalThis.loaders.modules,t)}function Qo(t){return globalThis.loaders?.modules?.[t]||null}function f1(){return globalThis._loadersgl_?.version||(globalThis._loadersgl_=globalThis._loadersgl_||{},globalThis._loadersgl_.version="4.4.0-alpha.1"),globalThis._loadersgl_.version}var ga=f1();function Ea(t,e){if(!t)throw new Error(e||"loaders.gl assertion failed.")}var vt={self:typeof self<"u"&&self,window:typeof window<"u"&&window,global:typeof global<"u"&&global,document:typeof document<"u"&&document},px=vt.self||vt.window||vt.global||{},mx=vt.window||vt.self||vt.global||{},Ax=vt.global||vt.self||vt.window||{},xx=vt.document||{};var ke=typeof process!="object"||String(process)!=="[object process]"||process.browser,En=typeof importScripts=="function",gx=typeof window<"u"&&typeof window.orientation<"u",Sa=typeof process<"u"&&process.version&&/v([0-9]*)/.exec(process.version),Ex=Sa&&parseFloat(Sa[1])||0;var Yo={};async function Lt(t,e=null,r={},n=null){return e&&(t=Ra(t,e,r,n)),Yo[t]=Yo[t]||l1(t),await Yo[t]}function Ra(t,e,r={},n=null){if(!r.useLocalLibraries&&t.startsWith("http"))return t;n=n||t;let o=r.modules||{};return o[n]?o[n]:ke?r.CDN?(Ea(r.CDN.startsWith("http")),`${r.CDN}/${e}@${ga}/dist/libs/${n}`):En?`../src/libs/${n}`:`modules/${e}/src/libs/${n}`:`modules/${e}/dist/libs/${n}`}async function l1(t){if(t.endsWith("wasm"))return await _1(t);if(!ke)try{let{requireFromFile:r}=globalThis.loaders||{};return await r?.(t)}catch(r){return console.error(r),null}if(En)return importScripts(t);let e=await d1(t);return h1(e,t)}function h1(t,e){if(!ke){let{requireFromString:n}=globalThis.loaders||{};return n?.(t,e)}if(En)return eval.call(globalThis,t),null;let r=document.createElement("script");r.id=e;try{r.appendChild(document.createTextNode(t))}catch{r.text=t}return document.body.appendChild(r),null}async function _1(t){let{readFileAsArrayBuffer:e}=globalThis.loaders||{};return ke||!e||t.startsWith("http")?await(await fetch(t)).arrayBuffer():await e(t)}async function d1(t){let{readFileAsText:e}=globalThis.loaders||{};return ke||!e||t.startsWith("http")?await(await fetch(t)).text():await e(t)}function re(t,e,r){if(r=r||t.byteLength,t.byteLength<r||e.byteLength<r)return!1;let n=new Uint8Array(t),o=new Uint8Array(e);for(let s=0;s<n.length;++s)if(n[s]!==o[s])return!1;return!0}function Ge(...t){return Ta(t)}function Ta(t){let e=t.map(s=>s instanceof ArrayBuffer?new Uint8Array(s):s),r=e.reduce((s,i)=>s+i.byteLength,0),n=new Uint8Array(r),o=0;for(let s of e)n.set(s,o),o+=s.byteLength;return n.buffer}async function dr(t){let e=[];for await(let r of t)e.push(r);return Ge(...e)}function Ma(t){return t&&typeof t=="object"&&t.isBuffer}function ze(t){if(Ma(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 Ke(t){return e=>new Promise((r,n)=>t(e,(o,s)=>o?n(o):r(s)))}var ur=new Error("Not implemented"),Sn=class{handle;size=0;bigsize=0n;url="";constructor(e,r,n){if(globalThis.loaders?.NodeFile)return new globalThis.loaders.NodeFile(e,r,n);throw xt?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,r){throw ur}async write(e,r,n){throw ur}async stat(){throw ur}async truncate(e){throw ur}async append(e){throw ur}async close(){}};var jo=t=>t?.getUint8&&t?.slice&&t?.length;var pr=class{file;constructor(e,r=!1){this.file=new Sn(e,r?"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 r=await this.file.read(e,1),n=new Uint8Array(r).at(0);if(n===void 0)throw new Error("something went wrong");return n}async getUint16(e){let r=await this.file.read(e,2),n=new Uint16Array(r).at(0);if(n===void 0)throw new Error("something went wrong");return n}async getUint32(e){let r=await this.file.read(e,4),n=new Uint32Array(r).at(0);if(n===void 0)throw new Error("something went wrong");return n}async getBigUint64(e){let r=await this.file.read(e,8),n=new BigInt64Array(r).at(0);if(n===void 0)throw new Error("something went wrong");return n}async slice(e,r){let n=r-e;if(n>Number.MAX_SAFE_INTEGER)throw new Error("too big slice");let o=Number(n);return await this.file.read(e,o)}get length(){return this.file.bigsize}};var He=t=>{if(t>Number.MAX_SAFE_INTEGER)throw new Error("Offset is out of bounds");return Number(t)},pe=class{file;constructor(e){this.file=e}async destroy(){}async getUint8(e){return this.file.getUint8(He(e))}async getUint16(e){return this.file.getUint16(He(e),!0)}async getUint32(e){return this.file.getUint32(He(e),!0)}async getBigUint64(e){return this.file.getBigUint64(He(e),!0)}async slice(e,r){return this.file.buffer.slice(He(e),He(r))}get length(){return BigInt(this.file.byteLength)}};var ya="4.4.0-alpha.1";var u1=globalThis.loaders?.parseImageNode,$o=typeof Image<"u",Jo=typeof ImageBitmap<"u",p1=Boolean(u1),ts=xt?!0:p1;function wa(t){switch(t){case"auto":return Jo||$o||ts;case"imagebitmap":return Jo;case"image":return $o;case"data":return ts;default:throw new Error(`@loaders.gl/images: image ${t} not supported in this environment`)}}function Oa(){if(Jo)return"imagebitmap";if($o)return"image";if(ts)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 ba(t){switch(m1(t)){case"data":return t;case"image":case"imagebitmap":let e=document.createElement("canvas"),r=e.getContext("2d");if(!r)throw new Error("getImageData");return e.width=t.width,e.height=t.height,r.drawImage(t,0,0),r.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 Rn(t){return t&&(x1.test(t)||g1.test(t))}function Ca(t,e){if(Rn(e)){let n=new TextDecoder().decode(t);try{typeof unescape=="function"&&typeof encodeURIComponent=="function"&&(n=unescape(encodeURIComponent(n)))}catch(s){throw new Error(s.message)}return`data:image/svg+xml;base64,${btoa(n)}`}return es(t,e)}function es(t,e){if(Rn(e))throw new Error("SVG cannot be parsed directly to imagebitmap");return new Blob([new Uint8Array(t)])}async function Tn(t,e,r){let n=Ca(t,r),o=self.URL||self.webkitURL,s=typeof n!="string"&&o.createObjectURL(n);try{return await E1(s||n,e)}finally{s&&o.revokeObjectURL(s)}}async function E1(t,e){let r=new Image;return r.src=t,e.image&&e.image.decode&&r.decode?(await r.decode(),r):await new Promise((n,o)=>{try{r.onload=()=>n(r),r.onerror=s=>{let i=s instanceof Error?s.message:"error";o(new Error(i))}}catch(s){o(s)}})}var S1={},Ba=!0;async function Da(t,e,r){let n;Rn(r)?n=await Tn(t,e,r):n=es(t,r);let o=e&&e.imagebitmap;return await R1(n,o)}async function R1(t,e=null){if((T1(e)||!Ba)&&(e=null),e)try{return await createImageBitmap(t,e)}catch(r){console.warn(r),Ba=!1}return await createImageBitmap(t)}function T1(t){for(let e in t||S1)return!1;return!0}function Ia(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,r){return String.fromCharCode(...t.slice(e,r))}function w1(t){return[...t].map(e=>e.charCodeAt(0))}function O1(t,e,r=0){let n=w1(e);for(let o=0;o<n.length;++o)if(n[o]!==t[o+r])return!1;return!0}var Nt=!1,mr=!0;function Mn(t){let e=Ar(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),r=Ia(e);return r?{mimeType:r.mimeType,width:0,height:0}:null}function C1(t){let e=Ar(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=Ar(t);return e.byteLength>=10&&e.getUint32(0,Nt)===1195984440?{mimeType:"image/gif",width:e.getUint16(6,mr),height:e.getUint16(8,mr)}:null}function D1(t){let e=Ar(t);return e.byteLength>=14&&e.getUint16(0,Nt)===16973&&e.getUint32(2,mr)===e.byteLength?{mimeType:"image/bmp",width:e.getUint32(18,mr),height:e.getUint32(22,mr)}:null}function I1(t){let e=Ar(t);if(!(e.byteLength>=3&&e.getUint16(0,Nt)===65496&&e.getUint8(2)===255))return null;let{tableMarkers:n,sofMarkers:o}=v1(),s=2;for(;s+9<e.byteLength;){let i=e.getUint16(s,Nt);if(o.has(i))return{mimeType:"image/jpeg",height:e.getUint16(s+5,Nt),width:e.getUint16(s+7,Nt)};if(!n.has(i))return null;s+=2,s+=e.getUint16(s,Nt)}return null}function v1(){let t=new Set([65499,65476,65484,65501,65534]);for(let r=65504;r<65520;++r)t.add(r);return{tableMarkers:t,sofMarkers:new Set([65472,65473,65474,65475,65477,65478,65479,65481,65482,65483,65485,65486,65487,65502])}}function Ar(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 va(t,e){let{mimeType:r}=Mn(t)||{},n=globalThis.loaders?.parseImageNode;return ee(n),await n(t,r)}async function La(t,e,r){e=e||{};let o=(e.image||{}).type||"auto",{url:s}=r||{},i=L1(o),a;switch(i){case"imagebitmap":a=await Da(t,e,s);break;case"image":a=await Tn(t,e,s);break;case"data":a=await va(t,e);break;default:ee(!1)}return o==="data"&&(a=ba(a)),a}function L1(t){switch(t){case"auto":case"data":return Oa();default:return wa(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}},yn={dataType:null,batchType:null,id:"image",module:"images",name:"Images",version:ya,mimeTypes:P1,extensions:N1,parse:La,tests:[t=>Boolean(Mn(new DataView(t)))],options:F1};var U1="1.5.6",k1="1.4.1",rs=`https://www.gstatic.com/draco/versioned/decoders/${U1}`,lt={DECODER:"draco_wasm_wrapper.js",DECODER_WASM:"draco_decoder.wasm",FALLBACK_DECODER:"draco_decoder.js",ENCODER:"draco_encoder.js"},ns={[lt.DECODER]:`${rs}/${lt.DECODER}`,[lt.DECODER_WASM]:`${rs}/${lt.DECODER_WASM}`,[lt.FALLBACK_DECODER]:`${rs}/${lt.FALLBACK_DECODER}`,[lt.ENCODER]:`https://raw.githubusercontent.com/google/draco/${k1}/javascript/${lt.ENCODER}`},os;async function Na(t){let e=t.modules||{};return e.draco3d?os||=e.draco3d.createDecoderModule({}).then(r=>({draco:r})):os||=G1(t),await os}async function G1(t){let e,r;switch(t.draco&&t.draco.decoderType){case"js":e=await Lt(ns[lt.FALLBACK_DECODER],"draco",t,lt.FALLBACK_DECODER);break;case"wasm":default:[e,r]=await Promise.all([await Lt(ns[lt.DECODER],"draco",t,lt.DECODER),await Lt(ns[lt.DECODER_WASM],"draco",t,lt.DECODER_WASM)])}return e=e||globalThis.DracoDecoderModule,await z1(e,r)}function z1(t,e){let r={};return e&&(r.wasmBinary=e),new Promise(n=>{t({...r,onModuleLoaded:o=>n({draco:o})})})}var Pa="4.4.0-alpha.1";function Fa(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 ss(t){let e=1/0,r=1/0,n=1/0,o=-1/0,s=-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,r=d<r?d:r,n=_<n?_:n,o=l>o?l:o,s=d>s?d:s,i=_>i?_:i}return[[e,r,n],[o,s,i]]}function is(t,e,r){let n=Fa(e.value),o=r||Ua(e);return{name:t,type:{type:"fixed-size-list",listSize:e.size,children:[{name:"value",type:n}]},nullable:!1,metadata:o}}function Ua(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,r){let n=za(e.metadata),o=[],s=K1(e.attributes);for(let i in t){let a=t[i],f=ka(i,a,s[i]);o.push(f)}if(r){let i=ka("indices",r);o.push(i)}return{fields:o,metadata:n}}function K1(t){let e={};for(let r in t){let n=t[r];e[n.name||"undefined"]=n}return e}function ka(t,e,r){let n=r?za(r.metadata):void 0;return is(t,e,n)}function za(t){Object.entries(t);let e={};for(let r in t)e[`${r}.string`]=JSON.stringify(t[r]);return e}var Ka={POSITION:"POSITION",NORMAL:"NORMAL",COLOR:"COLOR_0",TEX_COORD:"TEXCOORD_0"},H1={1:Int8Array,2:Uint8Array,3:Int16Array,4:Uint16Array,5:Int32Array,6:Uint32Array,9:Float32Array},V1=4,xr=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,r={}){let n=new this.draco.DecoderBuffer;n.Init(new Int8Array(e),e.byteLength),this._disableAttributeTransforms(r);let o=this.decoder.GetEncodedGeometryType(n),s=o===this.draco.TRIANGULAR_MESH?new this.draco.Mesh:new this.draco.PointCloud;try{let i;switch(o){case this.draco.TRIANGULAR_MESH:i=this.decoder.DecodeBufferToMesh(n,s);break;case this.draco.POINT_CLOUD:i=this.decoder.DecodeBufferToPointCloud(n,s);break;default:throw new Error("DRACO: Unknown geometry type.")}if(!i.ok()||!s.ptr){let _=`DRACO decompression failed: ${i.error_msg()}`;throw new Error(_)}let a=this._getDracoLoaderData(s,o,r),f=this._getMeshData(s,a,r),c=ss(f.attributes),l=Ga(f.attributes,a,f.indices);return{loader:"draco",loaderData:a,header:{vertexCount:s.num_points(),boundingBox:c},...f,schema:l}}finally{this.draco.destroy(n),s&&this.draco.destroy(s)}}_getDracoLoaderData(e,r,n){let o=this._getTopLevelMetadata(e),s=this._getDracoAttributes(e,n);return{geometry_type:r,num_attributes:e.num_attributes(),num_points:e.num_points(),num_faces:e instanceof this.draco.Mesh?e.num_faces():0,metadata:o,attributes:s}}_getDracoAttributes(e,r){let n={};for(let o=0;o<e.num_attributes();o++){let s=this.decoder.GetAttribute(e,o),i=this._getAttributeMetadata(e,o);n[s.unique_id()]={unique_id:s.unique_id(),attribute_type:s.attribute_type(),data_type:s.data_type(),num_components:s.num_components(),byte_offset:s.byte_offset(),byte_stride:s.byte_stride(),normalized:s.normalized(),attribute_index:o,metadata:i};let a=this._getQuantizationTransform(s,r);a&&(n[s.unique_id()].quantization_transform=a);let f=this._getOctahedronTransform(s,r);f&&(n[s.unique_id()].octahedron_transform=f)}return n}_getMeshData(e,r,n){let o=this._getMeshAttributes(r,e,n);if(!o.POSITION)throw new Error("DRACO: No position attribute found.");if(e instanceof this.draco.Mesh)switch(n.topology){case"triangle-strip":return{topology:"triangle-strip",mode:4,attributes:o,indices:{value:this._getTriangleStripIndices(e),size:1}};case"triangle-list":default:return{topology:"triangle-list",mode:5,attributes:o,indices:{value:this._getTriangleListIndices(e),size:1}}}return{topology:"point-list",mode:0,attributes:o}}_getMeshAttributes(e,r,n){let o={};for(let s of Object.values(e.attributes)){let i=this._deduceAttributeName(s,n);s.name=i;let a=this._getAttributeValues(r,s);if(a){let{value:f,size:c}=a;o[i]={value:f,size:c,byteOffset:s.byte_offset,byteStride:s.byte_stride,normalized:s.normalized}}}return o}_getTriangleListIndices(e){let n=e.num_faces()*3,o=n*V1,s=this.draco._malloc(o);try{return this.decoder.GetTrianglesUInt32Array(e,o,s),new Uint32Array(this.draco.HEAPF32.buffer,s,n).slice()}finally{this.draco._free(s)}}_getTriangleStripIndices(e){let r=new this.draco.DracoInt32Array;try{return this.decoder.GetTriangleStripsFromMesh(e,r),q1(r)}finally{this.draco.destroy(r)}}_getAttributeValues(e,r){let n=H1[r.data_type];if(!n)return console.warn(`DRACO: Unsupported attribute type ${r.data_type}`),null;let o=r.num_components,i=e.num_points()*o,a=i*n.BYTES_PER_ELEMENT,f=X1(this.draco,n),c,l=this.draco._malloc(a);try{let d=this.decoder.GetAttribute(e,r.attribute_index);this.decoder.GetAttributeDataArrayForAllPoints(e,d,f,a,l),c=new n(this.draco.HEAPF32.buffer,l,i).slice()}finally{this.draco._free(l)}return{value:c,size:o}}_deduceAttributeName(e,r){let n=e.unique_id;for(let[i,a]of Object.entries(r.extraAttributes||{}))if(a===n)return i;let o=e.attribute_type;for(let i in Ka)if(this.draco[i]===o)return Ka[i];let s=r.attributeNameEntry||"name";return e.metadata[s]?e.metadata[s].string:`CUSTOM_ATTRIBUTE_${n}`}_getTopLevelMetadata(e){let r=this.decoder.GetMetadata(e);return this._getDracoMetadata(r)}_getAttributeMetadata(e,r){let n=this.decoder.GetAttributeMetadata(e,r);return this._getDracoMetadata(n)}_getDracoMetadata(e){if(!e||!e.ptr)return{};let r={},n=this.metadataQuerier.NumEntries(e);for(let o=0;o<n;o++){let s=this.metadataQuerier.GetEntryName(e,o);r[s]=this._getDracoMetadataField(e,s)}return r}_getDracoMetadataField(e,r){let n=new this.draco.DracoInt32Array;try{this.metadataQuerier.GetIntEntryArray(e,r,n);let o=W1(n);return{int:this.metadataQuerier.GetIntEntry(e,r),string:this.metadataQuerier.GetStringEntry(e,r),double:this.metadataQuerier.GetDoubleEntry(e,r),intArray:o}}finally{this.draco.destroy(n)}}_disableAttributeTransforms(e){let{quantizedAttributes:r=[],octahedronAttributes:n=[]}=e,o=[...r,...n];for(let s of o)this.decoder.SkipAttributeTransform(this.draco[s])}_getQuantizationTransform(e,r){let{quantizedAttributes:n=[]}=r,o=e.attribute_type();if(n.map(i=>this.decoder[i]).includes(o)){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,r){let{octahedronAttributes:n=[]}=r,o=e.attribute_type();if(n.map(i=>this.decoder[i]).includes(o)){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 X1(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 W1(t){let e=t.size(),r=new Int32Array(e);for(let n=0;n<e;n++)r[n]=t.GetValue(n);return r}function q1(t){let e=t.size(),r=new Int32Array(e);for(let n=0;n<e;n++)r[n]=t.GetValue(n);return r}var Ha={dataType:null,batchType:null,name:"Draco",id:"draco",module:"draco",version:Pa,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}}},as={...Ha,parse:Z1};async function Z1(t,e){let{draco:r}=await Na(e),n=new xr(r);try{return n.parseSync(t,e?.draco)}finally{n.destroy()}}var wn="4.4.0-alpha.1";var On={TRANSCODER:"basis_transcoder.js",TRANSCODER_WASM:"basis_transcoder.wasm",ENCODER:"basis_encoder.js",ENCODER_WASM:"basis_encoder.wasm"},Va;async function fs(t){_r(t.modules);let e=Qo("basis");return e||(Va||=Q1(t),await Va)}async function Q1(t){let e=null,r=null;return[e,r]=await Promise.all([await Lt(On.TRANSCODER,"textures",t),await Lt(On.TRANSCODER_WASM,"textures",t)]),e=e||globalThis.BASIS,await Y1(e,r)}function Y1(t,e){let r={};return e&&(r.wasmBinary=e),new Promise(n=>{t(r).then(o=>{let{BasisFile:s,initializeBasis:i}=o;i(),n({BasisFile:s})})})}var cs;async function ls(t){let e=t.modules||{};return e.basisEncoder?e.basisEncoder:(cs=cs||j1(t),await cs)}async function j1(t){let e=null,r=null;return[e,r]=await Promise.all([await Lt(On.ENCODER,"textures",t),await Lt(On.ENCODER_WASM,"textures",t)]),e=e||globalThis.BASIS,await $1(e,r)}function $1(t,e){let r={};return e&&(r.wasmBinary=e),new Promise(n=>{t(r).then(o=>{let{BasisFile:s,KTX2File:i,initializeBasis:a,BasisEncoder:f}=o;a(),n({BasisFile:s,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"},bn=null;function gr(t){if(!bn){t=t||t_()||void 0,bn=new Set;for(let e of J1)for(let r in Xa)if(t&&t.getExtension(`${e}${r}`)){let n=Xa[r];bn.add(n)}}return bn}function t_(){try{return document.createElement("canvas").getContext("webgl")}catch{return null}}var hs=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,r,n,o){this._dataView=void 0,this._littleEndian=void 0,this._offset=void 0,this._dataView=new DataView(e.buffer,e.byteOffset+r,n),this._littleEndian=o,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),r=this._dataView.getUint32(this._offset+4,this._littleEndian),n=e+2**32*r;return this._offset+=8,n}_nextInt32(){let e=this._dataView.getInt32(this._offset,this._littleEndian);return this._offset+=4,e}_nextUint8Array(e){let r=new Uint8Array(this._dataView.buffer,this._dataView.byteOffset+this._offset,e);return this._offset+=e,r}_skip(e){return this._offset+=e,this}_scan(e,r=0){let n=this._offset,o=0;for(;this._dataView.getUint8(this._offset)!==r&&o<e;)o++,this._offset++;return o<e&&this._offset++,new Uint8Array(this._dataView.buffer,this._dataView.byteOffset+n,o)}};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 r=new hs,n=17*Uint32Array.BYTES_PER_ELEMENT,o=new me(t,it.length,n,!0);r.vkFormat=o._nextUint32(),r.typeSize=o._nextUint32(),r.pixelWidth=o._nextUint32(),r.pixelHeight=o._nextUint32(),r.pixelDepth=o._nextUint32(),r.layerCount=o._nextUint32(),r.faceCount=o._nextUint32();let s=o._nextUint32();r.supercompressionScheme=o._nextUint32();let i=o._nextUint32(),a=o._nextUint32(),f=o._nextUint32(),c=o._nextUint32(),l=o._nextUint64(),d=o._nextUint64(),_=s*3*8,h=new me(t,it.length+n,_,!0);for(let ot=0;ot<s;ot++)r.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 ot=0;ot<y;ot++){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[ot]=Ot}r.dataFormatDescriptor.length=0,r.dataFormatDescriptor.push(A);let B=new me(t,f,c,!0);for(;B._offset<c;){let ot=B._nextUint32(),Ot=B._scan(ot),Be=Wa(Ot);if(r.keyValue[Be]=B._nextUint8Array(ot-Ot.byteLength-1),Be.match(/^ktx/i)){let w=Wa(r.keyValue[Be]);r.keyValue[Be]=w.substring(0,w.lastIndexOf("\0"))}let O=ot%4?4-ot%4:0;B._skip(O)}if(d<=0)return r;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 ot=0;ot<s;ot++)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,k=F+x,N=new Uint8Array(t.buffer,t.byteOffset+E,I),j=new Uint8Array(t.buffer,t.byteOffset+U,L),nt=new Uint8Array(t.buffer,t.byteOffset+F,x),V=new Uint8Array(t.buffer,t.byteOffset+k,m);return r.globalData={endpointCount:R,selectorCount:D,imageDescs:g,endpointsData:N,selectorsData:j,tablesData:nt,extendedData:V},r}function Ve(t,e){let r=new Array(e.mipMapLevels),n=e.width,o=e.height,s=0;for(let i=0;i<e.mipMapLevels;++i){let a=r_(e,n,o,t,i),f=e_(t,i,s,a);r[i]={compressed:!0,format:e.internalFormat,data:f,width:n,height:o,levelSize:a},n=Math.max(1,n>>1),o=Math.max(1,o>>1),s+=a}return r}function e_(t,e,r,n){return Array.isArray(t)?t[e].levelData:new Uint8Array(t.buffer,t.byteOffset+r,n)}function r_(t,e,r,n,o){return Array.isArray(n)?t.sizeFunction(n[o]):t.sizeFunction(e,r)}var n_={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 n_[t]}var ut=[171,75,84,88,32,50,48,187,13,10,26,10];function Cn(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),r=qa(e),n=Math.max(1,r.levels.length),o=r.pixelWidth,s=r.pixelHeight,i=Za(r.vkFormat);return Ve(r.levels,{mipMapLevels:n,width:o,height:s,sizeFunction:a=>a.uncompressedByteLength,internalFormat:i})}var o_={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 Bn(t,e){if(e.basis.containerFormat==="auto"){if(Cn(t)){let n=await ls(e);return Ya(n.KTX2File,t,e)}let{BasisFile:r}=await fs(e);return _s(r,t,e)}switch(e.basis.module){case"encoder":let r=await ls(e);switch(e.basis.containerFormat){case"ktx2":return Ya(r.KTX2File,t,e);case"basis":default:return _s(r.BasisFile,t,e)}case"transcoder":default:let{BasisFile:n}=await fs(e);return _s(n,t,e)}}function _s(t,e,r){let n=new t(new Uint8Array(e));try{if(!n.startTranscoding())throw new Error("Failed to start basis transcoding");let o=n.getNumImages(),s=[];for(let i=0;i<o;i++){let a=n.getNumLevels(i),f=[];for(let c=0;c<a;c++)f.push(s_(n,i,c,r));s.push(f)}return s}finally{n.close(),n.delete()}}function s_(t,e,r,n){let o=t.getImageWidth(e,r),s=t.getImageHeight(e,r),i=t.getHasAlpha(),{compressed:a,format:f,basisFormat:c}=ja(n,i),l=t.getImageTranscodedSizeInBytes(e,r,c),d=new Uint8Array(l);if(!t.transcodeImage(d,e,r,c,0,0))throw new Error("failed to start Basis transcoding");return{width:o,height:s,data:d,compressed:a,format:f,hasAlpha:i}}function Ya(t,e,r){let n=new t(new Uint8Array(e));try{if(!n.startTranscoding())throw new Error("failed to start KTX2 transcoding");let o=n.getLevels(),s=[];for(let i=0;i<o;i++)s.push(i_(n,i,r));return[s]}finally{n.close(),n.delete()}}function i_(t,e,r){let{alphaFlag:n,height:o,width:s}=t.getImageLevelInfo(e,0,0),{compressed:i,format:a,basisFormat:f}=ja(r,n),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:s,height:o,data:l,compressed:i,levelSize:c,hasAlpha:n,format:a}}function ja(t,e){let r=t&&t.basis&&t.basis.format;return r==="auto"&&(r=Dn()),typeof r=="object"&&(r=e?r.alpha:r.noAlpha),r=r.toLowerCase(),o_[r]}function Dn(){let t=gr();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:wn,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"}}},Er={...$a,parse:Bn};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_=In,l_=In,h_={DXT1:ec,DXT3:In,DXT5:In,"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),r=e[pt.HEADER_PF_FOURCC_INDEX];ee(Boolean(e[pt.HEADER_PF_FLAGS_INDEX]&pt.DDPF_FOURCC),"DDS: Unsupported format, must contain a FourCC code");let n=__(r),o=a_[n],s=h_[n];ee(o&&s,`DDS: Unknown pixel format ${r}`);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:s,internalFormat:o})}function ec(t,e){return(t+3>>2)*(e+3>>2)*8}function In(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:rc,1:rc,2:nc,3:nc,6:Sr,7:Sr,9:Rr,11:Rr,22:Sr,23:Rr,24:Sr,25:Sr,26:Rr,27:Rr,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 oc(t){let r=new Uint32Array(t,0,gt.HEADER_LENGTH)[gt.MAGIC_NUMBER_INDEX];return r===gt.MAGIC_NUMBER||r===gt.MAGIC_NUMBER_EXTRA}function sc(t){let e=new Uint32Array(t,0,gt.HEADER_LENGTH),r=e[gt.PIXEL_FORMAT_INDEX],n=e[gt.COLOUR_SPACE_INDEX],o=d_[r]||[],s=o.length>1&&n?o[1]:o[0],i=u_[r],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:s})}function rc(t,e){return t=Math.max(t,16),e=Math.max(e,8),t*e/4}function nc(t,e){return t=Math.max(t,8),e=Math.max(e,8),t*e/2}function Sr(t,e){return Math.floor((t+3)/4)*Math.floor((e+3)/4)*8}function Rr(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(Cn(t))return Qa(t);if(Ja(t))return tc(t);if(oc(t))return sc(t);throw new Error("Texture container format not recognized")}var ac={dataType:null,batchType:null,name:"Texture Containers",id:"compressed-texture",module:"textures",version:wn,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}}},vn={...ac,parse:async(t,e)=>e?.["compressed-texture"]?.useBasis?(e.basis={format:{alpha:"BC3",noAlpha:"BC1"},...e.basis,containerFormat:"ktx2",module:"encoder"},(await Bn(t,e))[0]):ic(t)};var Tr;(function(t){t.vertexCount="vertexCount",t.featureCount="featureCount"})(Tr||(Tr={}));function Ln(t){let e;try{let r=new URL(t);e=`${r.origin}${r.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:r=[]}=e,n=[];for(let o=0;o<r.length;o++){let s=r[o].href.replace("./","");n.push(`${t}/${s}`)}return n}function fc(t,e,r){let n=[],{attributeStorageInfo:o=[]}=t;for(let s=0;s<o.length;s++){let i=o[s].key;n.push(`${e}/nodes/${r}/attributes/${i}/0`)}return n}var Nn=new v([0,0,0]);function b_(t){switch(t){case"ktx-etc2":case"dds":return vn;case"ktx2":return Er;case"jpg":case"png":default:return yn}}var C_="i3s-attribute-type";async function dc(t,e,r,n,o){let s={attributes:{},indices:null,featureIds:[],vertexCount:0,modelMatrix:new dt,coordinateSystem:0,byteLength:0,texture:null};if(e.textureUrl){let i=Pt(e.textureUrl,n?.i3s?.token),a=b_(e.textureFormat),l=await(await(o?.fetch||fetch)(i)).arrayBuffer();if(n?.i3s.decodeTextures){if(a===yn){let d={...e.textureLoaderOptions,image:{type:"data"}};try{let _=await Zo(l,[],d,o);s.texture=_}catch{let h=await(0,Mr.parse)(l,a,d,o);s.texture=h}}else if(a===vn||a===Er){let d=await(0,Mr.load)(l,a,e.textureLoaderOptions);a===Er&&(d=d[0]),s.texture={compressed:!0,mipmaps:!1,width:d[0].width,height:d[0].height,data:d}}}else s.texture=l}return s.material=U_(e.materialDefinition,s.texture),s.material&&(s.texture=null),await B_(t,s,e,r,n)}async function B_(t,e,r,n,o){let s=t.byteLength,i,a,f=0,c=0,l;if(r.isDracoGeometry){let d=await(0,Mr.parse)(t,as,{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}=n.store.defaultGeometrySchema,A=v_(t,n);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);G_(y),i=I_(p,y)}if(!o?.i3s?.coordinateSystem||o.i3s.coordinateSystem===Dt.METER_OFFSETS){let d=N_(i.position,r);e.modelMatrix=d.invert(),e.coordinateSystem=Dt.METER_OFFSETS}else e.modelMatrix=F_(i.position),e.coordinateSystem=Dt.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=s,e}function D_(t,e){for(let r in e.loaderData.attributes){let n=e.loaderData.attributes[r];switch(n.name){case"POSITION":t.position.metadata=n.metadata;break;case"feature-index":t.id.metadata=n.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 r=0,n=0,o=0;for(let{property:s,type:i}of e.store.defaultGeometrySchema.header){let a=Xo(i);switch(s){case Tr.vertexCount.toString():n=new a(t,0,4)[0],r+=Fe(i);break;case Tr.featureCount.toString():o=new a(t,4,4)[0],r+=Fe(i);break;default:break}}return{vertexCount:n,featureCount:o,byteOffset:r}}function hc(t,e,r,n,o){let s={};for(let i of o)if(r[i]){let{valueType:a,valuesPerElement:f}=r[i];if(e+n*f*Fe(a)<=t.byteLength){let c=t.slice(e),l;if(a==="UInt64")l=L_(c,n*f,Fe(a));else{let d=Xo(a);l=new d(c,0,n*f)}switch(s[i]={value:l,type:aa[a],size:f},i){case"color":s.color.normalized=!0;break;case"position":case"region":case"normal":default:}e=e+n*f*Fe(a)}else if(i!=="uv0")break}return{attributes:s,byteOffset:e}}function L_(t,e,r){let n=[],o=new DataView(t),s=0;for(let i=0;i<e;i++){let a=o.getUint32(s,!0),f=o.getUint32(s+4,!0),c=a+2**32*f;n.push(c),s+=r}return new Uint32Array(n)}function N_(t,e){let r=e.mbs,n=t.value,o=t.metadata,s=new dt,i=new v(r[0],r[1],r[2]),a=new v;return At.WGS84.cartographicToCartesian(i,a),At.WGS84.eastNorthUpToFixedFrame(a,s),t.value=P_(n,o,i),s}function P_(t,e={},r){let n=new Float64Array(t.length),o=e["i3s-scale_x"]&&e["i3s-scale_x"].double||1,s=e["i3s-scale_y"]&&e["i3s-scale_y"].double||1;for(let i=0;i<n.length;i+=3)n[i]=t[i]*o+r.x,n[i+1]=t[i+1]*s+r.y,n[i+2]=t[i+2]+r.z;for(let i=0;i<n.length;i+=3)At.WGS84.cartographicToCartesian(n.subarray(i,i+3),Nn),n[i]=Nn.x,n[i+1]=Nn.y,n[i+2]=Nn.z;return n}function F_(t){let e=t.metadata,r=e?.["i3s-scale_x"]?.double||1,n=e?.["i3s-scale_y"]?.double||1,o=new dt;return o[0]=r,o[5]=n,o}function U_(t,e){let r;return t?r={...t,pbrMetallicRoughness:t.pbrMetallicRoughness?{...t.pbrMetallicRoughness}:{baseColorFactor:[255,255,255,255]}}:(r={pbrMetallicRoughness:{}},e?r.pbrMetallicRoughness.baseColorTexture={texCoord:0}:r.pbrMetallicRoughness.baseColorFactor=[255,255,255,255]),r.alphaCutoff=r.alphaCutoff||.25,r.alphaMode&&(r.alphaMode=r.alphaMode.toUpperCase()),r.emissiveFactor&&(r.emissiveFactor=_c(r.emissiveFactor)),r.pbrMetallicRoughness&&r.pbrMetallicRoughness.baseColorFactor&&(r.pbrMetallicRoughness.baseColorFactor=_c(r.pbrMetallicRoughness.baseColorFactor)),e&&k_(r,e),r}function _c(t){let e=[...t];for(let r=0;r<t.length;r++)e[r]=t[r]/255;return e}function k_(t,e){let r={source:{image:e}};t.pbrMetallicRoughness&&t.pbrMetallicRoughness.baseColorTexture?t.pbrMetallicRoughness.baseColorTexture={...t.pbrMetallicRoughness.baseColorTexture,texture:r}:t.emissiveTexture?t.emissiveTexture={...t.emissiveTexture,texture:r}:t.pbrMetallicRoughness&&t.pbrMetallicRoughness.metallicRoughnessTexture?t.pbrMetallicRoughness.metallicRoughnessTexture={...t.pbrMetallicRoughness.metallicRoughnessTexture,texture:r}:t.normalTexture?t.normalTexture={...t.normalTexture,texture:r}:t.occlusionTexture&&(t.occlusionTexture={...t.occlusionTexture,texture:r})}function G_(t){let{id:e,faceRange:r}=t;if(!e||!r)return;let n=e.value,o=r.value,s=o[o.length-1]+1,i=new Uint32Array(s*3),a=0,f=0;for(let c=1;c<o.length;c+=2){let l=Number(n[a]),d=o[c],_=o[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 r=t.id.value,n=new Float32Array(r.length);for(let o=0;o<r.length;o++)n[o]=e[r[o]];t.id.value=n}function K_(t){return t?.metadata?.["i3s-feature-ids"]?.intArray}var H_="4.4.0-alpha.1",Pn={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,r){let{tile:n,_tileOptions:o,tileset:s,_tilesetOptions:i}=e?.i3s||{},a=o||n,f=i||s;return!a||!f?null:await dc(t,a,f,e,r)}var et={OUTSIDE:-1,INTERSECTING:0,INSIDE:1};var _E=new v,dE=new v;var yr=new v,uc=new v,ne=class{constructor(e=[0,0,0],r=0){this.radius=-0,this.center=new v,this.fromCenterRadius(e,r)}fromCenterRadius(e,r){return this.center.from(e),this.radius=r,this}fromCornerPoints(e,r){return r=yr.from(r),this.center=new v().from(e).add(r).scale(.5),this.radius=this.center.distance(r),this}equals(e){return this===e||Boolean(e)&&this.center.equals(e.center)&&this.radius===e.radius}clone(){return new ne(this.center,this.radius)}union(e){let r=this.center,n=this.radius,o=e.center,s=e.radius,i=yr.copy(o).subtract(r),a=i.magnitude();if(n>=a+s)return this.clone();if(s>=a+n)return e.clone();let f=(n+a+s)*.5;return uc.copy(i).scale((-n+f)/a).add(r),this.center.copy(uc),this.radius=f,this}expand(e){let n=yr.from(e).subtract(this.center).magnitude();return n>this.radius&&(this.radius=n),this}transform(e){this.center.transform(e);let r=fr.getScaling(yr,e);return this.radius=Math.max(r[0],Math.max(r[1],r[2]))*this.radius,this}distanceSquaredTo(e){let r=this.distanceTo(e);return r*r}distanceTo(e){let n=yr.from(e).subtract(this.center);return Math.max(0,n.len()-this.radius)}intersectPlane(e){let r=this.center,n=this.radius,s=e.normal.dot(r)+e.distance;return s<-n?et.OUTSIDE:s<n?et.INTERSECTING:et.INSIDE}};var X_=new v,W_=new v,Fn=new v,Un=new v,kn=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},oe=class{constructor(e=[0,0,0],r=[0,0,0,0,0,0,0,0,0]){this.center=new v().from(e),this.halfAxes=new Y(r)}get halfSize(){let e=this.halfAxes.getColumn(0),r=this.halfAxes.getColumn(1),n=this.halfAxes.getColumn(2);return[new v(e).len(),new v(r).len(),new v(n).len()]}get quaternion(){let e=this.halfAxes.getColumn(0),r=this.halfAxes.getColumn(1),n=this.halfAxes.getColumn(2),o=new v(e).normalize(),s=new v(r).normalize(),i=new v(n).normalize();return new Pe().fromMatrix3(new Y([...o,...s,...i]))}fromCenterHalfSizeQuaternion(e,r,n){let o=new Pe(n),s=new Y().fromQuaternion(o);return s[0]=s[0]*r[0],s[1]=s[1]*r[0],s[2]=s[2]*r[0],s[3]=s[3]*r[1],s[4]=s[4]*r[1],s[5]=s[5]*r[1],s[6]=s[6]*r[2],s[7]=s[7]*r[2],s[8]=s[8]*r[2],this.center=new v().from(e),this.halfAxes=s,this}clone(){return new oe(this.center,this.halfAxes)}equals(e){return this===e||Boolean(e)&&this.center.equals(e.center)&&this.halfAxes.equals(e.halfAxes)}getBoundingSphere(e=new ne){let r=this.halfAxes,n=r.getColumn(0,Fn),o=r.getColumn(1,Un),s=r.getColumn(2,kn),i=X_.copy(n).add(o).add(s);return e.center.copy(this.center),e.radius=i.magnitude(),e}intersectPlane(e){let r=this.center,n=e.normal,o=this.halfAxes,s=n.x,i=n.y,a=n.z,f=Math.abs(s*o[Wt.COLUMN0ROW0]+i*o[Wt.COLUMN0ROW1]+a*o[Wt.COLUMN0ROW2])+Math.abs(s*o[Wt.COLUMN1ROW0]+i*o[Wt.COLUMN1ROW1]+a*o[Wt.COLUMN1ROW2])+Math.abs(s*o[Wt.COLUMN2ROW0]+i*o[Wt.COLUMN2ROW1]+a*o[Wt.COLUMN2ROW2]),c=n.dot(r)+e.distance;return c<=-f?et.OUTSIDE:c>=f?et.INSIDE:et.INTERSECTING}distanceTo(e){return Math.sqrt(this.distanceSquaredTo(e))}distanceSquaredTo(e){let r=W_.from(e).subtract(this.center),n=this.halfAxes,o=n.getColumn(0,Fn),s=n.getColumn(1,Un),i=n.getColumn(2,kn),a=o.magnitude(),f=s.magnitude(),c=i.magnitude();o.normalize(),s.normalize(),i.normalize();let l=0,d;return d=Math.abs(r.dot(o))-a,d>0&&(l+=d*d),d=Math.abs(r.dot(s))-f,d>0&&(l+=d*d),d=Math.abs(r.dot(i))-c,d>0&&(l+=d*d),l}computePlaneDistances(e,r,n=[-0,-0]){let o=Number.POSITIVE_INFINITY,s=Number.NEGATIVE_INFINITY,i=this.center,a=this.halfAxes,f=a.getColumn(0,Fn),c=a.getColumn(1,Un),l=a.getColumn(2,kn),d=q_.copy(f).add(c).add(l).add(i),_=Z_.copy(d).subtract(e),h=r.dot(_);return o=Math.min(h,o),s=Math.max(h,s),d.copy(i).add(f).add(c).subtract(l),_.copy(d).subtract(e),h=r.dot(_),o=Math.min(h,o),s=Math.max(h,s),d.copy(i).add(f).subtract(c).add(l),_.copy(d).subtract(e),h=r.dot(_),o=Math.min(h,o),s=Math.max(h,s),d.copy(i).add(f).subtract(c).subtract(l),_.copy(d).subtract(e),h=r.dot(_),o=Math.min(h,o),s=Math.max(h,s),i.copy(d).subtract(f).add(c).add(l),_.copy(d).subtract(e),h=r.dot(_),o=Math.min(h,o),s=Math.max(h,s),i.copy(d).subtract(f).add(c).subtract(l),_.copy(d).subtract(e),h=r.dot(_),o=Math.min(h,o),s=Math.max(h,s),i.copy(d).subtract(f).subtract(c).add(l),_.copy(d).subtract(e),h=r.dot(_),o=Math.min(h,o),s=Math.max(h,s),i.copy(d).subtract(f).subtract(c).subtract(l),_.copy(d).subtract(e),h=r.dot(_),o=Math.min(h,o),s=Math.max(h,s),n[0]=o,n[1]=s,n}transform(e){this.center.transformAsPoint(e);let r=this.halfAxes.getColumn(0,Fn);r.transformAsPoint(e);let n=this.halfAxes.getColumn(1,Un);n.transformAsPoint(e);let o=this.halfAxes.getColumn(2,kn);return o.transformAsPoint(e),this.halfAxes=new Y([...r,...n,...o]),this}getTransform(){throw new Error("not implemented")}};var pc=new v,mc=new v,qt=class{constructor(e=[0,0,1],r=0){this.normal=new v,this.distance=-0,this.fromNormalDistance(e,r)}fromNormalDistance(e,r){return tt(Number.isFinite(r)),this.normal.from(e).normalize(),this.distance=r,this}fromPointNormal(e,r){e=pc.from(e),this.normal.from(r).normalize();let n=-this.normal.dot(e);return this.distance=n,this}fromCoefficients(e,r,n,o){return this.normal.set(e,r,n),tt(_t(this.normal.len(),1)),this.distance=o,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 r=mc.copy(this.normal).transformAsVector(e).normalize(),n=this.normal.scale(-this.distance).transform(e);return this.fromPointNormal(n,r)}projectPointOntoPlane(e,r=[0,0,0]){let n=pc.from(e),o=this.getPointDistance(n),s=mc.copy(this.normal).scale(o);return n.subtract(s).to(r)}};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 r=e.center,n=e.radius,o=0;for(let s of Ac){let i=this.planes[o],a=this.planes[o+1];i||(i=this.planes[o]=new qt),a||(a=this.planes[o+1]=new qt);let f=xc.copy(s).scale(-n).add(r);i.fromPointNormal(f,s);let c=xc.copy(s).scale(n).add(r),l=Q_.copy(s).negate();a.fromPointNormal(c,l),o+=2}return this}computeVisibility(e){let r=et.INSIDE;for(let n of this.planes)switch(e.intersectPlane(n)){case et.OUTSIDE:return et.OUTSIDE;case et.INTERSECTING:r=et.INTERSECTING;break;default:}return r}computeVisibilityWithPlaneMask(e,r){if(tt(Number.isFinite(r),"parentPlaneMask is required."),r===Et.MASK_OUTSIDE||r===Et.MASK_INSIDE)return r;let n=Et.MASK_INSIDE,o=this.planes;for(let s=0;s<this.planes.length;++s){let i=s<31?1<<s:0;if(s<31&&!(r&i))continue;let a=o[s],f=e.intersectPlane(a);if(f===et.OUTSIDE)return Et.MASK_OUTSIDE;f===et.INTERSECTING&&(n|=i)}return n}};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,rS=new Y,nS=new Y,oS=new Y,sS=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 wr;(function(t){t[t.ADD=1]="ADD",t[t.REPLACE=2]="REPLACE"})(wr||(wr={}));var Or;(function(t){t.EMPTY="empty",t.SCENEGRAPH="scenegraph",t.POINTCLOUD="pointcloud",t.MESH="mesh"})(Or||(Or={}));var br;(function(t){t.I3S="I3S",t.TILES3D="TILES3D"})(br||(br={}));var ds;(function(t){t.GEOMETRIC_ERROR="geometricError",t.MAX_SCREEN_THRESHOLD="maxScreenThreshold"})(ds||(ds={}));var gc=Ct(Ht(),1);var J_="4.4.0-alpha.1",Gn={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 Cr=class{tileset;nodePages=[];pendingNodePages=[];nodesPerPage;options;lodSelectionMetricType;textureDefinitionsSelectedFormats=[];nodesInNodePages;url;textureLoaderOptions={};constructor(e,r="",n){this.tileset={...e},this.url=r,this.nodesPerPage=e.nodePages?.nodesPerPage||64,this.lodSelectionMetricType=e.nodePages?.lodSelectionMetricType,this.options=n,this.nodesInNodePages=0,this.initSelectedFormatsForTextureDefinitions(e)}async getNodeById(e){let r=Math.floor(e/this.nodesPerPage);if(!this.nodePages[r]&&!this.pendingNodePages[r]){let o=Pt(`${this.url}/nodepages/${r}`,this.options.i3s?.token);this.pendingNodePages[r]={status:"Pending",promise:(0,gc.load)(o,Gn,this.options)},this.nodePages[r]=await this.pendingNodePages[r].promise,this.nodesInNodePages+=this.nodePages[r].nodes.length,this.pendingNodePages[r].status="Done"}this.pendingNodePages[r].status==="Pending"&&(this.nodePages[r]=await this.pendingNodePages[r].promise);let n=e%this.nodesPerPage;return this.nodePages[r].nodes[n]}async formTileFromNodePages(e){let r=await this.getNodeById(e),n=[],o=[];for(let h of r.children||[])o.push(this.getNodeById(h));let s=await Promise.all(o);for(let h of s)n.push({id:h.index.toString(),obb:h.obb});let i,a,f,c="jpg",l=[],d=!1;if(r&&r.mesh){let{url:h,isDracoGeometry:u}=r.mesh.geometry&&this.getContentUrl(r.mesh.geometry)||{isDracoGeometry:!1};i=h,d=u;let{textureData:A,materialDefinition:p}=this.getInformationFromMaterial(r.mesh.material);f=p,c=A.format||c,A.name&&(a=`${this.url}/nodes/${r.mesh.material.resource}/textures/${A.name}`),this.tileset.attributeStorageInfo&&(l=fc(this.tileset,this.url,r.mesh.attribute.resource))}let _=this.getLodSelection(r);return us({id:e.toString(),lodSelection:_,obb:r.obb,contentUrl:i,textureUrl:a,attributeUrls:l,materialDefinition:f,textureFormat:c,textureLoaderOptions:this.textureLoaderOptions,children:n,isDracoGeometry:d})}getContentUrl(e){let r=null,n=this.tileset.geometryDefinitions[e.definition],o=-1;if(this.options.i3s&&this.options.i3s.useDracoGeometry&&(o=n.geometryBuffers.findIndex(s=>s.compressedAttributes&&s.compressedAttributes.encoding==="draco")),o===-1&&(o=n.geometryBuffers.findIndex(s=>!s.compressedAttributes)),o!==-1){let s=Boolean(n.geometryBuffers[o].compressedAttributes);r={url:`${this.url}/nodes/${e.resource}/geometries/${o}`,isDracoGeometry:s}}return r}getLodSelection(e){let r=[];return this.lodSelectionMetricType==="maxScreenThresholdSQ"&&r.push({metricType:"maxScreenThreshold",maxError:Math.sqrt(e.lodThreshold/(Math.PI*.25))}),r.push({metricType:this.lodSelectionMetricType,maxError:e.lodThreshold}),r}getInformationFromMaterial(e){let r={textureData:{name:null}};if(e){let n=this.tileset.materialDefinitions?.[e.definition];if(n){r.materialDefinition=n;let o=n?.pbrMetallicRoughness?.baseColorTexture?.textureSetDefinitionId;typeof o=="number"&&(r.textureData=this.textureDefinitionsSelectedFormats[o]||r.textureData)}}return r}initSelectedFormatsForTextureDefinitions(e){this.textureDefinitionsSelectedFormats=[];let r=this.getSupportedTextureFormats(),n=e.textureSetDefinitions||[];for(let o of n){let s=o&&o.formats||[],i=null;for(let a of r){let f=s.find(c=>c.format===a);if(f){i=f;break}}i&&i.format==="ktx2"&&(this.textureLoaderOptions.basis={format:Dn(),containerFormat:"ktx2",module:"encoder"}),this.textureDefinitionsSelectedFormats.push(i)}}getSupportedTextureFormats(){let e=[];if(!this.options.i3s||this.options.i3s.useCompressedTextures){let r=gr();r.has("etc2")&&e.push("ktx-etc2"),r.has("dxt")&&e.push("dds"),e.push("ktx2")}return e.push("jpg"),e.push("png"),e}};function Sc(t,e){let r=e.url||"",n;t.geometryData&&(n=`${r}/${t.geometryData[0].href}`);let o;t.textureData&&(o=`${r}/${t.textureData[0].href}`);let s;t.attributeData&&(s=cc(r,t));let i=t.children||[];return us({...t,children:i,url:r,contentUrl:n,textureUrl:o,textureFormat:"jpg",attributeUrls:s,isDracoGeometry:!1})}function us(t){let e={},r=[0,0,0,1];if(t.mbs)r=t.mbs,e.sphere=[...At.WGS84.cartographicToCartesian(t.mbs.slice(0,3)),t.mbs[3]];else if(t.obb){e.box=[...At.WGS84.cartographicToCartesian(t.obb.center),...t.obb.halfSize,...t.obb.quaternion];let f=new oe().fromCenterHalfSizeQuaternion(e.box.slice(0,3),t.obb.halfSize,t.obb.quaternion).getBoundingSphere();e.sphere=[...f.center,f.radius],r=[...t.obb.center,f.radius]}let n=t.lodSelection?.[0].metricType,o=t.lodSelection?.[0].maxError,s=Or.MESH,i=wr.REPLACE;return{...t,mbs:r,boundingVolume:e,lodMetricType:n,lodMetricValue:o,type:s,refine:i}}async function Rc(t,e,r){let n=Ln(r.url||""),o,s;if(t.nodePages)o=new Cr(t,n,e),s=await o.formTileFromNodePages(0);else{let i=e.i3s,a=Pt(`${n}/nodes/root`,i.token);s=await(0,Ec.load)(a,Br,{...e,i3s:{...e.i3s,loadContent:!1,isTileHeader:!0,isTileset:!1}})}return{...t,loader:Br,url:n,basePath:n,type:br.I3S,nodePagesTile:o,root:s,lodMetricType:s.lodMetricType,lodMetricValue:s.lodMetricValue}}var ed="4.4.0-alpha.1",rd=/layers\/[0-9]+$/,nd=/\.slpk$/,od=/nodes\/([0-9-]+|root)$/,sd="504b0304",id="PointCloud",Br={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:Dt.METER_OFFSETS}}};async function ad(t,e={},r){let n=r.url;if(e.i3s=e.i3s||{},hd(t)===sd)throw new Error("Files with .slpk extention currently are not supported by I3SLoader");let s=Ln(n),i;e.i3s.isTileset==="auto"?i=rd.test(s)||nd.test(s):i=e.i3s.isTileset;let a;return e.isTileHeader==="auto"?a=od.test(s):a=e.i3s.isTileHeader,i?t=await fd(t,e,r):a?t=await ld(t,r):t=await cd(t,e),t}async function cd(t,e){return await(0,Tc.parse)(t,Pn,e)}async function fd(t,e,r){let n=JSON.parse(new TextDecoder().decode(t));if(n?.layerType===id)throw new Error("Point Cloud layers currently are not supported by I3SLoader");return await Rc(n,e,r)}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 Dr=async(t,e)=>{let r=[await t.getUint8(t.length-1n),await t.getUint8(t.length-2n),await t.getUint8(t.length-3n),void 0],n=-1,o=t.length-4n;do{let s=o;o-=BigInt(1024),o=o>=0n?o:0n;let i=new Uint8Array(await t.slice(o,s));for(let a=i.length-1;a>-1;a--)if(r[3]=r[2],r[2]=r[1],r[1]=r[0],r[0]=i[a],r.every((f,c)=>f===e[c])){n=a;break}}while(n===-1&&o>0n);return o+BigInt(n)};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 Dr(t,Mc),r=BigInt(await t.getUint16(e+_d)),n=BigInt(await t.getUint32(e+dd)),o=BigInt(await t.getUint32(e+ud)),s=e-20n,i=0n,a=await t.slice(s,s+4n);if(re(a,yc)){i=await t.getBigUint64(s+pd);let f=await t.slice(i,i+4n);if(!re(f,wc.buffer))throw new Error("zip64 EoCD not found");r=await t.getBigUint64(i+md),n=await t.getBigUint64(i+Ad),o=await t.getBigUint64(i+xd)}else s=0n;return{cdRecordsNumber:r,cdStartOffset:o,cdByteSize:n,offsets:{zip64EoCDOffset:i,zip64EoCDLocatorOffset:s,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,zn=46n,vr=new Uint8Array([80,75,1,2]),Ir=async(t,e)=>{if(t>=e.length)return null;let r=new DataView(await e.slice(t,t+zn)),n=r.buffer.slice(0,4);if(!re(n,vr.buffer))return null;let o=BigInt(r.getUint32(gd,!0)),s=BigInt(r.getUint32(Ed,!0)),i=r.getUint16(Rd,!0),a=BigInt(r.getUint16(Td,!0)),f=r.getUint16(Sd,!0),c=await e.slice(t+zn,t+zn+BigInt(f+i)),l=c.slice(0,f),d=new TextDecoder().decode(l),_=t+zn+BigInt(f),h=r.getUint32(Md,!0),u=BigInt(h),A=new DataView(c.slice(f,c.byteLength)),p={uncompressedSize:s,compressedSize:o,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:r}=await Oc(t),n=new pe(new DataView(await t.slice(e,e+r))),o=await Ir(0n,n);for(;o;)yield o,o=await Ir(o.extraOffset+BigInt(o.extraFieldLength),n)}var bc=(...t)=>t[0]+t[1]*16,yd=(t,e)=>{let r=wd(t),n={};if(r.length>0){let o=r.reduce((a,f)=>a+f.length,0),s=new Uint8Array(e.buffer).findIndex((a,f,c)=>bc(c[f],c[f+1])===1&&bc(c[f+2],c[f+3])===o),i=0;for(let a of r){let f=i;n[a.name]=e.getBigUint64(s+4+f,!0),i=f+a.length}}return n},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(vr.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,Kn=30n,ps=new Uint8Array([80,75,3,4]),Ae=async(t,e)=>{let r=new DataView(await e.slice(t,t+Kn)),n=r.buffer.slice(0,4);if(!re(n,ps))return null;let o=r.getUint16(Bd,!0),s=r.getUint16(Dd,!0),i=await e.slice(t+Kn,t+Kn+BigInt(o+s)),a=i.slice(0,o),f=new DataView(i.slice(o,i.byteLength)),c=new TextDecoder().decode(a).split("\\").join("/"),l=t+Kn+BigInt(o+s),d=r.getUint16(Od,!0),_=BigInt(r.getUint32(bd,!0)),h=BigInt(r.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:o,fileName:c,extraFieldLength:s,fileDataOffset:l,compressedSize:_,compressionMethod:d}};var pR=[{offset:0,size:4,default:new DataView(ps.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 Hn=class{constructor(e={}){this.hashBatches=this.hashBatches.bind(this)}async preload(){}async*hashBatches(e,r="base64"){let n=[];for await(let i of e)n.push(i),yield i;let o=await this.concatenate(n),s=await this.hash(o,r);this.options.crypto?.onEnd?.({hash:s})}async concatenate(e){return await dr(e)}};function Cc(t){t=`${t}`;for(let r=0;r<t.length;r++)if(t.charCodeAt(r)>255)return null;let e="";for(let r=0;r<t.length;r+=3){let n=[void 0,void 0,void 0,void 0];n[0]=t.charCodeAt(r)>>2,n[1]=(t.charCodeAt(r)&3)<<4,t.length>r+1&&(n[1]|=t.charCodeAt(r+1)>>4,n[2]=(t.charCodeAt(r+1)&15)<<2),t.length>r+2&&(n[2]|=t.charCodeAt(r+2)>>6,n[3]=t.charCodeAt(r+2)&63);for(let o=0;o<n.length;o++)typeof n[o]>"u"?e+="=":e+=Id(n[o])}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 r=(t.match(/\w{2}/g)||[]).map(n=>String.fromCharCode(parseInt(n,16))).join("");return Cc(r)||""}var Ic=typeof atob=="function"?atob:typeof Buffer=="function"?Gd: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="),ms=WebAssembly&&Ic!==Lc?kd(Ld).buffer:!1,Ft=zd(),As=240*16*16,vc=Math.floor(As*16*1.066666667),Nd=268435456-65536,Dc="Parameter must be Buffer, ArrayBuffer or Uint8Array",Pd="Parameter exceeds max size of 255.9 Mbytes";ms||console.log("WebAssembly not available or WASM module could not be decoded; md5WASM will fall back to JavaScript");function xs(t){var e,r,n,o,s,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&&(s=i.length,ms&&s>vc?s>Nd?S(new Error(Pd)):(e=new WebAssembly.Memory({initial:s>32e6?s>64e6?s>128e6?4096:2048:1024:512}),r=new Uint32Array(e.buffer),o={mem:e,log:console.log},n={imports:o},WebAssembly.instantiate(ms,n).then(A)):p(d(i))),h;function A(y){p(_(i,y.instance.exports,r))}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,r,n,o,s,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,k,N,j,nt,V,ot,Ot=new Date().getTime(),Be=0,O=1732584193,w=-271733879,b=-1732584194,C=271733878,Z=0,nr=u.length*8,tn;for(tn=Gl(u,_),_[nr>>>5]|=128<<nr%32,_[(nr+64>>>9<<4)+14]=nr,tn=(nr+64>>>9<<4)+15,V=_;Z<tn;)tn>Z+vc?(n(O),s(w),a(b),c(C),e(As),Z=Z+As*16,O=r(),w=o(),b=i(),C=f(),Be++):(k=O,N=w,j=b,nt=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+k>>>0,w=w+N>>>0,b=b+j>>>0,C=C+nt>>>0);return Ft.endian([O,w,b,C]);function P(st,en,bt){return bt<<st|bt>>>en}function Gl(st,en){for(var bt=-1,lo=Math.floor((st.length-1)/4),ft=0,ri,ni,oi,si;lo-8>bt++;)ft=bt<<2,en[bt]=st[ft+0]|st[ft+1]<<8|st[ft+2]<<16|st[ft+3]<<24;for(bt--;lo>bt++;)ft=bt<<2,ri=typeof st[ft+0]>"u"?0:st[ft+0],ni=typeof st[ft+1]>"u"?0:st[ft+1],oi=typeof st[ft+2]>"u"?0:st[ft+2],si=typeof st[ft+3]>"u"?0:st[ft+3],en[bt]=ri|ni<<8|oi<<16|si<<24;return lo+1}};return function(u,A,p,S){var y;return e=A.loops,t=A.loop,r=A.getA,o=A.getB,i=A.getC,f=A.getD,l=A.getX,n=A.setA,s=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,r){var n,o,s,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 k=0;k<I.length;k+=16)B=x,T=m,R=g,D=E,n=I[k+0]>>>0,o=I[k+1]>>>0,s=I[k+2]>>>0,i=I[k+3]>>>0,a=I[k+4]>>>0,f=I[k+5]>>>0,c=I[k+6]>>>0,l=I[k+7]>>>0,d=I[k+8]>>>0,_=I[k+9]>>>0,h=I[k+10]>>>0,u=I[k+11]>>>0,A=I[k+12]>>>0,p=I[k+13]>>>0,S=I[k+14]>>>0,y=I[k+15]>>>0,x=N(7,25,x+(m&g|~m&E)+n-680876936)+m,E=N(12,20,E+(x&m|~x&g)+o-389564586)+x,g=N(17,15,g+(E&x|~E&m)+s+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)+o-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)+n-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)+s-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)+o-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)+n-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)+s-995338651)+g,x=N(6,26,x+(g^(m|~E))+n-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))+o-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))+s+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,nt,V){return V<<j|V>>>nt}};return function(e,r){var n=Ft.wordsToBytes(t(e,r)),o=r&&r.asBytes?n:Ft.bytesconvertNumberToHex(n);return o}}function kd(t){var e,r,n,o=-1;for(e=t.length-1,r=new ArrayBuffer(t.length),n=new Uint8Array(r);e>o++;)n[o]=t.charCodeAt(o);return n}function Gd(t){return Buffer.from(t,"base64").toString("binary")}function Lc(t){return t}function zd(){var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";return{rotl:function(e,r){return e<<r|e>>>32-r},endian:function(e){if(e.constructor==Number)return Ft.rotl(e,8)&16711935|Ft.rotl(e,24)&4278255360;for(var r=0;r<e.length;r++)e[r]=Ft.endian(e[r]);return e},bytesToWords:function(e){for(var r=[],n=0,o=0;n<e.length;n++,o+=8)r[o>>>5]|=e[n]<<24-o%32;return r},wordsToBytes:function(e){for(var r=[],n=0;n<e.length*32;n+=8)r.push(e[n>>>5]>>>24-n%32&255);return r},bytesconvertNumberToHex:function(e){for(var r=[],n=0;n<e.length;n++)r.push((e[n]>>>4).toString(16)),r.push((e[n]&15).toString(16));return r.join("")}}}var xe=class extends Hn{name="md5";options;constructor(e={}){super(),this.options=e}async hash(e,r){let o=await new Promise((s,i)=>xs(e).then(s).catch(i));return Bc(o,r)}};var Vn=class{constructor(e){this.compressBatches=this.compressBatches.bind(this),this.decompressBatches=this.decompressBatches.bind(this)}async preload(e={}){_r(e)}async compress(e){return await this.preload(),this.compressSync(e)}async decompress(e,r){return await this.preload(),this.decompressSync(e,r)}compressSync(e){throw new Error(`${this.name}: sync compression not supported`)}decompressSync(e,r){throw new Error(`${this.name}: sync decompression not supported`)}async*compressBatches(e){let r=await this.concatenate(e);yield this.compress(r)}async*decompressBatches(e){let r=await this.concatenate(e);yield this.decompress(r)}concatenate(e){return dr(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 Vn{name="deflate";extensions=[];contentEncodings=["deflate"];isSupported=!0;options;_chunks=[];constructor(e={}){super(e),this.options=e}async compress(e){if(!xt&&this.options.deflate?.useZlib){let r=this.options.deflate?.gzip?await Ke($t.default.gzip)(e):await Ke($t.default.deflate)(e);return ze(r)}return this.compressSync(e)}async decompress(e){if(!xt&&this.options.deflate?.useZlib){let r=this.options.deflate?.gzip?await Ke($t.default.gunzip)(e):await Ke($t.default.inflate)(e);return ze(r)}return this.decompressSync(e)}compressSync(e){if(!xt&&this.options.deflate?.useZlib){let s=this.options.deflate?.gzip?$t.default.gzipSync(e):$t.default.deflateSync(e);return ze(s)}let r=this.options?.deflate||{},n=new Uint8Array(e);return(this.options?.raw?Oe.default.deflateRaw:Oe.default.deflate)(n,r).buffer}decompressSync(e){if(!xt&&this.options.deflate?.useZlib){let s=this.options.deflate?.gzip?$t.default.gunzipSync(e):$t.default.inflateSync(e);return ze(s)}let r=this.options?.deflate||{},n=new Uint8Array(e);return(this.options?.raw?Oe.default.inflateRaw:Oe.default.inflate)(n,r).buffer}async*compressBatches(e){let r=this.options?.deflate||{},n=new Oe.default.Deflate(r);yield*this.transformBatches(n,e)}async*decompressBatches(e){let r=this.options?.deflate||{},n=new Oe.default.Inflate(r);yield*this.transformBatches(n,e)}async*transformBatches(e,r){e.onData=this._onData.bind(this),e.onEnd=this._onEnd.bind(this);for await(let i of r){let a=new Uint8Array(i);if(!e.push(a,!1))throw new Error(`${this._getError()}write`);yield*this._getChunks()}let n=new Uint8Array(0),o=e.push(n,!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 r={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}: ${r[e]}`}};var Yr=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)},ao=class{fileProvider=null;fileName;archive=null;constructor(e){if(typeof e=="string")if(this.fileName=e,!xt)this.fileProvider=new pr(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):jo(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=[],r=Xe(this.fileProvider);for await(let n of r)e.push(n.fileName);return e}async stat(e){let r=await this.getCDFileHeader(e);return{...r,size:Number(r.uncompressedSize)}}async fetch(e){this.fileName&&e.indexOf(this.fileName)===0&&(e=e.substring(this.fileName.length+1));let r;if(this.archive)r=await this.archive.getFile(e,"http");else{if(!this.fileProvider)throw new Error("No data detected in the zip archive");let o=await this.getCDFileHeader(e),s=await Ae(o.localHeaderOffset,this.fileProvider);if(!s)throw new Error("Local file header has not been found in the zip archive`");let i=Lp[s.compressionMethod.toString()];if(!i)throw Error("Only Deflation compression is supported");let a=await this.fileProvider.slice(s.fileDataOffset,s.fileDataOffset+s.compressedSize);r=await i(a)}let n=new Response(r);return Object.defineProperty(n,"url",{value:e?`${this.fileName||""}/${e}`:this.fileName||""}),n}async getCDFileHeader(e){if(!this.fileProvider)throw new Error("No data detected in the zip archive");let r=Xe(this.fileProvider),n=null;for await(let o of r)if(o.fileName===e){n=o;break}if(!n)throw new Error("File has not been found in the zip archive");return n}};var Ce=class{fileProvider;fileName;constructor(e,r,n){this.fileProvider=e,this.fileName=n}async getFileWithoutHash(e){return await(await new ao(this.fileProvider).fetch(e)).arrayBuffer()}};function Js(t){let e=new DataView(t),r={};for(let n=0;n<t.byteLength;n=n+24){let o=e.getBigUint64(n+16,!0),s=Np(t,n,16);r[s]=o}return r}function Np(t,e,r){return[...new Uint8Array(t,e,r)].map(n=>n.toString(16).padStart(2,"0")).join("")}async function ti(t){let e=Xe(t);return Pp(e)}async function Pp(t){let e=new xe,r=new TextEncoder,n={};for await(let o of t){let s=o.fileName.split("\\").join("/").toLocaleLowerCase(),i=r.encode(s).buffer,a=await e.hash(i,"hex");n[a]=o.localHeaderOffset}return n}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"]}],rr=class extends Ce{hashTable;_textEncoder=new TextEncoder;_textDecoder=new TextDecoder;_md5Hash=new xe;constructor(e,r,n){super(e,r,n),this.hashTable=r}async getFile(e,r="raw"){if(r==="http"){let n=Fp.find(o=>o.test.test(e))?.extensions;if(n){let o;for(let s of n)if(o=await this.getDataByPath(`${e}${s}`),o)break;if(o)return o}}if(r==="raw"){let n=await this.getDataByPath(`${e}.gz`);if(n)return n;let o=await this.getFileBytes(e);if(o)return o}throw new Error(`No such file in the archive: ${e}`)}async getDataByPath(e){let r=await this.getFileBytes(e.toLocaleLowerCase());if(r||(r=await this.getFileBytes(e)),!!r)return/\.gz$/.test(e)?await new Yr().decompress(r):r}async getFileBytes(e){let r;if(this.hashTable){let n=this._textEncoder.encode(e),o=await this._md5Hash.hash(n.buffer,"hex"),s=this.hashTable[o];if(s===void 0)return;let i=await Ae(s,this.fileProvider);if(!i)return;r=await this.fileProvider.slice(i.fileDataOffset,i.fileDataOffset+i.compressedSize)}else try{r=await this.getFileWithoutHash(e)}catch{r=void 0}return r}};async function co(t,e,r){let n=await Dr(t,vr),o=await Ir(n,t),s;if(o?.fileName!=="@specialIndexFileHASH128@")s=await ti(t),e?.("SLPK doesnt contain hash file, hash info has been composed according to zip archive headers");else{let i=await Ae(o.localHeaderOffset,t);if(!i)throw new Error("corrupted SLPK");let a=i.fileDataOffset,f=await t.slice(a,a+i.compressedSize);s=Js(f)}return new rr(t,s,r)}var Up="4.4.0-alpha.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 co(new pe(new DataView(t)))).getFile(e.slpk?.path??"",e.slpk?.pathMode)};var bl=Ct(Ht(),1);function wl(t,e){let{attributeName:r,attributeType:n}=e;return r?{[r]:n?kp(n,t):null}:{}}function kp(t,e){switch(t){case ca:return Kp(e);case fa:return yl(e);case la:return zp(e);case ha:return Gp(e);default:return yl(e)}}function yl(t){return new Uint32Array(t,4)}function Gp(t){return new Int16Array(t,4)}function zp(t){return new Float64Array(t,8)}function Kp(t){let o=[];try{let s=new DataView(t,0,4).getUint32(0,!0),i=new Uint32Array(t,8,s),a=8+s*4;for(let f of i){let c=new TextDecoder("utf-8"),l=new Uint8Array(t,a,f);o.push(c.decode(l)),a+=f}}catch(s){console.error("Parse string attribute error: ",s.message)}return o}var Hp="4.4.0-alpha.1",Ol="",Vp="rejected",jr={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,r={}){let{attributeStorageInfo:n,attributeUrls:o,tilesetFields:s}=Xp(t);if(!n||!o||e<0)return null;let i=[],a=[];for(let f=0;f<n.length;f++){let c=Pt(o[f],r.i3s?.token),l=n[f].name,d=ei(n[f]),_={...r,attributeName:l,attributeType:d},h=(0,bl.load)(c,jr,_);a.push(h)}try{i=await Promise.allSettled(a)}catch{}return i.length?qp(i,n,e,s):null}function Xp(t){let e=t.tileset?.tileset?.attributeStorageInfo,r=t.header?.attributeUrls,n=t.tileset?.tileset?.fields||[];return{attributeStorageInfo:e,attributeUrls:r,tilesetFields:n}}function ei(t){return t.hasOwnProperty("objectIds")?"Oid32":t.hasOwnProperty("attributeValues")?t.attributeValues.valueType:""}function Wp(t){return t.find(r=>r.name.includes("OBJECTID"))?.name}function qp(t,e,r,n){let o=Wp(e),s=t.find(a=>a.value[o]);if(!s)return null;let i=s.value[o].indexOf(r);return i<0?null:Zp(t,i,e,n)}function Zp(t,e,r,n){let o={};for(let s=0;s<r.length;s++){let i=r[s].name,a=Qp(i,n),f=Yp(t,s,i);o[i]=jp(f,e,a)}return o}function Qp(t,e){return e.find(n=>n.name===t||n.alias===t)?.domain?.codedValues||[]}function Yp(t,e,r){let n=t[e];return n.status===Vp?null:n.value[r]}function jp(t,e,r){let n=Ol;return t&&e in t&&(n=String(t[e]).replace(/\u0000|NaN/g,"").trim()),r.length&&(n=r.find(s=>s.code===Number(n))?.name||Ol),n}var $p="3DObject";async function Bl(t,e){let r=JSON.parse(new TextDecoder().decode(t)),{sublayers:n}=r;return{header:r,sublayers:Dl(n,e)}}function Dl(t,e){let r=[];for(let n=0;n<t.length;n++){let o=t[n],{id:s,layerType:i,visibility:a=!0,...f}=o;if(i===$p){let c=`${e}/sublayers/${s}`;r.push({url:c,id:s,layerType:i,visibility:a,...f})}o?.sublayers?.length&&(r=[...r,...Dl(o.sublayers,e)])}return r}var Jp="4.4.0-alpha.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,r){if(!r?.url)throw new Error("Url is not provided");return Bl(t,r.url)}var fo=Ct(Ht(),1),em=4326,rm="ArcGISSceneServiceLayer",nm="BuildingSceneLayer",om="IntegratedMeshLayer",vl="GroupLayer",sm=[rm,om,nm,vl],im="NO_AVAILABLE_SUPPORTED_LAYERS_ERROR",am="NOT_SUPPORTED_CRS_ERROR",$r=class extends Error{details;constructor(e,r){super(e),this.details=r,this.name="LayerError"}};async function Ll(t){let e=JSON.parse(new TextDecoder().decode(t)),{operationalLayers:r}=e,{layers:n,unsupportedLayers:o}=await Nl(r,!0);if(!n.length)throw new $r(im,o);return{header:e,layers:n,unsupportedLayers:o}}async function Nl(t,e){let r=[],n=[];for(let o=0;o<t.length;o++){let s=t[o];if(sm.includes(s.layerType)?(e&&s.layerType!==vl&&(await cm(s),e=!1),r.push(s)):n.push(s),s.layers?.length){let{layers:a,unsupportedLayers:f}=await Nl(s.layers,e);s.layers=a,n=[...n,...f]}}return{layers:r,unsupportedLayers:n}}async function cm(t){try{if((await(0,fo.load)(t.url,fo.JSONLoader))?.spatialReference?.wkid!==em)throw new Error(am)}catch(e){throw e}}var fm="4.4.0-alpha.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 kl(t,e,r,n,o,s,i){if(!s)return t;let a={...t,value:new Uint8Array(t.value)},f=n.find(({name:h})=>h===s?.attributeName);if(!f||!["esriFieldTypeDouble","esriFieldTypeInteger","esriFieldTypeSmallInteger"].includes(f.type))return t;let c=await Fl(f.name,r,o,i);if(!c)return t;let l=n.find(({type:h})=>h==="esriFieldTypeOID");if(!l)return t;let d=await Fl(l.name,r,o,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],s);for(let h=0;h<e.length;h++){let u=_[e[h]];u&&(s.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:r,maxValue:n,minColor:o,maxColor:s}=e,i=(t-r)/(n-r),a=[255,255,255,255];for(let f=0;f<o.length;f++)a[f]=Math.round((s[f]-o[f])*i+o[f]);return a}async function Fl(t,e,r,n){let o=r.findIndex(({name:f})=>t===f);if(o===-1)return null;let s=Pt(e[o],n),i=ei(r[o]);return await(0,Ul.load)(s,jr,{attributeName:t,attributeType:i})}return Wl(Jr);})();
|
|
8
8
|
return __exports__;
|
|
9
9
|
});
|