v-ol-map 1.15.6 → 1.15.7
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/lib/ol-map.umd.js +1 -1
- package/package.json +1 -1
package/lib/ol-map.umd.js
CHANGED
|
@@ -779,4 +779,4 @@ yyyy`,c*10],["week",c*14],["week",c*21],["month",c*31],["week",c*42],["month",c*
|
|
|
779
779
|
|
|
780
780
|
See the Apache Version 2.0 License for specific language governing permissions
|
|
781
781
|
and limitations under the License.
|
|
782
|
-
***************************************************************************** */var ET=function(t,e){return ET=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var r in n)n.hasOwnProperty(r)&&(i[r]=n[r])},ET(t,e)};function YTe(t,e){ET(t,e);function i(){this.constructor=t}t.prototype=e===null?Object.create(e):(i.prototype=e.prototype,new i)}var sh=function(t){var e=typeof t;return t!==null&&(e==="object"||e==="function")},m$=function(t,e){return Object.keys(e).forEach(function(i){sh(e[i])&&sh(t[i])?m$(t[i],e[i]):t[i]=e[i]}),t},ST=function(t,e){for(var i=arguments,n=[],r=2;r<arguments.length;r++)n[r-2]=i[r];return function(){for(var a=arguments,s=[],o=0;o<arguments.length;o++)s[o]=a[o];return t.apply(e,n.concat(Array.prototype.slice.call(s)))}},y$=function(t,e){for(var i=0,n,r=t.length;i<r;i++)if(t[i].index===e.index){n=i;break}return n===void 0?t.push(e):t[n]=e,t},_$=function(){function t(e){return e?(e^Math.random()*16>>e/4).toString(16):([1e7]+-[1e3]+-4e3+-8e3+-1e11).replace(/[018]/g,t)}return t()};function x$(t,e){t.forEach(function(i){!e[i]||(e[i]=e[i].bind(e))})}function bT(t){return t&&t.parentNode?t.parentNode.removeChild(t):null}function J0(t,e){var i=new MouseEvent(t,{bubbles:!0,cancelable:!0,button:e.pointerEvent.button,buttons:e.pointerEvent.buttons,clientX:e.pointerEvent.clientX,clientY:e.pointerEvent.clientY,zrX:e.pointerEvent.offsetX,zrY:e.pointerEvent.offsetY,movementX:e.pointerEvent.movementX,movementY:e.pointerEvent.movementY,relatedTarget:e.pointerEvent.relatedTarget,screenX:e.pointerEvent.screenX,screenY:e.pointerEvent.screenY,view:window});return i.zrX=e.pointerEvent.offsetX,i.zrY=e.pointerEvent.offsetY,i.event=i,i}function ZTe(t,e){for(var i=t.split("."),n=e.split("."),r=0;r<3;r++){var a=Number(i[r]),s=Number(n[r]);if(a>s)return 1;if(s>a)return-1;if(!isNaN(a)&&isNaN(s))return 1;if(isNaN(a)&&!isNaN(s))return-1}return 0}var XTe=function(t){return!t.UTF8Encoding},I$=function(t,e,i){for(var n=[],r=[e[0],e[1]],a=r[0],s=r[1],o=0;o<t.length;o+=2){var l=t.charCodeAt(o)-64,h=t.charCodeAt(o+1)-64;l=l>>1^-(l&1),h=h>>1^-(h&1),l+=a,h+=s,a=l,s=h,n.push([l/i,h/i])}return n},KTe=function(t){if(XTe(t))return t;var e=t.UTF8Scale;e==null&&(e=1024);for(var i=t.features,n=0;n<i.length;n++)for(var r=i[n],a=r.geometry,s=[a.coordinates,a.encodeOffsets],o=s[0],l=s[1],h=0;h<o.length;h++){var u=o[h];if(a.type==="Polygon")o[h]=I$(u,l[h],e);else if(a.type==="MultiPolygon")for(var c=0;c<u.length;c++){var f=u[c];u[c]=I$(f,l[h][c],e)}}return t.UTF8Encoding=!1,t};function JTe(t){var e=KTe(t),i=ah.util.map(ah.util.filter(e.features,function(n){return n.geometry&&n.properties&&n.geometry.coordinates.length>0}),function(n){var r=n.properties,a=n.geometry,s=a.coordinates,o=[];return a.type==="Polygon"&&o.push(s[0]),a.type==="MultiPolygon"&&ah.util.each(s,function(l){l[0]&&o.push(l[0])}),{properties:r,type:"Feature",geometry:{type:"Polygon",coordinates:o}}});return{type:"FeatureCollection",crs:{},features:i}}var eRe=function(t,e,i){return e.center=i.dataToPoint(e.coordinates),e},tRe=function(t,e,i){return sh(t.grid)&&!Array.isArray(t.grid)||Array.isArray(t.grid)&&(t.grid=t.grid.map(function(n,r){var a=i.dataToPoint(t.series[r].coordinates);return n.left=a[0]-parseFloat(n.width)/2,n.top=a[1]-parseFloat(n.height)/2,n})),e},iRe=function(t,e,i){return sh(t.grid)&&!Array.isArray(t.grid)||Array.isArray(t.grid)&&(t.grid=t.grid.map(function(n,r){var a=i.dataToPoint(t.series[r].coordinates);return n.left=a[0]-parseFloat(n.width)/2,n.top=a[1]-parseFloat(n.height)/2,n})),e},nRe=Object.freeze({pie:eRe,bar:tRe,line:iRe}),rRe={forcedRerender:!1,forcedPrecomposeRerender:!1,hideOnZooming:!1,hideOnMoving:!1,hideOnRotating:!1,convertTypes:["pie","line","bar"],insertFirst:!1,stopEvent:!1,polyfillEvents:ZTe(FR,"6.1.1")<=0},aRe=function(t){YTe(e,t);function e(i,n,r){var a=this,s=Object.assign(rRe,n);return a=t.call(this,s)||this,a._options=s,a._chartOptions=i,a.set("chartOptions",i),a.$chart=null,a.$container=void 0,a._isRegistered=!1,a._initEvent=!1,a._incremental=[],a._coordinateSystem=null,a.coordinateSystemId="",a.prevVisibleState="",x$(["redraw","onResize","onZoomEnd","onCenterChange","onDragRotateEnd","onMoveStart","onMoveEnd","mouseDown","mouseUp","onClick","mouseMove"],a),r&&a.setMap(r),a}return e.prototype.appendTo=function(i,n){n===void 0&&(n=!1),this.setMap(i,n)},e.prototype.getMap=function(){return this._map},e.prototype.setMap=function(i,n){var r=this;if(n===void 0&&(n=!1),i&&(n||i instanceof mo))this._map=i,this._map.once("postrender",function(){r.handleMapChanged()}),this._map.renderSync();else throw new Error("not ol map object")},e.prototype.getChartOptions=function(){return this.get("chartOptions")},e.prototype.setChartOptions=function(i){return i===void 0&&(i={}),this._chartOptions=i,this.set("chartOptions",i),this.clearAndRedraw(),this},e.prototype.appendData=function(i,n){return n===void 0&&(n=!0),i&&(n&&(this._incremental=y$(this._incremental,{index:this._incremental.length,data:i.data,seriesIndex:i.seriesIndex})),this.$chart.appendData({data:i.data.copyWithin(),seriesIndex:i.seriesIndex})),this},e.prototype.clear=function(i){i||(this._incremental=[]),this.$chart&&this.$chart.clear()},e.prototype.remove=function(){this.clear(),this.$chart&&this.$chart.dispose(),this._initEvent&&this.$container&&(this.$container&&bT(this.$container),this.unBindEvent()),delete this.$chart,delete this._map},e.prototype.show=function(){this.setVisible(!0)},e.prototype.innerShow=function(){this.$container&&(this.$container.style.display=this.prevVisibleState,this.prevVisibleState="")},e.prototype.hide=function(){this.setVisible(!1)},e.prototype.innerHide=function(){this.$container&&(this.prevVisibleState=this.$container.style.display,this.$container.style.display="none")},e.prototype.isVisible=function(){return this.$container&&this.$container.style.display!=="none"},e.prototype.showLoading=function(){this.$chart&&this.$chart.showLoading()},e.prototype.hideLoading=function(){this.$chart&&this.$chart.hideLoading()},e.prototype.setZIndex=function(i){this.$container&&(typeof i=="number"&&(i=String(i)),this.$container.style.zIndex=i)},e.prototype.getZIndex=function(){return this.$container&&this.$container.style.zIndex},e.prototype.setVisible=function(i){i?(this.$container&&(this.$container.style.display=""),this._chartOptions=this.getChartOptions(),this.clearAndRedraw()):(this.$container&&(this.$container.style.display="none"),this.clear(!0),this._chartOptions={},this.clearAndRedraw())},e.prototype.render=function(){!this.$chart&&this.$container?(this.$chart=ah.init(this.$container),this._chartOptions&&(this.registerMap(),this.$chart.setOption(this.convertData(this._chartOptions),!1)),this.dispatchEvent({type:"load",source:this,value:this.$chart})):this.isVisible()&&this.redraw()},e.prototype.redraw=function(){this.clearAndRedraw()},e.prototype.updateViewSize=function(i){!this.$container||(this.$container.style.width=i[0]+"px",this.$container.style.height=i[1]+"px",this.$container.setAttribute("width",String(i[0])),this.$container.setAttribute("height",String(i[1])))},e.prototype.onResize=function(i){var n=this.getMap();if(n){var r=n.getSize();this.updateViewSize(r),this.clearAndRedraw(),i&&this.dispatchEvent({type:"change:size",source:this,value:r})}},e.prototype.onZoomEnd=function(){this._options.hideOnZooming&&this.innerShow();var i=this.getMap();i&&i.getView()&&(this.clearAndRedraw(),this.dispatchEvent({type:"zoomend",source:this,value:i.getView().getZoom()}))},e.prototype.onDragRotateEnd=function(){this._options.hideOnRotating&&this.innerShow();var i=this.getMap();i&&i.getView()&&(this.clearAndRedraw(),this.dispatchEvent({type:"change:rotation",source:this,value:i.getView().getRotation()}))},e.prototype.onMoveStart=function(){this._options.hideOnMoving&&this.innerHide();var i=this.getMap();i&&i.getView()&&this.dispatchEvent({type:"movestart",source:this,value:i.getView().getCenter()})},e.prototype.onMoveEnd=function(){this._options.hideOnMoving&&this.innerShow();var i=this.getMap();i&&i.getView()&&(this.clearAndRedraw(),this.dispatchEvent({type:"moveend",source:this,value:i.getView().getCenter()}))},e.prototype.onClick=function(i){this.$chart&&this.$chart.getZr().painter.getViewportRoot().dispatchEvent(J0("click",i))},e.prototype.mouseDown=function(i){this.$chart&&this.$chart.getZr().painter.getViewportRoot().dispatchEvent(J0("mousedown",i))},e.prototype.mouseUp=function(i){this.$chart&&this.$chart.getZr().painter.getViewportRoot().dispatchEvent(J0("mouseup",i))},e.prototype.mouseMove=function(i){if(this.$chart)for(var n=i.originalEvent.target;n;){if(n.className==="ol-overlaycontainer-stopevent"){this.$chart.getZr().painter.getViewportRoot().dispatchEvent(J0("mousemove",i));return}n=n.parentElement}},e.prototype.onCenterChange=function(){var i=this.getMap();i&&i.getView()&&(this.clearAndRedraw(),this.dispatchEvent({type:"change:center",source:this,value:i.getView().getCenter()}))},e.prototype.handleMapChanged=function(){var i=this.getMap();if(this._initEvent&&this.$container&&(this.$container&&bT(this.$container),this.unBindEvent()),this.$container||(this.createLayerContainer(),this.onResize(!1)),i){var n=this._options.stopEvent?i.getOverlayContainerStopEvent():i.getOverlayContainer();this._options.insertFirst?n.insertBefore(this.$container,n.childNodes[0]||null):n.appendChild(this.$container),this.render(),this.bindEvent(i)}},e.prototype.createLayerContainer=function(){this.$container=document.createElement("div"),this.$container.style.position="absolute",this.$container.style.top="0px",this.$container.style.left="0px",this.$container.style.right="0px",this.$container.style.bottom="0px",this.$container.style.pointerEvents="auto"},e.prototype.bindEvent=function(i){var n=i.getView();this._options.forcedPrecomposeRerender&&i.on("precompose",this.redraw),i.on("change:size",this.onResize),n.on("change:resolution",this.onZoomEnd),n.on("change:center",this.onCenterChange),n.on("change:rotation",this.onDragRotateEnd),i.on("movestart",this.onMoveStart),i.on("moveend",this.onMoveEnd),this._options.polyfillEvents&&(i.on("pointerdown",this.mouseDown),i.on("pointerup",this.mouseUp),i.on("pointermove",this.mouseMove),i.on("click",this.onClick)),this._initEvent=!0},e.prototype.unBindEvent=function(){var i=this.getMap();if(!!i){var n=i.getView();!n||(i.un("precompose",this.redraw),i.un("change:size",this.onResize),n.un("change:resolution",this.onZoomEnd),n.un("change:center",this.onCenterChange),n.un("change:rotation",this.onDragRotateEnd),i.un("movestart",this.onMoveStart),i.un("moveend",this.onMoveEnd),this._options.polyfillEvents&&(i.un("pointerdown",this.mouseDown),i.un("pointerup",this.mouseUp),i.un("pointermove",this.mouseMove),i.un("click",this.onClick)),this._initEvent=!1)}},e.prototype.clearAndRedraw=function(){if(!(!this.$chart||!this.isVisible())){if(this._options.forcedRerender&&this.$chart.clear(),this.$chart.resize(),this._chartOptions&&(this.registerMap(),this.$chart.setOption(this.convertData(this._chartOptions),!1),this._incremental&&this._incremental.length>0))for(var i=0;i<this._incremental.length;i++)this.appendData(this._incremental[i],!1);this.dispatchEvent({type:"redraw",source:this})}},e.prototype.registerMap=function(){if(this._isRegistered||(this.coordinateSystemId="openlayers_"+_$(),ah.registerCoordinateSystem(this.coordinateSystemId,this.getCoordinateSystem(this._options)),this._isRegistered=!0),this._chartOptions){var i=this._chartOptions.series;if(i&&sh(i)){var n=this._options.convertTypes;if(n)for(var r=i.length-1;r>=0;r--)n.indexOf(i[r].type)>-1||(i[r].coordinateSystem=this.coordinateSystemId),i[r].animation=!1}}},e.prototype.convertData=function(i){var n=i.series;if(n&&n.length>0){if(!this._coordinateSystem){var r=this.getCoordinateSystem(this._options);this._coordinateSystem=new r(this.getMap())}if(n&&sh(n)){var a=this._options.convertTypes;if(a)for(var s=n.length-1;s>=0;s--)a.indexOf(n[s].type)>-1&&n[s]&&n[s].hasOwnProperty("coordinates")&&(n[s]=nRe[n[s].type](i,n[s],this._coordinateSystem))}}return i},e.prototype.getCoordinateSystem=function(i){var n=this.getMap(),r=this.coordinateSystemId,a=function(s){this.map=s,this._mapOffset=[0,0],this.dimensions=["lng","lat"],this.projCode=a.getProjectionCode(this.map)};return a.dimensions=a.prototype.dimensions||["lng","lat"],a.prototype.getZoom=function(){return this.map.getView().getZoom()},a.prototype.setZoom=function(s){return this.map.getView().setZoom(s)},a.prototype.getViewRectAfterRoam=function(){return this.getViewRect().clone()},a.prototype.setMapOffset=function(s){this._mapOffset=s},a.prototype.dataToPoint=function(s){var o;if(s&&Array.isArray(s)&&s.length>0){o=s.map(function(f){var g=0;return typeof f=="string"?g=Number(f):g=f,g});var l=i&&i.source||"EPSG:4326",h=i&&i.destination||this.projCode,u=this.map.getPixelFromCoordinate(mr(o,l,h)),c=this._mapOffset;return[u[0]-c[0],u[1]-c[1]]}return[0,0]},a.prototype.pointToData=function(s){var o=this._mapOffset;return this.map.getCoordinateFromPixel([s[0]+o[0],s[1]+o[1]])},a.prototype.getViewRect=function(){var s=this.map.getSize();return new ah.graphic.BoundingRect(0,0,s[0],s[1])},a.prototype.getRoamTransform=function(){return ah.matrix.create()},a.prototype.prepareCustoms=function(){var s=this.getViewRect();return{coordSys:{type:r,x:s.x,y:s.y,width:s.width,height:s.height},api:{coord:ST(this.dataToPoint,this),size:ST(a.dataToCoordsSize,this)}}},a.create=function(s){s.eachSeries(function(o){o.get("coordinateSystem")===r&&(o.coordinateSystem=new a(n))})},a.getProjectionCode=function(s){var o="";return s?o=s.getView()&&s.getView().getProjection().getCode():o="EPSG:3857",o},a.dataToCoordsSize=function(s,o){var l=this;return o===void 0&&(o=[0,0]),[0,1].map(function(h){var u=o[h],c=[],f=[],g=s[h]/2;c[h]=u-g,f[h]=u+g,c[1-h]=o[1-h],f[1-h]=o[1-h];var d=l.dataToPoint(c)[h]-l.dataToPoint(f)[h];return Math.abs(d)},this)},a},e.prototype.dispatchEvent=function(i){return t.prototype.dispatchEvent.call(this,i)},e.prototype.set=function(i,n,r){return t.prototype.set.call(this,i,n,r)},e.prototype.get=function(i){return t.prototype.get.call(this,i)},e.prototype.unset=function(i,n){return t.prototype.unset.call(this,i,n)},e.prototype.on=function(i,n){return t.prototype.on.call(this,i,n)},e.prototype.un=function(i,n){return t.prototype.un.call(this,i,n)},e.formatGeoJSON=JTe,e.bind=ST,e.merge=m$,e.uuid=_$,e.bindAll=x$,e.arrayAdd=y$,e.removeNode=bT,e.isObject=sh,e}(Xn);const sRe={name:"v-echarts",extends:wr,inject:["VMap"],render(t,e){return null},props:{layerId:{type:String,default(){return`draw-layer-${$e()}`}},options:{type:Object}},data(){return{layer:null}},computed:{map(){return this.VMap.map},map3d(){return this.VMap.map3d}},watch:{visible:{handler(t){this.layer.setVisible(t)},immediate:!1},zIndex:{handler(t){this.layer.setZIndex(t)},immediate:!1},maxZoom:{handler(t){this.layer.setMaxZoom(t)},immediate:!1},minZoom:{handler(t){this.layer.setMinZoom(t)},immediate:!1},extent:{handler(t){this.layer.setExtent(t)},immediate:!1,deep:!0}},mounted(){this.init()},beforeDestroy(){this.map.removeLayer(this.layer),this.dispose()},methods:{init(){this.layer=new aRe(this.options),this.zIndex&&this.layer.setZIndex(this.zIndex),this.layer.appendTo(this.map)},dispose(){this.layer.remove()}}};let oRe,lRe;const C$={};var w$=Ji(sRe,oRe,lRe,!1,hRe,null,null,null);function hRe(t){for(let e in C$)this[e]=C$[e]}w$.options.__file="src/components/layers/echarts/index.vue";const sA=function(){return w$.exports}();sA.install=t=>{t.component(sA.name,sA)};function uRe(t,e){let i;return e.getLayers().forEach(n=>{n&&n.get("id")===t&&(i=n)}),i}const bR=class{constructor(e,i,n,r,a,s,o,l,h){!i||i.length<1||(this.id=h.id,this.changeCarRotate=h.changeCarRotate,this.centerAtCar=h.centerAtCar,this._moving=!0,this._ismove=!1,this._map=e,this._labelShow=s,this._timeContentClass=o,this._vacuate=r,this._wholePathInfo=i,this._timeOverlayList=[],r?(this._pathInfo=n,this._convertPaths(n)):(this._pathInfo=i,this._convertPaths(i)),this._vacuatePath=n,this._path=[],this._passPath=[],this._pointIndexDistance=20,this._tracePoints=[],this._tracePointsModePlay=a,this._traceTimedivDom=e.traceTimedivDom,this._tracePointsFromTime=[],this._traceEnd=!1,this.traceLayer=new ni({source:new yn,zIndex:99}),this.traceLayer.set("isTrack",!0),e.addLayer(this.traceLayer),this.tracePassLayer=new ni({source:new yn,zIndex:100}),this.tracePassLayer.set("isTrack",!0),e.addLayer(this.tracePassLayer),this.arrowsLayer=new ni({source:new yn,zIndex:101}),this.arrowsLayer.set("isTrack",!0),e.addLayer(this.arrowsLayer),this.carLayer=new ni({source:new yn,zIndex:102}),this.carLayer.set("isTrack",!0),e.addLayer(this.carLayer),this.traceNodes=[],this.traceLineList=[],this.carMarker=null,this._carInfoWin=null,this._pointIndex=0,this._traceIndex=0,this._speedUp=1,this._intervalTraceFlag=null,this._intervalTimeFlag=null,this._opts={carIcon:{src:"",scale:1},speed:0,defaultContent:"",startIcon:{src:"",scale:1},endIcon:{src:"",scale:1},passFlag:!0,showInfoWin:!1,arrowPixel:50,tracePlay:!1},this._setOptions(h),this._initFlag=1,this._showTracePoint=l)}};let wt=bR;Ye(wt,"track",bR),wt.prototype._setOptions=function(t){if(!!t)for(const e in t)Object.prototype.hasOwnProperty.call(t,e)&&(this._opts[e]=t[e])},wt.prototype.getSpeed=function(){return this._opts.speed},wt.prototype.getSpeedUp=function(){return this._speedUp},wt.prototype.getPaths=function(){return this._pathInfo},wt.prototype.getTraceIndex=function(){return this._pointIndex},wt.prototype.setTraceIndex=function(t){this._pointIndex=t;const e=this._path[t];this.carMarker.setPosition(e)},wt.prototype.getPercentnum=function(){const t=this._tracePoints,e=this.carMarker.getPosition();for(let i=0;i<t.length;i++)if(e.toString()===t[i].coordinate.toString())return parseFloat((i/t.length).toFixed(2))},wt.prototype.setPercentnum=function(t){const e=this._tracePoints,i=this._tracePointsFromTime,n=Math.round(e.length*t),r=e[n].coordinate;this.carMarker.setPosition(r);for(let a=0;a<i.length;a++){const s=i[a].temBreakPointsFromTime;for(let o=0;o<s.length;o++)s[o].coordinate.toString()===r.toString()&&(this._traceIndex=o,this._pointIndex=a)}},wt.prototype._showTimePopup=function(t){const e=this;e._traceTime=e._pathInfo[0].time,e._fromPause&&(e._traceTime=e._traceTimedivDom.innerText);const i=e._pathInfo[e._pathInfo.length-1].time,n=new Date(i).getTime();n>t.maxEndTime&&(t.maxEndTime=n),e._intervalTimeFlag=setInterval(function(){if(!e._traceEnd&&!e._fromPause&&!e._fromStop){if(e._traceTime=new Date(e._traceTime).getTime()+1e3*e._speedUp,t.maxEndTime<e._traceTime){e._traceEnd=!0,e._traceTimedivDom.innerText=i;return}e._traceTime%1e3===0&&(e._traceTime=gRe(new Date(e._traceTime)),e._traceTimedivDom.innerText=e._traceTime)}},1e3)},wt.prototype._setTraceTime=function(t){const e=this,i=e._tracePointsFromTime;if(e._traceTimedivDom.innerText=t,e._traceTime=t,e._opts.speed===0){let n=Number.MAX_VALUE;const r=new Date(e._traceTimedivDom.innerText).getTime();if(r>0||!isNaN(r))for(let a=0;a<i.length;a++){const s=i[a].temBreakPointsFromTime;for(let o=0;o<s.length;o++)Math.abs(r-s[o].thisTimeSecond)<n&&(n=Math.abs(r-s[o].thisTimeSecond),e._pointIndex=a,e._traceIndex=o)}e._fromStop&&(e._pointIndex=0,e._traceIndex=0),(e._traceTimedivDom.innerText===""||e._fromPause||e._fromStop)&&e._showTimePopup(e._map)}},wt.prototype._convertPaths=function(t){this._path=[];for(let e=0;e<t.length;e++)this._path.push([t[e].longitude,t[e].latitude])},wt.prototype.start=function(){this._moving=!0;const t=this,e=t.getTracePoints(1);t._tracePoints=e.breakPoints,t._tracePointsFromTime=e.breakPointsFromTime,!(t._path.length<1)&&(t._tracePointsModePlay==="skip"?t.tracePointsPlay():t._tracePointsModePlay==="animation"&&t.timePointsPlay())},wt.prototype.tracePointsPlay=function(){const t=this,e=t._pathInfo,i=t._passPath;if(i.length===0&&t.tracePassLayer.getSource().clear(),!t._ismove)t._addMarker(),t._addInfoWin(),t._intervalTraceFlag=setInterval(function(){if(t._fromPause||t._fromStop||t._pointIndex>=e.length)return;if(t._pointIndex+=t._speedUp,t._pointIndex>=e.length&&(t._pointIndex=e.length-1),t.carMarker.setPosition([e[t._pointIndex].longitude,e[t._pointIndex].latitude]),t._pointIndex===1&&i.push([e[t._pointIndex-1].longitude,e[t._pointIndex-1].latitude]),i.push([e[t._pointIndex].longitude,e[t._pointIndex].latitude]),t._opts.passFlag){const s=new Bi({geometry:new Yt([[e[t._pointIndex-1].longitude,e[t._pointIndex-1].latitude],[e[t._pointIndex].longitude,e[t._pointIndex].latitude]])});s.setStyle(new ut({stroke:new Lt({color:t._opts.passlineColor,width:5})})),t.tracePassLayer.getSource().addFeature(s)}t._opts.showInfoWin&&(t._carInfoWin.getElement().innerText=e[t._pointIndex].info);const n=t._map.getView().calculateExtent(),r=t.carMarker.getPosition();!Qn(n,r)&&t.centerAtCar&&t._map.getView().animate({center:r})},1e3);else if(t._fromPause){if(!t._fromStop){if(t._pointIndex++,t.carMarker.setPosition([e[t._pointIndex].longitude,e[t._pointIndex].latitude]),t._opts.passFlag){const n=new Bi({geometry:new Yt([[e[t._pointIndex-1].longitude,e[t._pointIndex-1].latitude],[e[t._pointIndex].longitude,e[t._pointIndex].latitude]])});n.setStyle(new ut({stroke:new Lt({color:t._opts.passlineColor,width:5})})),t.tracePassLayer.getSource().addFeature(n)}t._ismove=!1}}else return;this._fromPause=!1,this._fromStop=!1},wt.prototype.timePointsPlay=function(){const t=this,e=t._tracePoints,i=t._tracePointsFromTime,n=t._passPath;if(n.length===0&&t.tracePassLayer.getSource().clear(),t._opts.speed===0){let r=Number.MAX_VALUE;const a=new Date(t._traceTimedivDom.innerText).getTime();if(a>0||!isNaN(a))for(let s=0;s<i.length;s++){const o=i[s].temBreakPointsFromTime;for(let l=0;l<o.length;l++)Math.abs(a-o[l].thisTimeSecond)<r&&(r=Math.abs(a-o[l].thisTimeSecond),t._pointIndex=s,t._traceIndex=l)}t._fromStop&&(t._pointIndex=0,t._traceIndex=0),(t._traceTimedivDom.innerText===""||t._fromPause||t._fromStop)&&t._showTimePopup(t._map)}if(!t._ismove)t._addMarker(),t._addInfoWin(),t._intervalTraceFlag=setInterval(function(){if(t._fromPause||t._fromStop)return;const r=t._opts.speed*1e3/3600;if(t._pointIndex>=i.length)return;const a=i[t._pointIndex].temBreakPointsFromTime,s=i[t._pointIndex].differenceTime,o=i[t._pointIndex].length;let l=0;if(r===0?l=(o/s/50).toFixed(2)*10*t._speedUp:l=(r/50).toFixed(2)*10,t._fromPause||t._fromStop||t._pointIndex>=e.length-1||t._pointIndex>=i.length)return;if(t._traceIndex+=l,t._traceIndex=Math.round(t._traceIndex),t._traceIndex>=a.length){t._traceIndex=a.length-1,t._pointIndex++;const f=a.slice(0,t._traceIndex);for(let v=0;v<f.length;v++)n.push(f[v].coordinate);if(t._opts.passFlag){const v=new Bi({geometry:new Yt(n)});v.setStyle(new ut({stroke:new Lt({color:t._opts.passlineColor,width:5})})),t.tracePassLayer.getSource().addFeature(v)}const g=B$(a[t._traceIndex-1].coordinate,a[t._traceIndex].coordinate);t.carMarker.setPosition(a[t._traceIndex].coordinate),t.changeCarRotate&&t.carMarker.setRotateAngle(g);const d=t._troughPointIndex(a[t._traceIndex].coordinate);t._opts.showInfoWin&&(t._pathInfo[d]?(t._carInfoWin.getElement().innerText=t._pathInfo[d].info,t._carInfoWin.setPosition([t._pathInfo[d].longitude,t._pathInfo[d].latitude])):(t._carInfoWin.getElement().innerText="",t._carInfoWin.setPosition(void 0))),t._traceIndex=0}else{const f=a.slice(Math.round(t._traceIndex-l),t._traceIndex);for(let v=0;v<f.length;v++)n.push(f[v].coordinate);if(t._opts.passFlag){const v=new Bi({geometry:new Yt(n)});v.setStyle(new ut({stroke:new Lt({color:t._opts.passlineColor,width:5})})),t.tracePassLayer.getSource().addFeature(v)}t.carMarker.setPosition(a[t._traceIndex].coordinate);const g=B$(a[t._traceIndex-1].coordinate,a[t._traceIndex].coordinate);t.changeCarRotate&&t.carMarker.setRotateAngle(g);const d=t._troughPointIndex(e[t._pointIndex].coordinate);t._opts.showInfoWin&&(t._pathInfo[d]?(t._carInfoWin.getElement().innerText=t._pathInfo[d].info,t._carInfoWin.setPosition([t._pathInfo[d].longitude,t._pathInfo[d].latitude])):(t._carInfoWin.getElement().innerText="",t._carInfoWin.setPosition(void 0)))}const h=t._map.getView().calculateExtent(),u=t.carMarker.getPosition();!Qn(h,u)&&t.centerAtCar&&t._map.getView().animate({center:u})},200);else if(t._fromPause)t._fromStop||(t._traceIndex++,t._ismove=!1);else return;this._fromPause=!1,this._fromStop=!1},wt.prototype.setSpeed=function(t){this._opts.speed=t},wt.prototype.setSpeedUp=function(t){this._speedUp=t},wt.prototype.stop=function(){this._moving=!1,this._ismove=!1,this._pointIndex=0,this._traceIndex=0,this._fromStop=!0,this._passPath=[],this.tracePassLayer.getSource().clear(),this.carMarker.setPosition([this._pathInfo[0].longitude,this._pathInfo[0].latitude]),clearInterval(this._intervalTraceFlag),clearInterval(this._intervalTimeFlag)},wt.prototype.pause=function(){this._moving=!1,this._ismove=!0,this._fromPause=!0,clearInterval(this._intervalTimeFlag)},wt.prototype._addMarker=function(){const t=this;this.carMarker&&(this.carLayer.getSource().getFeatures().length>0&&this.carLayer.getSource().removeFeature(this.carMarker),clearInterval(this._intervalTraceFlag));const e=dRe(this._path[0],this._opts);this.carLayer.getSource().addFeature(e),this.carMarker=e,e.on=function(i,n){if(i==="move"){const r=setInterval(function(){if(!t._moving)return;const a=e.getPosition(),s=t._pathInfo;for(let o=0;o<s.length;o++)a.toString()===s[o].longitude+","+s[o].latitude&&(n(o),o===s.length-1&&clearInterval(r))},200)}}},wt.prototype._addInfoWin=function(){const t=this;if(!t._opts.showInfoWin)return;const e=t.carMarker.getPosition();if(t._carInfoWin){t._carInfoWin.setPosition(e);return}const i=document.createElement("div");i.className="carOverlay-class",i.innerText="";const n=new B1({element:document.getElementById(t._opts.overlay.element.toString()),position:e,stopEvent:!0,offset:[10,0]});t._carInfoWin=n,t._map.addOverlay(n)},wt.prototype.getArrowPoints=function(t){const e=this._pathInfo,i=[];for(let n=0;n<e.length-1;n++){const r=[e[n].longitude,e[n].latitude],a=[e[n+1].longitude,e[n+1].latitude],s=this._map.getPixelFromCoordinate(r),o=this._map.getPixelFromCoordinate(a),h=S$([s,o]),u=Math.floor(h/t),c=this.getRotationFromPixel(s,o);for(let f=1;f<u+1;f++){const g=[s[0]+t*f*Math.cos(c),s[1]+t*f*Math.sin(c)],d=this._map.getCoordinateFromPixel(g);i.push({rotate:c,coordinate:d})}}return i},wt.prototype.getTracePoints=function(t){const e=this._pathInfo,i=[],n=[];for(let r=0;r<e.length-1;r++){const a=[],s=[e[r].longitude,e[r].latitude],o=[e[r+1].longitude,e[r+1].latitude],l=e[r].time,h=e[r+1].time,u=new Date(l).getTime(),c=new Date(h).getTime(),f=c-u;if(f===0)continue;const g=av(s),d=av(o),A=S$([g,d]),p=Math.floor(A/t),m=this.getRotationFromPixel(g,d),y=this.getAngleFromPixel(g,d);for(let I=0;I<p+1;I++){const _=[g[0]+I*t*Math.cos(m),g[1]+I*t*Math.sin(m)],C=n_(_),x=u+Math.round(f/p)*I;i.push({rotate:y,coordinate:C,thisTimeSecond:x}),a.push({rotate:y,coordinate:C,thisTimeSecond:x})}A%t!==0&&(i.push({rotate:y,coordinate:o,thisTimeSecond:c}),a.push({rotate:y,coordinate:o,thisTimeSecond:c})),n.push({length:A,differenceTime:f/1e3,initTime:l,targetTime:h,temBreakPointsFromTime:a})}return{breakPoints:i,breakPointsFromTime:n}},wt.prototype.getRotationFromPixel=function(t,e){if(!t)return!1;t={x:t[0],y:t[1]},e={x:e[0],y:e[1]};const i=Math.abs(e.x-t.x),n=Math.abs(e.y-t.y),r=Math.sqrt(i*i+n*n),a=Math.asin(n/r);let s=0;return e.y<t.y&&e.x===t.x?s=Math.PI*2/3:e.y>t.y&&e.x===t.x?s=Math.PI/2:e.y===t.y&&e.x<t.x?s=Math.PI:e.y===t.y&&e.x>t.x?s=0:e.y>t.y&&e.x>t.x?s=a:e.y>t.y&&e.x<t.x?s=Math.PI-a:e.y<t.y&&e.x<t.x?s=Math.PI+a:e.y<t.y&&e.x>t.x&&(s=Math.PI*2-a),s},wt.prototype.getAngleFromPixel=function(t,e){t={x:t[0],y:t[1]},e={x:e[0],y:e[1]};const i=Math.abs(e.x-t.x),n=Math.abs(e.y-t.y),r=Math.sqrt(i*i+n*n),a=Math.round(Math.asin(n/r)/Math.PI*180);let s=0;return e.y<t.y&&e.x===t.x?s=270:e.y>t.y&&e.x===t.x?s=90:e.y===t.y&&e.x<t.x?s=180:e.y===t.y&&e.x>t.x?s=0:e.y>t.y&&e.x>t.x?s=360-a:e.y>t.y&&e.x<t.x?s=180+a:e.y<t.y&&e.x<t.x?s=180-a:e.y<t.y&&e.x>t.x&&(s=a),s},wt.prototype._troughPointIndex=function(t){const e=this._pointIndexDistance,i=this._path;for(let n=0;n<i.length;n++){const r=i[n];if(XA(r,t)<e)return n}return-1},wt.prototype._traceLineSytle=function(t){const e=this._opts,i=e.lineWidth?e.lineWidth:5,n=e.lineColor?e.lineColor:"blue";return{route:new ut({stroke:new Lt({width:i,color:n})}),node:new ut({image:new pn({radius:5,stroke:new Lt({color:"white",width:0}),fill:new It({color:"green"})})}),start:new ut({image:new Tn(this._opts.startIcon),text:new _r({font:"13px Microsoft Yahei",fill:new It({color:"#aa3300"}),stroke:new Lt({color:"#fff",width:2}),textAlign:"left"})}),end:new ut({image:new Tn(this._opts.endIcon),text:new _r({font:"13px Microsoft Yahei",fill:new It({color:"#aa3300"}),stroke:new Lt({color:"#fff",width:2}),textAlign:"left"})})}[t]},wt.prototype._initLinesAndMarkers=function(){const t=this,e=t._pathInfo,i=t._wholePathInfo;if(t._convertPaths(e),t._initFlag===1){t.traceNodes=[];for(const n in i){const r=Number(n),a=[i[r].longitude,i[r].latitude],s=i[r].id;if(r>0&&r<i.length-1){const o=new Bi({geometry:new ii(a)});o.set("id",s),o.set("number",parseInt(r)+1),t._showTracePoint&&t.traceNodes.push(o),o.set("type","node"),o.on("mouseover",function(l){t._map.getInfoWindowById(l.coordinate.toString())&&t._map.getInfoWindowById(l.coordinate.toString()).setPosition(l.coordinate)}),o.on("mouseout",function(l){t._map.getInfoWindowById(this.getPosition().toString())&&t._map.getInfoWindowById(this.getPosition().toString()).setPosition(void 0)})}else if(r===0){const o=new Bi({geometry:new ii([i[r].longitude,i[r].latitude])});o.set("type","start"),o.set("id",s),o.set("number",parseInt(r)+1),t.traceNodes.push(o)}else if(r===i.length-1){const o=new Bi({geometry:new ii([i[r].longitude,i[r].latitude+1e-8])});o.set("type","end"),o.set("id",s),o.set("number",parseInt(r)+1),t.traceNodes.push(o)}}for(let n=0;n<t._pathInfo.length-1;n++){const r=[t._pathInfo[n].longitude,t._pathInfo[n].latitude],a=[t._pathInfo[n+1].longitude,t._pathInfo[n+1].latitude],s=new Bi({geometry:new Yt([r,a])});s.setStyle(t._traceLineSytle("route")),t.traceLayer.getSource().addFeature(s),t.traceLineList.push(s)}for(let n=0;n<t.traceNodes.length;n++){const r=t.traceNodes[n],a=t._traceLineSytle(r.get("type"));if(r.setStyle(a),r.getGeometry().getType()==="Point")for(let s=0;s<e.length;s++)r.get("id")===e[s].id&&t.traceLayer.getSource().addFeature(r)}}},wt.prototype.setTraceLineColor=function(t){const e=this;e._opts.lineColor=t;const i=e.traceLineList;for(let n=0;n<i.length;n++)i[n].setStrokeColor(t);e.traceLayer.refresh()},wt.prototype.setTraceLineWidth=function(t){const e=this;e._opts.lineWidth=t;const i=e.traceLineList;for(let n=0;n<i.length;n++)i[n].setStrokeWeight(t);e.traceLayer.refresh()},wt.prototype._creatTimeOverlays=function(){const t=this,e=t._wholePathInfo,i=t._vacuatePath;if(t._timeOverlayList=[],t._labelShow){const n=[];for(let r=0;r<e.length;r++)for(let a=0;a<i.length;a++)if(i[a].longitude===e[r].longitude&&i[a].latitude===e[r].latitude){const s=[e[r].longitude,e[r].latitude];n.push({position:s,text:e[r].time})}typeof t.textLayer=="undefined"?(t.textLayer=ARe(t._map,n,10),t.textLayer.set("id","lushuText"+new Date().getTime()),t._map.addLayer(t.textLayer)):typeof uRe(t.textLayer.get("id"),t._map)=="undefined"&&t._map.addLayer(t.textLayer)}},wt.prototype.createArrows=function(){const t=this,e=t.getArrowPoints(t._opts.arrowPixel);for(let i=0;i<e.length;i++){const n=e[i].coordinate,r=e[i].rotate,a=new Bi({geometry:new ii(n)});a.setStyle(new ut({image:new Tn({src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABfUlEQVQ4T3WTTSvFYRDFf8dLKIqytFckthTpJkQWlyhF2fgEVr6BheytpChEsqB08xbZWPgOJAs7ieRlNMzV//75P7vnmZkz58ycR2ZWD7QBF5KM1DGzTuBO0k065neZ2S3QBGwAU5I+iolmNgrsAI9An6SrNIgDnAE9EdgFJiS9+93MuoEToBx4AgYkXSZBHKAWOAS6IrAP5CW9BUge2AIqgJdg8guiSKoBDoDeDJBhwNlVBsiQpNPvGST0VgF7TjPeCsCIpNdo0g84O2fibx4r/AJEUjVwlJDjXbybU/eZjAGbMROXmC8BiKQ64BxoDyYLkuYTTCeB9WD/9B9AA3AMdGQAzALLAfCcluDF3r01itMS5oDFiP3MIUHNi90T7ko/XjyYGOIMsFJSXByimTVGQbFzegOuew0o+7PGKL4AmjM8MA2shua/RjIzX1suw8pucZfiUjOt/AC4BHfaeOoz+d63oziX9Zla3CzAkqTP9G8zM4/dS7r+7zt/Aaattn1kX8VgAAAAAElFTkSuQmCC",rotation:r,scale:.5})})),t.arrowsLayer.getSource().addFeature(a)}},wt.prototype.windowAddMouseWheel=function(){const t=this,e=function(i){i=i||window.event,i.wheelDelta?(i.wheelDelta>0&&t.arrowsLayer.getSource().clear(),i.wheelDelta<0&&t.arrowsLayer.getSource().clear()):i.detail&&(i.detail>0&&t.arrowsLayer.getSource().clear(),i.detail<0&&t.arrowsLayer.getSource().clear())};document.addEventListener&&document.addEventListener("DOMMouseScroll",e,!1),window.onmousewheel=document.onmousewheel=e},wt.prototype.dispose=function(){this._intervalTimeFlag&&(clearInterval(this._intervalTimeFlag),this._intervalTimeFlag=null),this._intervalTraceFlag&&(clearInterval(this._intervalTraceFlag),this._intervalTraceFlag=null);const e=this._map.getLayers().getArray().filter(i=>i.get("isTrack")&&i.get("isTrack")===!0);e&&e.length>0&&e.forEach(i=>{i.getSource().clear(),this._map.removeLayer(i)})};function BT(t,e,i,n,r){n==="distance"?E$(t,e,i,r):n==="track"&&cRe(t,e,i,r)}function E$(t,e,i,n){const r=[];e.forEach(function(s,o){r.push(s)});let a=!0;for(let s=0;s<r.length-1;s++)if(ey(t,r[s],r[s+1])<i&&r.length>=3){a=!1,s+1<r.length-1||s===0?r.splice(s+1,1):r.splice(s,1);break}a?n(e):E$(t,r,i,n)}function cRe(t,e,i,n){const r=e;r.forEach(function(o,l){o.id=l});const a=MT(t,r,[],0,r.length-1,i);a.push(r[0]),r.length>1&&a.push(r[r.length-1]);const s=a.sort(function(o,l){return o.id<l.id?-1:o.id>l.id?1:0});n(s)}const MT=function(t,e,i,n,r,a){if(n<r){let s=0,o=0;const l=e[n],h=e[r];for(let u=n+1;u<r;u++){const c=fRe(t,l,h,e[u]);c>s&&(s=c,o=u)}s>=a&&(i.push(e[o]),MT(t,e,i,n,o,a),MT(t,e,i,o,r,a))}return i},fRe=function(t,e,i,n){const r=Math.abs(ey(t,e,i)),a=Math.abs(ey(t,e,n)),s=Math.abs(ey(t,i,n)),o=(r+a+s)/2;return Math.sqrt(Math.abs(o*(o-r)*(o-a)*(o-s)))*2/r},ey=function(t,e,i){const n=e.latitude,r=i.latitude,a=e.longitude,s=i.longitude,o=t.getPixelFromCoordinate([a,n]),l=t.getPixelFromCoordinate([s,r]);return Math.sqrt(Math.pow(l[0]-o[0],2)+Math.pow(l[1]-o[1],2))};var S$=function(t){let e=0;for(let i=0,n=t.length-1;i<n;++i)t[i+1]&&(e+=Math.sqrt(Math.pow(t[i+1][0]-t[i][0],2)+Math.pow(t[i+1][1]-t[i][1],2)));return e};function gRe(t){let e=t.getHours(),i=t.getMinutes(),n=t.getSeconds();const r=t.getFullYear();let a=t.getMonth(),s=t.getDate();return e<10&&(e="0"+e),i<10&&(i="0"+i),n<10&&(n="0"+n),a=a+1,a<10&&(a="0"+a),s<10&&(s="0"+s),r+"-"+a+"-"+s+" "+e+":"+i+":"+n}function dRe(t,e){const i=new Bi({geometry:new ii(t)});return i.setStyle(new ut({image:new Tn(e.carIcon)})),i}function ARe(t,e,i){const n=[],r=new ni({source:new yn});return t.getView().getZoom()>=i&&b$(t,e,i,n,r),t.on("moveend",function(a){t.getView().getZoom()>=i?b$(t,e,i,n,r):r.getSource().clear()}),r}function b$(t,e,i,n,r){n=[],r.getSource().clear();for(let u=0;u<e.length;u++){const c=e[u],f=t.getPixelFromCoordinate(c.position);if(!Qn(t.getView().calculateExtent(),c.position))continue;const g=/[\u4e00-\u9fa5]/g,d=c.text.match(g)?c.text.match(g).length:0,v=c.text.length-d,A=d*15+v*8,p=f[0]+10,m=f[0]+A+20,y=f[1]-32,I=f[1]-12,_=[p,parseInt((y+I)/2)],C={x:p,y},x={x:m,y:I},w=f[0]-A-20,E=f[0]-10,S=f[1]-32,b=f[1]-12,B=[E,parseInt((S+b)/2)],M={x:w,y:S},R={x:E,y:b},T=f[0]-A-20,D=f[0]-10,P=f[1]+12,Q=f[1]+32,N=[D,parseInt((P+Q)/2)],O={x:T,y:P},L={x:D,y:Q},z=f[0]+10,k=f[0]+A+20,F=f[1]+12,U=f[1]+32,G=[z,parseInt((F+U)/2)],q={x:z,y:F},V={x:k,y:U},j=new oA(C,x),$=new oA(M,R),X=new oA(O,L),K=new oA(q,V);let J="rightTop",te=!0;for(let ne=0;ne<4;ne++){for(let se=0;se<n.length;se++){const ge=n[se];if(ne===0){if(te=ge.intersects(j),!te)break}else if(ne===1){if(te=ge.intersects($),!te)break}else if(ne===2){if(te=ge.intersects(X),!te)break}else if(ne===3&&(te=ge.intersects(K),!te))break}if(te){ne===0?J="rightTop":ne===1?J="leftTop":ne===2?J="leftBom":ne===3&&(J="rightBom");break}}var a,s,o,l,h;if(te)J==="rightTop"?(n.push(j),h=_,a=p,s=y,o=m,l=I):J==="leftTop"?(n.push($),h=B,a=w,s=S,o=E,l=b):J==="rightBom"?(n.push(K),h=G,a=z,s=F,o=k,l=U):J==="leftBom"&&(n.push(X),h=N,a=T,s=P,o=D,l=Q);else continue;const ee=t.getCoordinateFromPixel([a,s]),ae=t.getCoordinateFromPixel([o,s]),me=t.getCoordinateFromPixel([o,l]),le=t.getCoordinateFromPixel([a,l]),de=new Bi({geometry:new Kn([ee,ae,me,le])});r.getSource().addFeature(de),h=t.getCoordinateFromPixel(h);const _e=new Bi({geometry:new Yt([c.position,h])});r.getSource().addFeature(_e),r.setStyle(new ut({fill:new It({color:"rgb(26,58,91)"}),stroke:new Lt({color:"rgb(26,58,91)"}),text:new _r({font:"16px sans-serif",text:c.text,fill:new It({color:"#000"}),offsetX:0,offsetY:1})}))}}function oA(t,e){this.min=t,this.max=e}oA.prototype.intersects=function(t){const e=this.min,i=this.max,n=t.min,r=t.max;return r.x<=e.x||n.x>=i.x||r.y<=e.y||n.y>=i.y};function B$(t,e){const i=tu(t),n=tu(e);return ip(i,n)}const vRe=function(t){let{map:e,paths:i,id:n,opts:r,vacuate:a,smokeMode:s,tracePointsModePlay:o,vacuateDistance:l,labelShow:h,labelStyle:u,showTracePoint:c}=t;r.id=n||$e(),r.changeCarRotate=t.changeCarRotate,r.centerAtCar=t.centerAtCar;let f=i,g,d=e.getView().getZoom();return a?BT(e,i,l,s,function(v){f=v,g=new wt(e,i,f,a,o,h,u,c,r),g._initLinesAndMarkers(),h&&g._creatTimeOverlays(),g.createArrows()}):(g=new wt(e,i,f,a,o,h,u,c,r),g._initLinesAndMarkers(),h&&g._creatTimeOverlays(),g.createArrows()),g.setPaths=function(v){i=v,g.arrowsLayer.getSource().clear();for(let A=0;A<g._timeOverlayList.length;A++)e.removeOverlay(g._timeOverlayList[A]);g.traceLayer.getSource().clear(),g.tracePassLayer.getSource().clear(),g.stop(),d=e.getView().getZoom(),a?BT(e,i,l,s,function(A){f=A,g._pathInfo=f,g._vacuatePath=f,g._wholePathInfo=i,g._initFlag=1,g._initLinesAndMarkers(),h&&g._creatTimeOverlays(),g.createArrows()}):(g._pathInfo=i,g._vacuatePath=i,g._wholePathInfo=i,g._initFlag=1,g._initLinesAndMarkers(),h&&g._creatTimeOverlays(),g.createArrows())},g.clearPaths=function(){g._path=[],i=[],g.arrowsLayer.getSource().clear(),g.tracePassLayer.getSource().clear();for(let v=0;v<g._timeOverlayList.length;v++)e.removeOverlay(g._timeOverlayList[v]);g.traceLayer.getSource().clear(),this.carLayer.getFeatures().length>0&&this.carLayer.removeFeature(this.carMarker),typeof this.textLayer!="undefined"&&e.removeLayer(this.textLayer)},e.getView().on("change:resolution",function(){if(i.length!==0&&(d=e.getView().getZoom(),g.arrowsLayer.getSource().clear(),Math.round(d)===d))if(g._initFlag=2,g.createArrows(),a)BT(e,i,l,s,function(v){f=v;for(let A=0;A<g._timeOverlayList.length;A++)e.removeOverlay(g._timeOverlayList[A]);g._pathInfo=f,g._vacuatePath=f,g._wholePathInfo=i,g._initLinesAndMarkers(),h&&g._creatTimeOverlays(),g.arrowsLayer.getSource().clear(),g.createArrows()});else{for(let v=0;v<g._timeOverlayList.length;v++)e.removeOverlay(g._timeOverlayList[v]);g._pathInfo=f,g._vacuatePath=f,g._wholePathInfo=i,g._initLinesAndMarkers(),h&&g._creatTimeOverlays(),g.arrowsLayer.getSource().clear(),g.createArrows()}}),g},pRe={name:"v-track",render(t,e){return null},inject:["VMap"],props:{id:{type:String,default(){return`track-${$e()}`}},paths:{type:Array,default(){return[]}},tracePointsModePlay:{type:String,default:"animation"},smokeMode:{type:String,default:"distance"},vacuate:{type:Boolean,default:!1},vacuateDistance:{type:[Number,void 0],default:10},labelShow:{type:Boolean,default:!1},showTracePoint:{type:Boolean,default:!0},changeCarRotate:{type:Boolean,default:!1},centerAtCar:{type:Boolean,default:!1},options:{type:Object,default(){return{}}},autoPlay:{type:Boolean,default:!1},labelStyle:{type:String,default:"timeContentClass"}},data(){return{track:null}},computed:{map(){return this.VMap.map}},watch:{paths:{handler(t){this.init(t)},immediate:!1,deep:!0}},mounted(){this.init()},beforeDestroy(){this.track.dispose(),this.track=null},methods:{init(t){if(t&&t.length>0||this.paths&&this.paths.length>0){const e=He(Re({},this.$props),{map:this.map,paths:t||this.paths,opts:this.options});this.track=vRe(e),this.$emit("onLoad",this.track),this.autoPlay&&this.start()}},start(){this.track.start()},pause(){this.track.pause()},stop(){this.track.stop()},dispose(){this.track.dispose()}}};let mRe,yRe;const M$={};var T$=Ji(pRe,mRe,yRe,!1,_Re,null,null,null);function _Re(t){for(let e in M$)this[e]=M$[e]}T$.options.__file="src/components/track/index.vue";const lA=function(){return T$.exports}();lA.install=t=>{t.component(lA.name,lA)};var R$={exports:{}};(function(t){(function(){function e(o,l){var h=o.x-l.x,u=o.y-l.y;return h*h+u*u}function i(o,l,h){var u=l.x,c=l.y,f=h.x-u,g=h.y-c;if(f!==0||g!==0){var d=((o.x-u)*f+(o.y-c)*g)/(f*f+g*g);d>1?(u=h.x,c=h.y):d>0&&(u+=f*d,c+=g*d)}return f=o.x-u,g=o.y-c,f*f+g*g}function n(o,l){for(var h=o[0],u=[h],c,f=1,g=o.length;f<g;f++)c=o[f],e(c,h)>l&&(u.push(c),h=c);return h!==c&&u.push(c),u}function r(o,l,h,u,c){for(var f=u,g,d=l+1;d<h;d++){var v=i(o[d],o[l],o[h]);v>f&&(g=d,f=v)}f>u&&(g-l>1&&r(o,l,g,u,c),c.push(o[g]),h-g>1&&r(o,g,h,u,c))}function a(o,l){var h=o.length-1,u=[o[0]];return r(o,0,h,l,u),u.push(o[h]),u}function s(o,l,h){if(o.length<=2)return o;var u=l!==void 0?l*l:1;return o=h?o:n(o,u),o=a(o,u),o}t.exports=s,t.exports.default=s})()})(R$);const xRe=R$.exports;class ty{constructor(e,i){Ye(this,"min",{x:0,y:0});Ye(this,"max",{x:0,y:0});this.min=e,this.max=i}intersects(e){const i=this.min,n=this.max,r=e.min,a=e.max;return a.x<=i.x||r.x>=n.x||a.y<=i.y||r.y>=n.y}}class IRe extends ni{constructor(i){var a,s;const n=Object.assign({},i);delete n.map;super(n);Ye(this,"map",null);Ye(this,"pointsArr",[]);Ye(this,"zoom",1);Ye(this,"textBounds",[]);Ye(this,"styleOptions",{fillColor:"rgb(26,58,91)",strokeColor:"rgb(26,58,91)",textColor:"white",fontCss:"bolder 15px sans-serif",boxWidth:50});Ye(this,"textViewCom",[]);this.map=i.map?i.map:this.map,this.pointsArr=i.pointsArr?i.pointsArr:this.pointsArr,this.zoom=i.zoom?i.zoom:this.zoom,this.styleOptions=i.styleOptions?i.styleOptions:this.styleOptions,((a=this.map)==null?void 0:a.getView().getZoom())>=this.zoom&&this.drawText();const r=this;(s=this.map)==null||s.on("moveend",o=>{var l;((l=r.map)==null?void 0:l.getView().getZoom())>=r.zoom?(r.drawText(),r.keepVisible()):r.clear()})}getLayerStatesArray(i){}getLayersArray(i){}getSourceState(){}drawText(){var s;const i=this.styleOptions;this.getSource().clear();const r=document.createElement("canvas").getContext("2d");i.fontCss&&(r.font=i.fontCss);const a=[];(s=this.map)==null||s.once("postrender",()=>{this.pointsArr.forEach(o=>{var u,c,f,g,d,v,A;const l=av(o.position,"EPSG:3857"),h=(u=this.map)==null?void 0:u.getPixelFromCoordinate(l);if(Qn((c=this.map)==null?void 0:c.getView().calculateExtent(),l)){o.text=o.text||"";let p=i.boxWidth||Math.ceil(r.measureText(o.text).width);p+=30;const m=h[0]+10,y=h[0]+p,I=h[1]-40,_=h[1]-10,C=[m,Number(((I+_)/2).toFixed(0))],x={x:m,y:I},w={x:y,y:_},E=new ty(x,w),S=h[0]-p,b=h[0]-10,B=h[1]-40,M=h[1]-10,R=[b,Number(((B+M)/2).toFixed(0))],T={x:S,y:B},D={x:b,y:M},P=new ty(T,D),Q=h[0]-p,N=h[0]-10,O=h[1]+10,L=h[1]+40,z=[N,Number(((O+L)/2).toFixed(0))],k={x:Q,y:O},F={x:N,y:L},U=new ty(k,F),G=h[0]+10,q=h[0]+p,V=h[1]+10,j=h[1]+40,$=[G,Number(((V+j)/2).toFixed(0))],X={x:G,y:V},K={x:q,y:j},J=new ty(X,K),te={bound:E,minx:m,miny:I,maxx:y,maxy:_,polylineCenter:C},ee={bound:P,minx:S,miny:B,maxx:b,maxy:M,polylineCenter:R},ae={bound:U,minx:Q,miny:O,maxx:N,maxy:L,polylineCenter:z},me={bound:J,minx:G,miny:V,maxx:q,maxy:j,polylineCenter:$},le=new Map([["rightTopBounds",te],["leftTopBounds",ee],["leftBomBounds",ae],["rightBomBounds",me]]);let de=!0,_e=0,ne=0,se=0,ge=0,W=[0,0],Y="";for(const[Te,Be]of le){for(let Me=0;Me<this.textBounds.length&&(de=this.textBounds[Me].intersects(Be.bound),!!de);Me++);de&&(Y=Te)}if(!de)return;for(const[Te,Be]of le)Te===Y&&(this.textBounds.push(Be.bound),W=Be.polylineCenter,_e=Be.minx,ne=Be.miny,se=Be.maxx,ge=Be.maxy);const ie=mr((f=this.map)==null?void 0:f.getCoordinateFromPixel([_e,ne]),"EPSG:3857","EPSG:4326"),ue=mr((g=this.map)==null?void 0:g.getCoordinateFromPixel([se,ne]),"EPSG:3857","EPSG:4326"),he=mr((d=this.map)==null?void 0:d.getCoordinateFromPixel([se,ge]),"EPSG:3857","EPSG:4326"),ce=mr((v=this.map)==null?void 0:v.getCoordinateFromPixel([_e,ge]),"EPSG:3857","EPSG:4326"),fe=new Kn({path:[ie,ue,he,ce],strokeColor:i.strokeColor,fillColor:i.fillColor});fe.getStyle().setText(new Text({font:i.fontCss,fill:new It({color:i.textColor}),offsetY:.5,text:o.text})),this.addFeature(fe);const ye=mr((A=this.map)==null?void 0:A.getCoordinateFromPixel(W),"EPSG:3857","EPSG:4326"),xe=new Yt({path:[o.position,ye],strokeColor:i.strokeColor});this.addFeature(xe),a.push({textBack:fe,polyline:xe,text:o.text})}this.set("textComponent",a)})})}keepVisible(){var i;if(this.textViewCom=this.get("invisible"),this.textViewCom instanceof Array)for(let n=((i=this.textViewCom)==null?void 0:i.length)-1;n>=0;n--){const r=this.textViewCom[n];this.textVisibility(r.text,!1)}}textVisibility(i,n){var o,l,h,u,c;const r=this.getObjectByText(i);this.textViewCom=this.get("invisible");let a=!1,s=0;if(this.textViewCom instanceof Array)for(let f=((o=this.textViewCom)==null?void 0:o.length)-1;f>=0;f--){const g=this.textViewCom[f];i===g.text&&(a=!0,s=f)}if(r.length>0)for(let f=r.length-1;f>=0;f--){const g=r[f];if(!n)this.textViewCom instanceof Array?!a&&this.textViewCom.push(g):this.set("invisible",[g]),(l=g.textBack)==null||l.setVisible(n),(h=g.polyline)==null||h.setVisible(n);else if(this.textViewCom instanceof Array&&a){this.textViewCom.splice(s,1);const d=this.getObjectByText(g.text);for(let v=d.length-1;v>=0;v--)(u=d[v].textBack)==null||u.setVisible(n),(c=d[v].polyline)==null||c.setVisible(n)}}else n?a&&this.textViewCom.splice(s,1):this.textViewCom instanceof Array?!a&&this.textViewCom.push({text:i}):this.set("invisible",[{text:i}])}getObjectByText(i){const n=this.get("textComponent"),r=[];for(let a=(n==null?void 0:n.length)-1;a>=0;a--){const s=n[a];s.text===i&&r.push(s)}return r}}class CRe{constructor(e){Ye(this,"_operators");Ye(this,"_carIcon");Ye(this,"_direction");Ye(this,"_map");Ye(this,"_status");Ye(this,"_pathInfo");Ye(this,"_bubble");Ye(this,"_moving");Ye(this,"_tracePointsModePlay");Ye(this,"_lineLayer");Ye(this,"_movePath");Ye(this,"_originPath");Ye(this,"_revealLayer");Ye(this,"_showTracePoint");Ye(this,"_nodesLayer");Ye(this,"_moveNodes");Ye(this,"_timeStep");Ye(this,"_speed");Ye(this,"_speedUp");Ye(this,"_nowTime");Ye(this,"_moveIdx");Ye(this,"_animateLayer");Ye(this,"_animateLine");Ye(this,"_group");Ye(this,"_tracekEvent");Ye(this,"_simplifyEvent");Ye(this,"_eventType");Ye(this,"_animateStart");Ye(this,"_textLayer");Ye(this,"_moveListener");Ye(this,"_step");Ye(this,"_viewCode");Ye(this,"_defaultStyles");Ye(this,"_nodesCollection");Ye(this,"_nodeInfos");var f;e=e||{};const i=e.bubble!==void 0?e.bubble:!1,n=e.showTracePoint?e.showTracePoint:!1,r=e.tracePointsModePlay?e.tracePointsModePlay:"animation",a=e.mapObj!==void 0?e.mapObj:null,s=e.path!==void 0?e.path:[],o=e.options||{},l=Date.now();!e.path||e.path.length<1,this._operators={carIcon:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACsAAAAVCAYAAADfLRcdAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMDE0IDc5LjE1Njc5NywgMjAxNC8wOC8yMC0wOTo1MzowMiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTQgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkQ0RkExMTQ2Rjc4NzExRTQ4QkI3QTA2OTk3QzQ4M0IzIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkQ0RkExMTQ3Rjc4NzExRTQ4QkI3QTA2OTk3QzQ4M0IzIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RDRGQTExNDRGNzg3MTFFNDhCQjdBMDY5OTdDNDgzQjMiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6RDRGQTExNDVGNzg3MTFFNDhCQjdBMDY5OTdDNDgzQjMiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz62sMp6AAAFiklEQVR42tRXW2wUVRj+zpmZvc4uS2mhhQK21FLshoKGWkBMSAwQSVBf0QfiJciDLya+8KAx8RJfeJV440GJaDAmGGKUmAASI+GhDQ1a7t1Kb1tot7s7uzvX4z8zC+12bdHVkDjJn5md/c853/nO918GeEDXkfe2f5+9+KzxxeuQap2D/RPn5BO7Aowxns/n9Ju958Q8PjL5yIxz4+KZk86spRLG5Y1T/Zfbf31sz7HN/xqsuIo4THwgStgr8lBtDcwxwQxa0rKB4WkFBcOGpgNSwIFusYoJjv0ATOQYdm9lWBQX4Iz2I8iDxhsGMDSm4mx/FJ3LR/HWi4ASokEmmeYj4UG6K/Tock9jSjxRjG/PRCrADn4SHVi8ttTOGM0sHAguIRKyCSlgF4HsOPDxKY7T4zvQ3NqFYmYSsbp6BEKhe0Bt08LR41/CsSzse34fZEWBbdPGtCxKWhoxeQiNketIhHOYyEgYGAqgc/UU3n5VgbA5iBQyAccWYLKCYLOCnLmLNrhNJHte5h7Ys/ubIlsPjGp3F/3tViOefEVCOCJjSYKjqZ6jdTnwdI+Fp5IppCaAvmsKxiZlondGCYQLJ34S2Ngp0LMBqFMFHmmxUb+U4+DhNpz4WYIlhWgTAWKIAHGOyVQKR98dx45uYoXTKZGRA/S0BT1n+6cd74G8qNlRO76WmNXLHI/R8nXom7U4eqENJdNAUSczdJR0HW/s1HDwhavehMIDx2BbtChj4Ip7hvDeuyYp7pHSe9l//8yBNTh/MwhOALnrf/fu2GhWBnDms+IMWMk1eOM8IxVYsV2QMl9F+Wyg7tV3hTxZZdw5BHZLlzEjdJpEJn0FVeaZEvYtEPF/yyECMivm9+6hDdoOLJKKSTIxPLNh0USXLnN6XiCqluiQE9Ok5dXTfO5/wxN2lb9D7LYtz9ectjat1wioQSdhklmkTdN7NuguB6O4cInhdobPM9oNnAFg1UtSlUc2J+5FuEuw+yyIBTVUqBnsyiYNsUiUpOOza7msEmg3KCUKxOvDAvUJZ/4JBKUlnmdVYHXzL9KnEEioVs1gFbmIjofbEVdjPleOQ8zaHruCIIxO3C/du/nNgDz3tUWpIzAnATNKZ6SFKi3/7UuYXgA9vqkbBun/xuAgbo0OwyESbLKcJhauT+765FIFVuaiapi7e/CAv2hNpUchEhxkclliWcGa1lY82rXBA/Hdt8cxli5XgXnHc28vVWCDgWqhu+kpk5eRiNYG1rTCsOjohRtYrgQoZVmZKciyjKYlDejZOHyfyk+5kM67CllcZeWBvrlAGU2aL0Vq1uwfo1EPbIlqrmGY0F0z3WfK41oOHQ8tlA1cGFE6BFVUeaxcVj2IB4O4NqLWDPb8RZU2WyKAZZBkJQJsUoAVs5Po7lwoGxAeaR01Fp/aXAhWEf5d7Y4X/XPBnusLVOjdomZGzwvPzKJvRsH/bZXcGj8z/sPjEeSKBWJU98B6DNN9enwMmzflEJDn32hxiMOciJKWUovkXw43qrN7g53dWbx/pB/hsIS6ONBRz9DSBGxoc+u1QCot0HtNxshtmbojp6I3OHmaoWudg571lOpiDpKtDhoaOVqWljB+I0xlWYFpu5o1vPSlpdM49OYcRnkchdQUrHLBVBq2UOgpDu9Cwe+6Dsf765Jap9fPubRJ1MgEK7uuj04xfN6XBFOXUe9WBAuGPS3fY5vQ3kmPeRVq6YqVVG4l74Qc26Tw0NCcyCC54g4a4yZ+H4njythibGm5gndeo+ChVtM2yl0XrRmKUC1vYDD4Hmjmc6Ju1W5eUz+rUT9bmK+f/ZH62eycfrbsQRL1+9le6mebqZ/dT6xF3XMmm/KlyWNelvMbGPK3pfpieNvtyP/yS+GBXf/FN9ifAgwAIOzB+qcKmLcAAAAASUVORK5CYII=",speed:1e3,timeStep:1,startIcon:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAADb0lEQVRYR8WWW4jcZBzFz8lukn1Si5fOjKK20NmEKtoFL+C1IBX0RQQFQeoiIipeHnxQCioURPBJhQo+yFJFEfRFKIKIN1wKFZGqtJPZbgtFTWa7i1LFy+bbyZHsztJ1MpkkI9I85vufc375/798CXGWL57lfFQDENgw/g4Qt0loQroE5CKl410r+WphPJkF55erPFQ5AMFuGO8RiU+TuCwvQNAioWdDuz0DQmVACgE2aeu5E8Y9QODGMoZpjaSP6fx2d8jwzyLNcADBrht/lsC1RUYD1g//ZS/f+itPnB6mHQpQj71XCT45QnhPooOhHdwEIsnzyAXYrMktluExgmODxJIiED8D2JFXszaO5P7Ibb9TGaAee28QfLhfKGhJ1L0du/15ura2R+xpgHsJnpMJkuZCN5isBiCMNYy/mPr3CeNEnOq4R4/0G9bi5jWEdYhgpquJzPaOO390EMTAEVwgr+kYtrMC7Qud4PG8p6nH3rsE7+tfT5A82HHaM6UB6sa/mcKX2fZjd+S03s4DqMXetAVmgkTtiezgpdIANTO505L12QDBQ6HTejMfwN9tAfsz4FUBGtp6KYx7csAI3gudINPi9bpa7L1mgU9kRmDhzs5466PSHUgLG8v+HIhtG0WC1JWuPuW2v+836+2bHwA4/9bAJPYvmxa48EclgLrx9lB8cUAXTgt6/m/b7F8/5WrGu4XC+wQvzLRf+DByW3dVew0BXKQtm8fMxE8ExgceRFAXwGEIDZL1vIAE3es6ztzXlQFWxxB7MwCn88RF9wV9EjnBrmF1Q78F6WaUcU4MO2qHmXexcv2Cc+zQyABrXfD3AXis6Gmzs9cHkRvcU6Qr/B+4WN75MpwHcF6R2Zl1LcM220Ie/7FIUwiQGtTiyUctWK8Xma2vJ9QLHTvYW6a+FAAE1o33DcGpQlOpHTrBFSBWCmuB8j+ljdifEpRCDIVOqJ0dO/iiTHhaU64DPbd67L9C4Kk8c0FvRU7wQNnwygDQ5RONeOI7kM0BJ95J4yRXLrH9+/8HkJ6QcfOqMVjfErQ2Bq1QN5yyg4NVwqt3oOdeM/5zlnBmlwsvh27rmarhIwOsvhWxf4DEHQA+De3W7SDSb0Plq9Im3Oi+9jPqzBqbu5bYiion9wQjA6zqtd0Bj8Sjho8+gv+S2Kf9B1+VRDBEEbAnAAAAAElFTkSuQmCC",endIcon:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAADdElEQVRYR8WWXYjcVBiG3zfJGb1oq4todXZnVOpsMlbRLtQK1p+CVNAbERQEqUVEVPy58EIpqFAQwasqVOhFWdrSIuiNUAQR/3ApVIr0hzozu93KJtktsgWRxeLmJPlKho52JzOTZIo2t+d7v/c5b76cHOIqP7zK/igEIADPlNWGyJBHQY4DHANlUcBZI4p/MubDqRqwXGRTuQAEUM0x9TIMvkXg1r4GIosA3rE9PUlA8oBkAsyO4Dq9Sh0GuTlPw3aN4Os1UfBUeQEXsjQDAZKdtypqCuR9WY3S63JcLelH1v2BPwdpBwI0q+pjgG8UN+8o5Ijt6gcJxP169AVorsXtKKkZkGYvsQDnKDIPYEO/mrYuxnOOHxwsDNCoqj0EX0oJRc4jlmec+fD7ZK09I6vVdgA7Aa7prhfBdN0L7EIAApjNqlokOHK5UCCBBU7U3OB0d8NWRW0U4CjIVKomsL7mBr/2guj5ChqjGKdZaqV3I7vrnn6t324aFXWI5LM9UnvB8fRkboDpivVQTOPHbgEh22xXHxgAsJ1kykgQ76i74Ye5AZqj1haYxncpQSwvOr7e2w+gVVXbBNyXSq4owGwZVW2V5nq8gs/qnk5HfKmwVVWfCPh6Krk4esL2o69yJ5AUNiqlaRK1FSIRgfBexw9OdjdL5gamOkWw1DW4emRZj9z8O/4qCGDtII0P0iJJTrb31JLe1znlZsashyPyc5A3pgcQXzpe8GShzzApPnsT1i5fo3ySVk+xSCTEcYBlArf0NYhlk+3rnwsDJIJWRU0KmRwyQz0i8k3d01sHiQf+C9rDaKqzA4/aAd2NWO4f9/XRoQESYbOidoN8dYgIvnDc4OksXeZ9oDGKG2iqMwCvz2r277osW6Gu3bEAL0uTCXAphVdAfprVrLPOOH7f9sOdeepzASR3wWZVHSM4kaNpy3aDuwiEOWrzX0pnymoiMnGs199uxcETx1vqfvhDHvOkJlcCnWbNMbULBt/s11xE9tc9/Xxe88IAv92Ga/+OSidIjHebCDDHC8Hdznks/WcA7cNpVN0jBn4BaayIPowfqC+ER4qYF07gn1dRsd4Fjcun/CPHDd4uaj40QPJVtKqlwwAeB+Rb29WPEYj+N4DEKLmMBqvUlBh6651zODeM+dAJdMxOA6X1QDCs+RUDXIlxR3sRcjswMD6XvKYAAAAASUVORK5CYII=",showInfoWin:!1,arrowPixel:.2,textStyle:{}};for(const g of Object.keys(this._operators))o[g]&&(this._operators[g]=o[g]);const h=new It({color:"rgba(255,255,255,0.4)"}),u=new Lt({color:"#3399CC",width:1.25});this._defaultStyles=[new ut({image:new pn({fill:h,stroke:u,radius:5}),fill:h,stroke:u})],this._nodesCollection=null,this._nodeInfos=[];const c=new Tn({src:this._operators.carIcon,scale:1,anchor:[.5,.5],offset:[0,0]});c.load(),this._carIcon=new ut({image:c}),this._direction=0,a&&(this._map=a),this._viewCode=(f=this._map)==null?void 0:f.getView().getProjection().getCode(),this._status="stop",this._pathInfo=s,this._bubble=i,this._moving=!1,this._tracePointsModePlay=r,this._lineLayer=new ni({source:new yn({features:[],strategy:Ov}),properties:{vzBelong:"vzTrackPath",vzTime:l}}),this._lineLayer.set("projection",this._viewCode,!0),this._lineLayer.set("track-type","trackPath"),this._movePath=[],this._originPath=null,this._revealLayer=new ni({source:new yn({features:[],strategy:Ov}),properties:{vzBelong:"vzTrackPath",vzTime:l}}),this._revealLayer.set("projection",this._viewCode,!0),this._revealLayer.set("track-type","trackReveal"),this._showTracePoint=n,this._nodesLayer=new ni({source:new yn({features:[],strategy:Ov}),style:null,properties:{vzBelong:"vzTrackPath",vzTime:l}}),this._nodesLayer.set("projection",this._viewCode,!0),this._nodesLayer.set("track-type","trackNodes"),this._nodesLayer.setVisible(this._showTracePoint),this._moveNodes=[],this._speed=this._operators.speed,this._timeStep=this._operators.timeStep,this._speedUp=1,this._nowTime=null,this._moveIdx=1,this._animateLayer=new ni({source:new yn({features:[],strategy:Ov}),style:new ut({stroke:new Lt({color:"red",width:2})}),properties:{vzBelong:"vzTrackPath",vzTime:l}}),this._animateLayer.set("projection",this._viewCode,!0),this._animateLayer.set("track-type","trackAnimate"),this._animateLine=new Wi({geometry:new Yt([])}),this._group=new Gf({layers:[this._lineLayer,this._revealLayer,this._nodesLayer,this._animateLayer],zIndex:99,properties:{type:"vzTrackPath",vzTime:l}}),a==null||a.addLayer(this._group),this._tracekEvent=a==null?void 0:a.on(["singleclick","pointermove"],g=>{this.eventListener(g)}),this._eventType=["nodeClick","nodeMouseover","nodeMouseout","pathClick","pathMouseover","pathMouseout","move"],this._simplifyEvent=a==null?void 0:a.getView().on("change:resolution",g=>{Number.isInteger(g.target.getZoom())&&this.simplifyOpera(g)}),this.initLinesAndMarkers()}simplifyOpera(e){var u,c;let i=[];const n=e.target.getProjection().getCode(),r=this._viewCode!==n,a=e.target.getResolution();i=this._nodesCollection.map(f=>{var d;if(r&&f.get("isSimplify")===!1){const v=(d=f.getGeometry())==null?void 0:d.transform(this._viewCode,n);v instanceof ii&&f.setGeometry(v)}const g=f.getGeometry().getCoordinates();return{x:g[0]/a,y:g[1]/a,idx:f.get("node_idx")}}),r&&(this._viewCode=n);const s=xRe(i,2,!1),o=[],l=[];s.forEach(f=>{o.push([f.x*a,f.y*a]),l.push(f.idx)}),this._originPath instanceof Yt&&this._originPath.setCoordinates(o),!this._moving&&this._status!=="moving"&&this._moveListener!==null&&this._tracePointsModePlay==="animation"&&this._originPath instanceof Yt&&((u=this._animateLine.getGeometry())==null||u.setCoordinates(o.slice(0,l.indexOf(this._moveIdx)+1).concat([this._animateStart.getGeometry().getCoordinates()]))),(c=this._nodesLayer.getSource())==null||c.clear(),new Promise((f,g)=>{var d;this._nodeInfos=[],this._nodesLayer.getVisible()&&((d=this._nodesCollection)==null||d.forEach((v,A)=>{v.set("isSimplify",!1),v.setStyle(null),l.includes(A+1)&&(v.set("isSimplify",!0),v.setStyle(this._defaultStyles),this._nodeInfos.push(v))})),f(this._nodeInfos)}).then(f=>{var g;(g=this._nodesLayer.getSource())==null||g.addFeatures(f)})}eventListener(e){var n,r,a,s,o,l,h,u,c;if((n=this._map)==null?void 0:n.hasFeatureAtPixel(e.pixel,{layerFilter:function(f){return f instanceof ni&&(f.get("track-type")==="trackPath"||f.get("track-type")==="trackNodes")},hitTolerance:0})){this._moveNodes=((r=this._map)==null?void 0:r.getFeaturesAtPixel(e.pixel,{layerFilter:function(d){return d instanceof ni&&d.get("track-type")==="trackNodes"},hitTolerance:0}))||[],this._movePath=((a=this._map)==null?void 0:a.getFeaturesAtPixel(e.pixel,{layerFilter:function(d){return d instanceof ni&&d.get("track-type")==="trackPath"},hitTolerance:0}))||[];const f=this._moveNodes.map(d=>d.getProperties()),g=this._movePath.map(d=>d);switch(e.type){case"singleclick":f.length>=1&&((s=this._map)==null||s.dispatchEvent({type:"nodeClick",target:this._bubble?[f[0]]:f,propagationStopped:!1,defaultPrevented:!1,preventDefault:function(){throw new Error("Function not implemented.")},stopPropagation:function(){throw new Error("Function not implemented.")}})),g.length>=1&&((o=this._map)==null||o.dispatchEvent({type:"pathClick",target:this._bubble?[g[0]]:g,propagationStopped:!1,defaultPrevented:!1,preventDefault:function(){throw new Error("Function not implemented.")},stopPropagation:function(){throw new Error("Function not implemented.")}}));break;case"pointermove":f.length>=1&&((l=this._map)==null||l.dispatchEvent({type:"nodeMouseover",target:this._bubble?[f[0]]:f,propagationStopped:!1,defaultPrevented:!1,preventDefault:function(){throw new Error("Function not implemented.")},stopPropagation:function(){throw new Error("Function not implemented.")}})),g.length>=1&&((h=this._map)==null||h.dispatchEvent({type:"pathMouseover",target:this._bubble?[g[0]]:g,propagationStopped:!1,defaultPrevented:!1,preventDefault:function(){throw new Error("Function not implemented.")},stopPropagation:function(){throw new Error("Function not implemented.")}}));break}}else{const f=this._moveNodes.map(d=>d.getProperties());this._moveNodes.length>0&&this._moveNodes.splice(0,this._moveNodes.length),e.type==="pointermove"&&f.length>0&&((u=this._map)==null||u.dispatchEvent({type:"nodeMouseout",target:this._bubble?[f[0]]:f,propagationStopped:!1,defaultPrevented:!1,preventDefault:function(){throw new Error("Function not implemented.")},stopPropagation:function(){throw new Error("Function not implemented.")}}));const g=this._movePath.map(d=>d);this._movePath.length>0&&this._movePath.splice(0,this._movePath.length),e.type==="pointermove"&&g.length>0&&((c=this._map)==null||c.dispatchEvent({type:"pathMouseout",target:this._bubble?[g[0]]:g,propagationStopped:!1,defaultPrevented:!1,preventDefault:function(){throw new Error("Function not implemented.")},stopPropagation:function(){throw new Error("Function not implemented.")}}))}}initLinesAndMarkers(){var l,h,u,c,f,g;const e=(l=this._pathInfo)==null?void 0:l.map(d=>[d.longitude,d.latitude]),i=[],n=[];let r=0;for(const d of e){const v=new Wi({geometry:new ii(av(d,this._viewCode))});let A=null;if(this._pathInfo&&(A=this._pathInfo[r]),A&&(A.node_idx=r+1,A.isSimplify=!1,v.setProperties(A,!0),v.setId("tackNode-"+A.node_idx)),r===0){const p=v.clone();this._animateStart=v.clone(),this._animateStart.setId("moveCarFeature"),p.setStyle(new ut({image:new Tn({src:this._operators.startIcon,anchor:[.5,1]}),text:new _r({text:""})})),(h=this._revealLayer.getSource())==null||h.addFeature(p)}else if(this._pathInfo&&r===this._pathInfo.length-1){const p=v.clone();p.setStyle(new ut({image:new Tn({src:this._operators.endIcon,anchor:[.5,1]}),text:new _r({text:""})})),(u=this._revealLayer.getSource())==null||u.addFeature(p)}n.push(v),r++}const a=new Yt(e);this._originPath=a.transform("EPSG:4326",this._viewCode);const s=new Wi({geometry:this._originPath}),o=new ut({image:new Tn({src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABfUlEQVQ4T3WTTSvFYRDFf8dLKIqytFckthTpJkQWlyhF2fgEVr6BheytpChEsqB08xbZWPgOJAs7ieRlNMzV//75P7vnmZkz58ycR2ZWD7QBF5KM1DGzTuBO0k065neZ2S3QBGwAU5I+iolmNgrsAI9An6SrNIgDnAE9EdgFJiS9+93MuoEToBx4AgYkXSZBHKAWOAS6IrAP5CW9BUge2AIqgJdg8guiSKoBDoDeDJBhwNlVBsiQpNPvGST0VgF7TjPeCsCIpNdo0g84O2fibx4r/AJEUjVwlJDjXbybU/eZjAGbMROXmC8BiKQ64BxoDyYLkuYTTCeB9WD/9B9AA3AMdGQAzALLAfCcluDF3r01itMS5oDFiP3MIUHNi90T7ko/XjyYGOIMsFJSXByimTVGQbFzegOuew0o+7PGKL4AmjM8MA2shua/RjIzX1suw8pucZfiUjOt/AC4BHfaeOoz+d63oziX9Zla3CzAkqTP9G8zM4/dS7r+7zt/Aaattn1kX8VgAAAAAElFTkSuQmCC",anchor:[.75,.5],scale:.7,rotateWithView:!1})});s.set("arrow",[new ut({stroke:new Lt({color:"rgba(0, 0, 255, 0.6)",width:10})}),o]),s.set("mainView",(c=this._map)==null?void 0:c.getView()),s.setStyle(wRe),i.push(s),(f=this._lineLayer.getSource())==null||f.addFeatures(i),this._nodesCollection=n,(g=this._animateLayer.getSource())==null||g.addFeature(this._animateLine),s.get("mainView")!==void 0&&s.get("mainView").dispatchEvent("change:resolution")}labelVisible(e){var i,n;if(e&&this._textLayer===0){const r=(i=this._pathInfo)==null?void 0:i.map(a=>({position:[a.longitude,a.latitude],text:a.gnssTime}));this._textLayer=new IRe({map:this._map,pointsArr:r,zoom:12}),this._textLayer.set("id","lushuText"+new Date().getTime()),this._group.getLayers().push(this._textLayer)}else(n=this._textLayer)==null||n.setVisible(e)}start(e){var i,n;this._pathInfo&&this._pathInfo.length<1||((this._moving||this._status==="pause")&&this.stop(),this._moveIdx=e||1,this._moving=!0,this._status="moving",this._nowTime=Date.now(),this._tracePointsModePlay==="skip"?(this._moveListener=this._lineLayer.on("postrender",r=>{this.tracePointsPlay(r)}),(i=this._map)==null||i.render()):this._tracePointsModePlay==="animation"&&(this._step=0,this._moveListener=this._lineLayer.on("postrender",r=>{this.animationPlay(r)}),(n=this._map)==null||n.render()))}stop(e){var n,r,a,s;this._moveIdx=1,this._status="stop",this._moving=!1,this._step=0,this._moveListener!==null&&(Lr(this._moveListener),this._moveListener=null);const i=(n=this._animateLayer.getSource())==null?void 0:n.getFeatureById("moveCarFeature");i&&((r=this._animateLayer.getSource())==null||r.removeFeature(i)),(a=this._animateLine.getGeometry())==null||a.setCoordinates([]),this._originPath instanceof Yt&&((s=this._animateStart.getGeometry())==null||s.setCoordinates(this._originPath.getFirstCoordinate()))}pause(){this._status="pause",this._moving=!1}resume(){this._status="moving",this._moving=!0}tracePointsPlay(e){var a,s,o,l,h;const i=e.frameState,n=this._nodesCollection.map(u=>u.getGeometry().getCoordinates()),r=(i.time-this._nowTime)/1e3%60;if(this._moving&&(this._moveIdx===1||r>=this._timeStep)){this._nowTime=i.time;let u=this._moveIdx===1?this._speedUp:this._moveIdx+this._speedUp,c=null;const f=this._animateLine.getGeometry();if(n&&this._moveIdx===n.length){this.stop(!0);return}if(u>=n.length&&this._moveIdx<n.length){u=n.length;let A=null;n&&(A=new Wi(new ii(n[u-1]))),c=A;const p=n[u-1][0]-n[u-2][0],m=n[u-1][1]-n[u-2][1],y=Math.atan2(m,p);this._direction!==y&&(this._direction=y),this._carIcon.getImage().setRotation(-this._direction+2*Math.PI);for(let I=n.length-this._moveIdx;I>0;--I)u!==0&&u-I<=n.length-1&&(f==null||f.appendCoordinate(n[u-I]))}else if(u<n.length&&this._moveIdx<n.length){let A=null;if(n&&(A=new Wi(new ii(n[u-1]))),c=A,n&&u!==n.length-1){const p=n[u][0]-n[u-1][0],m=n[u][1]-n[u-1][1],y=Math.atan2(m,p);this._direction!==y&&(this._direction=y),this._carIcon.getImage().setRotation(-this._direction+2*Math.PI)}for(let p=this._speedUp;p>0;--p)u!==0&&u-p<=n.length-1&&(f==null||f.appendCoordinate(n[u-p]))}this._animateStart.setStyle(this._carIcon),this._animateStart.getGeometry().setCoordinates((a=c==null?void 0:c.getGeometry())==null?void 0:a.getCoordinates());const g=(s=this._animateLayer.getSource())==null?void 0:s.getFeatureById("moveCarFeature");(!g||g.length<=0)&&((o=this._animateLayer.getSource())==null||o.addFeature(this._animateStart)),this._moveIdx=u;const d=(l=this._map)==null?void 0:l.getView().getProjection().getCode(),v={index:this._moveIdx,status:this._status,position:n[u-1],lngLat:n_(this._animateStart.getGeometry().getCoordinates(),d),passNode:this._nodesCollection[u-1],length:f==null?void 0:f.getLength()};this._animateLayer.dispatchEvent({type:"move",target:v,propagationStopped:!1,defaultPrevented:!1,preventDefault:function(){throw new Error("Function not implemented.")},stopPropagation:function(){throw new Error("Function not implemented.")}})}(h=this._map)==null||h.render()}animationPlay(e){var n,r,a,s;let i=0;if(this._nowTime=e.frameState.time,this._originPath instanceof Yt&&this._moving&&this._step!==void 0&&this._step<=1){const o=this._originPath.clone();o.transform(this._viewCode,"EPSG:3857");const l=o.getLength(),h=this._animateLine.getGeometry(),u=this._originPath.clone();if(u instanceof Yt&&this._step!==0){const p={geometry:{coordinates:u.getCoordinates(),type:"LineString"},properties:{},type:"Feature"};i=l*this._step;const m=Lie(p,0,i/1e3,{units:"kilometers"});u.setCoordinates(m.geometry.coordinates),u.transform("EPSG:4326",this._viewCode);const y=u.getCoordinates();h==null||h.setCoordinates(y);let I=0,_=0;if(y.length>2){const x=y[y.length-2],w=y[y.length-1];I=x[0]-w[0],_=x[1]-w[1];const E=Math.atan2(_,I);this._direction!==E&&(this._direction=E),this._carIcon.getImage().setRotation(-this._direction+Math.PI)}this._animateStart.setStyle(this._carIcon),this._animateStart.getGeometry().setCoordinates(u.getLastCoordinate());const C=(n=this._animateLayer.getSource())==null?void 0:n.getFeatureById("moveCarFeature");(!C||C.length<=0)&&((r=this._animateLayer.getSource())==null||r.addFeature(this._animateStart))}const c=h==null?void 0:h.getLength();let f=0,g=0;const d=new Yt([]);this._originPath.forEachSegment(function(p,m){d.setCoordinates([p,m]),g<=c&&(g+=d.getLength(),f++)}),this._moveIdx=this._nodeInfos[f-1].get("node_idx"),this._step+=5*1e-7*this._speed;const v=(a=this._map)==null?void 0:a.getView().getProjection().getCode(),A={index:this._moveIdx,status:this._status,speed:this._speed,position:this._animateStart.getGeometry().getCoordinates(),lngLat:n_(this._animateStart.getGeometry().getCoordinates(),v),passNode:this._nodesCollection[this._moveIdx-1],length:c};this._animateLayer.dispatchEvent({type:"move",target:A,propagationStopped:!1,defaultPrevented:!1,preventDefault:function(){throw new Error("Function not implemented.")},stopPropagation:function(){throw new Error("Function not implemented.")}})}if(this._moving&&this._step&&this._step>=1){this.stop(!0);return}(s=this._map)==null||s.render()}setFitView(e){var i;this._originPath!==null&&this._originPath instanceof Yt&&e&&((i=this._map)==null||i.getView().fit(this._originPath))}getPaths(){return this._pathInfo}setPaths(e){this.clearPaths(),this._pathInfo=e,this.initLinesAndMarkers()}clearPaths(){this._moving&&this.stop(),this._group.getLayersArray().forEach(e=>{e instanceof ni&&e.getSource().clear()})}destroy(){var e;this._moving&&this.stop(),this.clearPaths(),Lr(this._tracekEvent),(e=this._map)==null||e.getView().removeEventListener("change:resolution",this._simplifyEvent.listener)}getSpeed(){return this._speed}setSpeed(e){this._speed=e}getSpeedUp(){return this._speedUp}setSpeedUp(e){this._speedUp=e,this._speed=this._speed*e}getPercentnum(){return typeof this._step=="number"?this._step.toPrecision(3):0}setPercentnum(e){typeof e=="number"&&e<=1&&e>=0&&(this._step=e)}setTraceLineStyle(e){var a;e=e||{};const i=e.lineColor?e.lineColor:"rgba(0, 0, 255, 0.6)",n=e.lineWidth?e.lineWidth:10,r=(a=this._lineLayer.getSource())==null?void 0:a.getFeatures();r==null||r.forEach(s=>{s.get("arrow")[0].setStroke(new Lt({color:i,width:n}))}),this._lineLayer.changed()}setPassLineStyle(e){e=e||{};const i=e.lineColor?e.lineColor:"red",n=e.lineWidth?e.lineWidth:2,r=new ut({stroke:new Lt({color:i,width:n})});this._animateLayer.setStyle(r),this._animateLayer.changed()}setTraceNodeStyle(e){var l;e=e||{};const i=e.fillColor?e.fillColor:"rgba(255,255,255,0.4)",n=e.lineColor?e.lineColor:"#3399CC",r=e.lineWidth?e.lineWidth:1.25,a=e.size?e.size:5,s=new It({color:i}),o=new Lt({color:n,width:r});this._defaultStyles=[new ut({image:new pn({fill:s,stroke:o,radius:a}),fill:s,stroke:o})],(l=this._nodesLayer.getSource())==null||l.getFeatures().forEach(h=>{h.setStyle(this._defaultStyles),h.changed()})}getEvents(){return this._eventType}on(e,i){var r;if(this._eventType.includes(e))return e==="move"?this._animateLayer.on(e,i):(r=this._map)==null?void 0:r.on(e,i)}once(e,i){var r;if(this._eventType.includes(e))return e==="move"?this._animateLayer.once(e,i):(r=this._map)==null?void 0:r.once(e,i)}un(e,i){var r;if(this._eventType.includes(e))return e==="move"?this._animateLayer.un(e,i):(r=this._map)==null?void 0:r.un(e,i)}}function wRe(t,e){const i=t.get("arrow"),n=t.get("mainView"),r=[i[0]],a=t.getGeometry();if(a&&a instanceof Yt){const s=a.getLength(),o=200*e/s;for(let l=0;l<=1;l+=o){const h=a.getCoordinateAt(l);if(Qn(n.calculateExtent(),h)){const c=a.getCoordinateAt(l+5e-5),f=c[0]-h[0],g=c[1]-h[1],d=Math.atan2(g,f);if(l!==0){const v=i[1].clone();v.setGeometry(new ii(h)),v.getImage().setRotation(-d+2*Math.PI),r.push(v)}}}}return r}const ERe={name:"v-path",render(){return null},inject:["VMap"],props:{id:{type:String,default(){return`track-${$e()}`}},bubble:{type:Boolean,default:!0},showTracePoint:{type:Boolean,default:!0},tracePointsModePlay:{type:String},path:{type:Array},options:{type:Object},autoPlay:{type:Boolean,default:!1}},data(){return{pathObj:null}},computed:{map(){return this.VMap.map}},methods:{init(t){var e,i,n,r,a,s,o;if(t&&t.length>0||this.path&&this.path.length>0){const l=He(Re({},this.$props),{mapObj:this.map,path:t||this.path,options:this.options}),h=new CRe(l);h.setTraceLineStyle({lineColor:((e=l.options)==null?void 0:e.lineColor)||"rgba(0, 0, 255, 0.6)",lineWidth:((i=l.options)==null?void 0:i.lineWidth)||10}),h.setPassLineStyle({lineColor:((n=l.options)==null?void 0:n.passlineColor)||"red",lineWidth:((r=l.options)==null?void 0:r.passlineWidth)||2}),h.setTraceNodeStyle({lineColor:((a=l.options)==null?void 0:a.nodeStrokeColor)||"#3399CC",lineWidth:((s=l.options)==null?void 0:s.nodeStrokeWidth)||1.25,fillColor:((o=l.options)==null?void 0:o.nodeFillColor)||"rgba(255,255,255,0.4)"}),this.pathObj=h,this.pathObj.getEvents().forEach(u=>{this.pathObj.on(u,c=>{this.$emit(u,c)})}),this.$emit("load",this.pathObj),this.autoPlay&&this.start()}},start(t){this.pathObj.start(t)},pause(){this.pathObj.pause()},resume(){this.pathObj.resume()},stop(t){this.pathObj.stop(t)},destroy(){this.pathObj.destroy()}},mounted(){this.init()},beforeDestroy(){this.pathObj.destroy(),this.pathObj=null}};let SRe,bRe;const D$={};var L$=Ji(ERe,SRe,bRe,!1,BRe,null,null,null);function BRe(t){for(let e in D$)this[e]=D$[e]}L$.options.__file="src/components/path/index.vue";const hA=function(){return L$.exports}();hA.install=t=>{t.component(hA.name,hA)};const P$=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],TT=1,uA=8;class RT{static from(e){if(!(e instanceof ArrayBuffer))throw new Error("Data must be an instance of ArrayBuffer.");const[i,n]=new Uint8Array(e,0,2);if(i!==219)throw new Error("Data does not appear to be in a KDBush format.");const r=n>>4;if(r!==TT)throw new Error(`Got v${r} data when expected v${TT}.`);const a=P$[n&15];if(!a)throw new Error("Unrecognized array type.");const[s]=new Uint16Array(e,2,1),[o]=new Uint32Array(e,4,1);return new RT(o,s,a,e)}constructor(e,i=64,n=Float64Array,r){if(isNaN(e)||e<0)throw new Error(`Unpexpected numItems value: ${e}.`);this.numItems=+e,this.nodeSize=Math.min(Math.max(+i,2),65535),this.ArrayType=n,this.IndexArrayType=e<65536?Uint16Array:Uint32Array;const a=P$.indexOf(this.ArrayType),s=e*2*this.ArrayType.BYTES_PER_ELEMENT,o=e*this.IndexArrayType.BYTES_PER_ELEMENT,l=(8-o%8)%8;if(a<0)throw new Error(`Unexpected typed array class: ${n}.`);r&&r instanceof ArrayBuffer?(this.data=r,this.ids=new this.IndexArrayType(this.data,uA,e),this.coords=new this.ArrayType(this.data,uA+o+l,e*2),this._pos=e*2,this._finished=!0):(this.data=new ArrayBuffer(uA+s+o+l),this.ids=new this.IndexArrayType(this.data,uA,e),this.coords=new this.ArrayType(this.data,uA+o+l,e*2),this._pos=0,this._finished=!1,new Uint8Array(this.data,0,2).set([219,(TT<<4)+a]),new Uint16Array(this.data,2,1)[0]=i,new Uint32Array(this.data,4,1)[0]=e)}add(e,i){const n=this._pos>>1;return this.ids[n]=n,this.coords[this._pos++]=e,this.coords[this._pos++]=i,n}finish(){const e=this._pos>>1;if(e!==this.numItems)throw new Error(`Added ${e} items when expected ${this.numItems}.`);return DT(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this}range(e,i,n,r){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");const{ids:a,coords:s,nodeSize:o}=this,l=[0,a.length-1,0],h=[];for(;l.length;){const u=l.pop()||0,c=l.pop()||0,f=l.pop()||0;if(c-f<=o){for(let A=f;A<=c;A++){const p=s[2*A],m=s[2*A+1];p>=e&&p<=n&&m>=i&&m<=r&&h.push(a[A])}continue}const g=f+c>>1,d=s[2*g],v=s[2*g+1];d>=e&&d<=n&&v>=i&&v<=r&&h.push(a[g]),(u===0?e<=d:i<=v)&&(l.push(f),l.push(g-1),l.push(1-u)),(u===0?n>=d:r>=v)&&(l.push(g+1),l.push(c),l.push(1-u))}return h}within(e,i,n){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");const{ids:r,coords:a,nodeSize:s}=this,o=[0,r.length-1,0],l=[],h=n*n;for(;o.length;){const u=o.pop()||0,c=o.pop()||0,f=o.pop()||0;if(c-f<=s){for(let A=f;A<=c;A++)F$(a[2*A],a[2*A+1],e,i)<=h&&l.push(r[A]);continue}const g=f+c>>1,d=a[2*g],v=a[2*g+1];F$(d,v,e,i)<=h&&l.push(r[g]),(u===0?e-n<=d:i-n<=v)&&(o.push(f),o.push(g-1),o.push(1-u)),(u===0?e+n>=d:i+n>=v)&&(o.push(g+1),o.push(c),o.push(1-u))}return l}}function DT(t,e,i,n,r,a){if(r-n<=i)return;const s=n+r>>1;k$(t,e,s,n,r,a),DT(t,e,i,n,s-1,1-a),DT(t,e,i,s+1,r,1-a)}function k$(t,e,i,n,r,a){for(;r>n;){if(r-n>600){const h=r-n+1,u=i-n+1,c=Math.log(h),f=.5*Math.exp(2*c/3),g=.5*Math.sqrt(c*f*(h-f)/h)*(u-h/2<0?-1:1),d=Math.max(n,Math.floor(i-u*f/h+g)),v=Math.min(r,Math.floor(i+(h-u)*f/h+g));k$(t,e,i,d,v,a)}const s=e[2*i+a];let o=n,l=r;for(cA(t,e,n,i),e[2*r+a]>s&&cA(t,e,n,r);o<l;){for(cA(t,e,o,l),o++,l--;e[2*o+a]<s;)o++;for(;e[2*l+a]>s;)l--}e[2*n+a]===s?cA(t,e,n,l):(l++,cA(t,e,l,r)),l<=i&&(n=l+1),i<=l&&(r=l-1)}}function cA(t,e,i,n){LT(t,i,n),LT(e,2*i,2*n),LT(e,2*i+1,2*n+1)}function LT(t,e,i){const n=t[e];t[e]=t[i],t[i]=n}function F$(t,e,i,n){const r=t-i,a=e-n;return r*r+a*a}const MRe={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:t=>t},Q$=Math.fround||(t=>e=>(t[0]=+e,t[0]))(new Float32Array(1)),oh=2,el=3,PT=4,tl=5,z$=6;class O${constructor(e){this.options=Object.assign(Object.create(MRe),e),this.trees=new Array(this.options.maxZoom+1),this.stride=this.options.reduce?7:6,this.clusterProps=[]}load(e){const{log:i,minZoom:n,maxZoom:r}=this.options,a=`prepare ${e.length} points`;this.points=e;const s=[];for(let l=0;l<e.length;l++){const h=e[l];if(!h.geometry)continue;const[u,c]=h.geometry.coordinates,f=Q$(iy(u)),g=Q$(ny(c));s.push(f,g,1/0,l,-1,1),this.options.reduce&&s.push(0)}let o=this.trees[r+1]=this._createTree(s);for(let l=r;l>=n;l--){const h=+Date.now();o=this.trees[l]=this._createTree(this._cluster(o,l))}return this}getClusters(e,i){let n=((e[0]+180)%360+360)%360-180;const r=Math.max(-90,Math.min(90,e[1]));let a=e[2]===180?180:((e[2]+180)%360+360)%360-180;const s=Math.max(-90,Math.min(90,e[3]));if(e[2]-e[0]>=360)n=-180,a=180;else if(n>a){const c=this.getClusters([n,r,180,s],i),f=this.getClusters([-180,r,a,s],i);return c.concat(f)}const o=this.trees[this._limitZoom(i)],l=o.range(iy(n),ny(s),iy(a),ny(r)),h=o.data,u=[];for(const c of l){const f=this.stride*c;u.push(h[f+tl]>1?N$(h,f,this.clusterProps):this.points[h[f+el]])}return u}getChildren(e){const i=this._getOriginId(e),n=this._getOriginZoom(e),r="No cluster with the specified id.",a=this.trees[n];if(!a)throw new Error(r);const s=a.data;if(i*this.stride>=s.length)throw new Error(r);const o=this.options.radius/(this.options.extent*Math.pow(2,n-1)),l=s[i*this.stride],h=s[i*this.stride+1],u=a.within(l,h,o),c=[];for(const f of u){const g=f*this.stride;s[g+PT]===e&&c.push(s[g+tl]>1?N$(s,g,this.clusterProps):this.points[s[g+el]])}if(c.length===0)throw new Error(r);return c}getLeaves(e,i,n){i=i||10,n=n||0;const r=[];return this._appendLeaves(r,e,i,n,0),r}getTile(e,i,n){const r=this.trees[this._limitZoom(e)],a=Math.pow(2,e),{extent:s,radius:o}=this.options,l=o/s,h=(n-l)/a,u=(n+1+l)/a,c={features:[]};return this._addTileFeatures(r.range((i-l)/a,h,(i+1+l)/a,u),r.data,i,n,a,c),i===0&&this._addTileFeatures(r.range(1-l/a,h,1,u),r.data,a,n,a,c),i===a-1&&this._addTileFeatures(r.range(0,h,l/a,u),r.data,-1,n,a,c),c.features.length?c:null}getClusterExpansionZoom(e){let i=this._getOriginZoom(e)-1;for(;i<=this.options.maxZoom;){const n=this.getChildren(e);if(i++,n.length!==1)break;e=n[0].properties.cluster_id}return i}_appendLeaves(e,i,n,r,a){const s=this.getChildren(i);for(const o of s){const l=o.properties;if(l&&l.cluster?a+l.point_count<=r?a+=l.point_count:a=this._appendLeaves(e,l.cluster_id,n,r,a):a<r?a++:e.push(o),e.length===n)break}return a}_createTree(e){const i=new RT(e.length/this.stride|0,this.options.nodeSize,Float32Array);for(let n=0;n<e.length;n+=this.stride)i.add(e[n],e[n+1]);return i.finish(),i.data=e,i}_addTileFeatures(e,i,n,r,a,s){for(const o of e){const l=o*this.stride,h=i[l+tl]>1;let u,c,f;if(h)u=G$(i,l,this.clusterProps),c=i[l],f=i[l+1];else{const v=this.points[i[l+el]];u=v.properties;const[A,p]=v.geometry.coordinates;c=iy(A),f=ny(p)}const g={type:1,geometry:[[Math.round(this.options.extent*(c*a-n)),Math.round(this.options.extent*(f*a-r))]],tags:u};let d;h||this.options.generateId?d=i[l+el]:d=this.points[i[l+el]].id,d!==void 0&&(g.id=d),s.features.push(g)}}_limitZoom(e){return Math.max(this.options.minZoom,Math.min(Math.floor(+e),this.options.maxZoom+1))}_cluster(e,i){const{radius:n,extent:r,reduce:a,minPoints:s}=this.options,o=n/(r*Math.pow(2,i)),l=e.data,h=[],u=this.stride;for(let c=0;c<l.length;c+=u){if(l[c+oh]<=i)continue;l[c+oh]=i;const f=l[c],g=l[c+1],d=e.within(l[c],l[c+1],o),v=l[c+tl];let A=v;for(const p of d){const m=p*u;l[m+oh]>i&&(A+=l[m+tl])}if(A>v&&A>=s){let p=f*v,m=g*v,y,I=-1;const _=((c/u|0)<<5)+(i+1)+this.points.length;for(const C of d){const x=C*u;if(l[x+oh]<=i)continue;l[x+oh]=i;const w=l[x+tl];p+=l[x]*w,m+=l[x+1]*w,l[x+PT]=_,a&&(y||(y=this._map(l,c,!0),I=this.clusterProps.length,this.clusterProps.push(y)),a(y,this._map(l,x)))}l[c+PT]=_,h.push(p/A,m/A,1/0,_,-1,A),a&&h.push(I)}else{for(let p=0;p<u;p++)h.push(l[c+p]);if(A>1)for(const p of d){const m=p*u;if(!(l[m+oh]<=i)){l[m+oh]=i;for(let y=0;y<u;y++)h.push(l[m+y])}}}}return h}_getOriginId(e){return e-this.points.length>>5}_getOriginZoom(e){return(e-this.points.length)%32}_map(e,i,n){if(e[i+tl]>1){const s=this.clusterProps[e[i+z$]];return n?Object.assign({},s):s}const r=this.points[e[i+el]].properties,a=this.options.map(r);return n&&a===r?Object.assign({},a):a}}function N$(t,e,i){return{type:"Feature",id:t[e+el],properties:G$(t,e,i),geometry:{type:"Point",coordinates:[TRe(t[e]),RRe(t[e+1])]}}}function G$(t,e,i){const n=t[e+tl],r=n>=1e4?`${Math.round(n/1e3)}k`:n>=1e3?`${Math.round(n/100)/10}k`:n,a=t[e+z$],s=a===-1?{}:Object.assign({},i[a]);return Object.assign(s,{cluster:!0,cluster_id:t[e+el],point_count:n,point_count_abbreviated:r})}function iy(t){return t/360+.5}function ny(t){const e=Math.sin(t*Math.PI/180),i=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return i<0?0:i>1?1:i}function TRe(t){return(t-.5)*360}function RRe(t){const e=(180-t*360)*Math.PI/180;return 360*Math.atan(Math.exp(e))/Math.PI-90}var U$=function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",[t._t("default")],2)},DRe=[];U$._withStripped=!0;const LRe={name:"v-super-cluster",extends:wr,inject:["VMap"],props:{layerId:{type:String,default(){return`cluster-layer-${$e()}`}},features:{type:Array,default(){return[]}},FeatureStyle:{type:[Array,void 0],default(){}},cluster:{type:Object},overlay:{type:Object}},data(){return{layer:null,clusters:null,featureChildren:[],featureCluster:!1,total:0,eventRender:[],eventList:["singleclick","pointermove"]}},computed:{map(){return this.VMap.map}},watch:{cluster:{handler(t){if(t){this.clusters=new O$(this.cluster),this.clusters.load(this.getGeoFeatures()),this.total=this.clusters.points.length;const e=this.map.getView().calculateExtent(this.map.getSize()),n={type:"FeatureCollection",features:this.clusters.getClusters(e,this.map.getView().getZoom())},r=this.layer.getSource();r&&(r.clear(),r.addFeatures(new Ls().readFeatures(n).map(a=>{const s=a.get("properties");if(s&&typeof s=="object")for(const o in s)Object.prototype.hasOwnProperty.call(s,o)&&a.set(o,s[o]);return a})))}},immediate:!1,deep:!0},features:{handler(){this.dispose(),this.init()},immediate:!1,deep:!0},visible:{handler(t){this.layer.setVisible(t)},immediate:!1},zIndex:{handler(t){this.layer.setZIndex(t)},immediate:!1},maxZoom:{handler(t){this.layer.setMaxZoom(t)},immediate:!1},minZoom:{handler(t){this.layer.setMinZoom(t)},immediate:!1},extent:{handler(t){this.layer.setExtent(t)},immediate:!1}},mounted(){this.init()},beforeDestroy(){this.dispose()},methods:{getGeoFeatures(){return this.features.map(t=>({type:"Feature",geometry:{type:"Point",coordinates:So(t.coordinates,t.convert)},properties:t}))},styleFunction(t,e){const i=e.get("cluster")||0,n=e.get("point_count_abbreviated")||0;let r=t[n];if(i){if(!r){let a={};a={image:new pn({radius:4,fill:new It({color:"blue"})}),text:new _r({font:"16px sans-serif",text:n.toString()})},at(this.cluster,"style")?(r=ci(this.cluster.style),r.getText().setText(n.toString())):r=new ut(a),t[n]=r}}else{const a=e.get("style");r=ci(a)}return r},init(){this.clusters=new O$(this.cluster),this.clusters.load(this.getGeoFeatures()),this.total=this.clusters.points.length;const t=this.map.getView().calculateExtent(this.map.getSize()),i={type:"FeatureCollection",features:this.clusters.getClusters(t,this.map.getView().getZoom())},n={};this.layer=new ni(He(Re({},this.$props),{source:new yn({features:new Ls().readFeatures(i).map(r=>{const a=r.get("properties");if(a&&typeof a=="object")for(const s in a)Object.prototype.hasOwnProperty.call(a,s)&&r.set(s,a[s]);return r})}),style:r=>this.styleFunction(n,r)})),this.layer.set("cluster",!0),this.layer.set("id",this.layerId),this.layer.set("type","vector"),this.layer.set("users",!0),this.zIndex&&this.layer.setZIndex(this.zIndex),this.map.addLayer(this.layer),this.map.on("movestart",r=>{this.$emit("movestart")}),this.map.on("precompose",()=>{const r=this.map.getView().calculateExtent(this.map.getSize()),s={type:"FeatureCollection",features:this.clusters.getClusters(r,this.map.getView().getZoom())},o=this.layer.getSource();o&&(o.clear(),o.addFeatures(new Ls().readFeatures(s).map(l=>{const h=l.get("properties");if(h&&typeof h=="object")for(const u in h)Object.prototype.hasOwnProperty.call(h,u)&&l.set(u,h[u]);return l}))),this.$emit("precompose")}),this.eventList.forEach(r=>{this.eventRender.push(this.map.on(r,a=>this.eventHandler(r,a)))})},zoomEnd(t){const e=this.map.getView().calculateExtent(this.map.getSize()),n={type:"FeatureCollection",features:this.clusters.getClusters(e,this.map.getView().getZoom())},r=this.layer.getSource();r&&(r.clear(),r.addFeatures(new Ls().readFeatures(n).map(a=>{const s=a.get("properties");if(s&&typeof s=="object")for(const o in s)Object.prototype.hasOwnProperty.call(s,o)&&a.set(o,s[o]);return a}))),this.$emit("moveend"),t.map.once("moveend",a=>{this.zoomEnd(a)})},getFeatureAtPixel(t){return this.map.forEachFeatureAtPixel(t,(e,i)=>{var n;if((i==null?void 0:i.get("id"))===((n=this.layer)==null?void 0:n.get("id")))return e},{})},eventHandler(t,e){const{pixel:i}=e,n=this.getFeatureAtPixel(i);this.$emit(t,e,n)},getLeaves(t,e){return this.clusters.getLeaves(t,e)},dispose(){this.eventRender.forEach(e=>{Lr(e)});const t=this.layer.getSource();t&&t.clear(),this.map.removeLayer(this.layer)}}},q$={};var V$=Ji(LRe,U$,DRe,!1,PRe,null,null,null);function PRe(t){for(let e in q$)this[e]=q$[e]}V$.options.__file="src/components/layers/cluster/index.vue";const fA=function(){return V$.exports}();fA.install=t=>{t.component(fA.name,fA)};const j$="KGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO2xldCB2LGcsYj0wLGs9MDtjb25zdCBaPW5ldyBPZmZzY3JlZW5DYW52YXMoMjU2LDI1NiksYz1aLmdldENvbnRleHQoIjJkIik7c2VsZi5vbm1lc3NhZ2U9ZnVuY3Rpb24oZSl7aWYoIWcmJnkoZS5kYXRhLndpZHRoLGUuZGF0YS5oZWlnaHQpLGUuZGF0YS5tc2c9PT0iaW5pdFRpbGUiKXtjb25zdCBpPWUuZGF0YTtIKGkuanNvbixpLmNvbCxpLnJvdyxpLnRyYWZmaWMsaS56b29tKX1lbHNlIGUuZGF0YS5tc2c9PT0idXBkYXRlQ2FudmFzIiYmKGcuY2xlYXJSZWN0KDAsMCx2LndpZHRoLHYuaGVpZ2h0KSxiPTAsZS5kYXRhLnVwZGF0ZUluZm8mJkooZS5kYXRhLnVwZGF0ZUluZm8pKX07ZnVuY3Rpb24geShlLGkpe3Y9bmV3IE9mZnNjcmVlbkNhbnZhcyhlLGkpLGc9di5nZXRDb250ZXh0KCIyZCIpfWZ1bmN0aW9uIEgoZSxpLGwsdCxJKXtjLmNsZWFyUmVjdCgwLDAsMjU2LDI1Nik7bGV0IGg9MTA7Y29uc3QgdT10LmNlbnRlcixvPXQuem9vbVVuaXRzLHg9LXVbMF0vbyxUPXVbMV0vbyxNPVt4LFRdLHc9MTgwLGQ9OTA7bGV0IHM9bnVsbCxuPW51bGw7aWYodC50aWxlVHlwZT09PSJiZDA5IilzPWkqdC50aWxlU2l6ZStNWzBdLG49KC0xLWwpKnQudGlsZVNpemUrTVsxXSxzPXQuc2l6ZVswXS8yK3Msbj10LnNpemVbMV0vMituO2Vsc2UgaWYodC50aWxlVHlwZT09PSJXR1M4NCIpe2NvbnN0IHo9TWF0aC5QSSo2Mzc4MTM3O3M9KGkqdC50aWxlU2l6ZSpvLXopL28rTVswXSxuPU1bMV0tKHotbCp0LnRpbGVTaXplKm8pL28scz10LnNpemVbMF0vMitzLG49dC5zaXplWzFdLzIrbn1lbHNlIHM9KGkqdC50aWxlU2l6ZSpvLXcpL28rTVswXSxuPU1bMV0tKGQtbCp0LnRpbGVTaXplKm8pL28scz10LnNpemVbMF0vMitzLG49dC5zaXplWzFdLzIrbjtpZihlJiZlLnRyYWZmaWMpe2NvbnN0IHo9ZS5wcmVjaXNpb258fDE7aD1oKno7Y29uc3QgQz1lLnRyYWZmaWM7Zm9yKGxldCBQPTAsbT1DLmxlbmd0aDtQPG07UCsrKXtjb25zdCBTPUNbUF0sUj1TWzFdLEI9dC5hcnJGZWF0dXJlU3R5bGVzW1NbM11dO2xldCBHPVJbMF0vaCxPPVJbMV0vaDtjLmJlZ2luUGF0aCgpLGMubW92ZVRvKEcsTyk7Zm9yKGxldCBXPTIsYT1SLmxlbmd0aDtXPGE7Vys9MilHKz1SW1ddL2gsTys9UltXKzFdL2gsYy5saW5lVG8oRyxPKTtjLnN0cm9rZVN0eWxlPUJbMV0sU1szXT49MTUmJlNbM108PTE5JiYoYy5zdHJva2VTdHlsZT0icmdiYSgxODYsIDAsIDAsIDEpIiksYy5saW5lV2lkdGg9QlsyXSxjLmxpbmVDYXA9WChCWzNdKSxjLmxpbmVKb2luPVkoQls0XSksYy5zdHJva2UoKX19aWYoZy5kcmF3SW1hZ2UoWixzLG4pLCsrYixiPT09ayl7Yj0wLGs9MDtjb25zdCB6PXYudHJhbnNmZXJUb0ltYWdlQml0bWFwKCk7cG9zdE1lc3NhZ2Uoe2ltYWdlQml0bWFwOnosbXNnOiJpbml0VGlsZSIsY2FudmFzUG9pbnQ6W3Msbl0sem9vbTpJLHg6aSx5Omx9KX19ZnVuY3Rpb24gSihlKXtsZXQgaSxsO2NvbnN0IHQ9ZS5zaXplO2UudGlsZVR5cGU9PT0iYmQwOSI/KGk9TWF0aC5yb3VuZChlLm1hcFpvb20rMSksZS56b29tVW5pdHM9TWF0aC5wb3coMiwxOC1pKSxsPWUuem9vbVVuaXRzKjI1Nik6ZS50aWxlVHlwZT09PSJXR1M4NCI/KGk9TWF0aC5yb3VuZChlLm1hcFpvb20pLGUuem9vbVVuaXRzPTIqTWF0aC5QSSo2Mzc4MTM3LzI1Ni9NYXRoLnBvdygyLGkpLGw9ZS56b29tVW5pdHMqMjU2KTooaT1NYXRoLnJvdW5kKGUubWFwWm9vbSksZS56b29tVW5pdHM9TWF0aC5wb3coMiwyLWkpKi4zNTE1NjI1LGw9MjU2KmUuem9vbVVuaXRzKTtjb25zdCBJPWUuY2VudGVyLGg9e3g6SVswXSx5OklbMV19O2xldCB1LG8seCxULE0sdztjb25zdCBkPWUuem9vbVVuaXRzLHM9ZC9lLnJlc29sdXRpb247bGV0IG49dFswXS9zLHo9dFsxXS9zO2lmKGUudGlsZVR5cGU9PT0iYmQwOSIpe3U9TWF0aC5jZWlsKGgueC9sKSxvPU1hdGguY2VpbChoLnkvbCk7Y29uc3QgbT1bdSxvLChoLngtdSpsKS9sKmUudGlsZVNpemUsKGgueS1vKmwpL2wqZS50aWxlU2l6ZV07eD1tWzBdLU1hdGguY2VpbCgobi8yLW1bMl0pL2UudGlsZVNpemUpLFQ9bVsxXS1NYXRoLmNlaWwoKHovMi1tWzNdKS9lLnRpbGVTaXplKSxNPW1bMF0rTWF0aC5jZWlsKChuLzIrbVsyXSkvZS50aWxlU2l6ZSksdz1tWzFdK01hdGguY2VpbCgoei8yK21bM10pL2UudGlsZVNpemUpfWVsc2UgZS50aWxlVHlwZT09PSJXR1M4NCI/KG49dFswXSx6PXRbMV0sdT1NYXRoLmNlaWwoTWF0aC5yb3VuZCgoaC54KzIwMDM3NTA4MzRlLTIpL2wpKSxvPU1hdGguY2VpbChNYXRoLnJvdW5kKCgyMDAzNzUwODM0ZS0yLWgueSkvbCkpLHg9dS1NYXRoLmNlaWwobi8yL2UudGlsZVNpemUpLE09dStNYXRoLmNlaWwobi8yL2UudGlsZVNpemUpLFQ9by1NYXRoLmNlaWwoei8yL2UudGlsZVNpemUpLHc9bytNYXRoLmNlaWwoei8yL2UudGlsZVNpemUpKToobj10WzBdLHo9dFsxXSx1PU1hdGguY2VpbChNYXRoLnJvdW5kKChoLngrMTgwKS9sKSksbz1NYXRoLmNlaWwoTWF0aC5yb3VuZCgoOTAtaC55KS9sKSkseD11LU1hdGguY2VpbChuLzIvZS50aWxlU2l6ZSksTT11K01hdGguY2VpbChuLzIvZS50aWxlU2l6ZSksVD1vLU1hdGguY2VpbCh6LzIvZS50aWxlU2l6ZSksdz1vK01hdGguY2VpbCh6LzIvZS50aWxlU2l6ZSkpO2NvbnN0IEM9W107Zm9yKGxldCBtPXg7bTw9TTttKyspZm9yKGxldCBTPVQ7Uzw9dztTKyspQy5wdXNoKFttLFNdKTtrPUMubGVuZ3RoO2NvbnN0IFA9ZS5kZXZpY2VQaXhlbFJhdGlvO2cudHJhbnNsYXRlKHRbMF0qUCooMS1zKS8yLHRbMV0qUCooMS1zKS8yKSxnLnNjYWxlKGUucmF0aW8qcyxlLnJhdGlvKnMpLHBvc3RNZXNzYWdlKHt0aWxlc09yZGVyOkMsem9vbVVuaXRzOmQsbXNnOiJ1cGRhdGVDYW52YXMifSl9ZnVuY3Rpb24gWChlKXtyZXR1cm5bImJ1dHQiLCJzcXVhcmUiLCJyb3VuZCJdW2VdfWZ1bmN0aW9uIFkoZSl7cmV0dXJuWyJtaXRlciIsImJldmVsIiwicm91bmQiXVtlXX19KSgpOwo=",H$=typeof window!="undefined"&&window.Blob&&new Blob([atob(j$)],{type:"text/javascript;charset=utf-8"});function kRe(){const t=H$&&(window.URL||window.webkitURL).createObjectURL(H$);try{return t?new Worker(t):new Worker("data:application/javascript;base64,"+j$)}finally{t&&(window.URL||window.webkitURL).revokeObjectURL(t)}}function pi(t){t=t||{},this.options=t,this.analysis=t.analysis==="official"?t.analysis:"private",this.needWorker=t.needWorker!==void 0?t.needWorker:!1,t.colors=t.colors||["rgba(0,192,73,0.99609375)","rgba(242,48,48,0.99609375)","rgba(255,159,25,0.99609375)"];const e=t.colors;this.map=t.map,this.canvas=null,this.tileType=t.tileType;const i=this.map.getSize(),n=this.map.getView().calculateExtent(i),r=new Op({extent:n,source:new dp({canvasFunction:this.canvasFunction.bind(this),ratio:1,projection:"EPSG:4326"})});this.layer=r,t.map.on(["precompose"],s=>{const o=s.target.getSize(),l=s.target.getView().calculateExtent(o);r.setExtent(l)},!1),this.parseColors(e),this.tileSize=256;const a=1;this.ratio=a,this.drawTogether=!1,this.cache={},this._loadCount={},t.getTileUrl&&(this.getTileUrl=t.getTileUrl),t.needWorker&&(this.worker=new kRe,this.worker.onmessage=s=>{if(s.data.msg==="initTile")this.canvaslayer.canvas.getContext("2d").drawImage(s.data.imageBitmap,0,0),window.BMap&&(window.BMap=null);else if(s.data.msg==="updateCanvas"){const o=s.data.tilesOrder;this.zoomUnits=s.data.zoomUnits,this.tilesOrder=s.data.tilesOrder,this._loadCount={},this.canvaslayer.canvas.getContext("2d").clearRect(0,0,this.canvaslayer.canvas.width,this.canvaslayer.canvas.height);for(let l=0;l<o.length;l++){const h=o[l][0],u=o[l][1],c=Math.round(t.map.getView().getZoom());this._loadCount[h+"_"+u+"_"+c]=!1,this.showTile(h,u,c)}}},this.worker.onerror=s=>{})}pi.prototype.canvasFunction=function(t,e,i,n,r){let a=this.canvas;return a||(a=document.createElement("canvas"),this.canvas=a),a.width=n[0],a.height=n[1],this.update({resolution:e,canvas:a}),a},pi.prototype.parseColors=function(t){this.arrFeatureStyles=[[2,t[0]||"rgba(79,210,125,1)",2,2,0,[],0,0],[2,t[0]||"rgba(79,210,125,1)",3,2,0,[],0,0],[2,t[0]||"rgba(79,210,125,1)",3,2,0,[],0,0],[2,t[0]||"rgba(79,210,125,1)",5,2,0,[],0,0],[2,t[0]||"rgba(79,210,125,1)",6,2,0,[],0,0],[2,t[2]||"rgba(255,208,69,1)",2,2,0,[],0,0],[2,t[2]||"rgba(255,208,69,1)",3,2,0,[],0,0],[2,t[2]||"rgba(255,208,69,1)",3,2,0,[],0,0],[2,t[2]||"rgba(255,208,69,1)",5,2,0,[],0,0],[2,t[2]||"rgba(255,208,69,1)",6,2,0,[],0,0],[2,t[1]||"rgba(232,14,14,1)",2,2,0,[],0,0],[2,t[1]||"rgba(232,14,14,1)",3,2,0,[],0,0],[2,t[1]||"rgba(232,14,14,1)",3,2,0,[],0,0],[2,t[1]||"rgba(232,14,14,1)",5,2,0,[],0,0],[2,t[1]||"rgba(232,14,14,1)",6,2,0,[],0,0],[2,t[3]||"rgba(181,0,0,1)",2,2,0,[],0,0],[2,t[3]||"rgba(181,0,0,1)",3,2,0,[],0,0],[2,t[3]||"rgba(181,0,0,1)",3,2,0,[],0,0],[2,t[3]||"rgba(181,0,0,1)",5,2,0,[],0,0],[2,t[3]||"rgba(181,0,0,1)",6,2,0,[],0,0],[2,"rgba(255,255,255,1)",4,0,0,[],0,0],[2,"rgba(255,255,255,1)",5.5,0,0,[],0,0],[2,"rgba(255,255,255,1)",7,0,0,[],0,0],[2,"rgba(255,255,255,1)",8.5,0,0,[],0,0],[2,"rgba(255,255,255,1)",10,0,0,[],0,0]]},pi.prototype.setColors=function(t){this.parseColors(t)},pi.prototype.initialize=function(t){const e=this;this._initialize||(this.canvaslayer=new CanvasLayer({map:t,update:function(){e.update(this)}}),this._initialize=!0)},pi.prototype.clearCache=function(t){this.cache={}},pi.prototype.setMap=function(t){t?(this.map=t,this._initialize?this.canvaslayer.show():this.initialize(t)):this.canvaslayer.hide()},pi.prototype.draw=function(t){t=t||{},t.clearCache&&this.clearCache(),t.drawTogether&&(this.drawTogether=!0),this.update()},pi.prototype.clear=function(){const e=this.canvaslayer.canvas.getContext("2d"),i=e.canvas.width,n=e.canvas.height;e.canvas.width=i,e.canvas.height=n},pi.prototype.update=function(t){const e=this.map;t?this.canvaslayer=t:t=this.canvaslayer;const n=t.canvas.getContext("2d");this.drawTogether||this.clear();const r=[];if(this.needWorker){const a=this.map.getSize(),s={mapZoom:Math.round(e.getView().getZoom()),tileType:this.tileType,zoomUnits:this.zoomUnits,center:this.map.getView().getCenter(),resolution:this.canvaslayer.resolution,tileSize:this.tileSize,size:a,devicePixelRatio:this.ratio,ratio:this.ratio};this.worker.postMessage({msg:"updateCanvas",width:a[0],height:a[1],updateInfo:s})}else{const a=this.map;let s,o;this.tileType==="bd09"?(s=Math.round(a.getView().getZoom()+1),this.zoomUnits=Math.pow(2,18-s),o=this.zoomUnits*256):this.tileType==="WGS84"?(s=Math.round(a.getView().getZoom()),this.zoomUnits=2*Math.PI*6378137/256/Math.pow(2,s),o=this.zoomUnits*256):(s=Math.round(a.getView().getZoom()),this.zoomUnits=Math.pow(2,2-s)*.3515625,o=256*this.zoomUnits);const l=a.getView().getCenter(),h={x:l[0],y:l[1]};let u,c,f,g,d,v;const p=this.zoomUnits/this.canvaslayer.resolution;let m=a.getSize()[0]/p,y=a.getSize()[1]/p;if(this.tileType==="bd09"){u=Math.ceil(h.x/o),c=Math.ceil(h.y/o);const _=[u,c,(h.x-u*o)/o*this.tileSize,(h.y-c*o)/o*this.tileSize];f=_[0]-Math.ceil((m/2-_[2])/this.tileSize),g=_[1]-Math.ceil((y/2-_[3])/this.tileSize),d=_[0]+Math.ceil((m/2+_[2])/this.tileSize),v=_[1]+Math.ceil((y/2+_[3])/this.tileSize)}else this.tileType==="WGS84"?(m=a.getSize()[0],y=a.getSize()[1],u=Math.ceil(Math.round((h.x+2003750834e-2)/o)),c=Math.ceil(Math.round((2003750834e-2-h.y)/o)),f=u-Math.ceil(m/2/this.tileSize),d=u+Math.ceil(m/2/this.tileSize),g=c-Math.ceil(y/2/this.tileSize),v=c+Math.ceil(y/2/this.tileSize)):(m=a.getSize()[0],y=a.getSize()[1],u=Math.ceil(Math.round((h.x+180)/o)),c=Math.ceil(Math.round((90-h.y)/o)),f=u-Math.ceil(m/2/this.tileSize),d=u+Math.ceil(m/2/this.tileSize),g=c-Math.ceil(y/2/this.tileSize),v=c+Math.ceil(y/2/this.tileSize));for(let _=f;_<=d;_++)for(let C=g;C<=v;C++)r.push([_,C]);this.tilesOrder=r,this._loadCount={};const I=a.getSize();n.translate(I[0]*devicePixelRatio*(1-p)/2,I[1]*devicePixelRatio*(1-p)/2),n.scale(this.ratio*p,this.ratio*p);for(let _=0;_<r.length;_++){const C=r[_][0],x=r[_][1],w=s;this._loadCount[C+"_"+x+"_"+w]=!1,this.showTile(C,x,w)}}},pi.prototype.lngLatToMerc=function(t){if(t==null)return{x:0,y:0};if(t.lng>180||t.lng<-180||t.lat>90||t.lat<-90)return{x:0,y:0};if(this.tileType==="WGS84"){const e={};e.lng=t.lng*Math.PI/180*6378137;const n=t.lat*Math.PI/180;return e.lat=6378137/2*Math.log((1+Math.sin(n))/(1-Math.sin(n))),{x:Number(e.lng.toFixed(2)),y:Number(e.lat.toFixed(2))}}},pi.prototype.isAllLoaded=function(){let t=!0;for(const e in this._loadCount)if(!this._loadCount[e]){t=!1;break}return t},pi.prototype.showTile=function(t,e,i){this._parseDataAndDraw(t,e,i)},pi.prototype.drawCurrentData=function(){this.clear();let t;this.tileType==="bd09"?t=Math.round(this.map.getZoom()+1):this.tileType==="WGS84"?t=Math.round(this.map.getZoom()):t=Math.round(this.map.getView().getZoom());for(let e=0;e<this.tilesOrder.length;e++){const i=this.tilesOrder[e][0],n=this.tilesOrder[e][1],r=this.cache[this.getCacheKey(i,n,t)];r&&this._drawFeatures(r,i,n,t)}this.drawTogether=!1},pi.prototype.getCacheKey=function(t,e,i){return t+"_"+e+"_"+i},pi.prototype.getTileKey=function(t,e){return"BMAP_CUSTOM_LAYER_1_"+(t.style||"default")+"_"+t.col+"_"+t.row+"_"+t.zoom+"_"+t.zoom},pi.prototype._parseDataAndDraw=function(t,e,i){const n=this,r=this.getCacheKey(t,e,i);let s="_cbk"+(Math.random()*1e5).toFixed(0);window.BMap||(window.BMap={});let o="";const l=this.analysis;if(l==="private")o=this.getTileUrl(t,e,i,"BMap."+s),window.BMap[s]=h;else{const u="cbk"+this.getTileKey({col:t,row:e,zoom:i});o=this.getTileUrl(t,e,i,"BMap."+u),s=u,window.BMap[s]=h}function h(u){n._loadCount[t+"_"+e+"_"+i]=!0;const c=l==="private"?u.result&&u.result.trafficData:u.content&&u.content.tf;c?n.cache[r]={traffic:c,precision:u.precision||1}:n.cache[r]=null,n.drawTogether?n.isAllLoaded()&&n.drawCurrentData():n._drawFeatures(n.cache[r],t,e,i),delete window.BMap[s]}n.cache[r]!==void 0&&n.cache[r]!==null?(n._loadCount[t+"_"+e+"_"+i]=!0,n.drawTogether?n.isAllLoaded()&&n.drawCurrentData():n._drawFeatures(n.cache[r],t,e,i)):typeof window.BMap[s]=="function"&&this.request(o)},pi.prototype.getTileUrl=function(t,e,i,n){return(this.options.trafficURL||"http://its.map.baidu.com:8002/traffic/?qt=vtraffic")+"&x="+t+"&y="+e+"&z="+i+"&fn="+n+(this.analysis==="private"?"&t="+new Date().getTime():"")},pi.prototype._drawFeatures=function(t,e,i,n){if(this.needWorker){const r=this.map.getSize(),a={center:this.map.getView().getCenter(),zoomUnits:this.zoomUnits,tileType:this.tileType,tileSize:this.tileSize,size:r,arrFeatureStyles:this.arrFeatureStyles};this.worker.postMessage({msg:"initTile",json:t,col:e,row:i,width:r[0],height:r[1],traffic:a,zoom:n})}else{const r=this.map,s=this.canvaslayer.canvas.getContext("2d"),o=this.getLineCap,l=this.getLineJoin;let h=10;const u=r.getView().getCenter(),c=this.zoomUnits,f=-u[0]/c,g=u[1]/c,d=[f,g];let v=null,A=null;if(this.tileType==="bd09")v=e*this.tileSize+d[0],A=(-1-i)*this.tileSize+d[1],v=r.getSize()[0]/2+v,A=r.getSize()[1]/2+A;else if(this.tileType==="WGS84"){const p=Math.PI*6378137;v=(e*this.tileSize*c-p)/c+d[0],A=d[1]-(p-i*this.tileSize*c)/c,v=r.getSize()[0]/2+v,A=r.getSize()[1]/2+A}else v=(e*this.tileSize*c-180)/c+d[0],A=d[1]-(90-i*this.tileSize*c)/c,v=r.getSize()[0]/2+v,A=r.getSize()[1]/2+A;if(s.save(),s.translate(v,A),t&&t.traffic){const p=t.precision||1;h=h*p;const m=t.traffic;for(let y=0,I=m.length;y<I;y++){const _=m[y],C=_[1],x=this.arrFeatureStyles[_[3]];let w=C[0]/h,E=C[1]/h;s.beginPath(),s.moveTo(w,E);for(let S=2,b=C.length;S<b;S+=2)w+=C[S]/h,E+=C[S+1]/h,s.lineTo(w,E);s.strokeStyle=x[1],_[3]>=15&&_[3]<=19&&(s.strokeStyle="rgba(186, 0, 0, 1)"),s.lineWidth=x[2],s.lineCap=o(x[3]),s.lineJoin=l(x[4]),s.stroke()}}s.restore()}},pi.prototype.request=function(t,e){if(e)if(this.analysis==="private"){const n=(Math.random()*1e5).toFixed(0),r="_cbk"+n;window.BMap._rd[r]=function(a){e&&e(a),delete window.BMap._rd[r]},t+="&callback=BMap._rd._cbk"+n}else{const n=/(\w+|[\u4e00-\u9fa5]+)=(\w+|[\u4e00-\u9fa5]+)/gi,r={};t.replace(n,(s,o,l)=>{r[o]=l});const a=r.fn;window.BMap[a]=function(s){e&&e(s),delete window.BMap[a]},t+="&callback=BMap."+a}let i=document.createElement("script");i.type="text/javascript",i.charset="utf-8",i.src=t,i.addEventListener?i.addEventListener("load",function(n){const r=n.target;r.parentNode.removeChild(r)},!1):i.attachEvent&&i.attachEvent("onreadystatechange",function(n){const r=window.event.srcElement;r&&(r.readyState==="loaded"||r.readyState==="complete")&&r.parentNode.removeChild(r)}),setTimeout(function(){document.getElementsByTagName("head")[0].appendChild(i),i=null},1)},pi.prototype.getRGBA=function(t){t=t>>>0;const e=t>>24&255,i=t>>16&255,n=t>>8&255,r=(t&255)/256;return"rgba("+e+","+i+","+n+","+r+")"},pi.prototype.getLineCap=function(t){return["butt","square","round"][t]},pi.prototype.getLineJoin=function(t){return["miter","bevel","round"][t]},pi.prototype.workerTerminate=function(){this.worker&&this.worker.terminate()};const FRe={name:"v-traffic",render(){return null},extends:wr,inject:["VMap"],props:{layerId:{type:String,default(){return`traffic-layer-${$e()}`}},timeout:{type:Number},url:{type:String,require:!0},tileType:{type:String},clearCache:{type:Boolean,default:!0},colors:{type:Array,default(){return["rgba(0,192,73,0.99609375)","rgba(242,48,48,0.99609375)","rgba(255,159,25,0.99609375)"]}},needWorker:{type:Boolean,default:!1}},data(){return{timer:null,trafficLayer:null,eventRender:[],eventList:["singleclick","pointermove"]}},computed:{map(){return this.VMap.map}},watch:{visible:{handler(t){this.trafficLayer.layer.setVisible(t)},immediate:!1},zIndex:{handler(t){this.trafficLayer.layer.setZIndex(t)},immediate:!1},maxZoom:{handler(t){this.trafficLayer.layer.setMaxZoom(t)},immediate:!1},minZoom:{handler(t){this.trafficLayer.layer.setMinZoom(t)},immediate:!1},extent:{handler(t){this.trafficLayer.layer.setExtent(t)},immediate:!1,deep:!0},colors:{handler(t){this.trafficLayer.setColors(t)},immediate:!1,deep:!0}},methods:{init(){const t={map:this.map,trafficURL:this.url,tileType:this.tileType,colors:this.colors,needWorker:this.needWorker};this.trafficLayer=typeof BDTrafficLayer=="undefined"?new pi(t):new BDTrafficLayer(t),this.trafficLayer.layer.set("id",this.layerId),this.trafficLayer.layer.set("type","traffic"),this.trafficLayer.layer.set("users",!0),this.zIndex&&this.trafficLayer.layer.setZIndex(this.zIndex),this.trafficLayer.layer.setVisible(this.visible),this.map.addLayer(this.trafficLayer.layer),this.timeout&&(this.timer=setInterval(()=>{this.trafficLayer.layer&&this.trafficLayer.layer.getVisible()&&this.trafficLayer.draw({clearCache:this.clearCache})},this.timeout)),this.eventList.forEach(e=>{this.eventRender.push(this.map.on(e,i=>this.eventHandler(e,i)))})},getFeatureAtPixel(t){return this.map.forEachFeatureAtPixel(t,(e,i)=>{var n,r;if((i==null?void 0:i.get("id"))===((r=(n=this.trafficLayer)==null?void 0:n.layer)==null?void 0:r.get("id")))return e},{})},eventHandler(t,e){const{pixel:i}=e,n=this.getFeatureAtPixel(i);this.$emit(t,e,n)},dispose(){this.eventRender.forEach(t=>{Lr(t)}),this.timer&&(clearInterval(this.timer),this.timer=null),this.trafficLayer&&(this.trafficLayer.layer.getSource().clear(),this.map.removeLayer(this.trafficLayer.layer),this.trafficLayer.workerTerminate())}},mounted(){this.init()},update(){this.trafficLayer&&this.dispose(),this.init()},beforeDestroy(){this.dispose()}};let QRe,zRe;const $$={};var W$=Ji(FRe,QRe,zRe,!1,ORe,null,null,null);function ORe(t){for(let e in $$)this[e]=$$[e]}W$.options.__file="src/components/layers/traffic/index.vue";const gA=function(){return W$.exports}();gA.install=function(t){t.component(gA.name,gA)};const kT="http://www.w3.org/2001/XMLSchema-instance";function ct(t,e){return K$().createElementNS(t,e)}function dA(t,e){return Y$(t,e,[]).join("")}function Y$(t,e,i){if(t.nodeType==Node.CDATA_SECTION_NODE||t.nodeType==Node.TEXT_NODE)e?i.push(String(t.nodeValue).replace(/(\r\n|\r|\n)/g,"")):i.push(t.nodeValue);else{let n;for(n=t.firstChild;n;n=n.nextSibling)Y$(n,e,i)}return i}function Uc(t){return"documentElement"in t}function NRe(t,e,i){return t.getAttributeNS(e,i)||""}function qc(t){return new DOMParser().parseFromString(t,"application/xml")}function Z$(t,e){return function(i,n){const r=t.call(e!=null?e:this,i,n);if(r!==void 0){const a=n[n.length-1];gn(a,r)}}}function st(t,e){return function(i,n){const r=t.call(e!=null?e:this,i,n);r!==void 0&&n[n.length-1].push(r)}}function Ze(t,e){return function(i,n){const r=t.call(e!=null?e:this,i,n);r!==void 0&&(n[n.length-1]=r)}}function Ca(t,e,i){return function(n,r){const a=t.call(i!=null?i:this,n,r);if(a!==void 0){const s=r[r.length-1],o=e!==void 0?e:n.localName;s[o]=a}}}function pe(t,e){return function(i,n,r){t.call(e!=null?e:this,i,n,r),r[r.length-1].node.appendChild(i)}}function Tr(t,e){return function(i,n,r){const s=n[n.length-1].node;let o=t;o===void 0&&(o=r);const l=e!==void 0?e:s.namespaceURI;return ct(l,o)}}const X$=Tr();function lh(t,e,i,n){let r;for(r=e.firstElementChild;r;r=r.nextElementSibling){const a=t[r.namespaceURI];if(a!==void 0){const s=a[r.localName];s!==void 0&&s.call(n,r,i)}}}function jt(t,e,i,n,r){return n.push(t),lh(e,i,n,r),n.pop()}function GRe(t,e,i,n,r,a){const s=(r!==void 0?r:i).length;let o,l;for(let h=0;h<s;++h)o=i[h],o!==void 0&&(l=e.call(a,o,n,r!==void 0?r[h]:void 0),l!==void 0&&t[l.namespaceURI][l.localName].call(a,l,o,n))}function Di(t,e,i,n,r,a,s){return r.push(t),GRe(e,i,n,r,a,s),r.pop()}let FT;function URe(){return FT===void 0&&typeof XMLSerializer!="undefined"&&(FT=new XMLSerializer),FT}let QT;function K$(){return QT===void 0&&typeof document!="undefined"&&(QT=document.implementation.createDocument("","",null)),QT}class qRe extends vk{constructor(){super(),this.xmlSerializer_=URe()}getType(){return"xml"}readFeature(e,i){if(!e)return null;if(typeof e=="string"){const n=qc(e);return this.readFeatureFromDocument(n,i)}return Uc(e)?this.readFeatureFromDocument(e,i):this.readFeatureFromNode(e,i)}readFeatureFromDocument(e,i){const n=this.readFeaturesFromDocument(e,i);return n.length>0?n[0]:null}readFeatureFromNode(e,i){return null}readFeatures(e,i){if(!e)return[];if(typeof e=="string"){const n=qc(e);return this.readFeaturesFromDocument(n,i)}return Uc(e)?this.readFeaturesFromDocument(e,i):this.readFeaturesFromNode(e,i)}readFeaturesFromDocument(e,i){const n=[];for(let r=e.firstChild;r;r=r.nextSibling)r.nodeType==Node.ELEMENT_NODE&&gn(n,this.readFeaturesFromNode(r,i));return n}readFeaturesFromNode(e,i){return Ke()}readGeometry(e,i){if(!e)return null;if(typeof e=="string"){const n=qc(e);return this.readGeometryFromDocument(n,i)}return Uc(e)?this.readGeometryFromDocument(e,i):this.readGeometryFromNode(e,i)}readGeometryFromDocument(e,i){return null}readGeometryFromNode(e,i){return null}readProjection(e){if(!e)return null;if(typeof e=="string"){const i=qc(e);return this.readProjectionFromDocument(i)}return Uc(e)?this.readProjectionFromDocument(e):this.readProjectionFromNode(e)}readProjectionFromDocument(e){return this.dataProjection}readProjectionFromNode(e){return this.dataProjection}writeFeature(e,i){const n=this.writeFeatureNode(e,i);return this.xmlSerializer_.serializeToString(n)}writeFeatureNode(e,i){return null}writeFeatures(e,i){const n=this.writeFeaturesNode(e,i);return this.xmlSerializer_.serializeToString(n)}writeFeaturesNode(e,i){return null}writeGeometry(e,i){const n=this.writeGeometryNode(e,i);return this.xmlSerializer_.serializeToString(n)}writeGeometryNode(e,i){return null}}const J$=qRe,Xs="http://www.opengis.net/gml",VRe=/^\s*$/;class Li extends J${constructor(e){super(),e=e||{},this.featureType=e.featureType,this.featureNS=e.featureNS,this.srsName=e.srsName,this.schemaLocation="",this.FEATURE_COLLECTION_PARSERS={},this.FEATURE_COLLECTION_PARSERS[this.namespace]={featureMember:st(this.readFeaturesInternal),featureMembers:Ze(this.readFeaturesInternal)},this.supportedMediaTypes=["application/gml+xml"]}readFeaturesInternal(e,i){const n=e.localName;let r=null;if(n=="FeatureCollection")r=jt([],this.FEATURE_COLLECTION_PARSERS,e,i,this);else if(n=="featureMembers"||n=="featureMember"||n=="member"){const a=i[0];let s=a.featureType,o=a.featureNS;const l="p",h="p0";if(!s&&e.childNodes){s=[],o={};for(let f=0,g=e.childNodes.length;f<g;++f){const d=e.childNodes[f];if(d.nodeType===1){const v=d.nodeName.split(":").pop();if(!s.includes(v)){let A="",p=0;const m=d.namespaceURI;for(const y in o){if(o[y]===m){A=y;break}++p}A||(A=l+p,o[A]=m),s.push(A+":"+v)}}}n!="featureMember"&&(a.featureType=s,a.featureNS=o)}if(typeof o=="string"){const f=o;o={},o[h]=f}const u={},c=Array.isArray(s)?s:[s];for(const f in o){const g={};for(let d=0,v=c.length;d<v;++d)(c[d].includes(":")?c[d].split(":")[0]:h)===f&&(g[c[d].split(":").pop()]=n=="featureMembers"?st(this.readFeatureElement,this):Ze(this.readFeatureElement,this));u[o[f]]=g}n=="featureMember"||n=="member"?r=jt(void 0,u,e,i):r=jt([],u,e,i)}return r===null&&(r=[]),r}readGeometryOrExtent(e,i){const n=i[0];return n.srsName=e.firstElementChild.getAttribute("srsName"),n.srsDimension=e.firstElementChild.getAttribute("srsDimension"),jt(null,this.GEOMETRY_PARSERS,e,i,this)}readExtentElement(e,i){const n=i[0],r=this.readGeometryOrExtent(e,i);return r?fx(r,n):void 0}readGeometryElement(e,i){const n=i[0],r=this.readGeometryOrExtent(e,i);return r?hu(r,!1,n):void 0}readFeatureElementInternal(e,i,n){let r;const a={};for(let l=e.firstElementChild;l;l=l.nextElementSibling){let h;const u=l.localName;l.childNodes.length===0||l.childNodes.length===1&&(l.firstChild.nodeType===3||l.firstChild.nodeType===4)?(h=dA(l,!1),VRe.test(h)&&(h=void 0)):(n&&(h=u==="boundedBy"?this.readExtentElement(l,i):this.readGeometryElement(l,i)),h?u!=="boundedBy"&&(r=u):h=this.readFeatureElementInternal(l,i,!1));const c=l.attributes.length;if(c>0&&!(h instanceof s_)){h={_content_:h};for(let f=0;f<c;f++){const g=l.attributes[f].name;h[g]=l.attributes[f].value}}a[u]?(a[u]instanceof Array||(a[u]=[a[u]]),a[u].push(h)):a[u]=h}if(!n)return a;const s=new Wi(a);r&&s.setGeometryName(r);const o=e.getAttribute("fid")||NRe(e,this.namespace,"id");return o&&s.setId(o),s}readFeatureElement(e,i){return this.readFeatureElementInternal(e,i,!0)}readPoint(e,i){const n=this.readFlatCoordinatesFromNode(e,i);if(n)return new ii(n,"XYZ")}readMultiPoint(e,i){const n=jt([],this.MULTIPOINT_PARSERS,e,i,this);if(n)return new Nf(n)}readMultiLineString(e,i){const n=jt([],this.MULTILINESTRING_PARSERS,e,i,this);if(n)return new Of(n)}readMultiPolygon(e,i){const n=jt([],this.MULTIPOLYGON_PARSERS,e,i,this);if(n)return new qh(n)}pointMemberParser(e,i){lh(this.POINTMEMBER_PARSERS,e,i,this)}lineStringMemberParser(e,i){lh(this.LINESTRINGMEMBER_PARSERS,e,i,this)}polygonMemberParser(e,i){lh(this.POLYGONMEMBER_PARSERS,e,i,this)}readLineString(e,i){const n=this.readFlatCoordinatesFromNode(e,i);if(n)return new Yt(n,"XYZ")}readFlatLinearRing(e,i){const n=jt(null,this.GEOMETRY_FLAT_COORDINATES_PARSERS,e,i,this);if(n)return n}readLinearRing(e,i){const n=this.readFlatCoordinatesFromNode(e,i);if(n)return new g_(n,"XYZ")}readPolygon(e,i){const n=jt([null],this.FLAT_LINEAR_RINGS_PARSERS,e,i,this);if(n&&n[0]){const r=n[0],a=[r.length];let s,o;for(s=1,o=n.length;s<o;++s)gn(r,n[s]),a.push(r.length);return new Kn(r,"XYZ",a)}}readFlatCoordinatesFromNode(e,i){return jt(null,this.GEOMETRY_FLAT_COORDINATES_PARSERS,e,i,this)}readGeometryFromNode(e,i){const n=this.readGeometryElement(e,[this.getReadOptions(e,i||{})]);return n||null}readFeaturesFromNode(e,i){const n={featureType:this.featureType,featureNS:this.featureNS};return n&&Object.assign(n,this.getReadOptions(e,i)),this.readFeaturesInternal(e,[n])||[]}readProjectionFromNode(e){return xt(this.srsName?this.srsName:e.firstElementChild.getAttribute("srsName"))}}Li.prototype.namespace=Xs,Li.prototype.FLAT_LINEAR_RINGS_PARSERS={"http://www.opengis.net/gml":{}},Li.prototype.GEOMETRY_FLAT_COORDINATES_PARSERS={"http://www.opengis.net/gml":{}},Li.prototype.GEOMETRY_PARSERS={"http://www.opengis.net/gml":{}},Li.prototype.MULTIPOINT_PARSERS={"http://www.opengis.net/gml":{pointMember:st(Li.prototype.pointMemberParser),pointMembers:st(Li.prototype.pointMemberParser)}},Li.prototype.MULTILINESTRING_PARSERS={"http://www.opengis.net/gml":{lineStringMember:st(Li.prototype.lineStringMemberParser),lineStringMembers:st(Li.prototype.lineStringMemberParser)}},Li.prototype.MULTIPOLYGON_PARSERS={"http://www.opengis.net/gml":{polygonMember:st(Li.prototype.polygonMemberParser),polygonMembers:st(Li.prototype.polygonMemberParser)}},Li.prototype.POINTMEMBER_PARSERS={"http://www.opengis.net/gml":{Point:st(Li.prototype.readFlatCoordinatesFromNode)}},Li.prototype.LINESTRINGMEMBER_PARSERS={"http://www.opengis.net/gml":{LineString:st(Li.prototype.readLineString)}},Li.prototype.POLYGONMEMBER_PARSERS={"http://www.opengis.net/gml":{Polygon:st(Li.prototype.readPolygon)}},Li.prototype.RING_PARSERS={"http://www.opengis.net/gml":{LinearRing:Ze(Li.prototype.readFlatLinearRing)}};const pt=Li;function Vc(t){const e=dA(t,!1);return jc(e)}function jc(t){const e=/^\s*(\d+)\s*$/.exec(t);if(e)return parseInt(e[1],10)}function ji(t,e){t.appendChild(K$().createTextNode(e))}const jRe=Xs+" http://schemas.opengis.net/gml/2.1.2/feature.xsd",HRe={MultiLineString:"lineStringMember",MultiCurve:"curveMember",MultiPolygon:"polygonMember",MultiSurface:"surfaceMember"};class Tt extends pt{constructor(e){e=e||{},super(e),this.FEATURE_COLLECTION_PARSERS[Xs].featureMember=st(this.readFeaturesInternal),this.schemaLocation=e.schemaLocation?e.schemaLocation:jRe}readFlatCoordinates(e,i){const n=dA(e,!1).replace(/^\s*|\s*$/g,""),a=i[0].srsName;let s="enu";if(a){const h=xt(a);h&&(s=h.getAxisOrientation())}const o=n.trim().split(/\s+/),l=[];for(let h=0,u=o.length;h<u;h++){const c=o[h].split(/,+/),f=parseFloat(c[0]),g=parseFloat(c[1]),d=c.length===3?parseFloat(c[2]):0;s.startsWith("en")?l.push(f,g,d):l.push(g,f,d)}return l}readBox(e,i){const n=jt([null],this.BOX_PARSERS_,e,i,this);return kr(n[1][0],n[1][1],n[1][3],n[1][4])}innerBoundaryIsParser(e,i){const n=jt(void 0,this.RING_PARSERS,e,i,this);n&&i[i.length-1].push(n)}outerBoundaryIsParser(e,i){const n=jt(void 0,this.RING_PARSERS,e,i,this);if(n){const r=i[i.length-1];r[0]=n}}GEOMETRY_NODE_FACTORY_(e,i,n){const r=i[i.length-1],a=r.multiSurface,s=r.surface,o=r.multiCurve;return Array.isArray(e)?n="Envelope":(n=e.getType(),n==="MultiPolygon"&&a===!0?n="MultiSurface":n==="Polygon"&&s===!0?n="Surface":n==="MultiLineString"&&o===!0&&(n="MultiCurve")),ct("http://www.opengis.net/gml",n)}writeFeatureElement(e,i,n){const r=i.getId();r&&e.setAttribute("fid",r);const a=n[n.length-1],s=a.featureNS,o=i.getGeometryName();a.serializers||(a.serializers={},a.serializers[s]={});const l=[],h=[];if(i.hasProperties()){const c=i.getProperties();for(const f in c){const g=c[f];g!=null&&(l.push(f),h.push(g),f==o||typeof g.getSimplifiedGeometry=="function"?f in a.serializers[s]||(a.serializers[s][f]=pe(this.writeGeometryElement,this)):f in a.serializers[s]||(a.serializers[s][f]=pe(ji)))}}const u=Object.assign({},a);u.node=e,Di(u,a.serializers,Tr(void 0,s),h,n,l)}writeCurveOrLineString(e,i,n){const a=n[n.length-1].srsName;if(e.nodeName!=="LineStringSegment"&&a&&e.setAttribute("srsName",a),e.nodeName==="LineString"||e.nodeName==="LineStringSegment"){const s=this.createCoordinatesNode_(e.namespaceURI);e.appendChild(s),this.writeCoordinates_(s,i,n)}else if(e.nodeName==="Curve"){const s=ct(e.namespaceURI,"segments");e.appendChild(s),this.writeCurveSegments_(s,i,n)}}writeLineStringOrCurveMember(e,i,n){const r=this.GEOMETRY_NODE_FACTORY_(i,n);r&&(e.appendChild(r),this.writeCurveOrLineString(r,i,n))}writeMultiCurveOrLineString(e,i,n){const r=n[n.length-1],a=r.hasZ,s=r.srsName,o=r.curve;s&&e.setAttribute("srsName",s);const l=i.getLineStrings();Di({node:e,hasZ:a,srsName:s,curve:o},this.LINESTRINGORCURVEMEMBER_SERIALIZERS,this.MULTIGEOMETRY_MEMBER_NODE_FACTORY_,l,n,void 0,this)}writeGeometryElement(e,i,n){const r=n[n.length-1],a=Object.assign({},r);a.node=e;let s;Array.isArray(i)?s=fx(i,r):s=hu(i,!0,r),Di(a,this.GEOMETRY_SERIALIZERS,this.GEOMETRY_NODE_FACTORY_,[s],n,void 0,this)}createCoordinatesNode_(e){const i=ct(e,"coordinates");return i.setAttribute("decimal","."),i.setAttribute("cs",","),i.setAttribute("ts"," "),i}writeCoordinates_(e,i,n){const r=n[n.length-1],a=r.hasZ,s=r.srsName,o=i.getCoordinates(),l=o.length,h=new Array(l);for(let u=0;u<l;++u){const c=o[u];h[u]=this.getCoords_(c,s,a)}ji(e,h.join(" "))}writeCurveSegments_(e,i,n){const r=ct(e.namespaceURI,"LineStringSegment");e.appendChild(r),this.writeCurveOrLineString(r,i,n)}writeSurfaceOrPolygon(e,i,n){const r=n[n.length-1],a=r.hasZ,s=r.srsName;if(e.nodeName!=="PolygonPatch"&&s&&e.setAttribute("srsName",s),e.nodeName==="Polygon"||e.nodeName==="PolygonPatch"){const o=i.getLinearRings();Di({node:e,hasZ:a,srsName:s},this.RING_SERIALIZERS,this.RING_NODE_FACTORY_,o,n,void 0,this)}else if(e.nodeName==="Surface"){const o=ct(e.namespaceURI,"patches");e.appendChild(o),this.writeSurfacePatches_(o,i,n)}}RING_NODE_FACTORY_(e,i,n){const r=i[i.length-1],a=r.node,s=r.exteriorWritten;return s===void 0&&(r.exteriorWritten=!0),ct(a.namespaceURI,s!==void 0?"innerBoundaryIs":"outerBoundaryIs")}writeSurfacePatches_(e,i,n){const r=ct(e.namespaceURI,"PolygonPatch");e.appendChild(r),this.writeSurfaceOrPolygon(r,i,n)}writeRing(e,i,n){const r=ct(e.namespaceURI,"LinearRing");e.appendChild(r),this.writeLinearRing(r,i,n)}getCoords_(e,i,n){let a=(i?xt(i).getAxisOrientation():"enu").startsWith("en")?e[0]+","+e[1]:e[1]+","+e[0];if(n){const s=e[2]||0;a+=","+s}return a}writePoint(e,i,n){const r=n[n.length-1],a=r.hasZ,s=r.srsName;s&&e.setAttribute("srsName",s);const o=this.createCoordinatesNode_(e.namespaceURI);e.appendChild(o);const l=i.getCoordinates(),h=this.getCoords_(l,s,a);ji(o,h)}writeMultiPoint(e,i,n){const r=n[n.length-1],a=r.hasZ,s=r.srsName;s&&e.setAttribute("srsName",s);const o=i.getPoints();Di({node:e,hasZ:a,srsName:s},this.POINTMEMBER_SERIALIZERS,Tr("pointMember"),o,n,void 0,this)}writePointMember(e,i,n){const r=ct(e.namespaceURI,"Point");e.appendChild(r),this.writePoint(r,i,n)}writeLinearRing(e,i,n){const a=n[n.length-1].srsName;a&&e.setAttribute("srsName",a);const s=this.createCoordinatesNode_(e.namespaceURI);e.appendChild(s),this.writeCoordinates_(s,i,n)}writeMultiSurfaceOrPolygon(e,i,n){const r=n[n.length-1],a=r.hasZ,s=r.srsName,o=r.surface;s&&e.setAttribute("srsName",s);const l=i.getPolygons();Di({node:e,hasZ:a,srsName:s,surface:o},this.SURFACEORPOLYGONMEMBER_SERIALIZERS,this.MULTIGEOMETRY_MEMBER_NODE_FACTORY_,l,n,void 0,this)}writeSurfaceOrPolygonMember(e,i,n){const r=this.GEOMETRY_NODE_FACTORY_(i,n);r&&(e.appendChild(r),this.writeSurfaceOrPolygon(r,i,n))}writeEnvelope(e,i,n){const a=n[n.length-1].srsName;a&&e.setAttribute("srsName",a);const s=["lowerCorner","upperCorner"],o=[i[0]+" "+i[1],i[2]+" "+i[3]];Di({node:e},this.ENVELOPE_SERIALIZERS,X$,o,n,s,this)}MULTIGEOMETRY_MEMBER_NODE_FACTORY_(e,i,n){const r=i[i.length-1].node;return ct("http://www.opengis.net/gml",HRe[r.nodeName])}}Tt.prototype.GEOMETRY_FLAT_COORDINATES_PARSERS={"http://www.opengis.net/gml":{coordinates:Ze(Tt.prototype.readFlatCoordinates)}},Tt.prototype.FLAT_LINEAR_RINGS_PARSERS={"http://www.opengis.net/gml":{innerBoundaryIs:Tt.prototype.innerBoundaryIsParser,outerBoundaryIs:Tt.prototype.outerBoundaryIsParser}},Tt.prototype.BOX_PARSERS_={"http://www.opengis.net/gml":{coordinates:st(Tt.prototype.readFlatCoordinates)}},Tt.prototype.GEOMETRY_PARSERS={"http://www.opengis.net/gml":{Point:Ze(pt.prototype.readPoint),MultiPoint:Ze(pt.prototype.readMultiPoint),LineString:Ze(pt.prototype.readLineString),MultiLineString:Ze(pt.prototype.readMultiLineString),LinearRing:Ze(pt.prototype.readLinearRing),Polygon:Ze(pt.prototype.readPolygon),MultiPolygon:Ze(pt.prototype.readMultiPolygon),Box:Ze(Tt.prototype.readBox)}},Tt.prototype.GEOMETRY_SERIALIZERS={"http://www.opengis.net/gml":{Curve:pe(Tt.prototype.writeCurveOrLineString),MultiCurve:pe(Tt.prototype.writeMultiCurveOrLineString),Point:pe(Tt.prototype.writePoint),MultiPoint:pe(Tt.prototype.writeMultiPoint),LineString:pe(Tt.prototype.writeCurveOrLineString),MultiLineString:pe(Tt.prototype.writeMultiCurveOrLineString),LinearRing:pe(Tt.prototype.writeLinearRing),Polygon:pe(Tt.prototype.writeSurfaceOrPolygon),MultiPolygon:pe(Tt.prototype.writeMultiSurfaceOrPolygon),Surface:pe(Tt.prototype.writeSurfaceOrPolygon),MultiSurface:pe(Tt.prototype.writeMultiSurfaceOrPolygon),Envelope:pe(Tt.prototype.writeEnvelope)}},Tt.prototype.LINESTRINGORCURVEMEMBER_SERIALIZERS={"http://www.opengis.net/gml":{lineStringMember:pe(Tt.prototype.writeLineStringOrCurveMember),curveMember:pe(Tt.prototype.writeLineStringOrCurveMember)}},Tt.prototype.RING_SERIALIZERS={"http://www.opengis.net/gml":{outerBoundaryIs:pe(Tt.prototype.writeRing),innerBoundaryIs:pe(Tt.prototype.writeRing)}},Tt.prototype.POINTMEMBER_SERIALIZERS={"http://www.opengis.net/gml":{pointMember:pe(Tt.prototype.writePointMember)}},Tt.prototype.SURFACEORPOLYGONMEMBER_SERIALIZERS={"http://www.opengis.net/gml":{surfaceMember:pe(Tt.prototype.writeSurfaceOrPolygonMember),polygonMember:pe(Tt.prototype.writeSurfaceOrPolygonMember)}},Tt.prototype.ENVELOPE_SERIALIZERS={"http://www.opengis.net/gml":{lowerCorner:pe(ji),upperCorner:pe(ji)}};const AA=Tt,$Re=Xs+" http://schemas.opengis.net/gml/3.1.1/profiles/gmlsfProfile/1.0.0/gmlsf.xsd",WRe={MultiLineString:"lineStringMember",MultiCurve:"curveMember",MultiPolygon:"polygonMember",MultiSurface:"surfaceMember"};class Ue extends pt{constructor(e){e=e||{},super(e),this.surface_=e.surface!==void 0?e.surface:!1,this.curve_=e.curve!==void 0?e.curve:!1,this.multiCurve_=e.multiCurve!==void 0?e.multiCurve:!0,this.multiSurface_=e.multiSurface!==void 0?e.multiSurface:!0,this.schemaLocation=e.schemaLocation?e.schemaLocation:$Re,this.hasZ=e.hasZ!==void 0?e.hasZ:!1}readMultiCurve(e,i){const n=jt([],this.MULTICURVE_PARSERS,e,i,this);if(n)return new Of(n)}readFlatCurveRing(e,i){const n=jt([],this.MULTICURVE_PARSERS,e,i,this),r=[];for(let a=0,s=n.length;a<s;++a)gn(r,n[a].getFlatCoordinates());return r}readMultiSurface(e,i){const n=jt([],this.MULTISURFACE_PARSERS,e,i,this);if(n)return new qh(n)}curveMemberParser(e,i){lh(this.CURVEMEMBER_PARSERS,e,i,this)}surfaceMemberParser(e,i){lh(this.SURFACEMEMBER_PARSERS,e,i,this)}readPatch(e,i){return jt([null],this.PATCHES_PARSERS,e,i,this)}readSegment(e,i){return jt([],this.SEGMENTS_PARSERS,e,i,this)}readPolygonPatch(e,i){return jt([null],this.FLAT_LINEAR_RINGS_PARSERS,e,i,this)}readLineStringSegment(e,i){return jt([null],this.GEOMETRY_FLAT_COORDINATES_PARSERS,e,i,this)}interiorParser(e,i){const n=jt(void 0,this.RING_PARSERS,e,i,this);n&&i[i.length-1].push(n)}exteriorParser(e,i){const n=jt(void 0,this.RING_PARSERS,e,i,this);if(n){const r=i[i.length-1];r[0]=n}}readSurface(e,i){const n=jt([null],this.SURFACE_PARSERS,e,i,this);if(n&&n[0]){const r=n[0],a=[r.length];let s,o;for(s=1,o=n.length;s<o;++s)gn(r,n[s]),a.push(r.length);return new Kn(r,"XYZ",a)}}readCurve(e,i){const n=jt([null],this.CURVE_PARSERS,e,i,this);if(n)return new Yt(n,"XYZ")}readEnvelope(e,i){const n=jt([null],this.ENVELOPE_PARSERS,e,i,this);return kr(n[1][0],n[1][1],n[2][0],n[2][1])}readFlatPos(e,i){let n=dA(e,!1);const r=/^\s*([+\-]?\d*\.?\d+(?:[eE][+\-]?\d+)?)\s*/,a=[];let s;for(;s=r.exec(n);)a.push(parseFloat(s[1])),n=n.substr(s[0].length);if(n!=="")return;const l=i[0].srsName;if((l?xt(l).getAxisOrientation():"enu")==="neu")for(let c=0,f=a.length;c<f;c+=3){const g=a[c],d=a[c+1];a[c]=d,a[c+1]=g}const u=a.length;if(u==2&&a.push(0),u!==0)return a}readFlatPosList(e,i){const n=dA(e,!1).replace(/^\s*|\s*$/g,""),r=i[0],a=r.srsName,s=r.srsDimension,o=a?xt(a).getAxisOrientation():"enu",l=n.split(/\s+/);let h=2;e.getAttribute("srsDimension")?h=jc(e.getAttribute("srsDimension")):e.getAttribute("dimension")?h=jc(e.getAttribute("dimension")):e.parentNode.getAttribute("srsDimension")?h=jc(e.parentNode.getAttribute("srsDimension")):s&&(h=jc(s));const u=o.startsWith("en");let c,f,g;const d=[];for(let v=0,A=l.length;v<A;v+=h)c=parseFloat(l[v]),f=parseFloat(l[v+1]),g=h===3?parseFloat(l[v+2]):0,u?d.push(c,f,g):d.push(f,c,g);return d}writePos_(e,i,n){const r=n[n.length-1],a=r.hasZ,s=a?"3":"2";e.setAttribute("srsDimension",s);const o=r.srsName,l=o?xt(o).getAxisOrientation():"enu",h=i.getCoordinates();let u=l.startsWith("en")?h[0]+" "+h[1]:h[1]+" "+h[0];if(a){const c=h[2]||0;u+=" "+c}ji(e,u)}getCoords_(e,i,n){let a=(i?xt(i).getAxisOrientation():"enu").startsWith("en")?e[0]+" "+e[1]:e[1]+" "+e[0];if(n){const s=e[2]||0;a+=" "+s}return a}writePosList_(e,i,n){const r=n[n.length-1],a=r.hasZ,s=a?"3":"2";e.setAttribute("srsDimension",s);const o=r.srsName,l=i.getCoordinates(),h=l.length,u=new Array(h);let c;for(let f=0;f<h;++f)c=l[f],u[f]=this.getCoords_(c,o,a);ji(e,u.join(" "))}writePoint(e,i,n){const a=n[n.length-1].srsName;a&&e.setAttribute("srsName",a);const s=ct(e.namespaceURI,"pos");e.appendChild(s),this.writePos_(s,i,n)}writeEnvelope(e,i,n){const a=n[n.length-1].srsName;a&&e.setAttribute("srsName",a);const s=["lowerCorner","upperCorner"],o=[i[0]+" "+i[1],i[2]+" "+i[3]];Di({node:e},this.ENVELOPE_SERIALIZERS,X$,o,n,s,this)}writeLinearRing(e,i,n){const a=n[n.length-1].srsName;a&&e.setAttribute("srsName",a);const s=ct(e.namespaceURI,"posList");e.appendChild(s),this.writePosList_(s,i,n)}RING_NODE_FACTORY_(e,i,n){const r=i[i.length-1],a=r.node,s=r.exteriorWritten;return s===void 0&&(r.exteriorWritten=!0),ct(a.namespaceURI,s!==void 0?"interior":"exterior")}writeSurfaceOrPolygon(e,i,n){const r=n[n.length-1],a=r.hasZ,s=r.srsName;if(e.nodeName!=="PolygonPatch"&&s&&e.setAttribute("srsName",s),e.nodeName==="Polygon"||e.nodeName==="PolygonPatch"){const o=i.getLinearRings();Di({node:e,hasZ:a,srsName:s},this.RING_SERIALIZERS,this.RING_NODE_FACTORY_,o,n,void 0,this)}else if(e.nodeName==="Surface"){const o=ct(e.namespaceURI,"patches");e.appendChild(o),this.writeSurfacePatches_(o,i,n)}}writeCurveOrLineString(e,i,n){const a=n[n.length-1].srsName;if(e.nodeName!=="LineStringSegment"&&a&&e.setAttribute("srsName",a),e.nodeName==="LineString"||e.nodeName==="LineStringSegment"){const s=ct(e.namespaceURI,"posList");e.appendChild(s),this.writePosList_(s,i,n)}else if(e.nodeName==="Curve"){const s=ct(e.namespaceURI,"segments");e.appendChild(s),this.writeCurveSegments_(s,i,n)}}writeMultiSurfaceOrPolygon(e,i,n){const r=n[n.length-1],a=r.hasZ,s=r.srsName,o=r.surface;s&&e.setAttribute("srsName",s);const l=i.getPolygons();Di({node:e,hasZ:a,srsName:s,surface:o},this.SURFACEORPOLYGONMEMBER_SERIALIZERS,this.MULTIGEOMETRY_MEMBER_NODE_FACTORY_,l,n,void 0,this)}writeMultiPoint(e,i,n){const r=n[n.length-1],a=r.srsName,s=r.hasZ;a&&e.setAttribute("srsName",a);const o=i.getPoints();Di({node:e,hasZ:s,srsName:a},this.POINTMEMBER_SERIALIZERS,Tr("pointMember"),o,n,void 0,this)}writeMultiCurveOrLineString(e,i,n){const r=n[n.length-1],a=r.hasZ,s=r.srsName,o=r.curve;s&&e.setAttribute("srsName",s);const l=i.getLineStrings();Di({node:e,hasZ:a,srsName:s,curve:o},this.LINESTRINGORCURVEMEMBER_SERIALIZERS,this.MULTIGEOMETRY_MEMBER_NODE_FACTORY_,l,n,void 0,this)}writeRing(e,i,n){const r=ct(e.namespaceURI,"LinearRing");e.appendChild(r),this.writeLinearRing(r,i,n)}writeSurfaceOrPolygonMember(e,i,n){const r=this.GEOMETRY_NODE_FACTORY_(i,n);r&&(e.appendChild(r),this.writeSurfaceOrPolygon(r,i,n))}writePointMember(e,i,n){const r=ct(e.namespaceURI,"Point");e.appendChild(r),this.writePoint(r,i,n)}writeLineStringOrCurveMember(e,i,n){const r=this.GEOMETRY_NODE_FACTORY_(i,n);r&&(e.appendChild(r),this.writeCurveOrLineString(r,i,n))}writeSurfacePatches_(e,i,n){const r=ct(e.namespaceURI,"PolygonPatch");e.appendChild(r),this.writeSurfaceOrPolygon(r,i,n)}writeCurveSegments_(e,i,n){const r=ct(e.namespaceURI,"LineStringSegment");e.appendChild(r),this.writeCurveOrLineString(r,i,n)}writeGeometryElement(e,i,n){const r=n[n.length-1],a=Object.assign({},r);a.node=e;let s;Array.isArray(i)?s=fx(i,r):s=hu(i,!0,r),Di(a,this.GEOMETRY_SERIALIZERS,this.GEOMETRY_NODE_FACTORY_,[s],n,void 0,this)}writeFeatureElement(e,i,n){const r=i.getId();r&&e.setAttribute("fid",r);const a=n[n.length-1],s=a.featureNS,o=i.getGeometryName();a.serializers||(a.serializers={},a.serializers[s]={});const l=[],h=[];if(i.hasProperties()){const c=i.getProperties();for(const f in c){const g=c[f];g!=null&&(l.push(f),h.push(g),f==o||typeof g.getSimplifiedGeometry=="function"?f in a.serializers[s]||(a.serializers[s][f]=pe(this.writeGeometryElement,this)):f in a.serializers[s]||(a.serializers[s][f]=pe(ji)))}}const u=Object.assign({},a);u.node=e,Di(u,a.serializers,Tr(void 0,s),h,n,l)}writeFeatureMembers_(e,i,n){const r=n[n.length-1],a=r.featureType,s=r.featureNS,o={};o[s]={},o[s][a]=pe(this.writeFeatureElement,this);const l=Object.assign({},r);l.node=e,Di(l,o,Tr(a,s),i,n)}MULTIGEOMETRY_MEMBER_NODE_FACTORY_(e,i,n){const r=i[i.length-1].node;return ct(this.namespace,WRe[r.nodeName])}GEOMETRY_NODE_FACTORY_(e,i,n){const r=i[i.length-1],a=r.multiSurface,s=r.surface,o=r.curve,l=r.multiCurve;return Array.isArray(e)?n="Envelope":(n=e.getType(),n==="MultiPolygon"&&a===!0?n="MultiSurface":n==="Polygon"&&s===!0?n="Surface":n==="LineString"&&o===!0?n="Curve":n==="MultiLineString"&&l===!0&&(n="MultiCurve")),ct(this.namespace,n)}writeGeometryNode(e,i){i=this.adaptOptions(i);const n=ct(this.namespace,"geom"),r={node:n,hasZ:this.hasZ,srsName:this.srsName,curve:this.curve_,surface:this.surface_,multiSurface:this.multiSurface_,multiCurve:this.multiCurve_};return i&&Object.assign(r,i),this.writeGeometryElement(n,e,[r]),n}writeFeaturesNode(e,i){i=this.adaptOptions(i);const n=ct(this.namespace,"featureMembers");n.setAttributeNS(kT,"xsi:schemaLocation",this.schemaLocation);const r={srsName:this.srsName,hasZ:this.hasZ,curve:this.curve_,surface:this.surface_,multiSurface:this.multiSurface_,multiCurve:this.multiCurve_,featureNS:this.featureNS,featureType:this.featureType};return i&&Object.assign(r,i),this.writeFeatureMembers_(n,e,[r]),n}}Ue.prototype.GEOMETRY_FLAT_COORDINATES_PARSERS={"http://www.opengis.net/gml":{pos:Ze(Ue.prototype.readFlatPos),posList:Ze(Ue.prototype.readFlatPosList),coordinates:Ze(AA.prototype.readFlatCoordinates)}},Ue.prototype.FLAT_LINEAR_RINGS_PARSERS={"http://www.opengis.net/gml":{interior:Ue.prototype.interiorParser,exterior:Ue.prototype.exteriorParser}},Ue.prototype.GEOMETRY_PARSERS={"http://www.opengis.net/gml":{Point:Ze(pt.prototype.readPoint),MultiPoint:Ze(pt.prototype.readMultiPoint),LineString:Ze(pt.prototype.readLineString),MultiLineString:Ze(pt.prototype.readMultiLineString),LinearRing:Ze(pt.prototype.readLinearRing),Polygon:Ze(pt.prototype.readPolygon),MultiPolygon:Ze(pt.prototype.readMultiPolygon),Surface:Ze(Ue.prototype.readSurface),MultiSurface:Ze(Ue.prototype.readMultiSurface),Curve:Ze(Ue.prototype.readCurve),MultiCurve:Ze(Ue.prototype.readMultiCurve),Envelope:Ze(Ue.prototype.readEnvelope)}},Ue.prototype.MULTICURVE_PARSERS={"http://www.opengis.net/gml":{curveMember:st(Ue.prototype.curveMemberParser),curveMembers:st(Ue.prototype.curveMemberParser)}},Ue.prototype.MULTISURFACE_PARSERS={"http://www.opengis.net/gml":{surfaceMember:st(Ue.prototype.surfaceMemberParser),surfaceMembers:st(Ue.prototype.surfaceMemberParser)}},Ue.prototype.CURVEMEMBER_PARSERS={"http://www.opengis.net/gml":{LineString:st(pt.prototype.readLineString),Curve:st(Ue.prototype.readCurve)}},Ue.prototype.SURFACEMEMBER_PARSERS={"http://www.opengis.net/gml":{Polygon:st(pt.prototype.readPolygon),Surface:st(Ue.prototype.readSurface)}},Ue.prototype.SURFACE_PARSERS={"http://www.opengis.net/gml":{patches:Ze(Ue.prototype.readPatch)}},Ue.prototype.CURVE_PARSERS={"http://www.opengis.net/gml":{segments:Ze(Ue.prototype.readSegment)}},Ue.prototype.ENVELOPE_PARSERS={"http://www.opengis.net/gml":{lowerCorner:st(Ue.prototype.readFlatPosList),upperCorner:st(Ue.prototype.readFlatPosList)}},Ue.prototype.PATCHES_PARSERS={"http://www.opengis.net/gml":{PolygonPatch:Ze(Ue.prototype.readPolygonPatch)}},Ue.prototype.SEGMENTS_PARSERS={"http://www.opengis.net/gml":{LineStringSegment:Z$(Ue.prototype.readLineStringSegment)}},pt.prototype.RING_PARSERS={"http://www.opengis.net/gml":{LinearRing:Ze(pt.prototype.readFlatLinearRing),Ring:Ze(Ue.prototype.readFlatCurveRing)}},Ue.prototype.writeFeatures,Ue.prototype.RING_SERIALIZERS={"http://www.opengis.net/gml":{exterior:pe(Ue.prototype.writeRing),interior:pe(Ue.prototype.writeRing)}},Ue.prototype.ENVELOPE_SERIALIZERS={"http://www.opengis.net/gml":{lowerCorner:pe(ji),upperCorner:pe(ji)}},Ue.prototype.SURFACEORPOLYGONMEMBER_SERIALIZERS={"http://www.opengis.net/gml":{surfaceMember:pe(Ue.prototype.writeSurfaceOrPolygonMember),polygonMember:pe(Ue.prototype.writeSurfaceOrPolygonMember)}},Ue.prototype.POINTMEMBER_SERIALIZERS={"http://www.opengis.net/gml":{pointMember:pe(Ue.prototype.writePointMember)}},Ue.prototype.LINESTRINGORCURVEMEMBER_SERIALIZERS={"http://www.opengis.net/gml":{lineStringMember:pe(Ue.prototype.writeLineStringOrCurveMember),curveMember:pe(Ue.prototype.writeLineStringOrCurveMember)}},Ue.prototype.GEOMETRY_SERIALIZERS={"http://www.opengis.net/gml":{Curve:pe(Ue.prototype.writeCurveOrLineString),MultiCurve:pe(Ue.prototype.writeMultiCurveOrLineString),Point:pe(Ue.prototype.writePoint),MultiPoint:pe(Ue.prototype.writeMultiPoint),LineString:pe(Ue.prototype.writeCurveOrLineString),MultiLineString:pe(Ue.prototype.writeMultiCurveOrLineString),LinearRing:pe(Ue.prototype.writeLinearRing),Polygon:pe(Ue.prototype.writeSurfaceOrPolygon),MultiPolygon:pe(Ue.prototype.writeMultiSurfaceOrPolygon),Surface:pe(Ue.prototype.writeSurfaceOrPolygon),MultiSurface:pe(Ue.prototype.writeMultiSurfaceOrPolygon),Envelope:pe(Ue.prototype.writeEnvelope)}};const yt=Ue;class Ot extends yt{constructor(e){e=e||{},super(e),this.schemaLocation=e.schemaLocation?e.schemaLocation:this.namespace+" http://schemas.opengis.net/gml/3.2.1/gml.xsd"}writeGeometryElement(e,i,n){const r=n[n.length-1];n[n.length-1]=Object.assign({multiCurve:!0,multiSurface:!0},r),super.writeGeometryElement(e,i,n)}}Ot.prototype.namespace="http://www.opengis.net/gml/3.2",Ot.prototype.GEOMETRY_FLAT_COORDINATES_PARSERS={"http://www.opengis.net/gml/3.2":{pos:Ze(yt.prototype.readFlatPos),posList:Ze(yt.prototype.readFlatPosList),coordinates:Ze(AA.prototype.readFlatCoordinates)}},Ot.prototype.FLAT_LINEAR_RINGS_PARSERS={"http://www.opengis.net/gml/3.2":{interior:yt.prototype.interiorParser,exterior:yt.prototype.exteriorParser}},Ot.prototype.GEOMETRY_PARSERS={"http://www.opengis.net/gml/3.2":{Point:Ze(pt.prototype.readPoint),MultiPoint:Ze(pt.prototype.readMultiPoint),LineString:Ze(pt.prototype.readLineString),MultiLineString:Ze(pt.prototype.readMultiLineString),LinearRing:Ze(pt.prototype.readLinearRing),Polygon:Ze(pt.prototype.readPolygon),MultiPolygon:Ze(pt.prototype.readMultiPolygon),Surface:Ze(Ot.prototype.readSurface),MultiSurface:Ze(yt.prototype.readMultiSurface),Curve:Ze(Ot.prototype.readCurve),MultiCurve:Ze(yt.prototype.readMultiCurve),Envelope:Ze(Ot.prototype.readEnvelope)}},Ot.prototype.MULTICURVE_PARSERS={"http://www.opengis.net/gml/3.2":{curveMember:st(yt.prototype.curveMemberParser),curveMembers:st(yt.prototype.curveMemberParser)}},Ot.prototype.MULTISURFACE_PARSERS={"http://www.opengis.net/gml/3.2":{surfaceMember:st(yt.prototype.surfaceMemberParser),surfaceMembers:st(yt.prototype.surfaceMemberParser)}},Ot.prototype.CURVEMEMBER_PARSERS={"http://www.opengis.net/gml/3.2":{LineString:st(pt.prototype.readLineString),Curve:st(yt.prototype.readCurve)}},Ot.prototype.SURFACEMEMBER_PARSERS={"http://www.opengis.net/gml/3.2":{Polygon:st(pt.prototype.readPolygon),Surface:st(yt.prototype.readSurface)}},Ot.prototype.SURFACE_PARSERS={"http://www.opengis.net/gml/3.2":{patches:Ze(yt.prototype.readPatch)}},Ot.prototype.CURVE_PARSERS={"http://www.opengis.net/gml/3.2":{segments:Ze(yt.prototype.readSegment)}},Ot.prototype.ENVELOPE_PARSERS={"http://www.opengis.net/gml/3.2":{lowerCorner:st(yt.prototype.readFlatPosList),upperCorner:st(yt.prototype.readFlatPosList)}},Ot.prototype.PATCHES_PARSERS={"http://www.opengis.net/gml/3.2":{PolygonPatch:Ze(yt.prototype.readPolygonPatch)}},Ot.prototype.SEGMENTS_PARSERS={"http://www.opengis.net/gml/3.2":{LineStringSegment:Z$(yt.prototype.readLineStringSegment)}},Ot.prototype.MULTIPOINT_PARSERS={"http://www.opengis.net/gml/3.2":{pointMember:st(pt.prototype.pointMemberParser),pointMembers:st(pt.prototype.pointMemberParser)}},Ot.prototype.MULTILINESTRING_PARSERS={"http://www.opengis.net/gml/3.2":{lineStringMember:st(pt.prototype.lineStringMemberParser),lineStringMembers:st(pt.prototype.lineStringMemberParser)}},Ot.prototype.MULTIPOLYGON_PARSERS={"http://www.opengis.net/gml/3.2":{polygonMember:st(pt.prototype.polygonMemberParser),polygonMembers:st(pt.prototype.polygonMemberParser)}},Ot.prototype.POINTMEMBER_PARSERS={"http://www.opengis.net/gml/3.2":{Point:st(pt.prototype.readFlatCoordinatesFromNode)}},Ot.prototype.LINESTRINGMEMBER_PARSERS={"http://www.opengis.net/gml/3.2":{LineString:st(pt.prototype.readLineString)}},Ot.prototype.POLYGONMEMBER_PARSERS={"http://www.opengis.net/gml/3.2":{Polygon:st(pt.prototype.readPolygon)}},Ot.prototype.RING_PARSERS={"http://www.opengis.net/gml/3.2":{LinearRing:Ze(pt.prototype.readFlatLinearRing),Ring:Ze(Ot.prototype.readFlatCurveRing)}},Ot.prototype.RING_SERIALIZERS={"http://www.opengis.net/gml/3.2":{exterior:pe(yt.prototype.writeRing),interior:pe(yt.prototype.writeRing)}},Ot.prototype.ENVELOPE_SERIALIZERS={"http://www.opengis.net/gml/3.2":{lowerCorner:pe(ji),upperCorner:pe(ji)}},Ot.prototype.SURFACEORPOLYGONMEMBER_SERIALIZERS={"http://www.opengis.net/gml/3.2":{surfaceMember:pe(yt.prototype.writeSurfaceOrPolygonMember),polygonMember:pe(yt.prototype.writeSurfaceOrPolygonMember)}},Ot.prototype.POINTMEMBER_SERIALIZERS={"http://www.opengis.net/gml/3.2":{pointMember:pe(yt.prototype.writePointMember)}},Ot.prototype.LINESTRINGORCURVEMEMBER_SERIALIZERS={"http://www.opengis.net/gml/3.2":{lineStringMember:pe(yt.prototype.writeLineStringOrCurveMember),curveMember:pe(yt.prototype.writeLineStringOrCurveMember)}},Ot.prototype.GEOMETRY_SERIALIZERS={"http://www.opengis.net/gml/3.2":{Curve:pe(yt.prototype.writeCurveOrLineString),MultiCurve:pe(yt.prototype.writeMultiCurveOrLineString),Point:pe(Ot.prototype.writePoint),MultiPoint:pe(yt.prototype.writeMultiPoint),LineString:pe(yt.prototype.writeCurveOrLineString),MultiLineString:pe(yt.prototype.writeMultiCurveOrLineString),LinearRing:pe(yt.prototype.writeLinearRing),Polygon:pe(yt.prototype.writeSurfaceOrPolygon),MultiPolygon:pe(yt.prototype.writeMultiSurfaceOrPolygon),Surface:pe(yt.prototype.writeSurfaceOrPolygon),MultiSurface:pe(yt.prototype.writeMultiSurfaceOrPolygon),Envelope:pe(yt.prototype.writeEnvelope)}};const zT=Ot;class YRe{constructor(e){this.tagName_=e}getTagName(){return this.tagName_}}const eW=YRe;class ZRe extends eW{constructor(e,i){super(e),this.conditions=i,gt(this.conditions.length>=2,"At least 2 conditions are required")}}const XRe=ZRe;class KRe extends XRe{constructor(e){super("And",Array.prototype.slice.call(arguments))}}const JRe=KRe;class eDe extends eW{constructor(e,i,n){if(super("BBOX"),this.geometryName=e,this.extent=i,i.length!==4)throw new Error("Expected an extent with four values ([minX, minY, maxX, maxY])");this.srsName=n}}const tDe=eDe;function iDe(t){const e=[null].concat(Array.prototype.slice.call(arguments));return new(Function.prototype.bind.apply(JRe,e))}function nDe(t,e,i){return new tDe(t,e,i)}const tW={"http://www.opengis.net/gml":{boundedBy:Ca(pt.prototype.readExtentElement,"bounds")},"http://www.opengis.net/wfs/2.0":{member:st(pt.prototype.readFeaturesInternal)}},rDe={"http://www.opengis.net/wfs":{totalInserted:Ca(Vc),totalUpdated:Ca(Vc),totalDeleted:Ca(Vc)},"http://www.opengis.net/wfs/2.0":{totalInserted:Ca(Vc),totalUpdated:Ca(Vc),totalDeleted:Ca(Vc)}},aDe={"http://www.opengis.net/wfs":{TransactionSummary:Ca(aW,"transactionSummary"),InsertResults:Ca(oW,"insertIds")},"http://www.opengis.net/wfs/2.0":{TransactionSummary:Ca(aW,"transactionSummary"),InsertResults:Ca(oW,"insertIds")}},sDe={"http://www.opengis.net/wfs":{PropertyName:pe(ji)},"http://www.opengis.net/wfs/2.0":{PropertyName:pe(ji)}},iW={"http://www.opengis.net/wfs":{Insert:pe(lW),Update:pe(cW),Delete:pe(uW),Property:pe(fW),Native:pe(gW)},"http://www.opengis.net/wfs/2.0":{Insert:pe(lW),Update:pe(cW),Delete:pe(uW),Property:pe(fW),Native:pe(gW)}},nW="feature",OT="http://www.w3.org/2000/xmlns/",NT={"2.0.0":"http://www.opengis.net/ogc/1.1","1.1.0":"http://www.opengis.net/ogc","1.0.0":"http://www.opengis.net/ogc"},GT={"2.0.0":"http://www.opengis.net/wfs/2.0","1.1.0":"http://www.opengis.net/wfs","1.0.0":"http://www.opengis.net/wfs"},UT={"2.0.0":"http://www.opengis.net/fes/2.0","1.1.0":"http://www.opengis.net/fes","1.0.0":"http://www.opengis.net/fes"},rW={"2.0.0":"http://www.opengis.net/wfs/2.0 http://schemas.opengis.net/wfs/2.0/wfs.xsd","1.1.0":"http://www.opengis.net/wfs http://schemas.opengis.net/wfs/1.1.0/wfs.xsd","1.0.0":"http://www.opengis.net/wfs http://schemas.opengis.net/wfs/1.0.0/wfs.xsd"},qT={"2.0.0":zT,"1.1.0":yt,"1.0.0":AA},oDe="1.1.0";class lDe extends J${constructor(e){super(),e=e||{},this.version_=e.version?e.version:oDe,this.featureType_=e.featureType,this.featureNS_=e.featureNS,this.gmlFormat_=e.gmlFormat?e.gmlFormat:new qT[this.version_],this.schemaLocation_=e.schemaLocation?e.schemaLocation:rW[this.version_]}getFeatureType(){return this.featureType_}setFeatureType(e){this.featureType_=e}readFeaturesFromNode(e,i){const n={node:e};Object.assign(n,{featureType:this.featureType_,featureNS:this.featureNS_}),Object.assign(n,this.getReadOptions(e,i||{}));const r=[n];let a;this.version_==="2.0.0"?a=tW:a=this.gmlFormat_.FEATURE_COLLECTION_PARSERS;let s=jt([],a,e,r,this.gmlFormat_);return s||(s=[]),s}readTransactionResponse(e){if(!!e){if(typeof e=="string"){const i=qc(e);return this.readTransactionResponseFromDocument(i)}return Uc(e)?this.readTransactionResponseFromDocument(e):this.readTransactionResponseFromNode(e)}}readFeatureCollectionMetadata(e){if(!!e){if(typeof e=="string"){const i=qc(e);return this.readFeatureCollectionMetadataFromDocument(i)}return Uc(e)?this.readFeatureCollectionMetadataFromDocument(e):this.readFeatureCollectionMetadataFromNode(e)}}readFeatureCollectionMetadataFromDocument(e){for(let i=e.firstChild;i;i=i.nextSibling)if(i.nodeType==Node.ELEMENT_NODE)return this.readFeatureCollectionMetadataFromNode(i)}readFeatureCollectionMetadataFromNode(e){const i={},n=jc(e.getAttribute("numberOfFeatures"));return i.numberOfFeatures=n,jt(i,tW,e,[],this.gmlFormat_)}readTransactionResponseFromDocument(e){for(let i=e.firstChild;i;i=i.nextSibling)if(i.nodeType==Node.ELEMENT_NODE)return this.readTransactionResponseFromNode(i)}readTransactionResponseFromNode(e){return jt({},aDe,e,[])}writeGetFeature(e){const i=ct(GT[this.version_],"GetFeature");i.setAttribute("service","WFS"),i.setAttribute("version",this.version_),e.handle&&i.setAttribute("handle",e.handle),e.outputFormat&&i.setAttribute("outputFormat",e.outputFormat),e.maxFeatures!==void 0&&i.setAttribute("maxFeatures",String(e.maxFeatures)),e.resultType&&i.setAttribute("resultType",e.resultType),e.startIndex!==void 0&&i.setAttribute("startIndex",String(e.startIndex)),e.count!==void 0&&i.setAttribute("count",String(e.count)),e.viewParams!==void 0&&i.setAttribute("viewParams",e.viewParams),i.setAttributeNS(kT,"xsi:schemaLocation",this.schemaLocation_);const n={node:i};if(Object.assign(n,{version:this.version_,srsName:e.srsName,featureNS:e.featureNS?e.featureNS:this.featureNS_,featurePrefix:e.featurePrefix,propertyNames:e.propertyNames?e.propertyNames:[]}),gt(Array.isArray(e.featureTypes),"`options.featureTypes` must be an Array"),typeof e.featureTypes[0]=="string"){let r=e.filter;e.bbox&&(gt(e.geometryName,"`options.geometryName` must also be provided when `options.bbox` is set"),r=this.combineBboxAndFilter(e.geometryName,e.bbox,e.srsName,r)),Object.assign(n,{geometryName:e.geometryName,filter:r}),CW(i,e.featureTypes,[n])}else e.featureTypes.forEach(r=>{const a=this.combineBboxAndFilter(r.geometryName,r.bbox,e.srsName,e.filter);Object.assign(n,{geometryName:r.geometryName,filter:a}),CW(i,[r.name],[n])});return i}combineBboxAndFilter(e,i,n,r){const a=nDe(e,i,n);return r?iDe(r,a):a}writeTransaction(e,i,n,r){const a=[],s=r.version?r.version:this.version_,o=ct(GT[s],"Transaction");o.setAttribute("service","WFS"),o.setAttribute("version",s);let l;r&&(l=r.gmlOptions?r.gmlOptions:{},r.handle&&o.setAttribute("handle",r.handle)),o.setAttributeNS(kT,"xsi:schemaLocation",rW[s]);const h=hDe(o,l,s,r);return e&&ry("Insert",e,a,h),i&&ry("Update",i,a,h),n&&ry("Delete",n,a,h),r.nativeElements&&ry("Native",r.nativeElements,a,h),o}readProjectionFromDocument(e){for(let i=e.firstChild;i;i=i.nextSibling)if(i.nodeType==Node.ELEMENT_NODE)return this.readProjectionFromNode(i);return null}readProjectionFromNode(e){if(e.firstElementChild&&e.firstElementChild.firstElementChild){e=e.firstElementChild.firstElementChild;for(let i=e.firstElementChild;i;i=i.nextElementSibling)if(!(i.childNodes.length===0||i.childNodes.length===1&&i.firstChild.nodeType===3)){const n=[{}];return this.gmlFormat_.readGeometryElement(i,n),xt(n.pop().srsName)}}return null}}function hDe(t,e,i,n){const r=n.featurePrefix?n.featurePrefix:nW;let a;return i==="1.0.0"?a=2:i==="1.1.0"?a=3:i==="2.0.0"&&(a=3.2),Object.assign({node:t},{version:i,featureNS:n.featureNS,featureType:n.featureType,featurePrefix:r,gmlVersion:a,hasZ:n.hasZ,srsName:n.srsName},e)}function ry(t,e,i,n){Di(n,iW,Tr(t),e,i)}function aW(t,e){return jt({},rDe,t,e)}const uDe={"http://www.opengis.net/ogc":{FeatureId:st(function(t,e){return t.getAttribute("fid")})},"http://www.opengis.net/ogc/1.1":{FeatureId:st(function(t,e){return t.getAttribute("fid")})}};function sW(t,e){lh(uDe,t,e)}const cDe={"http://www.opengis.net/wfs":{Feature:sW},"http://www.opengis.net/wfs/2.0":{Feature:sW}};function oW(t,e){return jt([],cDe,t,e)}function lW(t,e,i){const n=i[i.length-1],r=n.featureType,a=n.featureNS,s=n.gmlVersion,o=ct(a,r);t.appendChild(o),s===2?AA.prototype.writeFeatureElement(o,e,i):s===3?yt.prototype.writeFeatureElement(o,e,i):zT.prototype.writeFeatureElement(o,e,i)}function hW(t,e,i){const r=i[i.length-1].version,a=NT[r],s=ct(a,"Filter"),o=ct(a,"FeatureId");s.appendChild(o),o.setAttribute("fid",e),t.appendChild(s)}function VT(t,e){t=t||nW;const i=t+":";return e.startsWith(i)?e:i+e}function uW(t,e,i){const n=i[i.length-1];gt(e.getId()!==void 0,"Features must have an id set");const r=n.featureType,a=n.featurePrefix,s=n.featureNS,o=VT(a,r);t.setAttribute("typeName",o),t.setAttributeNS(OT,"xmlns:"+a,s);const l=e.getId();l!==void 0&&hW(t,l,i)}function cW(t,e,i){const n=i[i.length-1];gt(e.getId()!==void 0,"Features must have an id set");const r=n.version,a=n.featureType,s=n.featurePrefix,o=n.featureNS,l=VT(s,a),h=e.getGeometryName();t.setAttribute("typeName",l),t.setAttributeNS(OT,"xmlns:"+s,o);const u=e.getId();if(u!==void 0){const c=e.getKeys(),f=[];for(let g=0,d=c.length;g<d;g++){const v=e.get(c[g]);if(v!==void 0){let A=c[g];v&&typeof v.getSimplifiedGeometry=="function"&&(A=h),f.push({name:A,value:v})}}Di({version:r,gmlVersion:n.gmlVersion,node:t,hasZ:n.hasZ,srsName:n.srsName},iW,Tr("Property"),f,i),hW(t,u,i)}}function fW(t,e,i){const n=i[i.length-1],r=n.version,a=GT[r],o=ct(a,r==="2.0.0"?"ValueReference":"Name"),l=n.gmlVersion;if(t.appendChild(o),ji(o,e.name),e.value!==void 0&&e.value!==null){const h=ct(a,"Value");t.appendChild(h),e.value&&typeof e.value.getSimplifiedGeometry=="function"?l===2?AA.prototype.writeGeometryElement(h,e.value,i):l===3?yt.prototype.writeGeometryElement(h,e.value,i):zT.prototype.writeGeometryElement(h,e.value,i):ji(h,e.value)}}function gW(t,e,i){e.vendorId&&t.setAttribute("vendorId",e.vendorId),e.safeToIgnore!==void 0&&t.setAttribute("safeToIgnore",String(e.safeToIgnore)),e.value!==void 0&&ji(t,e.value)}const ay={"http://www.opengis.net/wfs":{Query:pe(dW)},"http://www.opengis.net/wfs/2.0":{Query:pe(dW)},"http://www.opengis.net/ogc":{During:pe(pW),And:pe(sy),Or:pe(sy),Not:pe(mW),BBOX:pe(AW),Contains:pe(il),Intersects:pe(il),Within:pe(il),DWithin:pe(vW),PropertyIsEqualTo:pe(Yr),PropertyIsNotEqualTo:pe(Yr),PropertyIsLessThan:pe(Yr),PropertyIsLessThanOrEqualTo:pe(Yr),PropertyIsGreaterThan:pe(Yr),PropertyIsGreaterThanOrEqualTo:pe(Yr),PropertyIsNull:pe(yW),PropertyIsBetween:pe(_W),PropertyIsLike:pe(xW)},"http://www.opengis.net/fes/2.0":{During:pe(pW),And:pe(sy),Or:pe(sy),Not:pe(mW),BBOX:pe(AW),Contains:pe(il),Disjoint:pe(il),Intersects:pe(il),ResourceId:pe(gDe),Within:pe(il),DWithin:pe(vW),PropertyIsEqualTo:pe(Yr),PropertyIsNotEqualTo:pe(Yr),PropertyIsLessThan:pe(Yr),PropertyIsLessThanOrEqualTo:pe(Yr),PropertyIsGreaterThan:pe(Yr),PropertyIsGreaterThanOrEqualTo:pe(Yr),PropertyIsNull:pe(yW),PropertyIsBetween:pe(_W),PropertyIsLike:pe(xW)}};function dW(t,e,i){const n=i[i.length-1],r=n.version,a=n.featurePrefix,s=n.featureNS,o=n.propertyNames,l=n.srsName;let h;a?h=VT(a,e):h=e;let u;r==="2.0.0"?u="typeNames":u="typeName",t.setAttribute(u,h),l&&t.setAttribute("srsName",l),s&&t.setAttributeNS(OT,"xmlns:"+a,s);const c=Object.assign({},n);c.node=t,Di(c,sDe,Tr("PropertyName"),o,i);const f=n.filter;if(f){const g=ct(hy(r),"Filter");t.appendChild(g),fDe(g,f,i)}}function fDe(t,e,i){const n=i[i.length-1],r={node:t};Object.assign(r,{context:n}),Di(r,ay,Tr(e.getTagName()),[e],i)}function AW(t,e,i){const n=i[i.length-1],a=n.context.version;n.srsName=e.srsName;const s=qT[a];Hc(a,t,e.geometryName),s.prototype.writeGeometryElement(t,e.extent,i)}function gDe(t,e,i){t.setAttribute("rid",e.rid)}function il(t,e,i){const n=i[i.length-1],a=n.context.version;n.srsName=e.srsName;const s=qT[a];Hc(a,t,e.geometryName),s.prototype.writeGeometryElement(t,e.geometry,i)}function vW(t,e,i){const a=i[i.length-1].context.version;il(t,e,i);const s=ct(hy(a),"Distance");ji(s,e.distance.toString()),a==="2.0.0"?s.setAttribute("uom",e.unit):s.setAttribute("units",e.unit),t.appendChild(s)}function pW(t,e,i){const a=i[i.length-1].context.version;oy(UT[a],"ValueReference",t,e.propertyName);const s=ct(Xs,"TimePeriod");t.appendChild(s);const o=ct(Xs,"begin");s.appendChild(o),IW(o,e.begin);const l=ct(Xs,"end");s.appendChild(l),IW(l,e.end)}function sy(t,e,i){const r=i[i.length-1].context,a={node:t};Object.assign(a,{context:r});const s=e.conditions;for(let o=0,l=s.length;o<l;++o){const h=s[o];Di(a,ay,Tr(h.getTagName()),[h],i)}}function mW(t,e,i){const r=i[i.length-1].context,a={node:t};Object.assign(a,{context:r});const s=e.condition;Di(a,ay,Tr(s.getTagName()),[s],i)}function Yr(t,e,i){const a=i[i.length-1].context.version;e.matchCase!==void 0&&t.setAttribute("matchCase",e.matchCase.toString()),Hc(a,t,e.propertyName),ly(a,t,""+e.expression)}function yW(t,e,i){const a=i[i.length-1].context.version;Hc(a,t,e.propertyName)}function _W(t,e,i){const a=i[i.length-1].context.version,s=hy(a);Hc(a,t,e.propertyName);const o=ct(s,"LowerBoundary");t.appendChild(o),ly(a,o,""+e.lowerBoundary);const l=ct(s,"UpperBoundary");t.appendChild(l),ly(a,l,""+e.upperBoundary)}function xW(t,e,i){const a=i[i.length-1].context.version;t.setAttribute("wildCard",e.wildCard),t.setAttribute("singleChar",e.singleChar),t.setAttribute("escapeChar",e.escapeChar),e.matchCase!==void 0&&t.setAttribute("matchCase",e.matchCase.toString()),Hc(a,t,e.propertyName),ly(a,t,""+e.pattern)}function oy(t,e,i,n){const r=ct(t,e);ji(r,n),i.appendChild(r)}function ly(t,e,i){oy(hy(t),"Literal",e,i)}function Hc(t,e,i){t==="2.0.0"?oy(UT[t],"ValueReference",e,i):oy(NT[t],"PropertyName",e,i)}function IW(t,e){const i=ct(Xs,"TimeInstant");t.appendChild(i);const n=ct(Xs,"timePosition");i.appendChild(n),ji(n,e)}function CW(t,e,i){const n=i[i.length-1],r=Object.assign({},n);r.node=t,Di(r,ay,Tr("Query"),e,i)}function hy(t){let e;return t==="2.0.0"?e=UT[t]:e=NT[t],e}const dDe=lDe;function ADe(t,e,i){var n=i||{},r=n.noTrailing,a=r===void 0?!1:r,s=n.noLeading,o=s===void 0?!1:s,l=n.debounceMode,h=l===void 0?void 0:l,u,c=!1,f=0;function g(){u&&clearTimeout(u)}function d(A){var p=A||{},m=p.upcomingOnly,y=m===void 0?!1:m;g(),c=!y}function v(){for(var A=arguments.length,p=new Array(A),m=0;m<A;m++)p[m]=arguments[m];var y=this,I=Date.now()-f;if(c)return;function _(){f=Date.now(),e.apply(y,p)}function C(){u=void 0}!o&&h&&!u&&_(),g(),h===void 0&&I>t?o?(f=Date.now(),a||(u=setTimeout(h?C:_,t))):_():a!==!0&&(u=setTimeout(h?C:_,h===void 0?t-I:t))}return v.cancel=d,v}const vDe={name:"v-gd-route",render(){return null},extends:wr,inject:["VMap"],props:{className:{type:String,default:"gd-route-layer"},layerId:{type:String,default(){return`traffic-layer-${$e()}`}},interval:{type:Number,default:3e4},colors:{type:Array,default(){return["rgba(0,192,73,0.99609375)","rgba(255,159,25,0.99609375)","#e80e0e","#b40000","#8f979c"]}},url:String,webGl:{type:Boolean,default:!1},lineWidth:{type:[Number,String],default:2},geometry:Object,inViewport:{type:Boolean,default:!0},lowLevel:{type:Number,default:14},highLevel:{type:Number,default:16}},data(){return{source:null,layer:null,eventList:["singleclick"],eventRender:[],timer:null}},computed:{map(){return this.VMap.map}},watch:{visible:{handler(t){return ze(this,null,function*(){this.timer&&(clearTimeout(this.timer),this.timer=null),this.layer.setVisible(t),this.layer&&this.layer.getVisible()&&(yield this.reload())})},immediate:!1},zIndex:{handler(t){this.layer.setZIndex(t)},immediate:!1},maxZoom:{handler(t){this.layer.setMaxZoom(t)},immediate:!1},minZoom:{handler(t){this.layer.setMinZoom(t)},immediate:!1},extent:{handler(t){this.layer.setExtent(t)},immediate:!1,deep:!0},webGl:{handler(){this.dispose(),this.init()},immediate:!1,deep:!0},geometry:{handler(){this.dispose(),this.init()},immediate:!1,deep:!0},inViewport:{handler(){this.dispose(),this.init()},immediate:!1,deep:!0}},methods:{getColor(t){return t===1?this.colors[0]:t===2?this.colors[1]:t===3?this.colors[2]:t===4?this.colors[3]:t===-1?this.colors[4]:this.colors[0]},getData(){return ze(this,null,function*(){const t=new FormData;t.append("f","geojson"),t.append("returnGeometry",!0),t.append("resultRecordCount",5e4);const e=this.map.getView().getZoom();if(e<this.lowLevel?t.append("where","roadclass in (1,2,3)"):e>=this.lowLevel&&e<this.highLevel?t.append("where","roadclass in (1,2,3,4)"):e>=this.highLevel&&t.append("where","roadclass in (1,2,3,4,5)"),this.inViewport){const n=this.map.getView().calculateExtent(this.map.getSize()),a={type:"Polygon",coordinates:[[[n[0],n[1]],[n[2],n[1]],[n[2],n[3]],[n[0],n[3]],[n[0],n[1]]]]};t.append("geometry",JSON.stringify(a))}else this.geometry&&Object.keys(this.geometry).length>0&&t.append("geometry",JSON.stringify(this.geometry));return fetch(this.url,{method:"POST",body:t}).then(i=>i.json()).then(i=>i)})},setLayer(){if(this.webGl){const t=He(Re({},this.$props),{source:this.source,style:{"stroke-color":["case",["==",["get","state"],1],this.colors[0],["==",["get","state"],2],this.colors[1],["==",["get","state"],3],this.colors[2],["==",["get","state"],4],this.colors[3],["==",["get","state"],-1],this.colors[4],this.colors[4]],"stroke-width":this.lineWidth}});return new Uve(t)}else{const t=He(Re({},this.$props),{source:this.source,style:e=>{const i=e.get("state"),n=this.getColor(Number(i));return new ut({stroke:new Lt({color:n,width:this.lineWidth})})}});return new ni(t)}},init(){return ze(this,null,function*(){!this.url||(this.source=new yn,this.layer=this.setLayer(),this.layer.set("id",this.layerId),this.layer.set("users",!0),this.zIndex&&this.layer.setZIndex(this.zIndex),this.map.addLayer(this.layer),this.eventList.forEach(t=>{this.eventRender.push(this.map.on(t,e=>this.eventHandler(t,e)))}),this.map.getView().once("change:resolution",()=>{this.map.once("moveend",t=>{this.zoomEnd(t)})}),this.layer&&this.layer.getVisible()&&(yield this.reload()))})},zoomEnd(t){return ze(this,null,function*(){this.layer&&this.layer.getVisible()&&(yield this.renderRoute()),t.map.once("moveend",e=>{this.zoomEnd(e)})})},renderRoute:ADe(2e3,function(){return ze(this,null,function*(){const t=yield this.getData(),{featureCount:e}=t;if(e>0){const i=new Ls().readFeatures(t);this.source&&(this.source.clear(),this.source.addFeatures(i),this.$emit("render"))}})}),reload(){return ze(this,null,function*(){yield this.renderRoute(),this.timer=setTimeout(()=>ze(this,null,function*(){this.layer&&this.layer.getVisible()&&(yield this.reload())}),this.interval)})},eventHandler(t,e){const{pixel:i}=e,n=this.getFeatureAtPixel(i);this.$emit(t,e,n)},getFeatureAtPixel(t){return this.map.forEachFeatureAtPixel(t,(e,i)=>{var n;if((i==null?void 0:i.get("id"))===((n=this.layer)==null?void 0:n.get("id")))return e},{})},dispose(){this.timer&&(clearTimeout(this.timer),this.timer=null),this.eventRender.forEach(t=>{Lr(t)}),this.map.removeLayer(this.layer)}},mounted(){this.init()},beforeDestroy(){this.dispose()}};let pDe,mDe;const wW={};var EW=Ji(vDe,pDe,mDe,!1,yDe,null,null,null);function yDe(t){for(let e in wW)this[e]=wW[e]}EW.options.__file="src/components/layers/gd-route/index.vue";const vA=function(){return EW.exports}();vA.install=function(t){t.component(vA.name,vA)};const _De={name:"v-wfs",render(){return null},extends:wr,inject:["VMap"],components:{},props:{layerId:{type:String,default:`vector-layer-${$e()}`},options:{type:Object,default:()=>({})},layerStyle:{type:Object,default:()=>({})}},data(){return{vectorLayer:null,vectorSource:null,eventRender:[],eventList:["singleclick","pointermove"]}},computed:{map(){return this.VMap.map}},watch:{visible:{handler(t){this.vectorLayer.setVisible(t)},immediate:!1},zIndex:{handler(t){this.vectorLayer.setZIndex(t)},immediate:!1},maxZoom:{handler(t){this.vectorLayer.setMaxZoom(t)},immediate:!1},minZoom:{handler(t){this.vectorLayer.setMinZoom(t)},immediate:!1},extent:{handler(t){this.vectorLayer.setExtent(t)},immediate:!1,deep:!0}},methods:{init(){this.vectorSource=new yn,this.vectorLayer=new ni(He(Re({},this.$props),{source:this.vectorSource,style:t=>_u(t,this.layerStyle,this.map)})),this.vectorLayer.set("id",this.layerId),this.map.addLayer(this.vectorLayer),this.eventList.forEach(t=>{this.eventRender.push(this.map.on(t,e=>this.eventHandler(t,e)))}),this.addFeatures()},addFeatures(){if(!at(this.options,"featureNS"))throw new Error("featureNS is required");const t=new dDe().writeGetFeature(He(Re({},this.options),{outputFormat:"application/json"}));fetch(this.options.featureNS,{method:"POST",body:new XMLSerializer().serializeToString(t)}).then(function(e){return e.json()}).then(e=>{const i=new Ls().readFeatures(e);this.vectorSource.addFeatures(i)})},getFeatureAtPixel(t){return this.map.forEachFeatureAtPixel(t,(e,i)=>{var n;if((i==null?void 0:i.get("id"))===((n=this.vectorLayer)==null?void 0:n.get("id")))return e},{})},eventHandler(t,e){const{pixel:i}=e,n=this.getFeatureAtPixel(i);this.$emit(t,e,n)}},created(){},mounted(){this.init()}};let xDe,IDe;const SW={};var bW=Ji(_De,xDe,IDe,!1,CDe,null,null,null);function CDe(t){for(let e in SW)this[e]=SW[e]}bW.options.__file="src/components/layers/wfs/index.vue";const pA=function(){return bW.exports}();pA.install=function(t){t.component(pA.name,pA)};const BW=[xg,Rg,Dg,Ou,Qg,zg,qg,jg,Hg,$g,Wg,lA,hA,sA,fA,gA,vA,pA],jT=function(t){jT.installed||BW.forEach(e=>{t.component(e.name,e)})};typeof window!="undefined"&&window.Vue&&jT(window.Vue);const wDe=Re({install:jT},BW);class EDe extends Tl{decodeBlock(e){return e}}const SDe=Object.freeze(Object.defineProperty({__proto__:null,default:EDe},Symbol.toStringTag,{value:"Module"})),MW=9,HT=256,$T=257,bDe=12;function BDe(t,e,i){const n=e%8,r=Math.floor(e/8),a=8-n,s=e+i-(r+1)*8;let o=8*(r+2)-(e+i);const l=(r+2)*8-e;if(o=Math.max(0,o),r>=t.length)return $T;let h=t[r]&Bn(2,8-n)-1;h<<=i-a;let u=h;if(r+1<t.length){let c=t[r+1]>>>o;c<<=Math.max(0,i-l),u+=c}if(s>8&&r+2<t.length){const c=(r+3)*8-(e+i),f=t[r+2]>>>c;u+=f}return u}function WT(t,e){for(let i=e.length-1;i>=0;i--)t.push(e[i]);return t}function MDe(t){const e=new Uint16Array(4093),i=new Uint8Array(4093);for(let d=0;d<=257;d++)e[d]=4096,i[d]=d;let n=258,r=MW,a=0;function s(){n=258,r=MW}function o(d){const v=BDe(d,a,r);return a+=r,v}function l(d,v){return i[n]=v,e[n]=d,n++,n-1}function h(d){const v=[];for(let A=d;A!==4096;A=e[A])v.push(i[A]);return v}const u=[];s();const c=new Uint8Array(t);let f=o(c),g;for(;f!==$T;){if(f===HT){for(s(),f=o(c);f===HT;)f=o(c);if(f===$T)break;if(f>HT)throw new Error(`corrupted code at scanline ${f}`);{const d=h(f);WT(u,d),g=f}}else if(f<n){const d=h(f);WT(u,d),l(g,d[d.length-1]),g=f}else{const d=h(g);if(!d)throw new Error(`Bogus entry. Not in dictionary, ${g} / ${n}, position: ${a}`);WT(u,d),u.push(d[d.length-1]),l(g,d[d.length-1]),g=f}n+1>=Bn(2,r)&&(r===bDe?g=void 0:r++),f=o(c)}return new Uint8Array(u)}class TDe extends Tl{decodeBlock(e){return MDe(e).buffer}}const RDe=Object.freeze(Object.defineProperty({__proto__:null,default:TDe},Symbol.toStringTag,{value:"Module"})),mA=new Int32Array([0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]),uy=4017,cy=799,fy=3406,gy=2276,dy=1567,Ay=3784,$c=5793,vy=2896;function TW(t,e){let i=0;const n=[];let r=16;for(;r>0&&!t[r-1];)--r;n.push({children:[],index:0});let a=n[0],s;for(let o=0;o<r;o++){for(let l=0;l<t[o];l++){for(a=n.pop(),a.children[a.index]=e[i];a.index>0;)a=n.pop();for(a.index++,n.push(a);n.length<=o;)n.push(s={children:[],index:0}),a.children[a.index]=s.children,a=s;i++}o+1<r&&(n.push(s={children:[],index:0}),a.children[a.index]=s.children,a=s)}return n[0].children}function DDe(t,e,i,n,r,a,s,o,l){const{mcusPerLine:h,progressive:u}=i,c=e;let f=e,g=0,d=0;function v(){if(d>0)return d--,g>>d&1;if(g=t[f++],g===255){const F=t[f++];if(F)throw new Error(`unexpected marker: ${(g<<8|F).toString(16)}`)}return d=7,g>>>7}function A(F){let U=F,G;for(;(G=v())!==null;){if(U=U[G],typeof U=="number")return U;if(typeof U!="object")throw new Error("invalid huffman sequence")}return null}function p(F){let U=F,G=0;for(;U>0;){const q=v();if(q===null)return;G=G<<1|q,--U}return G}function m(F){const U=p(F);return U>=1<<F-1?U:U+(-1<<F)+1}function y(F,U){const G=A(F.huffmanTableDC),q=G===0?0:m(G);F.pred+=q,U[0]=F.pred;let V=1;for(;V<64;){const j=A(F.huffmanTableAC),$=j&15,X=j>>4;if($===0){if(X<15)break;V+=16}else{V+=X;const K=mA[V];U[K]=m($),V++}}}function I(F,U){const G=A(F.huffmanTableDC),q=G===0?0:m(G)<<l;F.pred+=q,U[0]=F.pred}function _(F,U){U[0]|=v()<<l}let C=0;function x(F,U){if(C>0){C--;return}let G=a;const q=s;for(;G<=q;){const V=A(F.huffmanTableAC),j=V&15,$=V>>4;if(j===0){if($<15){C=p($)+(1<<$)-1;break}G+=16}else{G+=$;const X=mA[G];U[X]=m(j)*(1<<l),G++}}}let w=0,E;function S(F,U){let G=a;const q=s;let V=0;for(;G<=q;){const j=mA[G],$=U[j]<0?-1:1;switch(w){case 0:{const X=A(F.huffmanTableAC),K=X&15;if(V=X>>4,K===0)V<15?(C=p(V)+(1<<V),w=4):(V=16,w=1);else{if(K!==1)throw new Error("invalid ACn encoding");E=m(K),w=V?2:3}continue}case 1:case 2:U[j]?U[j]+=(v()<<l)*$:(V--,V===0&&(w=w===2?3:0));break;case 3:U[j]?U[j]+=(v()<<l)*$:(U[j]=E<<l,w=0);break;case 4:U[j]&&(U[j]+=(v()<<l)*$);break}G++}w===4&&(C--,C===0&&(w=0))}function b(F,U,G,q,V){const j=G/h|0,$=G%h,X=j*F.v+q,K=$*F.h+V;U(F,F.blocks[X][K])}function B(F,U,G){const q=G/F.blocksPerLine|0,V=G%F.blocksPerLine;U(F,F.blocks[q][V])}const M=n.length;let R,T,D,P,Q,N;u?a===0?N=o===0?I:_:N=o===0?x:S:N=y;let O=0,L,z;M===1?z=n[0].blocksPerLine*n[0].blocksPerColumn:z=h*i.mcusPerColumn;const k=r||z;for(;O<z;){for(T=0;T<M;T++)n[T].pred=0;if(C=0,M===1)for(R=n[0],Q=0;Q<k;Q++)B(R,N,O),O++;else for(Q=0;Q<k;Q++){for(T=0;T<M;T++){R=n[T];const{h:F,v:U}=R;for(D=0;D<U;D++)for(P=0;P<F;P++)b(R,N,O,D,P)}if(O++,O===z)break}if(d=0,L=t[f]<<8|t[f+1],L<65280)throw new Error("marker was not found");if(L>=65488&&L<=65495)f+=2;else break}return f-c}function LDe(t,e){const i=[],{blocksPerLine:n,blocksPerColumn:r}=e,a=n<<3,s=new Int32Array(64),o=new Uint8Array(64);function l(h,u,c){const f=e.quantizationTable;let g,d,v,A,p,m,y,I,_;const C=c;let x;for(x=0;x<64;x++)C[x]=h[x]*f[x];for(x=0;x<8;++x){const w=8*x;if(C[1+w]===0&&C[2+w]===0&&C[3+w]===0&&C[4+w]===0&&C[5+w]===0&&C[6+w]===0&&C[7+w]===0){_=$c*C[0+w]+512>>10,C[0+w]=_,C[1+w]=_,C[2+w]=_,C[3+w]=_,C[4+w]=_,C[5+w]=_,C[6+w]=_,C[7+w]=_;continue}g=$c*C[0+w]+128>>8,d=$c*C[4+w]+128>>8,v=C[2+w],A=C[6+w],p=vy*(C[1+w]-C[7+w])+128>>8,I=vy*(C[1+w]+C[7+w])+128>>8,m=C[3+w]<<4,y=C[5+w]<<4,_=g-d+1>>1,g=g+d+1>>1,d=_,_=v*Ay+A*dy+128>>8,v=v*dy-A*Ay+128>>8,A=_,_=p-y+1>>1,p=p+y+1>>1,y=_,_=I+m+1>>1,m=I-m+1>>1,I=_,_=g-A+1>>1,g=g+A+1>>1,A=_,_=d-v+1>>1,d=d+v+1>>1,v=_,_=p*gy+I*fy+2048>>12,p=p*fy-I*gy+2048>>12,I=_,_=m*cy+y*uy+2048>>12,m=m*uy-y*cy+2048>>12,y=_,C[0+w]=g+I,C[7+w]=g-I,C[1+w]=d+y,C[6+w]=d-y,C[2+w]=v+m,C[5+w]=v-m,C[3+w]=A+p,C[4+w]=A-p}for(x=0;x<8;++x){const w=x;if(C[1*8+w]===0&&C[2*8+w]===0&&C[3*8+w]===0&&C[4*8+w]===0&&C[5*8+w]===0&&C[6*8+w]===0&&C[7*8+w]===0){_=$c*c[x+0]+8192>>14,C[0*8+w]=_,C[1*8+w]=_,C[2*8+w]=_,C[3*8+w]=_,C[4*8+w]=_,C[5*8+w]=_,C[6*8+w]=_,C[7*8+w]=_;continue}g=$c*C[0*8+w]+2048>>12,d=$c*C[4*8+w]+2048>>12,v=C[2*8+w],A=C[6*8+w],p=vy*(C[1*8+w]-C[7*8+w])+2048>>12,I=vy*(C[1*8+w]+C[7*8+w])+2048>>12,m=C[3*8+w],y=C[5*8+w],_=g-d+1>>1,g=g+d+1>>1,d=_,_=v*Ay+A*dy+2048>>12,v=v*dy-A*Ay+2048>>12,A=_,_=p-y+1>>1,p=p+y+1>>1,y=_,_=I+m+1>>1,m=I-m+1>>1,I=_,_=g-A+1>>1,g=g+A+1>>1,A=_,_=d-v+1>>1,d=d+v+1>>1,v=_,_=p*gy+I*fy+2048>>12,p=p*fy-I*gy+2048>>12,I=_,_=m*cy+y*uy+2048>>12,m=m*uy-y*cy+2048>>12,y=_,C[0*8+w]=g+I,C[7*8+w]=g-I,C[1*8+w]=d+y,C[6*8+w]=d-y,C[2*8+w]=v+m,C[5*8+w]=v-m,C[3*8+w]=A+p,C[4*8+w]=A-p}for(x=0;x<64;++x){const w=128+(C[x]+8>>4);w<0?u[x]=0:w>255?u[x]=255:u[x]=w}}for(let h=0;h<r;h++){const u=h<<3;for(let c=0;c<8;c++)i.push(new Uint8Array(a));for(let c=0;c<n;c++){l(e.blocks[h][c],o,s);let f=0;const g=c<<3;for(let d=0;d<8;d++){const v=i[u+d];for(let A=0;A<8;A++)v[g+A]=o[f++]}}}return i}class PDe{constructor(){this.jfif=null,this.adobe=null,this.quantizationTables=[],this.huffmanTablesAC=[],this.huffmanTablesDC=[],this.resetFrames()}resetFrames(){this.frames=[]}parse(e){let i=0;function n(){const o=e[i]<<8|e[i+1];return i+=2,o}function r(){const o=n(),l=e.subarray(i,i+o-2);return i+=l.length,l}function a(o){let l=0,h=0,u,c;for(c in o.components)o.components.hasOwnProperty(c)&&(u=o.components[c],l<u.h&&(l=u.h),h<u.v&&(h=u.v));const f=Math.ceil(o.samplesPerLine/8/l),g=Math.ceil(o.scanLines/8/h);for(c in o.components)if(o.components.hasOwnProperty(c)){u=o.components[c];const d=Math.ceil(Math.ceil(o.samplesPerLine/8)*u.h/l),v=Math.ceil(Math.ceil(o.scanLines/8)*u.v/h),A=f*u.h,p=g*u.v,m=[];for(let y=0;y<p;y++){const I=[];for(let _=0;_<A;_++)I.push(new Int32Array(64));m.push(I)}u.blocksPerLine=d,u.blocksPerColumn=v,u.blocks=m}o.maxH=l,o.maxV=h,o.mcusPerLine=f,o.mcusPerColumn=g}let s=n();if(s!==65496)throw new Error("SOI not found");for(s=n();s!==65497;){switch(s){case 65280:break;case 65504:case 65505:case 65506:case 65507:case 65508:case 65509:case 65510:case 65511:case 65512:case 65513:case 65514:case 65515:case 65516:case 65517:case 65518:case 65519:case 65534:{const o=r();s===65504&&o[0]===74&&o[1]===70&&o[2]===73&&o[3]===70&&o[4]===0&&(this.jfif={version:{major:o[5],minor:o[6]},densityUnits:o[7],xDensity:o[8]<<8|o[9],yDensity:o[10]<<8|o[11],thumbWidth:o[12],thumbHeight:o[13],thumbData:o.subarray(14,14+3*o[12]*o[13])}),s===65518&&o[0]===65&&o[1]===100&&o[2]===111&&o[3]===98&&o[4]===101&&o[5]===0&&(this.adobe={version:o[6],flags0:o[7]<<8|o[8],flags1:o[9]<<8|o[10],transformCode:o[11]});break}case 65499:{const l=n()+i-2;for(;i<l;){const h=e[i++],u=new Int32Array(64);if(h>>4===0)for(let c=0;c<64;c++){const f=mA[c];u[f]=e[i++]}else if(h>>4===1)for(let c=0;c<64;c++){const f=mA[c];u[f]=n()}else throw new Error("DQT: invalid table spec");this.quantizationTables[h&15]=u}break}case 65472:case 65473:case 65474:{n();const o={extended:s===65473,progressive:s===65474,precision:e[i++],scanLines:n(),samplesPerLine:n(),components:{},componentsOrder:[]},l=e[i++];let h;for(let u=0;u<l;u++){h=e[i];const c=e[i+1]>>4,f=e[i+1]&15,g=e[i+2];o.componentsOrder.push(h),o.components[h]={h:c,v:f,quantizationIdx:g},i+=3}a(o),this.frames.push(o);break}case 65476:{const o=n();for(let l=2;l<o;){const h=e[i++],u=new Uint8Array(16);let c=0;for(let g=0;g<16;g++,i++)u[g]=e[i],c+=u[g];const f=new Uint8Array(c);for(let g=0;g<c;g++,i++)f[g]=e[i];l+=17+c,h>>4===0?this.huffmanTablesDC[h&15]=TW(u,f):this.huffmanTablesAC[h&15]=TW(u,f)}break}case 65501:n(),this.resetInterval=n();break;case 65498:{n();const o=e[i++],l=[],h=this.frames[0];for(let d=0;d<o;d++){const v=h.components[e[i++]],A=e[i++];v.huffmanTableDC=this.huffmanTablesDC[A>>4],v.huffmanTableAC=this.huffmanTablesAC[A&15],l.push(v)}const u=e[i++],c=e[i++],f=e[i++],g=DDe(e,i,h,l,this.resetInterval,u,c,f>>4,f&15);i+=g;break}case 65535:e[i]!==255&&i--;break;default:if(e[i-3]===255&&e[i-2]>=192&&e[i-2]<=254){i-=3;break}throw new Error(`unknown JPEG marker ${s.toString(16)}`)}s=n()}}getResult(){const{frames:e}=this;if(this.frames.length===0)throw new Error("no frames were decoded");this.frames.length>1;for(let u=0;u<this.frames.length;u++){const c=this.frames[u].components;for(const f of Object.keys(c))c[f].quantizationTable=this.quantizationTables[c[f].quantizationIdx],delete c[f].quantizationIdx}const i=e[0],{components:n,componentsOrder:r}=i,a=[],s=i.samplesPerLine,o=i.scanLines;for(let u=0;u<r.length;u++){const c=n[r[u]];a.push({lines:LDe(i,c),scaleX:c.h/i.maxH,scaleY:c.v/i.maxV})}const l=new Uint8Array(s*o*a.length);let h=0;for(let u=0;u<o;++u)for(let c=0;c<s;++c)for(let f=0;f<a.length;++f){const g=a[f];l[h]=g.lines[0|u*g.scaleY][0|c*g.scaleX],++h}return l}}class kDe extends Tl{constructor(e){super(),this.reader=new PDe,e.JPEGTables&&this.reader.parse(e.JPEGTables)}decodeBlock(e){return this.reader.resetFrames(),this.reader.parse(new Uint8Array(e)),this.reader.getResult().buffer}}const FDe=Object.freeze(Object.defineProperty({__proto__:null,default:kDe},Symbol.toStringTag,{value:"Module"}));/*! pako 2.1.0 https://github.com/nodeca/pako @license (MIT AND Zlib) */const QDe=4,RW=0,DW=1,zDe=2;function Wc(t){let e=t.length;for(;--e>=0;)t[e]=0}const ODe=0,LW=1,NDe=2,GDe=3,UDe=258,YT=29,yA=256,_A=yA+1+YT,Yc=30,ZT=19,PW=2*_A+1,hh=15,XT=16,qDe=7,KT=256,kW=16,FW=17,QW=18,JT=new Uint8Array([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]),py=new Uint8Array([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]),VDe=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),zW=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),jDe=512,Ks=new Array((_A+2)*2);Wc(Ks);const xA=new Array(Yc*2);Wc(xA);const IA=new Array(jDe);Wc(IA);const CA=new Array(UDe-GDe+1);Wc(CA);const eR=new Array(YT);Wc(eR);const my=new Array(Yc);Wc(my);function tR(t,e,i,n,r){this.static_tree=t,this.extra_bits=e,this.extra_base=i,this.elems=n,this.max_length=r,this.has_stree=t&&t.length}let OW,NW,GW;function iR(t,e){this.dyn_tree=t,this.max_code=0,this.stat_desc=e}const UW=t=>t<256?IA[t]:IA[256+(t>>>7)],wA=(t,e)=>{t.pending_buf[t.pending++]=e&255,t.pending_buf[t.pending++]=e>>>8&255},gr=(t,e,i)=>{t.bi_valid>XT-i?(t.bi_buf|=e<<t.bi_valid&65535,wA(t,t.bi_buf),t.bi_buf=e>>XT-t.bi_valid,t.bi_valid+=i-XT):(t.bi_buf|=e<<t.bi_valid&65535,t.bi_valid+=i)},hs=(t,e,i)=>{gr(t,i[e*2],i[e*2+1])},qW=(t,e)=>{let i=0;do i|=t&1,t>>>=1,i<<=1;while(--e>0);return i>>>1},HDe=t=>{t.bi_valid===16?(wA(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)},$De=(t,e)=>{const i=e.dyn_tree,n=e.max_code,r=e.stat_desc.static_tree,a=e.stat_desc.has_stree,s=e.stat_desc.extra_bits,o=e.stat_desc.extra_base,l=e.stat_desc.max_length;let h,u,c,f,g,d,v=0;for(f=0;f<=hh;f++)t.bl_count[f]=0;for(i[t.heap[t.heap_max]*2+1]=0,h=t.heap_max+1;h<PW;h++)u=t.heap[h],f=i[i[u*2+1]*2+1]+1,f>l&&(f=l,v++),i[u*2+1]=f,!(u>n)&&(t.bl_count[f]++,g=0,u>=o&&(g=s[u-o]),d=i[u*2],t.opt_len+=d*(f+g),a&&(t.static_len+=d*(r[u*2+1]+g)));if(v!==0){do{for(f=l-1;t.bl_count[f]===0;)f--;t.bl_count[f]--,t.bl_count[f+1]+=2,t.bl_count[l]--,v-=2}while(v>0);for(f=l;f!==0;f--)for(u=t.bl_count[f];u!==0;)c=t.heap[--h],!(c>n)&&(i[c*2+1]!==f&&(t.opt_len+=(f-i[c*2+1])*i[c*2],i[c*2+1]=f),u--)}},VW=(t,e,i)=>{const n=new Array(hh+1);let r=0,a,s;for(a=1;a<=hh;a++)r=r+i[a-1]<<1,n[a]=r;for(s=0;s<=e;s++){let o=t[s*2+1];o!==0&&(t[s*2]=qW(n[o]++,o))}},WDe=()=>{let t,e,i,n,r;const a=new Array(hh+1);for(i=0,n=0;n<YT-1;n++)for(eR[n]=i,t=0;t<1<<JT[n];t++)CA[i++]=n;for(CA[i-1]=n,r=0,n=0;n<16;n++)for(my[n]=r,t=0;t<1<<py[n];t++)IA[r++]=n;for(r>>=7;n<Yc;n++)for(my[n]=r<<7,t=0;t<1<<py[n]-7;t++)IA[256+r++]=n;for(e=0;e<=hh;e++)a[e]=0;for(t=0;t<=143;)Ks[t*2+1]=8,t++,a[8]++;for(;t<=255;)Ks[t*2+1]=9,t++,a[9]++;for(;t<=279;)Ks[t*2+1]=7,t++,a[7]++;for(;t<=287;)Ks[t*2+1]=8,t++,a[8]++;for(VW(Ks,_A+1,a),t=0;t<Yc;t++)xA[t*2+1]=5,xA[t*2]=qW(t,5);OW=new tR(Ks,JT,yA+1,_A,hh),NW=new tR(xA,py,0,Yc,hh),GW=new tR(new Array(0),VDe,0,ZT,qDe)},jW=t=>{let e;for(e=0;e<_A;e++)t.dyn_ltree[e*2]=0;for(e=0;e<Yc;e++)t.dyn_dtree[e*2]=0;for(e=0;e<ZT;e++)t.bl_tree[e*2]=0;t.dyn_ltree[KT*2]=1,t.opt_len=t.static_len=0,t.sym_next=t.matches=0},HW=t=>{t.bi_valid>8?wA(t,t.bi_buf):t.bi_valid>0&&(t.pending_buf[t.pending++]=t.bi_buf),t.bi_buf=0,t.bi_valid=0},$W=(t,e,i,n)=>{const r=e*2,a=i*2;return t[r]<t[a]||t[r]===t[a]&&n[e]<=n[i]},nR=(t,e,i)=>{const n=t.heap[i];let r=i<<1;for(;r<=t.heap_len&&(r<t.heap_len&&$W(e,t.heap[r+1],t.heap[r],t.depth)&&r++,!$W(e,n,t.heap[r],t.depth));)t.heap[i]=t.heap[r],i=r,r<<=1;t.heap[i]=n},WW=(t,e,i)=>{let n,r,a=0,s,o;if(t.sym_next!==0)do n=t.pending_buf[t.sym_buf+a++]&255,n+=(t.pending_buf[t.sym_buf+a++]&255)<<8,r=t.pending_buf[t.sym_buf+a++],n===0?hs(t,r,e):(s=CA[r],hs(t,s+yA+1,e),o=JT[s],o!==0&&(r-=eR[s],gr(t,r,o)),n--,s=UW(n),hs(t,s,i),o=py[s],o!==0&&(n-=my[s],gr(t,n,o)));while(a<t.sym_next);hs(t,KT,e)},rR=(t,e)=>{const i=e.dyn_tree,n=e.stat_desc.static_tree,r=e.stat_desc.has_stree,a=e.stat_desc.elems;let s,o,l=-1,h;for(t.heap_len=0,t.heap_max=PW,s=0;s<a;s++)i[s*2]!==0?(t.heap[++t.heap_len]=l=s,t.depth[s]=0):i[s*2+1]=0;for(;t.heap_len<2;)h=t.heap[++t.heap_len]=l<2?++l:0,i[h*2]=1,t.depth[h]=0,t.opt_len--,r&&(t.static_len-=n[h*2+1]);for(e.max_code=l,s=t.heap_len>>1;s>=1;s--)nR(t,i,s);h=a;do s=t.heap[1],t.heap[1]=t.heap[t.heap_len--],nR(t,i,1),o=t.heap[1],t.heap[--t.heap_max]=s,t.heap[--t.heap_max]=o,i[h*2]=i[s*2]+i[o*2],t.depth[h]=(t.depth[s]>=t.depth[o]?t.depth[s]:t.depth[o])+1,i[s*2+1]=i[o*2+1]=h,t.heap[1]=h++,nR(t,i,1);while(t.heap_len>=2);t.heap[--t.heap_max]=t.heap[1],$De(t,e),VW(i,l,t.bl_count)},YW=(t,e,i)=>{let n,r=-1,a,s=e[0*2+1],o=0,l=7,h=4;for(s===0&&(l=138,h=3),e[(i+1)*2+1]=65535,n=0;n<=i;n++)a=s,s=e[(n+1)*2+1],!(++o<l&&a===s)&&(o<h?t.bl_tree[a*2]+=o:a!==0?(a!==r&&t.bl_tree[a*2]++,t.bl_tree[kW*2]++):o<=10?t.bl_tree[FW*2]++:t.bl_tree[QW*2]++,o=0,r=a,s===0?(l=138,h=3):a===s?(l=6,h=3):(l=7,h=4))},ZW=(t,e,i)=>{let n,r=-1,a,s=e[0*2+1],o=0,l=7,h=4;for(s===0&&(l=138,h=3),n=0;n<=i;n++)if(a=s,s=e[(n+1)*2+1],!(++o<l&&a===s)){if(o<h)do hs(t,a,t.bl_tree);while(--o!==0);else a!==0?(a!==r&&(hs(t,a,t.bl_tree),o--),hs(t,kW,t.bl_tree),gr(t,o-3,2)):o<=10?(hs(t,FW,t.bl_tree),gr(t,o-3,3)):(hs(t,QW,t.bl_tree),gr(t,o-11,7));o=0,r=a,s===0?(l=138,h=3):a===s?(l=6,h=3):(l=7,h=4)}},YDe=t=>{let e;for(YW(t,t.dyn_ltree,t.l_desc.max_code),YW(t,t.dyn_dtree,t.d_desc.max_code),rR(t,t.bl_desc),e=ZT-1;e>=3&&t.bl_tree[zW[e]*2+1]===0;e--);return t.opt_len+=3*(e+1)+5+5+4,e},ZDe=(t,e,i,n)=>{let r;for(gr(t,e-257,5),gr(t,i-1,5),gr(t,n-4,4),r=0;r<n;r++)gr(t,t.bl_tree[zW[r]*2+1],3);ZW(t,t.dyn_ltree,e-1),ZW(t,t.dyn_dtree,i-1)},XDe=t=>{let e=4093624447,i;for(i=0;i<=31;i++,e>>>=1)if(e&1&&t.dyn_ltree[i*2]!==0)return RW;if(t.dyn_ltree[9*2]!==0||t.dyn_ltree[10*2]!==0||t.dyn_ltree[13*2]!==0)return DW;for(i=32;i<yA;i++)if(t.dyn_ltree[i*2]!==0)return DW;return RW};let XW=!1;const KDe=t=>{XW||(WDe(),XW=!0),t.l_desc=new iR(t.dyn_ltree,OW),t.d_desc=new iR(t.dyn_dtree,NW),t.bl_desc=new iR(t.bl_tree,GW),t.bi_buf=0,t.bi_valid=0,jW(t)},KW=(t,e,i,n)=>{gr(t,(ODe<<1)+(n?1:0),3),HW(t),wA(t,i),wA(t,~i),i&&t.pending_buf.set(t.window.subarray(e,e+i),t.pending),t.pending+=i},JDe=t=>{gr(t,LW<<1,3),hs(t,KT,Ks),HDe(t)},eLe=(t,e,i,n)=>{let r,a,s=0;t.level>0?(t.strm.data_type===zDe&&(t.strm.data_type=XDe(t)),rR(t,t.l_desc),rR(t,t.d_desc),s=YDe(t),r=t.opt_len+3+7>>>3,a=t.static_len+3+7>>>3,a<=r&&(r=a)):r=a=i+5,i+4<=r&&e!==-1?KW(t,e,i,n):t.strategy===QDe||a===r?(gr(t,(LW<<1)+(n?1:0),3),WW(t,Ks,xA)):(gr(t,(NDe<<1)+(n?1:0),3),ZDe(t,t.l_desc.max_code+1,t.d_desc.max_code+1,s+1),WW(t,t.dyn_ltree,t.dyn_dtree)),jW(t),n&&HW(t)},tLe=(t,e,i)=>(t.pending_buf[t.sym_buf+t.sym_next++]=e,t.pending_buf[t.sym_buf+t.sym_next++]=e>>8,t.pending_buf[t.sym_buf+t.sym_next++]=i,e===0?t.dyn_ltree[i*2]++:(t.matches++,e--,t.dyn_ltree[(CA[i]+yA+1)*2]++,t.dyn_dtree[UW(e)*2]++),t.sym_next===t.sym_end);var iLe=KDe,nLe=KW,rLe=eLe,aLe=tLe,sLe=JDe,oLe={_tr_init:iLe,_tr_stored_block:nLe,_tr_flush_block:rLe,_tr_tally:aLe,_tr_align:sLe},EA=(t,e,i,n)=>{let r=t&65535|0,a=t>>>16&65535|0,s=0;for(;i!==0;){s=i>2e3?2e3:i,i-=s;do r=r+e[n++]|0,a=a+r|0;while(--s);r%=65521,a%=65521}return r|a<<16|0};const lLe=()=>{let t,e=[];for(var i=0;i<256;i++){t=i;for(var n=0;n<8;n++)t=t&1?3988292384^t>>>1:t>>>1;e[i]=t}return e},hLe=new Uint32Array(lLe());var fn=(t,e,i,n)=>{const r=hLe,a=n+i;t^=-1;for(let s=n;s<a;s++)t=t>>>8^r[(t^e[s])&255];return t^-1},Zc={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"},SA={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_MEM_ERROR:-4,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};const{_tr_init:uLe,_tr_stored_block:aR,_tr_flush_block:cLe,_tr_tally:nl,_tr_align:fLe}=oLe,{Z_NO_FLUSH:rl,Z_PARTIAL_FLUSH:gLe,Z_FULL_FLUSH:dLe,Z_FINISH:Zr,Z_BLOCK:JW,Z_OK:Sn,Z_STREAM_END:eY,Z_STREAM_ERROR:us,Z_DATA_ERROR:ALe,Z_BUF_ERROR:sR,Z_DEFAULT_COMPRESSION:vLe,Z_FILTERED:pLe,Z_HUFFMAN_ONLY:yy,Z_RLE:mLe,Z_FIXED:yLe,Z_DEFAULT_STRATEGY:_Le,Z_UNKNOWN:xLe,Z_DEFLATED:_y}=SA,ILe=9,CLe=15,wLe=8,ELe=29,oR=256+1+ELe,SLe=30,bLe=19,BLe=2*oR+1,MLe=15,Rt=3,al=258,cs=al+Rt+1,TLe=32,Xc=42,lR=57,hR=69,uR=73,cR=91,fR=103,uh=113,bA=666,Zn=1,Kc=2,ch=3,Jc=4,RLe=3,fh=(t,e)=>(t.msg=Zc[e],e),tY=t=>t*2-(t>4?9:0),sl=t=>{let e=t.length;for(;--e>=0;)t[e]=0},DLe=t=>{let e,i,n,r=t.w_size;e=t.hash_size,n=e;do i=t.head[--n],t.head[n]=i>=r?i-r:0;while(--e);e=r,n=e;do i=t.prev[--n],t.prev[n]=i>=r?i-r:0;while(--e)};let ol=(t,e,i)=>(e<<t.hash_shift^i)&t.hash_mask;const Rr=t=>{const e=t.state;let i=e.pending;i>t.avail_out&&(i=t.avail_out),i!==0&&(t.output.set(e.pending_buf.subarray(e.pending_out,e.pending_out+i),t.next_out),t.next_out+=i,e.pending_out+=i,t.total_out+=i,t.avail_out-=i,e.pending-=i,e.pending===0&&(e.pending_out=0))},Dr=(t,e)=>{cLe(t,t.block_start>=0?t.block_start:-1,t.strstart-t.block_start,e),t.block_start=t.strstart,Rr(t.strm)},Gt=(t,e)=>{t.pending_buf[t.pending++]=e},BA=(t,e)=>{t.pending_buf[t.pending++]=e>>>8&255,t.pending_buf[t.pending++]=e&255},gR=(t,e,i,n)=>{let r=t.avail_in;return r>n&&(r=n),r===0?0:(t.avail_in-=r,e.set(t.input.subarray(t.next_in,t.next_in+r),i),t.state.wrap===1?t.adler=EA(t.adler,e,r,i):t.state.wrap===2&&(t.adler=fn(t.adler,e,r,i)),t.next_in+=r,t.total_in+=r,r)},iY=(t,e)=>{let i=t.max_chain_length,n=t.strstart,r,a,s=t.prev_length,o=t.nice_match;const l=t.strstart>t.w_size-cs?t.strstart-(t.w_size-cs):0,h=t.window,u=t.w_mask,c=t.prev,f=t.strstart+al;let g=h[n+s-1],d=h[n+s];t.prev_length>=t.good_match&&(i>>=2),o>t.lookahead&&(o=t.lookahead);do if(r=e,!(h[r+s]!==d||h[r+s-1]!==g||h[r]!==h[n]||h[++r]!==h[n+1])){n+=2,r++;do;while(h[++n]===h[++r]&&h[++n]===h[++r]&&h[++n]===h[++r]&&h[++n]===h[++r]&&h[++n]===h[++r]&&h[++n]===h[++r]&&h[++n]===h[++r]&&h[++n]===h[++r]&&n<f);if(a=al-(f-n),n=f-al,a>s){if(t.match_start=e,s=a,a>=o)break;g=h[n+s-1],d=h[n+s]}}while((e=c[e&u])>l&&--i!==0);return s<=t.lookahead?s:t.lookahead},ef=t=>{const e=t.w_size;let i,n,r;do{if(n=t.window_size-t.lookahead-t.strstart,t.strstart>=e+(e-cs)&&(t.window.set(t.window.subarray(e,e+e-n),0),t.match_start-=e,t.strstart-=e,t.block_start-=e,t.insert>t.strstart&&(t.insert=t.strstart),DLe(t),n+=e),t.strm.avail_in===0)break;if(i=gR(t.strm,t.window,t.strstart+t.lookahead,n),t.lookahead+=i,t.lookahead+t.insert>=Rt)for(r=t.strstart-t.insert,t.ins_h=t.window[r],t.ins_h=ol(t,t.ins_h,t.window[r+1]);t.insert&&(t.ins_h=ol(t,t.ins_h,t.window[r+Rt-1]),t.prev[r&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=r,r++,t.insert--,!(t.lookahead+t.insert<Rt)););}while(t.lookahead<cs&&t.strm.avail_in!==0)},nY=(t,e)=>{let i=t.pending_buf_size-5>t.w_size?t.w_size:t.pending_buf_size-5,n,r,a,s=0,o=t.strm.avail_in;do{if(n=65535,a=t.bi_valid+42>>3,t.strm.avail_out<a||(a=t.strm.avail_out-a,r=t.strstart-t.block_start,n>r+t.strm.avail_in&&(n=r+t.strm.avail_in),n>a&&(n=a),n<i&&(n===0&&e!==Zr||e===rl||n!==r+t.strm.avail_in)))break;s=e===Zr&&n===r+t.strm.avail_in?1:0,aR(t,0,0,s),t.pending_buf[t.pending-4]=n,t.pending_buf[t.pending-3]=n>>8,t.pending_buf[t.pending-2]=~n,t.pending_buf[t.pending-1]=~n>>8,Rr(t.strm),r&&(r>n&&(r=n),t.strm.output.set(t.window.subarray(t.block_start,t.block_start+r),t.strm.next_out),t.strm.next_out+=r,t.strm.avail_out-=r,t.strm.total_out+=r,t.block_start+=r,n-=r),n&&(gR(t.strm,t.strm.output,t.strm.next_out,n),t.strm.next_out+=n,t.strm.avail_out-=n,t.strm.total_out+=n)}while(s===0);return o-=t.strm.avail_in,o&&(o>=t.w_size?(t.matches=2,t.window.set(t.strm.input.subarray(t.strm.next_in-t.w_size,t.strm.next_in),0),t.strstart=t.w_size,t.insert=t.strstart):(t.window_size-t.strstart<=o&&(t.strstart-=t.w_size,t.window.set(t.window.subarray(t.w_size,t.w_size+t.strstart),0),t.matches<2&&t.matches++,t.insert>t.strstart&&(t.insert=t.strstart)),t.window.set(t.strm.input.subarray(t.strm.next_in-o,t.strm.next_in),t.strstart),t.strstart+=o,t.insert+=o>t.w_size-t.insert?t.w_size-t.insert:o),t.block_start=t.strstart),t.high_water<t.strstart&&(t.high_water=t.strstart),s?Jc:e!==rl&&e!==Zr&&t.strm.avail_in===0&&t.strstart===t.block_start?Kc:(a=t.window_size-t.strstart,t.strm.avail_in>a&&t.block_start>=t.w_size&&(t.block_start-=t.w_size,t.strstart-=t.w_size,t.window.set(t.window.subarray(t.w_size,t.w_size+t.strstart),0),t.matches<2&&t.matches++,a+=t.w_size,t.insert>t.strstart&&(t.insert=t.strstart)),a>t.strm.avail_in&&(a=t.strm.avail_in),a&&(gR(t.strm,t.window,t.strstart,a),t.strstart+=a,t.insert+=a>t.w_size-t.insert?t.w_size-t.insert:a),t.high_water<t.strstart&&(t.high_water=t.strstart),a=t.bi_valid+42>>3,a=t.pending_buf_size-a>65535?65535:t.pending_buf_size-a,i=a>t.w_size?t.w_size:a,r=t.strstart-t.block_start,(r>=i||(r||e===Zr)&&e!==rl&&t.strm.avail_in===0&&r<=a)&&(n=r>a?a:r,s=e===Zr&&t.strm.avail_in===0&&n===r?1:0,aR(t,t.block_start,n,s),t.block_start+=n,Rr(t.strm)),s?ch:Zn)},dR=(t,e)=>{let i,n;for(;;){if(t.lookahead<cs){if(ef(t),t.lookahead<cs&&e===rl)return Zn;if(t.lookahead===0)break}if(i=0,t.lookahead>=Rt&&(t.ins_h=ol(t,t.ins_h,t.window[t.strstart+Rt-1]),i=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),i!==0&&t.strstart-i<=t.w_size-cs&&(t.match_length=iY(t,i)),t.match_length>=Rt)if(n=nl(t,t.strstart-t.match_start,t.match_length-Rt),t.lookahead-=t.match_length,t.match_length<=t.max_lazy_match&&t.lookahead>=Rt){t.match_length--;do t.strstart++,t.ins_h=ol(t,t.ins_h,t.window[t.strstart+Rt-1]),i=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=ol(t,t.ins_h,t.window[t.strstart+1]);else n=nl(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++;if(n&&(Dr(t,!1),t.strm.avail_out===0))return Zn}return t.insert=t.strstart<Rt-1?t.strstart:Rt-1,e===Zr?(Dr(t,!0),t.strm.avail_out===0?ch:Jc):t.sym_next&&(Dr(t,!1),t.strm.avail_out===0)?Zn:Kc},tf=(t,e)=>{let i,n,r;for(;;){if(t.lookahead<cs){if(ef(t),t.lookahead<cs&&e===rl)return Zn;if(t.lookahead===0)break}if(i=0,t.lookahead>=Rt&&(t.ins_h=ol(t,t.ins_h,t.window[t.strstart+Rt-1]),i=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=Rt-1,i!==0&&t.prev_length<t.max_lazy_match&&t.strstart-i<=t.w_size-cs&&(t.match_length=iY(t,i),t.match_length<=5&&(t.strategy===pLe||t.match_length===Rt&&t.strstart-t.match_start>4096)&&(t.match_length=Rt-1)),t.prev_length>=Rt&&t.match_length<=t.prev_length){r=t.strstart+t.lookahead-Rt,n=nl(t,t.strstart-1-t.prev_match,t.prev_length-Rt),t.lookahead-=t.prev_length-1,t.prev_length-=2;do++t.strstart<=r&&(t.ins_h=ol(t,t.ins_h,t.window[t.strstart+Rt-1]),i=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=Rt-1,t.strstart++,n&&(Dr(t,!1),t.strm.avail_out===0))return Zn}else if(t.match_available){if(n=nl(t,0,t.window[t.strstart-1]),n&&Dr(t,!1),t.strstart++,t.lookahead--,t.strm.avail_out===0)return Zn}else t.match_available=1,t.strstart++,t.lookahead--}return t.match_available&&(n=nl(t,0,t.window[t.strstart-1]),t.match_available=0),t.insert=t.strstart<Rt-1?t.strstart:Rt-1,e===Zr?(Dr(t,!0),t.strm.avail_out===0?ch:Jc):t.sym_next&&(Dr(t,!1),t.strm.avail_out===0)?Zn:Kc},LLe=(t,e)=>{let i,n,r,a;const s=t.window;for(;;){if(t.lookahead<=al){if(ef(t),t.lookahead<=al&&e===rl)return Zn;if(t.lookahead===0)break}if(t.match_length=0,t.lookahead>=Rt&&t.strstart>0&&(r=t.strstart-1,n=s[r],n===s[++r]&&n===s[++r]&&n===s[++r])){a=t.strstart+al;do;while(n===s[++r]&&n===s[++r]&&n===s[++r]&&n===s[++r]&&n===s[++r]&&n===s[++r]&&n===s[++r]&&n===s[++r]&&r<a);t.match_length=al-(a-r),t.match_length>t.lookahead&&(t.match_length=t.lookahead)}if(t.match_length>=Rt?(i=nl(t,1,t.match_length-Rt),t.lookahead-=t.match_length,t.strstart+=t.match_length,t.match_length=0):(i=nl(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++),i&&(Dr(t,!1),t.strm.avail_out===0))return Zn}return t.insert=0,e===Zr?(Dr(t,!0),t.strm.avail_out===0?ch:Jc):t.sym_next&&(Dr(t,!1),t.strm.avail_out===0)?Zn:Kc},PLe=(t,e)=>{let i;for(;;){if(t.lookahead===0&&(ef(t),t.lookahead===0)){if(e===rl)return Zn;break}if(t.match_length=0,i=nl(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++,i&&(Dr(t,!1),t.strm.avail_out===0))return Zn}return t.insert=0,e===Zr?(Dr(t,!0),t.strm.avail_out===0?ch:Jc):t.sym_next&&(Dr(t,!1),t.strm.avail_out===0)?Zn:Kc};function fs(t,e,i,n,r){this.good_length=t,this.max_lazy=e,this.nice_length=i,this.max_chain=n,this.func=r}const MA=[new fs(0,0,0,0,nY),new fs(4,4,8,4,dR),new fs(4,5,16,8,dR),new fs(4,6,32,32,dR),new fs(4,4,16,16,tf),new fs(8,16,32,32,tf),new fs(8,16,128,128,tf),new fs(8,32,128,256,tf),new fs(32,128,258,1024,tf),new fs(32,258,258,4096,tf)],kLe=t=>{t.window_size=2*t.w_size,sl(t.head),t.max_lazy_match=MA[t.level].max_lazy,t.good_match=MA[t.level].good_length,t.nice_match=MA[t.level].nice_length,t.max_chain_length=MA[t.level].max_chain,t.strstart=0,t.block_start=0,t.lookahead=0,t.insert=0,t.match_length=t.prev_length=Rt-1,t.match_available=0,t.ins_h=0};function FLe(){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=_y,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 Uint16Array(BLe*2),this.dyn_dtree=new Uint16Array((2*SLe+1)*2),this.bl_tree=new Uint16Array((2*bLe+1)*2),sl(this.dyn_ltree),sl(this.dyn_dtree),sl(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(MLe+1),this.heap=new Uint16Array(2*oR+1),sl(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(2*oR+1),sl(this.depth),this.sym_buf=0,this.lit_bufsize=0,this.sym_next=0,this.sym_end=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}const TA=t=>{if(!t)return 1;const e=t.state;return!e||e.strm!==t||e.status!==Xc&&e.status!==lR&&e.status!==hR&&e.status!==uR&&e.status!==cR&&e.status!==fR&&e.status!==uh&&e.status!==bA?1:0},rY=t=>{if(TA(t))return fh(t,us);t.total_in=t.total_out=0,t.data_type=xLe;const e=t.state;return e.pending=0,e.pending_out=0,e.wrap<0&&(e.wrap=-e.wrap),e.status=e.wrap===2?lR:e.wrap?Xc:uh,t.adler=e.wrap===2?0:1,e.last_flush=-2,uLe(e),Sn},aY=t=>{const e=rY(t);return e===Sn&&kLe(t.state),e},QLe=(t,e)=>TA(t)||t.state.wrap!==2?us:(t.state.gzhead=e,Sn),sY=(t,e,i,n,r,a)=>{if(!t)return us;let s=1;if(e===vLe&&(e=6),n<0?(s=0,n=-n):n>15&&(s=2,n-=16),r<1||r>ILe||i!==_y||n<8||n>15||e<0||e>9||a<0||a>yLe||n===8&&s!==1)return fh(t,us);n===8&&(n=9);const o=new FLe;return t.state=o,o.strm=t,o.status=Xc,o.wrap=s,o.gzhead=null,o.w_bits=n,o.w_size=1<<o.w_bits,o.w_mask=o.w_size-1,o.hash_bits=r+7,o.hash_size=1<<o.hash_bits,o.hash_mask=o.hash_size-1,o.hash_shift=~~((o.hash_bits+Rt-1)/Rt),o.window=new Uint8Array(o.w_size*2),o.head=new Uint16Array(o.hash_size),o.prev=new Uint16Array(o.w_size),o.lit_bufsize=1<<r+6,o.pending_buf_size=o.lit_bufsize*4,o.pending_buf=new Uint8Array(o.pending_buf_size),o.sym_buf=o.lit_bufsize,o.sym_end=(o.lit_bufsize-1)*3,o.level=e,o.strategy=a,o.method=i,aY(t)},zLe=(t,e)=>sY(t,e,_y,CLe,wLe,_Le),OLe=(t,e)=>{if(TA(t)||e>JW||e<0)return t?fh(t,us):us;const i=t.state;if(!t.output||t.avail_in!==0&&!t.input||i.status===bA&&e!==Zr)return fh(t,t.avail_out===0?sR:us);const n=i.last_flush;if(i.last_flush=e,i.pending!==0){if(Rr(t),t.avail_out===0)return i.last_flush=-1,Sn}else if(t.avail_in===0&&tY(e)<=tY(n)&&e!==Zr)return fh(t,sR);if(i.status===bA&&t.avail_in!==0)return fh(t,sR);if(i.status===Xc&&i.wrap===0&&(i.status=uh),i.status===Xc){let r=_y+(i.w_bits-8<<4)<<8,a=-1;if(i.strategy>=yy||i.level<2?a=0:i.level<6?a=1:i.level===6?a=2:a=3,r|=a<<6,i.strstart!==0&&(r|=TLe),r+=31-r%31,BA(i,r),i.strstart!==0&&(BA(i,t.adler>>>16),BA(i,t.adler&65535)),t.adler=1,i.status=uh,Rr(t),i.pending!==0)return i.last_flush=-1,Sn}if(i.status===lR){if(t.adler=0,Gt(i,31),Gt(i,139),Gt(i,8),i.gzhead)Gt(i,(i.gzhead.text?1:0)+(i.gzhead.hcrc?2:0)+(i.gzhead.extra?4:0)+(i.gzhead.name?8:0)+(i.gzhead.comment?16:0)),Gt(i,i.gzhead.time&255),Gt(i,i.gzhead.time>>8&255),Gt(i,i.gzhead.time>>16&255),Gt(i,i.gzhead.time>>24&255),Gt(i,i.level===9?2:i.strategy>=yy||i.level<2?4:0),Gt(i,i.gzhead.os&255),i.gzhead.extra&&i.gzhead.extra.length&&(Gt(i,i.gzhead.extra.length&255),Gt(i,i.gzhead.extra.length>>8&255)),i.gzhead.hcrc&&(t.adler=fn(t.adler,i.pending_buf,i.pending,0)),i.gzindex=0,i.status=hR;else if(Gt(i,0),Gt(i,0),Gt(i,0),Gt(i,0),Gt(i,0),Gt(i,i.level===9?2:i.strategy>=yy||i.level<2?4:0),Gt(i,RLe),i.status=uh,Rr(t),i.pending!==0)return i.last_flush=-1,Sn}if(i.status===hR){if(i.gzhead.extra){let r=i.pending,a=(i.gzhead.extra.length&65535)-i.gzindex;for(;i.pending+a>i.pending_buf_size;){let o=i.pending_buf_size-i.pending;if(i.pending_buf.set(i.gzhead.extra.subarray(i.gzindex,i.gzindex+o),i.pending),i.pending=i.pending_buf_size,i.gzhead.hcrc&&i.pending>r&&(t.adler=fn(t.adler,i.pending_buf,i.pending-r,r)),i.gzindex+=o,Rr(t),i.pending!==0)return i.last_flush=-1,Sn;r=0,a-=o}let s=new Uint8Array(i.gzhead.extra);i.pending_buf.set(s.subarray(i.gzindex,i.gzindex+a),i.pending),i.pending+=a,i.gzhead.hcrc&&i.pending>r&&(t.adler=fn(t.adler,i.pending_buf,i.pending-r,r)),i.gzindex=0}i.status=uR}if(i.status===uR){if(i.gzhead.name){let r=i.pending,a;do{if(i.pending===i.pending_buf_size){if(i.gzhead.hcrc&&i.pending>r&&(t.adler=fn(t.adler,i.pending_buf,i.pending-r,r)),Rr(t),i.pending!==0)return i.last_flush=-1,Sn;r=0}i.gzindex<i.gzhead.name.length?a=i.gzhead.name.charCodeAt(i.gzindex++)&255:a=0,Gt(i,a)}while(a!==0);i.gzhead.hcrc&&i.pending>r&&(t.adler=fn(t.adler,i.pending_buf,i.pending-r,r)),i.gzindex=0}i.status=cR}if(i.status===cR){if(i.gzhead.comment){let r=i.pending,a;do{if(i.pending===i.pending_buf_size){if(i.gzhead.hcrc&&i.pending>r&&(t.adler=fn(t.adler,i.pending_buf,i.pending-r,r)),Rr(t),i.pending!==0)return i.last_flush=-1,Sn;r=0}i.gzindex<i.gzhead.comment.length?a=i.gzhead.comment.charCodeAt(i.gzindex++)&255:a=0,Gt(i,a)}while(a!==0);i.gzhead.hcrc&&i.pending>r&&(t.adler=fn(t.adler,i.pending_buf,i.pending-r,r))}i.status=fR}if(i.status===fR){if(i.gzhead.hcrc){if(i.pending+2>i.pending_buf_size&&(Rr(t),i.pending!==0))return i.last_flush=-1,Sn;Gt(i,t.adler&255),Gt(i,t.adler>>8&255),t.adler=0}if(i.status=uh,Rr(t),i.pending!==0)return i.last_flush=-1,Sn}if(t.avail_in!==0||i.lookahead!==0||e!==rl&&i.status!==bA){let r=i.level===0?nY(i,e):i.strategy===yy?PLe(i,e):i.strategy===mLe?LLe(i,e):MA[i.level].func(i,e);if((r===ch||r===Jc)&&(i.status=bA),r===Zn||r===ch)return t.avail_out===0&&(i.last_flush=-1),Sn;if(r===Kc&&(e===gLe?fLe(i):e!==JW&&(aR(i,0,0,!1),e===dLe&&(sl(i.head),i.lookahead===0&&(i.strstart=0,i.block_start=0,i.insert=0))),Rr(t),t.avail_out===0))return i.last_flush=-1,Sn}return e!==Zr?Sn:i.wrap<=0?eY:(i.wrap===2?(Gt(i,t.adler&255),Gt(i,t.adler>>8&255),Gt(i,t.adler>>16&255),Gt(i,t.adler>>24&255),Gt(i,t.total_in&255),Gt(i,t.total_in>>8&255),Gt(i,t.total_in>>16&255),Gt(i,t.total_in>>24&255)):(BA(i,t.adler>>>16),BA(i,t.adler&65535)),Rr(t),i.wrap>0&&(i.wrap=-i.wrap),i.pending!==0?Sn:eY)},NLe=t=>{if(TA(t))return us;const e=t.state.status;return t.state=null,e===uh?fh(t,ALe):Sn},GLe=(t,e)=>{let i=e.length;if(TA(t))return us;const n=t.state,r=n.wrap;if(r===2||r===1&&n.status!==Xc||n.lookahead)return us;if(r===1&&(t.adler=EA(t.adler,e,i,0)),n.wrap=0,i>=n.w_size){r===0&&(sl(n.head),n.strstart=0,n.block_start=0,n.insert=0);let l=new Uint8Array(n.w_size);l.set(e.subarray(i-n.w_size,i),0),e=l,i=n.w_size}const a=t.avail_in,s=t.next_in,o=t.input;for(t.avail_in=i,t.next_in=0,t.input=e,ef(n);n.lookahead>=Rt;){let l=n.strstart,h=n.lookahead-(Rt-1);do n.ins_h=ol(n,n.ins_h,n.window[l+Rt-1]),n.prev[l&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=l,l++;while(--h);n.strstart=l,n.lookahead=Rt-1,ef(n)}return n.strstart+=n.lookahead,n.block_start=n.strstart,n.insert=n.lookahead,n.lookahead=0,n.match_length=n.prev_length=Rt-1,n.match_available=0,t.next_in=s,t.input=o,t.avail_in=a,n.wrap=r,Sn};var ULe=zLe,qLe=sY,VLe=aY,jLe=rY,HLe=QLe,$Le=OLe,WLe=NLe,YLe=GLe,ZLe="pako deflate (from Nodeca project)",RA={deflateInit:ULe,deflateInit2:qLe,deflateReset:VLe,deflateResetKeep:jLe,deflateSetHeader:HLe,deflate:$Le,deflateEnd:WLe,deflateSetDictionary:YLe,deflateInfo:ZLe};const XLe=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var KLe=function(t){const e=Array.prototype.slice.call(arguments,1);for(;e.length;){const i=e.shift();if(!!i){if(typeof i!="object")throw new TypeError(i+"must be non-object");for(const n in i)XLe(i,n)&&(t[n]=i[n])}}return t},JLe=t=>{let e=0;for(let n=0,r=t.length;n<r;n++)e+=t[n].length;const i=new Uint8Array(e);for(let n=0,r=0,a=t.length;n<a;n++){let s=t[n];i.set(s,r),r+=s.length}return i},xy={assign:KLe,flattenChunks:JLe};let oY=!0;try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(t){oY=!1}const DA=new Uint8Array(256);for(let t=0;t<256;t++)DA[t]=t>=252?6:t>=248?5:t>=240?4:t>=224?3:t>=192?2:1;DA[254]=DA[254]=1;var ePe=t=>{if(typeof TextEncoder=="function"&&TextEncoder.prototype.encode)return new TextEncoder().encode(t);let e,i,n,r,a,s=t.length,o=0;for(r=0;r<s;r++)i=t.charCodeAt(r),(i&64512)===55296&&r+1<s&&(n=t.charCodeAt(r+1),(n&64512)===56320&&(i=65536+(i-55296<<10)+(n-56320),r++)),o+=i<128?1:i<2048?2:i<65536?3:4;for(e=new Uint8Array(o),a=0,r=0;a<o;r++)i=t.charCodeAt(r),(i&64512)===55296&&r+1<s&&(n=t.charCodeAt(r+1),(n&64512)===56320&&(i=65536+(i-55296<<10)+(n-56320),r++)),i<128?e[a++]=i:i<2048?(e[a++]=192|i>>>6,e[a++]=128|i&63):i<65536?(e[a++]=224|i>>>12,e[a++]=128|i>>>6&63,e[a++]=128|i&63):(e[a++]=240|i>>>18,e[a++]=128|i>>>12&63,e[a++]=128|i>>>6&63,e[a++]=128|i&63);return e};const tPe=(t,e)=>{if(e<65534&&t.subarray&&oY)return String.fromCharCode.apply(null,t.length===e?t:t.subarray(0,e));let i="";for(let n=0;n<e;n++)i+=String.fromCharCode(t[n]);return i};var iPe=(t,e)=>{const i=e||t.length;if(typeof TextDecoder=="function"&&TextDecoder.prototype.decode)return new TextDecoder().decode(t.subarray(0,e));let n,r;const a=new Array(i*2);for(r=0,n=0;n<i;){let s=t[n++];if(s<128){a[r++]=s;continue}let o=DA[s];if(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 tPe(a,r)},nPe=(t,e)=>{e=e||t.length,e>t.length&&(e=t.length);let i=e-1;for(;i>=0&&(t[i]&192)===128;)i--;return i<0||i===0?e:i+DA[t[i]]>e?i:e},LA={string2buf:ePe,buf2string:iPe,utf8border:nPe};function rPe(){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}var lY=rPe;const hY=Object.prototype.toString,{Z_NO_FLUSH:aPe,Z_SYNC_FLUSH:sPe,Z_FULL_FLUSH:oPe,Z_FINISH:lPe,Z_OK:Iy,Z_STREAM_END:hPe,Z_DEFAULT_COMPRESSION:uPe,Z_DEFAULT_STRATEGY:cPe,Z_DEFLATED:fPe}=SA;function AR(t){this.options=xy.assign({level:uPe,method:fPe,chunkSize:16384,windowBits:15,memLevel:8,strategy:cPe},t||{});let 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 lY,this.strm.avail_out=0;let i=RA.deflateInit2(this.strm,e.level,e.method,e.windowBits,e.memLevel,e.strategy);if(i!==Iy)throw new Error(Zc[i]);if(e.header&&RA.deflateSetHeader(this.strm,e.header),e.dictionary){let n;if(typeof e.dictionary=="string"?n=LA.string2buf(e.dictionary):hY.call(e.dictionary)==="[object ArrayBuffer]"?n=new Uint8Array(e.dictionary):n=e.dictionary,i=RA.deflateSetDictionary(this.strm,n),i!==Iy)throw new Error(Zc[i]);this._dict_set=!0}}AR.prototype.push=function(t,e){const i=this.strm,n=this.options.chunkSize;let r,a;if(this.ended)return!1;for(e===~~e?a=e:a=e===!0?lPe:aPe,typeof t=="string"?i.input=LA.string2buf(t):hY.call(t)==="[object ArrayBuffer]"?i.input=new Uint8Array(t):i.input=t,i.next_in=0,i.avail_in=i.input.length;;){if(i.avail_out===0&&(i.output=new Uint8Array(n),i.next_out=0,i.avail_out=n),(a===sPe||a===oPe)&&i.avail_out<=6){this.onData(i.output.subarray(0,i.next_out)),i.avail_out=0;continue}if(r=RA.deflate(i,a),r===hPe)return i.next_out>0&&this.onData(i.output.subarray(0,i.next_out)),r=RA.deflateEnd(this.strm),this.onEnd(r),this.ended=!0,r===Iy;if(i.avail_out===0){this.onData(i.output);continue}if(a>0&&i.next_out>0){this.onData(i.output.subarray(0,i.next_out)),i.avail_out=0;continue}if(i.avail_in===0)break}return!0},AR.prototype.onData=function(t){this.chunks.push(t)},AR.prototype.onEnd=function(t){t===Iy&&(this.result=xy.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};const Cy=16209,gPe=16191;var dPe=function(e,i){let n,r,a,s,o,l,h,u,c,f,g,d,v,A,p,m,y,I,_,C,x,w,E,S;const b=e.state;n=e.next_in,E=e.input,r=n+(e.avail_in-5),a=e.next_out,S=e.output,s=a-(i-e.avail_out),o=a+(e.avail_out-257),l=b.dmax,h=b.wsize,u=b.whave,c=b.wnext,f=b.window,g=b.hold,d=b.bits,v=b.lencode,A=b.distcode,p=(1<<b.lenbits)-1,m=(1<<b.distbits)-1;e:do{d<15&&(g+=E[n++]<<d,d+=8,g+=E[n++]<<d,d+=8),y=v[g&p];t:for(;;){if(I=y>>>24,g>>>=I,d-=I,I=y>>>16&255,I===0)S[a++]=y&65535;else if(I&16){_=y&65535,I&=15,I&&(d<I&&(g+=E[n++]<<d,d+=8),_+=g&(1<<I)-1,g>>>=I,d-=I),d<15&&(g+=E[n++]<<d,d+=8,g+=E[n++]<<d,d+=8),y=A[g&m];i:for(;;){if(I=y>>>24,g>>>=I,d-=I,I=y>>>16&255,I&16){if(C=y&65535,I&=15,d<I&&(g+=E[n++]<<d,d+=8,d<I&&(g+=E[n++]<<d,d+=8)),C+=g&(1<<I)-1,C>l){e.msg="invalid distance too far back",b.mode=Cy;break e}if(g>>>=I,d-=I,I=a-s,C>I){if(I=C-I,I>u&&b.sane){e.msg="invalid distance too far back",b.mode=Cy;break e}if(x=0,w=f,c===0){if(x+=h-I,I<_){_-=I;do S[a++]=f[x++];while(--I);x=a-C,w=S}}else if(c<I){if(x+=h+c-I,I-=c,I<_){_-=I;do S[a++]=f[x++];while(--I);if(x=0,c<_){I=c,_-=I;do S[a++]=f[x++];while(--I);x=a-C,w=S}}}else if(x+=c-I,I<_){_-=I;do S[a++]=f[x++];while(--I);x=a-C,w=S}for(;_>2;)S[a++]=w[x++],S[a++]=w[x++],S[a++]=w[x++],_-=3;_&&(S[a++]=w[x++],_>1&&(S[a++]=w[x++]))}else{x=a-C;do S[a++]=S[x++],S[a++]=S[x++],S[a++]=S[x++],_-=3;while(_>2);_&&(S[a++]=S[x++],_>1&&(S[a++]=S[x++]))}}else if((I&64)===0){y=A[(y&65535)+(g&(1<<I)-1)];continue i}else{e.msg="invalid distance code",b.mode=Cy;break e}break}}else if((I&64)===0){y=v[(y&65535)+(g&(1<<I)-1)];continue t}else if(I&32){b.mode=gPe;break e}else{e.msg="invalid literal/length code",b.mode=Cy;break e}break}}while(n<r&&a<o);_=d>>3,n-=_,d-=_<<3,g&=(1<<d)-1,e.next_in=n,e.next_out=a,e.avail_in=n<r?5+(r-n):5-(n-r),e.avail_out=a<o?257+(o-a):257-(a-o),b.hold=g,b.bits=d};const nf=15,uY=852,cY=592,fY=0,vR=1,gY=2,APe=new Uint16Array([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]),vPe=new Uint8Array([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]),pPe=new Uint16Array([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]),mPe=new Uint8Array([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]);var PA=(t,e,i,n,r,a,s,o)=>{const l=o.bits;let h=0,u=0,c=0,f=0,g=0,d=0,v=0,A=0,p=0,m=0,y,I,_,C,x,w=null,E;const S=new Uint16Array(nf+1),b=new Uint16Array(nf+1);let B=null,M,R,T;for(h=0;h<=nf;h++)S[h]=0;for(u=0;u<n;u++)S[e[i+u]]++;for(g=l,f=nf;f>=1&&S[f]===0;f--);if(g>f&&(g=f),f===0)return r[a++]=1<<24|64<<16|0,r[a++]=1<<24|64<<16|0,o.bits=1,0;for(c=1;c<f&&S[c]===0;c++);for(g<c&&(g=c),A=1,h=1;h<=nf;h++)if(A<<=1,A-=S[h],A<0)return-1;if(A>0&&(t===fY||f!==1))return-1;for(b[1]=0,h=1;h<nf;h++)b[h+1]=b[h]+S[h];for(u=0;u<n;u++)e[i+u]!==0&&(s[b[e[i+u]]++]=u);if(t===fY?(w=B=s,E=20):t===vR?(w=APe,B=vPe,E=257):(w=pPe,B=mPe,E=0),m=0,u=0,h=c,x=a,d=g,v=0,_=-1,p=1<<g,C=p-1,t===vR&&p>uY||t===gY&&p>cY)return 1;for(;;){M=h-v,s[u]+1<E?(R=0,T=s[u]):s[u]>=E?(R=B[s[u]-E],T=w[s[u]-E]):(R=32+64,T=0),y=1<<h-v,I=1<<d,c=I;do I-=y,r[x+(m>>v)+I]=M<<24|R<<16|T|0;while(I!==0);for(y=1<<h-1;m&y;)y>>=1;if(y!==0?(m&=y-1,m+=y):m=0,u++,--S[h]===0){if(h===f)break;h=e[i+s[u]]}if(h>g&&(m&C)!==_){for(v===0&&(v=g),x+=c,d=h-v,A=1<<d;d+v<f&&(A-=S[d+v],!(A<=0));)d++,A<<=1;if(p+=1<<d,t===vR&&p>uY||t===gY&&p>cY)return 1;_=m&C,r[_]=g<<24|d<<16|x-a|0}}return m!==0&&(r[x+m]=h-v<<24|64<<16|0),o.bits=g,0};const yPe=0,dY=1,AY=2,{Z_FINISH:vY,Z_BLOCK:_Pe,Z_TREES:wy,Z_OK:gh,Z_STREAM_END:xPe,Z_NEED_DICT:IPe,Z_STREAM_ERROR:Xr,Z_DATA_ERROR:pY,Z_MEM_ERROR:mY,Z_BUF_ERROR:CPe,Z_DEFLATED:yY}=SA,Ey=16180,_Y=16181,xY=16182,IY=16183,CY=16184,wY=16185,EY=16186,SY=16187,bY=16188,BY=16189,Sy=16190,Js=16191,pR=16192,MY=16193,mR=16194,TY=16195,RY=16196,DY=16197,LY=16198,by=16199,By=16200,PY=16201,kY=16202,FY=16203,QY=16204,zY=16205,yR=16206,OY=16207,NY=16208,mi=16209,GY=16210,UY=16211,wPe=852,EPe=592,SPe=15,qY=t=>(t>>>24&255)+(t>>>8&65280)+((t&65280)<<8)+((t&255)<<24);function bPe(){this.strm=null,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 Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}const dh=t=>{if(!t)return 1;const e=t.state;return!e||e.strm!==t||e.mode<Ey||e.mode>UY?1:0},VY=t=>{if(dh(t))return Xr;const e=t.state;return t.total_in=t.total_out=e.total=0,t.msg="",e.wrap&&(t.adler=e.wrap&1),e.mode=Ey,e.last=0,e.havedict=0,e.flags=-1,e.dmax=32768,e.head=null,e.hold=0,e.bits=0,e.lencode=e.lendyn=new Int32Array(wPe),e.distcode=e.distdyn=new Int32Array(EPe),e.sane=1,e.back=-1,gh},jY=t=>{if(dh(t))return Xr;const e=t.state;return e.wsize=0,e.whave=0,e.wnext=0,VY(t)},HY=(t,e)=>{let i;if(dh(t))return Xr;const n=t.state;return e<0?(i=0,e=-e):(i=(e>>4)+5,e<48&&(e&=15)),e&&(e<8||e>15)?Xr:(n.window!==null&&n.wbits!==e&&(n.window=null),n.wrap=i,n.wbits=e,jY(t))},$Y=(t,e)=>{if(!t)return Xr;const i=new bPe;t.state=i,i.strm=t,i.window=null,i.mode=Ey;const n=HY(t,e);return n!==gh&&(t.state=null),n},BPe=t=>$Y(t,SPe);let WY=!0,_R,xR;const MPe=t=>{if(WY){_R=new Int32Array(512),xR=new Int32Array(32);let e=0;for(;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(PA(dY,t.lens,0,288,_R,0,t.work,{bits:9}),e=0;e<32;)t.lens[e++]=5;PA(AY,t.lens,0,32,xR,0,t.work,{bits:5}),WY=!1}t.lencode=_R,t.lenbits=9,t.distcode=xR,t.distbits=5},YY=(t,e,i,n)=>{let r;const a=t.state;return a.window===null&&(a.wsize=1<<a.wbits,a.wnext=0,a.whave=0,a.window=new Uint8Array(a.wsize)),n>=a.wsize?(a.window.set(e.subarray(i-a.wsize,i),0),a.wnext=0,a.whave=a.wsize):(r=a.wsize-a.wnext,r>n&&(r=n),a.window.set(e.subarray(i-n,i-n+r),a.wnext),n-=r,n?(a.window.set(e.subarray(i-n,i),0),a.wnext=n,a.whave=a.wsize):(a.wnext+=r,a.wnext===a.wsize&&(a.wnext=0),a.whave<a.wsize&&(a.whave+=r))),0},TPe=(t,e)=>{let i,n,r,a,s,o,l,h,u,c,f,g,d,v,A=0,p,m,y,I,_,C,x,w;const E=new Uint8Array(4);let S,b;const B=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(dh(t)||!t.output||!t.input&&t.avail_in!==0)return Xr;i=t.state,i.mode===Js&&(i.mode=pR),s=t.next_out,r=t.output,l=t.avail_out,a=t.next_in,n=t.input,o=t.avail_in,h=i.hold,u=i.bits,c=o,f=l,w=gh;e:for(;;)switch(i.mode){case Ey:if(i.wrap===0){i.mode=pR;break}for(;u<16;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}if(i.wrap&2&&h===35615){i.wbits===0&&(i.wbits=15),i.check=0,E[0]=h&255,E[1]=h>>>8&255,i.check=fn(i.check,E,2,0),h=0,u=0,i.mode=_Y;break}if(i.head&&(i.head.done=!1),!(i.wrap&1)||(((h&255)<<8)+(h>>8))%31){t.msg="incorrect header check",i.mode=mi;break}if((h&15)!==yY){t.msg="unknown compression method",i.mode=mi;break}if(h>>>=4,u-=4,x=(h&15)+8,i.wbits===0&&(i.wbits=x),x>15||x>i.wbits){t.msg="invalid window size",i.mode=mi;break}i.dmax=1<<i.wbits,i.flags=0,t.adler=i.check=1,i.mode=h&512?BY:Js,h=0,u=0;break;case _Y:for(;u<16;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}if(i.flags=h,(i.flags&255)!==yY){t.msg="unknown compression method",i.mode=mi;break}if(i.flags&57344){t.msg="unknown header flags set",i.mode=mi;break}i.head&&(i.head.text=h>>8&1),i.flags&512&&i.wrap&4&&(E[0]=h&255,E[1]=h>>>8&255,i.check=fn(i.check,E,2,0)),h=0,u=0,i.mode=xY;case xY:for(;u<32;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}i.head&&(i.head.time=h),i.flags&512&&i.wrap&4&&(E[0]=h&255,E[1]=h>>>8&255,E[2]=h>>>16&255,E[3]=h>>>24&255,i.check=fn(i.check,E,4,0)),h=0,u=0,i.mode=IY;case IY:for(;u<16;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}i.head&&(i.head.xflags=h&255,i.head.os=h>>8),i.flags&512&&i.wrap&4&&(E[0]=h&255,E[1]=h>>>8&255,i.check=fn(i.check,E,2,0)),h=0,u=0,i.mode=CY;case CY:if(i.flags&1024){for(;u<16;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}i.length=h,i.head&&(i.head.extra_len=h),i.flags&512&&i.wrap&4&&(E[0]=h&255,E[1]=h>>>8&255,i.check=fn(i.check,E,2,0)),h=0,u=0}else i.head&&(i.head.extra=null);i.mode=wY;case wY:if(i.flags&1024&&(g=i.length,g>o&&(g=o),g&&(i.head&&(x=i.head.extra_len-i.length,i.head.extra||(i.head.extra=new Uint8Array(i.head.extra_len)),i.head.extra.set(n.subarray(a,a+g),x)),i.flags&512&&i.wrap&4&&(i.check=fn(i.check,n,g,a)),o-=g,a+=g,i.length-=g),i.length))break e;i.length=0,i.mode=EY;case EY:if(i.flags&2048){if(o===0)break e;g=0;do x=n[a+g++],i.head&&x&&i.length<65536&&(i.head.name+=String.fromCharCode(x));while(x&&g<o);if(i.flags&512&&i.wrap&4&&(i.check=fn(i.check,n,g,a)),o-=g,a+=g,x)break e}else i.head&&(i.head.name=null);i.length=0,i.mode=SY;case SY:if(i.flags&4096){if(o===0)break e;g=0;do x=n[a+g++],i.head&&x&&i.length<65536&&(i.head.comment+=String.fromCharCode(x));while(x&&g<o);if(i.flags&512&&i.wrap&4&&(i.check=fn(i.check,n,g,a)),o-=g,a+=g,x)break e}else i.head&&(i.head.comment=null);i.mode=bY;case bY:if(i.flags&512){for(;u<16;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}if(i.wrap&4&&h!==(i.check&65535)){t.msg="header crc mismatch",i.mode=mi;break}h=0,u=0}i.head&&(i.head.hcrc=i.flags>>9&1,i.head.done=!0),t.adler=i.check=0,i.mode=Js;break;case BY:for(;u<32;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}t.adler=i.check=qY(h),h=0,u=0,i.mode=Sy;case Sy:if(i.havedict===0)return t.next_out=s,t.avail_out=l,t.next_in=a,t.avail_in=o,i.hold=h,i.bits=u,IPe;t.adler=i.check=1,i.mode=Js;case Js:if(e===_Pe||e===wy)break e;case pR:if(i.last){h>>>=u&7,u-=u&7,i.mode=yR;break}for(;u<3;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}switch(i.last=h&1,h>>>=1,u-=1,h&3){case 0:i.mode=MY;break;case 1:if(MPe(i),i.mode=by,e===wy){h>>>=2,u-=2;break e}break;case 2:i.mode=RY;break;case 3:t.msg="invalid block type",i.mode=mi}h>>>=2,u-=2;break;case MY:for(h>>>=u&7,u-=u&7;u<32;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}if((h&65535)!==(h>>>16^65535)){t.msg="invalid stored block lengths",i.mode=mi;break}if(i.length=h&65535,h=0,u=0,i.mode=mR,e===wy)break e;case mR:i.mode=TY;case TY:if(g=i.length,g){if(g>o&&(g=o),g>l&&(g=l),g===0)break e;r.set(n.subarray(a,a+g),s),o-=g,a+=g,l-=g,s+=g,i.length-=g;break}i.mode=Js;break;case RY:for(;u<14;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}if(i.nlen=(h&31)+257,h>>>=5,u-=5,i.ndist=(h&31)+1,h>>>=5,u-=5,i.ncode=(h&15)+4,h>>>=4,u-=4,i.nlen>286||i.ndist>30){t.msg="too many length or distance symbols",i.mode=mi;break}i.have=0,i.mode=DY;case DY:for(;i.have<i.ncode;){for(;u<3;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}i.lens[B[i.have++]]=h&7,h>>>=3,u-=3}for(;i.have<19;)i.lens[B[i.have++]]=0;if(i.lencode=i.lendyn,i.lenbits=7,S={bits:i.lenbits},w=PA(yPe,i.lens,0,19,i.lencode,0,i.work,S),i.lenbits=S.bits,w){t.msg="invalid code lengths set",i.mode=mi;break}i.have=0,i.mode=LY;case LY:for(;i.have<i.nlen+i.ndist;){for(;A=i.lencode[h&(1<<i.lenbits)-1],p=A>>>24,m=A>>>16&255,y=A&65535,!(p<=u);){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}if(y<16)h>>>=p,u-=p,i.lens[i.have++]=y;else{if(y===16){for(b=p+2;u<b;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}if(h>>>=p,u-=p,i.have===0){t.msg="invalid bit length repeat",i.mode=mi;break}x=i.lens[i.have-1],g=3+(h&3),h>>>=2,u-=2}else if(y===17){for(b=p+3;u<b;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}h>>>=p,u-=p,x=0,g=3+(h&7),h>>>=3,u-=3}else{for(b=p+7;u<b;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}h>>>=p,u-=p,x=0,g=11+(h&127),h>>>=7,u-=7}if(i.have+g>i.nlen+i.ndist){t.msg="invalid bit length repeat",i.mode=mi;break}for(;g--;)i.lens[i.have++]=x}}if(i.mode===mi)break;if(i.lens[256]===0){t.msg="invalid code -- missing end-of-block",i.mode=mi;break}if(i.lenbits=9,S={bits:i.lenbits},w=PA(dY,i.lens,0,i.nlen,i.lencode,0,i.work,S),i.lenbits=S.bits,w){t.msg="invalid literal/lengths set",i.mode=mi;break}if(i.distbits=6,i.distcode=i.distdyn,S={bits:i.distbits},w=PA(AY,i.lens,i.nlen,i.ndist,i.distcode,0,i.work,S),i.distbits=S.bits,w){t.msg="invalid distances set",i.mode=mi;break}if(i.mode=by,e===wy)break e;case by:i.mode=By;case By:if(o>=6&&l>=258){t.next_out=s,t.avail_out=l,t.next_in=a,t.avail_in=o,i.hold=h,i.bits=u,dPe(t,f),s=t.next_out,r=t.output,l=t.avail_out,a=t.next_in,n=t.input,o=t.avail_in,h=i.hold,u=i.bits,i.mode===Js&&(i.back=-1);break}for(i.back=0;A=i.lencode[h&(1<<i.lenbits)-1],p=A>>>24,m=A>>>16&255,y=A&65535,!(p<=u);){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}if(m&&(m&240)===0){for(I=p,_=m,C=y;A=i.lencode[C+((h&(1<<I+_)-1)>>I)],p=A>>>24,m=A>>>16&255,y=A&65535,!(I+p<=u);){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}h>>>=I,u-=I,i.back+=I}if(h>>>=p,u-=p,i.back+=p,i.length=y,m===0){i.mode=zY;break}if(m&32){i.back=-1,i.mode=Js;break}if(m&64){t.msg="invalid literal/length code",i.mode=mi;break}i.extra=m&15,i.mode=PY;case PY:if(i.extra){for(b=i.extra;u<b;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}i.length+=h&(1<<i.extra)-1,h>>>=i.extra,u-=i.extra,i.back+=i.extra}i.was=i.length,i.mode=kY;case kY:for(;A=i.distcode[h&(1<<i.distbits)-1],p=A>>>24,m=A>>>16&255,y=A&65535,!(p<=u);){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}if((m&240)===0){for(I=p,_=m,C=y;A=i.distcode[C+((h&(1<<I+_)-1)>>I)],p=A>>>24,m=A>>>16&255,y=A&65535,!(I+p<=u);){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}h>>>=I,u-=I,i.back+=I}if(h>>>=p,u-=p,i.back+=p,m&64){t.msg="invalid distance code",i.mode=mi;break}i.offset=y,i.extra=m&15,i.mode=FY;case FY:if(i.extra){for(b=i.extra;u<b;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}i.offset+=h&(1<<i.extra)-1,h>>>=i.extra,u-=i.extra,i.back+=i.extra}if(i.offset>i.dmax){t.msg="invalid distance too far back",i.mode=mi;break}i.mode=QY;case QY:if(l===0)break e;if(g=f-l,i.offset>g){if(g=i.offset-g,g>i.whave&&i.sane){t.msg="invalid distance too far back",i.mode=mi;break}g>i.wnext?(g-=i.wnext,d=i.wsize-g):d=i.wnext-g,g>i.length&&(g=i.length),v=i.window}else v=r,d=s-i.offset,g=i.length;g>l&&(g=l),l-=g,i.length-=g;do r[s++]=v[d++];while(--g);i.length===0&&(i.mode=By);break;case zY:if(l===0)break e;r[s++]=i.length,l--,i.mode=By;break;case yR:if(i.wrap){for(;u<32;){if(o===0)break e;o--,h|=n[a++]<<u,u+=8}if(f-=l,t.total_out+=f,i.total+=f,i.wrap&4&&f&&(t.adler=i.check=i.flags?fn(i.check,r,f,s-f):EA(i.check,r,f,s-f)),f=l,i.wrap&4&&(i.flags?h:qY(h))!==i.check){t.msg="incorrect data check",i.mode=mi;break}h=0,u=0}i.mode=OY;case OY:if(i.wrap&&i.flags){for(;u<32;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}if(i.wrap&4&&h!==(i.total&4294967295)){t.msg="incorrect length check",i.mode=mi;break}h=0,u=0}i.mode=NY;case NY:w=xPe;break e;case mi:w=pY;break e;case GY:return mY;case UY:default:return Xr}return t.next_out=s,t.avail_out=l,t.next_in=a,t.avail_in=o,i.hold=h,i.bits=u,(i.wsize||f!==t.avail_out&&i.mode<mi&&(i.mode<yR||e!==vY))&&YY(t,t.output,t.next_out,f-t.avail_out),c-=t.avail_in,f-=t.avail_out,t.total_in+=c,t.total_out+=f,i.total+=f,i.wrap&4&&f&&(t.adler=i.check=i.flags?fn(i.check,r,f,t.next_out-f):EA(i.check,r,f,t.next_out-f)),t.data_type=i.bits+(i.last?64:0)+(i.mode===Js?128:0)+(i.mode===by||i.mode===mR?256:0),(c===0&&f===0||e===vY)&&w===gh&&(w=CPe),w},RPe=t=>{if(dh(t))return Xr;let e=t.state;return e.window&&(e.window=null),t.state=null,gh},DPe=(t,e)=>{if(dh(t))return Xr;const i=t.state;return(i.wrap&2)===0?Xr:(i.head=e,e.done=!1,gh)},LPe=(t,e)=>{const i=e.length;let n,r,a;return dh(t)||(n=t.state,n.wrap!==0&&n.mode!==Sy)?Xr:n.mode===Sy&&(r=1,r=EA(r,e,i,0),r!==n.check)?pY:(a=YY(t,e,i,i),a?(n.mode=GY,mY):(n.havedict=1,gh))};var PPe=jY,kPe=HY,FPe=VY,QPe=BPe,zPe=$Y,OPe=TPe,NPe=RPe,GPe=DPe,UPe=LPe,qPe="pako inflate (from Nodeca project)",eo={inflateReset:PPe,inflateReset2:kPe,inflateResetKeep:FPe,inflateInit:QPe,inflateInit2:zPe,inflate:OPe,inflateEnd:NPe,inflateGetHeader:GPe,inflateSetDictionary:UPe,inflateInfo:qPe};function VPe(){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}var jPe=VPe;const ZY=Object.prototype.toString,{Z_NO_FLUSH:HPe,Z_FINISH:$Pe,Z_OK:kA,Z_STREAM_END:IR,Z_NEED_DICT:CR,Z_STREAM_ERROR:WPe,Z_DATA_ERROR:XY,Z_MEM_ERROR:YPe}=SA;function FA(t){this.options=xy.assign({chunkSize:1024*64,windowBits:15,to:""},t||{});const 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)===0&&(e.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new lY,this.strm.avail_out=0;let i=eo.inflateInit2(this.strm,e.windowBits);if(i!==kA)throw new Error(Zc[i]);if(this.header=new jPe,eo.inflateGetHeader(this.strm,this.header),e.dictionary&&(typeof e.dictionary=="string"?e.dictionary=LA.string2buf(e.dictionary):ZY.call(e.dictionary)==="[object ArrayBuffer]"&&(e.dictionary=new Uint8Array(e.dictionary)),e.raw&&(i=eo.inflateSetDictionary(this.strm,e.dictionary),i!==kA)))throw new Error(Zc[i])}FA.prototype.push=function(t,e){const i=this.strm,n=this.options.chunkSize,r=this.options.dictionary;let a,s,o;if(this.ended)return!1;for(e===~~e?s=e:s=e===!0?$Pe:HPe,ZY.call(t)==="[object ArrayBuffer]"?i.input=new Uint8Array(t):i.input=t,i.next_in=0,i.avail_in=i.input.length;;){for(i.avail_out===0&&(i.output=new Uint8Array(n),i.next_out=0,i.avail_out=n),a=eo.inflate(i,s),a===CR&&r&&(a=eo.inflateSetDictionary(i,r),a===kA?a=eo.inflate(i,s):a===XY&&(a=CR));i.avail_in>0&&a===IR&&i.state.wrap>0&&t[i.next_in]!==0;)eo.inflateReset(i),a=eo.inflate(i,s);switch(a){case WPe:case XY:case CR:case YPe:return this.onEnd(a),this.ended=!0,!1}if(o=i.avail_out,i.next_out&&(i.avail_out===0||a===IR))if(this.options.to==="string"){let l=LA.utf8border(i.output,i.next_out),h=i.next_out-l,u=LA.buf2string(i.output,l);i.next_out=h,i.avail_out=n-h,h&&i.output.set(i.output.subarray(l,l+h),0),this.onData(u)}else this.onData(i.output.length===i.next_out?i.output:i.output.subarray(0,i.next_out));if(!(a===kA&&o===0)){if(a===IR)return a=eo.inflateEnd(this.strm),this.onEnd(a),this.ended=!0,!0;if(i.avail_in===0)break}}return!0},FA.prototype.onData=function(t){this.chunks.push(t)},FA.prototype.onEnd=function(t){t===kA&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=xy.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};function wR(t,e){const i=new FA(e);if(i.push(t),i.err)throw i.msg||Zc[i.err];return i.result}function ZPe(t,e){return e=e||{},e.raw=!0,wR(t,e)}var XPe=FA,KPe=wR,JPe=ZPe,eke=wR,tke=SA,ike={Inflate:XPe,inflate:KPe,inflateRaw:JPe,ungzip:eke,constants:tke};const{Inflate:Jke,inflate:nke,inflateRaw:eFe,ungzip:tFe}=ike;var KY=nke;class rke extends Tl{decodeBlock(e){return KY(new Uint8Array(e)).buffer}}const ake=Object.freeze(Object.defineProperty({__proto__:null,default:rke},Symbol.toStringTag,{value:"Module"}));class ske extends Tl{decodeBlock(e){const i=new DataView(e),n=[];for(let r=0;r<e.byteLength;++r){let a=i.getInt8(r);if(a<0){const s=i.getUint8(r+1);a=-a;for(let o=0;o<=a;++o)n.push(s);r+=1}else{for(let s=0;s<=a;++s)n.push(i.getUint8(r+s+1));r+=a+1}}return new Uint8Array(n).buffer}}const oke=Object.freeze(Object.defineProperty({__proto__:null,default:ske},Symbol.toStringTag,{value:"Module"}));var JY={exports:{}};(function(t){/* Copyright 2015-2021 Esri. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 @preserve */(function(){var e=function(){var a={};a.defaultNoDataValue=-34027999387901484e22,a.decode=function(c,f){f=f||{};var g=f.encodedMaskData||f.encodedMaskData===null,d=h(c,f.inputOffset||0,g),v=f.noDataValue!==null?f.noDataValue:a.defaultNoDataValue,A=s(d,f.pixelType||Float32Array,f.encodedMaskData,v,f.returnMask),p={width:d.width,height:d.height,pixelData:A.resultPixels,minValue:A.minValue,maxValue:d.pixels.maxValue,noDataValue:v};return A.resultMask&&(p.maskData=A.resultMask),f.returnEncodedMask&&d.mask&&(p.encodedMaskData=d.mask.bitset?d.mask.bitset:null),f.returnFileInfo&&(p.fileInfo=o(d),f.computeUsedBitDepths&&(p.fileInfo.bitDepths=l(d))),p};var s=function(c,f,g,d,v){var A=0,p=c.pixels.numBlocksX,m=c.pixels.numBlocksY,y=Math.floor(c.width/p),I=Math.floor(c.height/m),_=2*c.maxZError,C=Number.MAX_VALUE,x;g=g||(c.mask?c.mask.bitset:null);var w,E;w=new f(c.width*c.height),v&&g&&(E=new Uint8Array(c.width*c.height));for(var S=new Float32Array(y*I),b,B,M=0;M<=m;M++){var R=M!==m?I:c.height%m;if(R!==0)for(var T=0;T<=p;T++){var D=T!==p?y:c.width%p;if(D!==0){var P=M*c.width*I+T*y,Q=c.width-D,N=c.pixels.blocks[A],O,L,z;N.encoding<2?(N.encoding===0?O=N.rawData:(u(N.stuffedData,N.bitsPerPixel,N.numValidPixels,N.offset,_,S,c.pixels.maxValue),O=S),L=0):N.encoding===2?z=0:z=N.offset;var k;if(g)for(B=0;B<R;B++){for(P&7&&(k=g[P>>3],k<<=P&7),b=0;b<D;b++)P&7||(k=g[P>>3]),k&128?(E&&(E[P]=1),x=N.encoding<2?O[L++]:z,C=C>x?x:C,w[P++]=x):(E&&(E[P]=0),w[P++]=d),k<<=1;P+=Q}else if(N.encoding<2)for(B=0;B<R;B++){for(b=0;b<D;b++)x=O[L++],C=C>x?x:C,w[P++]=x;P+=Q}else for(C=C>z?z:C,B=0;B<R;B++){for(b=0;b<D;b++)w[P++]=z;P+=Q}if(N.encoding===1&&L!==N.numValidPixels)throw"Block and Mask do not match";A++}}}return{resultPixels:w,resultMask:E,minValue:C}},o=function(c){return{fileIdentifierString:c.fileIdentifierString,fileVersion:c.fileVersion,imageType:c.imageType,height:c.height,width:c.width,maxZError:c.maxZError,eofOffset:c.eofOffset,mask:c.mask?{numBlocksX:c.mask.numBlocksX,numBlocksY:c.mask.numBlocksY,numBytes:c.mask.numBytes,maxValue:c.mask.maxValue}:null,pixels:{numBlocksX:c.pixels.numBlocksX,numBlocksY:c.pixels.numBlocksY,numBytes:c.pixels.numBytes,maxValue:c.pixels.maxValue,noDataValue:c.noDataValue}}},l=function(c){for(var f=c.pixels.numBlocksX*c.pixels.numBlocksY,g={},d=0;d<f;d++){var v=c.pixels.blocks[d];v.encoding===0?g.float32=!0:v.encoding===1?g[v.bitsPerPixel]=!0:g[0]=!0}return Object.keys(g)},h=function(c,f,g){var d={},v=new Uint8Array(c,f,10);if(d.fileIdentifierString=String.fromCharCode.apply(null,v),d.fileIdentifierString.trim()!=="CntZImage")throw"Unexpected file identifier string: "+d.fileIdentifierString;f+=10;var A=new DataView(c,f,24);if(d.fileVersion=A.getInt32(0,!0),d.imageType=A.getInt32(4,!0),d.height=A.getUint32(8,!0),d.width=A.getUint32(12,!0),d.maxZError=A.getFloat64(16,!0),f+=24,!g)if(A=new DataView(c,f,16),d.mask={},d.mask.numBlocksY=A.getUint32(0,!0),d.mask.numBlocksX=A.getUint32(4,!0),d.mask.numBytes=A.getUint32(8,!0),d.mask.maxValue=A.getFloat32(12,!0),f+=16,d.mask.numBytes>0){var p=new Uint8Array(Math.ceil(d.width*d.height/8));A=new DataView(c,f,d.mask.numBytes);var m=A.getInt16(0,!0),y=2,I=0;do{if(m>0)for(;m--;)p[I++]=A.getUint8(y++);else{var _=A.getUint8(y++);for(m=-m;m--;)p[I++]=_}m=A.getInt16(y,!0),y+=2}while(y<d.mask.numBytes);if(m!==-32768||I<p.length)throw"Unexpected end of mask RLE encoding";d.mask.bitset=p,f+=d.mask.numBytes}else(d.mask.numBytes|d.mask.numBlocksY|d.mask.maxValue)===0&&(d.mask.bitset=new Uint8Array(Math.ceil(d.width*d.height/8)));A=new DataView(c,f,16),d.pixels={},d.pixels.numBlocksY=A.getUint32(0,!0),d.pixels.numBlocksX=A.getUint32(4,!0),d.pixels.numBytes=A.getUint32(8,!0),d.pixels.maxValue=A.getFloat32(12,!0),f+=16;var C=d.pixels.numBlocksX,x=d.pixels.numBlocksY,w=C+(d.width%C>0?1:0),E=x+(d.height%x>0?1:0);d.pixels.blocks=new Array(w*E);for(var S=0,b=0;b<E;b++)for(var B=0;B<w;B++){var M=0,R=c.byteLength-f;A=new DataView(c,f,Math.min(10,R));var T={};d.pixels.blocks[S++]=T;var D=A.getUint8(0);if(M++,T.encoding=D&63,T.encoding>3)throw"Invalid block encoding ("+T.encoding+")";if(T.encoding===2){f++;continue}if(D!==0&&D!==2){if(D>>=6,T.offsetType=D,D===2)T.offset=A.getInt8(1),M++;else if(D===1)T.offset=A.getInt16(1,!0),M+=2;else if(D===0)T.offset=A.getFloat32(1,!0),M+=4;else throw"Invalid block offset type";if(T.encoding===1)if(D=A.getUint8(M),M++,T.bitsPerPixel=D&63,D>>=6,T.numValidPixelsType=D,D===2)T.numValidPixels=A.getUint8(M),M++;else if(D===1)T.numValidPixels=A.getUint16(M,!0),M+=2;else if(D===0)T.numValidPixels=A.getUint32(M,!0),M+=4;else throw"Invalid valid pixel count type"}if(f+=M,T.encoding!==3){var P,Q;if(T.encoding===0){var N=(d.pixels.numBytes-1)/4;if(N!==Math.floor(N))throw"uncompressed block has invalid length";P=new ArrayBuffer(N*4),Q=new Uint8Array(P),Q.set(new Uint8Array(c,f,N*4));var O=new Float32Array(P);T.rawData=O,f+=N*4}else if(T.encoding===1){var L=Math.ceil(T.numValidPixels*T.bitsPerPixel/8),z=Math.ceil(L/4);P=new ArrayBuffer(z*4),Q=new Uint8Array(P),Q.set(new Uint8Array(c,f,L)),T.stuffedData=new Uint32Array(P),f+=L}}}return d.eofOffset=f,d},u=function(c,f,g,d,v,A,p){var m=(1<<f)-1,y=0,I,_=0,C,x,w=Math.ceil((p-d)/v),E=c.length*4-Math.ceil(f*g/8);for(c[c.length-1]<<=8*E,I=0;I<g;I++){if(_===0&&(x=c[y++],_=32),_>=f)C=x>>>_-f&m,_-=f;else{var S=f-_;C=(x&m)<<S&m,x=c[y++],_=32-S,C+=x>>>_}A[I]=C<w?d+C*v:p}return A};return a}(),i=function(){var a={unstuff:function(h,u,c,f,g,d,v,A){var p=(1<<c)-1,m=0,y,I=0,_,C,x,w,E=h.length*4-Math.ceil(c*f/8);if(h[h.length-1]<<=8*E,g)for(y=0;y<f;y++)I===0&&(C=h[m++],I=32),I>=c?(_=C>>>I-c&p,I-=c):(x=c-I,_=(C&p)<<x&p,C=h[m++],I=32-x,_+=C>>>I),u[y]=g[_];else for(w=Math.ceil((A-d)/v),y=0;y<f;y++)I===0&&(C=h[m++],I=32),I>=c?(_=C>>>I-c&p,I-=c):(x=c-I,_=(C&p)<<x&p,C=h[m++],I=32-x,_+=C>>>I),u[y]=_<w?d+_*v:A},unstuffLUT:function(h,u,c,f,g,d){var v=(1<<u)-1,A=0,p=0,m=0,y=0,I=0,_,C=[],x=h.length*4-Math.ceil(u*c/8);h[h.length-1]<<=8*x;var w=Math.ceil((d-f)/g);for(p=0;p<c;p++)y===0&&(_=h[A++],y=32),y>=u?(I=_>>>y-u&v,y-=u):(m=u-y,I=(_&v)<<m&v,_=h[A++],y=32-m,I+=_>>>y),C[p]=I<w?f+I*g:d;return C.unshift(f),C},unstuff2:function(h,u,c,f,g,d,v,A){var p=(1<<c)-1,m=0,y,I=0,_=0,C,x,w;if(g)for(y=0;y<f;y++)I===0&&(x=h[m++],I=32,_=0),I>=c?(C=x>>>_&p,I-=c,_+=c):(w=c-I,C=x>>>_&p,x=h[m++],I=32-w,C|=(x&(1<<w)-1)<<c-w,_=w),u[y]=g[C];else{var E=Math.ceil((A-d)/v);for(y=0;y<f;y++)I===0&&(x=h[m++],I=32,_=0),I>=c?(C=x>>>_&p,I-=c,_+=c):(w=c-I,C=x>>>_&p,x=h[m++],I=32-w,C|=(x&(1<<w)-1)<<c-w,_=w),u[y]=C<E?d+C*v:A}return u},unstuffLUT2:function(h,u,c,f,g,d){var v=(1<<u)-1,A=0,p=0,m=0,y=0,I=0,_=0,C,x=[],w=Math.ceil((d-f)/g);for(p=0;p<c;p++)y===0&&(C=h[A++],y=32,_=0),y>=u?(I=C>>>_&v,y-=u,_+=u):(m=u-y,I=C>>>_&v,C=h[A++],y=32-m,I|=(C&(1<<m)-1)<<u-m,_=m),x[p]=I<w?f+I*g:d;return x.unshift(f),x},originalUnstuff:function(h,u,c,f){var g=(1<<c)-1,d=0,v,A=0,p,m,y,I=h.length*4-Math.ceil(c*f/8);for(h[h.length-1]<<=8*I,v=0;v<f;v++)A===0&&(m=h[d++],A=32),A>=c?(p=m>>>A-c&g,A-=c):(y=c-A,p=(m&g)<<y&g,m=h[d++],A=32-y,p+=m>>>A),u[v]=p;return u},originalUnstuff2:function(h,u,c,f){var g=(1<<c)-1,d=0,v,A=0,p=0,m,y,I;for(v=0;v<f;v++)A===0&&(y=h[d++],A=32,p=0),A>=c?(m=y>>>p&g,A-=c,p+=c):(I=c-A,m=y>>>p&g,y=h[d++],A=32-I,m|=(y&(1<<I)-1)<<c-I,p=I),u[v]=m;return u}},s={HUFFMAN_LUT_BITS_MAX:12,computeChecksumFletcher32:function(h){for(var u=65535,c=65535,f=h.length,g=Math.floor(f/2),d=0;g;){var v=g>=359?359:g;g-=v;do u+=h[d++]<<8,c+=u+=h[d++];while(--v);u=(u&65535)+(u>>>16),c=(c&65535)+(c>>>16)}return f&1&&(c+=u+=h[d]<<8),u=(u&65535)+(u>>>16),c=(c&65535)+(c>>>16),(c<<16|u)>>>0},readHeaderInfo:function(h,u){var c=u.ptr,f=new Uint8Array(h,c,6),g={};if(g.fileIdentifierString=String.fromCharCode.apply(null,f),g.fileIdentifierString.lastIndexOf("Lerc2",0)!==0)throw"Unexpected file identifier string (expect Lerc2 ): "+g.fileIdentifierString;c+=6;var d=new DataView(h,c,8),v=d.getInt32(0,!0);g.fileVersion=v,c+=4,v>=3&&(g.checksum=d.getUint32(4,!0),c+=4),d=new DataView(h,c,12),g.height=d.getUint32(0,!0),g.width=d.getUint32(4,!0),c+=8,v>=4?(g.numDims=d.getUint32(8,!0),c+=4):g.numDims=1,d=new DataView(h,c,40),g.numValidPixel=d.getUint32(0,!0),g.microBlockSize=d.getInt32(4,!0),g.blobSize=d.getInt32(8,!0),g.imageType=d.getInt32(12,!0),g.maxZError=d.getFloat64(16,!0),g.zMin=d.getFloat64(24,!0),g.zMax=d.getFloat64(32,!0),c+=40,u.headerInfo=g,u.ptr=c;var A,p;if(v>=3&&(p=v>=4?52:48,A=this.computeChecksumFletcher32(new Uint8Array(h,c-p,g.blobSize-14)),A!==g.checksum))throw"Checksum failed.";return!0},checkMinMaxRanges:function(h,u){var c=u.headerInfo,f=this.getDataTypeArray(c.imageType),g=c.numDims*this.getDataTypeSize(c.imageType),d=this.readSubArray(h,u.ptr,f,g),v=this.readSubArray(h,u.ptr+g,f,g);u.ptr+=2*g;var A,p=!0;for(A=0;A<c.numDims;A++)if(d[A]!==v[A]){p=!1;break}return c.minValues=d,c.maxValues=v,p},readSubArray:function(h,u,c,f){var g;if(c===Uint8Array)g=new Uint8Array(h,u,f);else{var d=new ArrayBuffer(f),v=new Uint8Array(d);v.set(new Uint8Array(h,u,f)),g=new c(d)}return g},readMask:function(h,u){var c=u.ptr,f=u.headerInfo,g=f.width*f.height,d=f.numValidPixel,v=new DataView(h,c,4),A={};if(A.numBytes=v.getUint32(0,!0),c+=4,(d===0||g===d)&&A.numBytes!==0)throw"invalid mask";var p,m;if(d===0)p=new Uint8Array(Math.ceil(g/8)),A.bitset=p,m=new Uint8Array(g),u.pixels.resultMask=m,c+=A.numBytes;else if(A.numBytes>0){p=new Uint8Array(Math.ceil(g/8)),v=new DataView(h,c,A.numBytes);var y=v.getInt16(0,!0),I=2,_=0,C=0;do{if(y>0)for(;y--;)p[_++]=v.getUint8(I++);else for(C=v.getUint8(I++),y=-y;y--;)p[_++]=C;y=v.getInt16(I,!0),I+=2}while(I<A.numBytes);if(y!==-32768||_<p.length)throw"Unexpected end of mask RLE encoding";m=new Uint8Array(g);var x=0,w=0;for(w=0;w<g;w++)w&7?(x=p[w>>3],x<<=w&7):x=p[w>>3],x&128&&(m[w]=1);u.pixels.resultMask=m,A.bitset=p,c+=A.numBytes}return u.ptr=c,u.mask=A,!0},readDataOneSweep:function(h,u,c,f){var g=u.ptr,d=u.headerInfo,v=d.numDims,A=d.width*d.height,p=d.imageType,m=d.numValidPixel*s.getDataTypeSize(p)*v,y,I=u.pixels.resultMask;if(c===Uint8Array)y=new Uint8Array(h,g,m);else{var _=new ArrayBuffer(m),C=new Uint8Array(_);C.set(new Uint8Array(h,g,m)),y=new c(_)}if(y.length===A*v)f?u.pixels.resultPixels=s.swapDimensionOrder(y,A,v,c,!0):u.pixels.resultPixels=y;else{u.pixels.resultPixels=new c(A*v);var x=0,w=0,E=0,S=0;if(v>1){if(f){for(w=0;w<A;w++)if(I[w])for(S=w,E=0;E<v;E++,S+=A)u.pixels.resultPixels[S]=y[x++]}else for(w=0;w<A;w++)if(I[w])for(S=w*v,E=0;E<v;E++)u.pixels.resultPixels[S+E]=y[x++]}else for(w=0;w<A;w++)I[w]&&(u.pixels.resultPixels[w]=y[x++])}return g+=m,u.ptr=g,!0},readHuffmanTree:function(h,u){var c=this.HUFFMAN_LUT_BITS_MAX,f=new DataView(h,u.ptr,16);u.ptr+=16;var g=f.getInt32(0,!0);if(g<2)throw"unsupported Huffman version";var d=f.getInt32(4,!0),v=f.getInt32(8,!0),A=f.getInt32(12,!0);if(v>=A)return!1;var p=new Uint32Array(A-v);s.decodeBits(h,u,p);var m=[],y,I,_,C;for(y=v;y<A;y++)I=y-(y<d?0:d),m[I]={first:p[y-v],second:null};var x=h.byteLength-u.ptr,w=Math.ceil(x/4),E=new ArrayBuffer(w*4),S=new Uint8Array(E);S.set(new Uint8Array(h,u.ptr,x));var b=new Uint32Array(E),B=0,M,R=0;for(M=b[0],y=v;y<A;y++)I=y-(y<d?0:d),C=m[I].first,C>0&&(m[I].second=M<<B>>>32-C,32-B>=C?(B+=C,B===32&&(B=0,R++,M=b[R])):(B+=C-32,R++,M=b[R],m[I].second|=M>>>32-B));var T=0,D=0,P=new o;for(y=0;y<m.length;y++)m[y]!==void 0&&(T=Math.max(T,m[y].first));T>=c?D=c:D=T;var Q=[],N,O,L,z,k,F;for(y=v;y<A;y++)if(I=y-(y<d?0:d),C=m[I].first,C>0)if(N=[C,I],C<=D)for(O=m[I].second<<D-C,L=1<<D-C,_=0;_<L;_++)Q[O|_]=N;else for(O=m[I].second,F=P,z=C-1;z>=0;z--)k=O>>>z&1,k?(F.right||(F.right=new o),F=F.right):(F.left||(F.left=new o),F=F.left),z===0&&!F.val&&(F.val=N[1]);return{decodeLut:Q,numBitsLUTQick:D,numBitsLUT:T,tree:P,stuffedData:b,srcPtr:R,bitPos:B}},readHuffman:function(h,u,c,f){var g=u.headerInfo,d=g.numDims,v=u.headerInfo.height,A=u.headerInfo.width,p=A*v,m=this.readHuffmanTree(h,u),y=m.decodeLut,I=m.tree,_=m.stuffedData,C=m.srcPtr,x=m.bitPos,w=m.numBitsLUTQick,E=m.numBitsLUT,S=u.headerInfo.imageType===0?128:0,b,B,M,R=u.pixels.resultMask,T,D,P,Q,N,O,L,z=0;x>0&&(C++,x=0);var k=_[C],F=u.encodeMode===1,U=new c(p*d),G=U,q;if(d<2||F){for(q=0;q<d;q++)if(d>1&&(G=new c(U.buffer,p*q,p),z=0),u.headerInfo.numValidPixel===A*v)for(O=0,Q=0;Q<v;Q++)for(N=0;N<A;N++,O++){if(B=0,T=k<<x>>>32-w,D=T,32-x<w&&(T|=_[C+1]>>>64-x-w,D=T),y[D])B=y[D][1],x+=y[D][0];else for(T=k<<x>>>32-E,D=T,32-x<E&&(T|=_[C+1]>>>64-x-E,D=T),b=I,L=0;L<E;L++)if(P=T>>>E-L-1&1,b=P?b.right:b.left,!(b.left||b.right)){B=b.val,x=x+L+1;break}x>=32&&(x-=32,C++,k=_[C]),M=B-S,F?(N>0?M+=z:Q>0?M+=G[O-A]:M+=z,M&=255,G[O]=M,z=M):G[O]=M}else for(O=0,Q=0;Q<v;Q++)for(N=0;N<A;N++,O++)if(R[O]){if(B=0,T=k<<x>>>32-w,D=T,32-x<w&&(T|=_[C+1]>>>64-x-w,D=T),y[D])B=y[D][1],x+=y[D][0];else for(T=k<<x>>>32-E,D=T,32-x<E&&(T|=_[C+1]>>>64-x-E,D=T),b=I,L=0;L<E;L++)if(P=T>>>E-L-1&1,b=P?b.right:b.left,!(b.left||b.right)){B=b.val,x=x+L+1;break}x>=32&&(x-=32,C++,k=_[C]),M=B-S,F?(N>0&&R[O-1]?M+=z:Q>0&&R[O-A]?M+=G[O-A]:M+=z,M&=255,G[O]=M,z=M):G[O]=M}}else for(O=0,Q=0;Q<v;Q++)for(N=0;N<A;N++)if(O=Q*A+N,!R||R[O])for(q=0;q<d;q++,O+=p){if(B=0,T=k<<x>>>32-w,D=T,32-x<w&&(T|=_[C+1]>>>64-x-w,D=T),y[D])B=y[D][1],x+=y[D][0];else for(T=k<<x>>>32-E,D=T,32-x<E&&(T|=_[C+1]>>>64-x-E,D=T),b=I,L=0;L<E;L++)if(P=T>>>E-L-1&1,b=P?b.right:b.left,!(b.left||b.right)){B=b.val,x=x+L+1;break}x>=32&&(x-=32,C++,k=_[C]),M=B-S,G[O]=M}u.ptr=u.ptr+(C+1)*4+(x>0?4:0),u.pixels.resultPixels=U,d>1&&!f&&(u.pixels.resultPixels=s.swapDimensionOrder(U,p,d,c))},decodeBits:function(h,u,c,f,g){{var d=u.headerInfo,v=d.fileVersion,A=0,p=h.byteLength-u.ptr>=5?5:h.byteLength-u.ptr,m=new DataView(h,u.ptr,p),y=m.getUint8(0);A++;var I=y>>6,_=I===0?4:3-I,C=(y&32)>0,x=y&31,w=0;if(_===1)w=m.getUint8(A),A++;else if(_===2)w=m.getUint16(A,!0),A+=2;else if(_===4)w=m.getUint32(A,!0),A+=4;else throw"Invalid valid pixel count type";var E=2*d.maxZError,S,b,B,M,R,T,D,P,Q,N=d.numDims>1?d.maxValues[g]:d.zMax;if(C){for(u.counter.lut++,P=m.getUint8(A),A++,M=Math.ceil((P-1)*x/8),R=Math.ceil(M/4),b=new ArrayBuffer(R*4),B=new Uint8Array(b),u.ptr+=A,B.set(new Uint8Array(h,u.ptr,M)),D=new Uint32Array(b),u.ptr+=M,Q=0;P-1>>>Q;)Q++;M=Math.ceil(w*Q/8),R=Math.ceil(M/4),b=new ArrayBuffer(R*4),B=new Uint8Array(b),B.set(new Uint8Array(h,u.ptr,M)),S=new Uint32Array(b),u.ptr+=M,v>=3?T=a.unstuffLUT2(D,x,P-1,f,E,N):T=a.unstuffLUT(D,x,P-1,f,E,N),v>=3?a.unstuff2(S,c,Q,w,T):a.unstuff(S,c,Q,w,T)}else u.counter.bitstuffer++,Q=x,u.ptr+=A,Q>0&&(M=Math.ceil(w*Q/8),R=Math.ceil(M/4),b=new ArrayBuffer(R*4),B=new Uint8Array(b),B.set(new Uint8Array(h,u.ptr,M)),S=new Uint32Array(b),u.ptr+=M,v>=3?f==null?a.originalUnstuff2(S,c,Q,w):a.unstuff2(S,c,Q,w,!1,f,E,N):f==null?a.originalUnstuff(S,c,Q,w):a.unstuff(S,c,Q,w,!1,f,E,N))}},readTiles:function(h,u,c,f){var g=u.headerInfo,d=g.width,v=g.height,A=d*v,p=g.microBlockSize,m=g.imageType,y=s.getDataTypeSize(m),I=Math.ceil(d/p),_=Math.ceil(v/p);u.pixels.numBlocksY=_,u.pixels.numBlocksX=I,u.pixels.ptr=0;var C=0,x=0,w=0,E=0,S=0,b=0,B=0,M=0,R=0,T=0,D=0,P=0,Q=0,N=0,O=0,L=0,z,k,F,U,G,q,V=new c(p*p),j=v%p||p,$=d%p||p,X,K,J=g.numDims,te,ee=u.pixels.resultMask,ae=u.pixels.resultPixels,me=g.fileVersion,le=me>=5?14:15,de,_e=g.zMax,ne;for(w=0;w<_;w++)for(S=w!==_-1?p:j,E=0;E<I;E++)for(b=E!==I-1?p:$,D=w*d*p+E*p,P=d-b,te=0;te<J;te++){if(J>1?(ne=ae,D=w*d*p+E*p,ae=new c(u.pixels.resultPixels.buffer,A*te*y,A),_e=g.maxValues[te]):ne=null,B=h.byteLength-u.ptr,z=new DataView(h,u.ptr,Math.min(10,B)),k={},L=0,M=z.getUint8(0),L++,de=g.fileVersion>=5?M&4:0,R=M>>6&255,T=M>>2&le,T!==(E*p>>3&le)||de&&te===0)throw"integrity issue";if(q=M&3,q>3)throw u.ptr+=L,"Invalid block encoding ("+q+")";if(q===2){if(de)if(ee)for(C=0;C<S;C++)for(x=0;x<b;x++)ee[D]&&(ae[D]=ne[D]),D++;else for(C=0;C<S;C++)for(x=0;x<b;x++)ae[D]=ne[D],D++;u.counter.constant++,u.ptr+=L;continue}else if(q===0){if(de)throw"integrity issue";if(u.counter.uncompressed++,u.ptr+=L,Q=S*b*y,N=h.byteLength-u.ptr,Q=Q<N?Q:N,F=new ArrayBuffer(Q%y===0?Q:Q+y-Q%y),U=new Uint8Array(F),U.set(new Uint8Array(h,u.ptr,Q)),G=new c(F),O=0,ee)for(C=0;C<S;C++){for(x=0;x<b;x++)ee[D]&&(ae[D]=G[O++]),D++;D+=P}else for(C=0;C<S;C++){for(x=0;x<b;x++)ae[D++]=G[O++];D+=P}u.ptr+=O*y}else if(X=s.getDataTypeUsed(de&&m<6?4:m,R),K=s.getOnePixel(k,L,X,z),L+=s.getDataTypeSize(X),q===3)if(u.ptr+=L,u.counter.constantoffset++,ee)for(C=0;C<S;C++){for(x=0;x<b;x++)ee[D]&&(ae[D]=de?Math.min(_e,ne[D]+K):K),D++;D+=P}else for(C=0;C<S;C++){for(x=0;x<b;x++)ae[D]=de?Math.min(_e,ne[D]+K):K,D++;D+=P}else if(u.ptr+=L,s.decodeBits(h,u,V,K,te),L=0,de)if(ee)for(C=0;C<S;C++){for(x=0;x<b;x++)ee[D]&&(ae[D]=V[L++]+ne[D]),D++;D+=P}else for(C=0;C<S;C++){for(x=0;x<b;x++)ae[D]=V[L++]+ne[D],D++;D+=P}else if(ee)for(C=0;C<S;C++){for(x=0;x<b;x++)ee[D]&&(ae[D]=V[L++]),D++;D+=P}else for(C=0;C<S;C++){for(x=0;x<b;x++)ae[D++]=V[L++];D+=P}}J>1&&!f&&(u.pixels.resultPixels=s.swapDimensionOrder(u.pixels.resultPixels,A,J,c))},formatFileInfo:function(h){return{fileIdentifierString:h.headerInfo.fileIdentifierString,fileVersion:h.headerInfo.fileVersion,imageType:h.headerInfo.imageType,height:h.headerInfo.height,width:h.headerInfo.width,numValidPixel:h.headerInfo.numValidPixel,microBlockSize:h.headerInfo.microBlockSize,blobSize:h.headerInfo.blobSize,maxZError:h.headerInfo.maxZError,pixelType:s.getPixelType(h.headerInfo.imageType),eofOffset:h.eofOffset,mask:h.mask?{numBytes:h.mask.numBytes}:null,pixels:{numBlocksX:h.pixels.numBlocksX,numBlocksY:h.pixels.numBlocksY,maxValue:h.headerInfo.zMax,minValue:h.headerInfo.zMin,noDataValue:h.noDataValue}}},constructConstantSurface:function(h,u){var c=h.headerInfo.zMax,f=h.headerInfo.zMin,g=h.headerInfo.maxValues,d=h.headerInfo.numDims,v=h.headerInfo.height*h.headerInfo.width,A=0,p=0,m=0,y=h.pixels.resultMask,I=h.pixels.resultPixels;if(y)if(d>1){if(u)for(A=0;A<d;A++)for(m=A*v,c=g[A],p=0;p<v;p++)y[p]&&(I[m+p]=c);else for(p=0;p<v;p++)if(y[p])for(m=p*d,A=0;A<d;A++)I[m+d]=g[A]}else for(p=0;p<v;p++)y[p]&&(I[p]=c);else if(d>1&&f!==c)if(u)for(A=0;A<d;A++)for(m=A*v,c=g[A],p=0;p<v;p++)I[m+p]=c;else for(p=0;p<v;p++)for(m=p*d,A=0;A<d;A++)I[m+A]=g[A];else for(p=0;p<v*d;p++)I[p]=c},getDataTypeArray:function(h){var u;switch(h){case 0:u=Int8Array;break;case 1:u=Uint8Array;break;case 2:u=Int16Array;break;case 3:u=Uint16Array;break;case 4:u=Int32Array;break;case 5:u=Uint32Array;break;case 6:u=Float32Array;break;case 7:u=Float64Array;break;default:u=Float32Array}return u},getPixelType:function(h){var u;switch(h){case 0:u="S8";break;case 1:u="U8";break;case 2:u="S16";break;case 3:u="U16";break;case 4:u="S32";break;case 5:u="U32";break;case 6:u="F32";break;case 7:u="F64";break;default:u="F32"}return u},isValidPixelValue:function(h,u){if(u==null)return!1;var c;switch(h){case 0:c=u>=-128&&u<=127;break;case 1:c=u>=0&&u<=255;break;case 2:c=u>=-32768&&u<=32767;break;case 3:c=u>=0&&u<=65536;break;case 4:c=u>=-2147483648&&u<=2147483647;break;case 5:c=u>=0&&u<=4294967296;break;case 6:c=u>=-34027999387901484e22&&u<=34027999387901484e22;break;case 7:c=u>=-17976931348623157e292&&u<=17976931348623157e292;break;default:c=!1}return c},getDataTypeSize:function(h){var u=0;switch(h){case 0:case 1:u=1;break;case 2:case 3:u=2;break;case 4:case 5:case 6:u=4;break;case 7:u=8;break;default:u=h}return u},getDataTypeUsed:function(h,u){var c=h;switch(h){case 2:case 4:c=h-u;break;case 3:case 5:c=h-2*u;break;case 6:u===0?c=h:u===1?c=2:c=1;break;case 7:u===0?c=h:c=h-2*u+1;break;default:c=h;break}return c},getOnePixel:function(h,u,c,f){var g=0;switch(c){case 0:g=f.getInt8(u);break;case 1:g=f.getUint8(u);break;case 2:g=f.getInt16(u,!0);break;case 3:g=f.getUint16(u,!0);break;case 4:g=f.getInt32(u,!0);break;case 5:g=f.getUInt32(u,!0);break;case 6:g=f.getFloat32(u,!0);break;case 7:g=f.getFloat64(u,!0);break;default:throw"the decoder does not understand this pixel type"}return g},swapDimensionOrder:function(h,u,c,f,g){var d=0,v=0,A=0,p=0,m=h;if(c>1)if(m=new f(u*c),g)for(d=0;d<u;d++)for(p=d,A=0;A<c;A++,p+=u)m[p]=h[v++];else for(d=0;d<u;d++)for(p=d,A=0;A<c;A++,p+=u)m[v++]=h[p];return m}},o=function(h,u,c){this.val=h,this.left=u,this.right=c},l={decode:function(h,u){u=u||{};var c=u.noDataValue,f=0,g={};g.ptr=u.inputOffset||0,g.pixels={},s.readHeaderInfo(h,g);var d=g.headerInfo,v=d.fileVersion,A=s.getDataTypeArray(d.imageType);if(v>5)throw"unsupported lerc version 2."+v;s.readMask(h,g),d.numValidPixel!==d.width*d.height&&!g.pixels.resultMask&&(g.pixels.resultMask=u.maskData);var p=d.width*d.height;g.pixels.resultPixels=new A(p*d.numDims),g.counter={onesweep:0,uncompressed:0,lut:0,bitstuffer:0,constant:0,constantoffset:0};var m=!u.returnPixelInterleavedDims;if(d.numValidPixel!==0)if(d.zMax===d.zMin)s.constructConstantSurface(g,m);else if(v>=4&&s.checkMinMaxRanges(h,g))s.constructConstantSurface(g,m);else{var y=new DataView(h,g.ptr,2),I=y.getUint8(0);if(g.ptr++,I)s.readDataOneSweep(h,g,A,m);else if(v>1&&d.imageType<=1&&Math.abs(d.maxZError-.5)<1e-5){var _=y.getUint8(1);if(g.ptr++,g.encodeMode=_,_>2||v<4&&_>1)throw"Invalid Huffman flag "+_;_?s.readHuffman(h,g,A,m):s.readTiles(h,g,A,m)}else s.readTiles(h,g,A,m)}g.eofOffset=g.ptr;var C;u.inputOffset?(C=g.headerInfo.blobSize+u.inputOffset-g.ptr,Math.abs(C)>=1&&(g.eofOffset=u.inputOffset+g.headerInfo.blobSize)):(C=g.headerInfo.blobSize-g.ptr,Math.abs(C)>=1&&(g.eofOffset=g.headerInfo.blobSize));var x={width:d.width,height:d.height,pixelData:g.pixels.resultPixels,minValue:d.zMin,maxValue:d.zMax,validPixelCount:d.numValidPixel,dimCount:d.numDims,dimStats:{minValues:d.minValues,maxValues:d.maxValues},maskData:g.pixels.resultMask};if(g.pixels.resultMask&&s.isValidPixelValue(d.imageType,c)){var w=g.pixels.resultMask;for(f=0;f<p;f++)w[f]||(x.pixelData[f]=c);x.noDataValue=c}return g.noDataValue=c,u.returnFileInfo&&(x.fileInfo=s.formatFileInfo(g)),x},getBandCount:function(h){var u=0,c=0,f={};for(f.ptr=0,f.pixels={};c<h.byteLength-58;)s.readHeaderInfo(h,f),c+=f.headerInfo.blobSize,u++,f.ptr=c;return u}};return l}(),n=function(){var a=new ArrayBuffer(4),s=new Uint8Array(a),o=new Uint32Array(a);return o[0]=1,s[0]===1}(),r={decode:function(a,s){if(!n)throw"Big endian system is not supported.";s=s||{};var o=s.inputOffset||0,l=new Uint8Array(a,o,10),h=String.fromCharCode.apply(null,l),u,c;if(h.trim()==="CntZImage")u=e,c=1;else if(h.substring(0,5)==="Lerc2")u=i,c=2;else throw"Unexpected file identifier string: "+h;for(var f=0,g=a.byteLength-10,d,v=[],A,p,m={width:0,height:0,pixels:[],pixelType:s.pixelType,mask:null,statistics:[]},y=0;o<g;){var I=u.decode(a,{inputOffset:o,encodedMaskData:d,maskData:p,returnMask:f===0,returnEncodedMask:f===0,returnFileInfo:!0,returnPixelInterleavedDims:s.returnPixelInterleavedDims,pixelType:s.pixelType||null,noDataValue:s.noDataValue||null});o=I.fileInfo.eofOffset,p=I.maskData,f===0&&(d=I.encodedMaskData,m.width=I.width,m.height=I.height,m.dimCount=I.dimCount||1,m.pixelType=I.pixelType||I.fileInfo.pixelType,m.mask=p),c>1&&(p&&v.push(p),I.fileInfo.mask&&I.fileInfo.mask.numBytes>0&&y++),f++,m.pixels.push(I.pixelData),m.statistics.push({minValue:I.minValue,maxValue:I.maxValue,noDataValue:I.noDataValue,dimStats:I.dimStats})}var _,C,x;if(c>1&&y>1){for(x=m.width*m.height,m.bandMasks=v,p=new Uint8Array(x),p.set(v[0]),_=1;_<v.length;_++)for(A=v[_],C=0;C<x;C++)p[C]=p[C]&A[C];m.maskData=p}return m}};t.exports?t.exports=r:this.Lerc=r})()})(JY);const lke=JY.exports;let QA,to,ER;const SR={env:{emscripten_notify_memory_growth:function(t){ER=new Uint8Array(to.exports.memory.buffer)}}};class hke{init(){return QA||(typeof fetch!="undefined"?QA=fetch("data:application/wasm;base64,"+eZ).then(e=>e.arrayBuffer()).then(e=>WebAssembly.instantiate(e,SR)).then(this._init):QA=WebAssembly.instantiate(Buffer.from(eZ,"base64"),SR).then(this._init),QA)}_init(e){to=e.instance,SR.env.emscripten_notify_memory_growth(0)}decode(e,i=0){if(!to)throw new Error("ZSTDDecoder: Await .init() before decoding.");const n=e.byteLength,r=to.exports.malloc(n);ER.set(e,r),i=i||Number(to.exports.ZSTD_findDecompressedSize(r,n));const a=to.exports.malloc(i),s=to.exports.ZSTD_decompress(a,i,r,n),o=ER.slice(a,a+s);return to.exports.free(r),to.exports.free(a),o}}const eZ="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IAMNACAEQQNxBEADQCACRQ0FIAAgAkF/aiICaiIDIAEgAmotAAA6AAAgA0EDcQ0ACwsgAkEDTQ0AA0AgACACQXxqIgJqIAEgAmooAgA2AgAgAkEDSw0ACwsgAkUNAgNAIAAgAkF/aiICaiABIAJqLQAAOgAAIAINAAsMAgsgAkEDTQ0AIAIhBANAIAMgASgCADYCACABQQRqIQEgA0EEaiEDIARBfGoiBEEDSw0ACyACQQNxIQILIAJFDQADQCADIAEtAAA6AAAgA0EBaiEDIAFBAWohASACQX9qIgINAAsLIAAL8wICAn8BfgJAIAJFDQAgACACaiIDQX9qIAE6AAAgACABOgAAIAJBA0kNACADQX5qIAE6AAAgACABOgABIANBfWogAToAACAAIAE6AAIgAkEHSQ0AIANBfGogAToAACAAIAE6AAMgAkEJSQ0AIABBACAAa0EDcSIEaiIDIAFB/wFxQYGChAhsIgE2AgAgAyACIARrQXxxIgRqIgJBfGogATYCACAEQQlJDQAgAyABNgIIIAMgATYCBCACQXhqIAE2AgAgAkF0aiABNgIAIARBGUkNACADIAE2AhggAyABNgIUIAMgATYCECADIAE2AgwgAkFwaiABNgIAIAJBbGogATYCACACQWhqIAE2AgAgAkFkaiABNgIAIAQgA0EEcUEYciIEayICQSBJDQAgAa0iBUIghiAFhCEFIAMgBGohAQNAIAEgBTcDGCABIAU3AxAgASAFNwMIIAEgBTcDACABQSBqIQEgAkFgaiICQR9LDQALCyAACy8BAn8gACgCBCAAKAIAQQJ0aiICLQACIQMgACACLwEAIAEgAi0AAxAIajYCACADCy8BAn8gACgCBCAAKAIAQQJ0aiICLQACIQMgACACLwEAIAEgAi0AAxAFajYCACADCx8AIAAgASACKAIEEAg2AgAgARAEGiAAIAJBCGo2AgQLCAAgAGdBH3MLugUBDX8jAEEQayIKJAACfyAEQQNNBEAgCkEANgIMIApBDGogAyAEEAsaIAAgASACIApBDGpBBBAVIgBBbCAAEAMbIAAgACAESxsMAQsgAEEAIAEoAgBBAXRBAmoQECENQVQgAygAACIGQQ9xIgBBCksNABogAiAAQQVqNgIAIAMgBGoiAkF8aiEMIAJBeWohDiACQXtqIRAgAEEGaiELQQQh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ASIDNgLE4AEgACgCvOABIQQgACABNgK84AEgACABIAJqNgK44AEgACABIAQgA2tqNgLA4AELpgEBAX8gACAAKALs4QEQFjYCyOABIABCADcD+OABIABCADcDuOABIABBwOABakIANwMAIABBqNAAaiIBQYyAgOAANgIAIABBADYCmOIBIABCADcDiOEBIABCAzcDgOEBIABBrNABakHgEikCADcCACAAQbTQAWpB6BIoAgA2AgAgACABNgIMIAAgAEGYIGo2AgggACAAQaAwajYCBCAAIABBEGo2AgALYQEBf0G4fyEDAkAgAUEDSQ0AIAIgABAhIgFBA3YiADYCCCACIAFBAXE2AgQgAiABQQF2QQNxIgM2AgACQCADQX9qIgFBAksNAAJAIAFBAWsOAgEAAgtBbA8LIAAhAwsgAwsMACAAIAEgAkEAEC4LiAQCA38CfiADEBYhBCAAQQBBKBAQIQAgBCACSwRAIAQPCyABRQRAQX8PCwJAAkAgA0EBRg0AIAEoAAAiBkGo6r5pRg0AQXYhAyAGQXBxQdDUtMIBRw0BQQghAyACQQhJDQEgAEEAQSgQECEAIAEoAAQhASAAQQE2AhQgACABrTcDAEEADwsgASACIAMQLyIDIAJLDQAgACADNgIYQXIhAyABIARqIgVBf2otAAAiAkEIcQ0AIAJBIHEiBkUEQEFwIQMgBS0AACIFQacBSw0BIAVBB3GtQgEgBUEDdkEKaq2GIgdCA4h+IAd8IQggBEEBaiEECyACQQZ2IQMgAkECdiEFAkAgAkEDcUF/aiICQQJLBEBBACECDAELAkACQAJAIAJBAWsOAgECAAsgASAEai0AACECIARBAWohBAwCCyABIARqLwAAIQIgBEECaiEEDAELIAEgBGooAAAhAiAEQQRqIQQLIAVBAXEhBQJ+AkACQAJAIANBf2oiA0ECTQRAIANBAWsOAgIDAQtCfyAGRQ0DGiABIARqMQAADAMLIAEgBGovAACtQoACfAwCCyABIARqKAAArQwBCyABIARqKQAACyEHIAAgBTYCICAAIAI2AhwgACAHNwMAQQAhAyAAQQA2AhQgACAHIAggBhsiBzcDCCAAIAdCgIAIIAdCgIAIVBs+AhALIAMLWwEBf0G4fyEDIAIQFiICIAFNBH8gACACakF/ai0AACIAQQNxQQJ0QaAeaigCACACaiAAQQZ2IgFBAnRBsB5qKAIAaiAAQSBxIgBFaiABRSAAQQV2cWoFQbh/CwsdACAAKAKQ4gEQWiAAQQA2AqDiASAAQgA3A5DiAQu1AwEFfyMAQZACayIKJABBuH8hBgJAIAVFDQAgBCwAACIIQf8BcSEHAkAgCEF/TARAIAdBgn9qQQF2IgggBU8NAkFsIQYgB0GBf2oiBUGAAk8NAiAEQQFqIQdBACEGA0AgBiAFTwRAIAUhBiAIIQcMAwUgACAGaiAHIAZBAXZqIgQtAABBBHY6AAAgACAGQQFyaiAELQAAQQ9xOgAAIAZBAmohBgwBCwAACwALIAcgBU8NASAAIARBAWogByAKEFMiBhADDQELIAYhBEEAIQYgAUEAQTQQECEJQQAhBQNAIAQgBkcEQCAAIAZqIggtAAAiAUELSwRAQWwhBgwDBSAJIAFBAnRqIgEgASgCAEEBajYCACAGQQFqIQZBASAILQAAdEEBdSAFaiEFDAILAAsLQWwhBiAFRQ0AIAUQFEEBaiIBQQxLDQAgAyABNgIAQQFBASABdCAFayIDEBQiAXQgA0cNACAAIARqIAFBAWoiADoAACAJIABBAnRqIgAgACgCAEEBajYCACAJKAIEIgBBAkkgAEEBcXINACACIARBAWo2AgAgB0EBaiEGCyAKQZACaiQAIAYLxhEBDH8jAEHwAGsiBSQAQWwhCwJAIANBCkkNACACLwAAIQogAi8AAiEJIAIvAAQhByAFQQhqIAQQDgJAIAMgByAJIApqakEGaiIMSQ0AIAUtAAohCCAFQdgAaiACQQZqIgIgChAGIgsQAw0BIAVBQGsgAiAKaiICIAkQBiILEAMNASAFQShqIAIgCWoiAiAHEAYiCxADDQEgBUEQaiACIAdqIAMgDGsQBiILEAMNASAAIAFqIg9BfWohECAEQQRqIQZBASELIAAgAUEDakECdiIDaiIMIANqIgIgA2oiDiEDIAIhBCAMIQcDQCALIAMgEElxBEAgACAGIAVB2ABqIAgQAkECdGoiCS8BADsAACAFQdgAaiAJLQACEAEgCS0AAyELIAcgBiAFQUBrIAgQAkECdGoiCS8BADsAACAFQUBrIAktAAIQASAJLQADIQogBCAGIAVBKGogCBACQQJ0aiIJLwEAOwAAIAVBKGogCS0AAhABIAktAAMhCSADIAYgBUEQaiAIEAJBAnRqIg0vAQA7AAAgBUEQaiANLQACEAEgDS0AAyENIAAgC2oiCyAGIAVB2ABqIAgQAkECdGoiAC8BADsAACAFQdgAaiAALQACEAEgAC0AAyEAIAcgCmoiCiAGIAVBQGsgCBACQQJ0aiIHLwEAOwAAIAVBQGsgBy0AAhABIActAAMhByAEIAlqIgkgBiAFQShqIAgQAkECdGoiBC8BADsAACAFQShqIAQtAAIQASAELQADIQQgAyANaiIDIAYgBUEQaiAIEAJBAnRqIg0vAQA7AAAgBUEQaiANLQACEAEgACALaiEAIAcgCmohByAEIAlqIQQgAyANLQADaiEDIAVB2ABqEA0gBUFAaxANciAFQShqEA1yIAVBEGoQDXJFIQsMAQsLIAQgDksgByACS3INAEFsIQsgACAMSw0BIAxBfWohCQNAQQAgACAJSSAFQdgAahAEGwRAIAAgBiAFQdgAaiAIEAJBAnRqIgovAQA7AAAgBUHYAGogCi0AAhABIAAgCi0AA2oiACAGIAVB2ABqIAgQAkECdGoiCi8BADsAACAFQdgAaiAKLQACEAEgACAKLQADaiEADAEFIAxBfmohCgNAIAVB2ABqEAQgACAKS3JFBEAgACAGIAVB2ABqIAgQAkECdGoiCS8BADsAACAFQdgAaiAJLQACEAEgACAJLQADaiEADAELCwNAIAAgCk0EQCAAIAYgBUHYAGogCBACQQJ0aiIJLwEAOwAAIAVB2ABqIAktAAIQASAAIAktAANqIQAMAQsLAkAgACAMTw0AIAAgBiAFQdgAaiAIEAIiAEECdGoiDC0AADoAACAMLQADQQFGBEAgBUHYAGogDC0AAhABDAELIAUoAlxBH0sNACAFQdgAaiAGIABBAnRqLQACEAEgBSgCXEEhSQ0AIAVBIDYCXAsgAkF9aiEMA0BBACAHIAxJIAVBQGsQBBsEQCAHIAYgBUFAayAIEAJBAnRqIgAvAQA7AAAgBUFAayAALQACEAEgByAALQADaiIAIAYgBUFAayAIEAJBAnRqIgcvAQA7AAAgBUFAayAHLQACEAEgACAHLQADaiEHDAEFIAJBfmohDANAIAVBQGsQBCAHIAxLckUEQCAHIAYgBUFAayAIEAJBAnRqIgAvAQA7AAAgBUFAayAALQACEAEgByAALQADaiEHDAELCwNAIAcgDE0EQCAHIAYgBUFAayAIEAJBAnRqIgAvAQA7AAAgBUFAayAALQACEAEgByAALQADaiEHDAELCwJAIAcgAk8NACAHIAYgBUFAayAIEAIiAEECdGoiAi0AADoAACACLQADQQFGBEAgBUFAayACLQACEAEMAQsgBSgCREEfSw0AIAVBQGsgBiAAQQJ0ai0AAhABIAUoAkRBIUkNACAFQSA2AkQLIA5BfWohAgNAQQAgBCACSSAFQShqEAQbBEAgBCAGIAVBKGogCBACQQJ0aiIALwEAOwAAIAVBKGogAC0AAhABIAQgAC0AA2oiACAGIAVBKGogCBACQQJ0aiIELwEAOwAAIAVBKGogBC0AAhABIAAgBC0AA2ohBAwBBSAOQX5qIQIDQCAFQShqEAQgBCACS3JFBEAgBCAGIAVBKGogCBACQQJ0aiIALwEAOwAAIAVBKGogAC0AAhABIAQgAC0AA2ohBAwBCwsDQCAEIAJNBEAgBCAGIAVBKGogCBACQQJ0aiIALwEAOwAAIAVBKGogAC0AAhABIAQgAC0AA2ohBAwBCwsCQCAEIA5PDQAgBCAGIAVBKGogCBACIgBBAnRqIgItAAA6AAAgAi0AA0EBRgRAIAVBKGogAi0AAhABDAELIAUoAixBH0sNACAFQShqIAYgAEECdGotAAIQASAFKAIsQSFJDQAgBUEgNgIsCwNAQQAgAyAQSSAFQRBqEAQbBEAgAyAGIAVBEGogCBACQQJ0aiIALwEAOwAAIAVBEGogAC0AAhABIAMgAC0AA2oiACAGIAVBEGogCBACQQJ0aiICLwEAOwAAIAVBEGogAi0AAhABIAAgAi0AA2ohAwwBBSAPQX5qIQIDQCAFQRBqEAQgAyACS3JFBEAgAyAGIAVBEGogCBACQQJ0aiIALwEAOwAAIAVBEGogAC0AAhABIAMgAC0AA2ohAwwBCwsDQCADIAJNBEAgAyAGIAVBEGogCBACQQJ0aiIALwEAOwAAIAVBEGogAC0AAhABIAMgAC0AA2ohAwwBCwsCQCADIA9PDQAgAyAGIAVBEGogCBACIgBBAnRqIgItAAA6AAAgAi0AA0EBRgRAIAVBEGogAi0AAhABDAELIAUoAhRBH0sNACAFQRBqIAYgAEECdGotAAIQASAFKAIUQSFJDQAgBUEgNgIUCyABQWwgBUHYAGoQCiAFQUBrEApxIAVBKGoQCnEgBUEQahAKcRshCwwJCwAACwALAAALAAsAAAsACwAACwALQWwhCwsgBUHwAGokACALC7UEAQ5/IwBBEGsiBiQAIAZBBGogABAOQVQhBQJAIARB3AtJDQAgBi0ABCEHIANB8ARqQQBB7AAQECEIIAdBDEsNACADQdwJaiIJIAggBkEIaiAGQQxqIAEgAhAxIhAQA0UEQCAGKAIMIgQgB0sNASADQdwFaiEPIANBpAVqIREgAEEEaiESIANBqAVqIQEgBCEFA0AgBSICQX9qIQUgCCACQQJ0aigCAEUNAAsgAkEBaiEOQQEhBQNAIAUgDk9FBEAgCCAFQQJ0IgtqKAIAIQwgASALaiAKNgIAIAVBAWohBSAKIAxqIQoMAQsLIAEgCjYCAEEAIQUgBigCCCELA0AgBSALRkUEQCABIAUgCWotAAAiDEECdGoiDSANKAIAIg1BAWo2AgAgDyANQQF0aiINIAw6AAEgDSAFOgAAIAVBAWohBQwBCwtBACEBIANBADYCqAUgBEF/cyAHaiEJQQEhBQNAIAUgDk9FBEAgCCAFQQJ0IgtqKAIAIQwgAyALaiABNgIAIAwgBSAJanQgAWohASAFQQFqIQUMAQsLIAcgBEEBaiIBIAJrIgRrQQFqIQgDQEEBIQUgBCAIT0UEQANAIAUgDk9FBEAgBUECdCIJIAMgBEE0bGpqIAMgCWooAgAgBHY2AgAgBUEBaiEFDAELCyAEQQFqIQQMAQsLIBIgByAPIAogESADIAIgARBkIAZBAToABSAGIAc6AAYgACAGKAIENgIACyAQIQULIAZBEGokACAFC8ENAQt/IwBB8ABrIgUkAEFsIQkCQCADQQpJDQAgAi8AACEKIAIvAAIhDCACLwAEIQYgBUEIaiAEEA4CQCADIAYgCiAMampBBmoiDUkNACAFLQAKIQcgBUHYAGogAkEGaiICIAoQBiIJEAMNASAFQUBrIAIgCmoiAiAMEAYiCRADDQEgBUEoaiACIAxqIgIgBhAGIgkQAw0BIAVBEGogAiAGaiADIA1rEAYiCRADDQEgACABaiIOQX1qIQ8gBEEEaiEGQQEhCSAAIAFBA2pBAnYiAmoiCiACaiIMIAJqIg0hAyAMIQQgCiECA0AgCSADIA9JcQRAIAYgBUHYAGogBxACQQF0aiIILQAAIQsgBUHYAGogCC0AARABIAAgCzoAACAGIAVBQGsgBxACQQF0aiIILQAAIQsgBUFAayAILQABEAEgAiALOgAAIAYgBUEoaiAHEAJBAXRqIggtAAAhCyAFQShqIAgtAAEQASAEIAs6AAAgBiAFQRBqIAcQAkEBdGoiCC0AACELIAVBEGogCC0AARABIAMgCzoAACAGIAVB2ABqIAcQAkEBdGoiCC0AACELIAVB2ABqIAgtAAEQASAAIAs6AAEgBiAFQUBrIAcQAkEBdGoiCC0AACELIAVBQGsgCC0AARABIAIgCzoAASAGIAVBKGogBxACQQF0aiIILQAAIQsgBUEoaiAILQABEAEgBCALOgABIAYgBUEQaiAHEAJBAXRqIggtAAAhCyAFQRBqIAgtAAEQASADIAs6AAEgA0ECaiEDIARBAmohBCACQQJqIQIgAEECaiEAIAkgBUHYAGoQDUVxIAVBQGsQDUVxIAVBKGoQDUVxIAVBEGoQDUVxIQkMAQsLIAQgDUsgAiAMS3INAEFsIQkgACAKSw0BIApBfWohCQNAIAVB2ABqEAQgACAJT3JFBEAgBiAFQdgAaiAHEAJBAXRqIggtAAAhCyAFQdgAaiAILQABEAEgACALOgAAIAYgBUHYAGogBxACQQF0aiIILQAAIQsgBUHYAGogCC0AARABIAAgCzoAASAAQQJqIQAMAQsLA0AgBUHYAGoQBCAAIApPckUEQCAGIAVB2ABqIAcQAkEBdGoiCS0AACEIIAVB2ABqIAktAAEQASAAIAg6AAAgAEEBaiEADAELCwNAIAAgCkkEQCAGIAVB2ABqIAcQAkEBdGoiCS0AACEIIAVB2ABqIAktAAEQASAAIAg6AAAgAEEBaiEADAELCyAMQX1qIQADQCAFQUBrEAQgAiAAT3JFBEAgBiAFQUBrIAcQAkEBdGoiCi0AACEJIAVBQGsgCi0AARABIAIgCToAACAGIAVBQGsgBxACQQF0aiIKLQAAIQkgBUFAayAKLQABEAEgAiAJOgABIAJBAmohAgwBCwsDQCAFQUBrEAQgAiAMT3JFBEAgBiAFQUBrIAcQAkEBdGoiAC0AACEKIAVBQGsgAC0AARABIAIgCjoAACACQQFqIQIMAQsLA0AgAiAMSQRAIAYgBUFAayAHEAJBAXRqIgAtAAAhCiAFQUBrIAAtAAEQASACIAo6AAAgAkEBaiECDAELCyANQX1qIQADQCAFQShqEAQgBCAAT3JFBEAgBiAFQShqIAcQAkEBdGoiAi0AACEKIAVBKGogAi0AARABIAQgCjoAACAGIAVBKGogBxACQQF0aiICLQAAIQogBUEoaiACLQABEAEgBCAKOgABIARBAmohBAwBCwsDQCAFQShqEAQgBCANT3JFBEAgBiAFQShqIAcQAkEBdGoiAC0AACECIAVBKGogAC0AARABIAQgAjoAACAEQQFqIQQMAQsLA0AgBCANSQRAIAYgBUEoaiAHEAJBAXRqIgAtAAAhAiAFQShqIAAtAAEQASAEIAI6AAAgBEEBaiEEDAELCwNAIAVBEGoQBCADIA9PckUEQCAGIAVBEGogBxACQQF0aiIALQAAIQIgBUEQaiAALQABEAEgAyACOgAAIAYgBUEQaiAHEAJBAXRqIgAtAAAhAiAFQRBqIAAtAAEQASADIAI6AAEgA0ECaiEDDAELCwNAIAVBEGoQBCADIA5PckUEQCAGIAVBEGogBxACQQF0aiIALQAAIQIgBUEQaiAALQABEAEgAyACOgAAIANBAWohAwwBCwsDQCADIA5JBEAgBiAFQRBqIAcQAkEBdGoiAC0AACECIAVBEGogAC0AARABIAMgAjoAACADQQFqIQMMAQsLIAFBbCAFQdgAahAKIAVBQGsQCnEgBUEoahAKcSAFQRBqEApxGyEJDAELQWwhCQsgBUHwAGokACAJC8oCAQR/IwBBIGsiBSQAIAUgBBAOIAUtAAIhByAFQQhqIAIgAxAGIgIQA0UEQCAEQQRqIQIgACABaiIDQX1qIQQDQCAFQQhqEAQgACAET3JFBEAgAiAFQQhqIAcQAkEBdGoiBi0AACEIIAVBCGogBi0AARABIAAgCDoAACACIAVBCGogBxACQQF0aiIGLQAAIQggBUEIaiAGLQABEAEgACAIOgABIABBAmohAAwBCwsDQCAFQQhqEAQgACADT3JFBEAgAiAFQQhqIAcQAkEBdGoiBC0AACEGIAVBCGogBC0AARABIAAgBjoAACAAQQFqIQAMAQsLA0AgACADT0UEQCACIAVBCGogBxACQQF0aiIELQAAIQYgBUEIaiAELQABEAEgACAGOgAAIABBAWohAAwBCwsgAUFsIAVBCGoQChshAgsgBUEgaiQAIAILtgMBCX8jAEEQayIGJAAgBkEANgIMIAZBADYCCEFUIQQCQAJAIANBQGsiDCADIAZBCGogBkEMaiABIAIQMSICEAMNACAGQQRqIAAQDiAGKAIMIgcgBi0ABEEBaksNASAAQQRqIQogBkEAOgAFIAYgBzoABiAAIAYoAgQ2AgAgB0EBaiEJQQEhBANAIAQgCUkEQCADIARBAnRqIgEoAgAhACABIAU2AgAgACAEQX9qdCAFaiEFIARBAWohBAwBCwsgB0EBaiEHQQAhBSAGKAIIIQkDQCAFIAlGDQEgAyAFIAxqLQAAIgRBAnRqIgBBASAEdEEBdSILIAAoAgAiAWoiADYCACAHIARrIQhBACEEAkAgC0EDTQRAA0AgBCALRg0CIAogASAEakEBdGoiACAIOgABIAAgBToAACAEQQFqIQQMAAALAAsDQCABIABPDQEgCiABQQF0aiIEIAg6AAEgBCAFOgAAIAQgCDoAAyAEIAU6AAIgBCAIOgAFIAQgBToABCAEIAg6AAcgBCAFOgAGIAFBBGohAQwAAAsACyAFQQFqIQUMAAALAAsgAiEECyAGQRBqJAAgBAutAQECfwJAQYQgKAIAIABHIAAoAgBBAXYiAyABa0F4aiICQXhxQQhHcgR/IAIFIAMQJ0UNASACQQhqC0EQSQ0AIAAgACgCACICQQFxIAAgAWpBD2pBeHEiASAAa0EBdHI2AgAgASAANgIEIAEgASgCAEEBcSAAIAJBAXZqIAFrIgJBAXRyNgIAQYQgIAEgAkH/////B3FqQQRqQYQgKAIAIABGGyABNgIAIAEQJQsLygIBBX8CQAJAAkAgAEEIIABBCEsbZ0EfcyAAaUEBR2oiAUEESSAAIAF2cg0AIAFBAnRB/B5qKAIAIgJFDQADQCACQXhqIgMoAgBBAXZBeGoiBSAATwRAIAIgBUEIIAVBCEsbZ0Efc0ECdEGAH2oiASgCAEYEQCABIAIoAgQ2AgALDAMLIARBHksNASAEQQFqIQQgAigCBCICDQALC0EAIQMgAUEgTw0BA0AgAUECdEGAH2ooAgAiAkUEQCABQR5LIQIgAUEBaiEBIAJFDQEMAwsLIAIgAkF4aiIDKAIAQQF2QXhqIgFBCCABQQhLG2dBH3NBAnRBgB9qIgEoAgBGBEAgASACKAIENgIACwsgAigCACIBBEAgASACKAIENgIECyACKAIEIgEEQCABIAIoAgA2AgALIAMgAygCAEEBcjYCACADIAAQNwsgAwvhCwINfwV+IwBB8ABrIgckACAHIAAoAvDhASIINgJcIAEgAmohDSAIIAAoAoDiAWohDwJAAkAgBUUEQCABIQQMAQsgACgCxOABIRAgACgCwOABIREgACgCvOABIQ4gAEEBNgKM4QFBACEIA0AgCEEDRwRAIAcgCEECdCICaiAAIAJqQazQAWooAgA2AkQgCEEBaiEIDAELC0FsIQwgB0EYaiADIAQQBhADDQEgB0EsaiAHQRhqIAAoAgAQEyAHQTRqIAdBGGogACgCCBATIAdBPGogB0EYaiAAKAIEEBMgDUFgaiESIAEhBEEAIQwDQCAHKAIwIAcoAixBA3RqKQIAIhRCEIinQf8BcSEIIAcoAkAgBygCPEEDdGopAgAiFUIQiKdB/wFxIQsgBygCOCAHKAI0QQN0aikCACIWQiCIpyEJIBVCIIghFyAUQiCIpyECAkAgFkIQiKdB/wFxIgNBAk8EQAJAIAZFIANBGUlyRQRAIAkgB0EYaiADQSAgBygCHGsiCiAKIANLGyIKEAUgAyAKayIDdGohCSAHQRhqEAQaIANFDQEgB0EYaiADEAUgCWohCQwBCyAHQRhqIAMQBSAJaiEJIAdBGGoQBBoLIAcpAkQhGCAHIAk2AkQgByAYNwNIDAELAkAgA0UEQCACBEAgBygCRCEJDAMLIAcoAkghCQwBCwJAAkAgB0EYakEBEAUgCSACRWpqIgNBA0YEQCAHKAJEQX9qIgMgA0VqIQkMAQsgA0ECdCAHaigCRCIJIAlFaiEJIANBAUYNAQsgByAHKAJINgJMCwsgByAHKAJENgJIIAcgCTYCRAsgF6chAyALBEAgB0EYaiALEAUgA2ohAwsgCCALakEUTwRAIAdBGGoQBBoLIAgEQCAHQRhqIAgQBSACaiECCyAHQRhqEAQaIAcgB0EYaiAUQhiIp0H/AXEQCCAUp0H//wNxajYCLCAHIAdBGGogFUIYiKdB/wFxEAggFadB//8DcWo2AjwgB0EYahAEGiAHIAdBGGogFkIYiKdB/wFxEAggFqdB//8DcWo2AjQgByACNgJgIAcoAlwhCiAHIAk2AmggByADNgJkAkACQAJAIAQgAiADaiILaiASSw0AIAIgCmoiEyAPSw0AIA0gBGsgC0Egak8NAQsgByAHKQNoNwMQIAcgBykDYDcDCCAEIA0gB0EIaiAHQdwAaiAPIA4gESAQEB4hCwwBCyACIARqIQggBCAKEAcgAkERTwRAIARBEGohAgNAIAIgCkEQaiIKEAcgAkEQaiICIAhJDQALCyAIIAlrIQIgByATNgJcIAkgCCAOa0sEQCAJIAggEWtLBEBBbCELDAILIBAgAiAOayICaiIKIANqIBBNBEAgCCAKIAMQDxoMAgsgCCAKQQAgAmsQDyEIIAcgAiADaiIDNgJkIAggAmshCCAOIQILIAlBEE8EQCADIAhqIQMDQCAIIAIQByACQRBqIQIgCEEQaiIIIANJDQALDAELAkAgCUEHTQRAIAggAi0AADoAACAIIAItAAE6AAEgCCACLQACOgACIAggAi0AAzoAAyAIQQRqIAIgCUECdCIDQcAeaigCAGoiAhAXIAIgA0HgHmooAgBrIQIgBygCZCEDDAELIAggAhAMCyADQQlJDQAgAyAIaiEDIAhBCGoiCCACQQhqIgJrQQ9MBEADQCAIIAIQDCACQQhqIQIgCEEIaiIIIANJDQAMAgALAAsDQCAIIAIQByACQRBqIQIgCEEQaiIIIANJDQALCyAHQRhqEAQaIAsgDCALEAMiAhshDCAEIAQgC2ogAhshBCAFQX9qIgUNAAsgDBADDQFBbCEMIAdBGGoQBEECSQ0BQQAhCANAIAhBA0cEQCAAIAhBAnQiAmpBrNABaiACIAdqKAJENgIAIAhBAWohCAwBCwsgBygCXCEIC0G6fyEMIA8gCGsiACANIARrSw0AIAQEfyAEIAggABALIABqBUEACyABayEMCyAHQfAAaiQAIAwLkRcCFn8FfiMAQdABayIHJAAgByAAKALw4QEiCDYCvAEgASACaiESIAggACgCgOIBaiETAkACQCAFRQRAIAEhAwwBCyAAKALE4AEhESAAKALA4AEhFSAAKAK84AEhDyAAQQE2AozhAUEAIQgDQCAIQQNHBEAgByAIQQJ0IgJqIAAgAmpBrNABaigCADYCVCAIQQFqIQgMAQsLIAcgETYCZCAHIA82AmAgByABIA9rNgJoQWwhECAHQShqIAMgBBAGEAMNASAFQQQgBUEESBshFyAHQTxqIAdBKGogACgCABATIAdBxABqIAdBKGogACgCCBATIAdBzABqIAdB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IAdB0AFqJAAgEAslACAAQgA3AgAgAEEAOwEIIABBADoACyAAIAE2AgwgACACOgAKC7QFAQN/IwBBMGsiBCQAIABB/wFqIgVBfWohBgJAIAMvAQIEQCAEQRhqIAEgAhAGIgIQAw0BIARBEGogBEEYaiADEBwgBEEIaiAEQRhqIAMQHCAAIQMDQAJAIARBGGoQBCADIAZPckUEQCADIARBEGogBEEYahASOgAAIAMgBEEIaiAEQRhqEBI6AAEgBEEYahAERQ0BIANBAmohAwsgBUF+aiEFAn8DQEG6fyECIAMiASAFSw0FIAEgBEEQaiAEQRhqEBI6AAAgAUEBaiEDIARBGGoQBEEDRgRAQQIhAiAEQQhqDAILIAMgBUsNBSABIARBCGogBEEYahASOgABIAFBAmohA0EDIQIgBEEYahAEQQNHDQALIARBEGoLIQUgAyAFIARBGGoQEjoAACABIAJqIABrIQIMAwsgAyAEQRBqIARBGGoQEjoAAiADIARBCGogBEEYahASOgADIANBBGohAwwAAAsACyAEQRhqIAEgAhAGIgIQAw0AIARBEGogBEEYaiADEBwgBEEIaiAEQRhqIAMQHCAAIQMDQAJAIARBGGoQBCADIAZPckUEQCADIARBEGogBEEYahAROgAAIAMgBEEIaiAEQRhqEBE6AAEgBEEYahAERQ0BIANBAmohAwsgBUF+aiEFAn8DQEG6fyECIAMiASAFSw0EIAEgBEEQaiAEQRhqEBE6AAAgAUEBaiEDIARBGGoQBEEDRgRAQQIhAiAEQQhqDAILIAMgBUsNBCABIARBCGogBEEYahAROgABIAFBAmohA0EDIQIgBEEYahAEQQNHDQALIARBEGoLIQUgAyAFIARBGGoQEToAACABIAJqIABrIQIMAgsgAyAEQRBqIARBGGoQEToAAiADIARBCGogBEEYahAROgADIANBBGohAwwAAAsACyAEQTBqJAAgAgtpAQF/An8CQAJAIAJBB00NACABKAAAQbfIwuF+Rw0AIAAgASgABDYCmOIBQWIgAEEQaiABIAIQPiIDEAMNAhogAEKBgICAEDcDiOEBIAAgASADaiACIANrECoMAQsgACABIAIQKgtBAAsLrQMBBn8jAEGAAWsiAyQAQWIhCAJAIAJBCUkNACAAQZjQAGogAUEIaiIEIAJBeGogAEGY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wOABCwutAgIEfwF+IwBBQGoiBCQAAkACQCACQQhJDQAgASgAAEFwcUHQ1LTCAUcNACABIAIQIiEBIABCADcDCCAAQQA2AgQgACABNgIADAELIARBGGogASACEC0iAxADBEAgACADEBoMAQsgAwRAIABBuH8QGgwBCyACIAQoAjAiA2shAiABIANqIQMDQAJAIAAgAyACIARBCGoQLCIFEAMEfyAFBSACIAVBA2oiBU8NAUG4fwsQGgwCCyAGQQFqIQYgAiAFayECIAMgBWohAyAEKAIMRQ0ACyAEKAI4BEAgAkEDTQRAIABBuH8QGgwCCyADQQRqIQMLIAQoAighAiAEKQMYIQcgAEEANgIEIAAgAyABazYCACAAIAIgBmytIAcgB0J/URs3AwgLIARBQGskAAslAQF/IwBBEGsiAiQAIAIgACABEFEgAigCACEAIAJBEGokACAAC30BBH8jAEGQBGsiBCQAIARB/wE2AggCQCAEQRBqIARBCGogBEEMaiABIAIQFSIGEAMEQCAGIQUMAQtBVCEFIAQoAgwiB0EGSw0AIAMgBEEQaiAEKAIIIAcQQSIFEAMNACAAIAEgBmogAiAGayADEDwhBQsgBEGQBGokACAFC4cBAgJ/An5BABAWIQMCQANAIAEgA08EQAJAIAAoAABBcHFB0NS0wgFGBEAgACABECIiAhADRQ0BQn4PCyAAIAEQVSIEQn1WDQMgBCAFfCIFIARUIQJCfiEEIAINAyAAIAEQUiICEAMNAwsgASACayEBIAAgAmohAAwBCwtCfiAFIAEbIQQLIAQLPwIBfwF+IwBBMGsiAiQAAn5CfiACQQhqIAAgARAtDQAaQgAgAigCHEEBRg0AGiACKQMICyEDIAJBMGokACADC40BAQJ/IwBBMGsiASQAAkAgAEUNACAAKAKI4gENACABIABB/OEBaigCADYCKCABIAApAvThATcDICAAEDAgACgCqOIBIQIgASABKAIoNgIYIAEgASkDIDcDECACIAFBEGoQGyAAQQA2AqjiASABIAEoAig2AgggASABKQMgNwMAIAAgARAbCyABQTBqJAALKgECfyMAQRBrIgAkACAAQQA2AgggAEIANwMAIAAQWCEBIABBEGokACABC4cBAQN/IwBBEGsiAiQAAkAgACgCAEUgACgCBEVzDQAgAiAAKAIINgIIIAIgACkCADcDAAJ/IAIoAgAiAQRAIAIoAghBqOMJIAERBQAMAQtBqOMJECgLIgFFDQAgASAAKQIANwL04QEgAUH84QFqIAAoAgg2AgAgARBZIAEhAwsgAkEQaiQAIAMLywEBAn8jAEEgayIBJAAgAEGBgIDAADYCtOIBIABBADYCiOIBIABBADYC7OEBIABCADcDkOIBIABBADYCpOMJIABBADYC3OIBIABCADcCzOIBIABBADYCvOIBIABBADYCxOABIABCADcCnOIBIABBpOIBakIANwIAIABBrOIBakEANgIAIAFCADcCECABQgA3AhggASABKQMYNwMIIAEgASkDEDcDACABKAIIQQh2QQFxIQIgAEEANgLg4gEgACACNgKM4gEgAUEgaiQAC3YBA38jAEEwayIBJAAgAARAIAEgAEHE0AFqIgIoAgA2AiggASAAKQK80AE3AyAgACgCACEDIAEgAigCADYCGCABIAApArzQATcDECADIAFBEGoQGyABIAEoAig2AgggASABKQMgNwMAIAAgARAbCyABQTBqJAALzAEBAX8gACABKAK00AE2ApjiASAAIAEoAgQiAjYCwOABIAAgAjYCvOABIAAgAiABKAIIaiICNgK44AEgACACNgLE4AEgASgCuNABBEAgAEKBgICAEDcDiOEBIAAgAUGk0ABqNgIMIAAgAUGUIGo2AgggACABQZwwajYCBCAAIAFBDGo2AgAgAEGs0AFqIAFBqNABaigCADYCACAAQbDQAWogAUGs0AFqKAIANgIAIABBtNABaiABQbDQAWooAgA2AgAPCyAAQgA3A4jhAQs7ACACRQRAQbp/DwsgBEUEQEFsDwsgAiAEEGAEQCAAIAEgAiADIAQgBRBhDwsgACABIAIgAyAEIAUQZQtGAQF/IwBBEGsiBSQAIAVBCGogBBAOAn8gBS0ACQRAIAAgASACIAMgBBAyDAELIAAgASACIAMgBBA0CyEAIAVBEGokACAACzQAIAAgAyAEIAUQNiIFEAMEQCAFDwsgBSAESQR/IAEgAiADIAVqIAQgBWsgABA1BUG4fwsLRgEBfyMAQRBrIgUkACAFQQhqIAQQDgJ/IAUtAAkEQCAAIAEgAiADIAQQYgwBCyAAIAEgAiADIAQQNQshACAFQRBqJAAgAAtZAQF/QQ8hAiABIABJBEAgAUEE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",tZ=new hke;class uke extends Tl{constructor(e){super(),this.planarConfiguration=typeof e.PlanarConfiguration!="undefined"?e.PlanarConfiguration:1,this.samplesPerPixel=typeof e.SamplesPerPixel!="undefined"?e.SamplesPerPixel:1,this.addCompression=e.LercParameters[Pue.AddCompression]}decodeBlock(e){switch(this.addCompression){case tI.None:break;case tI.Deflate:e=KY(new Uint8Array(e)).buffer;break;case tI.Zstandard:e=tZ.decode(new Uint8Array(e)).buffer;break;default:throw new Error(`Unsupported LERC additional compression method identifier: ${this.addCompression}`)}return lke.decode(e,{returnPixelInterleavedDims:this.planarConfiguration===1}).pixels[0].buffer}}const cke=Object.freeze(Object.defineProperty({__proto__:null,zstd:tZ,default:uke},Symbol.toStringTag,{value:"Module"}));class fke extends Tl{constructor(){if(super(),typeof createImageBitmap=="undefined")throw new Error("Cannot decode WebImage as `createImageBitmap` is not available");if(typeof document=="undefined"&&typeof OffscreenCanvas=="undefined")throw new Error("Cannot decode WebImage as neither `document` nor `OffscreenCanvas` is not available")}decode(e,i){return ze(this,null,function*(){const n=new Blob([i]),r=yield createImageBitmap(n);let a;typeof document!="undefined"?(a=document.createElement("canvas"),a.width=r.width,a.height=r.height):a=new OffscreenCanvas(r.width,r.height);const s=a.getContext("2d");return s.drawImage(r,0,0),s.getImageData(0,0,r.width,r.height).data.buffer})}}const gke=Object.freeze(Object.defineProperty({__proto__:null,default:fke},Symbol.toStringTag,{value:"Module"})),dke=Worker;function Ake(){const t='function A(A,e,t,i,r,I,g){try{var n=A[I](g),a=n.value}catch(A){return void t(A)}n.done?e(a):Promise.resolve(a).then(i,r)}function e(e){return function(){var t=this,i=arguments;return new Promise((function(r,I){var g=e.apply(t,i);function n(e){A(g,r,I,n,a,"next",e)}function a(e){A(g,r,I,n,a,"throw",e)}n(void 0)}))}}function t(A){return t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(A){return typeof A}:function(A){return A&&"function"==typeof Symbol&&A.constructor===Symbol&&A!==Symbol.prototype?"symbol":typeof A},t(A)}var i={exports:{}};!function(A){var e=function(A){var e,i=Object.prototype,r=i.hasOwnProperty,I="function"==typeof Symbol?Symbol:{},g=I.iterator||"@@iterator",n=I.asyncIterator||"@@asyncIterator",a=I.toStringTag||"@@toStringTag";function o(A,e,t){return Object.defineProperty(A,e,{value:t,enumerable:!0,configurable:!0,writable:!0}),A[e]}try{o({},"")}catch(A){o=function(A,e,t){return A[e]=t}}function B(A,e,t,i){var r=e&&e.prototype instanceof h?e:h,I=Object.create(r.prototype),g=new S(i||[]);return I._invoke=function(A,e,t){var i=Q;return function(r,I){if(i===s)throw new Error("Generator is already running");if(i===f){if("throw"===r)throw I;return R()}for(t.method=r,t.arg=I;;){var g=t.delegate;if(g){var n=m(g,t);if(n){if(n===c)continue;return n}}if("next"===t.method)t.sent=t._sent=t.arg;else if("throw"===t.method){if(i===Q)throw i=f,t.arg;t.dispatchException(t.arg)}else"return"===t.method&&t.abrupt("return",t.arg);i=s;var a=C(A,e,t);if("normal"===a.type){if(i=t.done?f:E,a.arg===c)continue;return{value:a.arg,done:t.done}}"throw"===a.type&&(i=f,t.method="throw",t.arg=a.arg)}}}(A,t,g),I}function C(A,e,t){try{return{type:"normal",arg:A.call(e,t)}}catch(A){return{type:"throw",arg:A}}}A.wrap=B;var Q="suspendedStart",E="suspendedYield",s="executing",f="completed",c={};function h(){}function l(){}function u(){}var w={};o(w,g,(function(){return this}));var d=Object.getPrototypeOf,D=d&&d(d(v([])));D&&D!==i&&r.call(D,g)&&(w=D);var y=u.prototype=h.prototype=Object.create(w);function k(A){["next","throw","return"].forEach((function(e){o(A,e,(function(A){return this._invoke(e,A)}))}))}function p(A,e){function i(I,g,n,a){var o=C(A[I],A,g);if("throw"!==o.type){var B=o.arg,Q=B.value;return Q&&"object"===t(Q)&&r.call(Q,"__await")?e.resolve(Q.__await).then((function(A){i("next",A,n,a)}),(function(A){i("throw",A,n,a)})):e.resolve(Q).then((function(A){B.value=A,n(B)}),(function(A){return i("throw",A,n,a)}))}a(o.arg)}var I;this._invoke=function(A,t){function r(){return new e((function(e,r){i(A,t,e,r)}))}return I=I?I.then(r,r):r()}}function m(A,t){var i=A.iterator[t.method];if(i===e){if(t.delegate=null,"throw"===t.method){if(A.iterator.return&&(t.method="return",t.arg=e,m(A,t),"throw"===t.method))return c;t.method="throw",t.arg=new TypeError("The iterator does not provide a \'throw\' method")}return c}var r=C(i,A.iterator,t.arg);if("throw"===r.type)return t.method="throw",t.arg=r.arg,t.delegate=null,c;var I=r.arg;return I?I.done?(t[A.resultName]=I.value,t.next=A.nextLoc,"return"!==t.method&&(t.method="next",t.arg=e),t.delegate=null,c):I:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,c)}function G(A){var e={tryLoc:A[0]};1 in A&&(e.catchLoc=A[1]),2 in A&&(e.finallyLoc=A[2],e.afterLoc=A[3]),this.tryEntries.push(e)}function F(A){var e=A.completion||{};e.type="normal",delete e.arg,A.completion=e}function S(A){this.tryEntries=[{tryLoc:"root"}],A.forEach(G,this),this.reset(!0)}function v(A){if(A){var t=A[g];if(t)return t.call(A);if("function"==typeof A.next)return A;if(!isNaN(A.length)){var i=-1,I=function t(){for(;++i<A.length;)if(r.call(A,i))return t.value=A[i],t.done=!1,t;return t.value=e,t.done=!0,t};return I.next=I}}return{next:R}}function R(){return{value:e,done:!0}}return l.prototype=u,o(y,"constructor",u),o(u,"constructor",l),l.displayName=o(u,a,"GeneratorFunction"),A.isGeneratorFunction=function(A){var e="function"==typeof A&&A.constructor;return!!e&&(e===l||"GeneratorFunction"===(e.displayName||e.name))},A.mark=function(A){return Object.setPrototypeOf?Object.setPrototypeOf(A,u):(A.__proto__=u,o(A,a,"GeneratorFunction")),A.prototype=Object.create(y),A},A.awrap=function(A){return{__await:A}},k(p.prototype),o(p.prototype,n,(function(){return this})),A.AsyncIterator=p,A.async=function(e,t,i,r,I){void 0===I&&(I=Promise);var g=new p(B(e,t,i,r),I);return A.isGeneratorFunction(t)?g:g.next().then((function(A){return A.done?A.value:g.next()}))},k(y),o(y,a,"Generator"),o(y,g,(function(){return this})),o(y,"toString",(function(){return"[object Generator]"})),A.keys=function(A){var e=[];for(var t in A)e.push(t);return e.reverse(),function t(){for(;e.length;){var i=e.pop();if(i in A)return t.value=i,t.done=!1,t}return t.done=!0,t}},A.values=v,S.prototype={constructor:S,reset:function(A){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(F),!A)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=e)},stop:function(){this.done=!0;var A=this.tryEntries[0].completion;if("throw"===A.type)throw A.arg;return this.rval},dispatchException:function(A){if(this.done)throw A;var t=this;function i(i,r){return n.type="throw",n.arg=A,t.next=i,r&&(t.method="next",t.arg=e),!!r}for(var I=this.tryEntries.length-1;I>=0;--I){var g=this.tryEntries[I],n=g.completion;if("root"===g.tryLoc)return i("end");if(g.tryLoc<=this.prev){var a=r.call(g,"catchLoc"),o=r.call(g,"finallyLoc");if(a&&o){if(this.prev<g.catchLoc)return i(g.catchLoc,!0);if(this.prev<g.finallyLoc)return i(g.finallyLoc)}else if(a){if(this.prev<g.catchLoc)return i(g.catchLoc,!0)}else{if(!o)throw new Error("try statement without catch or finally");if(this.prev<g.finallyLoc)return i(g.finallyLoc)}}}},abrupt:function(A,e){for(var t=this.tryEntries.length-1;t>=0;--t){var i=this.tryEntries[t];if(i.tryLoc<=this.prev&&r.call(i,"finallyLoc")&&this.prev<i.finallyLoc){var I=i;break}}I&&("break"===A||"continue"===A)&&I.tryLoc<=e&&e<=I.finallyLoc&&(I=null);var g=I?I.completion:{};return g.type=A,g.arg=e,I?(this.method="next",this.next=I.finallyLoc,c):this.complete(g)},complete:function(A,e){if("throw"===A.type)throw A.arg;return"break"===A.type||"continue"===A.type?this.next=A.arg:"return"===A.type?(this.rval=this.arg=A.arg,this.method="return",this.next="end"):"normal"===A.type&&e&&(this.next=e),c},finish:function(A){for(var e=this.tryEntries.length-1;e>=0;--e){var t=this.tryEntries[e];if(t.finallyLoc===A)return this.complete(t.completion,t.afterLoc),F(t),c}},catch:function(A){for(var e=this.tryEntries.length-1;e>=0;--e){var t=this.tryEntries[e];if(t.tryLoc===A){var i=t.completion;if("throw"===i.type){var r=i.arg;F(t)}return r}}throw new Error("illegal catch attempt")},delegateYield:function(A,t,i){return this.delegate={iterator:v(A),resultName:t,nextLoc:i},"next"===this.method&&(this.arg=e),c}},A}(A.exports);try{regeneratorRuntime=e}catch(A){"object"===("undefined"==typeof globalThis?"undefined":t(globalThis))?globalThis.regeneratorRuntime=e:Function("r","regeneratorRuntime = r")(e)}}(i);var r=i.exports,I=new Map;function g(A,e){Array.isArray(A)||(A=[A]),A.forEach((function(A){return I.set(A,e)}))}function n(A){return a.apply(this,arguments)}function a(){return(a=e(r.mark((function A(e){var t,i;return r.wrap((function(A){for(;;)switch(A.prev=A.next){case 0:if(t=I.get(e.Compression)){A.next=3;break}throw new Error("Unknown compression method identifier: ".concat(e.Compression));case 3:return A.next=5,t();case 5:return i=A.sent,A.abrupt("return",new i(e));case 7:case"end":return A.stop()}}),A)})))).apply(this,arguments)}g([void 0,1],(function(){return Promise.resolve().then((function(){return y})).then((function(A){return A.default}))})),g(5,(function(){return Promise.resolve().then((function(){return F})).then((function(A){return A.default}))})),g(6,(function(){throw new Error("old style JPEG compression is not supported.")})),g(7,(function(){return Promise.resolve().then((function(){return N})).then((function(A){return A.default}))})),g([8,32946],(function(){return Promise.resolve().then((function(){return OA})).then((function(A){return A.default}))})),g(32773,(function(){return Promise.resolve().then((function(){return _A})).then((function(A){return A.default}))})),g(34887,(function(){return Promise.resolve().then((function(){return le})).then(function(){var A=e(r.mark((function A(e){return r.wrap((function(A){for(;;)switch(A.prev=A.next){case 0:return A.next=2,e.zstd.init();case 2:return A.abrupt("return",e);case 3:case"end":return A.stop()}}),A)})));return function(e){return A.apply(this,arguments)}}()).then((function(A){return A.default}))})),g(50001,(function(){return Promise.resolve().then((function(){return de})).then((function(A){return A.default}))}));var o=globalThis;function B(A,e){if(!(A instanceof e))throw new TypeError("Cannot call a class as a function")}function C(A,e){for(var t=0;t<e.length;t++){var i=e[t];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(A,i.key,i)}}function Q(A,e,t){return e&&C(A.prototype,e),t&&C(A,t),A}function E(A,e){return E=Object.setPrototypeOf||function(A,e){return A.__proto__=e,A},E(A,e)}function s(A,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");A.prototype=Object.create(e&&e.prototype,{constructor:{value:A,writable:!0,configurable:!0}}),e&&E(A,e)}function f(A,e){if(e&&("object"===t(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(A){if(void 0===A)throw new ReferenceError("this hasn\'t been initialised - super() hasn\'t been called");return A}(A)}function c(A){return c=Object.setPrototypeOf?Object.getPrototypeOf:function(A){return A.__proto__||Object.getPrototypeOf(A)},c(A)}function h(A,e){var t=A.length-e,i=0;do{for(var r=e;r>0;r--)A[i+e]+=A[i],i++;t-=e}while(t>0)}function l(A,e,t){for(var i=0,r=A.length,I=r/t;r>e;){for(var g=e;g>0;--g)A[i+e]+=A[i],++i;r-=e}for(var n=A.slice(),a=0;a<I;++a)for(var o=0;o<t;++o)A[t*a+o]=n[(t-o-1)*I+a]}function u(A,e,t,i,r,I){if(!e||1===e)return A;for(var g=0;g<r.length;++g){if(r[g]%8!=0)throw new Error("When decoding with predictor, only multiple of 8 bits are supported.");if(r[g]!==r[0])throw new Error("When decoding with predictor, all samples must have the same size.")}for(var n=r[0]/8,a=2===I?1:r.length,o=0;o<i&&!(o*a*t*n>=A.byteLength);++o){var B=void 0;if(2===e){switch(r[0]){case 8:B=new Uint8Array(A,o*a*t*n,a*t*n);break;case 16:B=new Uint16Array(A,o*a*t*n,a*t*n/2);break;case 32:B=new Uint32Array(A,o*a*t*n,a*t*n/4);break;default:throw new Error("Predictor 2 not allowed with ".concat(r[0]," bits per sample."))}h(B,a)}else 3===e&&l(B=new Uint8Array(A,o*a*t*n,a*t*n),a,n)}return A}o.addEventListener("message",function(){var A=e(r.mark((function A(e){var t,i,I,g,a,B;return r.wrap((function(A){for(;;)switch(A.prev=A.next){case 0:return t=e.data,i=t.id,I=t.fileDirectory,g=t.buffer,A.next=3,n(I);case 3:return a=A.sent,A.next=6,a.decode(I,g);case 6:B=A.sent,o.postMessage({decoded:B,id:i},[B]);case 8:case"end":return A.stop()}}),A)})));return function(e){return A.apply(this,arguments)}}());var w=function(){function A(){B(this,A)}var t;return Q(A,[{key:"decode",value:(t=e(r.mark((function A(e,t){var i,I,g,n,a;return r.wrap((function(A){for(;;)switch(A.prev=A.next){case 0:return A.next=2,this.decodeBlock(t);case 2:if(i=A.sent,1===(I=e.Predictor||1)){A.next=9;break}return g=!e.StripOffsets,n=g?e.TileWidth:e.ImageWidth,a=g?e.TileLength:e.RowsPerStrip||e.ImageLength,A.abrupt("return",u(i,I,n,a,e.BitsPerSample,e.PlanarConfiguration));case 9:return A.abrupt("return",i);case 10:case"end":return A.stop()}}),A,this)}))),function(A,e){return t.apply(this,arguments)})}]),A}();function d(A){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=c(A);if(e){var r=c(this).constructor;t=Reflect.construct(i,arguments,r)}else t=i.apply(this,arguments);return f(this,t)}}var D=function(A){s(t,w);var e=d(t);function t(){return B(this,t),e.apply(this,arguments)}return Q(t,[{key:"decodeBlock",value:function(A){return A}}]),t}(),y=Object.freeze({__proto__:null,default:D});function k(A){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=c(A);if(e){var r=c(this).constructor;t=Reflect.construct(i,arguments,r)}else t=i.apply(this,arguments);return f(this,t)}}function p(A,e){for(var t=e.length-1;t>=0;t--)A.push(e[t]);return A}function m(A){for(var e=new Uint16Array(4093),t=new Uint8Array(4093),i=0;i<=257;i++)e[i]=4096,t[i]=i;var r=258,I=9,g=0;function n(){r=258,I=9}function a(A){var e=function(A,e,t){var i=e%8,r=Math.floor(e/8),I=8-i,g=e+t-8*(r+1),n=8*(r+2)-(e+t),a=8*(r+2)-e;if(n=Math.max(0,n),r>=A.length)return console.warn("ran off the end of the buffer before finding EOI_CODE (end on input code)"),257;var o=A[r]&Math.pow(2,8-i)-1,B=o<<=t-I;if(r+1<A.length){var C=A[r+1]>>>n;B+=C<<=Math.max(0,t-a)}if(g>8&&r+2<A.length){var Q=8*(r+3)-(e+t);B+=A[r+2]>>>Q}return B}(A,g,I);return g+=I,e}function o(A,i){return t[r]=i,e[r]=A,++r-1}function B(A){for(var i=[],r=A;4096!==r;r=e[r])i.push(t[r]);return i}var C=[];n();for(var Q,E=new Uint8Array(A),s=a(E);257!==s;){if(256===s){for(n(),s=a(E);256===s;)s=a(E);if(257===s)break;if(s>256)throw new Error("corrupted code at scanline ".concat(s));p(C,B(s)),Q=s}else if(s<r){var f=B(s);p(C,f),o(Q,f[f.length-1]),Q=s}else{var c=B(Q);if(!c)throw new Error("Bogus entry. Not in dictionary, ".concat(Q," / ").concat(r,", position: ").concat(g));p(C,c),C.push(c[c.length-1]),o(Q,c[c.length-1]),Q=s}r+1>=Math.pow(2,I)&&(12===I?Q=void 0:I++),s=a(E)}return new Uint8Array(C)}var G=function(A){s(t,w);var e=k(t);function t(){return B(this,t),e.apply(this,arguments)}return Q(t,[{key:"decodeBlock",value:function(A){return m(A).buffer}}]),t}(),F=Object.freeze({__proto__:null,default:G});function S(A){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=c(A);if(e){var r=c(this).constructor;t=Reflect.construct(i,arguments,r)}else t=i.apply(this,arguments);return f(this,t)}}var v=new Int32Array([0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]);function R(A,e){for(var t=0,i=[],r=16;r>0&&!A[r-1];)--r;i.push({children:[],index:0});for(var I,g=i[0],n=0;n<r;n++){for(var a=0;a<A[n];a++){for((g=i.pop()).children[g.index]=e[t];g.index>0;)g=i.pop();for(g.index++,i.push(g);i.length<=n;)i.push(I={children:[],index:0}),g.children[g.index]=I.children,g=I;t++}n+1<r&&(i.push(I={children:[],index:0}),g.children[g.index]=I.children,g=I)}return i[0].children}function U(A,e,i,r,I,g,n,a,o){var B=i.mcusPerLine,C=i.progressive,Q=e,E=e,s=0,f=0;function c(){if(f>0)return f--,s>>f&1;if(255===(s=A[E++])){var e=A[E++];if(e)throw new Error("unexpected marker: ".concat((s<<8|e).toString(16)))}return f=7,s>>>7}function h(A){for(var e,i=A;null!==(e=c());){if("number"==typeof(i=i[e]))return i;if("object"!==t(i))throw new Error("invalid huffman sequence")}return null}function l(A){for(var e=A,t=0;e>0;){var i=c();if(null===i)return;t=t<<1|i,--e}return t}function u(A){var e=l(A);return e>=1<<A-1?e:e+(-1<<A)+1}var w=0;var d,D=0;function y(A,e,t,i,r){var I=t%B,g=(t/B|0)*A.v+i,n=I*A.h+r;e(A,A.blocks[g][n])}function k(A,e,t){var i=t/A.blocksPerLine|0,r=t%A.blocksPerLine;e(A,A.blocks[i][r])}var p,m,G,F,S,R,U=r.length;R=C?0===g?0===a?function(A,e){var t=h(A.huffmanTableDC),i=0===t?0:u(t)<<o;A.pred+=i,e[0]=A.pred}:function(A,e){e[0]|=c()<<o}:0===a?function(A,e){if(w>0)w--;else for(var t=g,i=n;t<=i;){var r=h(A.huffmanTableAC),I=15&r,a=r>>4;if(0===I){if(a<15){w=l(a)+(1<<a)-1;break}t+=16}else e[v[t+=a]]=u(I)*(1<<o),t++}}:function(A,e){for(var t=g,i=n,r=0;t<=i;){var I=v[t],a=e[I]<0?-1:1;switch(D){case 0:var B=h(A.huffmanTableAC),C=15&B;if(r=B>>4,0===C)r<15?(w=l(r)+(1<<r),D=4):(r=16,D=1);else{if(1!==C)throw new Error("invalid ACn encoding");d=u(C),D=r?2:3}continue;case 1:case 2:e[I]?e[I]+=(c()<<o)*a:0==--r&&(D=2===D?3:0);break;case 3:e[I]?e[I]+=(c()<<o)*a:(e[I]=d<<o,D=0);break;case 4:e[I]&&(e[I]+=(c()<<o)*a)}t++}4===D&&0==--w&&(D=0)}:function(A,e){var t=h(A.huffmanTableDC),i=0===t?0:u(t);A.pred+=i,e[0]=A.pred;for(var r=1;r<64;){var I=h(A.huffmanTableAC),g=15&I,n=I>>4;if(0===g){if(n<15)break;r+=16}else e[v[r+=n]]=u(g),r++}};var L,b,M=0;b=1===U?r[0].blocksPerLine*r[0].blocksPerColumn:B*i.mcusPerColumn;for(var N=I||b;M<b;){for(m=0;m<U;m++)r[m].pred=0;if(w=0,1===U)for(p=r[0],S=0;S<N;S++)k(p,R,M),M++;else for(S=0;S<N;S++){for(m=0;m<U;m++){var x=p=r[m],J=x.h,q=x.v;for(G=0;G<q;G++)for(F=0;F<J;F++)y(p,R,M,G,F)}if(++M===b)break}if(f=0,(L=A[E]<<8|A[E+1])<65280)throw new Error("marker was not found");if(!(L>=65488&&L<=65495))break;E+=2}return E-Q}function L(A,e){var t=[],i=e.blocksPerLine,r=e.blocksPerColumn,I=i<<3,g=new Int32Array(64),n=new Uint8Array(64);function a(A,t,i){var r,I,g,n,a,o,B,C,Q,E,s=e.quantizationTable,f=i;for(E=0;E<64;E++)f[E]=A[E]*s[E];for(E=0;E<8;++E){var c=8*E;0!==f[1+c]||0!==f[2+c]||0!==f[3+c]||0!==f[4+c]||0!==f[5+c]||0!==f[6+c]||0!==f[7+c]?(r=5793*f[0+c]+128>>8,I=5793*f[4+c]+128>>8,g=f[2+c],n=f[6+c],a=2896*(f[1+c]-f[7+c])+128>>8,C=2896*(f[1+c]+f[7+c])+128>>8,o=f[3+c]<<4,Q=r-I+1>>1,r=r+I+1>>1,I=Q,Q=3784*g+1567*n+128>>8,g=1567*g-3784*n+128>>8,n=Q,Q=a-(B=f[5+c]<<4)+1>>1,a=a+B+1>>1,B=Q,Q=C+o+1>>1,o=C-o+1>>1,C=Q,Q=r-n+1>>1,r=r+n+1>>1,n=Q,Q=I-g+1>>1,I=I+g+1>>1,g=Q,Q=2276*a+3406*C+2048>>12,a=3406*a-2276*C+2048>>12,C=Q,Q=799*o+4017*B+2048>>12,o=4017*o-799*B+2048>>12,B=Q,f[0+c]=r+C,f[7+c]=r-C,f[1+c]=I+B,f[6+c]=I-B,f[2+c]=g+o,f[5+c]=g-o,f[3+c]=n+a,f[4+c]=n-a):(Q=5793*f[0+c]+512>>10,f[0+c]=Q,f[1+c]=Q,f[2+c]=Q,f[3+c]=Q,f[4+c]=Q,f[5+c]=Q,f[6+c]=Q,f[7+c]=Q)}for(E=0;E<8;++E){var h=E;0!==f[8+h]||0!==f[16+h]||0!==f[24+h]||0!==f[32+h]||0!==f[40+h]||0!==f[48+h]||0!==f[56+h]?(r=5793*f[0+h]+2048>>12,I=5793*f[32+h]+2048>>12,g=f[16+h],n=f[48+h],a=2896*(f[8+h]-f[56+h])+2048>>12,C=2896*(f[8+h]+f[56+h])+2048>>12,o=f[24+h],Q=r-I+1>>1,r=r+I+1>>1,I=Q,Q=3784*g+1567*n+2048>>12,g=1567*g-3784*n+2048>>12,n=Q,Q=a-(B=f[40+h])+1>>1,a=a+B+1>>1,B=Q,Q=C+o+1>>1,o=C-o+1>>1,C=Q,Q=r-n+1>>1,r=r+n+1>>1,n=Q,Q=I-g+1>>1,I=I+g+1>>1,g=Q,Q=2276*a+3406*C+2048>>12,a=3406*a-2276*C+2048>>12,C=Q,Q=799*o+4017*B+2048>>12,o=4017*o-799*B+2048>>12,B=Q,f[0+h]=r+C,f[56+h]=r-C,f[8+h]=I+B,f[48+h]=I-B,f[16+h]=g+o,f[40+h]=g-o,f[24+h]=n+a,f[32+h]=n-a):(Q=5793*i[E+0]+8192>>14,f[0+h]=Q,f[8+h]=Q,f[16+h]=Q,f[24+h]=Q,f[32+h]=Q,f[40+h]=Q,f[48+h]=Q,f[56+h]=Q)}for(E=0;E<64;++E){var l=128+(f[E]+8>>4);t[E]=l<0?0:l>255?255:l}}for(var o=0;o<r;o++){for(var B=o<<3,C=0;C<8;C++)t.push(new Uint8Array(I));for(var Q=0;Q<i;Q++){a(e.blocks[o][Q],n,g);for(var E=0,s=Q<<3,f=0;f<8;f++)for(var c=t[B+f],h=0;h<8;h++)c[s+h]=n[E++]}}return t}var b=function(){function A(){B(this,A),this.jfif=null,this.adobe=null,this.quantizationTables=[],this.huffmanTablesAC=[],this.huffmanTablesDC=[],this.resetFrames()}return Q(A,[{key:"resetFrames",value:function(){this.frames=[]}},{key:"parse",value:function(A){var e=0;function t(){var t=A[e]<<8|A[e+1];return e+=2,t}function i(A){var e,t,i=0,r=0;for(t in A.components)A.components.hasOwnProperty(t)&&(i<(e=A.components[t]).h&&(i=e.h),r<e.v&&(r=e.v));var I=Math.ceil(A.samplesPerLine/8/i),g=Math.ceil(A.scanLines/8/r);for(t in A.components)if(A.components.hasOwnProperty(t)){e=A.components[t];for(var n=Math.ceil(Math.ceil(A.samplesPerLine/8)*e.h/i),a=Math.ceil(Math.ceil(A.scanLines/8)*e.v/r),o=I*e.h,B=g*e.v,C=[],Q=0;Q<B;Q++){for(var E=[],s=0;s<o;s++)E.push(new Int32Array(64));C.push(E)}e.blocksPerLine=n,e.blocksPerColumn=a,e.blocks=C}A.maxH=i,A.maxV=r,A.mcusPerLine=I,A.mcusPerColumn=g}var r,I,g=t();if(65496!==g)throw new Error("SOI not found");for(g=t();65497!==g;){switch(g){case 65280:break;case 65504:case 65505:case 65506:case 65507:case 65508:case 65509:case 65510:case 65511:case 65512:case 65513:case 65514:case 65515:case 65516:case 65517:case 65518:case 65519:case 65534:var n=(r=void 0,I=void 0,r=t(),I=A.subarray(e,e+r-2),e+=I.length,I);65504===g&&74===n[0]&&70===n[1]&&73===n[2]&&70===n[3]&&0===n[4]&&(this.jfif={version:{major:n[5],minor:n[6]},densityUnits:n[7],xDensity:n[8]<<8|n[9],yDensity:n[10]<<8|n[11],thumbWidth:n[12],thumbHeight:n[13],thumbData:n.subarray(14,14+3*n[12]*n[13])}),65518===g&&65===n[0]&&100===n[1]&&111===n[2]&&98===n[3]&&101===n[4]&&0===n[5]&&(this.adobe={version:n[6],flags0:n[7]<<8|n[8],flags1:n[9]<<8|n[10],transformCode:n[11]});break;case 65499:for(var a=t()+e-2;e<a;){var o=A[e++],B=new Int32Array(64);if(o>>4==0)for(var C=0;C<64;C++){B[v[C]]=A[e++]}else{if(o>>4!=1)throw new Error("DQT: invalid table spec");for(var Q=0;Q<64;Q++){B[v[Q]]=t()}}this.quantizationTables[15&o]=B}break;case 65472:case 65473:case 65474:t();for(var E={extended:65473===g,progressive:65474===g,precision:A[e++],scanLines:t(),samplesPerLine:t(),components:{},componentsOrder:[]},s=A[e++],f=void 0,c=0;c<s;c++){f=A[e];var h=A[e+1]>>4,l=15&A[e+1],u=A[e+2];E.componentsOrder.push(f),E.components[f]={h:h,v:l,quantizationIdx:u},e+=3}i(E),this.frames.push(E);break;case 65476:for(var w=t(),d=2;d<w;){for(var D=A[e++],y=new Uint8Array(16),k=0,p=0;p<16;p++,e++)y[p]=A[e],k+=y[p];for(var m=new Uint8Array(k),G=0;G<k;G++,e++)m[G]=A[e];d+=17+k,D>>4==0?this.huffmanTablesDC[15&D]=R(y,m):this.huffmanTablesAC[15&D]=R(y,m)}break;case 65501:t(),this.resetInterval=t();break;case 65498:t();for(var F=A[e++],S=[],L=this.frames[0],b=0;b<F;b++){var M=L.components[A[e++]],N=A[e++];M.huffmanTableDC=this.huffmanTablesDC[N>>4],M.huffmanTableAC=this.huffmanTablesAC[15&N],S.push(M)}var x=A[e++],J=A[e++],q=A[e++],Y=U(A,e,L,S,this.resetInterval,x,J,q>>4,15&q);e+=Y;break;case 65535:255!==A[e]&&e--;break;default:if(255===A[e-3]&&A[e-2]>=192&&A[e-2]<=254){e-=3;break}throw new Error("unknown JPEG marker ".concat(g.toString(16)))}g=t()}}},{key:"getResult",value:function(){var A=this.frames;if(0===this.frames.length)throw new Error("no frames were decoded");this.frames.length>1&&console.warn("more than one frame is not supported");for(var e=0;e<this.frames.length;e++)for(var t=this.frames[e].components,i=0,r=Object.keys(t);i<r.length;i++){var I=r[i];t[I].quantizationTable=this.quantizationTables[t[I].quantizationIdx],delete t[I].quantizationIdx}for(var g=A[0],n=g.components,a=g.componentsOrder,o=[],B=g.samplesPerLine,C=g.scanLines,Q=0;Q<a.length;Q++){var E=n[a[Q]];o.push({lines:L(0,E),scaleX:E.h/g.maxH,scaleY:E.v/g.maxV})}for(var s=new Uint8Array(B*C*o.length),f=0,c=0;c<C;++c)for(var h=0;h<B;++h)for(var l=0;l<o.length;++l){var u=o[l];s[f]=u.lines[0|c*u.scaleY][0|h*u.scaleX],++f}return s}}]),A}(),M=function(A){s(t,w);var e=S(t);function t(A){var i;return B(this,t),(i=e.call(this)).reader=new b,A.JPEGTables&&i.reader.parse(A.JPEGTables),i}return Q(t,[{key:"decodeBlock",value:function(A){return this.reader.resetFrames(),this.reader.parse(new Uint8Array(A)),this.reader.getResult().buffer}}]),t}(),N=Object.freeze({__proto__:null,default:M});function x(A){for(var e=A.length;--e>=0;)A[e]=0}x(new Array(576)),x(new Array(60)),x(new Array(512)),x(new Array(256)),x(new Array(29)),x(new Array(30));var J=function(A,e,t,i){for(var r=65535&A|0,I=A>>>16&65535|0,g=0;0!==t;){t-=g=t>2e3?2e3:t;do{I=I+(r=r+e[i++]|0)|0}while(--g);r%=65521,I%=65521}return r|I<<16|0},q=new Uint32Array(function(){for(var A,e=[],t=0;t<256;t++){A=t;for(var i=0;i<8;i++)A=1&A?3988292384^A>>>1:A>>>1;e[t]=A}return e}()),Y=function(A,e,t,i){var r=q,I=i+t;A^=-1;for(var g=i;g<I;g++)A=A>>>8^r[255&(A^e[g])];return-1^A},K={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"},H={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_MEM_ERROR:-4,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},O=function(A,e){return Object.prototype.hasOwnProperty.call(A,e)},P=function(A){for(var e=Array.prototype.slice.call(arguments,1);e.length;){var i=e.shift();if(i){if("object"!==t(i))throw new TypeError(i+"must be non-object");for(var r in i)O(i,r)&&(A[r]=i[r])}}return A},T=function(A){for(var e=0,t=0,i=A.length;t<i;t++)e+=A[t].length;for(var r=new Uint8Array(e),I=0,g=0,n=A.length;I<n;I++){var a=A[I];r.set(a,g),g+=a.length}return r},V=!0;try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(A){V=!1}for(var _=new Uint8Array(256),X=0;X<256;X++)_[X]=X>=252?6:X>=248?5:X>=240?4:X>=224?3:X>=192?2:1;_[254]=_[254]=1;var Z=function(A){if("function"==typeof TextEncoder&&TextEncoder.prototype.encode)return(new TextEncoder).encode(A);var e,t,i,r,I,g=A.length,n=0;for(r=0;r<g;r++)55296==(64512&(t=A.charCodeAt(r)))&&r+1<g&&56320==(64512&(i=A.charCodeAt(r+1)))&&(t=65536+(t-55296<<10)+(i-56320),r++),n+=t<128?1:t<2048?2:t<65536?3:4;for(e=new Uint8Array(n),I=0,r=0;I<n;r++)55296==(64512&(t=A.charCodeAt(r)))&&r+1<g&&56320==(64512&(i=A.charCodeAt(r+1)))&&(t=65536+(t-55296<<10)+(i-56320),r++),t<128?e[I++]=t:t<2048?(e[I++]=192|t>>>6,e[I++]=128|63&t):t<65536?(e[I++]=224|t>>>12,e[I++]=128|t>>>6&63,e[I++]=128|63&t):(e[I++]=240|t>>>18,e[I++]=128|t>>>12&63,e[I++]=128|t>>>6&63,e[I++]=128|63&t);return e},j=function(A,e){var t,i,r=e||A.length;if("function"==typeof TextDecoder&&TextDecoder.prototype.decode)return(new TextDecoder).decode(A.subarray(0,e));var I=new Array(2*r);for(i=0,t=0;t<r;){var g=A[t++];if(g<128)I[i++]=g;else{var n=_[g];if(n>4)I[i++]=65533,t+=n-1;else{for(g&=2===n?31:3===n?15:7;n>1&&t<r;)g=g<<6|63&A[t++],n--;n>1?I[i++]=65533:g<65536?I[i++]=g:(g-=65536,I[i++]=55296|g>>10&1023,I[i++]=56320|1023&g)}}}return function(A,e){if(e<65534&&A.subarray&&V)return String.fromCharCode.apply(null,A.length===e?A:A.subarray(0,e));for(var t="",i=0;i<e;i++)t+=String.fromCharCode(A[i]);return t}(I,i)},W=function(A,e){(e=e||A.length)>A.length&&(e=A.length);for(var t=e-1;t>=0&&128==(192&A[t]);)t--;return t<0||0===t?e:t+_[A[t]]>e?t:e};var z=function(){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},$=function(A,e){var t,i,r,I,g,n,a,o,B,C,Q,E,s,f,c,h,l,u,w,d,D,y,k,p,m=A.state;t=A.next_in,k=A.input,i=t+(A.avail_in-5),r=A.next_out,p=A.output,I=r-(e-A.avail_out),g=r+(A.avail_out-257),n=m.dmax,a=m.wsize,o=m.whave,B=m.wnext,C=m.window,Q=m.hold,E=m.bits,s=m.lencode,f=m.distcode,c=(1<<m.lenbits)-1,h=(1<<m.distbits)-1;A:do{E<15&&(Q+=k[t++]<<E,E+=8,Q+=k[t++]<<E,E+=8),l=s[Q&c];e:for(;;){if(Q>>>=u=l>>>24,E-=u,0===(u=l>>>16&255))p[r++]=65535&l;else{if(!(16&u)){if(0==(64&u)){l=s[(65535&l)+(Q&(1<<u)-1)];continue e}if(32&u){m.mode=12;break A}A.msg="invalid literal/length code",m.mode=30;break A}w=65535&l,(u&=15)&&(E<u&&(Q+=k[t++]<<E,E+=8),w+=Q&(1<<u)-1,Q>>>=u,E-=u),E<15&&(Q+=k[t++]<<E,E+=8,Q+=k[t++]<<E,E+=8),l=f[Q&h];t:for(;;){if(Q>>>=u=l>>>24,E-=u,!(16&(u=l>>>16&255))){if(0==(64&u)){l=f[(65535&l)+(Q&(1<<u)-1)];continue t}A.msg="invalid distance code",m.mode=30;break A}if(d=65535&l,E<(u&=15)&&(Q+=k[t++]<<E,(E+=8)<u&&(Q+=k[t++]<<E,E+=8)),(d+=Q&(1<<u)-1)>n){A.msg="invalid distance too far back",m.mode=30;break A}if(Q>>>=u,E-=u,d>(u=r-I)){if((u=d-u)>o&&m.sane){A.msg="invalid distance too far back",m.mode=30;break A}if(D=0,y=C,0===B){if(D+=a-u,u<w){w-=u;do{p[r++]=C[D++]}while(--u);D=r-d,y=p}}else if(B<u){if(D+=a+B-u,(u-=B)<w){w-=u;do{p[r++]=C[D++]}while(--u);if(D=0,B<w){w-=u=B;do{p[r++]=C[D++]}while(--u);D=r-d,y=p}}}else if(D+=B-u,u<w){w-=u;do{p[r++]=C[D++]}while(--u);D=r-d,y=p}for(;w>2;)p[r++]=y[D++],p[r++]=y[D++],p[r++]=y[D++],w-=3;w&&(p[r++]=y[D++],w>1&&(p[r++]=y[D++]))}else{D=r-d;do{p[r++]=p[D++],p[r++]=p[D++],p[r++]=p[D++],w-=3}while(w>2);w&&(p[r++]=p[D++],w>1&&(p[r++]=p[D++]))}break}}break}}while(t<i&&r<g);t-=w=E>>3,Q&=(1<<(E-=w<<3))-1,A.next_in=t,A.next_out=r,A.avail_in=t<i?i-t+5:5-(t-i),A.avail_out=r<g?g-r+257:257-(r-g),m.hold=Q,m.bits=E},AA=new Uint16Array([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]),eA=new Uint8Array([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]),tA=new Uint16Array([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]),iA=new Uint8Array([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]),rA=function(A,e,t,i,r,I,g,n){var a,o,B,C,Q,E,s,f,c,h=n.bits,l=0,u=0,w=0,d=0,D=0,y=0,k=0,p=0,m=0,G=0,F=null,S=0,v=new Uint16Array(16),R=new Uint16Array(16),U=null,L=0;for(l=0;l<=15;l++)v[l]=0;for(u=0;u<i;u++)v[e[t+u]]++;for(D=h,d=15;d>=1&&0===v[d];d--);if(D>d&&(D=d),0===d)return r[I++]=20971520,r[I++]=20971520,n.bits=1,0;for(w=1;w<d&&0===v[w];w++);for(D<w&&(D=w),p=1,l=1;l<=15;l++)if(p<<=1,(p-=v[l])<0)return-1;if(p>0&&(0===A||1!==d))return-1;for(R[1]=0,l=1;l<15;l++)R[l+1]=R[l]+v[l];for(u=0;u<i;u++)0!==e[t+u]&&(g[R[e[t+u]]++]=u);if(0===A?(F=U=g,E=19):1===A?(F=AA,S-=257,U=eA,L-=257,E=256):(F=tA,U=iA,E=-1),G=0,u=0,l=w,Q=I,y=D,k=0,B=-1,C=(m=1<<D)-1,1===A&&m>852||2===A&&m>592)return 1;for(;;){s=l-k,g[u]<E?(f=0,c=g[u]):g[u]>E?(f=U[L+g[u]],c=F[S+g[u]]):(f=96,c=0),a=1<<l-k,w=o=1<<y;do{r[Q+(G>>k)+(o-=a)]=s<<24|f<<16|c|0}while(0!==o);for(a=1<<l-1;G&a;)a>>=1;if(0!==a?(G&=a-1,G+=a):G=0,u++,0==--v[l]){if(l===d)break;l=e[t+g[u]]}if(l>D&&(G&C)!==B){for(0===k&&(k=D),Q+=w,p=1<<(y=l-k);y+k<d&&!((p-=v[y+k])<=0);)y++,p<<=1;if(m+=1<<y,1===A&&m>852||2===A&&m>592)return 1;r[B=G&C]=D<<24|y<<16|Q-I|0}}return 0!==G&&(r[Q+G]=l-k<<24|64<<16|0),n.bits=D,0},IA=H.Z_FINISH,gA=H.Z_BLOCK,nA=H.Z_TREES,aA=H.Z_OK,oA=H.Z_STREAM_END,BA=H.Z_NEED_DICT,CA=H.Z_STREAM_ERROR,QA=H.Z_DATA_ERROR,EA=H.Z_MEM_ERROR,sA=H.Z_BUF_ERROR,fA=H.Z_DEFLATED,cA=function(A){return(A>>>24&255)+(A>>>8&65280)+((65280&A)<<8)+((255&A)<<24)};function hA(){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 Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}var lA,uA,wA=function(A){if(!A||!A.state)return CA;var e=A.state;return A.total_in=A.total_out=e.total=0,A.msg="",e.wrap&&(A.adler=1&e.wrap),e.mode=1,e.last=0,e.havedict=0,e.dmax=32768,e.head=null,e.hold=0,e.bits=0,e.lencode=e.lendyn=new Int32Array(852),e.distcode=e.distdyn=new Int32Array(592),e.sane=1,e.back=-1,aA},dA=function(A){if(!A||!A.state)return CA;var e=A.state;return e.wsize=0,e.whave=0,e.wnext=0,wA(A)},DA=function(A,e){var t;if(!A||!A.state)return CA;var i=A.state;return e<0?(t=0,e=-e):(t=1+(e>>4),e<48&&(e&=15)),e&&(e<8||e>15)?CA:(null!==i.window&&i.wbits!==e&&(i.window=null),i.wrap=t,i.wbits=e,dA(A))},yA=function(A,e){if(!A)return CA;var t=new hA;A.state=t,t.window=null;var i=DA(A,e);return i!==aA&&(A.state=null),i},kA=!0,pA=function(A){if(kA){lA=new Int32Array(512),uA=new Int32Array(32);for(var e=0;e<144;)A.lens[e++]=8;for(;e<256;)A.lens[e++]=9;for(;e<280;)A.lens[e++]=7;for(;e<288;)A.lens[e++]=8;for(rA(1,A.lens,0,288,lA,0,A.work,{bits:9}),e=0;e<32;)A.lens[e++]=5;rA(2,A.lens,0,32,uA,0,A.work,{bits:5}),kA=!1}A.lencode=lA,A.lenbits=9,A.distcode=uA,A.distbits=5},mA=function(A,e,t,i){var r,I=A.state;return null===I.window&&(I.wsize=1<<I.wbits,I.wnext=0,I.whave=0,I.window=new Uint8Array(I.wsize)),i>=I.wsize?(I.window.set(e.subarray(t-I.wsize,t),0),I.wnext=0,I.whave=I.wsize):((r=I.wsize-I.wnext)>i&&(r=i),I.window.set(e.subarray(t-i,t-i+r),I.wnext),(i-=r)?(I.window.set(e.subarray(t-i,t),0),I.wnext=i,I.whave=I.wsize):(I.wnext+=r,I.wnext===I.wsize&&(I.wnext=0),I.whave<I.wsize&&(I.whave+=r))),0},GA={inflateReset:dA,inflateReset2:DA,inflateResetKeep:wA,inflateInit:function(A){return yA(A,15)},inflateInit2:yA,inflate:function(A,e){var t,i,r,I,g,n,a,o,B,C,Q,E,s,f,c,h,l,u,w,d,D,y,k,p,m=0,G=new Uint8Array(4),F=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(!A||!A.state||!A.output||!A.input&&0!==A.avail_in)return CA;12===(t=A.state).mode&&(t.mode=13),g=A.next_out,r=A.output,a=A.avail_out,I=A.next_in,i=A.input,n=A.avail_in,o=t.hold,B=t.bits,C=n,Q=a,y=aA;A:for(;;)switch(t.mode){case 1:if(0===t.wrap){t.mode=13;break}for(;B<16;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}if(2&t.wrap&&35615===o){t.check=0,G[0]=255&o,G[1]=o>>>8&255,t.check=Y(t.check,G,2,0),o=0,B=0,t.mode=2;break}if(t.flags=0,t.head&&(t.head.done=!1),!(1&t.wrap)||(((255&o)<<8)+(o>>8))%31){A.msg="incorrect header check",t.mode=30;break}if((15&o)!==fA){A.msg="unknown compression method",t.mode=30;break}if(B-=4,D=8+(15&(o>>>=4)),0===t.wbits)t.wbits=D;else if(D>t.wbits){A.msg="invalid window size",t.mode=30;break}t.dmax=1<<t.wbits,A.adler=t.check=1,t.mode=512&o?10:12,o=0,B=0;break;case 2:for(;B<16;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}if(t.flags=o,(255&t.flags)!==fA){A.msg="unknown compression method",t.mode=30;break}if(57344&t.flags){A.msg="unknown header flags set",t.mode=30;break}t.head&&(t.head.text=o>>8&1),512&t.flags&&(G[0]=255&o,G[1]=o>>>8&255,t.check=Y(t.check,G,2,0)),o=0,B=0,t.mode=3;case 3:for(;B<32;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}t.head&&(t.head.time=o),512&t.flags&&(G[0]=255&o,G[1]=o>>>8&255,G[2]=o>>>16&255,G[3]=o>>>24&255,t.check=Y(t.check,G,4,0)),o=0,B=0,t.mode=4;case 4:for(;B<16;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}t.head&&(t.head.xflags=255&o,t.head.os=o>>8),512&t.flags&&(G[0]=255&o,G[1]=o>>>8&255,t.check=Y(t.check,G,2,0)),o=0,B=0,t.mode=5;case 5:if(1024&t.flags){for(;B<16;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}t.length=o,t.head&&(t.head.extra_len=o),512&t.flags&&(G[0]=255&o,G[1]=o>>>8&255,t.check=Y(t.check,G,2,0)),o=0,B=0}else t.head&&(t.head.extra=null);t.mode=6;case 6:if(1024&t.flags&&((E=t.length)>n&&(E=n),E&&(t.head&&(D=t.head.extra_len-t.length,t.head.extra||(t.head.extra=new Uint8Array(t.head.extra_len)),t.head.extra.set(i.subarray(I,I+E),D)),512&t.flags&&(t.check=Y(t.check,i,E,I)),n-=E,I+=E,t.length-=E),t.length))break A;t.length=0,t.mode=7;case 7:if(2048&t.flags){if(0===n)break A;E=0;do{D=i[I+E++],t.head&&D&&t.length<65536&&(t.head.name+=String.fromCharCode(D))}while(D&&E<n);if(512&t.flags&&(t.check=Y(t.check,i,E,I)),n-=E,I+=E,D)break A}else t.head&&(t.head.name=null);t.length=0,t.mode=8;case 8:if(4096&t.flags){if(0===n)break A;E=0;do{D=i[I+E++],t.head&&D&&t.length<65536&&(t.head.comment+=String.fromCharCode(D))}while(D&&E<n);if(512&t.flags&&(t.check=Y(t.check,i,E,I)),n-=E,I+=E,D)break A}else t.head&&(t.head.comment=null);t.mode=9;case 9:if(512&t.flags){for(;B<16;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}if(o!==(65535&t.check)){A.msg="header crc mismatch",t.mode=30;break}o=0,B=0}t.head&&(t.head.hcrc=t.flags>>9&1,t.head.done=!0),A.adler=t.check=0,t.mode=12;break;case 10:for(;B<32;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}A.adler=t.check=cA(o),o=0,B=0,t.mode=11;case 11:if(0===t.havedict)return A.next_out=g,A.avail_out=a,A.next_in=I,A.avail_in=n,t.hold=o,t.bits=B,BA;A.adler=t.check=1,t.mode=12;case 12:if(e===gA||e===nA)break A;case 13:if(t.last){o>>>=7&B,B-=7&B,t.mode=27;break}for(;B<3;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}switch(t.last=1&o,B-=1,3&(o>>>=1)){case 0:t.mode=14;break;case 1:if(pA(t),t.mode=20,e===nA){o>>>=2,B-=2;break A}break;case 2:t.mode=17;break;case 3:A.msg="invalid block type",t.mode=30}o>>>=2,B-=2;break;case 14:for(o>>>=7&B,B-=7&B;B<32;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}if((65535&o)!=(o>>>16^65535)){A.msg="invalid stored block lengths",t.mode=30;break}if(t.length=65535&o,o=0,B=0,t.mode=15,e===nA)break A;case 15:t.mode=16;case 16:if(E=t.length){if(E>n&&(E=n),E>a&&(E=a),0===E)break A;r.set(i.subarray(I,I+E),g),n-=E,I+=E,a-=E,g+=E,t.length-=E;break}t.mode=12;break;case 17:for(;B<14;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}if(t.nlen=257+(31&o),o>>>=5,B-=5,t.ndist=1+(31&o),o>>>=5,B-=5,t.ncode=4+(15&o),o>>>=4,B-=4,t.nlen>286||t.ndist>30){A.msg="too many length or distance symbols",t.mode=30;break}t.have=0,t.mode=18;case 18:for(;t.have<t.ncode;){for(;B<3;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}t.lens[F[t.have++]]=7&o,o>>>=3,B-=3}for(;t.have<19;)t.lens[F[t.have++]]=0;if(t.lencode=t.lendyn,t.lenbits=7,k={bits:t.lenbits},y=rA(0,t.lens,0,19,t.lencode,0,t.work,k),t.lenbits=k.bits,y){A.msg="invalid code lengths set",t.mode=30;break}t.have=0,t.mode=19;case 19:for(;t.have<t.nlen+t.ndist;){for(;h=(m=t.lencode[o&(1<<t.lenbits)-1])>>>16&255,l=65535&m,!((c=m>>>24)<=B);){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}if(l<16)o>>>=c,B-=c,t.lens[t.have++]=l;else{if(16===l){for(p=c+2;B<p;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}if(o>>>=c,B-=c,0===t.have){A.msg="invalid bit length repeat",t.mode=30;break}D=t.lens[t.have-1],E=3+(3&o),o>>>=2,B-=2}else if(17===l){for(p=c+3;B<p;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}B-=c,D=0,E=3+(7&(o>>>=c)),o>>>=3,B-=3}else{for(p=c+7;B<p;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}B-=c,D=0,E=11+(127&(o>>>=c)),o>>>=7,B-=7}if(t.have+E>t.nlen+t.ndist){A.msg="invalid bit length repeat",t.mode=30;break}for(;E--;)t.lens[t.have++]=D}}if(30===t.mode)break;if(0===t.lens[256]){A.msg="invalid code -- missing end-of-block",t.mode=30;break}if(t.lenbits=9,k={bits:t.lenbits},y=rA(1,t.lens,0,t.nlen,t.lencode,0,t.work,k),t.lenbits=k.bits,y){A.msg="invalid literal/lengths set",t.mode=30;break}if(t.distbits=6,t.distcode=t.distdyn,k={bits:t.distbits},y=rA(2,t.lens,t.nlen,t.ndist,t.distcode,0,t.work,k),t.distbits=k.bits,y){A.msg="invalid distances set",t.mode=30;break}if(t.mode=20,e===nA)break A;case 20:t.mode=21;case 21:if(n>=6&&a>=258){A.next_out=g,A.avail_out=a,A.next_in=I,A.avail_in=n,t.hold=o,t.bits=B,$(A,Q),g=A.next_out,r=A.output,a=A.avail_out,I=A.next_in,i=A.input,n=A.avail_in,o=t.hold,B=t.bits,12===t.mode&&(t.back=-1);break}for(t.back=0;h=(m=t.lencode[o&(1<<t.lenbits)-1])>>>16&255,l=65535&m,!((c=m>>>24)<=B);){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}if(h&&0==(240&h)){for(u=c,w=h,d=l;h=(m=t.lencode[d+((o&(1<<u+w)-1)>>u)])>>>16&255,l=65535&m,!(u+(c=m>>>24)<=B);){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}o>>>=u,B-=u,t.back+=u}if(o>>>=c,B-=c,t.back+=c,t.length=l,0===h){t.mode=26;break}if(32&h){t.back=-1,t.mode=12;break}if(64&h){A.msg="invalid literal/length code",t.mode=30;break}t.extra=15&h,t.mode=22;case 22:if(t.extra){for(p=t.extra;B<p;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}t.length+=o&(1<<t.extra)-1,o>>>=t.extra,B-=t.extra,t.back+=t.extra}t.was=t.length,t.mode=23;case 23:for(;h=(m=t.distcode[o&(1<<t.distbits)-1])>>>16&255,l=65535&m,!((c=m>>>24)<=B);){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}if(0==(240&h)){for(u=c,w=h,d=l;h=(m=t.distcode[d+((o&(1<<u+w)-1)>>u)])>>>16&255,l=65535&m,!(u+(c=m>>>24)<=B);){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}o>>>=u,B-=u,t.back+=u}if(o>>>=c,B-=c,t.back+=c,64&h){A.msg="invalid distance code",t.mode=30;break}t.offset=l,t.extra=15&h,t.mode=24;case 24:if(t.extra){for(p=t.extra;B<p;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}t.offset+=o&(1<<t.extra)-1,o>>>=t.extra,B-=t.extra,t.back+=t.extra}if(t.offset>t.dmax){A.msg="invalid distance too far back",t.mode=30;break}t.mode=25;case 25:if(0===a)break A;if(E=Q-a,t.offset>E){if((E=t.offset-E)>t.whave&&t.sane){A.msg="invalid distance too far back",t.mode=30;break}E>t.wnext?(E-=t.wnext,s=t.wsize-E):s=t.wnext-E,E>t.length&&(E=t.length),f=t.window}else f=r,s=g-t.offset,E=t.length;E>a&&(E=a),a-=E,t.length-=E;do{r[g++]=f[s++]}while(--E);0===t.length&&(t.mode=21);break;case 26:if(0===a)break A;r[g++]=t.length,a--,t.mode=21;break;case 27:if(t.wrap){for(;B<32;){if(0===n)break A;n--,o|=i[I++]<<B,B+=8}if(Q-=a,A.total_out+=Q,t.total+=Q,Q&&(A.adler=t.check=t.flags?Y(t.check,r,Q,g-Q):J(t.check,r,Q,g-Q)),Q=a,(t.flags?o:cA(o))!==t.check){A.msg="incorrect data check",t.mode=30;break}o=0,B=0}t.mode=28;case 28:if(t.wrap&&t.flags){for(;B<32;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}if(o!==(4294967295&t.total)){A.msg="incorrect length check",t.mode=30;break}o=0,B=0}t.mode=29;case 29:y=oA;break A;case 30:y=QA;break A;case 31:return EA;default:return CA}return A.next_out=g,A.avail_out=a,A.next_in=I,A.avail_in=n,t.hold=o,t.bits=B,(t.wsize||Q!==A.avail_out&&t.mode<30&&(t.mode<27||e!==IA))&&mA(A,A.output,A.next_out,Q-A.avail_out),C-=A.avail_in,Q-=A.avail_out,A.total_in+=C,A.total_out+=Q,t.total+=Q,t.wrap&&Q&&(A.adler=t.check=t.flags?Y(t.check,r,Q,A.next_out-Q):J(t.check,r,Q,A.next_out-Q)),A.data_type=t.bits+(t.last?64:0)+(12===t.mode?128:0)+(20===t.mode||15===t.mode?256:0),(0===C&&0===Q||e===IA)&&y===aA&&(y=sA),y},inflateEnd:function(A){if(!A||!A.state)return CA;var e=A.state;return e.window&&(e.window=null),A.state=null,aA},inflateGetHeader:function(A,e){if(!A||!A.state)return CA;var t=A.state;return 0==(2&t.wrap)?CA:(t.head=e,e.done=!1,aA)},inflateSetDictionary:function(A,e){var t,i=e.length;return A&&A.state?0!==(t=A.state).wrap&&11!==t.mode?CA:11===t.mode&&J(1,e,i,0)!==t.check?QA:mA(A,e,i,i)?(t.mode=31,EA):(t.havedict=1,aA):CA},inflateInfo:"pako inflate (from Nodeca project)"};var FA=function(){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},SA=Object.prototype.toString,vA=H.Z_NO_FLUSH,RA=H.Z_FINISH,UA=H.Z_OK,LA=H.Z_STREAM_END,bA=H.Z_NEED_DICT,MA=H.Z_STREAM_ERROR,NA=H.Z_DATA_ERROR,xA=H.Z_MEM_ERROR;function JA(A){this.options=P({chunkSize:65536,windowBits:15,to:""},A||{});var e=this.options;e.raw&&e.windowBits>=0&&e.windowBits<16&&(e.windowBits=-e.windowBits,0===e.windowBits&&(e.windowBits=-15)),!(e.windowBits>=0&&e.windowBits<16)||A&&A.windowBits||(e.windowBits+=32),e.windowBits>15&&e.windowBits<48&&0==(15&e.windowBits)&&(e.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new z,this.strm.avail_out=0;var t=GA.inflateInit2(this.strm,e.windowBits);if(t!==UA)throw new Error(K[t]);if(this.header=new FA,GA.inflateGetHeader(this.strm,this.header),e.dictionary&&("string"==typeof e.dictionary?e.dictionary=Z(e.dictionary):"[object ArrayBuffer]"===SA.call(e.dictionary)&&(e.dictionary=new Uint8Array(e.dictionary)),e.raw&&(t=GA.inflateSetDictionary(this.strm,e.dictionary))!==UA))throw new Error(K[t])}function qA(A,e){var t=new JA(e);if(t.push(A),t.err)throw t.msg||K[t.err];return t.result}JA.prototype.push=function(A,e){var t,i,r,I=this.strm,g=this.options.chunkSize,n=this.options.dictionary;if(this.ended)return!1;for(i=e===~~e?e:!0===e?RA:vA,"[object ArrayBuffer]"===SA.call(A)?I.input=new Uint8Array(A):I.input=A,I.next_in=0,I.avail_in=I.input.length;;){for(0===I.avail_out&&(I.output=new Uint8Array(g),I.next_out=0,I.avail_out=g),(t=GA.inflate(I,i))===bA&&n&&((t=GA.inflateSetDictionary(I,n))===UA?t=GA.inflate(I,i):t===NA&&(t=bA));I.avail_in>0&&t===LA&&I.state.wrap>0&&0!==A[I.next_in];)GA.inflateReset(I),t=GA.inflate(I,i);switch(t){case MA:case NA:case bA:case xA:return this.onEnd(t),this.ended=!0,!1}if(r=I.avail_out,I.next_out&&(0===I.avail_out||t===LA))if("string"===this.options.to){var a=W(I.output,I.next_out),o=I.next_out-a,B=j(I.output,a);I.next_out=o,I.avail_out=g-o,o&&I.output.set(I.output.subarray(a,a+o),0),this.onData(B)}else this.onData(I.output.length===I.next_out?I.output:I.output.subarray(0,I.next_out));if(t!==UA||0!==r){if(t===LA)return t=GA.inflateEnd(this.strm),this.onEnd(t),this.ended=!0,!0;if(0===I.avail_in)break}}return!0},JA.prototype.onData=function(A){this.chunks.push(A)},JA.prototype.onEnd=function(A){A===UA&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=T(this.chunks)),this.chunks=[],this.err=A,this.msg=this.strm.msg};var YA={Inflate:JA,inflate:qA,inflateRaw:function(A,e){return(e=e||{}).raw=!0,qA(A,e)},ungzip:qA,constants:H}.inflate;function KA(A){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=c(A);if(e){var r=c(this).constructor;t=Reflect.construct(i,arguments,r)}else t=i.apply(this,arguments);return f(this,t)}}var HA=function(A){s(t,w);var e=KA(t);function t(){return B(this,t),e.apply(this,arguments)}return Q(t,[{key:"decodeBlock",value:function(A){return YA(new Uint8Array(A)).buffer}}]),t}(),OA=Object.freeze({__proto__:null,default:HA});function PA(A){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=c(A);if(e){var r=c(this).constructor;t=Reflect.construct(i,arguments,r)}else t=i.apply(this,arguments);return f(this,t)}}var TA,VA=function(A){s(t,w);var e=PA(t);function t(){return B(this,t),e.apply(this,arguments)}return Q(t,[{key:"decodeBlock",value:function(A){for(var e=new DataView(A),t=[],i=0;i<A.byteLength;++i){var r=e.getInt8(i);if(r<0){var I=e.getUint8(i+1);r=-r;for(var g=0;g<=r;++g)t.push(I);i+=1}else{for(var n=0;n<=r;++n)t.push(e.getUint8(i+n+1));i+=r+1}}return new Uint8Array(t).buffer}}]),t}(),_A=Object.freeze({__proto__:null,default:VA}),XA={exports:{}};TA=XA,\n/* Copyright 2015-2021 Esri. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 @preserve */\nfunction(){var A,e,t,i,r,I,g,n,a,o,B,C,Q,E,s,f,c=(A={defaultNoDataValue:-34027999387901484e22,decode:function(I,g){var n=(g=g||{}).encodedMaskData||null===g.encodedMaskData,a=r(I,g.inputOffset||0,n),o=null!==g.noDataValue?g.noDataValue:A.defaultNoDataValue,B=e(a,g.pixelType||Float32Array,g.encodedMaskData,o,g.returnMask),C={width:a.width,height:a.height,pixelData:B.resultPixels,minValue:B.minValue,maxValue:a.pixels.maxValue,noDataValue:o};return B.resultMask&&(C.maskData=B.resultMask),g.returnEncodedMask&&a.mask&&(C.encodedMaskData=a.mask.bitset?a.mask.bitset:null),g.returnFileInfo&&(C.fileInfo=t(a),g.computeUsedBitDepths&&(C.fileInfo.bitDepths=i(a))),C}},e=function(A,e,t,i,r){var g,n,a,o=0,B=A.pixels.numBlocksX,C=A.pixels.numBlocksY,Q=Math.floor(A.width/B),E=Math.floor(A.height/C),s=2*A.maxZError,f=Number.MAX_VALUE;t=t||(A.mask?A.mask.bitset:null),n=new e(A.width*A.height),r&&t&&(a=new Uint8Array(A.width*A.height));for(var c,h,l=new Float32Array(Q*E),u=0;u<=C;u++){var w=u!==C?E:A.height%C;if(0!==w)for(var d=0;d<=B;d++){var D=d!==B?Q:A.width%B;if(0!==D){var y,k,p,m,G=u*A.width*E+d*Q,F=A.width-D,S=A.pixels.blocks[o];if(S.encoding<2?(0===S.encoding?y=S.rawData:(I(S.stuffedData,S.bitsPerPixel,S.numValidPixels,S.offset,s,l,A.pixels.maxValue),y=l),k=0):p=2===S.encoding?0:S.offset,t)for(h=0;h<w;h++){for(7&G&&(m=t[G>>3],m<<=7&G),c=0;c<D;c++)7&G||(m=t[G>>3]),128&m?(a&&(a[G]=1),f=f>(g=S.encoding<2?y[k++]:p)?g:f,n[G++]=g):(a&&(a[G]=0),n[G++]=i),m<<=1;G+=F}else if(S.encoding<2)for(h=0;h<w;h++){for(c=0;c<D;c++)f=f>(g=y[k++])?g:f,n[G++]=g;G+=F}else for(f=f>p?p:f,h=0;h<w;h++){for(c=0;c<D;c++)n[G++]=p;G+=F}if(1===S.encoding&&k!==S.numValidPixels)throw"Block and Mask do not match";o++}}}return{resultPixels:n,resultMask:a,minValue:f}},t=function(A){return{fileIdentifierString:A.fileIdentifierString,fileVersion:A.fileVersion,imageType:A.imageType,height:A.height,width:A.width,maxZError:A.maxZError,eofOffset:A.eofOffset,mask:A.mask?{numBlocksX:A.mask.numBlocksX,numBlocksY:A.mask.numBlocksY,numBytes:A.mask.numBytes,maxValue:A.mask.maxValue}:null,pixels:{numBlocksX:A.pixels.numBlocksX,numBlocksY:A.pixels.numBlocksY,numBytes:A.pixels.numBytes,maxValue:A.pixels.maxValue,noDataValue:A.noDataValue}}},i=function(A){for(var e=A.pixels.numBlocksX*A.pixels.numBlocksY,t={},i=0;i<e;i++){var r=A.pixels.blocks[i];0===r.encoding?t.float32=!0:1===r.encoding?t[r.bitsPerPixel]=!0:t[0]=!0}return Object.keys(t)},r=function(A,e,t){var i={},r=new Uint8Array(A,e,10);if(i.fileIdentifierString=String.fromCharCode.apply(null,r),"CntZImage"!==i.fileIdentifierString.trim())throw"Unexpected file identifier string: "+i.fileIdentifierString;e+=10;var I=new DataView(A,e,24);if(i.fileVersion=I.getInt32(0,!0),i.imageType=I.getInt32(4,!0),i.height=I.getUint32(8,!0),i.width=I.getUint32(12,!0),i.maxZError=I.getFloat64(16,!0),e+=24,!t)if(I=new DataView(A,e,16),i.mask={},i.mask.numBlocksY=I.getUint32(0,!0),i.mask.numBlocksX=I.getUint32(4,!0),i.mask.numBytes=I.getUint32(8,!0),i.mask.maxValue=I.getFloat32(12,!0),e+=16,i.mask.numBytes>0){var g=new Uint8Array(Math.ceil(i.width*i.height/8)),n=(I=new DataView(A,e,i.mask.numBytes)).getInt16(0,!0),a=2,o=0;do{if(n>0)for(;n--;)g[o++]=I.getUint8(a++);else{var B=I.getUint8(a++);for(n=-n;n--;)g[o++]=B}n=I.getInt16(a,!0),a+=2}while(a<i.mask.numBytes);if(-32768!==n||o<g.length)throw"Unexpected end of mask RLE encoding";i.mask.bitset=g,e+=i.mask.numBytes}else 0==(i.mask.numBytes|i.mask.numBlocksY|i.mask.maxValue)&&(i.mask.bitset=new Uint8Array(Math.ceil(i.width*i.height/8)));I=new DataView(A,e,16),i.pixels={},i.pixels.numBlocksY=I.getUint32(0,!0),i.pixels.numBlocksX=I.getUint32(4,!0),i.pixels.numBytes=I.getUint32(8,!0),i.pixels.maxValue=I.getFloat32(12,!0),e+=16;var C=i.pixels.numBlocksX,Q=i.pixels.numBlocksY,E=C+(i.width%C>0?1:0),s=Q+(i.height%Q>0?1:0);i.pixels.blocks=new Array(E*s);for(var f=0,c=0;c<s;c++)for(var h=0;h<E;h++){var l=0,u=A.byteLength-e;I=new DataView(A,e,Math.min(10,u));var w={};i.pixels.blocks[f++]=w;var d=I.getUint8(0);if(l++,w.encoding=63&d,w.encoding>3)throw"Invalid block encoding ("+w.encoding+")";if(2!==w.encoding){if(0!==d&&2!==d){if(d>>=6,w.offsetType=d,2===d)w.offset=I.getInt8(1),l++;else if(1===d)w.offset=I.getInt16(1,!0),l+=2;else{if(0!==d)throw"Invalid block offset type";w.offset=I.getFloat32(1,!0),l+=4}if(1===w.encoding)if(d=I.getUint8(l),l++,w.bitsPerPixel=63&d,d>>=6,w.numValidPixelsType=d,2===d)w.numValidPixels=I.getUint8(l),l++;else if(1===d)w.numValidPixels=I.getUint16(l,!0),l+=2;else{if(0!==d)throw"Invalid valid pixel count type";w.numValidPixels=I.getUint32(l,!0),l+=4}}var D;if(e+=l,3!==w.encoding)if(0===w.encoding){var y=(i.pixels.numBytes-1)/4;if(y!==Math.floor(y))throw"uncompressed block has invalid length";D=new ArrayBuffer(4*y),new Uint8Array(D).set(new Uint8Array(A,e,4*y));var k=new Float32Array(D);w.rawData=k,e+=4*y}else if(1===w.encoding){var p=Math.ceil(w.numValidPixels*w.bitsPerPixel/8),m=Math.ceil(p/4);D=new ArrayBuffer(4*m),new Uint8Array(D).set(new Uint8Array(A,e,p)),w.stuffedData=new Uint32Array(D),e+=p}}else e++}return i.eofOffset=e,i},I=function(A,e,t,i,r,I,g){var n,a,o,B=(1<<e)-1,C=0,Q=0,E=Math.ceil((g-i)/r),s=4*A.length-Math.ceil(e*t/8);for(A[A.length-1]<<=8*s,n=0;n<t;n++){if(0===Q&&(o=A[C++],Q=32),Q>=e)a=o>>>Q-e&B,Q-=e;else{var f=e-Q;a=(o&B)<<f&B,a+=(o=A[C++])>>>(Q=32-f)}I[n]=a<E?i+a*r:g}return I},A),h=(g=function(A,e,t,i,r,I,g,n){var a,o,B,C,Q,E=(1<<t)-1,s=0,f=0,c=4*A.length-Math.ceil(t*i/8);if(A[A.length-1]<<=8*c,r)for(a=0;a<i;a++)0===f&&(B=A[s++],f=32),f>=t?(o=B>>>f-t&E,f-=t):(o=(B&E)<<(C=t-f)&E,o+=(B=A[s++])>>>(f=32-C)),e[a]=r[o];else for(Q=Math.ceil((n-I)/g),a=0;a<i;a++)0===f&&(B=A[s++],f=32),f>=t?(o=B>>>f-t&E,f-=t):(o=(B&E)<<(C=t-f)&E,o+=(B=A[s++])>>>(f=32-C)),e[a]=o<Q?I+o*g:n},n=function(A,e,t,i,r,I){var g,n=(1<<e)-1,a=0,o=0,B=0,C=0,Q=0,E=[],s=4*A.length-Math.ceil(e*t/8);A[A.length-1]<<=8*s;var f=Math.ceil((I-i)/r);for(o=0;o<t;o++)0===C&&(g=A[a++],C=32),C>=e?(Q=g>>>C-e&n,C-=e):(Q=(g&n)<<(B=e-C)&n,Q+=(g=A[a++])>>>(C=32-B)),E[o]=Q<f?i+Q*r:I;return E.unshift(i),E},a=function(A,e,t,i,r,I,g,n){var a,o,B,C,Q=(1<<t)-1,E=0,s=0,f=0;if(r)for(a=0;a<i;a++)0===s&&(B=A[E++],s=32,f=0),s>=t?(o=B>>>f&Q,s-=t,f+=t):(o=B>>>f&Q,s=32-(C=t-s),o|=((B=A[E++])&(1<<C)-1)<<t-C,f=C),e[a]=r[o];else{var c=Math.ceil((n-I)/g);for(a=0;a<i;a++)0===s&&(B=A[E++],s=32,f=0),s>=t?(o=B>>>f&Q,s-=t,f+=t):(o=B>>>f&Q,s=32-(C=t-s),o|=((B=A[E++])&(1<<C)-1)<<t-C,f=C),e[a]=o<c?I+o*g:n}return e},o=function(A,e,t,i,r,I){var g,n=(1<<e)-1,a=0,o=0,B=0,C=0,Q=0,E=0,s=[],f=Math.ceil((I-i)/r);for(o=0;o<t;o++)0===C&&(g=A[a++],C=32,E=0),C>=e?(Q=g>>>E&n,C-=e,E+=e):(Q=g>>>E&n,C=32-(B=e-C),Q|=((g=A[a++])&(1<<B)-1)<<e-B,E=B),s[o]=Q<f?i+Q*r:I;return s.unshift(i),s},B=function(A,e,t,i){var r,I,g,n,a=(1<<t)-1,o=0,B=0,C=4*A.length-Math.ceil(t*i/8);for(A[A.length-1]<<=8*C,r=0;r<i;r++)0===B&&(g=A[o++],B=32),B>=t?(I=g>>>B-t&a,B-=t):(I=(g&a)<<(n=t-B)&a,I+=(g=A[o++])>>>(B=32-n)),e[r]=I;return e},C=function(A,e,t,i){var r,I,g,n,a=(1<<t)-1,o=0,B=0,C=0;for(r=0;r<i;r++)0===B&&(g=A[o++],B=32,C=0),B>=t?(I=g>>>C&a,B-=t,C+=t):(I=g>>>C&a,B=32-(n=t-B),I|=((g=A[o++])&(1<<n)-1)<<t-n,C=n),e[r]=I;return e},Q={HUFFMAN_LUT_BITS_MAX:12,computeChecksumFletcher32:function(A){for(var e=65535,t=65535,i=A.length,r=Math.floor(i/2),I=0;r;){var g=r>=359?359:r;r-=g;do{e+=A[I++]<<8,t+=e+=A[I++]}while(--g);e=(65535&e)+(e>>>16),t=(65535&t)+(t>>>16)}return 1&i&&(t+=e+=A[I]<<8),((t=(65535&t)+(t>>>16))<<16|(e=(65535&e)+(e>>>16)))>>>0},readHeaderInfo:function(A,e){var t=e.ptr,i=new Uint8Array(A,t,6),r={};if(r.fileIdentifierString=String.fromCharCode.apply(null,i),0!==r.fileIdentifierString.lastIndexOf("Lerc2",0))throw"Unexpected file identifier string (expect Lerc2 ): "+r.fileIdentifierString;t+=6;var I,g=new DataView(A,t,8),n=g.getInt32(0,!0);if(r.fileVersion=n,t+=4,n>=3&&(r.checksum=g.getUint32(4,!0),t+=4),g=new DataView(A,t,12),r.height=g.getUint32(0,!0),r.width=g.getUint32(4,!0),t+=8,n>=4?(r.numDims=g.getUint32(8,!0),t+=4):r.numDims=1,g=new DataView(A,t,40),r.numValidPixel=g.getUint32(0,!0),r.microBlockSize=g.getInt32(4,!0),r.blobSize=g.getInt32(8,!0),r.imageType=g.getInt32(12,!0),r.maxZError=g.getFloat64(16,!0),r.zMin=g.getFloat64(24,!0),r.zMax=g.getFloat64(32,!0),t+=40,e.headerInfo=r,e.ptr=t,n>=3&&(I=n>=4?52:48,this.computeChecksumFletcher32(new Uint8Array(A,t-I,r.blobSize-14))!==r.checksum))throw"Checksum failed.";return!0},checkMinMaxRanges:function(A,e){var t=e.headerInfo,i=this.getDataTypeArray(t.imageType),r=t.numDims*this.getDataTypeSize(t.imageType),I=this.readSubArray(A,e.ptr,i,r),g=this.readSubArray(A,e.ptr+r,i,r);e.ptr+=2*r;var n,a=!0;for(n=0;n<t.numDims;n++)if(I[n]!==g[n]){a=!1;break}return t.minValues=I,t.maxValues=g,a},readSubArray:function(A,e,t,i){var r;if(t===Uint8Array)r=new Uint8Array(A,e,i);else{var I=new ArrayBuffer(i);new Uint8Array(I).set(new Uint8Array(A,e,i)),r=new t(I)}return r},readMask:function(A,e){var t,i,r=e.ptr,I=e.headerInfo,g=I.width*I.height,n=I.numValidPixel,a=new DataView(A,r,4),o={};if(o.numBytes=a.getUint32(0,!0),r+=4,(0===n||g===n)&&0!==o.numBytes)throw"invalid mask";if(0===n)t=new Uint8Array(Math.ceil(g/8)),o.bitset=t,i=new Uint8Array(g),e.pixels.resultMask=i,r+=o.numBytes;else if(o.numBytes>0){t=new Uint8Array(Math.ceil(g/8));var B=(a=new DataView(A,r,o.numBytes)).getInt16(0,!0),C=2,Q=0,E=0;do{if(B>0)for(;B--;)t[Q++]=a.getUint8(C++);else for(E=a.getUint8(C++),B=-B;B--;)t[Q++]=E;B=a.getInt16(C,!0),C+=2}while(C<o.numBytes);if(-32768!==B||Q<t.length)throw"Unexpected end of mask RLE encoding";i=new Uint8Array(g);var s=0,f=0;for(f=0;f<g;f++)7&f?(s=t[f>>3],s<<=7&f):s=t[f>>3],128&s&&(i[f]=1);e.pixels.resultMask=i,o.bitset=t,r+=o.numBytes}return e.ptr=r,e.mask=o,!0},readDataOneSweep:function(A,e,t,i){var r,I=e.ptr,g=e.headerInfo,n=g.numDims,a=g.width*g.height,o=g.imageType,B=g.numValidPixel*Q.getDataTypeSize(o)*n,C=e.pixels.resultMask;if(t===Uint8Array)r=new Uint8Array(A,I,B);else{var E=new ArrayBuffer(B);new Uint8Array(E).set(new Uint8Array(A,I,B)),r=new t(E)}if(r.length===a*n)e.pixels.resultPixels=i?Q.swapDimensionOrder(r,a,n,t,!0):r;else{e.pixels.resultPixels=new t(a*n);var s=0,f=0,c=0,h=0;if(n>1){if(i){for(f=0;f<a;f++)if(C[f])for(h=f,c=0;c<n;c++,h+=a)e.pixels.resultPixels[h]=r[s++]}else for(f=0;f<a;f++)if(C[f])for(h=f*n,c=0;c<n;c++)e.pixels.resultPixels[h+c]=r[s++]}else for(f=0;f<a;f++)C[f]&&(e.pixels.resultPixels[f]=r[s++])}return I+=B,e.ptr=I,!0},readHuffmanTree:function(A,e){var t=this.HUFFMAN_LUT_BITS_MAX,i=new DataView(A,e.ptr,16);if(e.ptr+=16,i.getInt32(0,!0)<2)throw"unsupported Huffman version";var r=i.getInt32(4,!0),I=i.getInt32(8,!0),g=i.getInt32(12,!0);if(I>=g)return!1;var n=new Uint32Array(g-I);Q.decodeBits(A,e,n);var a,o,B,C,s=[];for(a=I;a<g;a++)s[o=a-(a<r?0:r)]={first:n[a-I],second:null};var f=A.byteLength-e.ptr,c=Math.ceil(f/4),h=new ArrayBuffer(4*c);new Uint8Array(h).set(new Uint8Array(A,e.ptr,f));var l,u=new Uint32Array(h),w=0,d=0;for(l=u[0],a=I;a<g;a++)(C=s[o=a-(a<r?0:r)].first)>0&&(s[o].second=l<<w>>>32-C,32-w>=C?32===(w+=C)&&(w=0,l=u[++d]):(w+=C-32,l=u[++d],s[o].second|=l>>>32-w));var D=0,y=0,k=new E;for(a=0;a<s.length;a++)void 0!==s[a]&&(D=Math.max(D,s[a].first));y=D>=t?t:D;var p,m,G,F,S,v=[];for(a=I;a<g;a++)if((C=s[o=a-(a<r?0:r)].first)>0)if(p=[C,o],C<=y)for(m=s[o].second<<y-C,G=1<<y-C,B=0;B<G;B++)v[m|B]=p;else for(m=s[o].second,S=k,F=C-1;F>=0;F--)m>>>F&1?(S.right||(S.right=new E),S=S.right):(S.left||(S.left=new E),S=S.left),0!==F||S.val||(S.val=p[1]);return{decodeLut:v,numBitsLUTQick:y,numBitsLUT:D,tree:k,stuffedData:u,srcPtr:d,bitPos:w}},readHuffman:function(A,e,t,i){var r,I,g,n,a,o,B,C,E,s=e.headerInfo.numDims,f=e.headerInfo.height,c=e.headerInfo.width,h=c*f,l=this.readHuffmanTree(A,e),u=l.decodeLut,w=l.tree,d=l.stuffedData,D=l.srcPtr,y=l.bitPos,k=l.numBitsLUTQick,p=l.numBitsLUT,m=0===e.headerInfo.imageType?128:0,G=e.pixels.resultMask,F=0;y>0&&(D++,y=0);var S,v=d[D],R=1===e.encodeMode,U=new t(h*s),L=U;if(s<2||R){for(S=0;S<s;S++)if(s>1&&(L=new t(U.buffer,h*S,h),F=0),e.headerInfo.numValidPixel===c*f)for(C=0,o=0;o<f;o++)for(B=0;B<c;B++,C++){if(I=0,a=n=v<<y>>>32-k,32-y<k&&(a=n|=d[D+1]>>>64-y-k),u[a])I=u[a][1],y+=u[a][0];else for(a=n=v<<y>>>32-p,32-y<p&&(a=n|=d[D+1]>>>64-y-p),r=w,E=0;E<p;E++)if(!(r=n>>>p-E-1&1?r.right:r.left).left&&!r.right){I=r.val,y=y+E+1;break}y>=32&&(y-=32,v=d[++D]),g=I-m,R?(g+=B>0?F:o>0?L[C-c]:F,g&=255,L[C]=g,F=g):L[C]=g}else for(C=0,o=0;o<f;o++)for(B=0;B<c;B++,C++)if(G[C]){if(I=0,a=n=v<<y>>>32-k,32-y<k&&(a=n|=d[D+1]>>>64-y-k),u[a])I=u[a][1],y+=u[a][0];else for(a=n=v<<y>>>32-p,32-y<p&&(a=n|=d[D+1]>>>64-y-p),r=w,E=0;E<p;E++)if(!(r=n>>>p-E-1&1?r.right:r.left).left&&!r.right){I=r.val,y=y+E+1;break}y>=32&&(y-=32,v=d[++D]),g=I-m,R?(B>0&&G[C-1]?g+=F:o>0&&G[C-c]?g+=L[C-c]:g+=F,g&=255,L[C]=g,F=g):L[C]=g}}else for(C=0,o=0;o<f;o++)for(B=0;B<c;B++)if(C=o*c+B,!G||G[C])for(S=0;S<s;S++,C+=h){if(I=0,a=n=v<<y>>>32-k,32-y<k&&(a=n|=d[D+1]>>>64-y-k),u[a])I=u[a][1],y+=u[a][0];else for(a=n=v<<y>>>32-p,32-y<p&&(a=n|=d[D+1]>>>64-y-p),r=w,E=0;E<p;E++)if(!(r=n>>>p-E-1&1?r.right:r.left).left&&!r.right){I=r.val,y=y+E+1;break}y>=32&&(y-=32,v=d[++D]),g=I-m,L[C]=g}e.ptr=e.ptr+4*(D+1)+(y>0?4:0),e.pixels.resultPixels=U,s>1&&!i&&(e.pixels.resultPixels=Q.swapDimensionOrder(U,h,s,t))},decodeBits:function(A,e,t,i,r){var I=e.headerInfo,Q=I.fileVersion,E=0,s=A.byteLength-e.ptr>=5?5:A.byteLength-e.ptr,f=new DataView(A,e.ptr,s),c=f.getUint8(0);E++;var h=c>>6,l=0===h?4:3-h,u=(32&c)>0,w=31&c,d=0;if(1===l)d=f.getUint8(E),E++;else if(2===l)d=f.getUint16(E,!0),E+=2;else{if(4!==l)throw"Invalid valid pixel count type";d=f.getUint32(E,!0),E+=4}var D,y,k,p,m,G,F,S,v,R=2*I.maxZError,U=I.numDims>1?I.maxValues[r]:I.zMax;if(u){for(e.counter.lut++,S=f.getUint8(E),E++,p=Math.ceil((S-1)*w/8),m=Math.ceil(p/4),y=new ArrayBuffer(4*m),k=new Uint8Array(y),e.ptr+=E,k.set(new Uint8Array(A,e.ptr,p)),F=new Uint32Array(y),e.ptr+=p,v=0;S-1>>>v;)v++;p=Math.ceil(d*v/8),m=Math.ceil(p/4),y=new ArrayBuffer(4*m),(k=new Uint8Array(y)).set(new Uint8Array(A,e.ptr,p)),D=new Uint32Array(y),e.ptr+=p,G=Q>=3?o(F,w,S-1,i,R,U):n(F,w,S-1,i,R,U),Q>=3?a(D,t,v,d,G):g(D,t,v,d,G)}else e.counter.bitstuffer++,v=w,e.ptr+=E,v>0&&(p=Math.ceil(d*v/8),m=Math.ceil(p/4),y=new ArrayBuffer(4*m),(k=new Uint8Array(y)).set(new Uint8Array(A,e.ptr,p)),D=new Uint32Array(y),e.ptr+=p,Q>=3?null==i?C(D,t,v,d):a(D,t,v,d,!1,i,R,U):null==i?B(D,t,v,d):g(D,t,v,d,!1,i,R,U))},readTiles:function(A,e,t,i){var r=e.headerInfo,I=r.width,g=r.height,n=I*g,a=r.microBlockSize,o=r.imageType,B=Q.getDataTypeSize(o),C=Math.ceil(I/a),E=Math.ceil(g/a);e.pixels.numBlocksY=E,e.pixels.numBlocksX=C,e.pixels.ptr=0;var s,f,c,h,l,u,w,d,D,y,k=0,p=0,m=0,G=0,F=0,S=0,v=0,R=0,U=0,L=0,b=0,M=0,N=0,x=0,J=0,q=new t(a*a),Y=g%a||a,K=I%a||a,H=r.numDims,O=e.pixels.resultMask,P=e.pixels.resultPixels,T=r.fileVersion>=5?14:15,V=r.zMax;for(m=0;m<E;m++)for(F=m!==E-1?a:Y,G=0;G<C;G++)for(L=m*I*a+G*a,b=I-(S=G!==C-1?a:K),d=0;d<H;d++){if(H>1?(y=P,L=m*I*a+G*a,P=new t(e.pixels.resultPixels.buffer,n*d*B,n),V=r.maxValues[d]):y=null,v=A.byteLength-e.ptr,f={},J=0,R=(s=new DataView(A,e.ptr,Math.min(10,v))).getUint8(0),J++,D=r.fileVersion>=5?4&R:0,U=R>>6&255,(R>>2&T)!=(G*a>>3&T))throw"integrity issue";if(D&&0===d)throw"integrity issue";if((l=3&R)>3)throw e.ptr+=J,"Invalid block encoding ("+l+")";if(2!==l)if(0===l){if(D)throw"integrity issue";if(e.counter.uncompressed++,e.ptr+=J,M=(M=F*S*B)<(N=A.byteLength-e.ptr)?M:N,c=new ArrayBuffer(M%B==0?M:M+B-M%B),new Uint8Array(c).set(new Uint8Array(A,e.ptr,M)),h=new t(c),x=0,O)for(k=0;k<F;k++){for(p=0;p<S;p++)O[L]&&(P[L]=h[x++]),L++;L+=b}else for(k=0;k<F;k++){for(p=0;p<S;p++)P[L++]=h[x++];L+=b}e.ptr+=x*B}else if(u=Q.getDataTypeUsed(D&&o<6?4:o,U),w=Q.getOnePixel(f,J,u,s),J+=Q.getDataTypeSize(u),3===l)if(e.ptr+=J,e.counter.constantoffset++,O)for(k=0;k<F;k++){for(p=0;p<S;p++)O[L]&&(P[L]=D?Math.min(V,y[L]+w):w),L++;L+=b}else for(k=0;k<F;k++){for(p=0;p<S;p++)P[L]=D?Math.min(V,y[L]+w):w,L++;L+=b}else if(e.ptr+=J,Q.decodeBits(A,e,q,w,d),J=0,D)if(O)for(k=0;k<F;k++){for(p=0;p<S;p++)O[L]&&(P[L]=q[J++]+y[L]),L++;L+=b}else for(k=0;k<F;k++){for(p=0;p<S;p++)P[L]=q[J++]+y[L],L++;L+=b}else if(O)for(k=0;k<F;k++){for(p=0;p<S;p++)O[L]&&(P[L]=q[J++]),L++;L+=b}else for(k=0;k<F;k++){for(p=0;p<S;p++)P[L++]=q[J++];L+=b}else{if(D)if(O)for(k=0;k<F;k++)for(p=0;p<S;p++)O[L]&&(P[L]=y[L]),L++;else for(k=0;k<F;k++)for(p=0;p<S;p++)P[L]=y[L],L++;e.counter.constant++,e.ptr+=J}}H>1&&!i&&(e.pixels.resultPixels=Q.swapDimensionOrder(e.pixels.resultPixels,n,H,t))},formatFileInfo:function(A){return{fileIdentifierString:A.headerInfo.fileIdentifierString,fileVersion:A.headerInfo.fileVersion,imageType:A.headerInfo.imageType,height:A.headerInfo.height,width:A.headerInfo.width,numValidPixel:A.headerInfo.numValidPixel,microBlockSize:A.headerInfo.microBlockSize,blobSize:A.headerInfo.blobSize,maxZError:A.headerInfo.maxZError,pixelType:Q.getPixelType(A.headerInfo.imageType),eofOffset:A.eofOffset,mask:A.mask?{numBytes:A.mask.numBytes}:null,pixels:{numBlocksX:A.pixels.numBlocksX,numBlocksY:A.pixels.numBlocksY,maxValue:A.headerInfo.zMax,minValue:A.headerInfo.zMin,noDataValue:A.noDataValue}}},constructConstantSurface:function(A,e){var t=A.headerInfo.zMax,i=A.headerInfo.zMin,r=A.headerInfo.maxValues,I=A.headerInfo.numDims,g=A.headerInfo.height*A.headerInfo.width,n=0,a=0,o=0,B=A.pixels.resultMask,C=A.pixels.resultPixels;if(B)if(I>1){if(e)for(n=0;n<I;n++)for(o=n*g,t=r[n],a=0;a<g;a++)B[a]&&(C[o+a]=t);else for(a=0;a<g;a++)if(B[a])for(o=a*I,n=0;n<I;n++)C[o+I]=r[n]}else for(a=0;a<g;a++)B[a]&&(C[a]=t);else if(I>1&&i!==t)if(e)for(n=0;n<I;n++)for(o=n*g,t=r[n],a=0;a<g;a++)C[o+a]=t;else for(a=0;a<g;a++)for(o=a*I,n=0;n<I;n++)C[o+n]=r[n];else for(a=0;a<g*I;a++)C[a]=t},getDataTypeArray:function(A){var e;switch(A){case 0:e=Int8Array;break;case 1:e=Uint8Array;break;case 2:e=Int16Array;break;case 3:e=Uint16Array;break;case 4:e=Int32Array;break;case 5:e=Uint32Array;break;case 6:default:e=Float32Array;break;case 7:e=Float64Array}return e},getPixelType:function(A){var e;switch(A){case 0:e="S8";break;case 1:e="U8";break;case 2:e="S16";break;case 3:e="U16";break;case 4:e="S32";break;case 5:e="U32";break;case 6:default:e="F32";break;case 7:e="F64"}return e},isValidPixelValue:function(A,e){if(null==e)return!1;var t;switch(A){case 0:t=e>=-128&&e<=127;break;case 1:t=e>=0&&e<=255;break;case 2:t=e>=-32768&&e<=32767;break;case 3:t=e>=0&&e<=65536;break;case 4:t=e>=-2147483648&&e<=2147483647;break;case 5:t=e>=0&&e<=4294967296;break;case 6:t=e>=-34027999387901484e22&&e<=34027999387901484e22;break;case 7:t=e>=-17976931348623157e292&&e<=17976931348623157e292;break;default:t=!1}return t},getDataTypeSize:function(A){var e=0;switch(A){case 0:case 1:e=1;break;case 2:case 3:e=2;break;case 4:case 5:case 6:e=4;break;case 7:e=8;break;default:e=A}return e},getDataTypeUsed:function(A,e){var t=A;switch(A){case 2:case 4:t=A-e;break;case 3:case 5:t=A-2*e;break;case 6:t=0===e?A:1===e?2:1;break;case 7:t=0===e?A:A-2*e+1;break;default:t=A}return t},getOnePixel:function(A,e,t,i){var r=0;switch(t){case 0:r=i.getInt8(e);break;case 1:r=i.getUint8(e);break;case 2:r=i.getInt16(e,!0);break;case 3:r=i.getUint16(e,!0);break;case 4:r=i.getInt32(e,!0);break;case 5:r=i.getUInt32(e,!0);break;case 6:r=i.getFloat32(e,!0);break;case 7:r=i.getFloat64(e,!0);break;default:throw"the decoder does not understand this pixel type"}return r},swapDimensionOrder:function(A,e,t,i,r){var I=0,g=0,n=0,a=0,o=A;if(t>1)if(o=new i(e*t),r)for(I=0;I<e;I++)for(a=I,n=0;n<t;n++,a+=e)o[a]=A[g++];else for(I=0;I<e;I++)for(a=I,n=0;n<t;n++,a+=e)o[g++]=A[a];return o}},E=function(A,e,t){this.val=A,this.left=e,this.right=t},{decode:function(A,e){var t=(e=e||{}).noDataValue,i=0,r={};r.ptr=e.inputOffset||0,r.pixels={},Q.readHeaderInfo(A,r);var I=r.headerInfo,g=I.fileVersion,n=Q.getDataTypeArray(I.imageType);if(g>5)throw"unsupported lerc version 2."+g;Q.readMask(A,r),I.numValidPixel===I.width*I.height||r.pixels.resultMask||(r.pixels.resultMask=e.maskData);var a=I.width*I.height;r.pixels.resultPixels=new n(a*I.numDims),r.counter={onesweep:0,uncompressed:0,lut:0,bitstuffer:0,constant:0,constantoffset:0};var o,B=!e.returnPixelInterleavedDims;if(0!==I.numValidPixel)if(I.zMax===I.zMin)Q.constructConstantSurface(r,B);else if(g>=4&&Q.checkMinMaxRanges(A,r))Q.constructConstantSurface(r,B);else{var C=new DataView(A,r.ptr,2),E=C.getUint8(0);if(r.ptr++,E)Q.readDataOneSweep(A,r,n,B);else if(g>1&&I.imageType<=1&&Math.abs(I.maxZError-.5)<1e-5){var s=C.getUint8(1);if(r.ptr++,r.encodeMode=s,s>2||g<4&&s>1)throw"Invalid Huffman flag "+s;s?Q.readHuffman(A,r,n,B):Q.readTiles(A,r,n,B)}else Q.readTiles(A,r,n,B)}r.eofOffset=r.ptr,e.inputOffset?(o=r.headerInfo.blobSize+e.inputOffset-r.ptr,Math.abs(o)>=1&&(r.eofOffset=e.inputOffset+r.headerInfo.blobSize)):(o=r.headerInfo.blobSize-r.ptr,Math.abs(o)>=1&&(r.eofOffset=r.headerInfo.blobSize));var f={width:I.width,height:I.height,pixelData:r.pixels.resultPixels,minValue:I.zMin,maxValue:I.zMax,validPixelCount:I.numValidPixel,dimCount:I.numDims,dimStats:{minValues:I.minValues,maxValues:I.maxValues},maskData:r.pixels.resultMask};if(r.pixels.resultMask&&Q.isValidPixelValue(I.imageType,t)){var c=r.pixels.resultMask;for(i=0;i<a;i++)c[i]||(f.pixelData[i]=t);f.noDataValue=t}return r.noDataValue=t,e.returnFileInfo&&(f.fileInfo=Q.formatFileInfo(r)),f},getBandCount:function(A){for(var e=0,t=0,i={ptr:0,pixels:{}};t<A.byteLength-58;)Q.readHeaderInfo(A,i),t+=i.headerInfo.blobSize,e++,i.ptr=t;return e}}),l=(s=new ArrayBuffer(4),f=new Uint8Array(s),new Uint32Array(s)[0]=1,1===f[0]),u={decode:function(A,e){if(!l)throw"Big endian system is not supported.";var t,i,r=(e=e||{}).inputOffset||0,I=new Uint8Array(A,r,10),g=String.fromCharCode.apply(null,I);if("CntZImage"===g.trim())t=c,i=1;else{if("Lerc2"!==g.substring(0,5))throw"Unexpected file identifier string: "+g;t=h,i=2}for(var n,a,o,B,C,Q,E=0,s=A.byteLength-10,f=[],u={width:0,height:0,pixels:[],pixelType:e.pixelType,mask:null,statistics:[]},w=0;r<s;){var d=t.decode(A,{inputOffset:r,encodedMaskData:n,maskData:o,returnMask:0===E,returnEncodedMask:0===E,returnFileInfo:!0,returnPixelInterleavedDims:e.returnPixelInterleavedDims,pixelType:e.pixelType||null,noDataValue:e.noDataValue||null});r=d.fileInfo.eofOffset,o=d.maskData,0===E&&(n=d.encodedMaskData,u.width=d.width,u.height=d.height,u.dimCount=d.dimCount||1,u.pixelType=d.pixelType||d.fileInfo.pixelType,u.mask=o),i>1&&(o&&f.push(o),d.fileInfo.mask&&d.fileInfo.mask.numBytes>0&&w++),E++,u.pixels.push(d.pixelData),u.statistics.push({minValue:d.minValue,maxValue:d.maxValue,noDataValue:d.noDataValue,dimStats:d.dimStats})}if(i>1&&w>1){for(Q=u.width*u.height,u.bandMasks=f,(o=new Uint8Array(Q)).set(f[0]),B=1;B<f.length;B++)for(a=f[B],C=0;C<Q;C++)o[C]=o[C]&a[C];u.maskData=o}return u}};TA.exports?TA.exports=u:this.Lerc=u}();var ZA,jA,WA,zA=XA.exports,$A={env:{emscripten_notify_memory_growth:function(A){WA=new Uint8Array(jA.exports.memory.buffer)}}},Ae=function(){function A(){B(this,A)}return Q(A,[{key:"init",value:function(){return ZA||(ZA="undefined"!=typeof fetch?fetch("data:application/wasm;base64,"+ee).then((function(A){return A.arrayBuffer()})).then((function(A){return WebAssembly.instantiate(A,$A)})).then(this._init):WebAssembly.instantiate(Buffer.from(ee,"base64"),$A).then(this._init))}},{key:"_init",value:function(A){jA=A.instance,$A.env.emscripten_notify_memory_growth(0)}},{key:"decode",value:function(A){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;if(!jA)throw new Error("ZSTDDecoder: Await .init() before decoding.");var t=A.byteLength,i=jA.exports.malloc(t);WA.set(A,i),e=e||Number(jA.exports.ZSTD_findDecompressedSize(i,t));var r=jA.exports.malloc(e),I=jA.exports.ZSTD_decompress(r,e,i,t),g=WA.slice(r,r+I);return jA.exports.free(i),jA.exports.free(r),g}}]),A}(),ee="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IAMNACAEQQNxBEADQCACRQ0FIAAgAkF/aiICaiIDIAEgAmotAAA6AAAgA0EDcQ0ACwsgAkEDTQ0AA0AgACACQXxqIgJqIAEgAmooAgA2AgAgAkEDSw0ACwsgAkUNAgNAIAAgAkF/aiICaiABIAJqLQAAOgAAIAINAAsMAgsgAkEDTQ0AIAIhBANAIAMgASgCADYCACABQQRqIQEgA0EEaiEDIARBfGoiBEEDSw0ACyACQQNxIQILIAJFDQADQCADIAEtAAA6AAAgA0EBaiEDIAFBAWohASACQX9qIgINAAsLIAAL8wICAn8BfgJAIAJFDQAgACACaiIDQX9qIAE6AAAgACABOgAAIAJBA0kNACADQX5qIAE6AAAgACABOgABIANBfWogAToAACAAIAE6AAIgAkEHSQ0AIANBfGogAToAACAAIAE6AAMgAkEJSQ0AIABBACAAa0EDcSIEaiIDIAFB/wFxQYGChAhsIgE2AgAgAyACIARrQXxxIgRqIgJBfGogATYCACAEQQlJDQAgAyABNgIIIAMgATYCBCACQXhqIAE2AgAgAkF0aiABNgIAIARBGUkNACADIAE2AhggAyABNgIUIAMgATYCECADIAE2AgwgAkFwaiABNgIAIAJBbGogATYCACACQWhqIAE2AgAgAkFkaiABNgIAIAQgA0EEcUEYciIEayICQSBJDQAgAa0iBUIghiAFhCEFIAMgBGohAQNAIAEgBTcDGCABIAU3AxAgASAFNwMIIAEgBTcDACABQSBqIQEgAkFgaiICQR9LDQALCyAACy8BAn8gACgCBCAAKAIAQQJ0aiICLQACIQMgACACLwEAIAEgAi0AAxAIajYCACADCy8BAn8gACgCBCAAKAIAQQJ0aiICLQACIQMgACACLwEAIAEgAi0AAxAFajYCACADCx8AIAAgASACKAIEEAg2AgAgARAEGiAAIAJBCGo2AgQLCAAgAGdBH3MLugUBDX8jAEEQayIKJAACfyAEQQNNBEAgCkEANgIMIApBDGogAyAEEAsaIAAgASACIApBDGpBBBAVIgBBbCAAEAMbIAAgACAESxsMAQsgAEEAIAEoAgBBAXRBAmoQECENQVQgAygAACIGQQ9xIgBBCksNABogAiAAQQVqNgIAIAMgBGoiAkF8aiEMIAJBeWohDiACQXtqIRAgAEEGaiELQQQh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ASIDNgLE4AEgACgCvOABIQQgACABNgK84AEgACABIAJqNgK44AEgACABIAQgA2tqNgLA4AELpgEBAX8gACAAKALs4QEQFjYCyOABIABCADcD+OABIABCADcDuOABIABBwOABakIANwMAIABBqNAAaiIBQYyAgOAANgIAIABBADYCmOIBIABCADcDiOEBIABCAzcDgOEBIABBrNABakHgEikCADcCACAAQbTQAWpB6BIoAgA2AgAgACABNgIMIAAgAEGYIGo2AgggACAAQaAwajYCBCAAIABBEGo2AgALYQEBf0G4fyEDAkAgAUEDSQ0AIAIgABAhIgFBA3YiADYCCCACIAFBAXE2AgQgAiABQQF2QQNxIgM2AgACQCADQX9qIgFBAksNAAJAIAFBAWsOAgEAAgtBbA8LIAAhAwsgAwsMACAAIAEgAkEAEC4LiAQCA38CfiADEBYhBCAAQQBBKBAQIQAgBCACSwRAIAQPCyABRQRAQX8PCwJAAkAgA0EBRg0AIAEoAAAiBkGo6r5pRg0AQXYhAyAGQXBxQdDUtMIBRw0BQQghAyACQQhJDQEgAEEAQSgQECEAIAEoAAQhASAAQQE2AhQgACABrTcDAEEADwsgASACIAMQLyIDIAJLDQAgACADNgIYQXIhAyABIARqIgVBf2otAAAiAkEIcQ0AIAJBIHEiBkUEQEFwIQMgBS0AACIFQacBSw0BIAVBB3GtQgEgBUEDdkEKaq2GIgdCA4h+IAd8IQggBEEBaiEECyACQQZ2IQMgAkECdiEFAkAgAkEDcUF/aiICQQJLBEBBACECDAELAkACQAJAIAJBAWsOAgECAAsgASAEai0AACECIARBAWohBAwCCyABIARqLwAAIQIgBEECaiEEDAELIAEgBGooAAAhAiAEQQRqIQQLIAVBAXEhBQJ+AkACQAJAIANBf2oiA0ECTQRAIANBAWsOAgIDAQtCfyAGRQ0DGiABIARqMQAADAMLIAEgBGovAACtQoACfAwCCyABIARqKAAArQwBCyABIARqKQAACyEHIAAgBTYCICAAIAI2AhwgACAHNwMAQQAhAyAAQQA2AhQgACAHIAggBhsiBzcDCCAAIAdCgIAIIAdCgIAIVBs+AhALIAMLWwEBf0G4fyEDIAIQFiICIAFNBH8gACACakF/ai0AACIAQQNxQQJ0QaAeaigC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C0Egak8NAQsgByAHKQNoNwMQIAcgBykDYDcDCCAEIA0gB0EIaiAHQdwAaiAPIA4gESAQEB4hCwwBCyACIARqIQggBCAKEAcgAkERTwRAIARBEGohAgNAIAIgCkEQaiIKEAcgAkEQaiICIAhJDQALCyAIIAlrIQIgByATNgJcIAkgCCAOa0sEQCAJIAggEWtLBEBBbCELDAILIBAgAiAOayICaiIKIANqIBBNBEAgCCAKIAMQDxoMAgsgCCAKQQAgAmsQDyEIIAcgAiADaiIDNgJkIAggAmshCCAOIQILIAlBEE8EQCADIAhqIQMDQCAIIAIQByACQRBqIQIgCEEQaiIIIANJDQALDAELAkAgCUEHTQRAIAggAi0AADoAACAIIAItAAE6AAEgCCACLQACOgACIAggAi0AAzoAAyAIQQRqIAIgCUECdCIDQcAeaigCAGoiAhAXIAIgA0HgHmooAgBrIQIgBygCZCEDDAELIAggAhAMCyADQQlJDQAgAyAIaiEDIAhBCGoiCCACQQhqIgJrQQ9MBEADQCAIIAIQDCACQQhqIQIgCEEIaiIIIANJDQAMAgALAAsDQCAIIAIQByACQRBqIQIgCEEQaiIIIANJDQALCyAHQRhqEAQaIAsgDCALEAMiAhshDCAEIAQgC2ogAhshBCAFQX9qIgUNAAsgDBADDQFBbCEMIAdBGGoQBEECSQ0BQQAhCANAIAhBA0cEQCAAIAhBAnQiAmpBrNABaiACIAdqKAJENgIAIAhBAWohCAwBCwsgBygCXCEIC0G6fyEMIA8gCGsiACANIARrSw0AIAQEfyAEIAggABALIABqBUEACyABayEMCyAHQfAAaiQAIAwLkRcCFn8FfiMAQdABayIHJAAgByAAKALw4QEiCDYCvAEgASACaiESIAggACgCgOIBaiETAkACQCAFRQRAIAEhAwwBCyAAKALE4AEhESAAKALA4AEhFSAAKAK84AEhDyAAQQE2AozhAUEAIQgDQCAIQQNHBEAgByAIQQJ0IgJqIAAgAmpBrNABaigCADYCVCAIQQFqIQgMAQsLIAcgETYCZCAHIA82AmAgByABIA9rNgJoQWwhECAHQShqIAMgBBAGEAMNASAFQQQgBUEESBshFyAHQTxqIAdBKGogACgCABATIAdBxABqIAdBKGogACgCCBATIAdBzABqIAdB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IAdB0AFqJAAgEAslACAAQgA3AgAgAEEAOwEIIABBADoACyAAIAE2AgwgACACOgAKC7QFAQN/IwBBMGsiBCQAIABB/wFqIgVBfWohBgJAIAMvAQIEQCAEQRhqIAEgAhAGIgIQAw0BIARBEGogBEEYaiADEBwgBEEIaiAEQRhqIAMQHCAAIQMDQAJAIARBGGoQBCADIAZPckUEQCADIARBEGogBEEYahASOgAAIAMgBEEIaiAEQRhqEBI6AAEgBEEYahAERQ0BIANBAmohAwsgBUF+aiEFAn8DQEG6fyECIAMiASAFSw0FIAEgBEEQaiAEQRhqEBI6AAAgAUEBaiEDIARBGGoQBEEDRgRAQQIhAiAEQQhqDAILIAMgBUsNBSABIARBCGogBEEYahASOgABIAFBAmohA0EDIQIgBEEYahAEQQNHDQALIARBEGoLIQUgAyAFIARBGGoQEjoAACABIAJqIABrIQIMAwsgAyAEQRBqIARBGGoQEjoAAiADIARBCGogBEEYahASOgADIANBBGohAwwAAAsACyAEQRhqIAEgAhAGIgIQAw0AIARBEGogBEEYaiADEBwgBEEIaiAEQRhqIAMQHCAAIQMDQAJAIARBGGoQBCADIAZPckUEQCADIARBEGogBEEYahAROgAAIAMgBEEIaiAEQRhqEBE6AAEgBEEYahAERQ0BIANBAmohAwsgBUF+aiEFAn8DQEG6fyECIAMiASAFSw0EIAEgBEEQaiAEQRhqEBE6AAAgAUEBaiEDIARBGGoQBEEDRgRAQQIhAiAEQQhqDAILIAMgBUsNBCABIARBCGogBEEYahAROgABIAFBAmohA0EDIQIgBEEYahAEQQNHDQALIARBEGoLIQUgAyAFIARBGGoQEToAACABIAJqIABrIQIMAgsgAyAEQRBqIARBGGoQEToAAiADIARBCGogBEEYahAROgADIANBBGohAwwAAAsACyAEQTBqJAAgAgtpAQF/An8CQAJAIAJBB00NACABKAAAQbfIwuF+Rw0AIAAgASgABDYCmOIBQWIgAEEQaiABIAIQPiIDEAMNAhogAEKBgICAEDcDiOEBIAAgASADaiACIANrECoMAQsgACABIAIQKgtBAAsLrQMBBn8jAEGAAWsiAyQAQWIhCAJAIAJBCUkNACAAQZjQAGogAUEIaiIEIAJBeGogAEGY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wOABCwutAgIEfwF+IwBBQGoiBCQAAkACQCACQQhJDQAgASgAAEFwcUHQ1LTCAUcNACABIAIQIiEBIABCADcDCCAAQQA2AgQgACABNgIADAELIARBGGogASACEC0iAxADBEAgACADEBoMAQsgAwRAIABBuH8QGgwBCyACIAQoAjAiA2shAiABIANqIQMDQAJAIAAgAyACIARBCGoQLCIFEAMEfyAFBSACIAVBA2oiBU8NAUG4fwsQGgwCCyAGQQFqIQYgAiAFayECIAMgBWohAyAEKAIMRQ0ACyAEKAI4BEAgAkEDTQRAIABBuH8QGgwCCyADQQRqIQMLIAQoAighAiAEKQMYIQcgAEEANgIEIAAgAyABazYCACAAIAIgBmytIAcgB0J/URs3AwgLIARBQGskAAslAQF/IwBBEGsiAiQAIAIgACABEFEgAigCACEAIAJBEGokACAAC30BBH8jAEGQBGsiBCQAIARB/wE2AggCQCAEQRBqIARBCGogBEEMaiABIAIQFSIGEAMEQCAGIQUMAQtBVCEFIAQoAgwiB0EGSw0AIAMgBEEQaiAEKAIIIAcQQSIFEAMNACAAIAEgBmogAiAGayADEDwhBQsgBEGQBGokACAFC4cBAgJ/An5BABAWIQMCQANAIAEgA08EQAJAIAAoAABBcHFB0NS0wgFGBEAgACABECIiAhADRQ0BQn4PCyAAIAEQVSIEQn1WDQMgBCAFfCIFIARUIQJCfiEEIAINAyAAIAEQUiICEAMNAwsgASACayEBIAAgAmohAAwBCwtCfiAFIAEbIQQLIAQLPwIBfwF+IwBBMGsiAiQAAn5CfiACQQhqIAAgARAtDQAaQgAgAigCHEEBRg0AGiACKQMICyEDIAJBMGokACADC40BAQJ/IwBBMGsiASQAAkAgAEUNACAAKAKI4gENACABIABB/OEBaigCADYCKCABIAApAvThATcDICAAEDAgACgCqOIBIQIgASABKAIoNgIYIAEgASkDIDcDECACIAFBEGoQGyAAQQA2AqjiASABIAEoAig2AgggASABKQMgNwMAIAAgARAbCyABQTBqJAALKgECfyMAQRBrIgAkACAAQQA2AgggAEIANwMAIAAQWCEBIABBEGokACABC4cBAQN/IwBBEGsiAiQAAkAgACgCAEUgACgCBEVzDQAgAiAAKAIINgIIIAIgACkCADcDAAJ/IAIoAgAiAQRAIAIoAghBqOMJIAERBQAMAQtBqOMJECgLIgFFDQAgASAAKQIANwL04QEgAUH84QFqIAAoAgg2AgAgARBZIAEhAwsgAkEQaiQAIAMLywEBAn8jAEEgayIBJAAgAEGBgIDAADYCtOIBIABBADYCiOIBIABBADYC7OEBIABCADcDkOIBIABBADYCpOMJIABBADYC3OIBIABCADcCzOIBIABBADYCvOIBIABBADYCxOABIABCADcCnOIBIABBpOIBakIANwIAIABBrOIBakEANgIAIAFCADcCECABQgA3AhggASABKQMYNwMIIAEgASkDEDcDACABKAIIQQh2QQFxIQIgAEEANgLg4gEgACACNgKM4gEgAUEgaiQAC3YBA38jAEEwayIBJAAgAARAIAEgAEHE0AFqIgIoAgA2AiggASAAKQK80AE3AyAgACgCACEDIAEgAigCADYCGCABIAApArzQATcDECADIAFBEGoQGyABIAEoAig2AgggASABKQMgNwMAIAAgARAbCyABQTBqJAALzAEBAX8gACABKAK00AE2ApjiASAAIAEoAgQiAjYCwOABIAAgAjYCvOABIAAgAiABKAIIaiICNgK44AEgACACNgLE4AEgASgCuNABBEAgAEKBgICAEDcDiOEBIAAgAUGk0ABqNgIMIAAgAUGUIGo2AgggACABQZwwajYCBCAAIAFBDGo2AgAgAEGs0AFqIAFBqNABaigCADYCACAAQbDQAWogAUGs0AFqKAIANgIAIABBtNABaiABQbDQAWooAgA2AgAPCyAAQgA3A4jhAQs7ACACRQRAQbp/DwsgBEUEQEFsDwsgAiAEEGAEQCAAIAEgAiADIAQgBRBhDwsgACABIAIgAyAEIAUQZQtGAQF/IwBBEGsiBSQAIAVBCGogBBAOAn8gBS0ACQRAIAAgASACIAMgBBAyDAELIAAgASACIAMgBBA0CyEAIAVBEGokACAACzQAIAAgAyAEIAUQNiIFEAMEQCAFDwsgBSAESQR/IAEgAiADIAVqIAQgBWsgABA1BUG4fwsLRgEBfyMAQRBrIgUkACAFQQhqIAQQDgJ/IAUtAAkEQCAAIAEgAiADIAQQYgwBCyAAIAEgAiADIAQQNQshACAFQRBqJAAgAAtZAQF/QQ8hAiABIABJBEAgAUEE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",te={315:"Artist",258:"BitsPerSample",265:"CellLength",264:"CellWidth",320:"ColorMap",259:"Compression",33432:"Copyright",306:"DateTime",338:"ExtraSamples",266:"FillOrder",289:"FreeByteCounts",288:"FreeOffsets",291:"GrayResponseCurve",290:"GrayResponseUnit",316:"HostComputer",270:"ImageDescription",257:"ImageLength",256:"ImageWidth",271:"Make",281:"MaxSampleValue",280:"MinSampleValue",272:"Model",254:"NewSubfileType",274:"Orientation",262:"PhotometricInterpretation",284:"PlanarConfiguration",296:"ResolutionUnit",278:"RowsPerStrip",277:"SamplesPerPixel",305:"Software",279:"StripByteCounts",273:"StripOffsets",255:"SubfileType",263:"Threshholding",282:"XResolution",283:"YResolution",326:"BadFaxLines",327:"CleanFaxData",343:"ClipPath",328:"ConsecutiveBadFaxLines",433:"Decode",434:"DefaultImageColor",269:"DocumentName",336:"DotRange",321:"HalftoneHints",346:"Indexed",347:"JPEGTables",285:"PageName",297:"PageNumber",317:"Predictor",319:"PrimaryChromaticities",532:"ReferenceBlackWhite",339:"SampleFormat",340:"SMinSampleValue",341:"SMaxSampleValue",559:"StripRowCounts",330:"SubIFDs",292:"T4Options",293:"T6Options",325:"TileByteCounts",323:"TileLength",324:"TileOffsets",322:"TileWidth",301:"TransferFunction",318:"WhitePoint",344:"XClipPathUnits",286:"XPosition",529:"YCbCrCoefficients",531:"YCbCrPositioning",530:"YCbCrSubSampling",345:"YClipPathUnits",287:"YPosition",37378:"ApertureValue",40961:"ColorSpace",36868:"DateTimeDigitized",36867:"DateTimeOriginal",34665:"Exif IFD",36864:"ExifVersion",33434:"ExposureTime",41728:"FileSource",37385:"Flash",40960:"FlashpixVersion",33437:"FNumber",42016:"ImageUniqueID",37384:"LightSource",37500:"MakerNote",37377:"ShutterSpeedValue",37510:"UserComment",33723:"IPTC",34675:"ICC Profile",700:"XMP",42112:"GDAL_METADATA",42113:"GDAL_NODATA",34377:"Photoshop",33550:"ModelPixelScale",33922:"ModelTiepoint",34264:"ModelTransformation",34735:"GeoKeyDirectory",34736:"GeoDoubleParams",34737:"GeoAsciiParams",50674:"LercParameters"},ie={};for(var re in te)te.hasOwnProperty(re)&&(ie[te[re]]=parseInt(re,10));ie.BitsPerSample,ie.ExtraSamples,ie.SampleFormat,ie.StripByteCounts,ie.StripOffsets,ie.StripRowCounts,ie.TileByteCounts,ie.TileOffsets,ie.SubIFDs;var Ie={1:"BYTE",2:"ASCII",3:"SHORT",4:"LONG",5:"RATIONAL",6:"SBYTE",7:"UNDEFINED",8:"SSHORT",9:"SLONG",10:"SRATIONAL",11:"FLOAT",12:"DOUBLE",13:"IFD",16:"LONG8",17:"SLONG8",18:"IFD8"},ge={};for(var ne in Ie)Ie.hasOwnProperty(ne)&&(ge[Ie[ne]]=parseInt(ne,10));var ae=1,oe=0,Be=1,Ce=2,Qe={1024:"GTModelTypeGeoKey",1025:"GTRasterTypeGeoKey",1026:"GTCitationGeoKey",2048:"GeographicTypeGeoKey",2049:"GeogCitationGeoKey",2050:"GeogGeodeticDatumGeoKey",2051:"GeogPrimeMeridianGeoKey",2052:"GeogLinearUnitsGeoKey",2053:"GeogLinearUnitSizeGeoKey",2054:"GeogAngularUnitsGeoKey",2055:"GeogAngularUnitSizeGeoKey",2056:"GeogEllipsoidGeoKey",2057:"GeogSemiMajorAxisGeoKey",2058:"GeogSemiMinorAxisGeoKey",2059:"GeogInvFlatteningGeoKey",2060:"GeogAzimuthUnitsGeoKey",2061:"GeogPrimeMeridianLongGeoKey",2062:"GeogTOWGS84GeoKey",3072:"ProjectedCSTypeGeoKey",3073:"PCSCitationGeoKey",3074:"ProjectionGeoKey",3075:"ProjCoordTransGeoKey",3076:"ProjLinearUnitsGeoKey",3077:"ProjLinearUnitSizeGeoKey",3078:"ProjStdParallel1GeoKey",3079:"ProjStdParallel2GeoKey",3080:"ProjNatOriginLongGeoKey",3081:"ProjNatOriginLatGeoKey",3082:"ProjFalseEastingGeoKey",3083:"ProjFalseNorthingGeoKey",3084:"ProjFalseOriginLongGeoKey",3085:"ProjFalseOriginLatGeoKey",3086:"ProjFalseOriginEastingGeoKey",3087:"ProjFalseOriginNorthingGeoKey",3088:"ProjCenterLongGeoKey",3089:"ProjCenterLatGeoKey",3090:"ProjCenterEastingGeoKey",3091:"ProjCenterNorthingGeoKey",3092:"ProjScaleAtNatOriginGeoKey",3093:"ProjScaleAtCenterGeoKey",3094:"ProjAzimuthAngleGeoKey",3095:"ProjStraightVertPoleLongGeoKey",3096:"ProjRectifiedGridAngleGeoKey",4096:"VerticalCSTypeGeoKey",4097:"VerticalCitationGeoKey",4098:"VerticalDatumGeoKey",4099:"VerticalUnitsGeoKey"},Ee={};for(var se in Qe)Qe.hasOwnProperty(se)&&(Ee[Qe[se]]=parseInt(se,10));function fe(A){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=c(A);if(e){var r=c(this).constructor;t=Reflect.construct(i,arguments,r)}else t=i.apply(this,arguments);return f(this,t)}}var ce=new Ae,he=function(A){s(t,w);var e=fe(t);function t(A){var i;return B(this,t),(i=e.call(this)).planarConfiguration=void 0!==A.PlanarConfiguration?A.PlanarConfiguration:1,i.samplesPerPixel=void 0!==A.SamplesPerPixel?A.SamplesPerPixel:1,i.addCompression=A.LercParameters[ae],i}return Q(t,[{key:"decodeBlock",value:function(A){switch(this.addCompression){case oe:break;case Be:A=YA(new Uint8Array(A)).buffer;break;case Ce:A=ce.decode(new Uint8Array(A)).buffer;break;default:throw new Error("Unsupported LERC additional compression method identifier: ".concat(this.addCompression))}return zA.decode(A,{returnPixelInterleavedDims:1===this.planarConfiguration}).pixels[0].buffer}}]),t}(),le=Object.freeze({__proto__:null,zstd:ce,default:he});function ue(A){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=c(A);if(e){var r=c(this).constructor;t=Reflect.construct(i,arguments,r)}else t=i.apply(this,arguments);return f(this,t)}}var we=function(A){s(I,w);var t,i=ue(I);function I(){var A;if(B(this,I),A=i.call(this),"undefined"==typeof createImageBitmap)throw new Error("Cannot decode WebImage as `createImageBitmap` is not available");if("undefined"==typeof document&&"undefined"==typeof OffscreenCanvas)throw new Error("Cannot decode WebImage as neither `document` nor `OffscreenCanvas` is not available");return A}return Q(I,[{key:"decode",value:(t=e(r.mark((function A(e,t){var i,I,g,n;return r.wrap((function(A){for(;;)switch(A.prev=A.next){case 0:return i=new Blob([t]),A.next=3,createImageBitmap(i);case 3:return I=A.sent,"undefined"!=typeof document?((g=document.createElement("canvas")).width=I.width,g.height=I.height):g=new OffscreenCanvas(I.width,I.height),(n=g.getContext("2d")).drawImage(I,0,0),A.abrupt("return",n.getImageData(0,0,I.width,I.height).data.buffer);case 8:case"end":return A.stop()}}),A)}))),function(A,e){return t.apply(this,arguments)})}]),I}(),de=Object.freeze({__proto__:null,default:we});';return new dke(typeof Buffer!="undefined"?"data:application/javascript;base64,"+Buffer.from(t,"binary").toString("base64"):URL.createObjectURL(new Blob([t],{type:"application/javascript"})))}const vke=Object.freeze(Object.defineProperty({__proto__:null,create:Ake},Symbol.toStringTag,{value:"Module"}));tt.VDraw=$g,tt.VEcharts=sA,tt.VGDRoute=vA,tt.VGraphic=Hg,tt.VHeatmap=jg,tt.VImage=zg,tt.VMap=xg,tt.VMeasure=Wg,tt.VOverlay=Dg,tt.VOverview=Rg,tt.VPath=hA,tt.VRoute=qg,tt.VSuperCluster=fA,tt.VTile=Ou,tt.VTrack=lA,tt.VTraffic=gA,tt.VVector=Qg,tt.VWfs=pA,tt.default=wDe,tt.utils=Ahe,Object.defineProperties(tt,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
782
|
+
***************************************************************************** */var ET=function(t,e){return ET=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var r in n)n.hasOwnProperty(r)&&(i[r]=n[r])},ET(t,e)};function YTe(t,e){ET(t,e);function i(){this.constructor=t}t.prototype=e===null?Object.create(e):(i.prototype=e.prototype,new i)}var sh=function(t){var e=typeof t;return t!==null&&(e==="object"||e==="function")},m$=function(t,e){return Object.keys(e).forEach(function(i){sh(e[i])&&sh(t[i])?m$(t[i],e[i]):t[i]=e[i]}),t},ST=function(t,e){for(var i=arguments,n=[],r=2;r<arguments.length;r++)n[r-2]=i[r];return function(){for(var a=arguments,s=[],o=0;o<arguments.length;o++)s[o]=a[o];return t.apply(e,n.concat(Array.prototype.slice.call(s)))}},y$=function(t,e){for(var i=0,n,r=t.length;i<r;i++)if(t[i].index===e.index){n=i;break}return n===void 0?t.push(e):t[n]=e,t},_$=function(){function t(e){return e?(e^Math.random()*16>>e/4).toString(16):([1e7]+-[1e3]+-4e3+-8e3+-1e11).replace(/[018]/g,t)}return t()};function x$(t,e){t.forEach(function(i){!e[i]||(e[i]=e[i].bind(e))})}function bT(t){return t&&t.parentNode?t.parentNode.removeChild(t):null}function J0(t,e){var i=new MouseEvent(t,{bubbles:!0,cancelable:!0,button:e.pointerEvent.button,buttons:e.pointerEvent.buttons,clientX:e.pointerEvent.clientX,clientY:e.pointerEvent.clientY,zrX:e.pointerEvent.offsetX,zrY:e.pointerEvent.offsetY,movementX:e.pointerEvent.movementX,movementY:e.pointerEvent.movementY,relatedTarget:e.pointerEvent.relatedTarget,screenX:e.pointerEvent.screenX,screenY:e.pointerEvent.screenY,view:window});return i.zrX=e.pointerEvent.offsetX,i.zrY=e.pointerEvent.offsetY,i.event=i,i}function ZTe(t,e){for(var i=t.split("."),n=e.split("."),r=0;r<3;r++){var a=Number(i[r]),s=Number(n[r]);if(a>s)return 1;if(s>a)return-1;if(!isNaN(a)&&isNaN(s))return 1;if(isNaN(a)&&!isNaN(s))return-1}return 0}var XTe=function(t){return!t.UTF8Encoding},I$=function(t,e,i){for(var n=[],r=[e[0],e[1]],a=r[0],s=r[1],o=0;o<t.length;o+=2){var l=t.charCodeAt(o)-64,h=t.charCodeAt(o+1)-64;l=l>>1^-(l&1),h=h>>1^-(h&1),l+=a,h+=s,a=l,s=h,n.push([l/i,h/i])}return n},KTe=function(t){if(XTe(t))return t;var e=t.UTF8Scale;e==null&&(e=1024);for(var i=t.features,n=0;n<i.length;n++)for(var r=i[n],a=r.geometry,s=[a.coordinates,a.encodeOffsets],o=s[0],l=s[1],h=0;h<o.length;h++){var u=o[h];if(a.type==="Polygon")o[h]=I$(u,l[h],e);else if(a.type==="MultiPolygon")for(var c=0;c<u.length;c++){var f=u[c];u[c]=I$(f,l[h][c],e)}}return t.UTF8Encoding=!1,t};function JTe(t){var e=KTe(t),i=ah.util.map(ah.util.filter(e.features,function(n){return n.geometry&&n.properties&&n.geometry.coordinates.length>0}),function(n){var r=n.properties,a=n.geometry,s=a.coordinates,o=[];return a.type==="Polygon"&&o.push(s[0]),a.type==="MultiPolygon"&&ah.util.each(s,function(l){l[0]&&o.push(l[0])}),{properties:r,type:"Feature",geometry:{type:"Polygon",coordinates:o}}});return{type:"FeatureCollection",crs:{},features:i}}var eRe=function(t,e,i){return e.center=i.dataToPoint(e.coordinates),e},tRe=function(t,e,i){return sh(t.grid)&&!Array.isArray(t.grid)||Array.isArray(t.grid)&&(t.grid=t.grid.map(function(n,r){var a=i.dataToPoint(t.series[r].coordinates);return n.left=a[0]-parseFloat(n.width)/2,n.top=a[1]-parseFloat(n.height)/2,n})),e},iRe=function(t,e,i){return sh(t.grid)&&!Array.isArray(t.grid)||Array.isArray(t.grid)&&(t.grid=t.grid.map(function(n,r){var a=i.dataToPoint(t.series[r].coordinates);return n.left=a[0]-parseFloat(n.width)/2,n.top=a[1]-parseFloat(n.height)/2,n})),e},nRe=Object.freeze({pie:eRe,bar:tRe,line:iRe}),rRe={forcedRerender:!1,forcedPrecomposeRerender:!1,hideOnZooming:!1,hideOnMoving:!1,hideOnRotating:!1,convertTypes:["pie","line","bar"],insertFirst:!1,stopEvent:!1,polyfillEvents:ZTe(FR,"6.1.1")<=0},aRe=function(t){YTe(e,t);function e(i,n,r){var a=this,s=Object.assign(rRe,n);return a=t.call(this,s)||this,a._options=s,a._chartOptions=i,a.set("chartOptions",i),a.$chart=null,a.$container=void 0,a._isRegistered=!1,a._initEvent=!1,a._incremental=[],a._coordinateSystem=null,a.coordinateSystemId="",a.prevVisibleState="",x$(["redraw","onResize","onZoomEnd","onCenterChange","onDragRotateEnd","onMoveStart","onMoveEnd","mouseDown","mouseUp","onClick","mouseMove"],a),r&&a.setMap(r),a}return e.prototype.appendTo=function(i,n){n===void 0&&(n=!1),this.setMap(i,n)},e.prototype.getMap=function(){return this._map},e.prototype.setMap=function(i,n){var r=this;if(n===void 0&&(n=!1),i&&(n||i instanceof mo))this._map=i,this._map.once("postrender",function(){r.handleMapChanged()}),this._map.renderSync();else throw new Error("not ol map object")},e.prototype.getChartOptions=function(){return this.get("chartOptions")},e.prototype.setChartOptions=function(i){return i===void 0&&(i={}),this._chartOptions=i,this.set("chartOptions",i),this.clearAndRedraw(),this},e.prototype.appendData=function(i,n){return n===void 0&&(n=!0),i&&(n&&(this._incremental=y$(this._incremental,{index:this._incremental.length,data:i.data,seriesIndex:i.seriesIndex})),this.$chart.appendData({data:i.data.copyWithin(),seriesIndex:i.seriesIndex})),this},e.prototype.clear=function(i){i||(this._incremental=[]),this.$chart&&this.$chart.clear()},e.prototype.remove=function(){this.clear(),this.$chart&&this.$chart.dispose(),this._initEvent&&this.$container&&(this.$container&&bT(this.$container),this.unBindEvent()),delete this.$chart,delete this._map},e.prototype.show=function(){this.setVisible(!0)},e.prototype.innerShow=function(){this.$container&&(this.$container.style.display=this.prevVisibleState,this.prevVisibleState="")},e.prototype.hide=function(){this.setVisible(!1)},e.prototype.innerHide=function(){this.$container&&(this.prevVisibleState=this.$container.style.display,this.$container.style.display="none")},e.prototype.isVisible=function(){return this.$container&&this.$container.style.display!=="none"},e.prototype.showLoading=function(){this.$chart&&this.$chart.showLoading()},e.prototype.hideLoading=function(){this.$chart&&this.$chart.hideLoading()},e.prototype.setZIndex=function(i){this.$container&&(typeof i=="number"&&(i=String(i)),this.$container.style.zIndex=i)},e.prototype.getZIndex=function(){return this.$container&&this.$container.style.zIndex},e.prototype.setVisible=function(i){i?(this.$container&&(this.$container.style.display=""),this._chartOptions=this.getChartOptions(),this.clearAndRedraw()):(this.$container&&(this.$container.style.display="none"),this.clear(!0),this._chartOptions={},this.clearAndRedraw())},e.prototype.render=function(){!this.$chart&&this.$container?(this.$chart=ah.init(this.$container),this._chartOptions&&(this.registerMap(),this.$chart.setOption(this.convertData(this._chartOptions),!1)),this.dispatchEvent({type:"load",source:this,value:this.$chart})):this.isVisible()&&this.redraw()},e.prototype.redraw=function(){this.clearAndRedraw()},e.prototype.updateViewSize=function(i){!this.$container||(this.$container.style.width=i[0]+"px",this.$container.style.height=i[1]+"px",this.$container.setAttribute("width",String(i[0])),this.$container.setAttribute("height",String(i[1])))},e.prototype.onResize=function(i){var n=this.getMap();if(n){var r=n.getSize();this.updateViewSize(r),this.clearAndRedraw(),i&&this.dispatchEvent({type:"change:size",source:this,value:r})}},e.prototype.onZoomEnd=function(){this._options.hideOnZooming&&this.innerShow();var i=this.getMap();i&&i.getView()&&(this.clearAndRedraw(),this.dispatchEvent({type:"zoomend",source:this,value:i.getView().getZoom()}))},e.prototype.onDragRotateEnd=function(){this._options.hideOnRotating&&this.innerShow();var i=this.getMap();i&&i.getView()&&(this.clearAndRedraw(),this.dispatchEvent({type:"change:rotation",source:this,value:i.getView().getRotation()}))},e.prototype.onMoveStart=function(){this._options.hideOnMoving&&this.innerHide();var i=this.getMap();i&&i.getView()&&this.dispatchEvent({type:"movestart",source:this,value:i.getView().getCenter()})},e.prototype.onMoveEnd=function(){this._options.hideOnMoving&&this.innerShow();var i=this.getMap();i&&i.getView()&&(this.clearAndRedraw(),this.dispatchEvent({type:"moveend",source:this,value:i.getView().getCenter()}))},e.prototype.onClick=function(i){this.$chart&&this.$chart.getZr().painter.getViewportRoot().dispatchEvent(J0("click",i))},e.prototype.mouseDown=function(i){this.$chart&&this.$chart.getZr().painter.getViewportRoot().dispatchEvent(J0("mousedown",i))},e.prototype.mouseUp=function(i){this.$chart&&this.$chart.getZr().painter.getViewportRoot().dispatchEvent(J0("mouseup",i))},e.prototype.mouseMove=function(i){if(this.$chart)for(var n=i.originalEvent.target;n;){if(n.className==="ol-overlaycontainer-stopevent"){this.$chart.getZr().painter.getViewportRoot().dispatchEvent(J0("mousemove",i));return}n=n.parentElement}},e.prototype.onCenterChange=function(){var i=this.getMap();i&&i.getView()&&(this.clearAndRedraw(),this.dispatchEvent({type:"change:center",source:this,value:i.getView().getCenter()}))},e.prototype.handleMapChanged=function(){var i=this.getMap();if(this._initEvent&&this.$container&&(this.$container&&bT(this.$container),this.unBindEvent()),this.$container||(this.createLayerContainer(),this.onResize(!1)),i){var n=this._options.stopEvent?i.getOverlayContainerStopEvent():i.getOverlayContainer();this._options.insertFirst?n.insertBefore(this.$container,n.childNodes[0]||null):n.appendChild(this.$container),this.render(),this.bindEvent(i)}},e.prototype.createLayerContainer=function(){this.$container=document.createElement("div"),this.$container.style.position="absolute",this.$container.style.top="0px",this.$container.style.left="0px",this.$container.style.right="0px",this.$container.style.bottom="0px",this.$container.style.pointerEvents="auto"},e.prototype.bindEvent=function(i){var n=i.getView();this._options.forcedPrecomposeRerender&&i.on("precompose",this.redraw),i.on("change:size",this.onResize),n.on("change:resolution",this.onZoomEnd),n.on("change:center",this.onCenterChange),n.on("change:rotation",this.onDragRotateEnd),i.on("movestart",this.onMoveStart),i.on("moveend",this.onMoveEnd),this._options.polyfillEvents&&(i.on("pointerdown",this.mouseDown),i.on("pointerup",this.mouseUp),i.on("pointermove",this.mouseMove),i.on("click",this.onClick)),this._initEvent=!0},e.prototype.unBindEvent=function(){var i=this.getMap();if(!!i){var n=i.getView();!n||(i.un("precompose",this.redraw),i.un("change:size",this.onResize),n.un("change:resolution",this.onZoomEnd),n.un("change:center",this.onCenterChange),n.un("change:rotation",this.onDragRotateEnd),i.un("movestart",this.onMoveStart),i.un("moveend",this.onMoveEnd),this._options.polyfillEvents&&(i.un("pointerdown",this.mouseDown),i.un("pointerup",this.mouseUp),i.un("pointermove",this.mouseMove),i.un("click",this.onClick)),this._initEvent=!1)}},e.prototype.clearAndRedraw=function(){if(!(!this.$chart||!this.isVisible())){if(this._options.forcedRerender&&this.$chart.clear(),this.$chart.resize(),this._chartOptions&&(this.registerMap(),this.$chart.setOption(this.convertData(this._chartOptions),!1),this._incremental&&this._incremental.length>0))for(var i=0;i<this._incremental.length;i++)this.appendData(this._incremental[i],!1);this.dispatchEvent({type:"redraw",source:this})}},e.prototype.registerMap=function(){if(this._isRegistered||(this.coordinateSystemId="openlayers_"+_$(),ah.registerCoordinateSystem(this.coordinateSystemId,this.getCoordinateSystem(this._options)),this._isRegistered=!0),this._chartOptions){var i=this._chartOptions.series;if(i&&sh(i)){var n=this._options.convertTypes;if(n)for(var r=i.length-1;r>=0;r--)n.indexOf(i[r].type)>-1||(i[r].coordinateSystem=this.coordinateSystemId),i[r].animation=!1}}},e.prototype.convertData=function(i){var n=i.series;if(n&&n.length>0){if(!this._coordinateSystem){var r=this.getCoordinateSystem(this._options);this._coordinateSystem=new r(this.getMap())}if(n&&sh(n)){var a=this._options.convertTypes;if(a)for(var s=n.length-1;s>=0;s--)a.indexOf(n[s].type)>-1&&n[s]&&n[s].hasOwnProperty("coordinates")&&(n[s]=nRe[n[s].type](i,n[s],this._coordinateSystem))}}return i},e.prototype.getCoordinateSystem=function(i){var n=this.getMap(),r=this.coordinateSystemId,a=function(s){this.map=s,this._mapOffset=[0,0],this.dimensions=["lng","lat"],this.projCode=a.getProjectionCode(this.map)};return a.dimensions=a.prototype.dimensions||["lng","lat"],a.prototype.getZoom=function(){return this.map.getView().getZoom()},a.prototype.setZoom=function(s){return this.map.getView().setZoom(s)},a.prototype.getViewRectAfterRoam=function(){return this.getViewRect().clone()},a.prototype.setMapOffset=function(s){this._mapOffset=s},a.prototype.dataToPoint=function(s){var o;if(s&&Array.isArray(s)&&s.length>0){o=s.map(function(f){var g=0;return typeof f=="string"?g=Number(f):g=f,g});var l=i&&i.source||"EPSG:4326",h=i&&i.destination||this.projCode,u=this.map.getPixelFromCoordinate(mr(o,l,h)),c=this._mapOffset;return[u[0]-c[0],u[1]-c[1]]}return[0,0]},a.prototype.pointToData=function(s){var o=this._mapOffset;return this.map.getCoordinateFromPixel([s[0]+o[0],s[1]+o[1]])},a.prototype.getViewRect=function(){var s=this.map.getSize();return new ah.graphic.BoundingRect(0,0,s[0],s[1])},a.prototype.getRoamTransform=function(){return ah.matrix.create()},a.prototype.prepareCustoms=function(){var s=this.getViewRect();return{coordSys:{type:r,x:s.x,y:s.y,width:s.width,height:s.height},api:{coord:ST(this.dataToPoint,this),size:ST(a.dataToCoordsSize,this)}}},a.create=function(s){s.eachSeries(function(o){o.get("coordinateSystem")===r&&(o.coordinateSystem=new a(n))})},a.getProjectionCode=function(s){var o="";return s?o=s.getView()&&s.getView().getProjection().getCode():o="EPSG:3857",o},a.dataToCoordsSize=function(s,o){var l=this;return o===void 0&&(o=[0,0]),[0,1].map(function(h){var u=o[h],c=[],f=[],g=s[h]/2;c[h]=u-g,f[h]=u+g,c[1-h]=o[1-h],f[1-h]=o[1-h];var d=l.dataToPoint(c)[h]-l.dataToPoint(f)[h];return Math.abs(d)},this)},a},e.prototype.dispatchEvent=function(i){return t.prototype.dispatchEvent.call(this,i)},e.prototype.set=function(i,n,r){return t.prototype.set.call(this,i,n,r)},e.prototype.get=function(i){return t.prototype.get.call(this,i)},e.prototype.unset=function(i,n){return t.prototype.unset.call(this,i,n)},e.prototype.on=function(i,n){return t.prototype.on.call(this,i,n)},e.prototype.un=function(i,n){return t.prototype.un.call(this,i,n)},e.formatGeoJSON=JTe,e.bind=ST,e.merge=m$,e.uuid=_$,e.bindAll=x$,e.arrayAdd=y$,e.removeNode=bT,e.isObject=sh,e}(Xn);const sRe={name:"v-echarts",extends:wr,inject:["VMap"],render(t,e){return null},props:{layerId:{type:String,default(){return`draw-layer-${$e()}`}},options:{type:Object}},data(){return{layer:null}},computed:{map(){return this.VMap.map},map3d(){return this.VMap.map3d}},watch:{visible:{handler(t){this.layer.setVisible(t)},immediate:!1},zIndex:{handler(t){this.layer.setZIndex(t)},immediate:!1},maxZoom:{handler(t){this.layer.setMaxZoom(t)},immediate:!1},minZoom:{handler(t){this.layer.setMinZoom(t)},immediate:!1},extent:{handler(t){this.layer.setExtent(t)},immediate:!1,deep:!0}},mounted(){this.init()},beforeDestroy(){this.map.removeLayer(this.layer),this.dispose()},methods:{init(){this.layer=new aRe(this.options),this.zIndex&&this.layer.setZIndex(this.zIndex),this.layer.appendTo(this.map)},dispose(){this.layer.remove()}}};let oRe,lRe;const C$={};var w$=Ji(sRe,oRe,lRe,!1,hRe,null,null,null);function hRe(t){for(let e in C$)this[e]=C$[e]}w$.options.__file="src/components/layers/echarts/index.vue";const sA=function(){return w$.exports}();sA.install=t=>{t.component(sA.name,sA)};function uRe(t,e){let i;return e.getLayers().forEach(n=>{n&&n.get("id")===t&&(i=n)}),i}const bR=class{constructor(e,i,n,r,a,s,o,l,h){!i||i.length<1||(this.id=h.id,this.changeCarRotate=h.changeCarRotate,this.centerAtCar=h.centerAtCar,this._moving=!0,this._ismove=!1,this._map=e,this._labelShow=s,this._timeContentClass=o,this._vacuate=r,this._wholePathInfo=i,this._timeOverlayList=[],r?(this._pathInfo=n,this._convertPaths(n)):(this._pathInfo=i,this._convertPaths(i)),this._vacuatePath=n,this._path=[],this._passPath=[],this._pointIndexDistance=20,this._tracePoints=[],this._tracePointsModePlay=a,this._traceTimedivDom=e.traceTimedivDom,this._tracePointsFromTime=[],this._traceEnd=!1,this.traceLayer=new ni({source:new yn,zIndex:99}),this.traceLayer.set("isTrack",!0),e.addLayer(this.traceLayer),this.tracePassLayer=new ni({source:new yn,zIndex:100}),this.tracePassLayer.set("isTrack",!0),e.addLayer(this.tracePassLayer),this.arrowsLayer=new ni({source:new yn,zIndex:101}),this.arrowsLayer.set("isTrack",!0),e.addLayer(this.arrowsLayer),this.carLayer=new ni({source:new yn,zIndex:102}),this.carLayer.set("isTrack",!0),e.addLayer(this.carLayer),this.traceNodes=[],this.traceLineList=[],this.carMarker=null,this._carInfoWin=null,this._pointIndex=0,this._traceIndex=0,this._speedUp=1,this._intervalTraceFlag=null,this._intervalTimeFlag=null,this._opts={carIcon:{src:"",scale:1},speed:0,defaultContent:"",startIcon:{src:"",scale:1},endIcon:{src:"",scale:1},passFlag:!0,showInfoWin:!1,arrowPixel:50,tracePlay:!1},this._setOptions(h),this._initFlag=1,this._showTracePoint=l)}};let wt=bR;Ye(wt,"track",bR),wt.prototype._setOptions=function(t){if(!!t)for(const e in t)Object.prototype.hasOwnProperty.call(t,e)&&(this._opts[e]=t[e])},wt.prototype.getSpeed=function(){return this._opts.speed},wt.prototype.getSpeedUp=function(){return this._speedUp},wt.prototype.getPaths=function(){return this._pathInfo},wt.prototype.getTraceIndex=function(){return this._pointIndex},wt.prototype.setTraceIndex=function(t){this._pointIndex=t;const e=this._path[t];this.carMarker.setPosition(e)},wt.prototype.getPercentnum=function(){const t=this._tracePoints,e=this.carMarker.getPosition();for(let i=0;i<t.length;i++)if(e.toString()===t[i].coordinate.toString())return parseFloat((i/t.length).toFixed(2))},wt.prototype.setPercentnum=function(t){const e=this._tracePoints,i=this._tracePointsFromTime,n=Math.round(e.length*t),r=e[n].coordinate;this.carMarker.setPosition(r);for(let a=0;a<i.length;a++){const s=i[a].temBreakPointsFromTime;for(let o=0;o<s.length;o++)s[o].coordinate.toString()===r.toString()&&(this._traceIndex=o,this._pointIndex=a)}},wt.prototype._showTimePopup=function(t){const e=this;e._traceTime=e._pathInfo[0].time,e._fromPause&&(e._traceTime=e._traceTimedivDom.innerText);const i=e._pathInfo[e._pathInfo.length-1].time,n=new Date(i).getTime();n>t.maxEndTime&&(t.maxEndTime=n),e._intervalTimeFlag=setInterval(function(){if(!e._traceEnd&&!e._fromPause&&!e._fromStop){if(e._traceTime=new Date(e._traceTime).getTime()+1e3*e._speedUp,t.maxEndTime<e._traceTime){e._traceEnd=!0,e._traceTimedivDom.innerText=i;return}e._traceTime%1e3===0&&(e._traceTime=gRe(new Date(e._traceTime)),e._traceTimedivDom.innerText=e._traceTime)}},1e3)},wt.prototype._setTraceTime=function(t){const e=this,i=e._tracePointsFromTime;if(e._traceTimedivDom.innerText=t,e._traceTime=t,e._opts.speed===0){let n=Number.MAX_VALUE;const r=new Date(e._traceTimedivDom.innerText).getTime();if(r>0||!isNaN(r))for(let a=0;a<i.length;a++){const s=i[a].temBreakPointsFromTime;for(let o=0;o<s.length;o++)Math.abs(r-s[o].thisTimeSecond)<n&&(n=Math.abs(r-s[o].thisTimeSecond),e._pointIndex=a,e._traceIndex=o)}e._fromStop&&(e._pointIndex=0,e._traceIndex=0),(e._traceTimedivDom.innerText===""||e._fromPause||e._fromStop)&&e._showTimePopup(e._map)}},wt.prototype._convertPaths=function(t){this._path=[];for(let e=0;e<t.length;e++)this._path.push([t[e].longitude,t[e].latitude])},wt.prototype.start=function(){this._moving=!0;const t=this,e=t.getTracePoints(1);t._tracePoints=e.breakPoints,t._tracePointsFromTime=e.breakPointsFromTime,!(t._path.length<1)&&(t._tracePointsModePlay==="skip"?t.tracePointsPlay():t._tracePointsModePlay==="animation"&&t.timePointsPlay())},wt.prototype.tracePointsPlay=function(){const t=this,e=t._pathInfo,i=t._passPath;if(i.length===0&&t.tracePassLayer.getSource().clear(),!t._ismove)t._addMarker(),t._addInfoWin(),t._intervalTraceFlag=setInterval(function(){if(t._fromPause||t._fromStop||t._pointIndex>=e.length)return;if(t._pointIndex+=t._speedUp,t._pointIndex>=e.length&&(t._pointIndex=e.length-1),t.carMarker.setPosition([e[t._pointIndex].longitude,e[t._pointIndex].latitude]),t._pointIndex===1&&i.push([e[t._pointIndex-1].longitude,e[t._pointIndex-1].latitude]),i.push([e[t._pointIndex].longitude,e[t._pointIndex].latitude]),t._opts.passFlag){const s=new Bi({geometry:new Yt([[e[t._pointIndex-1].longitude,e[t._pointIndex-1].latitude],[e[t._pointIndex].longitude,e[t._pointIndex].latitude]])});s.setStyle(new ut({stroke:new Lt({color:t._opts.passlineColor,width:5})})),t.tracePassLayer.getSource().addFeature(s)}t._opts.showInfoWin&&(t._carInfoWin.getElement().innerText=e[t._pointIndex].info);const n=t._map.getView().calculateExtent(),r=t.carMarker.getPosition();!Qn(n,r)&&t.centerAtCar&&t._map.getView().animate({center:r})},1e3);else if(t._fromPause){if(!t._fromStop){if(t._pointIndex++,t.carMarker.setPosition([e[t._pointIndex].longitude,e[t._pointIndex].latitude]),t._opts.passFlag){const n=new Bi({geometry:new Yt([[e[t._pointIndex-1].longitude,e[t._pointIndex-1].latitude],[e[t._pointIndex].longitude,e[t._pointIndex].latitude]])});n.setStyle(new ut({stroke:new Lt({color:t._opts.passlineColor,width:5})})),t.tracePassLayer.getSource().addFeature(n)}t._ismove=!1}}else return;this._fromPause=!1,this._fromStop=!1},wt.prototype.timePointsPlay=function(){const t=this,e=t._tracePoints,i=t._tracePointsFromTime,n=t._passPath;if(n.length===0&&t.tracePassLayer.getSource().clear(),t._opts.speed===0){let r=Number.MAX_VALUE;const a=new Date(t._traceTimedivDom.innerText).getTime();if(a>0||!isNaN(a))for(let s=0;s<i.length;s++){const o=i[s].temBreakPointsFromTime;for(let l=0;l<o.length;l++)Math.abs(a-o[l].thisTimeSecond)<r&&(r=Math.abs(a-o[l].thisTimeSecond),t._pointIndex=s,t._traceIndex=l)}t._fromStop&&(t._pointIndex=0,t._traceIndex=0),(t._traceTimedivDom.innerText===""||t._fromPause||t._fromStop)&&t._showTimePopup(t._map)}if(!t._ismove)t._addMarker(),t._addInfoWin(),t._intervalTraceFlag=setInterval(function(){if(t._fromPause||t._fromStop)return;const r=t._opts.speed*1e3/3600;if(t._pointIndex>=i.length)return;const a=i[t._pointIndex].temBreakPointsFromTime,s=i[t._pointIndex].differenceTime,o=i[t._pointIndex].length;let l=0;if(r===0?l=(o/s/50).toFixed(2)*10*t._speedUp:l=(r/50).toFixed(2)*10,t._fromPause||t._fromStop||t._pointIndex>=e.length-1||t._pointIndex>=i.length)return;if(t._traceIndex+=l,t._traceIndex=Math.round(t._traceIndex),t._traceIndex>=a.length){t._traceIndex=a.length-1,t._pointIndex++;const f=a.slice(0,t._traceIndex);for(let v=0;v<f.length;v++)n.push(f[v].coordinate);if(t._opts.passFlag){const v=new Bi({geometry:new Yt(n)});v.setStyle(new ut({stroke:new Lt({color:t._opts.passlineColor,width:5})})),t.tracePassLayer.getSource().addFeature(v)}const g=B$(a[t._traceIndex-1].coordinate,a[t._traceIndex].coordinate);t.carMarker.setPosition(a[t._traceIndex].coordinate),t.changeCarRotate&&t.carMarker.setRotateAngle(g);const d=t._troughPointIndex(a[t._traceIndex].coordinate);t._opts.showInfoWin&&(t._pathInfo[d]?(t._carInfoWin.getElement().innerText=t._pathInfo[d].info,t._carInfoWin.setPosition([t._pathInfo[d].longitude,t._pathInfo[d].latitude])):(t._carInfoWin.getElement().innerText="",t._carInfoWin.setPosition(void 0))),t._traceIndex=0}else{const f=a.slice(Math.round(t._traceIndex-l),t._traceIndex);for(let v=0;v<f.length;v++)n.push(f[v].coordinate);if(t._opts.passFlag){const v=new Bi({geometry:new Yt(n)});v.setStyle(new ut({stroke:new Lt({color:t._opts.passlineColor,width:5})})),t.tracePassLayer.getSource().addFeature(v)}t.carMarker.setPosition(a[t._traceIndex].coordinate);const g=B$(a[t._traceIndex-1].coordinate,a[t._traceIndex].coordinate);t.changeCarRotate&&t.carMarker.setRotateAngle(g);const d=t._troughPointIndex(e[t._pointIndex].coordinate);t._opts.showInfoWin&&(t._pathInfo[d]?(t._carInfoWin.getElement().innerText=t._pathInfo[d].info,t._carInfoWin.setPosition([t._pathInfo[d].longitude,t._pathInfo[d].latitude])):(t._carInfoWin.getElement().innerText="",t._carInfoWin.setPosition(void 0)))}const h=t._map.getView().calculateExtent(),u=t.carMarker.getPosition();!Qn(h,u)&&t.centerAtCar&&t._map.getView().animate({center:u})},200);else if(t._fromPause)t._fromStop||(t._traceIndex++,t._ismove=!1);else return;this._fromPause=!1,this._fromStop=!1},wt.prototype.setSpeed=function(t){this._opts.speed=t},wt.prototype.setSpeedUp=function(t){this._speedUp=t},wt.prototype.stop=function(){this._moving=!1,this._ismove=!1,this._pointIndex=0,this._traceIndex=0,this._fromStop=!0,this._passPath=[],this.tracePassLayer.getSource().clear(),this.carMarker.setPosition([this._pathInfo[0].longitude,this._pathInfo[0].latitude]),clearInterval(this._intervalTraceFlag),clearInterval(this._intervalTimeFlag)},wt.prototype.pause=function(){this._moving=!1,this._ismove=!0,this._fromPause=!0,clearInterval(this._intervalTimeFlag)},wt.prototype._addMarker=function(){const t=this;this.carMarker&&(this.carLayer.getSource().getFeatures().length>0&&this.carLayer.getSource().removeFeature(this.carMarker),clearInterval(this._intervalTraceFlag));const e=dRe(this._path[0],this._opts);this.carLayer.getSource().addFeature(e),this.carMarker=e,e.on=function(i,n){if(i==="move"){const r=setInterval(function(){if(!t._moving)return;const a=e.getPosition(),s=t._pathInfo;for(let o=0;o<s.length;o++)a.toString()===s[o].longitude+","+s[o].latitude&&(n(o),o===s.length-1&&clearInterval(r))},200)}}},wt.prototype._addInfoWin=function(){const t=this;if(!t._opts.showInfoWin)return;const e=t.carMarker.getPosition();if(t._carInfoWin){t._carInfoWin.setPosition(e);return}const i=document.createElement("div");i.className="carOverlay-class",i.innerText="";const n=new B1({element:document.getElementById(t._opts.overlay.element.toString()),position:e,stopEvent:!0,offset:[10,0]});t._carInfoWin=n,t._map.addOverlay(n)},wt.prototype.getArrowPoints=function(t){const e=this._pathInfo,i=[];for(let n=0;n<e.length-1;n++){const r=[e[n].longitude,e[n].latitude],a=[e[n+1].longitude,e[n+1].latitude],s=this._map.getPixelFromCoordinate(r),o=this._map.getPixelFromCoordinate(a),h=S$([s,o]),u=Math.floor(h/t),c=this.getRotationFromPixel(s,o);for(let f=1;f<u+1;f++){const g=[s[0]+t*f*Math.cos(c),s[1]+t*f*Math.sin(c)],d=this._map.getCoordinateFromPixel(g);i.push({rotate:c,coordinate:d})}}return i},wt.prototype.getTracePoints=function(t){const e=this._pathInfo,i=[],n=[];for(let r=0;r<e.length-1;r++){const a=[],s=[e[r].longitude,e[r].latitude],o=[e[r+1].longitude,e[r+1].latitude],l=e[r].time,h=e[r+1].time,u=new Date(l).getTime(),c=new Date(h).getTime(),f=c-u;if(f===0)continue;const g=av(s),d=av(o),A=S$([g,d]),p=Math.floor(A/t),m=this.getRotationFromPixel(g,d),y=this.getAngleFromPixel(g,d);for(let I=0;I<p+1;I++){const _=[g[0]+I*t*Math.cos(m),g[1]+I*t*Math.sin(m)],C=n_(_),x=u+Math.round(f/p)*I;i.push({rotate:y,coordinate:C,thisTimeSecond:x}),a.push({rotate:y,coordinate:C,thisTimeSecond:x})}A%t!==0&&(i.push({rotate:y,coordinate:o,thisTimeSecond:c}),a.push({rotate:y,coordinate:o,thisTimeSecond:c})),n.push({length:A,differenceTime:f/1e3,initTime:l,targetTime:h,temBreakPointsFromTime:a})}return{breakPoints:i,breakPointsFromTime:n}},wt.prototype.getRotationFromPixel=function(t,e){if(!t)return!1;t={x:t[0],y:t[1]},e={x:e[0],y:e[1]};const i=Math.abs(e.x-t.x),n=Math.abs(e.y-t.y),r=Math.sqrt(i*i+n*n),a=Math.asin(n/r);let s=0;return e.y<t.y&&e.x===t.x?s=Math.PI*2/3:e.y>t.y&&e.x===t.x?s=Math.PI/2:e.y===t.y&&e.x<t.x?s=Math.PI:e.y===t.y&&e.x>t.x?s=0:e.y>t.y&&e.x>t.x?s=a:e.y>t.y&&e.x<t.x?s=Math.PI-a:e.y<t.y&&e.x<t.x?s=Math.PI+a:e.y<t.y&&e.x>t.x&&(s=Math.PI*2-a),s},wt.prototype.getAngleFromPixel=function(t,e){t={x:t[0],y:t[1]},e={x:e[0],y:e[1]};const i=Math.abs(e.x-t.x),n=Math.abs(e.y-t.y),r=Math.sqrt(i*i+n*n),a=Math.round(Math.asin(n/r)/Math.PI*180);let s=0;return e.y<t.y&&e.x===t.x?s=270:e.y>t.y&&e.x===t.x?s=90:e.y===t.y&&e.x<t.x?s=180:e.y===t.y&&e.x>t.x?s=0:e.y>t.y&&e.x>t.x?s=360-a:e.y>t.y&&e.x<t.x?s=180+a:e.y<t.y&&e.x<t.x?s=180-a:e.y<t.y&&e.x>t.x&&(s=a),s},wt.prototype._troughPointIndex=function(t){const e=this._pointIndexDistance,i=this._path;for(let n=0;n<i.length;n++){const r=i[n];if(XA(r,t)<e)return n}return-1},wt.prototype._traceLineSytle=function(t){const e=this._opts,i=e.lineWidth?e.lineWidth:5,n=e.lineColor?e.lineColor:"blue";return{route:new ut({stroke:new Lt({width:i,color:n})}),node:new ut({image:new pn({radius:5,stroke:new Lt({color:"white",width:0}),fill:new It({color:"green"})})}),start:new ut({image:new Tn(this._opts.startIcon),text:new _r({font:"13px Microsoft Yahei",fill:new It({color:"#aa3300"}),stroke:new Lt({color:"#fff",width:2}),textAlign:"left"})}),end:new ut({image:new Tn(this._opts.endIcon),text:new _r({font:"13px Microsoft Yahei",fill:new It({color:"#aa3300"}),stroke:new Lt({color:"#fff",width:2}),textAlign:"left"})})}[t]},wt.prototype._initLinesAndMarkers=function(){const t=this,e=t._pathInfo,i=t._wholePathInfo;if(t._convertPaths(e),t._initFlag===1){t.traceNodes=[];for(const n in i){const r=Number(n),a=[i[r].longitude,i[r].latitude],s=i[r].id;if(r>0&&r<i.length-1){const o=new Bi({geometry:new ii(a)});o.set("id",s),o.set("number",parseInt(r)+1),t._showTracePoint&&t.traceNodes.push(o),o.set("type","node"),o.on("mouseover",function(l){t._map.getInfoWindowById(l.coordinate.toString())&&t._map.getInfoWindowById(l.coordinate.toString()).setPosition(l.coordinate)}),o.on("mouseout",function(l){t._map.getInfoWindowById(this.getPosition().toString())&&t._map.getInfoWindowById(this.getPosition().toString()).setPosition(void 0)})}else if(r===0){const o=new Bi({geometry:new ii([i[r].longitude,i[r].latitude])});o.set("type","start"),o.set("id",s),o.set("number",parseInt(r)+1),t.traceNodes.push(o)}else if(r===i.length-1){const o=new Bi({geometry:new ii([i[r].longitude,i[r].latitude+1e-8])});o.set("type","end"),o.set("id",s),o.set("number",parseInt(r)+1),t.traceNodes.push(o)}}for(let n=0;n<t._pathInfo.length-1;n++){const r=[t._pathInfo[n].longitude,t._pathInfo[n].latitude],a=[t._pathInfo[n+1].longitude,t._pathInfo[n+1].latitude],s=new Bi({geometry:new Yt([r,a])});s.setStyle(t._traceLineSytle("route")),t.traceLayer.getSource().addFeature(s),t.traceLineList.push(s)}for(let n=0;n<t.traceNodes.length;n++){const r=t.traceNodes[n],a=t._traceLineSytle(r.get("type"));if(r.setStyle(a),r.getGeometry().getType()==="Point")for(let s=0;s<e.length;s++)r.get("id")===e[s].id&&t.traceLayer.getSource().addFeature(r)}}},wt.prototype.setTraceLineColor=function(t){const e=this;e._opts.lineColor=t;const i=e.traceLineList;for(let n=0;n<i.length;n++)i[n].setStrokeColor(t);e.traceLayer.refresh()},wt.prototype.setTraceLineWidth=function(t){const e=this;e._opts.lineWidth=t;const i=e.traceLineList;for(let n=0;n<i.length;n++)i[n].setStrokeWeight(t);e.traceLayer.refresh()},wt.prototype._creatTimeOverlays=function(){const t=this,e=t._wholePathInfo,i=t._vacuatePath;if(t._timeOverlayList=[],t._labelShow){const n=[];for(let r=0;r<e.length;r++)for(let a=0;a<i.length;a++)if(i[a].longitude===e[r].longitude&&i[a].latitude===e[r].latitude){const s=[e[r].longitude,e[r].latitude];n.push({position:s,text:e[r].time})}typeof t.textLayer=="undefined"?(t.textLayer=ARe(t._map,n,10),t.textLayer.set("id","lushuText"+new Date().getTime()),t._map.addLayer(t.textLayer)):typeof uRe(t.textLayer.get("id"),t._map)=="undefined"&&t._map.addLayer(t.textLayer)}},wt.prototype.createArrows=function(){const t=this,e=t.getArrowPoints(t._opts.arrowPixel);for(let i=0;i<e.length;i++){const n=e[i].coordinate,r=e[i].rotate,a=new Bi({geometry:new ii(n)});a.setStyle(new ut({image:new Tn({src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABfUlEQVQ4T3WTTSvFYRDFf8dLKIqytFckthTpJkQWlyhF2fgEVr6BheytpChEsqB08xbZWPgOJAs7ieRlNMzV//75P7vnmZkz58ycR2ZWD7QBF5KM1DGzTuBO0k065neZ2S3QBGwAU5I+iolmNgrsAI9An6SrNIgDnAE9EdgFJiS9+93MuoEToBx4AgYkXSZBHKAWOAS6IrAP5CW9BUge2AIqgJdg8guiSKoBDoDeDJBhwNlVBsiQpNPvGST0VgF7TjPeCsCIpNdo0g84O2fibx4r/AJEUjVwlJDjXbybU/eZjAGbMROXmC8BiKQ64BxoDyYLkuYTTCeB9WD/9B9AA3AMdGQAzALLAfCcluDF3r01itMS5oDFiP3MIUHNi90T7ko/XjyYGOIMsFJSXByimTVGQbFzegOuew0o+7PGKL4AmjM8MA2shua/RjIzX1suw8pucZfiUjOt/AC4BHfaeOoz+d63oziX9Zla3CzAkqTP9G8zM4/dS7r+7zt/Aaattn1kX8VgAAAAAElFTkSuQmCC",rotation:r,scale:.5})})),t.arrowsLayer.getSource().addFeature(a)}},wt.prototype.windowAddMouseWheel=function(){const t=this,e=function(i){i=i||window.event,i.wheelDelta?(i.wheelDelta>0&&t.arrowsLayer.getSource().clear(),i.wheelDelta<0&&t.arrowsLayer.getSource().clear()):i.detail&&(i.detail>0&&t.arrowsLayer.getSource().clear(),i.detail<0&&t.arrowsLayer.getSource().clear())};document.addEventListener&&document.addEventListener("DOMMouseScroll",e,!1),window.onmousewheel=document.onmousewheel=e},wt.prototype.dispose=function(){this._intervalTimeFlag&&(clearInterval(this._intervalTimeFlag),this._intervalTimeFlag=null),this._intervalTraceFlag&&(clearInterval(this._intervalTraceFlag),this._intervalTraceFlag=null);const e=this._map.getLayers().getArray().filter(i=>i.get("isTrack")&&i.get("isTrack")===!0);e&&e.length>0&&e.forEach(i=>{i.getSource().clear(),this._map.removeLayer(i)})};function BT(t,e,i,n,r){n==="distance"?E$(t,e,i,r):n==="track"&&cRe(t,e,i,r)}function E$(t,e,i,n){const r=[];e.forEach(function(s,o){r.push(s)});let a=!0;for(let s=0;s<r.length-1;s++)if(ey(t,r[s],r[s+1])<i&&r.length>=3){a=!1,s+1<r.length-1||s===0?r.splice(s+1,1):r.splice(s,1);break}a?n(e):E$(t,r,i,n)}function cRe(t,e,i,n){const r=e;r.forEach(function(o,l){o.id=l});const a=MT(t,r,[],0,r.length-1,i);a.push(r[0]),r.length>1&&a.push(r[r.length-1]);const s=a.sort(function(o,l){return o.id<l.id?-1:o.id>l.id?1:0});n(s)}const MT=function(t,e,i,n,r,a){if(n<r){let s=0,o=0;const l=e[n],h=e[r];for(let u=n+1;u<r;u++){const c=fRe(t,l,h,e[u]);c>s&&(s=c,o=u)}s>=a&&(i.push(e[o]),MT(t,e,i,n,o,a),MT(t,e,i,o,r,a))}return i},fRe=function(t,e,i,n){const r=Math.abs(ey(t,e,i)),a=Math.abs(ey(t,e,n)),s=Math.abs(ey(t,i,n)),o=(r+a+s)/2;return Math.sqrt(Math.abs(o*(o-r)*(o-a)*(o-s)))*2/r},ey=function(t,e,i){const n=e.latitude,r=i.latitude,a=e.longitude,s=i.longitude,o=t.getPixelFromCoordinate([a,n]),l=t.getPixelFromCoordinate([s,r]);return Math.sqrt(Math.pow(l[0]-o[0],2)+Math.pow(l[1]-o[1],2))};var S$=function(t){let e=0;for(let i=0,n=t.length-1;i<n;++i)t[i+1]&&(e+=Math.sqrt(Math.pow(t[i+1][0]-t[i][0],2)+Math.pow(t[i+1][1]-t[i][1],2)));return e};function gRe(t){let e=t.getHours(),i=t.getMinutes(),n=t.getSeconds();const r=t.getFullYear();let a=t.getMonth(),s=t.getDate();return e<10&&(e="0"+e),i<10&&(i="0"+i),n<10&&(n="0"+n),a=a+1,a<10&&(a="0"+a),s<10&&(s="0"+s),r+"-"+a+"-"+s+" "+e+":"+i+":"+n}function dRe(t,e){const i=new Bi({geometry:new ii(t)});return i.setStyle(new ut({image:new Tn(e.carIcon)})),i}function ARe(t,e,i){const n=[],r=new ni({source:new yn});return t.getView().getZoom()>=i&&b$(t,e,i,n,r),t.on("moveend",function(a){t.getView().getZoom()>=i?b$(t,e,i,n,r):r.getSource().clear()}),r}function b$(t,e,i,n,r){n=[],r.getSource().clear();for(let u=0;u<e.length;u++){const c=e[u],f=t.getPixelFromCoordinate(c.position);if(!Qn(t.getView().calculateExtent(),c.position))continue;const g=/[\u4e00-\u9fa5]/g,d=c.text.match(g)?c.text.match(g).length:0,v=c.text.length-d,A=d*15+v*8,p=f[0]+10,m=f[0]+A+20,y=f[1]-32,I=f[1]-12,_=[p,parseInt((y+I)/2)],C={x:p,y},x={x:m,y:I},w=f[0]-A-20,E=f[0]-10,S=f[1]-32,b=f[1]-12,B=[E,parseInt((S+b)/2)],M={x:w,y:S},R={x:E,y:b},T=f[0]-A-20,D=f[0]-10,P=f[1]+12,Q=f[1]+32,N=[D,parseInt((P+Q)/2)],O={x:T,y:P},L={x:D,y:Q},z=f[0]+10,k=f[0]+A+20,F=f[1]+12,U=f[1]+32,G=[z,parseInt((F+U)/2)],q={x:z,y:F},V={x:k,y:U},j=new oA(C,x),$=new oA(M,R),X=new oA(O,L),K=new oA(q,V);let J="rightTop",te=!0;for(let ne=0;ne<4;ne++){for(let se=0;se<n.length;se++){const ge=n[se];if(ne===0){if(te=ge.intersects(j),!te)break}else if(ne===1){if(te=ge.intersects($),!te)break}else if(ne===2){if(te=ge.intersects(X),!te)break}else if(ne===3&&(te=ge.intersects(K),!te))break}if(te){ne===0?J="rightTop":ne===1?J="leftTop":ne===2?J="leftBom":ne===3&&(J="rightBom");break}}var a,s,o,l,h;if(te)J==="rightTop"?(n.push(j),h=_,a=p,s=y,o=m,l=I):J==="leftTop"?(n.push($),h=B,a=w,s=S,o=E,l=b):J==="rightBom"?(n.push(K),h=G,a=z,s=F,o=k,l=U):J==="leftBom"&&(n.push(X),h=N,a=T,s=P,o=D,l=Q);else continue;const ee=t.getCoordinateFromPixel([a,s]),ae=t.getCoordinateFromPixel([o,s]),me=t.getCoordinateFromPixel([o,l]),le=t.getCoordinateFromPixel([a,l]),de=new Bi({geometry:new Kn([ee,ae,me,le])});r.getSource().addFeature(de),h=t.getCoordinateFromPixel(h);const _e=new Bi({geometry:new Yt([c.position,h])});r.getSource().addFeature(_e),r.setStyle(new ut({fill:new It({color:"rgb(26,58,91)"}),stroke:new Lt({color:"rgb(26,58,91)"}),text:new _r({font:"16px sans-serif",text:c.text,fill:new It({color:"#000"}),offsetX:0,offsetY:1})}))}}function oA(t,e){this.min=t,this.max=e}oA.prototype.intersects=function(t){const e=this.min,i=this.max,n=t.min,r=t.max;return r.x<=e.x||n.x>=i.x||r.y<=e.y||n.y>=i.y};function B$(t,e){const i=tu(t),n=tu(e);return ip(i,n)}const vRe=function(t){let{map:e,paths:i,id:n,opts:r,vacuate:a,smokeMode:s,tracePointsModePlay:o,vacuateDistance:l,labelShow:h,labelStyle:u,showTracePoint:c}=t;r.id=n||$e(),r.changeCarRotate=t.changeCarRotate,r.centerAtCar=t.centerAtCar;let f=i,g,d=e.getView().getZoom();return a?BT(e,i,l,s,function(v){f=v,g=new wt(e,i,f,a,o,h,u,c,r),g._initLinesAndMarkers(),h&&g._creatTimeOverlays(),g.createArrows()}):(g=new wt(e,i,f,a,o,h,u,c,r),g._initLinesAndMarkers(),h&&g._creatTimeOverlays(),g.createArrows()),g.setPaths=function(v){i=v,g.arrowsLayer.getSource().clear();for(let A=0;A<g._timeOverlayList.length;A++)e.removeOverlay(g._timeOverlayList[A]);g.traceLayer.getSource().clear(),g.tracePassLayer.getSource().clear(),g.stop(),d=e.getView().getZoom(),a?BT(e,i,l,s,function(A){f=A,g._pathInfo=f,g._vacuatePath=f,g._wholePathInfo=i,g._initFlag=1,g._initLinesAndMarkers(),h&&g._creatTimeOverlays(),g.createArrows()}):(g._pathInfo=i,g._vacuatePath=i,g._wholePathInfo=i,g._initFlag=1,g._initLinesAndMarkers(),h&&g._creatTimeOverlays(),g.createArrows())},g.clearPaths=function(){g._path=[],i=[],g.arrowsLayer.getSource().clear(),g.tracePassLayer.getSource().clear();for(let v=0;v<g._timeOverlayList.length;v++)e.removeOverlay(g._timeOverlayList[v]);g.traceLayer.getSource().clear(),this.carLayer.getFeatures().length>0&&this.carLayer.removeFeature(this.carMarker),typeof this.textLayer!="undefined"&&e.removeLayer(this.textLayer)},e.getView().on("change:resolution",function(){if(i.length!==0&&(d=e.getView().getZoom(),g.arrowsLayer.getSource().clear(),Math.round(d)===d))if(g._initFlag=2,g.createArrows(),a)BT(e,i,l,s,function(v){f=v;for(let A=0;A<g._timeOverlayList.length;A++)e.removeOverlay(g._timeOverlayList[A]);g._pathInfo=f,g._vacuatePath=f,g._wholePathInfo=i,g._initLinesAndMarkers(),h&&g._creatTimeOverlays(),g.arrowsLayer.getSource().clear(),g.createArrows()});else{for(let v=0;v<g._timeOverlayList.length;v++)e.removeOverlay(g._timeOverlayList[v]);g._pathInfo=f,g._vacuatePath=f,g._wholePathInfo=i,g._initLinesAndMarkers(),h&&g._creatTimeOverlays(),g.arrowsLayer.getSource().clear(),g.createArrows()}}),g},pRe={name:"v-track",render(t,e){return null},inject:["VMap"],props:{id:{type:String,default(){return`track-${$e()}`}},paths:{type:Array,default(){return[]}},tracePointsModePlay:{type:String,default:"animation"},smokeMode:{type:String,default:"distance"},vacuate:{type:Boolean,default:!1},vacuateDistance:{type:[Number,void 0],default:10},labelShow:{type:Boolean,default:!1},showTracePoint:{type:Boolean,default:!0},changeCarRotate:{type:Boolean,default:!1},centerAtCar:{type:Boolean,default:!1},options:{type:Object,default(){return{}}},autoPlay:{type:Boolean,default:!1},labelStyle:{type:String,default:"timeContentClass"}},data(){return{track:null}},computed:{map(){return this.VMap.map}},watch:{paths:{handler(t){this.init(t)},immediate:!1,deep:!0}},mounted(){this.init()},beforeDestroy(){this.track.dispose(),this.track=null},methods:{init(t){if(t&&t.length>0||this.paths&&this.paths.length>0){const e=He(Re({},this.$props),{map:this.map,paths:t||this.paths,opts:this.options});this.track=vRe(e),this.$emit("onLoad",this.track),this.autoPlay&&this.start()}},start(){this.track.start()},pause(){this.track.pause()},stop(){this.track.stop()},dispose(){this.track.dispose()}}};let mRe,yRe;const M$={};var T$=Ji(pRe,mRe,yRe,!1,_Re,null,null,null);function _Re(t){for(let e in M$)this[e]=M$[e]}T$.options.__file="src/components/track/index.vue";const lA=function(){return T$.exports}();lA.install=t=>{t.component(lA.name,lA)};var R$={exports:{}};(function(t){(function(){function e(o,l){var h=o.x-l.x,u=o.y-l.y;return h*h+u*u}function i(o,l,h){var u=l.x,c=l.y,f=h.x-u,g=h.y-c;if(f!==0||g!==0){var d=((o.x-u)*f+(o.y-c)*g)/(f*f+g*g);d>1?(u=h.x,c=h.y):d>0&&(u+=f*d,c+=g*d)}return f=o.x-u,g=o.y-c,f*f+g*g}function n(o,l){for(var h=o[0],u=[h],c,f=1,g=o.length;f<g;f++)c=o[f],e(c,h)>l&&(u.push(c),h=c);return h!==c&&u.push(c),u}function r(o,l,h,u,c){for(var f=u,g,d=l+1;d<h;d++){var v=i(o[d],o[l],o[h]);v>f&&(g=d,f=v)}f>u&&(g-l>1&&r(o,l,g,u,c),c.push(o[g]),h-g>1&&r(o,g,h,u,c))}function a(o,l){var h=o.length-1,u=[o[0]];return r(o,0,h,l,u),u.push(o[h]),u}function s(o,l,h){if(o.length<=2)return o;var u=l!==void 0?l*l:1;return o=h?o:n(o,u),o=a(o,u),o}t.exports=s,t.exports.default=s})()})(R$);const xRe=R$.exports;class ty{constructor(e,i){Ye(this,"min",{x:0,y:0});Ye(this,"max",{x:0,y:0});this.min=e,this.max=i}intersects(e){const i=this.min,n=this.max,r=e.min,a=e.max;return a.x<=i.x||r.x>=n.x||a.y<=i.y||r.y>=n.y}}class IRe extends ni{constructor(i){var a,s;const n=Object.assign({},i);delete n.map;super(n);Ye(this,"map",null);Ye(this,"pointsArr",[]);Ye(this,"zoom",1);Ye(this,"textBounds",[]);Ye(this,"styleOptions",{fillColor:"rgb(26,58,91)",strokeColor:"rgb(26,58,91)",textColor:"white",fontCss:"bolder 15px sans-serif",boxWidth:50});Ye(this,"textViewCom",[]);this.map=i.map?i.map:this.map,this.pointsArr=i.pointsArr?i.pointsArr:this.pointsArr,this.zoom=i.zoom?i.zoom:this.zoom,this.styleOptions=i.styleOptions?i.styleOptions:this.styleOptions,((a=this.map)==null?void 0:a.getView().getZoom())>=this.zoom&&this.drawText();const r=this;(s=this.map)==null||s.on("moveend",o=>{var l;((l=r.map)==null?void 0:l.getView().getZoom())>=r.zoom?(r.drawText(),r.keepVisible()):r.clear()})}getLayerStatesArray(i){}getLayersArray(i){}getSourceState(){}drawText(){var s;const i=this.styleOptions;this.getSource().clear();const r=document.createElement("canvas").getContext("2d");i.fontCss&&(r.font=i.fontCss);const a=[];(s=this.map)==null||s.once("postrender",()=>{this.pointsArr.forEach(o=>{var u,c,f,g,d,v,A;const l=av(o.position,"EPSG:3857"),h=(u=this.map)==null?void 0:u.getPixelFromCoordinate(l);if(Qn((c=this.map)==null?void 0:c.getView().calculateExtent(),l)){o.text=o.text||"";let p=i.boxWidth||Math.ceil(r.measureText(o.text).width);p+=30;const m=h[0]+10,y=h[0]+p,I=h[1]-40,_=h[1]-10,C=[m,Number(((I+_)/2).toFixed(0))],x={x:m,y:I},w={x:y,y:_},E=new ty(x,w),S=h[0]-p,b=h[0]-10,B=h[1]-40,M=h[1]-10,R=[b,Number(((B+M)/2).toFixed(0))],T={x:S,y:B},D={x:b,y:M},P=new ty(T,D),Q=h[0]-p,N=h[0]-10,O=h[1]+10,L=h[1]+40,z=[N,Number(((O+L)/2).toFixed(0))],k={x:Q,y:O},F={x:N,y:L},U=new ty(k,F),G=h[0]+10,q=h[0]+p,V=h[1]+10,j=h[1]+40,$=[G,Number(((V+j)/2).toFixed(0))],X={x:G,y:V},K={x:q,y:j},J=new ty(X,K),te={bound:E,minx:m,miny:I,maxx:y,maxy:_,polylineCenter:C},ee={bound:P,minx:S,miny:B,maxx:b,maxy:M,polylineCenter:R},ae={bound:U,minx:Q,miny:O,maxx:N,maxy:L,polylineCenter:z},me={bound:J,minx:G,miny:V,maxx:q,maxy:j,polylineCenter:$},le=new Map([["rightTopBounds",te],["leftTopBounds",ee],["leftBomBounds",ae],["rightBomBounds",me]]);let de=!0,_e=0,ne=0,se=0,ge=0,W=[0,0],Y="";for(const[Te,Be]of le){for(let Me=0;Me<this.textBounds.length&&(de=this.textBounds[Me].intersects(Be.bound),!!de);Me++);de&&(Y=Te)}if(!de)return;for(const[Te,Be]of le)Te===Y&&(this.textBounds.push(Be.bound),W=Be.polylineCenter,_e=Be.minx,ne=Be.miny,se=Be.maxx,ge=Be.maxy);const ie=mr((f=this.map)==null?void 0:f.getCoordinateFromPixel([_e,ne]),"EPSG:3857","EPSG:4326"),ue=mr((g=this.map)==null?void 0:g.getCoordinateFromPixel([se,ne]),"EPSG:3857","EPSG:4326"),he=mr((d=this.map)==null?void 0:d.getCoordinateFromPixel([se,ge]),"EPSG:3857","EPSG:4326"),ce=mr((v=this.map)==null?void 0:v.getCoordinateFromPixel([_e,ge]),"EPSG:3857","EPSG:4326"),fe=new Kn({path:[ie,ue,he,ce],strokeColor:i.strokeColor,fillColor:i.fillColor});fe.getStyle().setText(new Text({font:i.fontCss,fill:new It({color:i.textColor}),offsetY:.5,text:o.text})),this.addFeature(fe);const ye=mr((A=this.map)==null?void 0:A.getCoordinateFromPixel(W),"EPSG:3857","EPSG:4326"),xe=new Yt({path:[o.position,ye],strokeColor:i.strokeColor});this.addFeature(xe),a.push({textBack:fe,polyline:xe,text:o.text})}this.set("textComponent",a)})})}keepVisible(){var i;if(this.textViewCom=this.get("invisible"),this.textViewCom instanceof Array)for(let n=((i=this.textViewCom)==null?void 0:i.length)-1;n>=0;n--){const r=this.textViewCom[n];this.textVisibility(r.text,!1)}}textVisibility(i,n){var o,l,h,u,c;const r=this.getObjectByText(i);this.textViewCom=this.get("invisible");let a=!1,s=0;if(this.textViewCom instanceof Array)for(let f=((o=this.textViewCom)==null?void 0:o.length)-1;f>=0;f--){const g=this.textViewCom[f];i===g.text&&(a=!0,s=f)}if(r.length>0)for(let f=r.length-1;f>=0;f--){const g=r[f];if(!n)this.textViewCom instanceof Array?!a&&this.textViewCom.push(g):this.set("invisible",[g]),(l=g.textBack)==null||l.setVisible(n),(h=g.polyline)==null||h.setVisible(n);else if(this.textViewCom instanceof Array&&a){this.textViewCom.splice(s,1);const d=this.getObjectByText(g.text);for(let v=d.length-1;v>=0;v--)(u=d[v].textBack)==null||u.setVisible(n),(c=d[v].polyline)==null||c.setVisible(n)}}else n?a&&this.textViewCom.splice(s,1):this.textViewCom instanceof Array?!a&&this.textViewCom.push({text:i}):this.set("invisible",[{text:i}])}getObjectByText(i){const n=this.get("textComponent"),r=[];for(let a=(n==null?void 0:n.length)-1;a>=0;a--){const s=n[a];s.text===i&&r.push(s)}return r}}class CRe{constructor(e){Ye(this,"_operators");Ye(this,"_carIcon");Ye(this,"_direction");Ye(this,"_map");Ye(this,"_status");Ye(this,"_pathInfo");Ye(this,"_bubble");Ye(this,"_moving");Ye(this,"_tracePointsModePlay");Ye(this,"_lineLayer");Ye(this,"_movePath");Ye(this,"_originPath");Ye(this,"_revealLayer");Ye(this,"_showTracePoint");Ye(this,"_nodesLayer");Ye(this,"_moveNodes");Ye(this,"_timeStep");Ye(this,"_speed");Ye(this,"_speedUp");Ye(this,"_nowTime");Ye(this,"_moveIdx");Ye(this,"_animateLayer");Ye(this,"_animateLine");Ye(this,"_group");Ye(this,"_tracekEvent");Ye(this,"_simplifyEvent");Ye(this,"_eventType");Ye(this,"_animateStart");Ye(this,"_textLayer");Ye(this,"_moveListener");Ye(this,"_step");Ye(this,"_viewCode");Ye(this,"_defaultStyles");Ye(this,"_nodesCollection");Ye(this,"_nodeInfos");var f;e=e||{};const i=e.bubble!==void 0?e.bubble:!1,n=e.showTracePoint?e.showTracePoint:!1,r=e.tracePointsModePlay?e.tracePointsModePlay:"animation",a=e.mapObj!==void 0?e.mapObj:null,s=e.path!==void 0?e.path:[],o=e.options||{},l=Date.now();!e.path||e.path.length<1,this._operators={carIcon:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACsAAAAVCAYAAADfLRcdAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMDE0IDc5LjE1Njc5NywgMjAxNC8wOC8yMC0wOTo1MzowMiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTQgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkQ0RkExMTQ2Rjc4NzExRTQ4QkI3QTA2OTk3QzQ4M0IzIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkQ0RkExMTQ3Rjc4NzExRTQ4QkI3QTA2OTk3QzQ4M0IzIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RDRGQTExNDRGNzg3MTFFNDhCQjdBMDY5OTdDNDgzQjMiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6RDRGQTExNDVGNzg3MTFFNDhCQjdBMDY5OTdDNDgzQjMiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz62sMp6AAAFiklEQVR42tRXW2wUVRj+zpmZvc4uS2mhhQK21FLshoKGWkBMSAwQSVBf0QfiJciDLya+8KAx8RJfeJV440GJaDAmGGKUmAASI+GhDQ1a7t1Kb1tot7s7uzvX4z8zC+12bdHVkDjJn5md/c853/nO918GeEDXkfe2f5+9+KzxxeuQap2D/RPn5BO7Aowxns/n9Ju958Q8PjL5yIxz4+KZk86spRLG5Y1T/Zfbf31sz7HN/xqsuIo4THwgStgr8lBtDcwxwQxa0rKB4WkFBcOGpgNSwIFusYoJjv0ATOQYdm9lWBQX4Iz2I8iDxhsGMDSm4mx/FJ3LR/HWi4ASokEmmeYj4UG6K/Tock9jSjxRjG/PRCrADn4SHVi8ttTOGM0sHAguIRKyCSlgF4HsOPDxKY7T4zvQ3NqFYmYSsbp6BEKhe0Bt08LR41/CsSzse34fZEWBbdPGtCxKWhoxeQiNketIhHOYyEgYGAqgc/UU3n5VgbA5iBQyAccWYLKCYLOCnLmLNrhNJHte5h7Ys/ubIlsPjGp3F/3tViOefEVCOCJjSYKjqZ6jdTnwdI+Fp5IppCaAvmsKxiZlondGCYQLJ34S2Ngp0LMBqFMFHmmxUb+U4+DhNpz4WYIlhWgTAWKIAHGOyVQKR98dx45uYoXTKZGRA/S0BT1n+6cd74G8qNlRO76WmNXLHI/R8nXom7U4eqENJdNAUSczdJR0HW/s1HDwhavehMIDx2BbtChj4Ip7hvDeuyYp7pHSe9l//8yBNTh/MwhOALnrf/fu2GhWBnDms+IMWMk1eOM8IxVYsV2QMl9F+Wyg7tV3hTxZZdw5BHZLlzEjdJpEJn0FVeaZEvYtEPF/yyECMivm9+6hDdoOLJKKSTIxPLNh0USXLnN6XiCqluiQE9Ok5dXTfO5/wxN2lb9D7LYtz9ectjat1wioQSdhklmkTdN7NuguB6O4cInhdobPM9oNnAFg1UtSlUc2J+5FuEuw+yyIBTVUqBnsyiYNsUiUpOOza7msEmg3KCUKxOvDAvUJZ/4JBKUlnmdVYHXzL9KnEEioVs1gFbmIjofbEVdjPleOQ8zaHruCIIxO3C/du/nNgDz3tUWpIzAnATNKZ6SFKi3/7UuYXgA9vqkbBun/xuAgbo0OwyESbLKcJhauT+765FIFVuaiapi7e/CAv2hNpUchEhxkclliWcGa1lY82rXBA/Hdt8cxli5XgXnHc28vVWCDgWqhu+kpk5eRiNYG1rTCsOjohRtYrgQoZVmZKciyjKYlDejZOHyfyk+5kM67CllcZeWBvrlAGU2aL0Vq1uwfo1EPbIlqrmGY0F0z3WfK41oOHQ8tlA1cGFE6BFVUeaxcVj2IB4O4NqLWDPb8RZU2WyKAZZBkJQJsUoAVs5Po7lwoGxAeaR01Fp/aXAhWEf5d7Y4X/XPBnusLVOjdomZGzwvPzKJvRsH/bZXcGj8z/sPjEeSKBWJU98B6DNN9enwMmzflEJDn32hxiMOciJKWUovkXw43qrN7g53dWbx/pB/hsIS6ONBRz9DSBGxoc+u1QCot0HtNxshtmbojp6I3OHmaoWudg571lOpiDpKtDhoaOVqWljB+I0xlWYFpu5o1vPSlpdM49OYcRnkchdQUrHLBVBq2UOgpDu9Cwe+6Dsf765Jap9fPubRJ1MgEK7uuj04xfN6XBFOXUe9WBAuGPS3fY5vQ3kmPeRVq6YqVVG4l74Qc26Tw0NCcyCC54g4a4yZ+H4njythibGm5gndeo+ChVtM2yl0XrRmKUC1vYDD4Hmjmc6Ju1W5eUz+rUT9bmK+f/ZH62eycfrbsQRL1+9le6mebqZ/dT6xF3XMmm/KlyWNelvMbGPK3pfpieNvtyP/yS+GBXf/FN9ifAgwAIOzB+qcKmLcAAAAASUVORK5CYII=",speed:1e3,timeStep:1,startIcon:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAADb0lEQVRYR8WWW4jcZBzFz8lukn1Si5fOjKK20NmEKtoFL+C1IBX0RQQFQeoiIipeHnxQCioURPBJhQo+yFJFEfRFKIKIN1wKFZGqtJPZbgtFTWa7i1LFy+bbyZHsztJ1MpkkI9I85vufc375/798CXGWL57lfFQDENgw/g4Qt0loQroE5CKl410r+WphPJkF55erPFQ5AMFuGO8RiU+TuCwvQNAioWdDuz0DQmVACgE2aeu5E8Y9QODGMoZpjaSP6fx2d8jwzyLNcADBrht/lsC1RUYD1g//ZS/f+itPnB6mHQpQj71XCT45QnhPooOhHdwEIsnzyAXYrMktluExgmODxJIiED8D2JFXszaO5P7Ibb9TGaAee28QfLhfKGhJ1L0du/15ura2R+xpgHsJnpMJkuZCN5isBiCMNYy/mPr3CeNEnOq4R4/0G9bi5jWEdYhgpquJzPaOO390EMTAEVwgr+kYtrMC7Qud4PG8p6nH3rsE7+tfT5A82HHaM6UB6sa/mcKX2fZjd+S03s4DqMXetAVmgkTtiezgpdIANTO505L12QDBQ6HTejMfwN9tAfsz4FUBGtp6KYx7csAI3gudINPi9bpa7L1mgU9kRmDhzs5466PSHUgLG8v+HIhtG0WC1JWuPuW2v+836+2bHwA4/9bAJPYvmxa48EclgLrx9lB8cUAXTgt6/m/b7F8/5WrGu4XC+wQvzLRf+DByW3dVew0BXKQtm8fMxE8ExgceRFAXwGEIDZL1vIAE3es6ztzXlQFWxxB7MwCn88RF9wV9EjnBrmF1Q78F6WaUcU4MO2qHmXexcv2Cc+zQyABrXfD3AXis6Gmzs9cHkRvcU6Qr/B+4WN75MpwHcF6R2Zl1LcM220Ie/7FIUwiQGtTiyUctWK8Xma2vJ9QLHTvYW6a+FAAE1o33DcGpQlOpHTrBFSBWCmuB8j+ljdifEpRCDIVOqJ0dO/iiTHhaU64DPbd67L9C4Kk8c0FvRU7wQNnwygDQ5RONeOI7kM0BJ95J4yRXLrH9+/8HkJ6QcfOqMVjfErQ2Bq1QN5yyg4NVwqt3oOdeM/5zlnBmlwsvh27rmarhIwOsvhWxf4DEHQA+De3W7SDSb0Plq9Im3Oi+9jPqzBqbu5bYiion9wQjA6zqtd0Bj8Sjho8+gv+S2Kf9B1+VRDBEEbAnAAAAAElFTkSuQmCC",endIcon:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAADdElEQVRYR8WWXYjcVBiG3zfJGb1oq4todXZnVOpsMlbRLtQK1p+CVNAbERQEqUVEVPy58EIpqFAQwasqVOhFWdrSIuiNUAQR/3ApVIr0hzozu93KJtktsgWRxeLmJPlKho52JzOTZIo2t+d7v/c5b76cHOIqP7zK/igEIADPlNWGyJBHQY4DHANlUcBZI4p/MubDqRqwXGRTuQAEUM0x9TIMvkXg1r4GIosA3rE9PUlA8oBkAsyO4Dq9Sh0GuTlPw3aN4Os1UfBUeQEXsjQDAZKdtypqCuR9WY3S63JcLelH1v2BPwdpBwI0q+pjgG8UN+8o5Ijt6gcJxP169AVorsXtKKkZkGYvsQDnKDIPYEO/mrYuxnOOHxwsDNCoqj0EX0oJRc4jlmec+fD7ZK09I6vVdgA7Aa7prhfBdN0L7EIAApjNqlokOHK5UCCBBU7U3OB0d8NWRW0U4CjIVKomsL7mBr/2guj5ChqjGKdZaqV3I7vrnn6t324aFXWI5LM9UnvB8fRkboDpivVQTOPHbgEh22xXHxgAsJ1kykgQ76i74Ye5AZqj1haYxncpQSwvOr7e2w+gVVXbBNyXSq4owGwZVW2V5nq8gs/qnk5HfKmwVVWfCPh6Krk4esL2o69yJ5AUNiqlaRK1FSIRgfBexw9OdjdL5gamOkWw1DW4emRZj9z8O/4qCGDtII0P0iJJTrb31JLe1znlZsashyPyc5A3pgcQXzpe8GShzzApPnsT1i5fo3ySVk+xSCTEcYBlArf0NYhlk+3rnwsDJIJWRU0KmRwyQz0i8k3d01sHiQf+C9rDaKqzA4/aAd2NWO4f9/XRoQESYbOidoN8dYgIvnDc4OksXeZ9oDGKG2iqMwCvz2r277osW6Gu3bEAL0uTCXAphVdAfprVrLPOOH7f9sOdeepzASR3wWZVHSM4kaNpy3aDuwiEOWrzX0pnymoiMnGs199uxcETx1vqfvhDHvOkJlcCnWbNMbULBt/s11xE9tc9/Xxe88IAv92Ga/+OSidIjHebCDDHC8Hdznks/WcA7cNpVN0jBn4BaayIPowfqC+ER4qYF07gn1dRsd4Fjcun/CPHDd4uaj40QPJVtKqlwwAeB+Rb29WPEYj+N4DEKLmMBqvUlBh6651zODeM+dAJdMxOA6X1QDCs+RUDXIlxR3sRcjswMD6XvKYAAAAASUVORK5CYII=",showInfoWin:!1,arrowPixel:.2,textStyle:{}};for(const g of Object.keys(this._operators))o[g]&&(this._operators[g]=o[g]);const h=new It({color:"rgba(255,255,255,0.4)"}),u=new Lt({color:"#3399CC",width:1.25});this._defaultStyles=[new ut({image:new pn({fill:h,stroke:u,radius:5}),fill:h,stroke:u})],this._nodesCollection=null,this._nodeInfos=[];const c=new Tn({src:this._operators.carIcon,scale:1,anchor:[.5,.5],offset:[0,0]});c.load(),this._carIcon=new ut({image:c}),this._direction=0,a&&(this._map=a),this._viewCode=(f=this._map)==null?void 0:f.getView().getProjection().getCode(),this._status="stop",this._pathInfo=s,this._bubble=i,this._moving=!1,this._tracePointsModePlay=r,this._lineLayer=new ni({source:new yn({features:[],strategy:Ov}),properties:{vzBelong:"vzTrackPath",vzTime:l}}),this._lineLayer.set("projection",this._viewCode,!0),this._lineLayer.set("track-type","trackPath"),this._movePath=[],this._originPath=null,this._revealLayer=new ni({source:new yn({features:[],strategy:Ov}),properties:{vzBelong:"vzTrackPath",vzTime:l}}),this._revealLayer.set("projection",this._viewCode,!0),this._revealLayer.set("track-type","trackReveal"),this._showTracePoint=n,this._nodesLayer=new ni({source:new yn({features:[],strategy:Ov}),style:null,properties:{vzBelong:"vzTrackPath",vzTime:l}}),this._nodesLayer.set("projection",this._viewCode,!0),this._nodesLayer.set("track-type","trackNodes"),this._nodesLayer.setVisible(this._showTracePoint),this._moveNodes=[],this._speed=this._operators.speed,this._timeStep=this._operators.timeStep,this._speedUp=1,this._nowTime=null,this._moveIdx=1,this._animateLayer=new ni({source:new yn({features:[],strategy:Ov}),style:new ut({stroke:new Lt({color:"red",width:2})}),properties:{vzBelong:"vzTrackPath",vzTime:l}}),this._animateLayer.set("projection",this._viewCode,!0),this._animateLayer.set("track-type","trackAnimate"),this._animateLine=new Wi({geometry:new Yt([])}),this._group=new Gf({layers:[this._lineLayer,this._revealLayer,this._nodesLayer,this._animateLayer],zIndex:99,properties:{type:"vzTrackPath",vzTime:l}}),a==null||a.addLayer(this._group),this._tracekEvent=a==null?void 0:a.on(["singleclick","pointermove"],g=>{this.eventListener(g)}),this._eventType=["nodeClick","nodeMouseover","nodeMouseout","pathClick","pathMouseover","pathMouseout","move"],this._simplifyEvent=a==null?void 0:a.getView().on("change:resolution",g=>{Number.isInteger(g.target.getZoom())&&this.simplifyOpera(g)}),this.initLinesAndMarkers()}simplifyOpera(e){var u,c;let i=[];const n=e.target.getProjection().getCode(),r=this._viewCode!==n,a=e.target.getResolution();i=this._nodesCollection.map(f=>{var d;if(r&&f.get("isSimplify")===!1){const v=(d=f.getGeometry())==null?void 0:d.transform(this._viewCode,n);v instanceof ii&&f.setGeometry(v)}const g=f.getGeometry().getCoordinates();return{x:g[0]/a,y:g[1]/a,idx:f.get("node_idx")}}),r&&(this._viewCode=n);const s=xRe(i,2,!1),o=[],l=[];s.forEach(f=>{o.push([f.x*a,f.y*a]),l.push(f.idx)}),this._originPath instanceof Yt&&this._originPath.setCoordinates(o),!this._moving&&this._status!=="moving"&&this._moveListener!==null&&this._tracePointsModePlay==="animation"&&this._originPath instanceof Yt&&((u=this._animateLine.getGeometry())==null||u.setCoordinates(o.slice(0,l.indexOf(this._moveIdx)+1).concat([this._animateStart.getGeometry().getCoordinates()]))),(c=this._nodesLayer.getSource())==null||c.clear(),new Promise((f,g)=>{var d;this._nodeInfos=[],this._nodesLayer.getVisible()&&((d=this._nodesCollection)==null||d.forEach((v,A)=>{v.set("isSimplify",!1),v.setStyle(null),l.includes(A+1)&&(v.set("isSimplify",!0),v.setStyle(this._defaultStyles),this._nodeInfos.push(v))})),f(this._nodeInfos)}).then(f=>{var g;(g=this._nodesLayer.getSource())==null||g.addFeatures(f)})}eventListener(e){var n,r,a,s,o,l,h,u,c;if((n=this._map)==null?void 0:n.hasFeatureAtPixel(e.pixel,{layerFilter:function(f){return f instanceof ni&&(f.get("track-type")==="trackPath"||f.get("track-type")==="trackNodes")},hitTolerance:0})){this._moveNodes=((r=this._map)==null?void 0:r.getFeaturesAtPixel(e.pixel,{layerFilter:function(d){return d instanceof ni&&d.get("track-type")==="trackNodes"},hitTolerance:0}))||[],this._movePath=((a=this._map)==null?void 0:a.getFeaturesAtPixel(e.pixel,{layerFilter:function(d){return d instanceof ni&&d.get("track-type")==="trackPath"},hitTolerance:0}))||[];const f=this._moveNodes.map(d=>d.getProperties()),g=this._movePath.map(d=>d);switch(e.type){case"singleclick":f.length>=1&&((s=this._map)==null||s.dispatchEvent({type:"nodeClick",target:this._bubble?[f[0]]:f,propagationStopped:!1,defaultPrevented:!1,preventDefault:function(){throw new Error("Function not implemented.")},stopPropagation:function(){throw new Error("Function not implemented.")}})),g.length>=1&&((o=this._map)==null||o.dispatchEvent({type:"pathClick",target:this._bubble?[g[0]]:g,propagationStopped:!1,defaultPrevented:!1,preventDefault:function(){throw new Error("Function not implemented.")},stopPropagation:function(){throw new Error("Function not implemented.")}}));break;case"pointermove":f.length>=1&&((l=this._map)==null||l.dispatchEvent({type:"nodeMouseover",target:this._bubble?[f[0]]:f,propagationStopped:!1,defaultPrevented:!1,preventDefault:function(){throw new Error("Function not implemented.")},stopPropagation:function(){throw new Error("Function not implemented.")}})),g.length>=1&&((h=this._map)==null||h.dispatchEvent({type:"pathMouseover",target:this._bubble?[g[0]]:g,propagationStopped:!1,defaultPrevented:!1,preventDefault:function(){throw new Error("Function not implemented.")},stopPropagation:function(){throw new Error("Function not implemented.")}}));break}}else{const f=this._moveNodes.map(d=>d.getProperties());this._moveNodes.length>0&&this._moveNodes.splice(0,this._moveNodes.length),e.type==="pointermove"&&f.length>0&&((u=this._map)==null||u.dispatchEvent({type:"nodeMouseout",target:this._bubble?[f[0]]:f,propagationStopped:!1,defaultPrevented:!1,preventDefault:function(){throw new Error("Function not implemented.")},stopPropagation:function(){throw new Error("Function not implemented.")}}));const g=this._movePath.map(d=>d);this._movePath.length>0&&this._movePath.splice(0,this._movePath.length),e.type==="pointermove"&&g.length>0&&((c=this._map)==null||c.dispatchEvent({type:"pathMouseout",target:this._bubble?[g[0]]:g,propagationStopped:!1,defaultPrevented:!1,preventDefault:function(){throw new Error("Function not implemented.")},stopPropagation:function(){throw new Error("Function not implemented.")}}))}}initLinesAndMarkers(){var l,h,u,c,f,g;const e=(l=this._pathInfo)==null?void 0:l.map(d=>[d.longitude,d.latitude]),i=[],n=[];let r=0;for(const d of e){const v=new Wi({geometry:new ii(av(d,this._viewCode))});let A=null;if(this._pathInfo&&(A=this._pathInfo[r]),A&&(A.node_idx=r+1,A.isSimplify=!1,v.setProperties(A,!0),v.setId("tackNode-"+A.node_idx)),r===0){const p=v.clone();this._animateStart=v.clone(),this._animateStart.setId("moveCarFeature"),p.setStyle(new ut({image:new Tn({src:this._operators.startIcon,anchor:[.5,1]}),text:new _r({text:""})})),(h=this._revealLayer.getSource())==null||h.addFeature(p)}else if(this._pathInfo&&r===this._pathInfo.length-1){const p=v.clone();p.setStyle(new ut({image:new Tn({src:this._operators.endIcon,anchor:[.5,1]}),text:new _r({text:""})})),(u=this._revealLayer.getSource())==null||u.addFeature(p)}n.push(v),r++}const a=new Yt(e);this._originPath=a.transform("EPSG:4326",this._viewCode);const s=new Wi({geometry:this._originPath}),o=new ut({image:new Tn({src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABfUlEQVQ4T3WTTSvFYRDFf8dLKIqytFckthTpJkQWlyhF2fgEVr6BheytpChEsqB08xbZWPgOJAs7ieRlNMzV//75P7vnmZkz58ycR2ZWD7QBF5KM1DGzTuBO0k065neZ2S3QBGwAU5I+iolmNgrsAI9An6SrNIgDnAE9EdgFJiS9+93MuoEToBx4AgYkXSZBHKAWOAS6IrAP5CW9BUge2AIqgJdg8guiSKoBDoDeDJBhwNlVBsiQpNPvGST0VgF7TjPeCsCIpNdo0g84O2fibx4r/AJEUjVwlJDjXbybU/eZjAGbMROXmC8BiKQ64BxoDyYLkuYTTCeB9WD/9B9AA3AMdGQAzALLAfCcluDF3r01itMS5oDFiP3MIUHNi90T7ko/XjyYGOIMsFJSXByimTVGQbFzegOuew0o+7PGKL4AmjM8MA2shua/RjIzX1suw8pucZfiUjOt/AC4BHfaeOoz+d63oziX9Zla3CzAkqTP9G8zM4/dS7r+7zt/Aaattn1kX8VgAAAAAElFTkSuQmCC",anchor:[.75,.5],scale:.7,rotateWithView:!1})});s.set("arrow",[new ut({stroke:new Lt({color:"rgba(0, 0, 255, 0.6)",width:10})}),o]),s.set("mainView",(c=this._map)==null?void 0:c.getView()),s.setStyle(wRe),i.push(s),(f=this._lineLayer.getSource())==null||f.addFeatures(i),this._nodesCollection=n,(g=this._animateLayer.getSource())==null||g.addFeature(this._animateLine),s.get("mainView")!==void 0&&s.get("mainView").dispatchEvent("change:resolution")}labelVisible(e){var i,n;if(e&&this._textLayer===0){const r=(i=this._pathInfo)==null?void 0:i.map(a=>({position:[a.longitude,a.latitude],text:a.gnssTime}));this._textLayer=new IRe({map:this._map,pointsArr:r,zoom:12}),this._textLayer.set("id","lushuText"+new Date().getTime()),this._group.getLayers().push(this._textLayer)}else(n=this._textLayer)==null||n.setVisible(e)}start(e){var i,n;this._pathInfo&&this._pathInfo.length<1||((this._moving||this._status==="pause")&&this.stop(),this._moveIdx=e||1,this._moving=!0,this._status="moving",this._nowTime=Date.now(),this._tracePointsModePlay==="skip"?(this._moveListener=this._lineLayer.on("postrender",r=>{this.tracePointsPlay(r)}),(i=this._map)==null||i.render()):this._tracePointsModePlay==="animation"&&(this._step=0,this._moveListener=this._lineLayer.on("postrender",r=>{this.animationPlay(r)}),(n=this._map)==null||n.render()))}stop(e){var n,r,a,s;this._moveIdx=1,this._status="stop",this._moving=!1,this._step=0,this._moveListener!==null&&(Lr(this._moveListener),this._moveListener=null);const i=(n=this._animateLayer.getSource())==null?void 0:n.getFeatureById("moveCarFeature");i&&((r=this._animateLayer.getSource())==null||r.removeFeature(i)),(a=this._animateLine.getGeometry())==null||a.setCoordinates([]),this._originPath instanceof Yt&&((s=this._animateStart.getGeometry())==null||s.setCoordinates(this._originPath.getFirstCoordinate()))}pause(){this._status="pause",this._moving=!1}resume(){this._status="moving",this._moving=!0}tracePointsPlay(e){var a,s,o,l,h;const i=e.frameState,n=this._nodesCollection.map(u=>u.getGeometry().getCoordinates()),r=(i.time-this._nowTime)/1e3%60;if(this._moving&&(this._moveIdx===1||r>=this._timeStep)){this._nowTime=i.time;let u=this._moveIdx===1?this._speedUp:this._moveIdx+this._speedUp,c=null;const f=this._animateLine.getGeometry();if(n&&this._moveIdx===n.length){this.stop(!0);return}if(u>=n.length&&this._moveIdx<n.length){u=n.length;let A=null;n&&(A=new Wi(new ii(n[u-1]))),c=A;const p=n[u-1][0]-n[u-2][0],m=n[u-1][1]-n[u-2][1],y=Math.atan2(m,p);this._direction!==y&&(this._direction=y),this._carIcon.getImage().setRotation(-this._direction+2*Math.PI);for(let I=n.length-this._moveIdx;I>0;--I)u!==0&&u-I<=n.length-1&&(f==null||f.appendCoordinate(n[u-I]))}else if(u<n.length&&this._moveIdx<n.length){let A=null;if(n&&(A=new Wi(new ii(n[u-1]))),c=A,n&&u!==n.length-1){const p=n[u][0]-n[u-1][0],m=n[u][1]-n[u-1][1],y=Math.atan2(m,p);this._direction!==y&&(this._direction=y),this._carIcon.getImage().setRotation(-this._direction+2*Math.PI)}for(let p=this._speedUp;p>0;--p)u!==0&&u-p<=n.length-1&&(f==null||f.appendCoordinate(n[u-p]))}this._animateStart.setStyle(this._carIcon),this._animateStart.getGeometry().setCoordinates((a=c==null?void 0:c.getGeometry())==null?void 0:a.getCoordinates());const g=(s=this._animateLayer.getSource())==null?void 0:s.getFeatureById("moveCarFeature");(!g||g.length<=0)&&((o=this._animateLayer.getSource())==null||o.addFeature(this._animateStart)),this._moveIdx=u;const d=(l=this._map)==null?void 0:l.getView().getProjection().getCode(),v={index:this._moveIdx,status:this._status,position:n[u-1],lngLat:n_(this._animateStart.getGeometry().getCoordinates(),d),passNode:this._nodesCollection[u-1],length:f==null?void 0:f.getLength()};this._animateLayer.dispatchEvent({type:"move",target:v,propagationStopped:!1,defaultPrevented:!1,preventDefault:function(){throw new Error("Function not implemented.")},stopPropagation:function(){throw new Error("Function not implemented.")}})}(h=this._map)==null||h.render()}animationPlay(e){var n,r,a,s;let i=0;if(this._nowTime=e.frameState.time,this._originPath instanceof Yt&&this._moving&&this._step!==void 0&&this._step<=1){const o=this._originPath.clone();o.transform(this._viewCode,"EPSG:3857");const l=o.getLength(),h=this._animateLine.getGeometry(),u=this._originPath.clone();if(u instanceof Yt&&this._step!==0){const p={geometry:{coordinates:u.getCoordinates(),type:"LineString"},properties:{},type:"Feature"};i=l*this._step;const m=Lie(p,0,i/1e3,{units:"kilometers"});u.setCoordinates(m.geometry.coordinates),u.transform("EPSG:4326",this._viewCode);const y=u.getCoordinates();h==null||h.setCoordinates(y);let I=0,_=0;if(y.length>2){const x=y[y.length-2],w=y[y.length-1];I=x[0]-w[0],_=x[1]-w[1];const E=Math.atan2(_,I);this._direction!==E&&(this._direction=E),this._carIcon.getImage().setRotation(-this._direction+Math.PI)}this._animateStart.setStyle(this._carIcon),this._animateStart.getGeometry().setCoordinates(u.getLastCoordinate());const C=(n=this._animateLayer.getSource())==null?void 0:n.getFeatureById("moveCarFeature");(!C||C.length<=0)&&((r=this._animateLayer.getSource())==null||r.addFeature(this._animateStart))}const c=h==null?void 0:h.getLength();let f=0,g=0;const d=new Yt([]);this._originPath.forEachSegment(function(p,m){d.setCoordinates([p,m]),g<=c&&(g+=d.getLength(),f++)}),this._moveIdx=this._nodeInfos[f-1].get("node_idx"),this._step+=5*1e-7*this._speed;const v=(a=this._map)==null?void 0:a.getView().getProjection().getCode(),A={index:this._moveIdx,status:this._status,speed:this._speed,position:this._animateStart.getGeometry().getCoordinates(),lngLat:n_(this._animateStart.getGeometry().getCoordinates(),v),passNode:this._nodesCollection[this._moveIdx-1],length:c};this._animateLayer.dispatchEvent({type:"move",target:A,propagationStopped:!1,defaultPrevented:!1,preventDefault:function(){throw new Error("Function not implemented.")},stopPropagation:function(){throw new Error("Function not implemented.")}})}if(this._moving&&this._step&&this._step>=1){this.stop(!0);return}(s=this._map)==null||s.render()}setFitView(e){var i;this._originPath!==null&&this._originPath instanceof Yt&&e&&((i=this._map)==null||i.getView().fit(this._originPath))}getPaths(){return this._pathInfo}setPaths(e){this.clearPaths(),this._pathInfo=e,this.initLinesAndMarkers()}clearPaths(){this._moving&&this.stop(),this._group.getLayersArray().forEach(e=>{e instanceof ni&&e.getSource().clear()})}destroy(){var e;this._moving&&this.stop(),this.clearPaths(),Lr(this._tracekEvent),(e=this._map)==null||e.getView().removeEventListener("change:resolution",this._simplifyEvent.listener)}getSpeed(){return this._speed}setSpeed(e){this._speed=e}getSpeedUp(){return this._speedUp}setSpeedUp(e){this._speedUp=e,this._speed=this._speed*e}getPercentnum(){return typeof this._step=="number"?this._step.toPrecision(3):0}setPercentnum(e){typeof e=="number"&&e<=1&&e>=0&&(this._step=e)}setTraceLineStyle(e){var a;e=e||{};const i=e.lineColor?e.lineColor:"rgba(0, 0, 255, 0.6)",n=e.lineWidth?e.lineWidth:10,r=(a=this._lineLayer.getSource())==null?void 0:a.getFeatures();r==null||r.forEach(s=>{s.get("arrow")[0].setStroke(new Lt({color:i,width:n}))}),this._lineLayer.changed()}setPassLineStyle(e){e=e||{};const i=e.lineColor?e.lineColor:"red",n=e.lineWidth?e.lineWidth:2,r=new ut({stroke:new Lt({color:i,width:n})});this._animateLayer.setStyle(r),this._animateLayer.changed()}setTraceNodeStyle(e){var l;e=e||{};const i=e.fillColor?e.fillColor:"rgba(255,255,255,0.4)",n=e.lineColor?e.lineColor:"#3399CC",r=e.lineWidth?e.lineWidth:1.25,a=e.size?e.size:5,s=new It({color:i}),o=new Lt({color:n,width:r});this._defaultStyles=[new ut({image:new pn({fill:s,stroke:o,radius:a}),fill:s,stroke:o})],(l=this._nodesLayer.getSource())==null||l.getFeatures().forEach(h=>{h.setStyle(this._defaultStyles),h.changed()})}getEvents(){return this._eventType}on(e,i){var r;if(this._eventType.includes(e))return e==="move"?this._animateLayer.on(e,i):(r=this._map)==null?void 0:r.on(e,i)}once(e,i){var r;if(this._eventType.includes(e))return e==="move"?this._animateLayer.once(e,i):(r=this._map)==null?void 0:r.once(e,i)}un(e,i){var r;if(this._eventType.includes(e))return e==="move"?this._animateLayer.un(e,i):(r=this._map)==null?void 0:r.un(e,i)}}function wRe(t,e){const i=t.get("arrow"),n=t.get("mainView"),r=[i[0]],a=t.getGeometry();if(a&&a instanceof Yt){const s=a.getLength(),o=200*e/s;for(let l=0;l<=1;l+=o){const h=a.getCoordinateAt(l);if(Qn(n.calculateExtent(),h)){const c=a.getCoordinateAt(l+5e-5),f=c[0]-h[0],g=c[1]-h[1],d=Math.atan2(g,f);if(l!==0){const v=i[1].clone();v.setGeometry(new ii(h)),v.getImage().setRotation(-d+2*Math.PI),r.push(v)}}}}return r}const ERe={name:"v-path",render(){return null},inject:["VMap"],props:{id:{type:String,default(){return`track-${$e()}`}},bubble:{type:Boolean,default:!0},showTracePoint:{type:Boolean,default:!0},tracePointsModePlay:{type:String},path:{type:Array},options:{type:Object},autoPlay:{type:Boolean,default:!1}},data(){return{pathObj:null}},computed:{map(){return this.VMap.map}},methods:{init(t){var e,i,n,r,a,s,o;if(t&&t.length>0||this.path&&this.path.length>0){const l=He(Re({},this.$props),{mapObj:this.map,path:t||this.path,options:this.options}),h=new CRe(l);h.setTraceLineStyle({lineColor:((e=l.options)==null?void 0:e.lineColor)||"rgba(0, 0, 255, 0.6)",lineWidth:((i=l.options)==null?void 0:i.lineWidth)||10}),h.setPassLineStyle({lineColor:((n=l.options)==null?void 0:n.passlineColor)||"red",lineWidth:((r=l.options)==null?void 0:r.passlineWidth)||2}),h.setTraceNodeStyle({lineColor:((a=l.options)==null?void 0:a.nodeStrokeColor)||"#3399CC",lineWidth:((s=l.options)==null?void 0:s.nodeStrokeWidth)||1.25,fillColor:((o=l.options)==null?void 0:o.nodeFillColor)||"rgba(255,255,255,0.4)"}),this.pathObj=h,this.pathObj.getEvents().forEach(u=>{this.pathObj.on(u,c=>{this.$emit(u,c)})}),this.$emit("load",this.pathObj),this.autoPlay&&this.start()}},start(t){this.pathObj.start(t)},pause(){this.pathObj.pause()},resume(){this.pathObj.resume()},stop(t){this.pathObj.stop(t)},destroy(){this.pathObj.destroy()}},mounted(){this.init()},beforeDestroy(){this.pathObj.destroy(),this.pathObj=null}};let SRe,bRe;const D$={};var L$=Ji(ERe,SRe,bRe,!1,BRe,null,null,null);function BRe(t){for(let e in D$)this[e]=D$[e]}L$.options.__file="src/components/path/index.vue";const hA=function(){return L$.exports}();hA.install=t=>{t.component(hA.name,hA)};const P$=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],TT=1,uA=8;class RT{static from(e){if(!(e instanceof ArrayBuffer))throw new Error("Data must be an instance of ArrayBuffer.");const[i,n]=new Uint8Array(e,0,2);if(i!==219)throw new Error("Data does not appear to be in a KDBush format.");const r=n>>4;if(r!==TT)throw new Error(`Got v${r} data when expected v${TT}.`);const a=P$[n&15];if(!a)throw new Error("Unrecognized array type.");const[s]=new Uint16Array(e,2,1),[o]=new Uint32Array(e,4,1);return new RT(o,s,a,e)}constructor(e,i=64,n=Float64Array,r){if(isNaN(e)||e<0)throw new Error(`Unpexpected numItems value: ${e}.`);this.numItems=+e,this.nodeSize=Math.min(Math.max(+i,2),65535),this.ArrayType=n,this.IndexArrayType=e<65536?Uint16Array:Uint32Array;const a=P$.indexOf(this.ArrayType),s=e*2*this.ArrayType.BYTES_PER_ELEMENT,o=e*this.IndexArrayType.BYTES_PER_ELEMENT,l=(8-o%8)%8;if(a<0)throw new Error(`Unexpected typed array class: ${n}.`);r&&r instanceof ArrayBuffer?(this.data=r,this.ids=new this.IndexArrayType(this.data,uA,e),this.coords=new this.ArrayType(this.data,uA+o+l,e*2),this._pos=e*2,this._finished=!0):(this.data=new ArrayBuffer(uA+s+o+l),this.ids=new this.IndexArrayType(this.data,uA,e),this.coords=new this.ArrayType(this.data,uA+o+l,e*2),this._pos=0,this._finished=!1,new Uint8Array(this.data,0,2).set([219,(TT<<4)+a]),new Uint16Array(this.data,2,1)[0]=i,new Uint32Array(this.data,4,1)[0]=e)}add(e,i){const n=this._pos>>1;return this.ids[n]=n,this.coords[this._pos++]=e,this.coords[this._pos++]=i,n}finish(){const e=this._pos>>1;if(e!==this.numItems)throw new Error(`Added ${e} items when expected ${this.numItems}.`);return DT(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this}range(e,i,n,r){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");const{ids:a,coords:s,nodeSize:o}=this,l=[0,a.length-1,0],h=[];for(;l.length;){const u=l.pop()||0,c=l.pop()||0,f=l.pop()||0;if(c-f<=o){for(let A=f;A<=c;A++){const p=s[2*A],m=s[2*A+1];p>=e&&p<=n&&m>=i&&m<=r&&h.push(a[A])}continue}const g=f+c>>1,d=s[2*g],v=s[2*g+1];d>=e&&d<=n&&v>=i&&v<=r&&h.push(a[g]),(u===0?e<=d:i<=v)&&(l.push(f),l.push(g-1),l.push(1-u)),(u===0?n>=d:r>=v)&&(l.push(g+1),l.push(c),l.push(1-u))}return h}within(e,i,n){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");const{ids:r,coords:a,nodeSize:s}=this,o=[0,r.length-1,0],l=[],h=n*n;for(;o.length;){const u=o.pop()||0,c=o.pop()||0,f=o.pop()||0;if(c-f<=s){for(let A=f;A<=c;A++)F$(a[2*A],a[2*A+1],e,i)<=h&&l.push(r[A]);continue}const g=f+c>>1,d=a[2*g],v=a[2*g+1];F$(d,v,e,i)<=h&&l.push(r[g]),(u===0?e-n<=d:i-n<=v)&&(o.push(f),o.push(g-1),o.push(1-u)),(u===0?e+n>=d:i+n>=v)&&(o.push(g+1),o.push(c),o.push(1-u))}return l}}function DT(t,e,i,n,r,a){if(r-n<=i)return;const s=n+r>>1;k$(t,e,s,n,r,a),DT(t,e,i,n,s-1,1-a),DT(t,e,i,s+1,r,1-a)}function k$(t,e,i,n,r,a){for(;r>n;){if(r-n>600){const h=r-n+1,u=i-n+1,c=Math.log(h),f=.5*Math.exp(2*c/3),g=.5*Math.sqrt(c*f*(h-f)/h)*(u-h/2<0?-1:1),d=Math.max(n,Math.floor(i-u*f/h+g)),v=Math.min(r,Math.floor(i+(h-u)*f/h+g));k$(t,e,i,d,v,a)}const s=e[2*i+a];let o=n,l=r;for(cA(t,e,n,i),e[2*r+a]>s&&cA(t,e,n,r);o<l;){for(cA(t,e,o,l),o++,l--;e[2*o+a]<s;)o++;for(;e[2*l+a]>s;)l--}e[2*n+a]===s?cA(t,e,n,l):(l++,cA(t,e,l,r)),l<=i&&(n=l+1),i<=l&&(r=l-1)}}function cA(t,e,i,n){LT(t,i,n),LT(e,2*i,2*n),LT(e,2*i+1,2*n+1)}function LT(t,e,i){const n=t[e];t[e]=t[i],t[i]=n}function F$(t,e,i,n){const r=t-i,a=e-n;return r*r+a*a}const MRe={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:t=>t},Q$=Math.fround||(t=>e=>(t[0]=+e,t[0]))(new Float32Array(1)),oh=2,el=3,PT=4,tl=5,z$=6;class O${constructor(e){this.options=Object.assign(Object.create(MRe),e),this.trees=new Array(this.options.maxZoom+1),this.stride=this.options.reduce?7:6,this.clusterProps=[]}load(e){const{log:i,minZoom:n,maxZoom:r}=this.options,a=`prepare ${e.length} points`;this.points=e;const s=[];for(let l=0;l<e.length;l++){const h=e[l];if(!h.geometry)continue;const[u,c]=h.geometry.coordinates,f=Q$(iy(u)),g=Q$(ny(c));s.push(f,g,1/0,l,-1,1),this.options.reduce&&s.push(0)}let o=this.trees[r+1]=this._createTree(s);for(let l=r;l>=n;l--){const h=+Date.now();o=this.trees[l]=this._createTree(this._cluster(o,l))}return this}getClusters(e,i){let n=((e[0]+180)%360+360)%360-180;const r=Math.max(-90,Math.min(90,e[1]));let a=e[2]===180?180:((e[2]+180)%360+360)%360-180;const s=Math.max(-90,Math.min(90,e[3]));if(e[2]-e[0]>=360)n=-180,a=180;else if(n>a){const c=this.getClusters([n,r,180,s],i),f=this.getClusters([-180,r,a,s],i);return c.concat(f)}const o=this.trees[this._limitZoom(i)],l=o.range(iy(n),ny(s),iy(a),ny(r)),h=o.data,u=[];for(const c of l){const f=this.stride*c;u.push(h[f+tl]>1?N$(h,f,this.clusterProps):this.points[h[f+el]])}return u}getChildren(e){const i=this._getOriginId(e),n=this._getOriginZoom(e),r="No cluster with the specified id.",a=this.trees[n];if(!a)throw new Error(r);const s=a.data;if(i*this.stride>=s.length)throw new Error(r);const o=this.options.radius/(this.options.extent*Math.pow(2,n-1)),l=s[i*this.stride],h=s[i*this.stride+1],u=a.within(l,h,o),c=[];for(const f of u){const g=f*this.stride;s[g+PT]===e&&c.push(s[g+tl]>1?N$(s,g,this.clusterProps):this.points[s[g+el]])}if(c.length===0)throw new Error(r);return c}getLeaves(e,i,n){i=i||10,n=n||0;const r=[];return this._appendLeaves(r,e,i,n,0),r}getTile(e,i,n){const r=this.trees[this._limitZoom(e)],a=Math.pow(2,e),{extent:s,radius:o}=this.options,l=o/s,h=(n-l)/a,u=(n+1+l)/a,c={features:[]};return this._addTileFeatures(r.range((i-l)/a,h,(i+1+l)/a,u),r.data,i,n,a,c),i===0&&this._addTileFeatures(r.range(1-l/a,h,1,u),r.data,a,n,a,c),i===a-1&&this._addTileFeatures(r.range(0,h,l/a,u),r.data,-1,n,a,c),c.features.length?c:null}getClusterExpansionZoom(e){let i=this._getOriginZoom(e)-1;for(;i<=this.options.maxZoom;){const n=this.getChildren(e);if(i++,n.length!==1)break;e=n[0].properties.cluster_id}return i}_appendLeaves(e,i,n,r,a){const s=this.getChildren(i);for(const o of s){const l=o.properties;if(l&&l.cluster?a+l.point_count<=r?a+=l.point_count:a=this._appendLeaves(e,l.cluster_id,n,r,a):a<r?a++:e.push(o),e.length===n)break}return a}_createTree(e){const i=new RT(e.length/this.stride|0,this.options.nodeSize,Float32Array);for(let n=0;n<e.length;n+=this.stride)i.add(e[n],e[n+1]);return i.finish(),i.data=e,i}_addTileFeatures(e,i,n,r,a,s){for(const o of e){const l=o*this.stride,h=i[l+tl]>1;let u,c,f;if(h)u=G$(i,l,this.clusterProps),c=i[l],f=i[l+1];else{const v=this.points[i[l+el]];u=v.properties;const[A,p]=v.geometry.coordinates;c=iy(A),f=ny(p)}const g={type:1,geometry:[[Math.round(this.options.extent*(c*a-n)),Math.round(this.options.extent*(f*a-r))]],tags:u};let d;h||this.options.generateId?d=i[l+el]:d=this.points[i[l+el]].id,d!==void 0&&(g.id=d),s.features.push(g)}}_limitZoom(e){return Math.max(this.options.minZoom,Math.min(Math.floor(+e),this.options.maxZoom+1))}_cluster(e,i){const{radius:n,extent:r,reduce:a,minPoints:s}=this.options,o=n/(r*Math.pow(2,i)),l=e.data,h=[],u=this.stride;for(let c=0;c<l.length;c+=u){if(l[c+oh]<=i)continue;l[c+oh]=i;const f=l[c],g=l[c+1],d=e.within(l[c],l[c+1],o),v=l[c+tl];let A=v;for(const p of d){const m=p*u;l[m+oh]>i&&(A+=l[m+tl])}if(A>v&&A>=s){let p=f*v,m=g*v,y,I=-1;const _=((c/u|0)<<5)+(i+1)+this.points.length;for(const C of d){const x=C*u;if(l[x+oh]<=i)continue;l[x+oh]=i;const w=l[x+tl];p+=l[x]*w,m+=l[x+1]*w,l[x+PT]=_,a&&(y||(y=this._map(l,c,!0),I=this.clusterProps.length,this.clusterProps.push(y)),a(y,this._map(l,x)))}l[c+PT]=_,h.push(p/A,m/A,1/0,_,-1,A),a&&h.push(I)}else{for(let p=0;p<u;p++)h.push(l[c+p]);if(A>1)for(const p of d){const m=p*u;if(!(l[m+oh]<=i)){l[m+oh]=i;for(let y=0;y<u;y++)h.push(l[m+y])}}}}return h}_getOriginId(e){return e-this.points.length>>5}_getOriginZoom(e){return(e-this.points.length)%32}_map(e,i,n){if(e[i+tl]>1){const s=this.clusterProps[e[i+z$]];return n?Object.assign({},s):s}const r=this.points[e[i+el]].properties,a=this.options.map(r);return n&&a===r?Object.assign({},a):a}}function N$(t,e,i){return{type:"Feature",id:t[e+el],properties:G$(t,e,i),geometry:{type:"Point",coordinates:[TRe(t[e]),RRe(t[e+1])]}}}function G$(t,e,i){const n=t[e+tl],r=n>=1e4?`${Math.round(n/1e3)}k`:n>=1e3?`${Math.round(n/100)/10}k`:n,a=t[e+z$],s=a===-1?{}:Object.assign({},i[a]);return Object.assign(s,{cluster:!0,cluster_id:t[e+el],point_count:n,point_count_abbreviated:r})}function iy(t){return t/360+.5}function ny(t){const e=Math.sin(t*Math.PI/180),i=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return i<0?0:i>1?1:i}function TRe(t){return(t-.5)*360}function RRe(t){const e=(180-t*360)*Math.PI/180;return 360*Math.atan(Math.exp(e))/Math.PI-90}var U$=function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",[t._t("default")],2)},DRe=[];U$._withStripped=!0;const LRe={name:"v-super-cluster",extends:wr,inject:["VMap"],props:{layerId:{type:String,default(){return`cluster-layer-${$e()}`}},features:{type:Array,default(){return[]}},FeatureStyle:{type:[Array,void 0],default(){}},cluster:{type:Object},overlay:{type:Object}},data(){return{layer:null,clusters:null,featureChildren:[],featureCluster:!1,total:0,eventRender:[],eventList:["singleclick","pointermove"]}},computed:{map(){return this.VMap.map}},watch:{cluster:{handler(t){if(t){this.clusters=new O$(this.cluster),this.clusters.load(this.getGeoFeatures()),this.total=this.clusters.points.length;const e=this.map.getView().calculateExtent(this.map.getSize()),n={type:"FeatureCollection",features:this.clusters.getClusters(e,this.map.getView().getZoom())},r=this.layer.getSource();r&&(r.clear(),r.addFeatures(new Ls().readFeatures(n).map(a=>{const s=a.get("properties");if(s&&typeof s=="object")for(const o in s)Object.prototype.hasOwnProperty.call(s,o)&&a.set(o,s[o]);return a})))}},immediate:!1,deep:!0},features:{handler(){this.dispose(),this.init()},immediate:!1,deep:!0},visible:{handler(t){this.layer.setVisible(t)},immediate:!1},zIndex:{handler(t){this.layer.setZIndex(t)},immediate:!1},maxZoom:{handler(t){this.layer.setMaxZoom(t)},immediate:!1},minZoom:{handler(t){this.layer.setMinZoom(t)},immediate:!1},extent:{handler(t){this.layer.setExtent(t)},immediate:!1}},mounted(){this.init()},beforeDestroy(){this.dispose()},methods:{getGeoFeatures(){return this.features.map(t=>({type:"Feature",geometry:{type:"Point",coordinates:So(t.coordinates,t.convert)},properties:t}))},styleFunction(t,e){const i=e.get("cluster")||0,n=e.get("point_count_abbreviated")||0;let r=t[n];if(i){if(!r){let a={};a={image:new pn({radius:4,fill:new It({color:"blue"})}),text:new _r({font:"16px sans-serif",text:n.toString()})},at(this.cluster,"style")?(r=ci(this.cluster.style),r.getText().setText(n.toString())):r=new ut(a),t[n]=r}}else{const a=e.get("style");r=ci(a)}return r},init(){this.clusters=new O$(this.cluster),this.clusters.load(this.getGeoFeatures()),this.total=this.clusters.points.length;const t=this.map.getView().calculateExtent(this.map.getSize()),i={type:"FeatureCollection",features:this.clusters.getClusters(t,this.map.getView().getZoom())},n={};this.layer=new ni(He(Re({},this.$props),{source:new yn({features:new Ls().readFeatures(i).map(r=>{const a=r.get("properties");if(a&&typeof a=="object")for(const s in a)Object.prototype.hasOwnProperty.call(a,s)&&r.set(s,a[s]);return r})}),style:r=>this.styleFunction(n,r)})),this.layer.set("cluster",!0),this.layer.set("id",this.layerId),this.layer.set("type","vector"),this.layer.set("users",!0),this.zIndex&&this.layer.setZIndex(this.zIndex),this.map.addLayer(this.layer),this.map.on("movestart",r=>{this.$emit("movestart")}),this.map.on("precompose",()=>{const r=this.map.getView().calculateExtent(this.map.getSize()),s={type:"FeatureCollection",features:this.clusters.getClusters(r,this.map.getView().getZoom())},o=this.layer.getSource();o&&(o.clear(),o.addFeatures(new Ls().readFeatures(s).map(l=>{const h=l.get("properties");if(h&&typeof h=="object")for(const u in h)Object.prototype.hasOwnProperty.call(h,u)&&l.set(u,h[u]);return l}))),this.$emit("precompose")}),this.eventList.forEach(r=>{this.eventRender.push(this.map.on(r,a=>this.eventHandler(r,a)))})},zoomEnd(t){const e=this.map.getView().calculateExtent(this.map.getSize()),n={type:"FeatureCollection",features:this.clusters.getClusters(e,this.map.getView().getZoom())},r=this.layer.getSource();r&&(r.clear(),r.addFeatures(new Ls().readFeatures(n).map(a=>{const s=a.get("properties");if(s&&typeof s=="object")for(const o in s)Object.prototype.hasOwnProperty.call(s,o)&&a.set(o,s[o]);return a}))),this.$emit("moveend"),t.map.once("moveend",a=>{this.zoomEnd(a)})},getFeatureAtPixel(t){return this.map.forEachFeatureAtPixel(t,(e,i)=>{var n;if((i==null?void 0:i.get("id"))===((n=this.layer)==null?void 0:n.get("id")))return e},{})},eventHandler(t,e){const{pixel:i}=e,n=this.getFeatureAtPixel(i);this.$emit(t,e,n)},getLeaves(t,e){return this.clusters.getLeaves(t,e)},dispose(){this.eventRender.forEach(e=>{Lr(e)});const t=this.layer.getSource();t&&t.clear(),this.map.removeLayer(this.layer)}}},q$={};var V$=Ji(LRe,U$,DRe,!1,PRe,null,null,null);function PRe(t){for(let e in q$)this[e]=q$[e]}V$.options.__file="src/components/layers/cluster/index.vue";const fA=function(){return V$.exports}();fA.install=t=>{t.component(fA.name,fA)};const j$="KGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO2xldCB2LGcsYj0wLGs9MDtjb25zdCBaPW5ldyBPZmZzY3JlZW5DYW52YXMoMjU2LDI1NiksYz1aLmdldENvbnRleHQoIjJkIik7c2VsZi5vbm1lc3NhZ2U9ZnVuY3Rpb24oZSl7aWYoIWcmJnkoZS5kYXRhLndpZHRoLGUuZGF0YS5oZWlnaHQpLGUuZGF0YS5tc2c9PT0iaW5pdFRpbGUiKXtjb25zdCBpPWUuZGF0YTtIKGkuanNvbixpLmNvbCxpLnJvdyxpLnRyYWZmaWMsaS56b29tKX1lbHNlIGUuZGF0YS5tc2c9PT0idXBkYXRlQ2FudmFzIiYmKGcuY2xlYXJSZWN0KDAsMCx2LndpZHRoLHYuaGVpZ2h0KSxiPTAsZS5kYXRhLnVwZGF0ZUluZm8mJkooZS5kYXRhLnVwZGF0ZUluZm8pKX07ZnVuY3Rpb24geShlLGkpe3Y9bmV3IE9mZnNjcmVlbkNhbnZhcyhlLGkpLGc9di5nZXRDb250ZXh0KCIyZCIpfWZ1bmN0aW9uIEgoZSxpLGwsdCxJKXtjLmNsZWFyUmVjdCgwLDAsMjU2LDI1Nik7bGV0IGg9MTA7Y29uc3QgdT10LmNlbnRlcixvPXQuem9vbVVuaXRzLHg9LXVbMF0vbyxUPXVbMV0vbyxNPVt4LFRdLHc9MTgwLGQ9OTA7bGV0IHM9bnVsbCxuPW51bGw7aWYodC50aWxlVHlwZT09PSJiZDA5IilzPWkqdC50aWxlU2l6ZStNWzBdLG49KC0xLWwpKnQudGlsZVNpemUrTVsxXSxzPXQuc2l6ZVswXS8yK3Msbj10LnNpemVbMV0vMituO2Vsc2UgaWYodC50aWxlVHlwZT09PSJXR1M4NCIpe2NvbnN0IHo9TWF0aC5QSSo2Mzc4MTM3O3M9KGkqdC50aWxlU2l6ZSpvLXopL28rTVswXSxuPU1bMV0tKHotbCp0LnRpbGVTaXplKm8pL28scz10LnNpemVbMF0vMitzLG49dC5zaXplWzFdLzIrbn1lbHNlIHM9KGkqdC50aWxlU2l6ZSpvLXcpL28rTVswXSxuPU1bMV0tKGQtbCp0LnRpbGVTaXplKm8pL28scz10LnNpemVbMF0vMitzLG49dC5zaXplWzFdLzIrbjtpZihlJiZlLnRyYWZmaWMpe2NvbnN0IHo9ZS5wcmVjaXNpb258fDE7aD1oKno7Y29uc3QgQz1lLnRyYWZmaWM7Zm9yKGxldCBQPTAsbT1DLmxlbmd0aDtQPG07UCsrKXtjb25zdCBTPUNbUF0sUj1TWzFdLEI9dC5hcnJGZWF0dXJlU3R5bGVzW1NbM11dO2xldCBHPVJbMF0vaCxPPVJbMV0vaDtjLmJlZ2luUGF0aCgpLGMubW92ZVRvKEcsTyk7Zm9yKGxldCBXPTIsYT1SLmxlbmd0aDtXPGE7Vys9MilHKz1SW1ddL2gsTys9UltXKzFdL2gsYy5saW5lVG8oRyxPKTtjLnN0cm9rZVN0eWxlPUJbMV0sU1szXT49MTUmJlNbM108PTE5JiYoYy5zdHJva2VTdHlsZT0icmdiYSgxODYsIDAsIDAsIDEpIiksYy5saW5lV2lkdGg9QlsyXSxjLmxpbmVDYXA9WChCWzNdKSxjLmxpbmVKb2luPVkoQls0XSksYy5zdHJva2UoKX19aWYoZy5kcmF3SW1hZ2UoWixzLG4pLCsrYixiPT09ayl7Yj0wLGs9MDtjb25zdCB6PXYudHJhbnNmZXJUb0ltYWdlQml0bWFwKCk7cG9zdE1lc3NhZ2Uoe2ltYWdlQml0bWFwOnosbXNnOiJpbml0VGlsZSIsY2FudmFzUG9pbnQ6W3Msbl0sem9vbTpJLHg6aSx5Omx9KX19ZnVuY3Rpb24gSihlKXtsZXQgaSxsO2NvbnN0IHQ9ZS5zaXplO2UudGlsZVR5cGU9PT0iYmQwOSI/KGk9TWF0aC5yb3VuZChlLm1hcFpvb20rMSksZS56b29tVW5pdHM9TWF0aC5wb3coMiwxOC1pKSxsPWUuem9vbVVuaXRzKjI1Nik6ZS50aWxlVHlwZT09PSJXR1M4NCI/KGk9TWF0aC5yb3VuZChlLm1hcFpvb20pLGUuem9vbVVuaXRzPTIqTWF0aC5QSSo2Mzc4MTM3LzI1Ni9NYXRoLnBvdygyLGkpLGw9ZS56b29tVW5pdHMqMjU2KTooaT1NYXRoLnJvdW5kKGUubWFwWm9vbSksZS56b29tVW5pdHM9TWF0aC5wb3coMiwyLWkpKi4zNTE1NjI1LGw9MjU2KmUuem9vbVVuaXRzKTtjb25zdCBJPWUuY2VudGVyLGg9e3g6SVswXSx5OklbMV19O2xldCB1LG8seCxULE0sdztjb25zdCBkPWUuem9vbVVuaXRzLHM9ZC9lLnJlc29sdXRpb247bGV0IG49dFswXS9zLHo9dFsxXS9zO2lmKGUudGlsZVR5cGU9PT0iYmQwOSIpe3U9TWF0aC5jZWlsKGgueC9sKSxvPU1hdGguY2VpbChoLnkvbCk7Y29uc3QgbT1bdSxvLChoLngtdSpsKS9sKmUudGlsZVNpemUsKGgueS1vKmwpL2wqZS50aWxlU2l6ZV07eD1tWzBdLU1hdGguY2VpbCgobi8yLW1bMl0pL2UudGlsZVNpemUpLFQ9bVsxXS1NYXRoLmNlaWwoKHovMi1tWzNdKS9lLnRpbGVTaXplKSxNPW1bMF0rTWF0aC5jZWlsKChuLzIrbVsyXSkvZS50aWxlU2l6ZSksdz1tWzFdK01hdGguY2VpbCgoei8yK21bM10pL2UudGlsZVNpemUpfWVsc2UgZS50aWxlVHlwZT09PSJXR1M4NCI/KG49dFswXSx6PXRbMV0sdT1NYXRoLmNlaWwoTWF0aC5yb3VuZCgoaC54KzIwMDM3NTA4MzRlLTIpL2wpKSxvPU1hdGguY2VpbChNYXRoLnJvdW5kKCgyMDAzNzUwODM0ZS0yLWgueSkvbCkpLHg9dS1NYXRoLmNlaWwobi8yL2UudGlsZVNpemUpLE09dStNYXRoLmNlaWwobi8yL2UudGlsZVNpemUpLFQ9by1NYXRoLmNlaWwoei8yL2UudGlsZVNpemUpLHc9bytNYXRoLmNlaWwoei8yL2UudGlsZVNpemUpKToobj10WzBdLHo9dFsxXSx1PU1hdGguY2VpbChNYXRoLnJvdW5kKChoLngrMTgwKS9sKSksbz1NYXRoLmNlaWwoTWF0aC5yb3VuZCgoOTAtaC55KS9sKSkseD11LU1hdGguY2VpbChuLzIvZS50aWxlU2l6ZSksTT11K01hdGguY2VpbChuLzIvZS50aWxlU2l6ZSksVD1vLU1hdGguY2VpbCh6LzIvZS50aWxlU2l6ZSksdz1vK01hdGguY2VpbCh6LzIvZS50aWxlU2l6ZSkpO2NvbnN0IEM9W107Zm9yKGxldCBtPXg7bTw9TTttKyspZm9yKGxldCBTPVQ7Uzw9dztTKyspQy5wdXNoKFttLFNdKTtrPUMubGVuZ3RoO2NvbnN0IFA9ZS5kZXZpY2VQaXhlbFJhdGlvO2cudHJhbnNsYXRlKHRbMF0qUCooMS1zKS8yLHRbMV0qUCooMS1zKS8yKSxnLnNjYWxlKGUucmF0aW8qcyxlLnJhdGlvKnMpLHBvc3RNZXNzYWdlKHt0aWxlc09yZGVyOkMsem9vbVVuaXRzOmQsbXNnOiJ1cGRhdGVDYW52YXMifSl9ZnVuY3Rpb24gWChlKXtyZXR1cm5bImJ1dHQiLCJzcXVhcmUiLCJyb3VuZCJdW2VdfWZ1bmN0aW9uIFkoZSl7cmV0dXJuWyJtaXRlciIsImJldmVsIiwicm91bmQiXVtlXX19KSgpOwo=",H$=typeof window!="undefined"&&window.Blob&&new Blob([atob(j$)],{type:"text/javascript;charset=utf-8"});function kRe(){const t=H$&&(window.URL||window.webkitURL).createObjectURL(H$);try{return t?new Worker(t):new Worker("data:application/javascript;base64,"+j$)}finally{t&&(window.URL||window.webkitURL).revokeObjectURL(t)}}function pi(t){t=t||{},this.options=t,this.analysis=t.analysis==="official"?t.analysis:"private",this.needWorker=t.needWorker!==void 0?t.needWorker:!1,t.colors=t.colors||["rgba(0,192,73,0.99609375)","rgba(242,48,48,0.99609375)","rgba(255,159,25,0.99609375)"];const e=t.colors;this.map=t.map,this.canvas=null,this.tileType=t.tileType;const i=this.map.getSize(),n=this.map.getView().calculateExtent(i),r=new Op({extent:n,source:new dp({canvasFunction:this.canvasFunction.bind(this),ratio:1,projection:"EPSG:4326"})});this.layer=r,t.map.on(["precompose"],s=>{const o=s.target.getSize(),l=s.target.getView().calculateExtent(o);r.setExtent(l)},!1),this.parseColors(e),this.tileSize=256;const a=1;this.ratio=a,this.drawTogether=!1,this.cache={},this._loadCount={},t.getTileUrl&&(this.getTileUrl=t.getTileUrl),t.needWorker&&(this.worker=new kRe,this.worker.onmessage=s=>{if(s.data.msg==="initTile")this.canvaslayer.canvas.getContext("2d").drawImage(s.data.imageBitmap,0,0),window.BMap&&(window.BMap=null);else if(s.data.msg==="updateCanvas"){const o=s.data.tilesOrder;this.zoomUnits=s.data.zoomUnits,this.tilesOrder=s.data.tilesOrder,this._loadCount={},this.canvaslayer.canvas.getContext("2d").clearRect(0,0,this.canvaslayer.canvas.width,this.canvaslayer.canvas.height);for(let l=0;l<o.length;l++){const h=o[l][0],u=o[l][1],c=Math.round(t.map.getView().getZoom());this._loadCount[h+"_"+u+"_"+c]=!1,this.showTile(h,u,c)}}},this.worker.onerror=s=>{})}pi.prototype.canvasFunction=function(t,e,i,n,r){let a=this.canvas;return a||(a=document.createElement("canvas"),this.canvas=a),a.width=n[0],a.height=n[1],this.update({resolution:e,canvas:a}),a},pi.prototype.parseColors=function(t){this.arrFeatureStyles=[[2,t[0]||"rgba(79,210,125,1)",2,2,0,[],0,0],[2,t[0]||"rgba(79,210,125,1)",3,2,0,[],0,0],[2,t[0]||"rgba(79,210,125,1)",3,2,0,[],0,0],[2,t[0]||"rgba(79,210,125,1)",5,2,0,[],0,0],[2,t[0]||"rgba(79,210,125,1)",6,2,0,[],0,0],[2,t[2]||"rgba(255,208,69,1)",2,2,0,[],0,0],[2,t[2]||"rgba(255,208,69,1)",3,2,0,[],0,0],[2,t[2]||"rgba(255,208,69,1)",3,2,0,[],0,0],[2,t[2]||"rgba(255,208,69,1)",5,2,0,[],0,0],[2,t[2]||"rgba(255,208,69,1)",6,2,0,[],0,0],[2,t[1]||"rgba(232,14,14,1)",2,2,0,[],0,0],[2,t[1]||"rgba(232,14,14,1)",3,2,0,[],0,0],[2,t[1]||"rgba(232,14,14,1)",3,2,0,[],0,0],[2,t[1]||"rgba(232,14,14,1)",5,2,0,[],0,0],[2,t[1]||"rgba(232,14,14,1)",6,2,0,[],0,0],[2,t[3]||"rgba(181,0,0,1)",2,2,0,[],0,0],[2,t[3]||"rgba(181,0,0,1)",3,2,0,[],0,0],[2,t[3]||"rgba(181,0,0,1)",3,2,0,[],0,0],[2,t[3]||"rgba(181,0,0,1)",5,2,0,[],0,0],[2,t[3]||"rgba(181,0,0,1)",6,2,0,[],0,0],[2,"rgba(255,255,255,1)",4,0,0,[],0,0],[2,"rgba(255,255,255,1)",5.5,0,0,[],0,0],[2,"rgba(255,255,255,1)",7,0,0,[],0,0],[2,"rgba(255,255,255,1)",8.5,0,0,[],0,0],[2,"rgba(255,255,255,1)",10,0,0,[],0,0]]},pi.prototype.setColors=function(t){this.parseColors(t)},pi.prototype.initialize=function(t){const e=this;this._initialize||(this.canvaslayer=new CanvasLayer({map:t,update:function(){e.update(this)}}),this._initialize=!0)},pi.prototype.clearCache=function(t){this.cache={}},pi.prototype.setMap=function(t){t?(this.map=t,this._initialize?this.canvaslayer.show():this.initialize(t)):this.canvaslayer.hide()},pi.prototype.draw=function(t){t=t||{},t.clearCache&&this.clearCache(),t.drawTogether&&(this.drawTogether=!0),this.update()},pi.prototype.clear=function(){const e=this.canvaslayer.canvas.getContext("2d"),i=e.canvas.width,n=e.canvas.height;e.canvas.width=i,e.canvas.height=n},pi.prototype.update=function(t){const e=this.map;t?this.canvaslayer=t:t=this.canvaslayer;const n=t.canvas.getContext("2d");this.drawTogether||this.clear();const r=[];if(this.needWorker){const a=this.map.getSize(),s={mapZoom:Math.round(e.getView().getZoom()),tileType:this.tileType,zoomUnits:this.zoomUnits,center:this.map.getView().getCenter(),resolution:this.canvaslayer.resolution,tileSize:this.tileSize,size:a,devicePixelRatio:this.ratio,ratio:this.ratio};this.worker.postMessage({msg:"updateCanvas",width:a[0],height:a[1],updateInfo:s})}else{const a=this.map;let s,o;this.tileType==="bd09"?(s=Math.round(a.getView().getZoom()+1),this.zoomUnits=Math.pow(2,18-s),o=this.zoomUnits*256):this.tileType==="WGS84"?(s=Math.round(a.getView().getZoom()),this.zoomUnits=2*Math.PI*6378137/256/Math.pow(2,s),o=this.zoomUnits*256):(s=Math.round(a.getView().getZoom()),this.zoomUnits=Math.pow(2,2-s)*.3515625,o=256*this.zoomUnits);const l=a.getView().getCenter(),h={x:l[0],y:l[1]};let u,c,f,g,d,v;const p=this.zoomUnits/this.canvaslayer.resolution;let m=a.getSize()[0]/p,y=a.getSize()[1]/p;if(this.tileType==="bd09"){u=Math.ceil(h.x/o),c=Math.ceil(h.y/o);const _=[u,c,(h.x-u*o)/o*this.tileSize,(h.y-c*o)/o*this.tileSize];f=_[0]-Math.ceil((m/2-_[2])/this.tileSize),g=_[1]-Math.ceil((y/2-_[3])/this.tileSize),d=_[0]+Math.ceil((m/2+_[2])/this.tileSize),v=_[1]+Math.ceil((y/2+_[3])/this.tileSize)}else this.tileType==="WGS84"?(m=a.getSize()[0],y=a.getSize()[1],u=Math.ceil(Math.round((h.x+2003750834e-2)/o)),c=Math.ceil(Math.round((2003750834e-2-h.y)/o)),f=u-Math.ceil(m/2/this.tileSize),d=u+Math.ceil(m/2/this.tileSize),g=c-Math.ceil(y/2/this.tileSize),v=c+Math.ceil(y/2/this.tileSize)):(m=a.getSize()[0],y=a.getSize()[1],u=Math.ceil(Math.round((h.x+180)/o)),c=Math.ceil(Math.round((90-h.y)/o)),f=u-Math.ceil(m/2/this.tileSize),d=u+Math.ceil(m/2/this.tileSize),g=c-Math.ceil(y/2/this.tileSize),v=c+Math.ceil(y/2/this.tileSize));for(let _=f;_<=d;_++)for(let C=g;C<=v;C++)r.push([_,C]);this.tilesOrder=r,this._loadCount={};const I=a.getSize();n.translate(I[0]*devicePixelRatio*(1-p)/2,I[1]*devicePixelRatio*(1-p)/2),n.scale(this.ratio*p,this.ratio*p);for(let _=0;_<r.length;_++){const C=r[_][0],x=r[_][1],w=s;this._loadCount[C+"_"+x+"_"+w]=!1,this.showTile(C,x,w)}}},pi.prototype.lngLatToMerc=function(t){if(t==null)return{x:0,y:0};if(t.lng>180||t.lng<-180||t.lat>90||t.lat<-90)return{x:0,y:0};if(this.tileType==="WGS84"){const e={};e.lng=t.lng*Math.PI/180*6378137;const n=t.lat*Math.PI/180;return e.lat=6378137/2*Math.log((1+Math.sin(n))/(1-Math.sin(n))),{x:Number(e.lng.toFixed(2)),y:Number(e.lat.toFixed(2))}}},pi.prototype.isAllLoaded=function(){let t=!0;for(const e in this._loadCount)if(!this._loadCount[e]){t=!1;break}return t},pi.prototype.showTile=function(t,e,i){this._parseDataAndDraw(t,e,i)},pi.prototype.drawCurrentData=function(){this.clear();let t;this.tileType==="bd09"?t=Math.round(this.map.getZoom()+1):this.tileType==="WGS84"?t=Math.round(this.map.getZoom()):t=Math.round(this.map.getView().getZoom());for(let e=0;e<this.tilesOrder.length;e++){const i=this.tilesOrder[e][0],n=this.tilesOrder[e][1],r=this.cache[this.getCacheKey(i,n,t)];r&&this._drawFeatures(r,i,n,t)}this.drawTogether=!1},pi.prototype.getCacheKey=function(t,e,i){return t+"_"+e+"_"+i},pi.prototype.getTileKey=function(t,e){return"BMAP_CUSTOM_LAYER_1_"+(t.style||"default")+"_"+t.col+"_"+t.row+"_"+t.zoom+"_"+t.zoom},pi.prototype._parseDataAndDraw=function(t,e,i){const n=this,r=this.getCacheKey(t,e,i);let s="_cbk"+(Math.random()*1e5).toFixed(0);window.BMap||(window.BMap={});let o="";const l=this.analysis;if(l==="private")o=this.getTileUrl(t,e,i,"BMap."+s),window.BMap[s]=h;else{const u="cbk"+this.getTileKey({col:t,row:e,zoom:i});o=this.getTileUrl(t,e,i,"BMap."+u),s=u,window.BMap[s]=h}function h(u){n._loadCount[t+"_"+e+"_"+i]=!0;const c=l==="private"?u.result&&u.result.trafficData:u.content&&u.content.tf;c?n.cache[r]={traffic:c,precision:u.precision||1}:n.cache[r]=null,n.drawTogether?n.isAllLoaded()&&n.drawCurrentData():n._drawFeatures(n.cache[r],t,e,i),delete window.BMap[s]}n.cache[r]!==void 0&&n.cache[r]!==null?(n._loadCount[t+"_"+e+"_"+i]=!0,n.drawTogether?n.isAllLoaded()&&n.drawCurrentData():n._drawFeatures(n.cache[r],t,e,i)):typeof window.BMap[s]=="function"&&this.request(o)},pi.prototype.getTileUrl=function(t,e,i,n){return(this.options.trafficURL||"http://its.map.baidu.com:8002/traffic/?qt=vtraffic")+"&x="+t+"&y="+e+"&z="+i+"&fn="+n+(this.analysis==="private"?"&t="+new Date().getTime():"")},pi.prototype._drawFeatures=function(t,e,i,n){if(this.needWorker){const r=this.map.getSize(),a={center:this.map.getView().getCenter(),zoomUnits:this.zoomUnits,tileType:this.tileType,tileSize:this.tileSize,size:r,arrFeatureStyles:this.arrFeatureStyles};this.worker.postMessage({msg:"initTile",json:t,col:e,row:i,width:r[0],height:r[1],traffic:a,zoom:n})}else{const r=this.map,s=this.canvaslayer.canvas.getContext("2d"),o=this.getLineCap,l=this.getLineJoin;let h=10;const u=r.getView().getCenter(),c=this.zoomUnits,f=-u[0]/c,g=u[1]/c,d=[f,g];let v=null,A=null;if(this.tileType==="bd09")v=e*this.tileSize+d[0],A=(-1-i)*this.tileSize+d[1],v=r.getSize()[0]/2+v,A=r.getSize()[1]/2+A;else if(this.tileType==="WGS84"){const p=Math.PI*6378137;v=(e*this.tileSize*c-p)/c+d[0],A=d[1]-(p-i*this.tileSize*c)/c,v=r.getSize()[0]/2+v,A=r.getSize()[1]/2+A}else v=(e*this.tileSize*c-180)/c+d[0],A=d[1]-(90-i*this.tileSize*c)/c,v=r.getSize()[0]/2+v,A=r.getSize()[1]/2+A;if(s.save(),s.translate(v,A),t&&t.traffic){const p=t.precision||1;h=h*p;const m=t.traffic;for(let y=0,I=m.length;y<I;y++){const _=m[y],C=_[1],x=this.arrFeatureStyles[_[3]];let w=C[0]/h,E=C[1]/h;s.beginPath(),s.moveTo(w,E);for(let S=2,b=C.length;S<b;S+=2)w+=C[S]/h,E+=C[S+1]/h,s.lineTo(w,E);s.strokeStyle=x[1],_[3]>=15&&_[3]<=19&&(s.strokeStyle="rgba(186, 0, 0, 1)"),s.lineWidth=x[2],s.lineCap=o(x[3]),s.lineJoin=l(x[4]),s.stroke()}}s.restore()}},pi.prototype.request=function(t,e){if(e)if(this.analysis==="private"){const n=(Math.random()*1e5).toFixed(0),r="_cbk"+n;window.BMap._rd[r]=function(a){e&&e(a),delete window.BMap._rd[r]},t+="&callback=BMap._rd._cbk"+n}else{const n=/(\w+|[\u4e00-\u9fa5]+)=(\w+|[\u4e00-\u9fa5]+)/gi,r={};t.replace(n,(s,o,l)=>{r[o]=l});const a=r.fn;window.BMap[a]=function(s){e&&e(s),delete window.BMap[a]},t+="&callback=BMap."+a}let i=document.createElement("script");i.type="text/javascript",i.charset="utf-8",i.src=t,i.addEventListener?i.addEventListener("load",function(n){const r=n.target;r.parentNode.removeChild(r)},!1):i.attachEvent&&i.attachEvent("onreadystatechange",function(n){const r=window.event.srcElement;r&&(r.readyState==="loaded"||r.readyState==="complete")&&r.parentNode.removeChild(r)}),setTimeout(function(){document.getElementsByTagName("head")[0].appendChild(i),i=null},1)},pi.prototype.getRGBA=function(t){t=t>>>0;const e=t>>24&255,i=t>>16&255,n=t>>8&255,r=(t&255)/256;return"rgba("+e+","+i+","+n+","+r+")"},pi.prototype.getLineCap=function(t){return["butt","square","round"][t]},pi.prototype.getLineJoin=function(t){return["miter","bevel","round"][t]},pi.prototype.workerTerminate=function(){this.worker&&this.worker.terminate()};const FRe={name:"v-traffic",render(){return null},extends:wr,inject:["VMap"],props:{layerId:{type:String,default(){return`traffic-layer-${$e()}`}},timeout:{type:Number},url:{type:String,require:!0},tileType:{type:String},clearCache:{type:Boolean,default:!0},colors:{type:Array,default(){return["rgba(0,192,73,0.99609375)","rgba(242,48,48,0.99609375)","rgba(255,159,25,0.99609375)"]}},needWorker:{type:Boolean,default:!1}},data(){return{timer:null,trafficLayer:null,eventRender:[],eventList:["singleclick","pointermove"]}},computed:{map(){return this.VMap.map}},watch:{visible:{handler(t){this.trafficLayer.layer.setVisible(t)},immediate:!1},zIndex:{handler(t){this.trafficLayer.layer.setZIndex(t)},immediate:!1},maxZoom:{handler(t){this.trafficLayer.layer.setMaxZoom(t)},immediate:!1},minZoom:{handler(t){this.trafficLayer.layer.setMinZoom(t)},immediate:!1},extent:{handler(t){this.trafficLayer.layer.setExtent(t)},immediate:!1,deep:!0},colors:{handler(t){this.trafficLayer.setColors(t)},immediate:!1,deep:!0}},methods:{init(){const t={map:this.map,trafficURL:this.url,tileType:this.tileType,colors:this.colors,needWorker:this.needWorker};this.trafficLayer=typeof BDTrafficLayer=="undefined"?new pi(t):new BDTrafficLayer(t),this.trafficLayer.layer.set("id",this.layerId),this.trafficLayer.layer.set("type","traffic"),this.trafficLayer.layer.set("users",!0),this.zIndex&&this.trafficLayer.layer.setZIndex(this.zIndex),this.trafficLayer.layer.setVisible(this.visible),this.map.addLayer(this.trafficLayer.layer),this.timeout&&(this.timer=setInterval(()=>{this.trafficLayer.layer&&this.trafficLayer.layer.getVisible()&&this.trafficLayer.draw({clearCache:this.clearCache})},this.timeout)),this.eventList.forEach(e=>{this.eventRender.push(this.map.on(e,i=>this.eventHandler(e,i)))})},getFeatureAtPixel(t){return this.map.forEachFeatureAtPixel(t,(e,i)=>{var n,r;if((i==null?void 0:i.get("id"))===((r=(n=this.trafficLayer)==null?void 0:n.layer)==null?void 0:r.get("id")))return e},{})},eventHandler(t,e){const{pixel:i}=e,n=this.getFeatureAtPixel(i);this.$emit(t,e,n)},dispose(){this.eventRender.forEach(t=>{Lr(t)}),this.timer&&(clearInterval(this.timer),this.timer=null),this.trafficLayer&&(this.trafficLayer.layer.getSource().clear(),this.map.removeLayer(this.trafficLayer.layer),this.trafficLayer.workerTerminate())}},mounted(){this.init()},update(){this.trafficLayer&&this.dispose(),this.init()},beforeDestroy(){this.dispose()}};let QRe,zRe;const $$={};var W$=Ji(FRe,QRe,zRe,!1,ORe,null,null,null);function ORe(t){for(let e in $$)this[e]=$$[e]}W$.options.__file="src/components/layers/traffic/index.vue";const gA=function(){return W$.exports}();gA.install=function(t){t.component(gA.name,gA)};const kT="http://www.w3.org/2001/XMLSchema-instance";function ct(t,e){return K$().createElementNS(t,e)}function dA(t,e){return Y$(t,e,[]).join("")}function Y$(t,e,i){if(t.nodeType==Node.CDATA_SECTION_NODE||t.nodeType==Node.TEXT_NODE)e?i.push(String(t.nodeValue).replace(/(\r\n|\r|\n)/g,"")):i.push(t.nodeValue);else{let n;for(n=t.firstChild;n;n=n.nextSibling)Y$(n,e,i)}return i}function Uc(t){return"documentElement"in t}function NRe(t,e,i){return t.getAttributeNS(e,i)||""}function qc(t){return new DOMParser().parseFromString(t,"application/xml")}function Z$(t,e){return function(i,n){const r=t.call(e!=null?e:this,i,n);if(r!==void 0){const a=n[n.length-1];gn(a,r)}}}function st(t,e){return function(i,n){const r=t.call(e!=null?e:this,i,n);r!==void 0&&n[n.length-1].push(r)}}function Ze(t,e){return function(i,n){const r=t.call(e!=null?e:this,i,n);r!==void 0&&(n[n.length-1]=r)}}function Ca(t,e,i){return function(n,r){const a=t.call(i!=null?i:this,n,r);if(a!==void 0){const s=r[r.length-1],o=e!==void 0?e:n.localName;s[o]=a}}}function pe(t,e){return function(i,n,r){t.call(e!=null?e:this,i,n,r),r[r.length-1].node.appendChild(i)}}function Tr(t,e){return function(i,n,r){const s=n[n.length-1].node;let o=t;o===void 0&&(o=r);const l=e!==void 0?e:s.namespaceURI;return ct(l,o)}}const X$=Tr();function lh(t,e,i,n){let r;for(r=e.firstElementChild;r;r=r.nextElementSibling){const a=t[r.namespaceURI];if(a!==void 0){const s=a[r.localName];s!==void 0&&s.call(n,r,i)}}}function jt(t,e,i,n,r){return n.push(t),lh(e,i,n,r),n.pop()}function GRe(t,e,i,n,r,a){const s=(r!==void 0?r:i).length;let o,l;for(let h=0;h<s;++h)o=i[h],o!==void 0&&(l=e.call(a,o,n,r!==void 0?r[h]:void 0),l!==void 0&&t[l.namespaceURI][l.localName].call(a,l,o,n))}function Di(t,e,i,n,r,a,s){return r.push(t),GRe(e,i,n,r,a,s),r.pop()}let FT;function URe(){return FT===void 0&&typeof XMLSerializer!="undefined"&&(FT=new XMLSerializer),FT}let QT;function K$(){return QT===void 0&&typeof document!="undefined"&&(QT=document.implementation.createDocument("","",null)),QT}class qRe extends vk{constructor(){super(),this.xmlSerializer_=URe()}getType(){return"xml"}readFeature(e,i){if(!e)return null;if(typeof e=="string"){const n=qc(e);return this.readFeatureFromDocument(n,i)}return Uc(e)?this.readFeatureFromDocument(e,i):this.readFeatureFromNode(e,i)}readFeatureFromDocument(e,i){const n=this.readFeaturesFromDocument(e,i);return n.length>0?n[0]:null}readFeatureFromNode(e,i){return null}readFeatures(e,i){if(!e)return[];if(typeof e=="string"){const n=qc(e);return this.readFeaturesFromDocument(n,i)}return Uc(e)?this.readFeaturesFromDocument(e,i):this.readFeaturesFromNode(e,i)}readFeaturesFromDocument(e,i){const n=[];for(let r=e.firstChild;r;r=r.nextSibling)r.nodeType==Node.ELEMENT_NODE&&gn(n,this.readFeaturesFromNode(r,i));return n}readFeaturesFromNode(e,i){return Ke()}readGeometry(e,i){if(!e)return null;if(typeof e=="string"){const n=qc(e);return this.readGeometryFromDocument(n,i)}return Uc(e)?this.readGeometryFromDocument(e,i):this.readGeometryFromNode(e,i)}readGeometryFromDocument(e,i){return null}readGeometryFromNode(e,i){return null}readProjection(e){if(!e)return null;if(typeof e=="string"){const i=qc(e);return this.readProjectionFromDocument(i)}return Uc(e)?this.readProjectionFromDocument(e):this.readProjectionFromNode(e)}readProjectionFromDocument(e){return this.dataProjection}readProjectionFromNode(e){return this.dataProjection}writeFeature(e,i){const n=this.writeFeatureNode(e,i);return this.xmlSerializer_.serializeToString(n)}writeFeatureNode(e,i){return null}writeFeatures(e,i){const n=this.writeFeaturesNode(e,i);return this.xmlSerializer_.serializeToString(n)}writeFeaturesNode(e,i){return null}writeGeometry(e,i){const n=this.writeGeometryNode(e,i);return this.xmlSerializer_.serializeToString(n)}writeGeometryNode(e,i){return null}}const J$=qRe,Xs="http://www.opengis.net/gml",VRe=/^\s*$/;class Li extends J${constructor(e){super(),e=e||{},this.featureType=e.featureType,this.featureNS=e.featureNS,this.srsName=e.srsName,this.schemaLocation="",this.FEATURE_COLLECTION_PARSERS={},this.FEATURE_COLLECTION_PARSERS[this.namespace]={featureMember:st(this.readFeaturesInternal),featureMembers:Ze(this.readFeaturesInternal)},this.supportedMediaTypes=["application/gml+xml"]}readFeaturesInternal(e,i){const n=e.localName;let r=null;if(n=="FeatureCollection")r=jt([],this.FEATURE_COLLECTION_PARSERS,e,i,this);else if(n=="featureMembers"||n=="featureMember"||n=="member"){const a=i[0];let s=a.featureType,o=a.featureNS;const l="p",h="p0";if(!s&&e.childNodes){s=[],o={};for(let f=0,g=e.childNodes.length;f<g;++f){const d=e.childNodes[f];if(d.nodeType===1){const v=d.nodeName.split(":").pop();if(!s.includes(v)){let A="",p=0;const m=d.namespaceURI;for(const y in o){if(o[y]===m){A=y;break}++p}A||(A=l+p,o[A]=m),s.push(A+":"+v)}}}n!="featureMember"&&(a.featureType=s,a.featureNS=o)}if(typeof o=="string"){const f=o;o={},o[h]=f}const u={},c=Array.isArray(s)?s:[s];for(const f in o){const g={};for(let d=0,v=c.length;d<v;++d)(c[d].includes(":")?c[d].split(":")[0]:h)===f&&(g[c[d].split(":").pop()]=n=="featureMembers"?st(this.readFeatureElement,this):Ze(this.readFeatureElement,this));u[o[f]]=g}n=="featureMember"||n=="member"?r=jt(void 0,u,e,i):r=jt([],u,e,i)}return r===null&&(r=[]),r}readGeometryOrExtent(e,i){const n=i[0];return n.srsName=e.firstElementChild.getAttribute("srsName"),n.srsDimension=e.firstElementChild.getAttribute("srsDimension"),jt(null,this.GEOMETRY_PARSERS,e,i,this)}readExtentElement(e,i){const n=i[0],r=this.readGeometryOrExtent(e,i);return r?fx(r,n):void 0}readGeometryElement(e,i){const n=i[0],r=this.readGeometryOrExtent(e,i);return r?hu(r,!1,n):void 0}readFeatureElementInternal(e,i,n){let r;const a={};for(let l=e.firstElementChild;l;l=l.nextElementSibling){let h;const u=l.localName;l.childNodes.length===0||l.childNodes.length===1&&(l.firstChild.nodeType===3||l.firstChild.nodeType===4)?(h=dA(l,!1),VRe.test(h)&&(h=void 0)):(n&&(h=u==="boundedBy"?this.readExtentElement(l,i):this.readGeometryElement(l,i)),h?u!=="boundedBy"&&(r=u):h=this.readFeatureElementInternal(l,i,!1));const c=l.attributes.length;if(c>0&&!(h instanceof s_)){h={_content_:h};for(let f=0;f<c;f++){const g=l.attributes[f].name;h[g]=l.attributes[f].value}}a[u]?(a[u]instanceof Array||(a[u]=[a[u]]),a[u].push(h)):a[u]=h}if(!n)return a;const s=new Wi(a);r&&s.setGeometryName(r);const o=e.getAttribute("fid")||NRe(e,this.namespace,"id");return o&&s.setId(o),s}readFeatureElement(e,i){return this.readFeatureElementInternal(e,i,!0)}readPoint(e,i){const n=this.readFlatCoordinatesFromNode(e,i);if(n)return new ii(n,"XYZ")}readMultiPoint(e,i){const n=jt([],this.MULTIPOINT_PARSERS,e,i,this);if(n)return new Nf(n)}readMultiLineString(e,i){const n=jt([],this.MULTILINESTRING_PARSERS,e,i,this);if(n)return new Of(n)}readMultiPolygon(e,i){const n=jt([],this.MULTIPOLYGON_PARSERS,e,i,this);if(n)return new qh(n)}pointMemberParser(e,i){lh(this.POINTMEMBER_PARSERS,e,i,this)}lineStringMemberParser(e,i){lh(this.LINESTRINGMEMBER_PARSERS,e,i,this)}polygonMemberParser(e,i){lh(this.POLYGONMEMBER_PARSERS,e,i,this)}readLineString(e,i){const n=this.readFlatCoordinatesFromNode(e,i);if(n)return new Yt(n,"XYZ")}readFlatLinearRing(e,i){const n=jt(null,this.GEOMETRY_FLAT_COORDINATES_PARSERS,e,i,this);if(n)return n}readLinearRing(e,i){const n=this.readFlatCoordinatesFromNode(e,i);if(n)return new g_(n,"XYZ")}readPolygon(e,i){const n=jt([null],this.FLAT_LINEAR_RINGS_PARSERS,e,i,this);if(n&&n[0]){const r=n[0],a=[r.length];let s,o;for(s=1,o=n.length;s<o;++s)gn(r,n[s]),a.push(r.length);return new Kn(r,"XYZ",a)}}readFlatCoordinatesFromNode(e,i){return jt(null,this.GEOMETRY_FLAT_COORDINATES_PARSERS,e,i,this)}readGeometryFromNode(e,i){const n=this.readGeometryElement(e,[this.getReadOptions(e,i||{})]);return n||null}readFeaturesFromNode(e,i){const n={featureType:this.featureType,featureNS:this.featureNS};return n&&Object.assign(n,this.getReadOptions(e,i)),this.readFeaturesInternal(e,[n])||[]}readProjectionFromNode(e){return xt(this.srsName?this.srsName:e.firstElementChild.getAttribute("srsName"))}}Li.prototype.namespace=Xs,Li.prototype.FLAT_LINEAR_RINGS_PARSERS={"http://www.opengis.net/gml":{}},Li.prototype.GEOMETRY_FLAT_COORDINATES_PARSERS={"http://www.opengis.net/gml":{}},Li.prototype.GEOMETRY_PARSERS={"http://www.opengis.net/gml":{}},Li.prototype.MULTIPOINT_PARSERS={"http://www.opengis.net/gml":{pointMember:st(Li.prototype.pointMemberParser),pointMembers:st(Li.prototype.pointMemberParser)}},Li.prototype.MULTILINESTRING_PARSERS={"http://www.opengis.net/gml":{lineStringMember:st(Li.prototype.lineStringMemberParser),lineStringMembers:st(Li.prototype.lineStringMemberParser)}},Li.prototype.MULTIPOLYGON_PARSERS={"http://www.opengis.net/gml":{polygonMember:st(Li.prototype.polygonMemberParser),polygonMembers:st(Li.prototype.polygonMemberParser)}},Li.prototype.POINTMEMBER_PARSERS={"http://www.opengis.net/gml":{Point:st(Li.prototype.readFlatCoordinatesFromNode)}},Li.prototype.LINESTRINGMEMBER_PARSERS={"http://www.opengis.net/gml":{LineString:st(Li.prototype.readLineString)}},Li.prototype.POLYGONMEMBER_PARSERS={"http://www.opengis.net/gml":{Polygon:st(Li.prototype.readPolygon)}},Li.prototype.RING_PARSERS={"http://www.opengis.net/gml":{LinearRing:Ze(Li.prototype.readFlatLinearRing)}};const pt=Li;function Vc(t){const e=dA(t,!1);return jc(e)}function jc(t){const e=/^\s*(\d+)\s*$/.exec(t);if(e)return parseInt(e[1],10)}function ji(t,e){t.appendChild(K$().createTextNode(e))}const jRe=Xs+" http://schemas.opengis.net/gml/2.1.2/feature.xsd",HRe={MultiLineString:"lineStringMember",MultiCurve:"curveMember",MultiPolygon:"polygonMember",MultiSurface:"surfaceMember"};class Tt extends pt{constructor(e){e=e||{},super(e),this.FEATURE_COLLECTION_PARSERS[Xs].featureMember=st(this.readFeaturesInternal),this.schemaLocation=e.schemaLocation?e.schemaLocation:jRe}readFlatCoordinates(e,i){const n=dA(e,!1).replace(/^\s*|\s*$/g,""),a=i[0].srsName;let s="enu";if(a){const h=xt(a);h&&(s=h.getAxisOrientation())}const o=n.trim().split(/\s+/),l=[];for(let h=0,u=o.length;h<u;h++){const c=o[h].split(/,+/),f=parseFloat(c[0]),g=parseFloat(c[1]),d=c.length===3?parseFloat(c[2]):0;s.startsWith("en")?l.push(f,g,d):l.push(g,f,d)}return l}readBox(e,i){const n=jt([null],this.BOX_PARSERS_,e,i,this);return kr(n[1][0],n[1][1],n[1][3],n[1][4])}innerBoundaryIsParser(e,i){const n=jt(void 0,this.RING_PARSERS,e,i,this);n&&i[i.length-1].push(n)}outerBoundaryIsParser(e,i){const n=jt(void 0,this.RING_PARSERS,e,i,this);if(n){const r=i[i.length-1];r[0]=n}}GEOMETRY_NODE_FACTORY_(e,i,n){const r=i[i.length-1],a=r.multiSurface,s=r.surface,o=r.multiCurve;return Array.isArray(e)?n="Envelope":(n=e.getType(),n==="MultiPolygon"&&a===!0?n="MultiSurface":n==="Polygon"&&s===!0?n="Surface":n==="MultiLineString"&&o===!0&&(n="MultiCurve")),ct("http://www.opengis.net/gml",n)}writeFeatureElement(e,i,n){const r=i.getId();r&&e.setAttribute("fid",r);const a=n[n.length-1],s=a.featureNS,o=i.getGeometryName();a.serializers||(a.serializers={},a.serializers[s]={});const l=[],h=[];if(i.hasProperties()){const c=i.getProperties();for(const f in c){const g=c[f];g!=null&&(l.push(f),h.push(g),f==o||typeof g.getSimplifiedGeometry=="function"?f in a.serializers[s]||(a.serializers[s][f]=pe(this.writeGeometryElement,this)):f in a.serializers[s]||(a.serializers[s][f]=pe(ji)))}}const u=Object.assign({},a);u.node=e,Di(u,a.serializers,Tr(void 0,s),h,n,l)}writeCurveOrLineString(e,i,n){const a=n[n.length-1].srsName;if(e.nodeName!=="LineStringSegment"&&a&&e.setAttribute("srsName",a),e.nodeName==="LineString"||e.nodeName==="LineStringSegment"){const s=this.createCoordinatesNode_(e.namespaceURI);e.appendChild(s),this.writeCoordinates_(s,i,n)}else if(e.nodeName==="Curve"){const s=ct(e.namespaceURI,"segments");e.appendChild(s),this.writeCurveSegments_(s,i,n)}}writeLineStringOrCurveMember(e,i,n){const r=this.GEOMETRY_NODE_FACTORY_(i,n);r&&(e.appendChild(r),this.writeCurveOrLineString(r,i,n))}writeMultiCurveOrLineString(e,i,n){const r=n[n.length-1],a=r.hasZ,s=r.srsName,o=r.curve;s&&e.setAttribute("srsName",s);const l=i.getLineStrings();Di({node:e,hasZ:a,srsName:s,curve:o},this.LINESTRINGORCURVEMEMBER_SERIALIZERS,this.MULTIGEOMETRY_MEMBER_NODE_FACTORY_,l,n,void 0,this)}writeGeometryElement(e,i,n){const r=n[n.length-1],a=Object.assign({},r);a.node=e;let s;Array.isArray(i)?s=fx(i,r):s=hu(i,!0,r),Di(a,this.GEOMETRY_SERIALIZERS,this.GEOMETRY_NODE_FACTORY_,[s],n,void 0,this)}createCoordinatesNode_(e){const i=ct(e,"coordinates");return i.setAttribute("decimal","."),i.setAttribute("cs",","),i.setAttribute("ts"," "),i}writeCoordinates_(e,i,n){const r=n[n.length-1],a=r.hasZ,s=r.srsName,o=i.getCoordinates(),l=o.length,h=new Array(l);for(let u=0;u<l;++u){const c=o[u];h[u]=this.getCoords_(c,s,a)}ji(e,h.join(" "))}writeCurveSegments_(e,i,n){const r=ct(e.namespaceURI,"LineStringSegment");e.appendChild(r),this.writeCurveOrLineString(r,i,n)}writeSurfaceOrPolygon(e,i,n){const r=n[n.length-1],a=r.hasZ,s=r.srsName;if(e.nodeName!=="PolygonPatch"&&s&&e.setAttribute("srsName",s),e.nodeName==="Polygon"||e.nodeName==="PolygonPatch"){const o=i.getLinearRings();Di({node:e,hasZ:a,srsName:s},this.RING_SERIALIZERS,this.RING_NODE_FACTORY_,o,n,void 0,this)}else if(e.nodeName==="Surface"){const o=ct(e.namespaceURI,"patches");e.appendChild(o),this.writeSurfacePatches_(o,i,n)}}RING_NODE_FACTORY_(e,i,n){const r=i[i.length-1],a=r.node,s=r.exteriorWritten;return s===void 0&&(r.exteriorWritten=!0),ct(a.namespaceURI,s!==void 0?"innerBoundaryIs":"outerBoundaryIs")}writeSurfacePatches_(e,i,n){const r=ct(e.namespaceURI,"PolygonPatch");e.appendChild(r),this.writeSurfaceOrPolygon(r,i,n)}writeRing(e,i,n){const r=ct(e.namespaceURI,"LinearRing");e.appendChild(r),this.writeLinearRing(r,i,n)}getCoords_(e,i,n){let a=(i?xt(i).getAxisOrientation():"enu").startsWith("en")?e[0]+","+e[1]:e[1]+","+e[0];if(n){const s=e[2]||0;a+=","+s}return a}writePoint(e,i,n){const r=n[n.length-1],a=r.hasZ,s=r.srsName;s&&e.setAttribute("srsName",s);const o=this.createCoordinatesNode_(e.namespaceURI);e.appendChild(o);const l=i.getCoordinates(),h=this.getCoords_(l,s,a);ji(o,h)}writeMultiPoint(e,i,n){const r=n[n.length-1],a=r.hasZ,s=r.srsName;s&&e.setAttribute("srsName",s);const o=i.getPoints();Di({node:e,hasZ:a,srsName:s},this.POINTMEMBER_SERIALIZERS,Tr("pointMember"),o,n,void 0,this)}writePointMember(e,i,n){const r=ct(e.namespaceURI,"Point");e.appendChild(r),this.writePoint(r,i,n)}writeLinearRing(e,i,n){const a=n[n.length-1].srsName;a&&e.setAttribute("srsName",a);const s=this.createCoordinatesNode_(e.namespaceURI);e.appendChild(s),this.writeCoordinates_(s,i,n)}writeMultiSurfaceOrPolygon(e,i,n){const r=n[n.length-1],a=r.hasZ,s=r.srsName,o=r.surface;s&&e.setAttribute("srsName",s);const l=i.getPolygons();Di({node:e,hasZ:a,srsName:s,surface:o},this.SURFACEORPOLYGONMEMBER_SERIALIZERS,this.MULTIGEOMETRY_MEMBER_NODE_FACTORY_,l,n,void 0,this)}writeSurfaceOrPolygonMember(e,i,n){const r=this.GEOMETRY_NODE_FACTORY_(i,n);r&&(e.appendChild(r),this.writeSurfaceOrPolygon(r,i,n))}writeEnvelope(e,i,n){const a=n[n.length-1].srsName;a&&e.setAttribute("srsName",a);const s=["lowerCorner","upperCorner"],o=[i[0]+" "+i[1],i[2]+" "+i[3]];Di({node:e},this.ENVELOPE_SERIALIZERS,X$,o,n,s,this)}MULTIGEOMETRY_MEMBER_NODE_FACTORY_(e,i,n){const r=i[i.length-1].node;return ct("http://www.opengis.net/gml",HRe[r.nodeName])}}Tt.prototype.GEOMETRY_FLAT_COORDINATES_PARSERS={"http://www.opengis.net/gml":{coordinates:Ze(Tt.prototype.readFlatCoordinates)}},Tt.prototype.FLAT_LINEAR_RINGS_PARSERS={"http://www.opengis.net/gml":{innerBoundaryIs:Tt.prototype.innerBoundaryIsParser,outerBoundaryIs:Tt.prototype.outerBoundaryIsParser}},Tt.prototype.BOX_PARSERS_={"http://www.opengis.net/gml":{coordinates:st(Tt.prototype.readFlatCoordinates)}},Tt.prototype.GEOMETRY_PARSERS={"http://www.opengis.net/gml":{Point:Ze(pt.prototype.readPoint),MultiPoint:Ze(pt.prototype.readMultiPoint),LineString:Ze(pt.prototype.readLineString),MultiLineString:Ze(pt.prototype.readMultiLineString),LinearRing:Ze(pt.prototype.readLinearRing),Polygon:Ze(pt.prototype.readPolygon),MultiPolygon:Ze(pt.prototype.readMultiPolygon),Box:Ze(Tt.prototype.readBox)}},Tt.prototype.GEOMETRY_SERIALIZERS={"http://www.opengis.net/gml":{Curve:pe(Tt.prototype.writeCurveOrLineString),MultiCurve:pe(Tt.prototype.writeMultiCurveOrLineString),Point:pe(Tt.prototype.writePoint),MultiPoint:pe(Tt.prototype.writeMultiPoint),LineString:pe(Tt.prototype.writeCurveOrLineString),MultiLineString:pe(Tt.prototype.writeMultiCurveOrLineString),LinearRing:pe(Tt.prototype.writeLinearRing),Polygon:pe(Tt.prototype.writeSurfaceOrPolygon),MultiPolygon:pe(Tt.prototype.writeMultiSurfaceOrPolygon),Surface:pe(Tt.prototype.writeSurfaceOrPolygon),MultiSurface:pe(Tt.prototype.writeMultiSurfaceOrPolygon),Envelope:pe(Tt.prototype.writeEnvelope)}},Tt.prototype.LINESTRINGORCURVEMEMBER_SERIALIZERS={"http://www.opengis.net/gml":{lineStringMember:pe(Tt.prototype.writeLineStringOrCurveMember),curveMember:pe(Tt.prototype.writeLineStringOrCurveMember)}},Tt.prototype.RING_SERIALIZERS={"http://www.opengis.net/gml":{outerBoundaryIs:pe(Tt.prototype.writeRing),innerBoundaryIs:pe(Tt.prototype.writeRing)}},Tt.prototype.POINTMEMBER_SERIALIZERS={"http://www.opengis.net/gml":{pointMember:pe(Tt.prototype.writePointMember)}},Tt.prototype.SURFACEORPOLYGONMEMBER_SERIALIZERS={"http://www.opengis.net/gml":{surfaceMember:pe(Tt.prototype.writeSurfaceOrPolygonMember),polygonMember:pe(Tt.prototype.writeSurfaceOrPolygonMember)}},Tt.prototype.ENVELOPE_SERIALIZERS={"http://www.opengis.net/gml":{lowerCorner:pe(ji),upperCorner:pe(ji)}};const AA=Tt,$Re=Xs+" http://schemas.opengis.net/gml/3.1.1/profiles/gmlsfProfile/1.0.0/gmlsf.xsd",WRe={MultiLineString:"lineStringMember",MultiCurve:"curveMember",MultiPolygon:"polygonMember",MultiSurface:"surfaceMember"};class Ue extends pt{constructor(e){e=e||{},super(e),this.surface_=e.surface!==void 0?e.surface:!1,this.curve_=e.curve!==void 0?e.curve:!1,this.multiCurve_=e.multiCurve!==void 0?e.multiCurve:!0,this.multiSurface_=e.multiSurface!==void 0?e.multiSurface:!0,this.schemaLocation=e.schemaLocation?e.schemaLocation:$Re,this.hasZ=e.hasZ!==void 0?e.hasZ:!1}readMultiCurve(e,i){const n=jt([],this.MULTICURVE_PARSERS,e,i,this);if(n)return new Of(n)}readFlatCurveRing(e,i){const n=jt([],this.MULTICURVE_PARSERS,e,i,this),r=[];for(let a=0,s=n.length;a<s;++a)gn(r,n[a].getFlatCoordinates());return r}readMultiSurface(e,i){const n=jt([],this.MULTISURFACE_PARSERS,e,i,this);if(n)return new qh(n)}curveMemberParser(e,i){lh(this.CURVEMEMBER_PARSERS,e,i,this)}surfaceMemberParser(e,i){lh(this.SURFACEMEMBER_PARSERS,e,i,this)}readPatch(e,i){return jt([null],this.PATCHES_PARSERS,e,i,this)}readSegment(e,i){return jt([],this.SEGMENTS_PARSERS,e,i,this)}readPolygonPatch(e,i){return jt([null],this.FLAT_LINEAR_RINGS_PARSERS,e,i,this)}readLineStringSegment(e,i){return jt([null],this.GEOMETRY_FLAT_COORDINATES_PARSERS,e,i,this)}interiorParser(e,i){const n=jt(void 0,this.RING_PARSERS,e,i,this);n&&i[i.length-1].push(n)}exteriorParser(e,i){const n=jt(void 0,this.RING_PARSERS,e,i,this);if(n){const r=i[i.length-1];r[0]=n}}readSurface(e,i){const n=jt([null],this.SURFACE_PARSERS,e,i,this);if(n&&n[0]){const r=n[0],a=[r.length];let s,o;for(s=1,o=n.length;s<o;++s)gn(r,n[s]),a.push(r.length);return new Kn(r,"XYZ",a)}}readCurve(e,i){const n=jt([null],this.CURVE_PARSERS,e,i,this);if(n)return new Yt(n,"XYZ")}readEnvelope(e,i){const n=jt([null],this.ENVELOPE_PARSERS,e,i,this);return kr(n[1][0],n[1][1],n[2][0],n[2][1])}readFlatPos(e,i){let n=dA(e,!1);const r=/^\s*([+\-]?\d*\.?\d+(?:[eE][+\-]?\d+)?)\s*/,a=[];let s;for(;s=r.exec(n);)a.push(parseFloat(s[1])),n=n.substr(s[0].length);if(n!=="")return;const l=i[0].srsName;if((l?xt(l).getAxisOrientation():"enu")==="neu")for(let c=0,f=a.length;c<f;c+=3){const g=a[c],d=a[c+1];a[c]=d,a[c+1]=g}const u=a.length;if(u==2&&a.push(0),u!==0)return a}readFlatPosList(e,i){const n=dA(e,!1).replace(/^\s*|\s*$/g,""),r=i[0],a=r.srsName,s=r.srsDimension,o=a?xt(a).getAxisOrientation():"enu",l=n.split(/\s+/);let h=2;e.getAttribute("srsDimension")?h=jc(e.getAttribute("srsDimension")):e.getAttribute("dimension")?h=jc(e.getAttribute("dimension")):e.parentNode.getAttribute("srsDimension")?h=jc(e.parentNode.getAttribute("srsDimension")):s&&(h=jc(s));const u=o.startsWith("en");let c,f,g;const d=[];for(let v=0,A=l.length;v<A;v+=h)c=parseFloat(l[v]),f=parseFloat(l[v+1]),g=h===3?parseFloat(l[v+2]):0,u?d.push(c,f,g):d.push(f,c,g);return d}writePos_(e,i,n){const r=n[n.length-1],a=r.hasZ,s=a?"3":"2";e.setAttribute("srsDimension",s);const o=r.srsName,l=o?xt(o).getAxisOrientation():"enu",h=i.getCoordinates();let u=l.startsWith("en")?h[0]+" "+h[1]:h[1]+" "+h[0];if(a){const c=h[2]||0;u+=" "+c}ji(e,u)}getCoords_(e,i,n){let a=(i?xt(i).getAxisOrientation():"enu").startsWith("en")?e[0]+" "+e[1]:e[1]+" "+e[0];if(n){const s=e[2]||0;a+=" "+s}return a}writePosList_(e,i,n){const r=n[n.length-1],a=r.hasZ,s=a?"3":"2";e.setAttribute("srsDimension",s);const o=r.srsName,l=i.getCoordinates(),h=l.length,u=new Array(h);let c;for(let f=0;f<h;++f)c=l[f],u[f]=this.getCoords_(c,o,a);ji(e,u.join(" "))}writePoint(e,i,n){const a=n[n.length-1].srsName;a&&e.setAttribute("srsName",a);const s=ct(e.namespaceURI,"pos");e.appendChild(s),this.writePos_(s,i,n)}writeEnvelope(e,i,n){const a=n[n.length-1].srsName;a&&e.setAttribute("srsName",a);const s=["lowerCorner","upperCorner"],o=[i[0]+" "+i[1],i[2]+" "+i[3]];Di({node:e},this.ENVELOPE_SERIALIZERS,X$,o,n,s,this)}writeLinearRing(e,i,n){const a=n[n.length-1].srsName;a&&e.setAttribute("srsName",a);const s=ct(e.namespaceURI,"posList");e.appendChild(s),this.writePosList_(s,i,n)}RING_NODE_FACTORY_(e,i,n){const r=i[i.length-1],a=r.node,s=r.exteriorWritten;return s===void 0&&(r.exteriorWritten=!0),ct(a.namespaceURI,s!==void 0?"interior":"exterior")}writeSurfaceOrPolygon(e,i,n){const r=n[n.length-1],a=r.hasZ,s=r.srsName;if(e.nodeName!=="PolygonPatch"&&s&&e.setAttribute("srsName",s),e.nodeName==="Polygon"||e.nodeName==="PolygonPatch"){const o=i.getLinearRings();Di({node:e,hasZ:a,srsName:s},this.RING_SERIALIZERS,this.RING_NODE_FACTORY_,o,n,void 0,this)}else if(e.nodeName==="Surface"){const o=ct(e.namespaceURI,"patches");e.appendChild(o),this.writeSurfacePatches_(o,i,n)}}writeCurveOrLineString(e,i,n){const a=n[n.length-1].srsName;if(e.nodeName!=="LineStringSegment"&&a&&e.setAttribute("srsName",a),e.nodeName==="LineString"||e.nodeName==="LineStringSegment"){const s=ct(e.namespaceURI,"posList");e.appendChild(s),this.writePosList_(s,i,n)}else if(e.nodeName==="Curve"){const s=ct(e.namespaceURI,"segments");e.appendChild(s),this.writeCurveSegments_(s,i,n)}}writeMultiSurfaceOrPolygon(e,i,n){const r=n[n.length-1],a=r.hasZ,s=r.srsName,o=r.surface;s&&e.setAttribute("srsName",s);const l=i.getPolygons();Di({node:e,hasZ:a,srsName:s,surface:o},this.SURFACEORPOLYGONMEMBER_SERIALIZERS,this.MULTIGEOMETRY_MEMBER_NODE_FACTORY_,l,n,void 0,this)}writeMultiPoint(e,i,n){const r=n[n.length-1],a=r.srsName,s=r.hasZ;a&&e.setAttribute("srsName",a);const o=i.getPoints();Di({node:e,hasZ:s,srsName:a},this.POINTMEMBER_SERIALIZERS,Tr("pointMember"),o,n,void 0,this)}writeMultiCurveOrLineString(e,i,n){const r=n[n.length-1],a=r.hasZ,s=r.srsName,o=r.curve;s&&e.setAttribute("srsName",s);const l=i.getLineStrings();Di({node:e,hasZ:a,srsName:s,curve:o},this.LINESTRINGORCURVEMEMBER_SERIALIZERS,this.MULTIGEOMETRY_MEMBER_NODE_FACTORY_,l,n,void 0,this)}writeRing(e,i,n){const r=ct(e.namespaceURI,"LinearRing");e.appendChild(r),this.writeLinearRing(r,i,n)}writeSurfaceOrPolygonMember(e,i,n){const r=this.GEOMETRY_NODE_FACTORY_(i,n);r&&(e.appendChild(r),this.writeSurfaceOrPolygon(r,i,n))}writePointMember(e,i,n){const r=ct(e.namespaceURI,"Point");e.appendChild(r),this.writePoint(r,i,n)}writeLineStringOrCurveMember(e,i,n){const r=this.GEOMETRY_NODE_FACTORY_(i,n);r&&(e.appendChild(r),this.writeCurveOrLineString(r,i,n))}writeSurfacePatches_(e,i,n){const r=ct(e.namespaceURI,"PolygonPatch");e.appendChild(r),this.writeSurfaceOrPolygon(r,i,n)}writeCurveSegments_(e,i,n){const r=ct(e.namespaceURI,"LineStringSegment");e.appendChild(r),this.writeCurveOrLineString(r,i,n)}writeGeometryElement(e,i,n){const r=n[n.length-1],a=Object.assign({},r);a.node=e;let s;Array.isArray(i)?s=fx(i,r):s=hu(i,!0,r),Di(a,this.GEOMETRY_SERIALIZERS,this.GEOMETRY_NODE_FACTORY_,[s],n,void 0,this)}writeFeatureElement(e,i,n){const r=i.getId();r&&e.setAttribute("fid",r);const a=n[n.length-1],s=a.featureNS,o=i.getGeometryName();a.serializers||(a.serializers={},a.serializers[s]={});const l=[],h=[];if(i.hasProperties()){const c=i.getProperties();for(const f in c){const g=c[f];g!=null&&(l.push(f),h.push(g),f==o||typeof g.getSimplifiedGeometry=="function"?f in a.serializers[s]||(a.serializers[s][f]=pe(this.writeGeometryElement,this)):f in a.serializers[s]||(a.serializers[s][f]=pe(ji)))}}const u=Object.assign({},a);u.node=e,Di(u,a.serializers,Tr(void 0,s),h,n,l)}writeFeatureMembers_(e,i,n){const r=n[n.length-1],a=r.featureType,s=r.featureNS,o={};o[s]={},o[s][a]=pe(this.writeFeatureElement,this);const l=Object.assign({},r);l.node=e,Di(l,o,Tr(a,s),i,n)}MULTIGEOMETRY_MEMBER_NODE_FACTORY_(e,i,n){const r=i[i.length-1].node;return ct(this.namespace,WRe[r.nodeName])}GEOMETRY_NODE_FACTORY_(e,i,n){const r=i[i.length-1],a=r.multiSurface,s=r.surface,o=r.curve,l=r.multiCurve;return Array.isArray(e)?n="Envelope":(n=e.getType(),n==="MultiPolygon"&&a===!0?n="MultiSurface":n==="Polygon"&&s===!0?n="Surface":n==="LineString"&&o===!0?n="Curve":n==="MultiLineString"&&l===!0&&(n="MultiCurve")),ct(this.namespace,n)}writeGeometryNode(e,i){i=this.adaptOptions(i);const n=ct(this.namespace,"geom"),r={node:n,hasZ:this.hasZ,srsName:this.srsName,curve:this.curve_,surface:this.surface_,multiSurface:this.multiSurface_,multiCurve:this.multiCurve_};return i&&Object.assign(r,i),this.writeGeometryElement(n,e,[r]),n}writeFeaturesNode(e,i){i=this.adaptOptions(i);const n=ct(this.namespace,"featureMembers");n.setAttributeNS(kT,"xsi:schemaLocation",this.schemaLocation);const r={srsName:this.srsName,hasZ:this.hasZ,curve:this.curve_,surface:this.surface_,multiSurface:this.multiSurface_,multiCurve:this.multiCurve_,featureNS:this.featureNS,featureType:this.featureType};return i&&Object.assign(r,i),this.writeFeatureMembers_(n,e,[r]),n}}Ue.prototype.GEOMETRY_FLAT_COORDINATES_PARSERS={"http://www.opengis.net/gml":{pos:Ze(Ue.prototype.readFlatPos),posList:Ze(Ue.prototype.readFlatPosList),coordinates:Ze(AA.prototype.readFlatCoordinates)}},Ue.prototype.FLAT_LINEAR_RINGS_PARSERS={"http://www.opengis.net/gml":{interior:Ue.prototype.interiorParser,exterior:Ue.prototype.exteriorParser}},Ue.prototype.GEOMETRY_PARSERS={"http://www.opengis.net/gml":{Point:Ze(pt.prototype.readPoint),MultiPoint:Ze(pt.prototype.readMultiPoint),LineString:Ze(pt.prototype.readLineString),MultiLineString:Ze(pt.prototype.readMultiLineString),LinearRing:Ze(pt.prototype.readLinearRing),Polygon:Ze(pt.prototype.readPolygon),MultiPolygon:Ze(pt.prototype.readMultiPolygon),Surface:Ze(Ue.prototype.readSurface),MultiSurface:Ze(Ue.prototype.readMultiSurface),Curve:Ze(Ue.prototype.readCurve),MultiCurve:Ze(Ue.prototype.readMultiCurve),Envelope:Ze(Ue.prototype.readEnvelope)}},Ue.prototype.MULTICURVE_PARSERS={"http://www.opengis.net/gml":{curveMember:st(Ue.prototype.curveMemberParser),curveMembers:st(Ue.prototype.curveMemberParser)}},Ue.prototype.MULTISURFACE_PARSERS={"http://www.opengis.net/gml":{surfaceMember:st(Ue.prototype.surfaceMemberParser),surfaceMembers:st(Ue.prototype.surfaceMemberParser)}},Ue.prototype.CURVEMEMBER_PARSERS={"http://www.opengis.net/gml":{LineString:st(pt.prototype.readLineString),Curve:st(Ue.prototype.readCurve)}},Ue.prototype.SURFACEMEMBER_PARSERS={"http://www.opengis.net/gml":{Polygon:st(pt.prototype.readPolygon),Surface:st(Ue.prototype.readSurface)}},Ue.prototype.SURFACE_PARSERS={"http://www.opengis.net/gml":{patches:Ze(Ue.prototype.readPatch)}},Ue.prototype.CURVE_PARSERS={"http://www.opengis.net/gml":{segments:Ze(Ue.prototype.readSegment)}},Ue.prototype.ENVELOPE_PARSERS={"http://www.opengis.net/gml":{lowerCorner:st(Ue.prototype.readFlatPosList),upperCorner:st(Ue.prototype.readFlatPosList)}},Ue.prototype.PATCHES_PARSERS={"http://www.opengis.net/gml":{PolygonPatch:Ze(Ue.prototype.readPolygonPatch)}},Ue.prototype.SEGMENTS_PARSERS={"http://www.opengis.net/gml":{LineStringSegment:Z$(Ue.prototype.readLineStringSegment)}},pt.prototype.RING_PARSERS={"http://www.opengis.net/gml":{LinearRing:Ze(pt.prototype.readFlatLinearRing),Ring:Ze(Ue.prototype.readFlatCurveRing)}},Ue.prototype.writeFeatures,Ue.prototype.RING_SERIALIZERS={"http://www.opengis.net/gml":{exterior:pe(Ue.prototype.writeRing),interior:pe(Ue.prototype.writeRing)}},Ue.prototype.ENVELOPE_SERIALIZERS={"http://www.opengis.net/gml":{lowerCorner:pe(ji),upperCorner:pe(ji)}},Ue.prototype.SURFACEORPOLYGONMEMBER_SERIALIZERS={"http://www.opengis.net/gml":{surfaceMember:pe(Ue.prototype.writeSurfaceOrPolygonMember),polygonMember:pe(Ue.prototype.writeSurfaceOrPolygonMember)}},Ue.prototype.POINTMEMBER_SERIALIZERS={"http://www.opengis.net/gml":{pointMember:pe(Ue.prototype.writePointMember)}},Ue.prototype.LINESTRINGORCURVEMEMBER_SERIALIZERS={"http://www.opengis.net/gml":{lineStringMember:pe(Ue.prototype.writeLineStringOrCurveMember),curveMember:pe(Ue.prototype.writeLineStringOrCurveMember)}},Ue.prototype.GEOMETRY_SERIALIZERS={"http://www.opengis.net/gml":{Curve:pe(Ue.prototype.writeCurveOrLineString),MultiCurve:pe(Ue.prototype.writeMultiCurveOrLineString),Point:pe(Ue.prototype.writePoint),MultiPoint:pe(Ue.prototype.writeMultiPoint),LineString:pe(Ue.prototype.writeCurveOrLineString),MultiLineString:pe(Ue.prototype.writeMultiCurveOrLineString),LinearRing:pe(Ue.prototype.writeLinearRing),Polygon:pe(Ue.prototype.writeSurfaceOrPolygon),MultiPolygon:pe(Ue.prototype.writeMultiSurfaceOrPolygon),Surface:pe(Ue.prototype.writeSurfaceOrPolygon),MultiSurface:pe(Ue.prototype.writeMultiSurfaceOrPolygon),Envelope:pe(Ue.prototype.writeEnvelope)}};const yt=Ue;class Ot extends yt{constructor(e){e=e||{},super(e),this.schemaLocation=e.schemaLocation?e.schemaLocation:this.namespace+" http://schemas.opengis.net/gml/3.2.1/gml.xsd"}writeGeometryElement(e,i,n){const r=n[n.length-1];n[n.length-1]=Object.assign({multiCurve:!0,multiSurface:!0},r),super.writeGeometryElement(e,i,n)}}Ot.prototype.namespace="http://www.opengis.net/gml/3.2",Ot.prototype.GEOMETRY_FLAT_COORDINATES_PARSERS={"http://www.opengis.net/gml/3.2":{pos:Ze(yt.prototype.readFlatPos),posList:Ze(yt.prototype.readFlatPosList),coordinates:Ze(AA.prototype.readFlatCoordinates)}},Ot.prototype.FLAT_LINEAR_RINGS_PARSERS={"http://www.opengis.net/gml/3.2":{interior:yt.prototype.interiorParser,exterior:yt.prototype.exteriorParser}},Ot.prototype.GEOMETRY_PARSERS={"http://www.opengis.net/gml/3.2":{Point:Ze(pt.prototype.readPoint),MultiPoint:Ze(pt.prototype.readMultiPoint),LineString:Ze(pt.prototype.readLineString),MultiLineString:Ze(pt.prototype.readMultiLineString),LinearRing:Ze(pt.prototype.readLinearRing),Polygon:Ze(pt.prototype.readPolygon),MultiPolygon:Ze(pt.prototype.readMultiPolygon),Surface:Ze(Ot.prototype.readSurface),MultiSurface:Ze(yt.prototype.readMultiSurface),Curve:Ze(Ot.prototype.readCurve),MultiCurve:Ze(yt.prototype.readMultiCurve),Envelope:Ze(Ot.prototype.readEnvelope)}},Ot.prototype.MULTICURVE_PARSERS={"http://www.opengis.net/gml/3.2":{curveMember:st(yt.prototype.curveMemberParser),curveMembers:st(yt.prototype.curveMemberParser)}},Ot.prototype.MULTISURFACE_PARSERS={"http://www.opengis.net/gml/3.2":{surfaceMember:st(yt.prototype.surfaceMemberParser),surfaceMembers:st(yt.prototype.surfaceMemberParser)}},Ot.prototype.CURVEMEMBER_PARSERS={"http://www.opengis.net/gml/3.2":{LineString:st(pt.prototype.readLineString),Curve:st(yt.prototype.readCurve)}},Ot.prototype.SURFACEMEMBER_PARSERS={"http://www.opengis.net/gml/3.2":{Polygon:st(pt.prototype.readPolygon),Surface:st(yt.prototype.readSurface)}},Ot.prototype.SURFACE_PARSERS={"http://www.opengis.net/gml/3.2":{patches:Ze(yt.prototype.readPatch)}},Ot.prototype.CURVE_PARSERS={"http://www.opengis.net/gml/3.2":{segments:Ze(yt.prototype.readSegment)}},Ot.prototype.ENVELOPE_PARSERS={"http://www.opengis.net/gml/3.2":{lowerCorner:st(yt.prototype.readFlatPosList),upperCorner:st(yt.prototype.readFlatPosList)}},Ot.prototype.PATCHES_PARSERS={"http://www.opengis.net/gml/3.2":{PolygonPatch:Ze(yt.prototype.readPolygonPatch)}},Ot.prototype.SEGMENTS_PARSERS={"http://www.opengis.net/gml/3.2":{LineStringSegment:Z$(yt.prototype.readLineStringSegment)}},Ot.prototype.MULTIPOINT_PARSERS={"http://www.opengis.net/gml/3.2":{pointMember:st(pt.prototype.pointMemberParser),pointMembers:st(pt.prototype.pointMemberParser)}},Ot.prototype.MULTILINESTRING_PARSERS={"http://www.opengis.net/gml/3.2":{lineStringMember:st(pt.prototype.lineStringMemberParser),lineStringMembers:st(pt.prototype.lineStringMemberParser)}},Ot.prototype.MULTIPOLYGON_PARSERS={"http://www.opengis.net/gml/3.2":{polygonMember:st(pt.prototype.polygonMemberParser),polygonMembers:st(pt.prototype.polygonMemberParser)}},Ot.prototype.POINTMEMBER_PARSERS={"http://www.opengis.net/gml/3.2":{Point:st(pt.prototype.readFlatCoordinatesFromNode)}},Ot.prototype.LINESTRINGMEMBER_PARSERS={"http://www.opengis.net/gml/3.2":{LineString:st(pt.prototype.readLineString)}},Ot.prototype.POLYGONMEMBER_PARSERS={"http://www.opengis.net/gml/3.2":{Polygon:st(pt.prototype.readPolygon)}},Ot.prototype.RING_PARSERS={"http://www.opengis.net/gml/3.2":{LinearRing:Ze(pt.prototype.readFlatLinearRing),Ring:Ze(Ot.prototype.readFlatCurveRing)}},Ot.prototype.RING_SERIALIZERS={"http://www.opengis.net/gml/3.2":{exterior:pe(yt.prototype.writeRing),interior:pe(yt.prototype.writeRing)}},Ot.prototype.ENVELOPE_SERIALIZERS={"http://www.opengis.net/gml/3.2":{lowerCorner:pe(ji),upperCorner:pe(ji)}},Ot.prototype.SURFACEORPOLYGONMEMBER_SERIALIZERS={"http://www.opengis.net/gml/3.2":{surfaceMember:pe(yt.prototype.writeSurfaceOrPolygonMember),polygonMember:pe(yt.prototype.writeSurfaceOrPolygonMember)}},Ot.prototype.POINTMEMBER_SERIALIZERS={"http://www.opengis.net/gml/3.2":{pointMember:pe(yt.prototype.writePointMember)}},Ot.prototype.LINESTRINGORCURVEMEMBER_SERIALIZERS={"http://www.opengis.net/gml/3.2":{lineStringMember:pe(yt.prototype.writeLineStringOrCurveMember),curveMember:pe(yt.prototype.writeLineStringOrCurveMember)}},Ot.prototype.GEOMETRY_SERIALIZERS={"http://www.opengis.net/gml/3.2":{Curve:pe(yt.prototype.writeCurveOrLineString),MultiCurve:pe(yt.prototype.writeMultiCurveOrLineString),Point:pe(Ot.prototype.writePoint),MultiPoint:pe(yt.prototype.writeMultiPoint),LineString:pe(yt.prototype.writeCurveOrLineString),MultiLineString:pe(yt.prototype.writeMultiCurveOrLineString),LinearRing:pe(yt.prototype.writeLinearRing),Polygon:pe(yt.prototype.writeSurfaceOrPolygon),MultiPolygon:pe(yt.prototype.writeMultiSurfaceOrPolygon),Surface:pe(yt.prototype.writeSurfaceOrPolygon),MultiSurface:pe(yt.prototype.writeMultiSurfaceOrPolygon),Envelope:pe(yt.prototype.writeEnvelope)}};const zT=Ot;class YRe{constructor(e){this.tagName_=e}getTagName(){return this.tagName_}}const eW=YRe;class ZRe extends eW{constructor(e,i){super(e),this.conditions=i,gt(this.conditions.length>=2,"At least 2 conditions are required")}}const XRe=ZRe;class KRe extends XRe{constructor(e){super("And",Array.prototype.slice.call(arguments))}}const JRe=KRe;class eDe extends eW{constructor(e,i,n){if(super("BBOX"),this.geometryName=e,this.extent=i,i.length!==4)throw new Error("Expected an extent with four values ([minX, minY, maxX, maxY])");this.srsName=n}}const tDe=eDe;function iDe(t){const e=[null].concat(Array.prototype.slice.call(arguments));return new(Function.prototype.bind.apply(JRe,e))}function nDe(t,e,i){return new tDe(t,e,i)}const tW={"http://www.opengis.net/gml":{boundedBy:Ca(pt.prototype.readExtentElement,"bounds")},"http://www.opengis.net/wfs/2.0":{member:st(pt.prototype.readFeaturesInternal)}},rDe={"http://www.opengis.net/wfs":{totalInserted:Ca(Vc),totalUpdated:Ca(Vc),totalDeleted:Ca(Vc)},"http://www.opengis.net/wfs/2.0":{totalInserted:Ca(Vc),totalUpdated:Ca(Vc),totalDeleted:Ca(Vc)}},aDe={"http://www.opengis.net/wfs":{TransactionSummary:Ca(aW,"transactionSummary"),InsertResults:Ca(oW,"insertIds")},"http://www.opengis.net/wfs/2.0":{TransactionSummary:Ca(aW,"transactionSummary"),InsertResults:Ca(oW,"insertIds")}},sDe={"http://www.opengis.net/wfs":{PropertyName:pe(ji)},"http://www.opengis.net/wfs/2.0":{PropertyName:pe(ji)}},iW={"http://www.opengis.net/wfs":{Insert:pe(lW),Update:pe(cW),Delete:pe(uW),Property:pe(fW),Native:pe(gW)},"http://www.opengis.net/wfs/2.0":{Insert:pe(lW),Update:pe(cW),Delete:pe(uW),Property:pe(fW),Native:pe(gW)}},nW="feature",OT="http://www.w3.org/2000/xmlns/",NT={"2.0.0":"http://www.opengis.net/ogc/1.1","1.1.0":"http://www.opengis.net/ogc","1.0.0":"http://www.opengis.net/ogc"},GT={"2.0.0":"http://www.opengis.net/wfs/2.0","1.1.0":"http://www.opengis.net/wfs","1.0.0":"http://www.opengis.net/wfs"},UT={"2.0.0":"http://www.opengis.net/fes/2.0","1.1.0":"http://www.opengis.net/fes","1.0.0":"http://www.opengis.net/fes"},rW={"2.0.0":"http://www.opengis.net/wfs/2.0 http://schemas.opengis.net/wfs/2.0/wfs.xsd","1.1.0":"http://www.opengis.net/wfs http://schemas.opengis.net/wfs/1.1.0/wfs.xsd","1.0.0":"http://www.opengis.net/wfs http://schemas.opengis.net/wfs/1.0.0/wfs.xsd"},qT={"2.0.0":zT,"1.1.0":yt,"1.0.0":AA},oDe="1.1.0";class lDe extends J${constructor(e){super(),e=e||{},this.version_=e.version?e.version:oDe,this.featureType_=e.featureType,this.featureNS_=e.featureNS,this.gmlFormat_=e.gmlFormat?e.gmlFormat:new qT[this.version_],this.schemaLocation_=e.schemaLocation?e.schemaLocation:rW[this.version_]}getFeatureType(){return this.featureType_}setFeatureType(e){this.featureType_=e}readFeaturesFromNode(e,i){const n={node:e};Object.assign(n,{featureType:this.featureType_,featureNS:this.featureNS_}),Object.assign(n,this.getReadOptions(e,i||{}));const r=[n];let a;this.version_==="2.0.0"?a=tW:a=this.gmlFormat_.FEATURE_COLLECTION_PARSERS;let s=jt([],a,e,r,this.gmlFormat_);return s||(s=[]),s}readTransactionResponse(e){if(!!e){if(typeof e=="string"){const i=qc(e);return this.readTransactionResponseFromDocument(i)}return Uc(e)?this.readTransactionResponseFromDocument(e):this.readTransactionResponseFromNode(e)}}readFeatureCollectionMetadata(e){if(!!e){if(typeof e=="string"){const i=qc(e);return this.readFeatureCollectionMetadataFromDocument(i)}return Uc(e)?this.readFeatureCollectionMetadataFromDocument(e):this.readFeatureCollectionMetadataFromNode(e)}}readFeatureCollectionMetadataFromDocument(e){for(let i=e.firstChild;i;i=i.nextSibling)if(i.nodeType==Node.ELEMENT_NODE)return this.readFeatureCollectionMetadataFromNode(i)}readFeatureCollectionMetadataFromNode(e){const i={},n=jc(e.getAttribute("numberOfFeatures"));return i.numberOfFeatures=n,jt(i,tW,e,[],this.gmlFormat_)}readTransactionResponseFromDocument(e){for(let i=e.firstChild;i;i=i.nextSibling)if(i.nodeType==Node.ELEMENT_NODE)return this.readTransactionResponseFromNode(i)}readTransactionResponseFromNode(e){return jt({},aDe,e,[])}writeGetFeature(e){const i=ct(GT[this.version_],"GetFeature");i.setAttribute("service","WFS"),i.setAttribute("version",this.version_),e.handle&&i.setAttribute("handle",e.handle),e.outputFormat&&i.setAttribute("outputFormat",e.outputFormat),e.maxFeatures!==void 0&&i.setAttribute("maxFeatures",String(e.maxFeatures)),e.resultType&&i.setAttribute("resultType",e.resultType),e.startIndex!==void 0&&i.setAttribute("startIndex",String(e.startIndex)),e.count!==void 0&&i.setAttribute("count",String(e.count)),e.viewParams!==void 0&&i.setAttribute("viewParams",e.viewParams),i.setAttributeNS(kT,"xsi:schemaLocation",this.schemaLocation_);const n={node:i};if(Object.assign(n,{version:this.version_,srsName:e.srsName,featureNS:e.featureNS?e.featureNS:this.featureNS_,featurePrefix:e.featurePrefix,propertyNames:e.propertyNames?e.propertyNames:[]}),gt(Array.isArray(e.featureTypes),"`options.featureTypes` must be an Array"),typeof e.featureTypes[0]=="string"){let r=e.filter;e.bbox&&(gt(e.geometryName,"`options.geometryName` must also be provided when `options.bbox` is set"),r=this.combineBboxAndFilter(e.geometryName,e.bbox,e.srsName,r)),Object.assign(n,{geometryName:e.geometryName,filter:r}),CW(i,e.featureTypes,[n])}else e.featureTypes.forEach(r=>{const a=this.combineBboxAndFilter(r.geometryName,r.bbox,e.srsName,e.filter);Object.assign(n,{geometryName:r.geometryName,filter:a}),CW(i,[r.name],[n])});return i}combineBboxAndFilter(e,i,n,r){const a=nDe(e,i,n);return r?iDe(r,a):a}writeTransaction(e,i,n,r){const a=[],s=r.version?r.version:this.version_,o=ct(GT[s],"Transaction");o.setAttribute("service","WFS"),o.setAttribute("version",s);let l;r&&(l=r.gmlOptions?r.gmlOptions:{},r.handle&&o.setAttribute("handle",r.handle)),o.setAttributeNS(kT,"xsi:schemaLocation",rW[s]);const h=hDe(o,l,s,r);return e&&ry("Insert",e,a,h),i&&ry("Update",i,a,h),n&&ry("Delete",n,a,h),r.nativeElements&&ry("Native",r.nativeElements,a,h),o}readProjectionFromDocument(e){for(let i=e.firstChild;i;i=i.nextSibling)if(i.nodeType==Node.ELEMENT_NODE)return this.readProjectionFromNode(i);return null}readProjectionFromNode(e){if(e.firstElementChild&&e.firstElementChild.firstElementChild){e=e.firstElementChild.firstElementChild;for(let i=e.firstElementChild;i;i=i.nextElementSibling)if(!(i.childNodes.length===0||i.childNodes.length===1&&i.firstChild.nodeType===3)){const n=[{}];return this.gmlFormat_.readGeometryElement(i,n),xt(n.pop().srsName)}}return null}}function hDe(t,e,i,n){const r=n.featurePrefix?n.featurePrefix:nW;let a;return i==="1.0.0"?a=2:i==="1.1.0"?a=3:i==="2.0.0"&&(a=3.2),Object.assign({node:t},{version:i,featureNS:n.featureNS,featureType:n.featureType,featurePrefix:r,gmlVersion:a,hasZ:n.hasZ,srsName:n.srsName},e)}function ry(t,e,i,n){Di(n,iW,Tr(t),e,i)}function aW(t,e){return jt({},rDe,t,e)}const uDe={"http://www.opengis.net/ogc":{FeatureId:st(function(t,e){return t.getAttribute("fid")})},"http://www.opengis.net/ogc/1.1":{FeatureId:st(function(t,e){return t.getAttribute("fid")})}};function sW(t,e){lh(uDe,t,e)}const cDe={"http://www.opengis.net/wfs":{Feature:sW},"http://www.opengis.net/wfs/2.0":{Feature:sW}};function oW(t,e){return jt([],cDe,t,e)}function lW(t,e,i){const n=i[i.length-1],r=n.featureType,a=n.featureNS,s=n.gmlVersion,o=ct(a,r);t.appendChild(o),s===2?AA.prototype.writeFeatureElement(o,e,i):s===3?yt.prototype.writeFeatureElement(o,e,i):zT.prototype.writeFeatureElement(o,e,i)}function hW(t,e,i){const r=i[i.length-1].version,a=NT[r],s=ct(a,"Filter"),o=ct(a,"FeatureId");s.appendChild(o),o.setAttribute("fid",e),t.appendChild(s)}function VT(t,e){t=t||nW;const i=t+":";return e.startsWith(i)?e:i+e}function uW(t,e,i){const n=i[i.length-1];gt(e.getId()!==void 0,"Features must have an id set");const r=n.featureType,a=n.featurePrefix,s=n.featureNS,o=VT(a,r);t.setAttribute("typeName",o),t.setAttributeNS(OT,"xmlns:"+a,s);const l=e.getId();l!==void 0&&hW(t,l,i)}function cW(t,e,i){const n=i[i.length-1];gt(e.getId()!==void 0,"Features must have an id set");const r=n.version,a=n.featureType,s=n.featurePrefix,o=n.featureNS,l=VT(s,a),h=e.getGeometryName();t.setAttribute("typeName",l),t.setAttributeNS(OT,"xmlns:"+s,o);const u=e.getId();if(u!==void 0){const c=e.getKeys(),f=[];for(let g=0,d=c.length;g<d;g++){const v=e.get(c[g]);if(v!==void 0){let A=c[g];v&&typeof v.getSimplifiedGeometry=="function"&&(A=h),f.push({name:A,value:v})}}Di({version:r,gmlVersion:n.gmlVersion,node:t,hasZ:n.hasZ,srsName:n.srsName},iW,Tr("Property"),f,i),hW(t,u,i)}}function fW(t,e,i){const n=i[i.length-1],r=n.version,a=GT[r],o=ct(a,r==="2.0.0"?"ValueReference":"Name"),l=n.gmlVersion;if(t.appendChild(o),ji(o,e.name),e.value!==void 0&&e.value!==null){const h=ct(a,"Value");t.appendChild(h),e.value&&typeof e.value.getSimplifiedGeometry=="function"?l===2?AA.prototype.writeGeometryElement(h,e.value,i):l===3?yt.prototype.writeGeometryElement(h,e.value,i):zT.prototype.writeGeometryElement(h,e.value,i):ji(h,e.value)}}function gW(t,e,i){e.vendorId&&t.setAttribute("vendorId",e.vendorId),e.safeToIgnore!==void 0&&t.setAttribute("safeToIgnore",String(e.safeToIgnore)),e.value!==void 0&&ji(t,e.value)}const ay={"http://www.opengis.net/wfs":{Query:pe(dW)},"http://www.opengis.net/wfs/2.0":{Query:pe(dW)},"http://www.opengis.net/ogc":{During:pe(pW),And:pe(sy),Or:pe(sy),Not:pe(mW),BBOX:pe(AW),Contains:pe(il),Intersects:pe(il),Within:pe(il),DWithin:pe(vW),PropertyIsEqualTo:pe(Yr),PropertyIsNotEqualTo:pe(Yr),PropertyIsLessThan:pe(Yr),PropertyIsLessThanOrEqualTo:pe(Yr),PropertyIsGreaterThan:pe(Yr),PropertyIsGreaterThanOrEqualTo:pe(Yr),PropertyIsNull:pe(yW),PropertyIsBetween:pe(_W),PropertyIsLike:pe(xW)},"http://www.opengis.net/fes/2.0":{During:pe(pW),And:pe(sy),Or:pe(sy),Not:pe(mW),BBOX:pe(AW),Contains:pe(il),Disjoint:pe(il),Intersects:pe(il),ResourceId:pe(gDe),Within:pe(il),DWithin:pe(vW),PropertyIsEqualTo:pe(Yr),PropertyIsNotEqualTo:pe(Yr),PropertyIsLessThan:pe(Yr),PropertyIsLessThanOrEqualTo:pe(Yr),PropertyIsGreaterThan:pe(Yr),PropertyIsGreaterThanOrEqualTo:pe(Yr),PropertyIsNull:pe(yW),PropertyIsBetween:pe(_W),PropertyIsLike:pe(xW)}};function dW(t,e,i){const n=i[i.length-1],r=n.version,a=n.featurePrefix,s=n.featureNS,o=n.propertyNames,l=n.srsName;let h;a?h=VT(a,e):h=e;let u;r==="2.0.0"?u="typeNames":u="typeName",t.setAttribute(u,h),l&&t.setAttribute("srsName",l),s&&t.setAttributeNS(OT,"xmlns:"+a,s);const c=Object.assign({},n);c.node=t,Di(c,sDe,Tr("PropertyName"),o,i);const f=n.filter;if(f){const g=ct(hy(r),"Filter");t.appendChild(g),fDe(g,f,i)}}function fDe(t,e,i){const n=i[i.length-1],r={node:t};Object.assign(r,{context:n}),Di(r,ay,Tr(e.getTagName()),[e],i)}function AW(t,e,i){const n=i[i.length-1],a=n.context.version;n.srsName=e.srsName;const s=qT[a];Hc(a,t,e.geometryName),s.prototype.writeGeometryElement(t,e.extent,i)}function gDe(t,e,i){t.setAttribute("rid",e.rid)}function il(t,e,i){const n=i[i.length-1],a=n.context.version;n.srsName=e.srsName;const s=qT[a];Hc(a,t,e.geometryName),s.prototype.writeGeometryElement(t,e.geometry,i)}function vW(t,e,i){const a=i[i.length-1].context.version;il(t,e,i);const s=ct(hy(a),"Distance");ji(s,e.distance.toString()),a==="2.0.0"?s.setAttribute("uom",e.unit):s.setAttribute("units",e.unit),t.appendChild(s)}function pW(t,e,i){const a=i[i.length-1].context.version;oy(UT[a],"ValueReference",t,e.propertyName);const s=ct(Xs,"TimePeriod");t.appendChild(s);const o=ct(Xs,"begin");s.appendChild(o),IW(o,e.begin);const l=ct(Xs,"end");s.appendChild(l),IW(l,e.end)}function sy(t,e,i){const r=i[i.length-1].context,a={node:t};Object.assign(a,{context:r});const s=e.conditions;for(let o=0,l=s.length;o<l;++o){const h=s[o];Di(a,ay,Tr(h.getTagName()),[h],i)}}function mW(t,e,i){const r=i[i.length-1].context,a={node:t};Object.assign(a,{context:r});const s=e.condition;Di(a,ay,Tr(s.getTagName()),[s],i)}function Yr(t,e,i){const a=i[i.length-1].context.version;e.matchCase!==void 0&&t.setAttribute("matchCase",e.matchCase.toString()),Hc(a,t,e.propertyName),ly(a,t,""+e.expression)}function yW(t,e,i){const a=i[i.length-1].context.version;Hc(a,t,e.propertyName)}function _W(t,e,i){const a=i[i.length-1].context.version,s=hy(a);Hc(a,t,e.propertyName);const o=ct(s,"LowerBoundary");t.appendChild(o),ly(a,o,""+e.lowerBoundary);const l=ct(s,"UpperBoundary");t.appendChild(l),ly(a,l,""+e.upperBoundary)}function xW(t,e,i){const a=i[i.length-1].context.version;t.setAttribute("wildCard",e.wildCard),t.setAttribute("singleChar",e.singleChar),t.setAttribute("escapeChar",e.escapeChar),e.matchCase!==void 0&&t.setAttribute("matchCase",e.matchCase.toString()),Hc(a,t,e.propertyName),ly(a,t,""+e.pattern)}function oy(t,e,i,n){const r=ct(t,e);ji(r,n),i.appendChild(r)}function ly(t,e,i){oy(hy(t),"Literal",e,i)}function Hc(t,e,i){t==="2.0.0"?oy(UT[t],"ValueReference",e,i):oy(NT[t],"PropertyName",e,i)}function IW(t,e){const i=ct(Xs,"TimeInstant");t.appendChild(i);const n=ct(Xs,"timePosition");i.appendChild(n),ji(n,e)}function CW(t,e,i){const n=i[i.length-1],r=Object.assign({},n);r.node=t,Di(r,ay,Tr("Query"),e,i)}function hy(t){let e;return t==="2.0.0"?e=UT[t]:e=NT[t],e}const dDe=lDe;function ADe(t,e,i){var n=i||{},r=n.noTrailing,a=r===void 0?!1:r,s=n.noLeading,o=s===void 0?!1:s,l=n.debounceMode,h=l===void 0?void 0:l,u,c=!1,f=0;function g(){u&&clearTimeout(u)}function d(A){var p=A||{},m=p.upcomingOnly,y=m===void 0?!1:m;g(),c=!y}function v(){for(var A=arguments.length,p=new Array(A),m=0;m<A;m++)p[m]=arguments[m];var y=this,I=Date.now()-f;if(c)return;function _(){f=Date.now(),e.apply(y,p)}function C(){u=void 0}!o&&h&&!u&&_(),g(),h===void 0&&I>t?o?(f=Date.now(),a||(u=setTimeout(h?C:_,t))):_():a!==!0&&(u=setTimeout(h?C:_,h===void 0?t-I:t))}return v.cancel=d,v}const vDe={name:"v-gd-route",render(){return null},extends:wr,inject:["VMap"],props:{className:{type:String,default:"gd-route-layer"},layerId:{type:String,default(){return`traffic-layer-${$e()}`}},interval:{type:Number,default:3e4},colors:{type:Array,default(){return["rgba(0,192,73,0.99609375)","rgba(255,159,25,0.99609375)","#e80e0e","#b40000","#8f979c"]}},url:String,webGl:{type:Boolean,default:!1},lineWidth:{type:[Number,String],default:2},geometry:Object,inViewport:{type:Boolean,default:!0},lowLevel:{type:Number,default:14},highLevel:{type:Number,default:16}},data(){return{source:null,layer:null,eventList:["singleclick"],eventRender:[],timer:null}},computed:{map(){return this.VMap.map}},watch:{visible:{handler(t){return ze(this,null,function*(){this.timer&&(clearTimeout(this.timer),this.timer=null),this.layer.setVisible(t),this.layer&&this.layer.getVisible()&&(yield this.reload())})},immediate:!1},zIndex:{handler(t){this.layer.setZIndex(t)},immediate:!1},maxZoom:{handler(t){this.layer.setMaxZoom(t)},immediate:!1},minZoom:{handler(t){this.layer.setMinZoom(t)},immediate:!1},extent:{handler(t){this.layer.setExtent(t)},immediate:!1,deep:!0},webGl:{handler(){this.dispose(),this.init()},immediate:!1,deep:!0},geometry:{handler(){this.dispose(),this.init()},immediate:!1,deep:!0},inViewport:{handler(){this.dispose(),this.init()},immediate:!1,deep:!0}},methods:{getColor(t){return t===1?this.colors[0]:t===2?this.colors[1]:t===3?this.colors[2]:t===4?this.colors[3]:t===-1?this.colors[4]:this.colors[0]},getData(){return ze(this,null,function*(){const t=new FormData;t.append("f","geojson"),t.append("returnGeometry",!0),t.append("resultRecordCount",5e4);const e=this.map.getView().getZoom();if(e<this.lowLevel?t.append("where","roadclass in (1,2,3)"):e>=this.lowLevel&&e<this.highLevel?t.append("where","roadclass in (1,2,3,4)"):e>=this.highLevel&&t.append("where","roadclass in (1,2,3,4,5)"),this.inViewport){const n=this.map.getView().calculateExtent(this.map.getSize()),a={type:"Polygon",coordinates:[[[n[0],n[1]],[n[2],n[1]],[n[2],n[3]],[n[0],n[3]],[n[0],n[1]]]]};t.append("geometry",JSON.stringify(a))}else this.geometry&&Object.keys(this.geometry).length>0&&t.append("geometry",JSON.stringify(this.geometry));return fetch(this.url,{method:"POST",body:t}).then(i=>i.json()).then(i=>i)})},setLayer(){if(this.webGl){const t=He(Re({},this.$props),{source:this.source,style:{"stroke-color":["case",["==",["get","state"],1],this.colors[0],["==",["get","state"],2],this.colors[1],["==",["get","state"],3],this.colors[2],["==",["get","state"],4],this.colors[3],["==",["get","state"],-1],this.colors[4],this.colors[4]],"stroke-width":this.lineWidth}});return new Uve(t)}else{const t=He(Re({},this.$props),{source:this.source,style:e=>{const i=e.get("state"),n=this.getColor(Number(i));return new ut({stroke:new Lt({color:n,width:this.lineWidth})})}});return new ni(t)}},init(){return ze(this,null,function*(){!this.url||(this.source=new yn,this.layer=this.setLayer(),this.layer.set("id",this.layerId),this.layer.set("users",!0),this.zIndex&&this.layer.setZIndex(this.zIndex),this.map.addLayer(this.layer),this.eventList.forEach(t=>{this.eventRender.push(this.map.on(t,e=>this.eventHandler(t,e)))}),this.map.getView().once("change:resolution",()=>{this.map.once("moveend",t=>{this.zoomEnd(t)})}),this.layer&&this.layer.getVisible()&&(yield this.reload()))})},zoomEnd(t){return ze(this,null,function*(){this.layer&&this.layer.getVisible()&&(yield this.renderRoute()),t.map.once("moveend",e=>{this.zoomEnd(e)})})},renderRoute:ADe(2e3,function(){return ze(this,null,function*(){const t=yield this.getData(),{featureCount:e}=t;if(e>0){const i=new Ls().readFeatures(t);this.source&&(this.source.clear(),this.source.addFeatures(i),this.$emit("render",t))}})}),reload(){return ze(this,null,function*(){yield this.renderRoute(),this.timer=setTimeout(()=>ze(this,null,function*(){this.layer&&this.layer.getVisible()&&(yield this.reload())}),this.interval)})},eventHandler(t,e){const{pixel:i}=e,n=this.getFeatureAtPixel(i);this.$emit(t,e,n)},getFeatureAtPixel(t){return this.map.forEachFeatureAtPixel(t,(e,i)=>{var n;if((i==null?void 0:i.get("id"))===((n=this.layer)==null?void 0:n.get("id")))return e},{})},dispose(){this.timer&&(clearTimeout(this.timer),this.timer=null),this.eventRender.forEach(t=>{Lr(t)}),this.map.removeLayer(this.layer)}},mounted(){this.init()},beforeDestroy(){this.dispose()}};let pDe,mDe;const wW={};var EW=Ji(vDe,pDe,mDe,!1,yDe,null,null,null);function yDe(t){for(let e in wW)this[e]=wW[e]}EW.options.__file="src/components/layers/gd-route/index.vue";const vA=function(){return EW.exports}();vA.install=function(t){t.component(vA.name,vA)};const _De={name:"v-wfs",render(){return null},extends:wr,inject:["VMap"],components:{},props:{layerId:{type:String,default:`vector-layer-${$e()}`},options:{type:Object,default:()=>({})},layerStyle:{type:Object,default:()=>({})}},data(){return{vectorLayer:null,vectorSource:null,eventRender:[],eventList:["singleclick","pointermove"]}},computed:{map(){return this.VMap.map}},watch:{visible:{handler(t){this.vectorLayer.setVisible(t)},immediate:!1},zIndex:{handler(t){this.vectorLayer.setZIndex(t)},immediate:!1},maxZoom:{handler(t){this.vectorLayer.setMaxZoom(t)},immediate:!1},minZoom:{handler(t){this.vectorLayer.setMinZoom(t)},immediate:!1},extent:{handler(t){this.vectorLayer.setExtent(t)},immediate:!1,deep:!0}},methods:{init(){this.vectorSource=new yn,this.vectorLayer=new ni(He(Re({},this.$props),{source:this.vectorSource,style:t=>_u(t,this.layerStyle,this.map)})),this.vectorLayer.set("id",this.layerId),this.map.addLayer(this.vectorLayer),this.eventList.forEach(t=>{this.eventRender.push(this.map.on(t,e=>this.eventHandler(t,e)))}),this.addFeatures()},addFeatures(){if(!at(this.options,"featureNS"))throw new Error("featureNS is required");const t=new dDe().writeGetFeature(He(Re({},this.options),{outputFormat:"application/json"}));fetch(this.options.featureNS,{method:"POST",body:new XMLSerializer().serializeToString(t)}).then(function(e){return e.json()}).then(e=>{const i=new Ls().readFeatures(e);this.vectorSource.addFeatures(i)})},getFeatureAtPixel(t){return this.map.forEachFeatureAtPixel(t,(e,i)=>{var n;if((i==null?void 0:i.get("id"))===((n=this.vectorLayer)==null?void 0:n.get("id")))return e},{})},eventHandler(t,e){const{pixel:i}=e,n=this.getFeatureAtPixel(i);this.$emit(t,e,n)}},created(){},mounted(){this.init()}};let xDe,IDe;const SW={};var bW=Ji(_De,xDe,IDe,!1,CDe,null,null,null);function CDe(t){for(let e in SW)this[e]=SW[e]}bW.options.__file="src/components/layers/wfs/index.vue";const pA=function(){return bW.exports}();pA.install=function(t){t.component(pA.name,pA)};const BW=[xg,Rg,Dg,Ou,Qg,zg,qg,jg,Hg,$g,Wg,lA,hA,sA,fA,gA,vA,pA],jT=function(t){jT.installed||BW.forEach(e=>{t.component(e.name,e)})};typeof window!="undefined"&&window.Vue&&jT(window.Vue);const wDe=Re({install:jT},BW);class EDe extends Tl{decodeBlock(e){return e}}const SDe=Object.freeze(Object.defineProperty({__proto__:null,default:EDe},Symbol.toStringTag,{value:"Module"})),MW=9,HT=256,$T=257,bDe=12;function BDe(t,e,i){const n=e%8,r=Math.floor(e/8),a=8-n,s=e+i-(r+1)*8;let o=8*(r+2)-(e+i);const l=(r+2)*8-e;if(o=Math.max(0,o),r>=t.length)return $T;let h=t[r]&Bn(2,8-n)-1;h<<=i-a;let u=h;if(r+1<t.length){let c=t[r+1]>>>o;c<<=Math.max(0,i-l),u+=c}if(s>8&&r+2<t.length){const c=(r+3)*8-(e+i),f=t[r+2]>>>c;u+=f}return u}function WT(t,e){for(let i=e.length-1;i>=0;i--)t.push(e[i]);return t}function MDe(t){const e=new Uint16Array(4093),i=new Uint8Array(4093);for(let d=0;d<=257;d++)e[d]=4096,i[d]=d;let n=258,r=MW,a=0;function s(){n=258,r=MW}function o(d){const v=BDe(d,a,r);return a+=r,v}function l(d,v){return i[n]=v,e[n]=d,n++,n-1}function h(d){const v=[];for(let A=d;A!==4096;A=e[A])v.push(i[A]);return v}const u=[];s();const c=new Uint8Array(t);let f=o(c),g;for(;f!==$T;){if(f===HT){for(s(),f=o(c);f===HT;)f=o(c);if(f===$T)break;if(f>HT)throw new Error(`corrupted code at scanline ${f}`);{const d=h(f);WT(u,d),g=f}}else if(f<n){const d=h(f);WT(u,d),l(g,d[d.length-1]),g=f}else{const d=h(g);if(!d)throw new Error(`Bogus entry. Not in dictionary, ${g} / ${n}, position: ${a}`);WT(u,d),u.push(d[d.length-1]),l(g,d[d.length-1]),g=f}n+1>=Bn(2,r)&&(r===bDe?g=void 0:r++),f=o(c)}return new Uint8Array(u)}class TDe extends Tl{decodeBlock(e){return MDe(e).buffer}}const RDe=Object.freeze(Object.defineProperty({__proto__:null,default:TDe},Symbol.toStringTag,{value:"Module"})),mA=new Int32Array([0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]),uy=4017,cy=799,fy=3406,gy=2276,dy=1567,Ay=3784,$c=5793,vy=2896;function TW(t,e){let i=0;const n=[];let r=16;for(;r>0&&!t[r-1];)--r;n.push({children:[],index:0});let a=n[0],s;for(let o=0;o<r;o++){for(let l=0;l<t[o];l++){for(a=n.pop(),a.children[a.index]=e[i];a.index>0;)a=n.pop();for(a.index++,n.push(a);n.length<=o;)n.push(s={children:[],index:0}),a.children[a.index]=s.children,a=s;i++}o+1<r&&(n.push(s={children:[],index:0}),a.children[a.index]=s.children,a=s)}return n[0].children}function DDe(t,e,i,n,r,a,s,o,l){const{mcusPerLine:h,progressive:u}=i,c=e;let f=e,g=0,d=0;function v(){if(d>0)return d--,g>>d&1;if(g=t[f++],g===255){const F=t[f++];if(F)throw new Error(`unexpected marker: ${(g<<8|F).toString(16)}`)}return d=7,g>>>7}function A(F){let U=F,G;for(;(G=v())!==null;){if(U=U[G],typeof U=="number")return U;if(typeof U!="object")throw new Error("invalid huffman sequence")}return null}function p(F){let U=F,G=0;for(;U>0;){const q=v();if(q===null)return;G=G<<1|q,--U}return G}function m(F){const U=p(F);return U>=1<<F-1?U:U+(-1<<F)+1}function y(F,U){const G=A(F.huffmanTableDC),q=G===0?0:m(G);F.pred+=q,U[0]=F.pred;let V=1;for(;V<64;){const j=A(F.huffmanTableAC),$=j&15,X=j>>4;if($===0){if(X<15)break;V+=16}else{V+=X;const K=mA[V];U[K]=m($),V++}}}function I(F,U){const G=A(F.huffmanTableDC),q=G===0?0:m(G)<<l;F.pred+=q,U[0]=F.pred}function _(F,U){U[0]|=v()<<l}let C=0;function x(F,U){if(C>0){C--;return}let G=a;const q=s;for(;G<=q;){const V=A(F.huffmanTableAC),j=V&15,$=V>>4;if(j===0){if($<15){C=p($)+(1<<$)-1;break}G+=16}else{G+=$;const X=mA[G];U[X]=m(j)*(1<<l),G++}}}let w=0,E;function S(F,U){let G=a;const q=s;let V=0;for(;G<=q;){const j=mA[G],$=U[j]<0?-1:1;switch(w){case 0:{const X=A(F.huffmanTableAC),K=X&15;if(V=X>>4,K===0)V<15?(C=p(V)+(1<<V),w=4):(V=16,w=1);else{if(K!==1)throw new Error("invalid ACn encoding");E=m(K),w=V?2:3}continue}case 1:case 2:U[j]?U[j]+=(v()<<l)*$:(V--,V===0&&(w=w===2?3:0));break;case 3:U[j]?U[j]+=(v()<<l)*$:(U[j]=E<<l,w=0);break;case 4:U[j]&&(U[j]+=(v()<<l)*$);break}G++}w===4&&(C--,C===0&&(w=0))}function b(F,U,G,q,V){const j=G/h|0,$=G%h,X=j*F.v+q,K=$*F.h+V;U(F,F.blocks[X][K])}function B(F,U,G){const q=G/F.blocksPerLine|0,V=G%F.blocksPerLine;U(F,F.blocks[q][V])}const M=n.length;let R,T,D,P,Q,N;u?a===0?N=o===0?I:_:N=o===0?x:S:N=y;let O=0,L,z;M===1?z=n[0].blocksPerLine*n[0].blocksPerColumn:z=h*i.mcusPerColumn;const k=r||z;for(;O<z;){for(T=0;T<M;T++)n[T].pred=0;if(C=0,M===1)for(R=n[0],Q=0;Q<k;Q++)B(R,N,O),O++;else for(Q=0;Q<k;Q++){for(T=0;T<M;T++){R=n[T];const{h:F,v:U}=R;for(D=0;D<U;D++)for(P=0;P<F;P++)b(R,N,O,D,P)}if(O++,O===z)break}if(d=0,L=t[f]<<8|t[f+1],L<65280)throw new Error("marker was not found");if(L>=65488&&L<=65495)f+=2;else break}return f-c}function LDe(t,e){const i=[],{blocksPerLine:n,blocksPerColumn:r}=e,a=n<<3,s=new Int32Array(64),o=new Uint8Array(64);function l(h,u,c){const f=e.quantizationTable;let g,d,v,A,p,m,y,I,_;const C=c;let x;for(x=0;x<64;x++)C[x]=h[x]*f[x];for(x=0;x<8;++x){const w=8*x;if(C[1+w]===0&&C[2+w]===0&&C[3+w]===0&&C[4+w]===0&&C[5+w]===0&&C[6+w]===0&&C[7+w]===0){_=$c*C[0+w]+512>>10,C[0+w]=_,C[1+w]=_,C[2+w]=_,C[3+w]=_,C[4+w]=_,C[5+w]=_,C[6+w]=_,C[7+w]=_;continue}g=$c*C[0+w]+128>>8,d=$c*C[4+w]+128>>8,v=C[2+w],A=C[6+w],p=vy*(C[1+w]-C[7+w])+128>>8,I=vy*(C[1+w]+C[7+w])+128>>8,m=C[3+w]<<4,y=C[5+w]<<4,_=g-d+1>>1,g=g+d+1>>1,d=_,_=v*Ay+A*dy+128>>8,v=v*dy-A*Ay+128>>8,A=_,_=p-y+1>>1,p=p+y+1>>1,y=_,_=I+m+1>>1,m=I-m+1>>1,I=_,_=g-A+1>>1,g=g+A+1>>1,A=_,_=d-v+1>>1,d=d+v+1>>1,v=_,_=p*gy+I*fy+2048>>12,p=p*fy-I*gy+2048>>12,I=_,_=m*cy+y*uy+2048>>12,m=m*uy-y*cy+2048>>12,y=_,C[0+w]=g+I,C[7+w]=g-I,C[1+w]=d+y,C[6+w]=d-y,C[2+w]=v+m,C[5+w]=v-m,C[3+w]=A+p,C[4+w]=A-p}for(x=0;x<8;++x){const w=x;if(C[1*8+w]===0&&C[2*8+w]===0&&C[3*8+w]===0&&C[4*8+w]===0&&C[5*8+w]===0&&C[6*8+w]===0&&C[7*8+w]===0){_=$c*c[x+0]+8192>>14,C[0*8+w]=_,C[1*8+w]=_,C[2*8+w]=_,C[3*8+w]=_,C[4*8+w]=_,C[5*8+w]=_,C[6*8+w]=_,C[7*8+w]=_;continue}g=$c*C[0*8+w]+2048>>12,d=$c*C[4*8+w]+2048>>12,v=C[2*8+w],A=C[6*8+w],p=vy*(C[1*8+w]-C[7*8+w])+2048>>12,I=vy*(C[1*8+w]+C[7*8+w])+2048>>12,m=C[3*8+w],y=C[5*8+w],_=g-d+1>>1,g=g+d+1>>1,d=_,_=v*Ay+A*dy+2048>>12,v=v*dy-A*Ay+2048>>12,A=_,_=p-y+1>>1,p=p+y+1>>1,y=_,_=I+m+1>>1,m=I-m+1>>1,I=_,_=g-A+1>>1,g=g+A+1>>1,A=_,_=d-v+1>>1,d=d+v+1>>1,v=_,_=p*gy+I*fy+2048>>12,p=p*fy-I*gy+2048>>12,I=_,_=m*cy+y*uy+2048>>12,m=m*uy-y*cy+2048>>12,y=_,C[0*8+w]=g+I,C[7*8+w]=g-I,C[1*8+w]=d+y,C[6*8+w]=d-y,C[2*8+w]=v+m,C[5*8+w]=v-m,C[3*8+w]=A+p,C[4*8+w]=A-p}for(x=0;x<64;++x){const w=128+(C[x]+8>>4);w<0?u[x]=0:w>255?u[x]=255:u[x]=w}}for(let h=0;h<r;h++){const u=h<<3;for(let c=0;c<8;c++)i.push(new Uint8Array(a));for(let c=0;c<n;c++){l(e.blocks[h][c],o,s);let f=0;const g=c<<3;for(let d=0;d<8;d++){const v=i[u+d];for(let A=0;A<8;A++)v[g+A]=o[f++]}}}return i}class PDe{constructor(){this.jfif=null,this.adobe=null,this.quantizationTables=[],this.huffmanTablesAC=[],this.huffmanTablesDC=[],this.resetFrames()}resetFrames(){this.frames=[]}parse(e){let i=0;function n(){const o=e[i]<<8|e[i+1];return i+=2,o}function r(){const o=n(),l=e.subarray(i,i+o-2);return i+=l.length,l}function a(o){let l=0,h=0,u,c;for(c in o.components)o.components.hasOwnProperty(c)&&(u=o.components[c],l<u.h&&(l=u.h),h<u.v&&(h=u.v));const f=Math.ceil(o.samplesPerLine/8/l),g=Math.ceil(o.scanLines/8/h);for(c in o.components)if(o.components.hasOwnProperty(c)){u=o.components[c];const d=Math.ceil(Math.ceil(o.samplesPerLine/8)*u.h/l),v=Math.ceil(Math.ceil(o.scanLines/8)*u.v/h),A=f*u.h,p=g*u.v,m=[];for(let y=0;y<p;y++){const I=[];for(let _=0;_<A;_++)I.push(new Int32Array(64));m.push(I)}u.blocksPerLine=d,u.blocksPerColumn=v,u.blocks=m}o.maxH=l,o.maxV=h,o.mcusPerLine=f,o.mcusPerColumn=g}let s=n();if(s!==65496)throw new Error("SOI not found");for(s=n();s!==65497;){switch(s){case 65280:break;case 65504:case 65505:case 65506:case 65507:case 65508:case 65509:case 65510:case 65511:case 65512:case 65513:case 65514:case 65515:case 65516:case 65517:case 65518:case 65519:case 65534:{const o=r();s===65504&&o[0]===74&&o[1]===70&&o[2]===73&&o[3]===70&&o[4]===0&&(this.jfif={version:{major:o[5],minor:o[6]},densityUnits:o[7],xDensity:o[8]<<8|o[9],yDensity:o[10]<<8|o[11],thumbWidth:o[12],thumbHeight:o[13],thumbData:o.subarray(14,14+3*o[12]*o[13])}),s===65518&&o[0]===65&&o[1]===100&&o[2]===111&&o[3]===98&&o[4]===101&&o[5]===0&&(this.adobe={version:o[6],flags0:o[7]<<8|o[8],flags1:o[9]<<8|o[10],transformCode:o[11]});break}case 65499:{const l=n()+i-2;for(;i<l;){const h=e[i++],u=new Int32Array(64);if(h>>4===0)for(let c=0;c<64;c++){const f=mA[c];u[f]=e[i++]}else if(h>>4===1)for(let c=0;c<64;c++){const f=mA[c];u[f]=n()}else throw new Error("DQT: invalid table spec");this.quantizationTables[h&15]=u}break}case 65472:case 65473:case 65474:{n();const o={extended:s===65473,progressive:s===65474,precision:e[i++],scanLines:n(),samplesPerLine:n(),components:{},componentsOrder:[]},l=e[i++];let h;for(let u=0;u<l;u++){h=e[i];const c=e[i+1]>>4,f=e[i+1]&15,g=e[i+2];o.componentsOrder.push(h),o.components[h]={h:c,v:f,quantizationIdx:g},i+=3}a(o),this.frames.push(o);break}case 65476:{const o=n();for(let l=2;l<o;){const h=e[i++],u=new Uint8Array(16);let c=0;for(let g=0;g<16;g++,i++)u[g]=e[i],c+=u[g];const f=new Uint8Array(c);for(let g=0;g<c;g++,i++)f[g]=e[i];l+=17+c,h>>4===0?this.huffmanTablesDC[h&15]=TW(u,f):this.huffmanTablesAC[h&15]=TW(u,f)}break}case 65501:n(),this.resetInterval=n();break;case 65498:{n();const o=e[i++],l=[],h=this.frames[0];for(let d=0;d<o;d++){const v=h.components[e[i++]],A=e[i++];v.huffmanTableDC=this.huffmanTablesDC[A>>4],v.huffmanTableAC=this.huffmanTablesAC[A&15],l.push(v)}const u=e[i++],c=e[i++],f=e[i++],g=DDe(e,i,h,l,this.resetInterval,u,c,f>>4,f&15);i+=g;break}case 65535:e[i]!==255&&i--;break;default:if(e[i-3]===255&&e[i-2]>=192&&e[i-2]<=254){i-=3;break}throw new Error(`unknown JPEG marker ${s.toString(16)}`)}s=n()}}getResult(){const{frames:e}=this;if(this.frames.length===0)throw new Error("no frames were decoded");this.frames.length>1;for(let u=0;u<this.frames.length;u++){const c=this.frames[u].components;for(const f of Object.keys(c))c[f].quantizationTable=this.quantizationTables[c[f].quantizationIdx],delete c[f].quantizationIdx}const i=e[0],{components:n,componentsOrder:r}=i,a=[],s=i.samplesPerLine,o=i.scanLines;for(let u=0;u<r.length;u++){const c=n[r[u]];a.push({lines:LDe(i,c),scaleX:c.h/i.maxH,scaleY:c.v/i.maxV})}const l=new Uint8Array(s*o*a.length);let h=0;for(let u=0;u<o;++u)for(let c=0;c<s;++c)for(let f=0;f<a.length;++f){const g=a[f];l[h]=g.lines[0|u*g.scaleY][0|c*g.scaleX],++h}return l}}class kDe extends Tl{constructor(e){super(),this.reader=new PDe,e.JPEGTables&&this.reader.parse(e.JPEGTables)}decodeBlock(e){return this.reader.resetFrames(),this.reader.parse(new Uint8Array(e)),this.reader.getResult().buffer}}const FDe=Object.freeze(Object.defineProperty({__proto__:null,default:kDe},Symbol.toStringTag,{value:"Module"}));/*! pako 2.1.0 https://github.com/nodeca/pako @license (MIT AND Zlib) */const QDe=4,RW=0,DW=1,zDe=2;function Wc(t){let e=t.length;for(;--e>=0;)t[e]=0}const ODe=0,LW=1,NDe=2,GDe=3,UDe=258,YT=29,yA=256,_A=yA+1+YT,Yc=30,ZT=19,PW=2*_A+1,hh=15,XT=16,qDe=7,KT=256,kW=16,FW=17,QW=18,JT=new Uint8Array([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]),py=new Uint8Array([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]),VDe=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),zW=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),jDe=512,Ks=new Array((_A+2)*2);Wc(Ks);const xA=new Array(Yc*2);Wc(xA);const IA=new Array(jDe);Wc(IA);const CA=new Array(UDe-GDe+1);Wc(CA);const eR=new Array(YT);Wc(eR);const my=new Array(Yc);Wc(my);function tR(t,e,i,n,r){this.static_tree=t,this.extra_bits=e,this.extra_base=i,this.elems=n,this.max_length=r,this.has_stree=t&&t.length}let OW,NW,GW;function iR(t,e){this.dyn_tree=t,this.max_code=0,this.stat_desc=e}const UW=t=>t<256?IA[t]:IA[256+(t>>>7)],wA=(t,e)=>{t.pending_buf[t.pending++]=e&255,t.pending_buf[t.pending++]=e>>>8&255},gr=(t,e,i)=>{t.bi_valid>XT-i?(t.bi_buf|=e<<t.bi_valid&65535,wA(t,t.bi_buf),t.bi_buf=e>>XT-t.bi_valid,t.bi_valid+=i-XT):(t.bi_buf|=e<<t.bi_valid&65535,t.bi_valid+=i)},hs=(t,e,i)=>{gr(t,i[e*2],i[e*2+1])},qW=(t,e)=>{let i=0;do i|=t&1,t>>>=1,i<<=1;while(--e>0);return i>>>1},HDe=t=>{t.bi_valid===16?(wA(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)},$De=(t,e)=>{const i=e.dyn_tree,n=e.max_code,r=e.stat_desc.static_tree,a=e.stat_desc.has_stree,s=e.stat_desc.extra_bits,o=e.stat_desc.extra_base,l=e.stat_desc.max_length;let h,u,c,f,g,d,v=0;for(f=0;f<=hh;f++)t.bl_count[f]=0;for(i[t.heap[t.heap_max]*2+1]=0,h=t.heap_max+1;h<PW;h++)u=t.heap[h],f=i[i[u*2+1]*2+1]+1,f>l&&(f=l,v++),i[u*2+1]=f,!(u>n)&&(t.bl_count[f]++,g=0,u>=o&&(g=s[u-o]),d=i[u*2],t.opt_len+=d*(f+g),a&&(t.static_len+=d*(r[u*2+1]+g)));if(v!==0){do{for(f=l-1;t.bl_count[f]===0;)f--;t.bl_count[f]--,t.bl_count[f+1]+=2,t.bl_count[l]--,v-=2}while(v>0);for(f=l;f!==0;f--)for(u=t.bl_count[f];u!==0;)c=t.heap[--h],!(c>n)&&(i[c*2+1]!==f&&(t.opt_len+=(f-i[c*2+1])*i[c*2],i[c*2+1]=f),u--)}},VW=(t,e,i)=>{const n=new Array(hh+1);let r=0,a,s;for(a=1;a<=hh;a++)r=r+i[a-1]<<1,n[a]=r;for(s=0;s<=e;s++){let o=t[s*2+1];o!==0&&(t[s*2]=qW(n[o]++,o))}},WDe=()=>{let t,e,i,n,r;const a=new Array(hh+1);for(i=0,n=0;n<YT-1;n++)for(eR[n]=i,t=0;t<1<<JT[n];t++)CA[i++]=n;for(CA[i-1]=n,r=0,n=0;n<16;n++)for(my[n]=r,t=0;t<1<<py[n];t++)IA[r++]=n;for(r>>=7;n<Yc;n++)for(my[n]=r<<7,t=0;t<1<<py[n]-7;t++)IA[256+r++]=n;for(e=0;e<=hh;e++)a[e]=0;for(t=0;t<=143;)Ks[t*2+1]=8,t++,a[8]++;for(;t<=255;)Ks[t*2+1]=9,t++,a[9]++;for(;t<=279;)Ks[t*2+1]=7,t++,a[7]++;for(;t<=287;)Ks[t*2+1]=8,t++,a[8]++;for(VW(Ks,_A+1,a),t=0;t<Yc;t++)xA[t*2+1]=5,xA[t*2]=qW(t,5);OW=new tR(Ks,JT,yA+1,_A,hh),NW=new tR(xA,py,0,Yc,hh),GW=new tR(new Array(0),VDe,0,ZT,qDe)},jW=t=>{let e;for(e=0;e<_A;e++)t.dyn_ltree[e*2]=0;for(e=0;e<Yc;e++)t.dyn_dtree[e*2]=0;for(e=0;e<ZT;e++)t.bl_tree[e*2]=0;t.dyn_ltree[KT*2]=1,t.opt_len=t.static_len=0,t.sym_next=t.matches=0},HW=t=>{t.bi_valid>8?wA(t,t.bi_buf):t.bi_valid>0&&(t.pending_buf[t.pending++]=t.bi_buf),t.bi_buf=0,t.bi_valid=0},$W=(t,e,i,n)=>{const r=e*2,a=i*2;return t[r]<t[a]||t[r]===t[a]&&n[e]<=n[i]},nR=(t,e,i)=>{const n=t.heap[i];let r=i<<1;for(;r<=t.heap_len&&(r<t.heap_len&&$W(e,t.heap[r+1],t.heap[r],t.depth)&&r++,!$W(e,n,t.heap[r],t.depth));)t.heap[i]=t.heap[r],i=r,r<<=1;t.heap[i]=n},WW=(t,e,i)=>{let n,r,a=0,s,o;if(t.sym_next!==0)do n=t.pending_buf[t.sym_buf+a++]&255,n+=(t.pending_buf[t.sym_buf+a++]&255)<<8,r=t.pending_buf[t.sym_buf+a++],n===0?hs(t,r,e):(s=CA[r],hs(t,s+yA+1,e),o=JT[s],o!==0&&(r-=eR[s],gr(t,r,o)),n--,s=UW(n),hs(t,s,i),o=py[s],o!==0&&(n-=my[s],gr(t,n,o)));while(a<t.sym_next);hs(t,KT,e)},rR=(t,e)=>{const i=e.dyn_tree,n=e.stat_desc.static_tree,r=e.stat_desc.has_stree,a=e.stat_desc.elems;let s,o,l=-1,h;for(t.heap_len=0,t.heap_max=PW,s=0;s<a;s++)i[s*2]!==0?(t.heap[++t.heap_len]=l=s,t.depth[s]=0):i[s*2+1]=0;for(;t.heap_len<2;)h=t.heap[++t.heap_len]=l<2?++l:0,i[h*2]=1,t.depth[h]=0,t.opt_len--,r&&(t.static_len-=n[h*2+1]);for(e.max_code=l,s=t.heap_len>>1;s>=1;s--)nR(t,i,s);h=a;do s=t.heap[1],t.heap[1]=t.heap[t.heap_len--],nR(t,i,1),o=t.heap[1],t.heap[--t.heap_max]=s,t.heap[--t.heap_max]=o,i[h*2]=i[s*2]+i[o*2],t.depth[h]=(t.depth[s]>=t.depth[o]?t.depth[s]:t.depth[o])+1,i[s*2+1]=i[o*2+1]=h,t.heap[1]=h++,nR(t,i,1);while(t.heap_len>=2);t.heap[--t.heap_max]=t.heap[1],$De(t,e),VW(i,l,t.bl_count)},YW=(t,e,i)=>{let n,r=-1,a,s=e[0*2+1],o=0,l=7,h=4;for(s===0&&(l=138,h=3),e[(i+1)*2+1]=65535,n=0;n<=i;n++)a=s,s=e[(n+1)*2+1],!(++o<l&&a===s)&&(o<h?t.bl_tree[a*2]+=o:a!==0?(a!==r&&t.bl_tree[a*2]++,t.bl_tree[kW*2]++):o<=10?t.bl_tree[FW*2]++:t.bl_tree[QW*2]++,o=0,r=a,s===0?(l=138,h=3):a===s?(l=6,h=3):(l=7,h=4))},ZW=(t,e,i)=>{let n,r=-1,a,s=e[0*2+1],o=0,l=7,h=4;for(s===0&&(l=138,h=3),n=0;n<=i;n++)if(a=s,s=e[(n+1)*2+1],!(++o<l&&a===s)){if(o<h)do hs(t,a,t.bl_tree);while(--o!==0);else a!==0?(a!==r&&(hs(t,a,t.bl_tree),o--),hs(t,kW,t.bl_tree),gr(t,o-3,2)):o<=10?(hs(t,FW,t.bl_tree),gr(t,o-3,3)):(hs(t,QW,t.bl_tree),gr(t,o-11,7));o=0,r=a,s===0?(l=138,h=3):a===s?(l=6,h=3):(l=7,h=4)}},YDe=t=>{let e;for(YW(t,t.dyn_ltree,t.l_desc.max_code),YW(t,t.dyn_dtree,t.d_desc.max_code),rR(t,t.bl_desc),e=ZT-1;e>=3&&t.bl_tree[zW[e]*2+1]===0;e--);return t.opt_len+=3*(e+1)+5+5+4,e},ZDe=(t,e,i,n)=>{let r;for(gr(t,e-257,5),gr(t,i-1,5),gr(t,n-4,4),r=0;r<n;r++)gr(t,t.bl_tree[zW[r]*2+1],3);ZW(t,t.dyn_ltree,e-1),ZW(t,t.dyn_dtree,i-1)},XDe=t=>{let e=4093624447,i;for(i=0;i<=31;i++,e>>>=1)if(e&1&&t.dyn_ltree[i*2]!==0)return RW;if(t.dyn_ltree[9*2]!==0||t.dyn_ltree[10*2]!==0||t.dyn_ltree[13*2]!==0)return DW;for(i=32;i<yA;i++)if(t.dyn_ltree[i*2]!==0)return DW;return RW};let XW=!1;const KDe=t=>{XW||(WDe(),XW=!0),t.l_desc=new iR(t.dyn_ltree,OW),t.d_desc=new iR(t.dyn_dtree,NW),t.bl_desc=new iR(t.bl_tree,GW),t.bi_buf=0,t.bi_valid=0,jW(t)},KW=(t,e,i,n)=>{gr(t,(ODe<<1)+(n?1:0),3),HW(t),wA(t,i),wA(t,~i),i&&t.pending_buf.set(t.window.subarray(e,e+i),t.pending),t.pending+=i},JDe=t=>{gr(t,LW<<1,3),hs(t,KT,Ks),HDe(t)},eLe=(t,e,i,n)=>{let r,a,s=0;t.level>0?(t.strm.data_type===zDe&&(t.strm.data_type=XDe(t)),rR(t,t.l_desc),rR(t,t.d_desc),s=YDe(t),r=t.opt_len+3+7>>>3,a=t.static_len+3+7>>>3,a<=r&&(r=a)):r=a=i+5,i+4<=r&&e!==-1?KW(t,e,i,n):t.strategy===QDe||a===r?(gr(t,(LW<<1)+(n?1:0),3),WW(t,Ks,xA)):(gr(t,(NDe<<1)+(n?1:0),3),ZDe(t,t.l_desc.max_code+1,t.d_desc.max_code+1,s+1),WW(t,t.dyn_ltree,t.dyn_dtree)),jW(t),n&&HW(t)},tLe=(t,e,i)=>(t.pending_buf[t.sym_buf+t.sym_next++]=e,t.pending_buf[t.sym_buf+t.sym_next++]=e>>8,t.pending_buf[t.sym_buf+t.sym_next++]=i,e===0?t.dyn_ltree[i*2]++:(t.matches++,e--,t.dyn_ltree[(CA[i]+yA+1)*2]++,t.dyn_dtree[UW(e)*2]++),t.sym_next===t.sym_end);var iLe=KDe,nLe=KW,rLe=eLe,aLe=tLe,sLe=JDe,oLe={_tr_init:iLe,_tr_stored_block:nLe,_tr_flush_block:rLe,_tr_tally:aLe,_tr_align:sLe},EA=(t,e,i,n)=>{let r=t&65535|0,a=t>>>16&65535|0,s=0;for(;i!==0;){s=i>2e3?2e3:i,i-=s;do r=r+e[n++]|0,a=a+r|0;while(--s);r%=65521,a%=65521}return r|a<<16|0};const lLe=()=>{let t,e=[];for(var i=0;i<256;i++){t=i;for(var n=0;n<8;n++)t=t&1?3988292384^t>>>1:t>>>1;e[i]=t}return e},hLe=new Uint32Array(lLe());var fn=(t,e,i,n)=>{const r=hLe,a=n+i;t^=-1;for(let s=n;s<a;s++)t=t>>>8^r[(t^e[s])&255];return t^-1},Zc={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"},SA={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_MEM_ERROR:-4,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};const{_tr_init:uLe,_tr_stored_block:aR,_tr_flush_block:cLe,_tr_tally:nl,_tr_align:fLe}=oLe,{Z_NO_FLUSH:rl,Z_PARTIAL_FLUSH:gLe,Z_FULL_FLUSH:dLe,Z_FINISH:Zr,Z_BLOCK:JW,Z_OK:Sn,Z_STREAM_END:eY,Z_STREAM_ERROR:us,Z_DATA_ERROR:ALe,Z_BUF_ERROR:sR,Z_DEFAULT_COMPRESSION:vLe,Z_FILTERED:pLe,Z_HUFFMAN_ONLY:yy,Z_RLE:mLe,Z_FIXED:yLe,Z_DEFAULT_STRATEGY:_Le,Z_UNKNOWN:xLe,Z_DEFLATED:_y}=SA,ILe=9,CLe=15,wLe=8,ELe=29,oR=256+1+ELe,SLe=30,bLe=19,BLe=2*oR+1,MLe=15,Rt=3,al=258,cs=al+Rt+1,TLe=32,Xc=42,lR=57,hR=69,uR=73,cR=91,fR=103,uh=113,bA=666,Zn=1,Kc=2,ch=3,Jc=4,RLe=3,fh=(t,e)=>(t.msg=Zc[e],e),tY=t=>t*2-(t>4?9:0),sl=t=>{let e=t.length;for(;--e>=0;)t[e]=0},DLe=t=>{let e,i,n,r=t.w_size;e=t.hash_size,n=e;do i=t.head[--n],t.head[n]=i>=r?i-r:0;while(--e);e=r,n=e;do i=t.prev[--n],t.prev[n]=i>=r?i-r:0;while(--e)};let ol=(t,e,i)=>(e<<t.hash_shift^i)&t.hash_mask;const Rr=t=>{const e=t.state;let i=e.pending;i>t.avail_out&&(i=t.avail_out),i!==0&&(t.output.set(e.pending_buf.subarray(e.pending_out,e.pending_out+i),t.next_out),t.next_out+=i,e.pending_out+=i,t.total_out+=i,t.avail_out-=i,e.pending-=i,e.pending===0&&(e.pending_out=0))},Dr=(t,e)=>{cLe(t,t.block_start>=0?t.block_start:-1,t.strstart-t.block_start,e),t.block_start=t.strstart,Rr(t.strm)},Gt=(t,e)=>{t.pending_buf[t.pending++]=e},BA=(t,e)=>{t.pending_buf[t.pending++]=e>>>8&255,t.pending_buf[t.pending++]=e&255},gR=(t,e,i,n)=>{let r=t.avail_in;return r>n&&(r=n),r===0?0:(t.avail_in-=r,e.set(t.input.subarray(t.next_in,t.next_in+r),i),t.state.wrap===1?t.adler=EA(t.adler,e,r,i):t.state.wrap===2&&(t.adler=fn(t.adler,e,r,i)),t.next_in+=r,t.total_in+=r,r)},iY=(t,e)=>{let i=t.max_chain_length,n=t.strstart,r,a,s=t.prev_length,o=t.nice_match;const l=t.strstart>t.w_size-cs?t.strstart-(t.w_size-cs):0,h=t.window,u=t.w_mask,c=t.prev,f=t.strstart+al;let g=h[n+s-1],d=h[n+s];t.prev_length>=t.good_match&&(i>>=2),o>t.lookahead&&(o=t.lookahead);do if(r=e,!(h[r+s]!==d||h[r+s-1]!==g||h[r]!==h[n]||h[++r]!==h[n+1])){n+=2,r++;do;while(h[++n]===h[++r]&&h[++n]===h[++r]&&h[++n]===h[++r]&&h[++n]===h[++r]&&h[++n]===h[++r]&&h[++n]===h[++r]&&h[++n]===h[++r]&&h[++n]===h[++r]&&n<f);if(a=al-(f-n),n=f-al,a>s){if(t.match_start=e,s=a,a>=o)break;g=h[n+s-1],d=h[n+s]}}while((e=c[e&u])>l&&--i!==0);return s<=t.lookahead?s:t.lookahead},ef=t=>{const e=t.w_size;let i,n,r;do{if(n=t.window_size-t.lookahead-t.strstart,t.strstart>=e+(e-cs)&&(t.window.set(t.window.subarray(e,e+e-n),0),t.match_start-=e,t.strstart-=e,t.block_start-=e,t.insert>t.strstart&&(t.insert=t.strstart),DLe(t),n+=e),t.strm.avail_in===0)break;if(i=gR(t.strm,t.window,t.strstart+t.lookahead,n),t.lookahead+=i,t.lookahead+t.insert>=Rt)for(r=t.strstart-t.insert,t.ins_h=t.window[r],t.ins_h=ol(t,t.ins_h,t.window[r+1]);t.insert&&(t.ins_h=ol(t,t.ins_h,t.window[r+Rt-1]),t.prev[r&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=r,r++,t.insert--,!(t.lookahead+t.insert<Rt)););}while(t.lookahead<cs&&t.strm.avail_in!==0)},nY=(t,e)=>{let i=t.pending_buf_size-5>t.w_size?t.w_size:t.pending_buf_size-5,n,r,a,s=0,o=t.strm.avail_in;do{if(n=65535,a=t.bi_valid+42>>3,t.strm.avail_out<a||(a=t.strm.avail_out-a,r=t.strstart-t.block_start,n>r+t.strm.avail_in&&(n=r+t.strm.avail_in),n>a&&(n=a),n<i&&(n===0&&e!==Zr||e===rl||n!==r+t.strm.avail_in)))break;s=e===Zr&&n===r+t.strm.avail_in?1:0,aR(t,0,0,s),t.pending_buf[t.pending-4]=n,t.pending_buf[t.pending-3]=n>>8,t.pending_buf[t.pending-2]=~n,t.pending_buf[t.pending-1]=~n>>8,Rr(t.strm),r&&(r>n&&(r=n),t.strm.output.set(t.window.subarray(t.block_start,t.block_start+r),t.strm.next_out),t.strm.next_out+=r,t.strm.avail_out-=r,t.strm.total_out+=r,t.block_start+=r,n-=r),n&&(gR(t.strm,t.strm.output,t.strm.next_out,n),t.strm.next_out+=n,t.strm.avail_out-=n,t.strm.total_out+=n)}while(s===0);return o-=t.strm.avail_in,o&&(o>=t.w_size?(t.matches=2,t.window.set(t.strm.input.subarray(t.strm.next_in-t.w_size,t.strm.next_in),0),t.strstart=t.w_size,t.insert=t.strstart):(t.window_size-t.strstart<=o&&(t.strstart-=t.w_size,t.window.set(t.window.subarray(t.w_size,t.w_size+t.strstart),0),t.matches<2&&t.matches++,t.insert>t.strstart&&(t.insert=t.strstart)),t.window.set(t.strm.input.subarray(t.strm.next_in-o,t.strm.next_in),t.strstart),t.strstart+=o,t.insert+=o>t.w_size-t.insert?t.w_size-t.insert:o),t.block_start=t.strstart),t.high_water<t.strstart&&(t.high_water=t.strstart),s?Jc:e!==rl&&e!==Zr&&t.strm.avail_in===0&&t.strstart===t.block_start?Kc:(a=t.window_size-t.strstart,t.strm.avail_in>a&&t.block_start>=t.w_size&&(t.block_start-=t.w_size,t.strstart-=t.w_size,t.window.set(t.window.subarray(t.w_size,t.w_size+t.strstart),0),t.matches<2&&t.matches++,a+=t.w_size,t.insert>t.strstart&&(t.insert=t.strstart)),a>t.strm.avail_in&&(a=t.strm.avail_in),a&&(gR(t.strm,t.window,t.strstart,a),t.strstart+=a,t.insert+=a>t.w_size-t.insert?t.w_size-t.insert:a),t.high_water<t.strstart&&(t.high_water=t.strstart),a=t.bi_valid+42>>3,a=t.pending_buf_size-a>65535?65535:t.pending_buf_size-a,i=a>t.w_size?t.w_size:a,r=t.strstart-t.block_start,(r>=i||(r||e===Zr)&&e!==rl&&t.strm.avail_in===0&&r<=a)&&(n=r>a?a:r,s=e===Zr&&t.strm.avail_in===0&&n===r?1:0,aR(t,t.block_start,n,s),t.block_start+=n,Rr(t.strm)),s?ch:Zn)},dR=(t,e)=>{let i,n;for(;;){if(t.lookahead<cs){if(ef(t),t.lookahead<cs&&e===rl)return Zn;if(t.lookahead===0)break}if(i=0,t.lookahead>=Rt&&(t.ins_h=ol(t,t.ins_h,t.window[t.strstart+Rt-1]),i=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),i!==0&&t.strstart-i<=t.w_size-cs&&(t.match_length=iY(t,i)),t.match_length>=Rt)if(n=nl(t,t.strstart-t.match_start,t.match_length-Rt),t.lookahead-=t.match_length,t.match_length<=t.max_lazy_match&&t.lookahead>=Rt){t.match_length--;do t.strstart++,t.ins_h=ol(t,t.ins_h,t.window[t.strstart+Rt-1]),i=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=ol(t,t.ins_h,t.window[t.strstart+1]);else n=nl(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++;if(n&&(Dr(t,!1),t.strm.avail_out===0))return Zn}return t.insert=t.strstart<Rt-1?t.strstart:Rt-1,e===Zr?(Dr(t,!0),t.strm.avail_out===0?ch:Jc):t.sym_next&&(Dr(t,!1),t.strm.avail_out===0)?Zn:Kc},tf=(t,e)=>{let i,n,r;for(;;){if(t.lookahead<cs){if(ef(t),t.lookahead<cs&&e===rl)return Zn;if(t.lookahead===0)break}if(i=0,t.lookahead>=Rt&&(t.ins_h=ol(t,t.ins_h,t.window[t.strstart+Rt-1]),i=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=Rt-1,i!==0&&t.prev_length<t.max_lazy_match&&t.strstart-i<=t.w_size-cs&&(t.match_length=iY(t,i),t.match_length<=5&&(t.strategy===pLe||t.match_length===Rt&&t.strstart-t.match_start>4096)&&(t.match_length=Rt-1)),t.prev_length>=Rt&&t.match_length<=t.prev_length){r=t.strstart+t.lookahead-Rt,n=nl(t,t.strstart-1-t.prev_match,t.prev_length-Rt),t.lookahead-=t.prev_length-1,t.prev_length-=2;do++t.strstart<=r&&(t.ins_h=ol(t,t.ins_h,t.window[t.strstart+Rt-1]),i=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=Rt-1,t.strstart++,n&&(Dr(t,!1),t.strm.avail_out===0))return Zn}else if(t.match_available){if(n=nl(t,0,t.window[t.strstart-1]),n&&Dr(t,!1),t.strstart++,t.lookahead--,t.strm.avail_out===0)return Zn}else t.match_available=1,t.strstart++,t.lookahead--}return t.match_available&&(n=nl(t,0,t.window[t.strstart-1]),t.match_available=0),t.insert=t.strstart<Rt-1?t.strstart:Rt-1,e===Zr?(Dr(t,!0),t.strm.avail_out===0?ch:Jc):t.sym_next&&(Dr(t,!1),t.strm.avail_out===0)?Zn:Kc},LLe=(t,e)=>{let i,n,r,a;const s=t.window;for(;;){if(t.lookahead<=al){if(ef(t),t.lookahead<=al&&e===rl)return Zn;if(t.lookahead===0)break}if(t.match_length=0,t.lookahead>=Rt&&t.strstart>0&&(r=t.strstart-1,n=s[r],n===s[++r]&&n===s[++r]&&n===s[++r])){a=t.strstart+al;do;while(n===s[++r]&&n===s[++r]&&n===s[++r]&&n===s[++r]&&n===s[++r]&&n===s[++r]&&n===s[++r]&&n===s[++r]&&r<a);t.match_length=al-(a-r),t.match_length>t.lookahead&&(t.match_length=t.lookahead)}if(t.match_length>=Rt?(i=nl(t,1,t.match_length-Rt),t.lookahead-=t.match_length,t.strstart+=t.match_length,t.match_length=0):(i=nl(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++),i&&(Dr(t,!1),t.strm.avail_out===0))return Zn}return t.insert=0,e===Zr?(Dr(t,!0),t.strm.avail_out===0?ch:Jc):t.sym_next&&(Dr(t,!1),t.strm.avail_out===0)?Zn:Kc},PLe=(t,e)=>{let i;for(;;){if(t.lookahead===0&&(ef(t),t.lookahead===0)){if(e===rl)return Zn;break}if(t.match_length=0,i=nl(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++,i&&(Dr(t,!1),t.strm.avail_out===0))return Zn}return t.insert=0,e===Zr?(Dr(t,!0),t.strm.avail_out===0?ch:Jc):t.sym_next&&(Dr(t,!1),t.strm.avail_out===0)?Zn:Kc};function fs(t,e,i,n,r){this.good_length=t,this.max_lazy=e,this.nice_length=i,this.max_chain=n,this.func=r}const MA=[new fs(0,0,0,0,nY),new fs(4,4,8,4,dR),new fs(4,5,16,8,dR),new fs(4,6,32,32,dR),new fs(4,4,16,16,tf),new fs(8,16,32,32,tf),new fs(8,16,128,128,tf),new fs(8,32,128,256,tf),new fs(32,128,258,1024,tf),new fs(32,258,258,4096,tf)],kLe=t=>{t.window_size=2*t.w_size,sl(t.head),t.max_lazy_match=MA[t.level].max_lazy,t.good_match=MA[t.level].good_length,t.nice_match=MA[t.level].nice_length,t.max_chain_length=MA[t.level].max_chain,t.strstart=0,t.block_start=0,t.lookahead=0,t.insert=0,t.match_length=t.prev_length=Rt-1,t.match_available=0,t.ins_h=0};function FLe(){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=_y,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 Uint16Array(BLe*2),this.dyn_dtree=new Uint16Array((2*SLe+1)*2),this.bl_tree=new Uint16Array((2*bLe+1)*2),sl(this.dyn_ltree),sl(this.dyn_dtree),sl(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(MLe+1),this.heap=new Uint16Array(2*oR+1),sl(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(2*oR+1),sl(this.depth),this.sym_buf=0,this.lit_bufsize=0,this.sym_next=0,this.sym_end=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}const TA=t=>{if(!t)return 1;const e=t.state;return!e||e.strm!==t||e.status!==Xc&&e.status!==lR&&e.status!==hR&&e.status!==uR&&e.status!==cR&&e.status!==fR&&e.status!==uh&&e.status!==bA?1:0},rY=t=>{if(TA(t))return fh(t,us);t.total_in=t.total_out=0,t.data_type=xLe;const e=t.state;return e.pending=0,e.pending_out=0,e.wrap<0&&(e.wrap=-e.wrap),e.status=e.wrap===2?lR:e.wrap?Xc:uh,t.adler=e.wrap===2?0:1,e.last_flush=-2,uLe(e),Sn},aY=t=>{const e=rY(t);return e===Sn&&kLe(t.state),e},QLe=(t,e)=>TA(t)||t.state.wrap!==2?us:(t.state.gzhead=e,Sn),sY=(t,e,i,n,r,a)=>{if(!t)return us;let s=1;if(e===vLe&&(e=6),n<0?(s=0,n=-n):n>15&&(s=2,n-=16),r<1||r>ILe||i!==_y||n<8||n>15||e<0||e>9||a<0||a>yLe||n===8&&s!==1)return fh(t,us);n===8&&(n=9);const o=new FLe;return t.state=o,o.strm=t,o.status=Xc,o.wrap=s,o.gzhead=null,o.w_bits=n,o.w_size=1<<o.w_bits,o.w_mask=o.w_size-1,o.hash_bits=r+7,o.hash_size=1<<o.hash_bits,o.hash_mask=o.hash_size-1,o.hash_shift=~~((o.hash_bits+Rt-1)/Rt),o.window=new Uint8Array(o.w_size*2),o.head=new Uint16Array(o.hash_size),o.prev=new Uint16Array(o.w_size),o.lit_bufsize=1<<r+6,o.pending_buf_size=o.lit_bufsize*4,o.pending_buf=new Uint8Array(o.pending_buf_size),o.sym_buf=o.lit_bufsize,o.sym_end=(o.lit_bufsize-1)*3,o.level=e,o.strategy=a,o.method=i,aY(t)},zLe=(t,e)=>sY(t,e,_y,CLe,wLe,_Le),OLe=(t,e)=>{if(TA(t)||e>JW||e<0)return t?fh(t,us):us;const i=t.state;if(!t.output||t.avail_in!==0&&!t.input||i.status===bA&&e!==Zr)return fh(t,t.avail_out===0?sR:us);const n=i.last_flush;if(i.last_flush=e,i.pending!==0){if(Rr(t),t.avail_out===0)return i.last_flush=-1,Sn}else if(t.avail_in===0&&tY(e)<=tY(n)&&e!==Zr)return fh(t,sR);if(i.status===bA&&t.avail_in!==0)return fh(t,sR);if(i.status===Xc&&i.wrap===0&&(i.status=uh),i.status===Xc){let r=_y+(i.w_bits-8<<4)<<8,a=-1;if(i.strategy>=yy||i.level<2?a=0:i.level<6?a=1:i.level===6?a=2:a=3,r|=a<<6,i.strstart!==0&&(r|=TLe),r+=31-r%31,BA(i,r),i.strstart!==0&&(BA(i,t.adler>>>16),BA(i,t.adler&65535)),t.adler=1,i.status=uh,Rr(t),i.pending!==0)return i.last_flush=-1,Sn}if(i.status===lR){if(t.adler=0,Gt(i,31),Gt(i,139),Gt(i,8),i.gzhead)Gt(i,(i.gzhead.text?1:0)+(i.gzhead.hcrc?2:0)+(i.gzhead.extra?4:0)+(i.gzhead.name?8:0)+(i.gzhead.comment?16:0)),Gt(i,i.gzhead.time&255),Gt(i,i.gzhead.time>>8&255),Gt(i,i.gzhead.time>>16&255),Gt(i,i.gzhead.time>>24&255),Gt(i,i.level===9?2:i.strategy>=yy||i.level<2?4:0),Gt(i,i.gzhead.os&255),i.gzhead.extra&&i.gzhead.extra.length&&(Gt(i,i.gzhead.extra.length&255),Gt(i,i.gzhead.extra.length>>8&255)),i.gzhead.hcrc&&(t.adler=fn(t.adler,i.pending_buf,i.pending,0)),i.gzindex=0,i.status=hR;else if(Gt(i,0),Gt(i,0),Gt(i,0),Gt(i,0),Gt(i,0),Gt(i,i.level===9?2:i.strategy>=yy||i.level<2?4:0),Gt(i,RLe),i.status=uh,Rr(t),i.pending!==0)return i.last_flush=-1,Sn}if(i.status===hR){if(i.gzhead.extra){let r=i.pending,a=(i.gzhead.extra.length&65535)-i.gzindex;for(;i.pending+a>i.pending_buf_size;){let o=i.pending_buf_size-i.pending;if(i.pending_buf.set(i.gzhead.extra.subarray(i.gzindex,i.gzindex+o),i.pending),i.pending=i.pending_buf_size,i.gzhead.hcrc&&i.pending>r&&(t.adler=fn(t.adler,i.pending_buf,i.pending-r,r)),i.gzindex+=o,Rr(t),i.pending!==0)return i.last_flush=-1,Sn;r=0,a-=o}let s=new Uint8Array(i.gzhead.extra);i.pending_buf.set(s.subarray(i.gzindex,i.gzindex+a),i.pending),i.pending+=a,i.gzhead.hcrc&&i.pending>r&&(t.adler=fn(t.adler,i.pending_buf,i.pending-r,r)),i.gzindex=0}i.status=uR}if(i.status===uR){if(i.gzhead.name){let r=i.pending,a;do{if(i.pending===i.pending_buf_size){if(i.gzhead.hcrc&&i.pending>r&&(t.adler=fn(t.adler,i.pending_buf,i.pending-r,r)),Rr(t),i.pending!==0)return i.last_flush=-1,Sn;r=0}i.gzindex<i.gzhead.name.length?a=i.gzhead.name.charCodeAt(i.gzindex++)&255:a=0,Gt(i,a)}while(a!==0);i.gzhead.hcrc&&i.pending>r&&(t.adler=fn(t.adler,i.pending_buf,i.pending-r,r)),i.gzindex=0}i.status=cR}if(i.status===cR){if(i.gzhead.comment){let r=i.pending,a;do{if(i.pending===i.pending_buf_size){if(i.gzhead.hcrc&&i.pending>r&&(t.adler=fn(t.adler,i.pending_buf,i.pending-r,r)),Rr(t),i.pending!==0)return i.last_flush=-1,Sn;r=0}i.gzindex<i.gzhead.comment.length?a=i.gzhead.comment.charCodeAt(i.gzindex++)&255:a=0,Gt(i,a)}while(a!==0);i.gzhead.hcrc&&i.pending>r&&(t.adler=fn(t.adler,i.pending_buf,i.pending-r,r))}i.status=fR}if(i.status===fR){if(i.gzhead.hcrc){if(i.pending+2>i.pending_buf_size&&(Rr(t),i.pending!==0))return i.last_flush=-1,Sn;Gt(i,t.adler&255),Gt(i,t.adler>>8&255),t.adler=0}if(i.status=uh,Rr(t),i.pending!==0)return i.last_flush=-1,Sn}if(t.avail_in!==0||i.lookahead!==0||e!==rl&&i.status!==bA){let r=i.level===0?nY(i,e):i.strategy===yy?PLe(i,e):i.strategy===mLe?LLe(i,e):MA[i.level].func(i,e);if((r===ch||r===Jc)&&(i.status=bA),r===Zn||r===ch)return t.avail_out===0&&(i.last_flush=-1),Sn;if(r===Kc&&(e===gLe?fLe(i):e!==JW&&(aR(i,0,0,!1),e===dLe&&(sl(i.head),i.lookahead===0&&(i.strstart=0,i.block_start=0,i.insert=0))),Rr(t),t.avail_out===0))return i.last_flush=-1,Sn}return e!==Zr?Sn:i.wrap<=0?eY:(i.wrap===2?(Gt(i,t.adler&255),Gt(i,t.adler>>8&255),Gt(i,t.adler>>16&255),Gt(i,t.adler>>24&255),Gt(i,t.total_in&255),Gt(i,t.total_in>>8&255),Gt(i,t.total_in>>16&255),Gt(i,t.total_in>>24&255)):(BA(i,t.adler>>>16),BA(i,t.adler&65535)),Rr(t),i.wrap>0&&(i.wrap=-i.wrap),i.pending!==0?Sn:eY)},NLe=t=>{if(TA(t))return us;const e=t.state.status;return t.state=null,e===uh?fh(t,ALe):Sn},GLe=(t,e)=>{let i=e.length;if(TA(t))return us;const n=t.state,r=n.wrap;if(r===2||r===1&&n.status!==Xc||n.lookahead)return us;if(r===1&&(t.adler=EA(t.adler,e,i,0)),n.wrap=0,i>=n.w_size){r===0&&(sl(n.head),n.strstart=0,n.block_start=0,n.insert=0);let l=new Uint8Array(n.w_size);l.set(e.subarray(i-n.w_size,i),0),e=l,i=n.w_size}const a=t.avail_in,s=t.next_in,o=t.input;for(t.avail_in=i,t.next_in=0,t.input=e,ef(n);n.lookahead>=Rt;){let l=n.strstart,h=n.lookahead-(Rt-1);do n.ins_h=ol(n,n.ins_h,n.window[l+Rt-1]),n.prev[l&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=l,l++;while(--h);n.strstart=l,n.lookahead=Rt-1,ef(n)}return n.strstart+=n.lookahead,n.block_start=n.strstart,n.insert=n.lookahead,n.lookahead=0,n.match_length=n.prev_length=Rt-1,n.match_available=0,t.next_in=s,t.input=o,t.avail_in=a,n.wrap=r,Sn};var ULe=zLe,qLe=sY,VLe=aY,jLe=rY,HLe=QLe,$Le=OLe,WLe=NLe,YLe=GLe,ZLe="pako deflate (from Nodeca project)",RA={deflateInit:ULe,deflateInit2:qLe,deflateReset:VLe,deflateResetKeep:jLe,deflateSetHeader:HLe,deflate:$Le,deflateEnd:WLe,deflateSetDictionary:YLe,deflateInfo:ZLe};const XLe=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var KLe=function(t){const e=Array.prototype.slice.call(arguments,1);for(;e.length;){const i=e.shift();if(!!i){if(typeof i!="object")throw new TypeError(i+"must be non-object");for(const n in i)XLe(i,n)&&(t[n]=i[n])}}return t},JLe=t=>{let e=0;for(let n=0,r=t.length;n<r;n++)e+=t[n].length;const i=new Uint8Array(e);for(let n=0,r=0,a=t.length;n<a;n++){let s=t[n];i.set(s,r),r+=s.length}return i},xy={assign:KLe,flattenChunks:JLe};let oY=!0;try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(t){oY=!1}const DA=new Uint8Array(256);for(let t=0;t<256;t++)DA[t]=t>=252?6:t>=248?5:t>=240?4:t>=224?3:t>=192?2:1;DA[254]=DA[254]=1;var ePe=t=>{if(typeof TextEncoder=="function"&&TextEncoder.prototype.encode)return new TextEncoder().encode(t);let e,i,n,r,a,s=t.length,o=0;for(r=0;r<s;r++)i=t.charCodeAt(r),(i&64512)===55296&&r+1<s&&(n=t.charCodeAt(r+1),(n&64512)===56320&&(i=65536+(i-55296<<10)+(n-56320),r++)),o+=i<128?1:i<2048?2:i<65536?3:4;for(e=new Uint8Array(o),a=0,r=0;a<o;r++)i=t.charCodeAt(r),(i&64512)===55296&&r+1<s&&(n=t.charCodeAt(r+1),(n&64512)===56320&&(i=65536+(i-55296<<10)+(n-56320),r++)),i<128?e[a++]=i:i<2048?(e[a++]=192|i>>>6,e[a++]=128|i&63):i<65536?(e[a++]=224|i>>>12,e[a++]=128|i>>>6&63,e[a++]=128|i&63):(e[a++]=240|i>>>18,e[a++]=128|i>>>12&63,e[a++]=128|i>>>6&63,e[a++]=128|i&63);return e};const tPe=(t,e)=>{if(e<65534&&t.subarray&&oY)return String.fromCharCode.apply(null,t.length===e?t:t.subarray(0,e));let i="";for(let n=0;n<e;n++)i+=String.fromCharCode(t[n]);return i};var iPe=(t,e)=>{const i=e||t.length;if(typeof TextDecoder=="function"&&TextDecoder.prototype.decode)return new TextDecoder().decode(t.subarray(0,e));let n,r;const a=new Array(i*2);for(r=0,n=0;n<i;){let s=t[n++];if(s<128){a[r++]=s;continue}let o=DA[s];if(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 tPe(a,r)},nPe=(t,e)=>{e=e||t.length,e>t.length&&(e=t.length);let i=e-1;for(;i>=0&&(t[i]&192)===128;)i--;return i<0||i===0?e:i+DA[t[i]]>e?i:e},LA={string2buf:ePe,buf2string:iPe,utf8border:nPe};function rPe(){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}var lY=rPe;const hY=Object.prototype.toString,{Z_NO_FLUSH:aPe,Z_SYNC_FLUSH:sPe,Z_FULL_FLUSH:oPe,Z_FINISH:lPe,Z_OK:Iy,Z_STREAM_END:hPe,Z_DEFAULT_COMPRESSION:uPe,Z_DEFAULT_STRATEGY:cPe,Z_DEFLATED:fPe}=SA;function AR(t){this.options=xy.assign({level:uPe,method:fPe,chunkSize:16384,windowBits:15,memLevel:8,strategy:cPe},t||{});let 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 lY,this.strm.avail_out=0;let i=RA.deflateInit2(this.strm,e.level,e.method,e.windowBits,e.memLevel,e.strategy);if(i!==Iy)throw new Error(Zc[i]);if(e.header&&RA.deflateSetHeader(this.strm,e.header),e.dictionary){let n;if(typeof e.dictionary=="string"?n=LA.string2buf(e.dictionary):hY.call(e.dictionary)==="[object ArrayBuffer]"?n=new Uint8Array(e.dictionary):n=e.dictionary,i=RA.deflateSetDictionary(this.strm,n),i!==Iy)throw new Error(Zc[i]);this._dict_set=!0}}AR.prototype.push=function(t,e){const i=this.strm,n=this.options.chunkSize;let r,a;if(this.ended)return!1;for(e===~~e?a=e:a=e===!0?lPe:aPe,typeof t=="string"?i.input=LA.string2buf(t):hY.call(t)==="[object ArrayBuffer]"?i.input=new Uint8Array(t):i.input=t,i.next_in=0,i.avail_in=i.input.length;;){if(i.avail_out===0&&(i.output=new Uint8Array(n),i.next_out=0,i.avail_out=n),(a===sPe||a===oPe)&&i.avail_out<=6){this.onData(i.output.subarray(0,i.next_out)),i.avail_out=0;continue}if(r=RA.deflate(i,a),r===hPe)return i.next_out>0&&this.onData(i.output.subarray(0,i.next_out)),r=RA.deflateEnd(this.strm),this.onEnd(r),this.ended=!0,r===Iy;if(i.avail_out===0){this.onData(i.output);continue}if(a>0&&i.next_out>0){this.onData(i.output.subarray(0,i.next_out)),i.avail_out=0;continue}if(i.avail_in===0)break}return!0},AR.prototype.onData=function(t){this.chunks.push(t)},AR.prototype.onEnd=function(t){t===Iy&&(this.result=xy.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};const Cy=16209,gPe=16191;var dPe=function(e,i){let n,r,a,s,o,l,h,u,c,f,g,d,v,A,p,m,y,I,_,C,x,w,E,S;const b=e.state;n=e.next_in,E=e.input,r=n+(e.avail_in-5),a=e.next_out,S=e.output,s=a-(i-e.avail_out),o=a+(e.avail_out-257),l=b.dmax,h=b.wsize,u=b.whave,c=b.wnext,f=b.window,g=b.hold,d=b.bits,v=b.lencode,A=b.distcode,p=(1<<b.lenbits)-1,m=(1<<b.distbits)-1;e:do{d<15&&(g+=E[n++]<<d,d+=8,g+=E[n++]<<d,d+=8),y=v[g&p];t:for(;;){if(I=y>>>24,g>>>=I,d-=I,I=y>>>16&255,I===0)S[a++]=y&65535;else if(I&16){_=y&65535,I&=15,I&&(d<I&&(g+=E[n++]<<d,d+=8),_+=g&(1<<I)-1,g>>>=I,d-=I),d<15&&(g+=E[n++]<<d,d+=8,g+=E[n++]<<d,d+=8),y=A[g&m];i:for(;;){if(I=y>>>24,g>>>=I,d-=I,I=y>>>16&255,I&16){if(C=y&65535,I&=15,d<I&&(g+=E[n++]<<d,d+=8,d<I&&(g+=E[n++]<<d,d+=8)),C+=g&(1<<I)-1,C>l){e.msg="invalid distance too far back",b.mode=Cy;break e}if(g>>>=I,d-=I,I=a-s,C>I){if(I=C-I,I>u&&b.sane){e.msg="invalid distance too far back",b.mode=Cy;break e}if(x=0,w=f,c===0){if(x+=h-I,I<_){_-=I;do S[a++]=f[x++];while(--I);x=a-C,w=S}}else if(c<I){if(x+=h+c-I,I-=c,I<_){_-=I;do S[a++]=f[x++];while(--I);if(x=0,c<_){I=c,_-=I;do S[a++]=f[x++];while(--I);x=a-C,w=S}}}else if(x+=c-I,I<_){_-=I;do S[a++]=f[x++];while(--I);x=a-C,w=S}for(;_>2;)S[a++]=w[x++],S[a++]=w[x++],S[a++]=w[x++],_-=3;_&&(S[a++]=w[x++],_>1&&(S[a++]=w[x++]))}else{x=a-C;do S[a++]=S[x++],S[a++]=S[x++],S[a++]=S[x++],_-=3;while(_>2);_&&(S[a++]=S[x++],_>1&&(S[a++]=S[x++]))}}else if((I&64)===0){y=A[(y&65535)+(g&(1<<I)-1)];continue i}else{e.msg="invalid distance code",b.mode=Cy;break e}break}}else if((I&64)===0){y=v[(y&65535)+(g&(1<<I)-1)];continue t}else if(I&32){b.mode=gPe;break e}else{e.msg="invalid literal/length code",b.mode=Cy;break e}break}}while(n<r&&a<o);_=d>>3,n-=_,d-=_<<3,g&=(1<<d)-1,e.next_in=n,e.next_out=a,e.avail_in=n<r?5+(r-n):5-(n-r),e.avail_out=a<o?257+(o-a):257-(a-o),b.hold=g,b.bits=d};const nf=15,uY=852,cY=592,fY=0,vR=1,gY=2,APe=new Uint16Array([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]),vPe=new Uint8Array([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]),pPe=new Uint16Array([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]),mPe=new Uint8Array([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]);var PA=(t,e,i,n,r,a,s,o)=>{const l=o.bits;let h=0,u=0,c=0,f=0,g=0,d=0,v=0,A=0,p=0,m=0,y,I,_,C,x,w=null,E;const S=new Uint16Array(nf+1),b=new Uint16Array(nf+1);let B=null,M,R,T;for(h=0;h<=nf;h++)S[h]=0;for(u=0;u<n;u++)S[e[i+u]]++;for(g=l,f=nf;f>=1&&S[f]===0;f--);if(g>f&&(g=f),f===0)return r[a++]=1<<24|64<<16|0,r[a++]=1<<24|64<<16|0,o.bits=1,0;for(c=1;c<f&&S[c]===0;c++);for(g<c&&(g=c),A=1,h=1;h<=nf;h++)if(A<<=1,A-=S[h],A<0)return-1;if(A>0&&(t===fY||f!==1))return-1;for(b[1]=0,h=1;h<nf;h++)b[h+1]=b[h]+S[h];for(u=0;u<n;u++)e[i+u]!==0&&(s[b[e[i+u]]++]=u);if(t===fY?(w=B=s,E=20):t===vR?(w=APe,B=vPe,E=257):(w=pPe,B=mPe,E=0),m=0,u=0,h=c,x=a,d=g,v=0,_=-1,p=1<<g,C=p-1,t===vR&&p>uY||t===gY&&p>cY)return 1;for(;;){M=h-v,s[u]+1<E?(R=0,T=s[u]):s[u]>=E?(R=B[s[u]-E],T=w[s[u]-E]):(R=32+64,T=0),y=1<<h-v,I=1<<d,c=I;do I-=y,r[x+(m>>v)+I]=M<<24|R<<16|T|0;while(I!==0);for(y=1<<h-1;m&y;)y>>=1;if(y!==0?(m&=y-1,m+=y):m=0,u++,--S[h]===0){if(h===f)break;h=e[i+s[u]]}if(h>g&&(m&C)!==_){for(v===0&&(v=g),x+=c,d=h-v,A=1<<d;d+v<f&&(A-=S[d+v],!(A<=0));)d++,A<<=1;if(p+=1<<d,t===vR&&p>uY||t===gY&&p>cY)return 1;_=m&C,r[_]=g<<24|d<<16|x-a|0}}return m!==0&&(r[x+m]=h-v<<24|64<<16|0),o.bits=g,0};const yPe=0,dY=1,AY=2,{Z_FINISH:vY,Z_BLOCK:_Pe,Z_TREES:wy,Z_OK:gh,Z_STREAM_END:xPe,Z_NEED_DICT:IPe,Z_STREAM_ERROR:Xr,Z_DATA_ERROR:pY,Z_MEM_ERROR:mY,Z_BUF_ERROR:CPe,Z_DEFLATED:yY}=SA,Ey=16180,_Y=16181,xY=16182,IY=16183,CY=16184,wY=16185,EY=16186,SY=16187,bY=16188,BY=16189,Sy=16190,Js=16191,pR=16192,MY=16193,mR=16194,TY=16195,RY=16196,DY=16197,LY=16198,by=16199,By=16200,PY=16201,kY=16202,FY=16203,QY=16204,zY=16205,yR=16206,OY=16207,NY=16208,mi=16209,GY=16210,UY=16211,wPe=852,EPe=592,SPe=15,qY=t=>(t>>>24&255)+(t>>>8&65280)+((t&65280)<<8)+((t&255)<<24);function bPe(){this.strm=null,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 Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}const dh=t=>{if(!t)return 1;const e=t.state;return!e||e.strm!==t||e.mode<Ey||e.mode>UY?1:0},VY=t=>{if(dh(t))return Xr;const e=t.state;return t.total_in=t.total_out=e.total=0,t.msg="",e.wrap&&(t.adler=e.wrap&1),e.mode=Ey,e.last=0,e.havedict=0,e.flags=-1,e.dmax=32768,e.head=null,e.hold=0,e.bits=0,e.lencode=e.lendyn=new Int32Array(wPe),e.distcode=e.distdyn=new Int32Array(EPe),e.sane=1,e.back=-1,gh},jY=t=>{if(dh(t))return Xr;const e=t.state;return e.wsize=0,e.whave=0,e.wnext=0,VY(t)},HY=(t,e)=>{let i;if(dh(t))return Xr;const n=t.state;return e<0?(i=0,e=-e):(i=(e>>4)+5,e<48&&(e&=15)),e&&(e<8||e>15)?Xr:(n.window!==null&&n.wbits!==e&&(n.window=null),n.wrap=i,n.wbits=e,jY(t))},$Y=(t,e)=>{if(!t)return Xr;const i=new bPe;t.state=i,i.strm=t,i.window=null,i.mode=Ey;const n=HY(t,e);return n!==gh&&(t.state=null),n},BPe=t=>$Y(t,SPe);let WY=!0,_R,xR;const MPe=t=>{if(WY){_R=new Int32Array(512),xR=new Int32Array(32);let e=0;for(;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(PA(dY,t.lens,0,288,_R,0,t.work,{bits:9}),e=0;e<32;)t.lens[e++]=5;PA(AY,t.lens,0,32,xR,0,t.work,{bits:5}),WY=!1}t.lencode=_R,t.lenbits=9,t.distcode=xR,t.distbits=5},YY=(t,e,i,n)=>{let r;const a=t.state;return a.window===null&&(a.wsize=1<<a.wbits,a.wnext=0,a.whave=0,a.window=new Uint8Array(a.wsize)),n>=a.wsize?(a.window.set(e.subarray(i-a.wsize,i),0),a.wnext=0,a.whave=a.wsize):(r=a.wsize-a.wnext,r>n&&(r=n),a.window.set(e.subarray(i-n,i-n+r),a.wnext),n-=r,n?(a.window.set(e.subarray(i-n,i),0),a.wnext=n,a.whave=a.wsize):(a.wnext+=r,a.wnext===a.wsize&&(a.wnext=0),a.whave<a.wsize&&(a.whave+=r))),0},TPe=(t,e)=>{let i,n,r,a,s,o,l,h,u,c,f,g,d,v,A=0,p,m,y,I,_,C,x,w;const E=new Uint8Array(4);let S,b;const B=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(dh(t)||!t.output||!t.input&&t.avail_in!==0)return Xr;i=t.state,i.mode===Js&&(i.mode=pR),s=t.next_out,r=t.output,l=t.avail_out,a=t.next_in,n=t.input,o=t.avail_in,h=i.hold,u=i.bits,c=o,f=l,w=gh;e:for(;;)switch(i.mode){case Ey:if(i.wrap===0){i.mode=pR;break}for(;u<16;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}if(i.wrap&2&&h===35615){i.wbits===0&&(i.wbits=15),i.check=0,E[0]=h&255,E[1]=h>>>8&255,i.check=fn(i.check,E,2,0),h=0,u=0,i.mode=_Y;break}if(i.head&&(i.head.done=!1),!(i.wrap&1)||(((h&255)<<8)+(h>>8))%31){t.msg="incorrect header check",i.mode=mi;break}if((h&15)!==yY){t.msg="unknown compression method",i.mode=mi;break}if(h>>>=4,u-=4,x=(h&15)+8,i.wbits===0&&(i.wbits=x),x>15||x>i.wbits){t.msg="invalid window size",i.mode=mi;break}i.dmax=1<<i.wbits,i.flags=0,t.adler=i.check=1,i.mode=h&512?BY:Js,h=0,u=0;break;case _Y:for(;u<16;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}if(i.flags=h,(i.flags&255)!==yY){t.msg="unknown compression method",i.mode=mi;break}if(i.flags&57344){t.msg="unknown header flags set",i.mode=mi;break}i.head&&(i.head.text=h>>8&1),i.flags&512&&i.wrap&4&&(E[0]=h&255,E[1]=h>>>8&255,i.check=fn(i.check,E,2,0)),h=0,u=0,i.mode=xY;case xY:for(;u<32;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}i.head&&(i.head.time=h),i.flags&512&&i.wrap&4&&(E[0]=h&255,E[1]=h>>>8&255,E[2]=h>>>16&255,E[3]=h>>>24&255,i.check=fn(i.check,E,4,0)),h=0,u=0,i.mode=IY;case IY:for(;u<16;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}i.head&&(i.head.xflags=h&255,i.head.os=h>>8),i.flags&512&&i.wrap&4&&(E[0]=h&255,E[1]=h>>>8&255,i.check=fn(i.check,E,2,0)),h=0,u=0,i.mode=CY;case CY:if(i.flags&1024){for(;u<16;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}i.length=h,i.head&&(i.head.extra_len=h),i.flags&512&&i.wrap&4&&(E[0]=h&255,E[1]=h>>>8&255,i.check=fn(i.check,E,2,0)),h=0,u=0}else i.head&&(i.head.extra=null);i.mode=wY;case wY:if(i.flags&1024&&(g=i.length,g>o&&(g=o),g&&(i.head&&(x=i.head.extra_len-i.length,i.head.extra||(i.head.extra=new Uint8Array(i.head.extra_len)),i.head.extra.set(n.subarray(a,a+g),x)),i.flags&512&&i.wrap&4&&(i.check=fn(i.check,n,g,a)),o-=g,a+=g,i.length-=g),i.length))break e;i.length=0,i.mode=EY;case EY:if(i.flags&2048){if(o===0)break e;g=0;do x=n[a+g++],i.head&&x&&i.length<65536&&(i.head.name+=String.fromCharCode(x));while(x&&g<o);if(i.flags&512&&i.wrap&4&&(i.check=fn(i.check,n,g,a)),o-=g,a+=g,x)break e}else i.head&&(i.head.name=null);i.length=0,i.mode=SY;case SY:if(i.flags&4096){if(o===0)break e;g=0;do x=n[a+g++],i.head&&x&&i.length<65536&&(i.head.comment+=String.fromCharCode(x));while(x&&g<o);if(i.flags&512&&i.wrap&4&&(i.check=fn(i.check,n,g,a)),o-=g,a+=g,x)break e}else i.head&&(i.head.comment=null);i.mode=bY;case bY:if(i.flags&512){for(;u<16;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}if(i.wrap&4&&h!==(i.check&65535)){t.msg="header crc mismatch",i.mode=mi;break}h=0,u=0}i.head&&(i.head.hcrc=i.flags>>9&1,i.head.done=!0),t.adler=i.check=0,i.mode=Js;break;case BY:for(;u<32;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}t.adler=i.check=qY(h),h=0,u=0,i.mode=Sy;case Sy:if(i.havedict===0)return t.next_out=s,t.avail_out=l,t.next_in=a,t.avail_in=o,i.hold=h,i.bits=u,IPe;t.adler=i.check=1,i.mode=Js;case Js:if(e===_Pe||e===wy)break e;case pR:if(i.last){h>>>=u&7,u-=u&7,i.mode=yR;break}for(;u<3;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}switch(i.last=h&1,h>>>=1,u-=1,h&3){case 0:i.mode=MY;break;case 1:if(MPe(i),i.mode=by,e===wy){h>>>=2,u-=2;break e}break;case 2:i.mode=RY;break;case 3:t.msg="invalid block type",i.mode=mi}h>>>=2,u-=2;break;case MY:for(h>>>=u&7,u-=u&7;u<32;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}if((h&65535)!==(h>>>16^65535)){t.msg="invalid stored block lengths",i.mode=mi;break}if(i.length=h&65535,h=0,u=0,i.mode=mR,e===wy)break e;case mR:i.mode=TY;case TY:if(g=i.length,g){if(g>o&&(g=o),g>l&&(g=l),g===0)break e;r.set(n.subarray(a,a+g),s),o-=g,a+=g,l-=g,s+=g,i.length-=g;break}i.mode=Js;break;case RY:for(;u<14;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}if(i.nlen=(h&31)+257,h>>>=5,u-=5,i.ndist=(h&31)+1,h>>>=5,u-=5,i.ncode=(h&15)+4,h>>>=4,u-=4,i.nlen>286||i.ndist>30){t.msg="too many length or distance symbols",i.mode=mi;break}i.have=0,i.mode=DY;case DY:for(;i.have<i.ncode;){for(;u<3;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}i.lens[B[i.have++]]=h&7,h>>>=3,u-=3}for(;i.have<19;)i.lens[B[i.have++]]=0;if(i.lencode=i.lendyn,i.lenbits=7,S={bits:i.lenbits},w=PA(yPe,i.lens,0,19,i.lencode,0,i.work,S),i.lenbits=S.bits,w){t.msg="invalid code lengths set",i.mode=mi;break}i.have=0,i.mode=LY;case LY:for(;i.have<i.nlen+i.ndist;){for(;A=i.lencode[h&(1<<i.lenbits)-1],p=A>>>24,m=A>>>16&255,y=A&65535,!(p<=u);){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}if(y<16)h>>>=p,u-=p,i.lens[i.have++]=y;else{if(y===16){for(b=p+2;u<b;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}if(h>>>=p,u-=p,i.have===0){t.msg="invalid bit length repeat",i.mode=mi;break}x=i.lens[i.have-1],g=3+(h&3),h>>>=2,u-=2}else if(y===17){for(b=p+3;u<b;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}h>>>=p,u-=p,x=0,g=3+(h&7),h>>>=3,u-=3}else{for(b=p+7;u<b;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}h>>>=p,u-=p,x=0,g=11+(h&127),h>>>=7,u-=7}if(i.have+g>i.nlen+i.ndist){t.msg="invalid bit length repeat",i.mode=mi;break}for(;g--;)i.lens[i.have++]=x}}if(i.mode===mi)break;if(i.lens[256]===0){t.msg="invalid code -- missing end-of-block",i.mode=mi;break}if(i.lenbits=9,S={bits:i.lenbits},w=PA(dY,i.lens,0,i.nlen,i.lencode,0,i.work,S),i.lenbits=S.bits,w){t.msg="invalid literal/lengths set",i.mode=mi;break}if(i.distbits=6,i.distcode=i.distdyn,S={bits:i.distbits},w=PA(AY,i.lens,i.nlen,i.ndist,i.distcode,0,i.work,S),i.distbits=S.bits,w){t.msg="invalid distances set",i.mode=mi;break}if(i.mode=by,e===wy)break e;case by:i.mode=By;case By:if(o>=6&&l>=258){t.next_out=s,t.avail_out=l,t.next_in=a,t.avail_in=o,i.hold=h,i.bits=u,dPe(t,f),s=t.next_out,r=t.output,l=t.avail_out,a=t.next_in,n=t.input,o=t.avail_in,h=i.hold,u=i.bits,i.mode===Js&&(i.back=-1);break}for(i.back=0;A=i.lencode[h&(1<<i.lenbits)-1],p=A>>>24,m=A>>>16&255,y=A&65535,!(p<=u);){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}if(m&&(m&240)===0){for(I=p,_=m,C=y;A=i.lencode[C+((h&(1<<I+_)-1)>>I)],p=A>>>24,m=A>>>16&255,y=A&65535,!(I+p<=u);){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}h>>>=I,u-=I,i.back+=I}if(h>>>=p,u-=p,i.back+=p,i.length=y,m===0){i.mode=zY;break}if(m&32){i.back=-1,i.mode=Js;break}if(m&64){t.msg="invalid literal/length code",i.mode=mi;break}i.extra=m&15,i.mode=PY;case PY:if(i.extra){for(b=i.extra;u<b;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}i.length+=h&(1<<i.extra)-1,h>>>=i.extra,u-=i.extra,i.back+=i.extra}i.was=i.length,i.mode=kY;case kY:for(;A=i.distcode[h&(1<<i.distbits)-1],p=A>>>24,m=A>>>16&255,y=A&65535,!(p<=u);){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}if((m&240)===0){for(I=p,_=m,C=y;A=i.distcode[C+((h&(1<<I+_)-1)>>I)],p=A>>>24,m=A>>>16&255,y=A&65535,!(I+p<=u);){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}h>>>=I,u-=I,i.back+=I}if(h>>>=p,u-=p,i.back+=p,m&64){t.msg="invalid distance code",i.mode=mi;break}i.offset=y,i.extra=m&15,i.mode=FY;case FY:if(i.extra){for(b=i.extra;u<b;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}i.offset+=h&(1<<i.extra)-1,h>>>=i.extra,u-=i.extra,i.back+=i.extra}if(i.offset>i.dmax){t.msg="invalid distance too far back",i.mode=mi;break}i.mode=QY;case QY:if(l===0)break e;if(g=f-l,i.offset>g){if(g=i.offset-g,g>i.whave&&i.sane){t.msg="invalid distance too far back",i.mode=mi;break}g>i.wnext?(g-=i.wnext,d=i.wsize-g):d=i.wnext-g,g>i.length&&(g=i.length),v=i.window}else v=r,d=s-i.offset,g=i.length;g>l&&(g=l),l-=g,i.length-=g;do r[s++]=v[d++];while(--g);i.length===0&&(i.mode=By);break;case zY:if(l===0)break e;r[s++]=i.length,l--,i.mode=By;break;case yR:if(i.wrap){for(;u<32;){if(o===0)break e;o--,h|=n[a++]<<u,u+=8}if(f-=l,t.total_out+=f,i.total+=f,i.wrap&4&&f&&(t.adler=i.check=i.flags?fn(i.check,r,f,s-f):EA(i.check,r,f,s-f)),f=l,i.wrap&4&&(i.flags?h:qY(h))!==i.check){t.msg="incorrect data check",i.mode=mi;break}h=0,u=0}i.mode=OY;case OY:if(i.wrap&&i.flags){for(;u<32;){if(o===0)break e;o--,h+=n[a++]<<u,u+=8}if(i.wrap&4&&h!==(i.total&4294967295)){t.msg="incorrect length check",i.mode=mi;break}h=0,u=0}i.mode=NY;case NY:w=xPe;break e;case mi:w=pY;break e;case GY:return mY;case UY:default:return Xr}return t.next_out=s,t.avail_out=l,t.next_in=a,t.avail_in=o,i.hold=h,i.bits=u,(i.wsize||f!==t.avail_out&&i.mode<mi&&(i.mode<yR||e!==vY))&&YY(t,t.output,t.next_out,f-t.avail_out),c-=t.avail_in,f-=t.avail_out,t.total_in+=c,t.total_out+=f,i.total+=f,i.wrap&4&&f&&(t.adler=i.check=i.flags?fn(i.check,r,f,t.next_out-f):EA(i.check,r,f,t.next_out-f)),t.data_type=i.bits+(i.last?64:0)+(i.mode===Js?128:0)+(i.mode===by||i.mode===mR?256:0),(c===0&&f===0||e===vY)&&w===gh&&(w=CPe),w},RPe=t=>{if(dh(t))return Xr;let e=t.state;return e.window&&(e.window=null),t.state=null,gh},DPe=(t,e)=>{if(dh(t))return Xr;const i=t.state;return(i.wrap&2)===0?Xr:(i.head=e,e.done=!1,gh)},LPe=(t,e)=>{const i=e.length;let n,r,a;return dh(t)||(n=t.state,n.wrap!==0&&n.mode!==Sy)?Xr:n.mode===Sy&&(r=1,r=EA(r,e,i,0),r!==n.check)?pY:(a=YY(t,e,i,i),a?(n.mode=GY,mY):(n.havedict=1,gh))};var PPe=jY,kPe=HY,FPe=VY,QPe=BPe,zPe=$Y,OPe=TPe,NPe=RPe,GPe=DPe,UPe=LPe,qPe="pako inflate (from Nodeca project)",eo={inflateReset:PPe,inflateReset2:kPe,inflateResetKeep:FPe,inflateInit:QPe,inflateInit2:zPe,inflate:OPe,inflateEnd:NPe,inflateGetHeader:GPe,inflateSetDictionary:UPe,inflateInfo:qPe};function VPe(){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}var jPe=VPe;const ZY=Object.prototype.toString,{Z_NO_FLUSH:HPe,Z_FINISH:$Pe,Z_OK:kA,Z_STREAM_END:IR,Z_NEED_DICT:CR,Z_STREAM_ERROR:WPe,Z_DATA_ERROR:XY,Z_MEM_ERROR:YPe}=SA;function FA(t){this.options=xy.assign({chunkSize:1024*64,windowBits:15,to:""},t||{});const 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)===0&&(e.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new lY,this.strm.avail_out=0;let i=eo.inflateInit2(this.strm,e.windowBits);if(i!==kA)throw new Error(Zc[i]);if(this.header=new jPe,eo.inflateGetHeader(this.strm,this.header),e.dictionary&&(typeof e.dictionary=="string"?e.dictionary=LA.string2buf(e.dictionary):ZY.call(e.dictionary)==="[object ArrayBuffer]"&&(e.dictionary=new Uint8Array(e.dictionary)),e.raw&&(i=eo.inflateSetDictionary(this.strm,e.dictionary),i!==kA)))throw new Error(Zc[i])}FA.prototype.push=function(t,e){const i=this.strm,n=this.options.chunkSize,r=this.options.dictionary;let a,s,o;if(this.ended)return!1;for(e===~~e?s=e:s=e===!0?$Pe:HPe,ZY.call(t)==="[object ArrayBuffer]"?i.input=new Uint8Array(t):i.input=t,i.next_in=0,i.avail_in=i.input.length;;){for(i.avail_out===0&&(i.output=new Uint8Array(n),i.next_out=0,i.avail_out=n),a=eo.inflate(i,s),a===CR&&r&&(a=eo.inflateSetDictionary(i,r),a===kA?a=eo.inflate(i,s):a===XY&&(a=CR));i.avail_in>0&&a===IR&&i.state.wrap>0&&t[i.next_in]!==0;)eo.inflateReset(i),a=eo.inflate(i,s);switch(a){case WPe:case XY:case CR:case YPe:return this.onEnd(a),this.ended=!0,!1}if(o=i.avail_out,i.next_out&&(i.avail_out===0||a===IR))if(this.options.to==="string"){let l=LA.utf8border(i.output,i.next_out),h=i.next_out-l,u=LA.buf2string(i.output,l);i.next_out=h,i.avail_out=n-h,h&&i.output.set(i.output.subarray(l,l+h),0),this.onData(u)}else this.onData(i.output.length===i.next_out?i.output:i.output.subarray(0,i.next_out));if(!(a===kA&&o===0)){if(a===IR)return a=eo.inflateEnd(this.strm),this.onEnd(a),this.ended=!0,!0;if(i.avail_in===0)break}}return!0},FA.prototype.onData=function(t){this.chunks.push(t)},FA.prototype.onEnd=function(t){t===kA&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=xy.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};function wR(t,e){const i=new FA(e);if(i.push(t),i.err)throw i.msg||Zc[i.err];return i.result}function ZPe(t,e){return e=e||{},e.raw=!0,wR(t,e)}var XPe=FA,KPe=wR,JPe=ZPe,eke=wR,tke=SA,ike={Inflate:XPe,inflate:KPe,inflateRaw:JPe,ungzip:eke,constants:tke};const{Inflate:Jke,inflate:nke,inflateRaw:eFe,ungzip:tFe}=ike;var KY=nke;class rke extends Tl{decodeBlock(e){return KY(new Uint8Array(e)).buffer}}const ake=Object.freeze(Object.defineProperty({__proto__:null,default:rke},Symbol.toStringTag,{value:"Module"}));class ske extends Tl{decodeBlock(e){const i=new DataView(e),n=[];for(let r=0;r<e.byteLength;++r){let a=i.getInt8(r);if(a<0){const s=i.getUint8(r+1);a=-a;for(let o=0;o<=a;++o)n.push(s);r+=1}else{for(let s=0;s<=a;++s)n.push(i.getUint8(r+s+1));r+=a+1}}return new Uint8Array(n).buffer}}const oke=Object.freeze(Object.defineProperty({__proto__:null,default:ske},Symbol.toStringTag,{value:"Module"}));var JY={exports:{}};(function(t){/* Copyright 2015-2021 Esri. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 @preserve */(function(){var e=function(){var a={};a.defaultNoDataValue=-34027999387901484e22,a.decode=function(c,f){f=f||{};var g=f.encodedMaskData||f.encodedMaskData===null,d=h(c,f.inputOffset||0,g),v=f.noDataValue!==null?f.noDataValue:a.defaultNoDataValue,A=s(d,f.pixelType||Float32Array,f.encodedMaskData,v,f.returnMask),p={width:d.width,height:d.height,pixelData:A.resultPixels,minValue:A.minValue,maxValue:d.pixels.maxValue,noDataValue:v};return A.resultMask&&(p.maskData=A.resultMask),f.returnEncodedMask&&d.mask&&(p.encodedMaskData=d.mask.bitset?d.mask.bitset:null),f.returnFileInfo&&(p.fileInfo=o(d),f.computeUsedBitDepths&&(p.fileInfo.bitDepths=l(d))),p};var s=function(c,f,g,d,v){var A=0,p=c.pixels.numBlocksX,m=c.pixels.numBlocksY,y=Math.floor(c.width/p),I=Math.floor(c.height/m),_=2*c.maxZError,C=Number.MAX_VALUE,x;g=g||(c.mask?c.mask.bitset:null);var w,E;w=new f(c.width*c.height),v&&g&&(E=new Uint8Array(c.width*c.height));for(var S=new Float32Array(y*I),b,B,M=0;M<=m;M++){var R=M!==m?I:c.height%m;if(R!==0)for(var T=0;T<=p;T++){var D=T!==p?y:c.width%p;if(D!==0){var P=M*c.width*I+T*y,Q=c.width-D,N=c.pixels.blocks[A],O,L,z;N.encoding<2?(N.encoding===0?O=N.rawData:(u(N.stuffedData,N.bitsPerPixel,N.numValidPixels,N.offset,_,S,c.pixels.maxValue),O=S),L=0):N.encoding===2?z=0:z=N.offset;var k;if(g)for(B=0;B<R;B++){for(P&7&&(k=g[P>>3],k<<=P&7),b=0;b<D;b++)P&7||(k=g[P>>3]),k&128?(E&&(E[P]=1),x=N.encoding<2?O[L++]:z,C=C>x?x:C,w[P++]=x):(E&&(E[P]=0),w[P++]=d),k<<=1;P+=Q}else if(N.encoding<2)for(B=0;B<R;B++){for(b=0;b<D;b++)x=O[L++],C=C>x?x:C,w[P++]=x;P+=Q}else for(C=C>z?z:C,B=0;B<R;B++){for(b=0;b<D;b++)w[P++]=z;P+=Q}if(N.encoding===1&&L!==N.numValidPixels)throw"Block and Mask do not match";A++}}}return{resultPixels:w,resultMask:E,minValue:C}},o=function(c){return{fileIdentifierString:c.fileIdentifierString,fileVersion:c.fileVersion,imageType:c.imageType,height:c.height,width:c.width,maxZError:c.maxZError,eofOffset:c.eofOffset,mask:c.mask?{numBlocksX:c.mask.numBlocksX,numBlocksY:c.mask.numBlocksY,numBytes:c.mask.numBytes,maxValue:c.mask.maxValue}:null,pixels:{numBlocksX:c.pixels.numBlocksX,numBlocksY:c.pixels.numBlocksY,numBytes:c.pixels.numBytes,maxValue:c.pixels.maxValue,noDataValue:c.noDataValue}}},l=function(c){for(var f=c.pixels.numBlocksX*c.pixels.numBlocksY,g={},d=0;d<f;d++){var v=c.pixels.blocks[d];v.encoding===0?g.float32=!0:v.encoding===1?g[v.bitsPerPixel]=!0:g[0]=!0}return Object.keys(g)},h=function(c,f,g){var d={},v=new Uint8Array(c,f,10);if(d.fileIdentifierString=String.fromCharCode.apply(null,v),d.fileIdentifierString.trim()!=="CntZImage")throw"Unexpected file identifier string: "+d.fileIdentifierString;f+=10;var A=new DataView(c,f,24);if(d.fileVersion=A.getInt32(0,!0),d.imageType=A.getInt32(4,!0),d.height=A.getUint32(8,!0),d.width=A.getUint32(12,!0),d.maxZError=A.getFloat64(16,!0),f+=24,!g)if(A=new DataView(c,f,16),d.mask={},d.mask.numBlocksY=A.getUint32(0,!0),d.mask.numBlocksX=A.getUint32(4,!0),d.mask.numBytes=A.getUint32(8,!0),d.mask.maxValue=A.getFloat32(12,!0),f+=16,d.mask.numBytes>0){var p=new Uint8Array(Math.ceil(d.width*d.height/8));A=new DataView(c,f,d.mask.numBytes);var m=A.getInt16(0,!0),y=2,I=0;do{if(m>0)for(;m--;)p[I++]=A.getUint8(y++);else{var _=A.getUint8(y++);for(m=-m;m--;)p[I++]=_}m=A.getInt16(y,!0),y+=2}while(y<d.mask.numBytes);if(m!==-32768||I<p.length)throw"Unexpected end of mask RLE encoding";d.mask.bitset=p,f+=d.mask.numBytes}else(d.mask.numBytes|d.mask.numBlocksY|d.mask.maxValue)===0&&(d.mask.bitset=new Uint8Array(Math.ceil(d.width*d.height/8)));A=new DataView(c,f,16),d.pixels={},d.pixels.numBlocksY=A.getUint32(0,!0),d.pixels.numBlocksX=A.getUint32(4,!0),d.pixels.numBytes=A.getUint32(8,!0),d.pixels.maxValue=A.getFloat32(12,!0),f+=16;var C=d.pixels.numBlocksX,x=d.pixels.numBlocksY,w=C+(d.width%C>0?1:0),E=x+(d.height%x>0?1:0);d.pixels.blocks=new Array(w*E);for(var S=0,b=0;b<E;b++)for(var B=0;B<w;B++){var M=0,R=c.byteLength-f;A=new DataView(c,f,Math.min(10,R));var T={};d.pixels.blocks[S++]=T;var D=A.getUint8(0);if(M++,T.encoding=D&63,T.encoding>3)throw"Invalid block encoding ("+T.encoding+")";if(T.encoding===2){f++;continue}if(D!==0&&D!==2){if(D>>=6,T.offsetType=D,D===2)T.offset=A.getInt8(1),M++;else if(D===1)T.offset=A.getInt16(1,!0),M+=2;else if(D===0)T.offset=A.getFloat32(1,!0),M+=4;else throw"Invalid block offset type";if(T.encoding===1)if(D=A.getUint8(M),M++,T.bitsPerPixel=D&63,D>>=6,T.numValidPixelsType=D,D===2)T.numValidPixels=A.getUint8(M),M++;else if(D===1)T.numValidPixels=A.getUint16(M,!0),M+=2;else if(D===0)T.numValidPixels=A.getUint32(M,!0),M+=4;else throw"Invalid valid pixel count type"}if(f+=M,T.encoding!==3){var P,Q;if(T.encoding===0){var N=(d.pixels.numBytes-1)/4;if(N!==Math.floor(N))throw"uncompressed block has invalid length";P=new ArrayBuffer(N*4),Q=new Uint8Array(P),Q.set(new Uint8Array(c,f,N*4));var O=new Float32Array(P);T.rawData=O,f+=N*4}else if(T.encoding===1){var L=Math.ceil(T.numValidPixels*T.bitsPerPixel/8),z=Math.ceil(L/4);P=new ArrayBuffer(z*4),Q=new Uint8Array(P),Q.set(new Uint8Array(c,f,L)),T.stuffedData=new Uint32Array(P),f+=L}}}return d.eofOffset=f,d},u=function(c,f,g,d,v,A,p){var m=(1<<f)-1,y=0,I,_=0,C,x,w=Math.ceil((p-d)/v),E=c.length*4-Math.ceil(f*g/8);for(c[c.length-1]<<=8*E,I=0;I<g;I++){if(_===0&&(x=c[y++],_=32),_>=f)C=x>>>_-f&m,_-=f;else{var S=f-_;C=(x&m)<<S&m,x=c[y++],_=32-S,C+=x>>>_}A[I]=C<w?d+C*v:p}return A};return a}(),i=function(){var a={unstuff:function(h,u,c,f,g,d,v,A){var p=(1<<c)-1,m=0,y,I=0,_,C,x,w,E=h.length*4-Math.ceil(c*f/8);if(h[h.length-1]<<=8*E,g)for(y=0;y<f;y++)I===0&&(C=h[m++],I=32),I>=c?(_=C>>>I-c&p,I-=c):(x=c-I,_=(C&p)<<x&p,C=h[m++],I=32-x,_+=C>>>I),u[y]=g[_];else for(w=Math.ceil((A-d)/v),y=0;y<f;y++)I===0&&(C=h[m++],I=32),I>=c?(_=C>>>I-c&p,I-=c):(x=c-I,_=(C&p)<<x&p,C=h[m++],I=32-x,_+=C>>>I),u[y]=_<w?d+_*v:A},unstuffLUT:function(h,u,c,f,g,d){var v=(1<<u)-1,A=0,p=0,m=0,y=0,I=0,_,C=[],x=h.length*4-Math.ceil(u*c/8);h[h.length-1]<<=8*x;var w=Math.ceil((d-f)/g);for(p=0;p<c;p++)y===0&&(_=h[A++],y=32),y>=u?(I=_>>>y-u&v,y-=u):(m=u-y,I=(_&v)<<m&v,_=h[A++],y=32-m,I+=_>>>y),C[p]=I<w?f+I*g:d;return C.unshift(f),C},unstuff2:function(h,u,c,f,g,d,v,A){var p=(1<<c)-1,m=0,y,I=0,_=0,C,x,w;if(g)for(y=0;y<f;y++)I===0&&(x=h[m++],I=32,_=0),I>=c?(C=x>>>_&p,I-=c,_+=c):(w=c-I,C=x>>>_&p,x=h[m++],I=32-w,C|=(x&(1<<w)-1)<<c-w,_=w),u[y]=g[C];else{var E=Math.ceil((A-d)/v);for(y=0;y<f;y++)I===0&&(x=h[m++],I=32,_=0),I>=c?(C=x>>>_&p,I-=c,_+=c):(w=c-I,C=x>>>_&p,x=h[m++],I=32-w,C|=(x&(1<<w)-1)<<c-w,_=w),u[y]=C<E?d+C*v:A}return u},unstuffLUT2:function(h,u,c,f,g,d){var v=(1<<u)-1,A=0,p=0,m=0,y=0,I=0,_=0,C,x=[],w=Math.ceil((d-f)/g);for(p=0;p<c;p++)y===0&&(C=h[A++],y=32,_=0),y>=u?(I=C>>>_&v,y-=u,_+=u):(m=u-y,I=C>>>_&v,C=h[A++],y=32-m,I|=(C&(1<<m)-1)<<u-m,_=m),x[p]=I<w?f+I*g:d;return x.unshift(f),x},originalUnstuff:function(h,u,c,f){var g=(1<<c)-1,d=0,v,A=0,p,m,y,I=h.length*4-Math.ceil(c*f/8);for(h[h.length-1]<<=8*I,v=0;v<f;v++)A===0&&(m=h[d++],A=32),A>=c?(p=m>>>A-c&g,A-=c):(y=c-A,p=(m&g)<<y&g,m=h[d++],A=32-y,p+=m>>>A),u[v]=p;return u},originalUnstuff2:function(h,u,c,f){var g=(1<<c)-1,d=0,v,A=0,p=0,m,y,I;for(v=0;v<f;v++)A===0&&(y=h[d++],A=32,p=0),A>=c?(m=y>>>p&g,A-=c,p+=c):(I=c-A,m=y>>>p&g,y=h[d++],A=32-I,m|=(y&(1<<I)-1)<<c-I,p=I),u[v]=m;return u}},s={HUFFMAN_LUT_BITS_MAX:12,computeChecksumFletcher32:function(h){for(var u=65535,c=65535,f=h.length,g=Math.floor(f/2),d=0;g;){var v=g>=359?359:g;g-=v;do u+=h[d++]<<8,c+=u+=h[d++];while(--v);u=(u&65535)+(u>>>16),c=(c&65535)+(c>>>16)}return f&1&&(c+=u+=h[d]<<8),u=(u&65535)+(u>>>16),c=(c&65535)+(c>>>16),(c<<16|u)>>>0},readHeaderInfo:function(h,u){var c=u.ptr,f=new Uint8Array(h,c,6),g={};if(g.fileIdentifierString=String.fromCharCode.apply(null,f),g.fileIdentifierString.lastIndexOf("Lerc2",0)!==0)throw"Unexpected file identifier string (expect Lerc2 ): "+g.fileIdentifierString;c+=6;var d=new DataView(h,c,8),v=d.getInt32(0,!0);g.fileVersion=v,c+=4,v>=3&&(g.checksum=d.getUint32(4,!0),c+=4),d=new DataView(h,c,12),g.height=d.getUint32(0,!0),g.width=d.getUint32(4,!0),c+=8,v>=4?(g.numDims=d.getUint32(8,!0),c+=4):g.numDims=1,d=new DataView(h,c,40),g.numValidPixel=d.getUint32(0,!0),g.microBlockSize=d.getInt32(4,!0),g.blobSize=d.getInt32(8,!0),g.imageType=d.getInt32(12,!0),g.maxZError=d.getFloat64(16,!0),g.zMin=d.getFloat64(24,!0),g.zMax=d.getFloat64(32,!0),c+=40,u.headerInfo=g,u.ptr=c;var A,p;if(v>=3&&(p=v>=4?52:48,A=this.computeChecksumFletcher32(new Uint8Array(h,c-p,g.blobSize-14)),A!==g.checksum))throw"Checksum failed.";return!0},checkMinMaxRanges:function(h,u){var c=u.headerInfo,f=this.getDataTypeArray(c.imageType),g=c.numDims*this.getDataTypeSize(c.imageType),d=this.readSubArray(h,u.ptr,f,g),v=this.readSubArray(h,u.ptr+g,f,g);u.ptr+=2*g;var A,p=!0;for(A=0;A<c.numDims;A++)if(d[A]!==v[A]){p=!1;break}return c.minValues=d,c.maxValues=v,p},readSubArray:function(h,u,c,f){var g;if(c===Uint8Array)g=new Uint8Array(h,u,f);else{var d=new ArrayBuffer(f),v=new Uint8Array(d);v.set(new Uint8Array(h,u,f)),g=new c(d)}return g},readMask:function(h,u){var c=u.ptr,f=u.headerInfo,g=f.width*f.height,d=f.numValidPixel,v=new DataView(h,c,4),A={};if(A.numBytes=v.getUint32(0,!0),c+=4,(d===0||g===d)&&A.numBytes!==0)throw"invalid mask";var p,m;if(d===0)p=new Uint8Array(Math.ceil(g/8)),A.bitset=p,m=new Uint8Array(g),u.pixels.resultMask=m,c+=A.numBytes;else if(A.numBytes>0){p=new Uint8Array(Math.ceil(g/8)),v=new DataView(h,c,A.numBytes);var y=v.getInt16(0,!0),I=2,_=0,C=0;do{if(y>0)for(;y--;)p[_++]=v.getUint8(I++);else for(C=v.getUint8(I++),y=-y;y--;)p[_++]=C;y=v.getInt16(I,!0),I+=2}while(I<A.numBytes);if(y!==-32768||_<p.length)throw"Unexpected end of mask RLE encoding";m=new Uint8Array(g);var x=0,w=0;for(w=0;w<g;w++)w&7?(x=p[w>>3],x<<=w&7):x=p[w>>3],x&128&&(m[w]=1);u.pixels.resultMask=m,A.bitset=p,c+=A.numBytes}return u.ptr=c,u.mask=A,!0},readDataOneSweep:function(h,u,c,f){var g=u.ptr,d=u.headerInfo,v=d.numDims,A=d.width*d.height,p=d.imageType,m=d.numValidPixel*s.getDataTypeSize(p)*v,y,I=u.pixels.resultMask;if(c===Uint8Array)y=new Uint8Array(h,g,m);else{var _=new ArrayBuffer(m),C=new Uint8Array(_);C.set(new Uint8Array(h,g,m)),y=new c(_)}if(y.length===A*v)f?u.pixels.resultPixels=s.swapDimensionOrder(y,A,v,c,!0):u.pixels.resultPixels=y;else{u.pixels.resultPixels=new c(A*v);var x=0,w=0,E=0,S=0;if(v>1){if(f){for(w=0;w<A;w++)if(I[w])for(S=w,E=0;E<v;E++,S+=A)u.pixels.resultPixels[S]=y[x++]}else for(w=0;w<A;w++)if(I[w])for(S=w*v,E=0;E<v;E++)u.pixels.resultPixels[S+E]=y[x++]}else for(w=0;w<A;w++)I[w]&&(u.pixels.resultPixels[w]=y[x++])}return g+=m,u.ptr=g,!0},readHuffmanTree:function(h,u){var c=this.HUFFMAN_LUT_BITS_MAX,f=new DataView(h,u.ptr,16);u.ptr+=16;var g=f.getInt32(0,!0);if(g<2)throw"unsupported Huffman version";var d=f.getInt32(4,!0),v=f.getInt32(8,!0),A=f.getInt32(12,!0);if(v>=A)return!1;var p=new Uint32Array(A-v);s.decodeBits(h,u,p);var m=[],y,I,_,C;for(y=v;y<A;y++)I=y-(y<d?0:d),m[I]={first:p[y-v],second:null};var x=h.byteLength-u.ptr,w=Math.ceil(x/4),E=new ArrayBuffer(w*4),S=new Uint8Array(E);S.set(new Uint8Array(h,u.ptr,x));var b=new Uint32Array(E),B=0,M,R=0;for(M=b[0],y=v;y<A;y++)I=y-(y<d?0:d),C=m[I].first,C>0&&(m[I].second=M<<B>>>32-C,32-B>=C?(B+=C,B===32&&(B=0,R++,M=b[R])):(B+=C-32,R++,M=b[R],m[I].second|=M>>>32-B));var T=0,D=0,P=new o;for(y=0;y<m.length;y++)m[y]!==void 0&&(T=Math.max(T,m[y].first));T>=c?D=c:D=T;var Q=[],N,O,L,z,k,F;for(y=v;y<A;y++)if(I=y-(y<d?0:d),C=m[I].first,C>0)if(N=[C,I],C<=D)for(O=m[I].second<<D-C,L=1<<D-C,_=0;_<L;_++)Q[O|_]=N;else for(O=m[I].second,F=P,z=C-1;z>=0;z--)k=O>>>z&1,k?(F.right||(F.right=new o),F=F.right):(F.left||(F.left=new o),F=F.left),z===0&&!F.val&&(F.val=N[1]);return{decodeLut:Q,numBitsLUTQick:D,numBitsLUT:T,tree:P,stuffedData:b,srcPtr:R,bitPos:B}},readHuffman:function(h,u,c,f){var g=u.headerInfo,d=g.numDims,v=u.headerInfo.height,A=u.headerInfo.width,p=A*v,m=this.readHuffmanTree(h,u),y=m.decodeLut,I=m.tree,_=m.stuffedData,C=m.srcPtr,x=m.bitPos,w=m.numBitsLUTQick,E=m.numBitsLUT,S=u.headerInfo.imageType===0?128:0,b,B,M,R=u.pixels.resultMask,T,D,P,Q,N,O,L,z=0;x>0&&(C++,x=0);var k=_[C],F=u.encodeMode===1,U=new c(p*d),G=U,q;if(d<2||F){for(q=0;q<d;q++)if(d>1&&(G=new c(U.buffer,p*q,p),z=0),u.headerInfo.numValidPixel===A*v)for(O=0,Q=0;Q<v;Q++)for(N=0;N<A;N++,O++){if(B=0,T=k<<x>>>32-w,D=T,32-x<w&&(T|=_[C+1]>>>64-x-w,D=T),y[D])B=y[D][1],x+=y[D][0];else for(T=k<<x>>>32-E,D=T,32-x<E&&(T|=_[C+1]>>>64-x-E,D=T),b=I,L=0;L<E;L++)if(P=T>>>E-L-1&1,b=P?b.right:b.left,!(b.left||b.right)){B=b.val,x=x+L+1;break}x>=32&&(x-=32,C++,k=_[C]),M=B-S,F?(N>0?M+=z:Q>0?M+=G[O-A]:M+=z,M&=255,G[O]=M,z=M):G[O]=M}else for(O=0,Q=0;Q<v;Q++)for(N=0;N<A;N++,O++)if(R[O]){if(B=0,T=k<<x>>>32-w,D=T,32-x<w&&(T|=_[C+1]>>>64-x-w,D=T),y[D])B=y[D][1],x+=y[D][0];else for(T=k<<x>>>32-E,D=T,32-x<E&&(T|=_[C+1]>>>64-x-E,D=T),b=I,L=0;L<E;L++)if(P=T>>>E-L-1&1,b=P?b.right:b.left,!(b.left||b.right)){B=b.val,x=x+L+1;break}x>=32&&(x-=32,C++,k=_[C]),M=B-S,F?(N>0&&R[O-1]?M+=z:Q>0&&R[O-A]?M+=G[O-A]:M+=z,M&=255,G[O]=M,z=M):G[O]=M}}else for(O=0,Q=0;Q<v;Q++)for(N=0;N<A;N++)if(O=Q*A+N,!R||R[O])for(q=0;q<d;q++,O+=p){if(B=0,T=k<<x>>>32-w,D=T,32-x<w&&(T|=_[C+1]>>>64-x-w,D=T),y[D])B=y[D][1],x+=y[D][0];else for(T=k<<x>>>32-E,D=T,32-x<E&&(T|=_[C+1]>>>64-x-E,D=T),b=I,L=0;L<E;L++)if(P=T>>>E-L-1&1,b=P?b.right:b.left,!(b.left||b.right)){B=b.val,x=x+L+1;break}x>=32&&(x-=32,C++,k=_[C]),M=B-S,G[O]=M}u.ptr=u.ptr+(C+1)*4+(x>0?4:0),u.pixels.resultPixels=U,d>1&&!f&&(u.pixels.resultPixels=s.swapDimensionOrder(U,p,d,c))},decodeBits:function(h,u,c,f,g){{var d=u.headerInfo,v=d.fileVersion,A=0,p=h.byteLength-u.ptr>=5?5:h.byteLength-u.ptr,m=new DataView(h,u.ptr,p),y=m.getUint8(0);A++;var I=y>>6,_=I===0?4:3-I,C=(y&32)>0,x=y&31,w=0;if(_===1)w=m.getUint8(A),A++;else if(_===2)w=m.getUint16(A,!0),A+=2;else if(_===4)w=m.getUint32(A,!0),A+=4;else throw"Invalid valid pixel count type";var E=2*d.maxZError,S,b,B,M,R,T,D,P,Q,N=d.numDims>1?d.maxValues[g]:d.zMax;if(C){for(u.counter.lut++,P=m.getUint8(A),A++,M=Math.ceil((P-1)*x/8),R=Math.ceil(M/4),b=new ArrayBuffer(R*4),B=new Uint8Array(b),u.ptr+=A,B.set(new Uint8Array(h,u.ptr,M)),D=new Uint32Array(b),u.ptr+=M,Q=0;P-1>>>Q;)Q++;M=Math.ceil(w*Q/8),R=Math.ceil(M/4),b=new ArrayBuffer(R*4),B=new Uint8Array(b),B.set(new Uint8Array(h,u.ptr,M)),S=new Uint32Array(b),u.ptr+=M,v>=3?T=a.unstuffLUT2(D,x,P-1,f,E,N):T=a.unstuffLUT(D,x,P-1,f,E,N),v>=3?a.unstuff2(S,c,Q,w,T):a.unstuff(S,c,Q,w,T)}else u.counter.bitstuffer++,Q=x,u.ptr+=A,Q>0&&(M=Math.ceil(w*Q/8),R=Math.ceil(M/4),b=new ArrayBuffer(R*4),B=new Uint8Array(b),B.set(new Uint8Array(h,u.ptr,M)),S=new Uint32Array(b),u.ptr+=M,v>=3?f==null?a.originalUnstuff2(S,c,Q,w):a.unstuff2(S,c,Q,w,!1,f,E,N):f==null?a.originalUnstuff(S,c,Q,w):a.unstuff(S,c,Q,w,!1,f,E,N))}},readTiles:function(h,u,c,f){var g=u.headerInfo,d=g.width,v=g.height,A=d*v,p=g.microBlockSize,m=g.imageType,y=s.getDataTypeSize(m),I=Math.ceil(d/p),_=Math.ceil(v/p);u.pixels.numBlocksY=_,u.pixels.numBlocksX=I,u.pixels.ptr=0;var C=0,x=0,w=0,E=0,S=0,b=0,B=0,M=0,R=0,T=0,D=0,P=0,Q=0,N=0,O=0,L=0,z,k,F,U,G,q,V=new c(p*p),j=v%p||p,$=d%p||p,X,K,J=g.numDims,te,ee=u.pixels.resultMask,ae=u.pixels.resultPixels,me=g.fileVersion,le=me>=5?14:15,de,_e=g.zMax,ne;for(w=0;w<_;w++)for(S=w!==_-1?p:j,E=0;E<I;E++)for(b=E!==I-1?p:$,D=w*d*p+E*p,P=d-b,te=0;te<J;te++){if(J>1?(ne=ae,D=w*d*p+E*p,ae=new c(u.pixels.resultPixels.buffer,A*te*y,A),_e=g.maxValues[te]):ne=null,B=h.byteLength-u.ptr,z=new DataView(h,u.ptr,Math.min(10,B)),k={},L=0,M=z.getUint8(0),L++,de=g.fileVersion>=5?M&4:0,R=M>>6&255,T=M>>2&le,T!==(E*p>>3&le)||de&&te===0)throw"integrity issue";if(q=M&3,q>3)throw u.ptr+=L,"Invalid block encoding ("+q+")";if(q===2){if(de)if(ee)for(C=0;C<S;C++)for(x=0;x<b;x++)ee[D]&&(ae[D]=ne[D]),D++;else for(C=0;C<S;C++)for(x=0;x<b;x++)ae[D]=ne[D],D++;u.counter.constant++,u.ptr+=L;continue}else if(q===0){if(de)throw"integrity issue";if(u.counter.uncompressed++,u.ptr+=L,Q=S*b*y,N=h.byteLength-u.ptr,Q=Q<N?Q:N,F=new ArrayBuffer(Q%y===0?Q:Q+y-Q%y),U=new Uint8Array(F),U.set(new Uint8Array(h,u.ptr,Q)),G=new c(F),O=0,ee)for(C=0;C<S;C++){for(x=0;x<b;x++)ee[D]&&(ae[D]=G[O++]),D++;D+=P}else for(C=0;C<S;C++){for(x=0;x<b;x++)ae[D++]=G[O++];D+=P}u.ptr+=O*y}else if(X=s.getDataTypeUsed(de&&m<6?4:m,R),K=s.getOnePixel(k,L,X,z),L+=s.getDataTypeSize(X),q===3)if(u.ptr+=L,u.counter.constantoffset++,ee)for(C=0;C<S;C++){for(x=0;x<b;x++)ee[D]&&(ae[D]=de?Math.min(_e,ne[D]+K):K),D++;D+=P}else for(C=0;C<S;C++){for(x=0;x<b;x++)ae[D]=de?Math.min(_e,ne[D]+K):K,D++;D+=P}else if(u.ptr+=L,s.decodeBits(h,u,V,K,te),L=0,de)if(ee)for(C=0;C<S;C++){for(x=0;x<b;x++)ee[D]&&(ae[D]=V[L++]+ne[D]),D++;D+=P}else for(C=0;C<S;C++){for(x=0;x<b;x++)ae[D]=V[L++]+ne[D],D++;D+=P}else if(ee)for(C=0;C<S;C++){for(x=0;x<b;x++)ee[D]&&(ae[D]=V[L++]),D++;D+=P}else for(C=0;C<S;C++){for(x=0;x<b;x++)ae[D++]=V[L++];D+=P}}J>1&&!f&&(u.pixels.resultPixels=s.swapDimensionOrder(u.pixels.resultPixels,A,J,c))},formatFileInfo:function(h){return{fileIdentifierString:h.headerInfo.fileIdentifierString,fileVersion:h.headerInfo.fileVersion,imageType:h.headerInfo.imageType,height:h.headerInfo.height,width:h.headerInfo.width,numValidPixel:h.headerInfo.numValidPixel,microBlockSize:h.headerInfo.microBlockSize,blobSize:h.headerInfo.blobSize,maxZError:h.headerInfo.maxZError,pixelType:s.getPixelType(h.headerInfo.imageType),eofOffset:h.eofOffset,mask:h.mask?{numBytes:h.mask.numBytes}:null,pixels:{numBlocksX:h.pixels.numBlocksX,numBlocksY:h.pixels.numBlocksY,maxValue:h.headerInfo.zMax,minValue:h.headerInfo.zMin,noDataValue:h.noDataValue}}},constructConstantSurface:function(h,u){var c=h.headerInfo.zMax,f=h.headerInfo.zMin,g=h.headerInfo.maxValues,d=h.headerInfo.numDims,v=h.headerInfo.height*h.headerInfo.width,A=0,p=0,m=0,y=h.pixels.resultMask,I=h.pixels.resultPixels;if(y)if(d>1){if(u)for(A=0;A<d;A++)for(m=A*v,c=g[A],p=0;p<v;p++)y[p]&&(I[m+p]=c);else for(p=0;p<v;p++)if(y[p])for(m=p*d,A=0;A<d;A++)I[m+d]=g[A]}else for(p=0;p<v;p++)y[p]&&(I[p]=c);else if(d>1&&f!==c)if(u)for(A=0;A<d;A++)for(m=A*v,c=g[A],p=0;p<v;p++)I[m+p]=c;else for(p=0;p<v;p++)for(m=p*d,A=0;A<d;A++)I[m+A]=g[A];else for(p=0;p<v*d;p++)I[p]=c},getDataTypeArray:function(h){var u;switch(h){case 0:u=Int8Array;break;case 1:u=Uint8Array;break;case 2:u=Int16Array;break;case 3:u=Uint16Array;break;case 4:u=Int32Array;break;case 5:u=Uint32Array;break;case 6:u=Float32Array;break;case 7:u=Float64Array;break;default:u=Float32Array}return u},getPixelType:function(h){var u;switch(h){case 0:u="S8";break;case 1:u="U8";break;case 2:u="S16";break;case 3:u="U16";break;case 4:u="S32";break;case 5:u="U32";break;case 6:u="F32";break;case 7:u="F64";break;default:u="F32"}return u},isValidPixelValue:function(h,u){if(u==null)return!1;var c;switch(h){case 0:c=u>=-128&&u<=127;break;case 1:c=u>=0&&u<=255;break;case 2:c=u>=-32768&&u<=32767;break;case 3:c=u>=0&&u<=65536;break;case 4:c=u>=-2147483648&&u<=2147483647;break;case 5:c=u>=0&&u<=4294967296;break;case 6:c=u>=-34027999387901484e22&&u<=34027999387901484e22;break;case 7:c=u>=-17976931348623157e292&&u<=17976931348623157e292;break;default:c=!1}return c},getDataTypeSize:function(h){var u=0;switch(h){case 0:case 1:u=1;break;case 2:case 3:u=2;break;case 4:case 5:case 6:u=4;break;case 7:u=8;break;default:u=h}return u},getDataTypeUsed:function(h,u){var c=h;switch(h){case 2:case 4:c=h-u;break;case 3:case 5:c=h-2*u;break;case 6:u===0?c=h:u===1?c=2:c=1;break;case 7:u===0?c=h:c=h-2*u+1;break;default:c=h;break}return c},getOnePixel:function(h,u,c,f){var g=0;switch(c){case 0:g=f.getInt8(u);break;case 1:g=f.getUint8(u);break;case 2:g=f.getInt16(u,!0);break;case 3:g=f.getUint16(u,!0);break;case 4:g=f.getInt32(u,!0);break;case 5:g=f.getUInt32(u,!0);break;case 6:g=f.getFloat32(u,!0);break;case 7:g=f.getFloat64(u,!0);break;default:throw"the decoder does not understand this pixel type"}return g},swapDimensionOrder:function(h,u,c,f,g){var d=0,v=0,A=0,p=0,m=h;if(c>1)if(m=new f(u*c),g)for(d=0;d<u;d++)for(p=d,A=0;A<c;A++,p+=u)m[p]=h[v++];else for(d=0;d<u;d++)for(p=d,A=0;A<c;A++,p+=u)m[v++]=h[p];return m}},o=function(h,u,c){this.val=h,this.left=u,this.right=c},l={decode:function(h,u){u=u||{};var c=u.noDataValue,f=0,g={};g.ptr=u.inputOffset||0,g.pixels={},s.readHeaderInfo(h,g);var d=g.headerInfo,v=d.fileVersion,A=s.getDataTypeArray(d.imageType);if(v>5)throw"unsupported lerc version 2."+v;s.readMask(h,g),d.numValidPixel!==d.width*d.height&&!g.pixels.resultMask&&(g.pixels.resultMask=u.maskData);var p=d.width*d.height;g.pixels.resultPixels=new A(p*d.numDims),g.counter={onesweep:0,uncompressed:0,lut:0,bitstuffer:0,constant:0,constantoffset:0};var m=!u.returnPixelInterleavedDims;if(d.numValidPixel!==0)if(d.zMax===d.zMin)s.constructConstantSurface(g,m);else if(v>=4&&s.checkMinMaxRanges(h,g))s.constructConstantSurface(g,m);else{var y=new DataView(h,g.ptr,2),I=y.getUint8(0);if(g.ptr++,I)s.readDataOneSweep(h,g,A,m);else if(v>1&&d.imageType<=1&&Math.abs(d.maxZError-.5)<1e-5){var _=y.getUint8(1);if(g.ptr++,g.encodeMode=_,_>2||v<4&&_>1)throw"Invalid Huffman flag "+_;_?s.readHuffman(h,g,A,m):s.readTiles(h,g,A,m)}else s.readTiles(h,g,A,m)}g.eofOffset=g.ptr;var C;u.inputOffset?(C=g.headerInfo.blobSize+u.inputOffset-g.ptr,Math.abs(C)>=1&&(g.eofOffset=u.inputOffset+g.headerInfo.blobSize)):(C=g.headerInfo.blobSize-g.ptr,Math.abs(C)>=1&&(g.eofOffset=g.headerInfo.blobSize));var x={width:d.width,height:d.height,pixelData:g.pixels.resultPixels,minValue:d.zMin,maxValue:d.zMax,validPixelCount:d.numValidPixel,dimCount:d.numDims,dimStats:{minValues:d.minValues,maxValues:d.maxValues},maskData:g.pixels.resultMask};if(g.pixels.resultMask&&s.isValidPixelValue(d.imageType,c)){var w=g.pixels.resultMask;for(f=0;f<p;f++)w[f]||(x.pixelData[f]=c);x.noDataValue=c}return g.noDataValue=c,u.returnFileInfo&&(x.fileInfo=s.formatFileInfo(g)),x},getBandCount:function(h){var u=0,c=0,f={};for(f.ptr=0,f.pixels={};c<h.byteLength-58;)s.readHeaderInfo(h,f),c+=f.headerInfo.blobSize,u++,f.ptr=c;return u}};return l}(),n=function(){var a=new ArrayBuffer(4),s=new Uint8Array(a),o=new Uint32Array(a);return o[0]=1,s[0]===1}(),r={decode:function(a,s){if(!n)throw"Big endian system is not supported.";s=s||{};var o=s.inputOffset||0,l=new Uint8Array(a,o,10),h=String.fromCharCode.apply(null,l),u,c;if(h.trim()==="CntZImage")u=e,c=1;else if(h.substring(0,5)==="Lerc2")u=i,c=2;else throw"Unexpected file identifier string: "+h;for(var f=0,g=a.byteLength-10,d,v=[],A,p,m={width:0,height:0,pixels:[],pixelType:s.pixelType,mask:null,statistics:[]},y=0;o<g;){var I=u.decode(a,{inputOffset:o,encodedMaskData:d,maskData:p,returnMask:f===0,returnEncodedMask:f===0,returnFileInfo:!0,returnPixelInterleavedDims:s.returnPixelInterleavedDims,pixelType:s.pixelType||null,noDataValue:s.noDataValue||null});o=I.fileInfo.eofOffset,p=I.maskData,f===0&&(d=I.encodedMaskData,m.width=I.width,m.height=I.height,m.dimCount=I.dimCount||1,m.pixelType=I.pixelType||I.fileInfo.pixelType,m.mask=p),c>1&&(p&&v.push(p),I.fileInfo.mask&&I.fileInfo.mask.numBytes>0&&y++),f++,m.pixels.push(I.pixelData),m.statistics.push({minValue:I.minValue,maxValue:I.maxValue,noDataValue:I.noDataValue,dimStats:I.dimStats})}var _,C,x;if(c>1&&y>1){for(x=m.width*m.height,m.bandMasks=v,p=new Uint8Array(x),p.set(v[0]),_=1;_<v.length;_++)for(A=v[_],C=0;C<x;C++)p[C]=p[C]&A[C];m.maskData=p}return m}};t.exports?t.exports=r:this.Lerc=r})()})(JY);const lke=JY.exports;let QA,to,ER;const SR={env:{emscripten_notify_memory_growth:function(t){ER=new Uint8Array(to.exports.memory.buffer)}}};class hke{init(){return QA||(typeof fetch!="undefined"?QA=fetch("data:application/wasm;base64,"+eZ).then(e=>e.arrayBuffer()).then(e=>WebAssembly.instantiate(e,SR)).then(this._init):QA=WebAssembly.instantiate(Buffer.from(eZ,"base64"),SR).then(this._init),QA)}_init(e){to=e.instance,SR.env.emscripten_notify_memory_growth(0)}decode(e,i=0){if(!to)throw new Error("ZSTDDecoder: Await .init() before decoding.");const n=e.byteLength,r=to.exports.malloc(n);ER.set(e,r),i=i||Number(to.exports.ZSTD_findDecompressedSize(r,n));const a=to.exports.malloc(i),s=to.exports.ZSTD_decompress(a,i,r,n),o=ER.slice(a,a+s);return to.exports.free(r),to.exports.free(a),o}}const eZ="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IAMNACAEQQNxBEADQCACRQ0FIAAgAkF/aiICaiIDIAEgAmotAAA6AAAgA0EDcQ0ACwsgAkEDTQ0AA0AgACACQXxqIgJqIAEgAmooAgA2AgAgAkEDSw0ACwsgAkUNAgNAIAAgAkF/aiICaiABIAJqLQAAOgAAIAINAAsMAgsgAkEDTQ0AIAIhBANAIAMgASgCADYCACABQQRqIQEgA0EEaiEDIARBfGoiBEEDSw0ACyACQQNxIQILIAJFDQADQCADIAEtAAA6AAAgA0EBaiEDIAFBAWohASACQX9qIgINAAsLIAAL8wICAn8BfgJAIAJFDQAgACACaiIDQX9qIAE6AAAgACABOgAAIAJBA0kNACADQX5qIAE6AAAgACABOgABIANBfWogAToAACAAIAE6AAIgAkEHSQ0AIANBfGogAToAACAAIAE6AAMgAkEJSQ0AIABBACAAa0EDcSIEaiIDIAFB/wFxQYGChAhsIgE2AgAgAyACIARrQXxxIgRqIgJBfGogATYCACAEQQlJDQAgAyABNgIIIAMgATYCBCACQXhqIAE2AgAgAkF0aiABNgIAIARBGUkNACADIAE2AhggAyABNgIUIAMgATYCECADIAE2AgwgAkFwaiABNgIAIAJBbGogATYCACACQWhqIAE2AgAgAkFkaiABNgIAIAQgA0EEcUEYciIEayICQSBJDQAgAa0iBUIghiAFhCEFIAMgBGohAQNAIAEgBTcDGCABIAU3AxAgASAFNwMIIAEgBTcDACABQSBqIQEgAkFgaiICQR9LDQALCyAACy8BAn8gACgCBCAAKAIAQQJ0aiICLQACIQMgACACLwEAIAEgAi0AAxAIajYCACADCy8BAn8gACgCBCAAKAIAQQJ0aiICLQACIQMgACACLwEAIAEgAi0AAxAFajYCACADCx8AIAAgASACKAIEEAg2AgAgARAEGiAAIAJBCGo2AgQLCAAgAGdBH3MLugUBDX8jAEEQayIKJAACfyAEQQNNBEAgCkEANgIMIApBDGogAyAEEAsaIAAgASACIApBDGpBBBAVIgBBbCAAEAMbIAAgACAESxsMAQsgAEEAIAEoAgBBAXRBAmoQECENQVQgAygAACIGQQ9xIgBBCksNABogAiAAQQVqNgIAIAMgBGoiAkF8aiEMIAJBeWohDiACQXtqIRAgAEEGaiELQQQh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ASIDNgLE4AEgACgCvOABIQQgACABNgK84AEgACABIAJqNgK44AEgACABIAQgA2tqNgLA4AELpgEBAX8gACAAKALs4QEQFjYCyOABIABCADcD+OABIABCADcDuOABIABBwOABakIANwMAIABBqNAAaiIBQYyAgOAANgIAIABBADYCmOIBIABCADcDiOEBIABCAzcDgOEBIABBrNABakHgEikCADcCACAAQbTQAWpB6BIoAgA2AgAgACABNgIMIAAgAEGYIGo2AgggACAAQaAwajYCBCAAIABBEGo2AgALYQEBf0G4fyEDAkAgAUEDSQ0AIAIgABAhIgFBA3YiADYCCCACIAFBAXE2AgQgAiABQQF2QQNxIgM2AgACQCADQX9qIgFBAksNAAJAIAFBAWsOAgEAAgtBbA8LIAAhAwsgAwsMACAAIAEgAkEAEC4LiAQCA38CfiADEBYhBCAAQQBBKBAQIQAgBCACSwRAIAQPCyABRQRAQX8PCwJAAkAgA0EBRg0AIAEoAAAiBkGo6r5pRg0AQXYhAyAGQXBxQdDUtMIBRw0BQQghAyACQQhJDQEgAEEAQSgQECEAIAEoAAQhASAAQQE2AhQgACABrTcDAEEADwsgASACIAMQLyIDIAJLDQAgACADNgIYQXIhAyABIARqIgVBf2otAAAiAkEIcQ0AIAJBIHEiBkUEQEFwIQMgBS0AACIFQacBSw0BIAVBB3GtQgEgBUEDdkEKaq2GIgdCA4h+IAd8IQggBEEBaiEECyACQQZ2IQMgAkECdiEFAkAgAkEDcUF/aiICQQJLBEBBACECDAELAkACQAJAIAJBAWsOAgECAAsgASAEai0AACECIARBAWohBAwCCyABIARqLwAAIQIgBEECaiEEDAELIAEgBGooAAAhAiAEQQRqIQQLIAVBAXEhBQJ+AkACQAJAIANBf2oiA0ECTQRAIANBAWsOAgIDAQtCfyAGRQ0DGiABIARqMQAADAMLIAEgBGovAACtQoACfAwCCyABIARqKAAArQwBCyABIARqKQAACyEHIAAgBTYCICAAIAI2AhwgACAHNwMAQQAhAyAAQQA2AhQgACAHIAggBhsiBzcDCCAAIAdCgIAIIAdCgIAIVBs+AhALIAMLWwEBf0G4fyEDIAIQFiICIAFNBH8gACACakF/ai0AACIAQQNxQQJ0QaAeaigC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C0Egak8NAQsgByAHKQNoNwMQIAcgBykDYDcDCCAEIA0gB0EIaiAHQdwAaiAPIA4gESAQEB4hCwwBCyACIARqIQggBCAKEAcgAkERTwRAIARBEGohAgNAIAIgCkEQaiIKEAcgAkEQaiICIAhJDQALCyAIIAlrIQIgByATNgJcIAkgCCAOa0sEQCAJIAggEWtLBEBBbCELDAILIBAgAiAOayICaiIKIANqIBBNBEAgCCAKIAMQDxoMAgsgCCAKQQAgAmsQDyEIIAcgAiADaiIDNgJkIAggAmshCCAOIQILIAlBEE8EQCADIAhqIQMDQCAIIAIQByACQRBqIQIgCEEQaiIIIANJDQALDAELAkAgCUEHTQRAIAggAi0AADoAACAIIAItAAE6AAEgCCACLQACOgACIAggAi0AAzoAAyAIQQRqIAIgCUECdCIDQcAeaigCAGoiAhAXIAIgA0HgHmooAgBrIQIgBygCZCEDDAELIAggAhAMCyADQQlJDQAgAyAIaiEDIAhBCGoiCCACQQhqIgJrQQ9MBEADQCAIIAIQDCACQQhqIQIgCEEIaiIIIANJDQAMAgALAAsDQCAIIAIQByACQRBqIQIgCEEQaiIIIANJDQALCyAHQRhqEAQaIAsgDCALEAMiAhshDCAEIAQgC2ogAhshBCAFQX9qIgUNAAsgDBADDQFBbCEMIAdBGGoQBEECSQ0BQQAhCANAIAhBA0cEQCAAIAhBAnQiAmpBrNABaiACIAdqKAJENgIAIAhBAWohCAwBCwsgBygCXCEIC0G6fyEMIA8gCGsiACANIARrSw0AIAQEfyAEIAggABALIABqBUEACyABayEMCyAHQfAAaiQAIAwLkRcCFn8FfiMAQdABayIHJAAgByAAKALw4QEiCDYCvAEgASACaiESIAggACgCgOIBaiETAkACQCAFRQRAIAEhAwwBCyAAKALE4AEhESAAKALA4AEhFSAAKAK84AEhDyAAQQE2AozhAUEAIQgDQCAIQQNHBEAgByAIQQJ0IgJqIAAgAmpBrNABaigCADYCVCAIQQFqIQgMAQsLIAcgETYCZCAHIA82AmAgByABIA9rNgJoQWwhECAHQShqIAMgBBAGEAMNASAFQQQgBUEESBshFyAHQTxqIAdBKGogACgCABATIAdBxABqIAdBKGogACgCCBATIAdBzABqIAdBKGogACgCBBATQQAhBCAHQeAAaiEMIAdB5ABqIQoDQCAHQShqEARBAksgBCAXTnJFBEAgBygCQCAHKAI8QQN0aikCACIdQhCIp0H/AXEhCyAHKAJQIAcoAkxBA3RqKQIAIh5CEIinQf8BcSEJIAcoAkggBygCREEDdGopAgAiH0IgiKchCCAeQiCIISAgHUIgiKchAgJAIB9CEIinQf8BcSIDQQJPBEACQCAGRSADQRlJckUEQCAIIAdBKGogA0EgIAcoAixrIg0gDSADSxsiDRAFIAMgDWsiA3RqIQggB0EoahAEGiADRQ0BIAdBKGogAxAFIAhqIQgMAQsgB0EoaiADEAUgCGohCCAHQShqEAQaCyAHKQJUISEgByAINgJUIAcgITcDWAwBCwJAIANFBEAgAgRAIAcoAlQhCAwDCyAHKAJYIQgMAQsCQAJAIAdBKGpBARAFIAggAkVqaiIDQQNGBEAgBygCVEF/aiIDIANFaiEIDAELIANBAnQgB2ooAlQiCCAIRWohCCADQQFGDQELIAcgBygCWDYCXAsLIAcgBygCVDYCWCAHIAg2AlQLICCnIQMgCQRAIAdBKGogCRAFIANqIQMLIAkgC2pBFE8EQCAHQShqEAQaCyALBEAgB0EoaiALEAUgAmohAgsgB0EoahAEGiAHIAcoAmggAmoiCSADajYCaCAKIAwgCCAJSxsoAgAhDSAHIAdBKGogHUIYiKdB/wFxEAggHadB//8DcWo2AjwgByAHQShqIB5CGIinQf8BcRAIIB6nQf//A3FqNgJMIAdBKGoQBBogB0EoaiAfQhiIp0H/AXEQCCEOIAdB8ABqIARBBHRqIgsgCSANaiAIazYCDCALIAg2AgggCyADNgIEIAsgAjYCACAHIA4gH6dB//8DcWo2AkQgBEEBaiEEDAELCyAEIBdIDQEgEkFgaiEYIAdB4ABqIRogB0HkAGohGyABIQMDQCAHQShqEARBAksgBCAFTnJFBEAgBygCQCAHKAI8QQN0aikCACIdQhCIp0H/AXEhCyAHKAJQIAcoAkxBA3RqKQIAIh5CEIinQf8BcSEIIAcoAkggBygCREEDdGopAgAiH0IgiKchCSAeQiCIISAgHUIgiKchDAJAIB9CEIinQf8BcSICQQJPBEACQCAGRSACQRlJckUEQCAJIAdBKGogAkEgIAcoAixrIgogCiACSxsiChAFIAIgCmsiAnRqIQkgB0EoahAEGiACRQ0BIAdBKGogAhAFIAlqIQkMAQsgB0EoaiACEAUgCWohCSAHQShqEAQaCyAHKQJUISEgByAJNgJUIAcgITcDWAwBCwJAIAJFBEAgDARAIAcoAlQhCQwDCyAHKAJYIQkMAQsCQAJAIAdBKGpBARAFIAkgDEVqaiICQQNGBEAgBygCVEF/aiICIAJFaiEJDAELIAJBAnQgB2ooAlQiCSAJRWohCSACQQFGDQELIAcgBygCWDYCXAsLIAcgBygCVDYCWCAHIAk2AlQLICCnIRQgCARAIAdBKGogCBAFIBRqIRQLIAggC2pBFE8EQCAHQShqEAQaCyALBEAgB0EoaiALEAUgDGohDAsgB0EoahAEGiAHIAcoAmggDGoiGSAUajYCaCAbIBogCSAZSxsoAgAhHCAHIAdBKGogHUIYiKdB/wFxEAggHadB//8DcWo2AjwgByAHQShqIB5CGIinQf8BcRAIIB6nQf//A3FqNgJMIAdBKGoQBBogByAHQShqIB9CGIinQf8BcRAIIB+nQf//A3FqNgJEIAcgB0HwAGogBEEDcUEEdGoiDSkDCCIdNwPIASAHIA0pAwAiHjcDwAECQAJAAkAgBygCvAEiDiAepyICaiIWIBNLDQAgAyAHKALEASIKIAJqIgtqIBhLDQAgEiADayALQSBqTw0BCyAHIAcpA8gBNwMQIAcgBykDwAE3AwggAyASIAdBCGogB0G8AWogEyAPIBUgERAeIQsMAQsgAiADaiEIIAMgDhAHIAJBEU8EQCADQRBqIQIDQCACIA5BEGoiDhAHIAJBEGoiAiAISQ0ACwsgCCAdpyIOayECIAcgFjYCvAEgDiAIIA9rSwRAIA4gCCAVa0sEQEFsIQsMAgsgESACIA9rIgJqIhYgCmogEU0EQCAIIBYgChAPGgwCCyAIIBZBACACaxAPIQggByACIApqIgo2AsQBIAggAmshCCAPIQILIA5BEE8EQCAIIApqIQoDQCAIIAIQByACQRBqIQIgCEEQaiIIIApJDQALDAELAkAgDkEHTQRAIAggAi0AADoAACAIIAItAAE6AAEgCCACLQACOgACIAggAi0AAzoAAyAIQQRqIAIgDkECdCIKQcAeaigCAGoiAhAXIAIgCkHgHmooAgBrIQIgBygCxAEhCgwBCyAIIAIQDAsgCkEJSQ0AIAggCmohCiAIQQhqIgggAkEIaiICa0EPTARAA0AgCCACEAwgAkEIaiECIAhBCGoiCCAKSQ0ADAIACwALA0AgCCACEAcgAkEQaiECIAhBEGoiCCAKSQ0ACwsgCxADBEAgCyEQDAQFIA0gDDYCACANIBkgHGogCWs2AgwgDSAJNgIIIA0gFDYCBCAEQQFqIQQgAyALaiEDDAILAAsLIAQgBUgNASAEIBdrIQtBACEEA0AgCyAFSARAIAcgB0HwAGogC0EDcUEEdGoiAikDCCIdNwPIASAHIAIpAwAiHjcDwAECQAJAAkAgBygCvAEiDCAepyICaiIKIBNLDQAgAyAHKALEASIJIAJqIhBqIBhLDQAgEiADayAQQSBqTw0BCyAHIAcpA8gBNwMgIAcgBykDwAE3AxggAyASIAdBGGogB0G8AWogEyAPIBUgERAeIRAMAQsgAiADaiEIIAMgDBAHIAJBEU8EQCADQRBqIQIDQCACIAxBEGoiDBAHIAJBEGoiAiAISQ0ACwsgCCAdpyIGayECIAcgCjYCvAEgBiAIIA9rSwRAIAYgCCAVa0sEQEFsIRAMAgsgESACIA9rIgJqIgwgCWogEU0EQCAIIAwgCRAPGgwCCyAIIAxBACACaxAPIQggByACIAlqIgk2AsQBIAggAmshCCAPIQILIAZBEE8EQCAIIAlqIQYDQCAIIAIQByACQRBqIQIgCEEQaiIIIAZJDQALDAELAkAgBkEHTQRAIAggAi0AADoAACAIIAItAAE6AAEgCCACLQACOgACIAggAi0AAzoAAyAIQQRqIAIgBkECdCIGQcAeaigCAGoiAhAXIAIgBkHgHmooAgBrIQIgBygCxAEhCQwBCyAIIAIQDAsgCUEJSQ0AIAggCWohBiAIQQhqIgggAkEIaiICa0EPTARAA0AgCCACEAwgAkEIaiECIAhBCGoiCCAGSQ0ADAIACwALA0AgCCACEAcgAkEQaiECIAhBEGoiCCAGSQ0ACwsgEBADDQMgC0EBaiELIAMgEGohAwwBCwsDQCAEQQNHBEAgACAEQQJ0IgJqQazQAWogAiAHaigCVDYCACAEQQFqIQQMAQsLIAcoArwBIQgLQbp/IRAgEyAIayIAIBIgA2tLDQAgAwR/IAMgCCAAEAsgAGoFQQALIAFrIRALIAdB0AFqJAAgEAslACAAQgA3AgAgAEEAOwEIIABBADoACyAAIAE2AgwgACACOgAKC7QFAQN/IwBBMGsiBCQAIABB/wFqIgVBfWohBgJAIAMvAQIEQCAEQRhqIAEgAhAGIgIQAw0BIARBEGogBEEYaiADEBwgBEEIaiAEQRhqIAMQHCAAIQMDQAJAIARBGGoQBCADIAZPckUEQCADIARBEGogBEEYahASOgAAIAMgBEEIaiAEQRhqEBI6AAEgBEEYahAERQ0BIANBAmohAwsgBUF+aiEFAn8DQEG6fyECIAMiASAFSw0FIAEgBEEQaiAEQRhqEBI6AAAgAUEBaiEDIARBGGoQBEEDRgRAQQIhAiAEQQhqDAILIAMgBUsNBSABIARBCGogBEEYahASOgABIAFBAmohA0EDIQIgBEEYahAEQQNHDQALIARBEGoLIQUgAyAFIARBGGoQEjoAACABIAJqIABrIQIMAwsgAyAEQRBqIARBGGoQEjoAAiADIARBCGogBEEYahASOgADIANBBGohAwwAAAsACyAEQRhqIAEgAhAGIgIQAw0AIARBEGogBEEYaiADEBwgBEEIaiAEQRhqIAMQHCAAIQMDQAJAIARBGGoQBCADIAZPckUEQCADIARBEGogBEEYahAROgAAIAMgBEEIaiAEQRhqEBE6AAEgBEEYahAERQ0BIANBAmohAwsgBUF+aiEFAn8DQEG6fyECIAMiASAFSw0EIAEgBEEQaiAEQRhqEBE6AAAgAUEBaiEDIARBGGoQBEEDRgRAQQIhAiAEQQhqDAILIAMgBUsNBCABIARBCGogBEEYahAROgABIAFBAmohA0EDIQIgBEEYahAEQQNHDQALIARBEGoLIQUgAyAFIARBGGoQEToAACABIAJqIABrIQIMAgsgAyAEQRBqIARBGGoQEToAAiADIARBCGogBEEYahAROgADIANBBGohAwwAAAsACyAEQTBqJAAgAgtpAQF/An8CQAJAIAJBB00NACABKAAAQbfIwuF+Rw0AIAAgASgABDYCmOIBQWIgAEEQaiABIAIQPiIDEAMNAhogAEKBgICAEDcDiOEBIAAgASADaiACIANrECoMAQsgACABIAIQKgtBAAsLrQMBBn8jAEGAAWsiAyQAQWIhCAJAIAJBCUkNACAAQZjQAGogAUEIaiIEIAJBeGogAEGY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wOABCwutAgIEfwF+IwBBQGoiBCQAAkACQCACQQhJDQAgASgAAEFwcUHQ1LTCAUcNACABIAIQIiEBIABCADcDCCAAQQA2AgQgACABNgIADAELIARBGGogASACEC0iAxADBEAgACADEBoMAQsgAwRAIABBuH8QGgwBCyACIAQoAjAiA2shAiABIANqIQMDQAJAIAAgAyACIARBCGoQLCIFEAMEfyAFBSACIAVBA2oiBU8NAUG4fwsQGgwCCyAGQQFqIQYgAiAFayECIAMgBWohAyAEKAIMRQ0ACyAEKAI4BEAgAkEDTQRAIABBuH8QGgwCCyADQQRqIQMLIAQoAighAiAEKQMYIQcgAEEANgIEIAAgAyABazYCACAAIAIgBmytIAcgB0J/URs3AwgLIARBQGskAAslAQF/IwBBEGsiAiQAIAIgACABEFEgAigCACEAIAJBEGokACAAC30BBH8jAEGQBGsiBCQAIARB/wE2AggCQCAEQRBqIARBCGogBEEMaiABIAIQFSIGEAMEQCAGIQUMAQtBVCEFIAQoAgwiB0EGSw0AIAMgBEEQaiAEKAIIIAcQQSIFEAMNACAAIAEgBmogAiAGayADEDwhBQsgBEGQBGokACAFC4cBAgJ/An5BABAWIQMCQANAIAEgA08EQAJAIAAoAABBcHFB0NS0wgFGBEAgACABECIiAhADRQ0BQn4PCyAAIAEQVSIEQn1WDQMgBCAFfCIFIARUIQJCfiEEIAINAyAAIAEQUiICEAMNAwsgASACayEBIAAgAmohAAwBCwtCfiAFIAEbIQQLIAQLPwIBfwF+IwBBMGsiAiQAAn5CfiACQQhqIAAgARAtDQAaQgAgAigCHEEBRg0AGiACKQMICyEDIAJBMGokACADC40BAQJ/IwBBMGsiASQAAkAgAEUNACAAKAKI4gENACABIABB/OEBaigCADYCKCABIAApAvThATcDICAAEDAgACgCqOIBIQIgASABKAIoNgIYIAEgASkDIDcDECACIAFBEGoQGyAAQQA2AqjiASABIAEoAig2AgggASABKQMgNwMAIAAgARAbCyABQTBqJAALKgECfyMAQRBrIgAkACAAQQA2AgggAEIANwMAIAAQWCEBIABBEGokACABC4cBAQN/IwBBEGsiAiQAAkAgACgCAEUgACgCBEVzDQAgAiAAKAIINgIIIAIgACkCADcDAAJ/IAIoAgAiAQRAIAIoAghBqOMJIAERBQAMAQtBqOMJECgLIgFFDQAgASAAKQIANwL04QEgAUH84QFqIAAoAgg2AgAgARBZIAEhAwsgAkEQaiQAIAMLywEBAn8jAEEgayIBJAAgAEGBgIDAADYCtOIBIABBADYCiOIBIABBADYC7OEBIABCADcDkOIBIABBADYCpOMJIABBADYC3OIBIABCADcCzOIBIABBADYCvOIBIABBADYCxOABIABCADcCnOIBIABBpOIBakIANwIAIABBrOIBakEANgIAIAFCADcCECABQgA3AhggASABKQMYNwMIIAEgASkDEDcDACABKAIIQQh2QQFxIQIgAEEANgLg4gEgACACNgKM4gEgAUEgaiQAC3YBA38jAEEwayIBJAAgAARAIAEgAEHE0AFqIgIoAgA2AiggASAAKQK80AE3AyAgACgCACEDIAEgAigCADYCGCABIAApArzQATcDECADIAFBEGoQGyABIAEoAig2AgggASABKQMgNwMAIAAgARAbCyABQTBqJAALzAEBAX8gACABKAK00AE2ApjiASAAIAEoAgQiAjYCwOABIAAgAjYCvOABIAAgAiABKAIIaiICNgK44AEgACACNgLE4AEgASgCuNABBEAgAEKBgICAEDcDiOEBIAAgAUGk0ABqNgIMIAAgAUGUIGo2AgggACABQZwwajYCBCAAIAFBDGo2AgAgAEGs0AFqIAFBqNABaigCADYCACAAQbDQAWogAUGs0AFqKAIANgIAIABBtNABaiABQbDQAWooAgA2AgAPCyAAQgA3A4jhAQs7ACACRQRAQbp/DwsgBEUEQEFsDwsgAiAEEGAEQCAAIAEgAiADIAQgBRBhDwsgACABIAIgAyAEIAUQZQtGAQF/IwBBEGsiBSQAIAVBCGogBBAOAn8gBS0ACQRAIAAgASACIAMgBBAyDAELIAAgASACIAMgBBA0CyEAIAVBEGokACAACzQAIAAgAyAEIAUQNiIFEAMEQCAFDwsgBSAESQR/IAEgAiADIAVqIAQgBWsgABA1BUG4fwsLRgEBfyMAQRBrIgUkACAFQQhqIAQQDgJ/IAUtAAkEQCAAIAEgAiADIAQQYgwBCyAAIAEgAiADIAQQNQshACAFQRBqJAAgAAtZAQF/QQ8hAiABIABJBEAgAUEE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",tZ=new hke;class uke extends Tl{constructor(e){super(),this.planarConfiguration=typeof e.PlanarConfiguration!="undefined"?e.PlanarConfiguration:1,this.samplesPerPixel=typeof e.SamplesPerPixel!="undefined"?e.SamplesPerPixel:1,this.addCompression=e.LercParameters[Pue.AddCompression]}decodeBlock(e){switch(this.addCompression){case tI.None:break;case tI.Deflate:e=KY(new Uint8Array(e)).buffer;break;case tI.Zstandard:e=tZ.decode(new Uint8Array(e)).buffer;break;default:throw new Error(`Unsupported LERC additional compression method identifier: ${this.addCompression}`)}return lke.decode(e,{returnPixelInterleavedDims:this.planarConfiguration===1}).pixels[0].buffer}}const cke=Object.freeze(Object.defineProperty({__proto__:null,zstd:tZ,default:uke},Symbol.toStringTag,{value:"Module"}));class fke extends Tl{constructor(){if(super(),typeof createImageBitmap=="undefined")throw new Error("Cannot decode WebImage as `createImageBitmap` is not available");if(typeof document=="undefined"&&typeof OffscreenCanvas=="undefined")throw new Error("Cannot decode WebImage as neither `document` nor `OffscreenCanvas` is not available")}decode(e,i){return ze(this,null,function*(){const n=new Blob([i]),r=yield createImageBitmap(n);let a;typeof document!="undefined"?(a=document.createElement("canvas"),a.width=r.width,a.height=r.height):a=new OffscreenCanvas(r.width,r.height);const s=a.getContext("2d");return s.drawImage(r,0,0),s.getImageData(0,0,r.width,r.height).data.buffer})}}const gke=Object.freeze(Object.defineProperty({__proto__:null,default:fke},Symbol.toStringTag,{value:"Module"})),dke=Worker;function Ake(){const t='function A(A,e,t,i,r,I,g){try{var n=A[I](g),a=n.value}catch(A){return void t(A)}n.done?e(a):Promise.resolve(a).then(i,r)}function e(e){return function(){var t=this,i=arguments;return new Promise((function(r,I){var g=e.apply(t,i);function n(e){A(g,r,I,n,a,"next",e)}function a(e){A(g,r,I,n,a,"throw",e)}n(void 0)}))}}function t(A){return t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(A){return typeof A}:function(A){return A&&"function"==typeof Symbol&&A.constructor===Symbol&&A!==Symbol.prototype?"symbol":typeof A},t(A)}var i={exports:{}};!function(A){var e=function(A){var e,i=Object.prototype,r=i.hasOwnProperty,I="function"==typeof Symbol?Symbol:{},g=I.iterator||"@@iterator",n=I.asyncIterator||"@@asyncIterator",a=I.toStringTag||"@@toStringTag";function o(A,e,t){return Object.defineProperty(A,e,{value:t,enumerable:!0,configurable:!0,writable:!0}),A[e]}try{o({},"")}catch(A){o=function(A,e,t){return A[e]=t}}function B(A,e,t,i){var r=e&&e.prototype instanceof h?e:h,I=Object.create(r.prototype),g=new S(i||[]);return I._invoke=function(A,e,t){var i=Q;return function(r,I){if(i===s)throw new Error("Generator is already running");if(i===f){if("throw"===r)throw I;return R()}for(t.method=r,t.arg=I;;){var g=t.delegate;if(g){var n=m(g,t);if(n){if(n===c)continue;return n}}if("next"===t.method)t.sent=t._sent=t.arg;else if("throw"===t.method){if(i===Q)throw i=f,t.arg;t.dispatchException(t.arg)}else"return"===t.method&&t.abrupt("return",t.arg);i=s;var a=C(A,e,t);if("normal"===a.type){if(i=t.done?f:E,a.arg===c)continue;return{value:a.arg,done:t.done}}"throw"===a.type&&(i=f,t.method="throw",t.arg=a.arg)}}}(A,t,g),I}function C(A,e,t){try{return{type:"normal",arg:A.call(e,t)}}catch(A){return{type:"throw",arg:A}}}A.wrap=B;var Q="suspendedStart",E="suspendedYield",s="executing",f="completed",c={};function h(){}function l(){}function u(){}var w={};o(w,g,(function(){return this}));var d=Object.getPrototypeOf,D=d&&d(d(v([])));D&&D!==i&&r.call(D,g)&&(w=D);var y=u.prototype=h.prototype=Object.create(w);function k(A){["next","throw","return"].forEach((function(e){o(A,e,(function(A){return this._invoke(e,A)}))}))}function p(A,e){function i(I,g,n,a){var o=C(A[I],A,g);if("throw"!==o.type){var B=o.arg,Q=B.value;return Q&&"object"===t(Q)&&r.call(Q,"__await")?e.resolve(Q.__await).then((function(A){i("next",A,n,a)}),(function(A){i("throw",A,n,a)})):e.resolve(Q).then((function(A){B.value=A,n(B)}),(function(A){return i("throw",A,n,a)}))}a(o.arg)}var I;this._invoke=function(A,t){function r(){return new e((function(e,r){i(A,t,e,r)}))}return I=I?I.then(r,r):r()}}function m(A,t){var i=A.iterator[t.method];if(i===e){if(t.delegate=null,"throw"===t.method){if(A.iterator.return&&(t.method="return",t.arg=e,m(A,t),"throw"===t.method))return c;t.method="throw",t.arg=new TypeError("The iterator does not provide a \'throw\' method")}return c}var r=C(i,A.iterator,t.arg);if("throw"===r.type)return t.method="throw",t.arg=r.arg,t.delegate=null,c;var I=r.arg;return I?I.done?(t[A.resultName]=I.value,t.next=A.nextLoc,"return"!==t.method&&(t.method="next",t.arg=e),t.delegate=null,c):I:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,c)}function G(A){var e={tryLoc:A[0]};1 in A&&(e.catchLoc=A[1]),2 in A&&(e.finallyLoc=A[2],e.afterLoc=A[3]),this.tryEntries.push(e)}function F(A){var e=A.completion||{};e.type="normal",delete e.arg,A.completion=e}function S(A){this.tryEntries=[{tryLoc:"root"}],A.forEach(G,this),this.reset(!0)}function v(A){if(A){var t=A[g];if(t)return t.call(A);if("function"==typeof A.next)return A;if(!isNaN(A.length)){var i=-1,I=function t(){for(;++i<A.length;)if(r.call(A,i))return t.value=A[i],t.done=!1,t;return t.value=e,t.done=!0,t};return I.next=I}}return{next:R}}function R(){return{value:e,done:!0}}return l.prototype=u,o(y,"constructor",u),o(u,"constructor",l),l.displayName=o(u,a,"GeneratorFunction"),A.isGeneratorFunction=function(A){var e="function"==typeof A&&A.constructor;return!!e&&(e===l||"GeneratorFunction"===(e.displayName||e.name))},A.mark=function(A){return Object.setPrototypeOf?Object.setPrototypeOf(A,u):(A.__proto__=u,o(A,a,"GeneratorFunction")),A.prototype=Object.create(y),A},A.awrap=function(A){return{__await:A}},k(p.prototype),o(p.prototype,n,(function(){return this})),A.AsyncIterator=p,A.async=function(e,t,i,r,I){void 0===I&&(I=Promise);var g=new p(B(e,t,i,r),I);return A.isGeneratorFunction(t)?g:g.next().then((function(A){return A.done?A.value:g.next()}))},k(y),o(y,a,"Generator"),o(y,g,(function(){return this})),o(y,"toString",(function(){return"[object Generator]"})),A.keys=function(A){var e=[];for(var t in A)e.push(t);return e.reverse(),function t(){for(;e.length;){var i=e.pop();if(i in A)return t.value=i,t.done=!1,t}return t.done=!0,t}},A.values=v,S.prototype={constructor:S,reset:function(A){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(F),!A)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=e)},stop:function(){this.done=!0;var A=this.tryEntries[0].completion;if("throw"===A.type)throw A.arg;return this.rval},dispatchException:function(A){if(this.done)throw A;var t=this;function i(i,r){return n.type="throw",n.arg=A,t.next=i,r&&(t.method="next",t.arg=e),!!r}for(var I=this.tryEntries.length-1;I>=0;--I){var g=this.tryEntries[I],n=g.completion;if("root"===g.tryLoc)return i("end");if(g.tryLoc<=this.prev){var a=r.call(g,"catchLoc"),o=r.call(g,"finallyLoc");if(a&&o){if(this.prev<g.catchLoc)return i(g.catchLoc,!0);if(this.prev<g.finallyLoc)return i(g.finallyLoc)}else if(a){if(this.prev<g.catchLoc)return i(g.catchLoc,!0)}else{if(!o)throw new Error("try statement without catch or finally");if(this.prev<g.finallyLoc)return i(g.finallyLoc)}}}},abrupt:function(A,e){for(var t=this.tryEntries.length-1;t>=0;--t){var i=this.tryEntries[t];if(i.tryLoc<=this.prev&&r.call(i,"finallyLoc")&&this.prev<i.finallyLoc){var I=i;break}}I&&("break"===A||"continue"===A)&&I.tryLoc<=e&&e<=I.finallyLoc&&(I=null);var g=I?I.completion:{};return g.type=A,g.arg=e,I?(this.method="next",this.next=I.finallyLoc,c):this.complete(g)},complete:function(A,e){if("throw"===A.type)throw A.arg;return"break"===A.type||"continue"===A.type?this.next=A.arg:"return"===A.type?(this.rval=this.arg=A.arg,this.method="return",this.next="end"):"normal"===A.type&&e&&(this.next=e),c},finish:function(A){for(var e=this.tryEntries.length-1;e>=0;--e){var t=this.tryEntries[e];if(t.finallyLoc===A)return this.complete(t.completion,t.afterLoc),F(t),c}},catch:function(A){for(var e=this.tryEntries.length-1;e>=0;--e){var t=this.tryEntries[e];if(t.tryLoc===A){var i=t.completion;if("throw"===i.type){var r=i.arg;F(t)}return r}}throw new Error("illegal catch attempt")},delegateYield:function(A,t,i){return this.delegate={iterator:v(A),resultName:t,nextLoc:i},"next"===this.method&&(this.arg=e),c}},A}(A.exports);try{regeneratorRuntime=e}catch(A){"object"===("undefined"==typeof globalThis?"undefined":t(globalThis))?globalThis.regeneratorRuntime=e:Function("r","regeneratorRuntime = r")(e)}}(i);var r=i.exports,I=new Map;function g(A,e){Array.isArray(A)||(A=[A]),A.forEach((function(A){return I.set(A,e)}))}function n(A){return a.apply(this,arguments)}function a(){return(a=e(r.mark((function A(e){var t,i;return r.wrap((function(A){for(;;)switch(A.prev=A.next){case 0:if(t=I.get(e.Compression)){A.next=3;break}throw new Error("Unknown compression method identifier: ".concat(e.Compression));case 3:return A.next=5,t();case 5:return i=A.sent,A.abrupt("return",new i(e));case 7:case"end":return A.stop()}}),A)})))).apply(this,arguments)}g([void 0,1],(function(){return Promise.resolve().then((function(){return y})).then((function(A){return A.default}))})),g(5,(function(){return Promise.resolve().then((function(){return F})).then((function(A){return A.default}))})),g(6,(function(){throw new Error("old style JPEG compression is not supported.")})),g(7,(function(){return Promise.resolve().then((function(){return N})).then((function(A){return A.default}))})),g([8,32946],(function(){return Promise.resolve().then((function(){return OA})).then((function(A){return A.default}))})),g(32773,(function(){return Promise.resolve().then((function(){return _A})).then((function(A){return A.default}))})),g(34887,(function(){return Promise.resolve().then((function(){return le})).then(function(){var A=e(r.mark((function A(e){return r.wrap((function(A){for(;;)switch(A.prev=A.next){case 0:return A.next=2,e.zstd.init();case 2:return A.abrupt("return",e);case 3:case"end":return A.stop()}}),A)})));return function(e){return A.apply(this,arguments)}}()).then((function(A){return A.default}))})),g(50001,(function(){return Promise.resolve().then((function(){return de})).then((function(A){return A.default}))}));var o=globalThis;function B(A,e){if(!(A instanceof e))throw new TypeError("Cannot call a class as a function")}function C(A,e){for(var t=0;t<e.length;t++){var i=e[t];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(A,i.key,i)}}function Q(A,e,t){return e&&C(A.prototype,e),t&&C(A,t),A}function E(A,e){return E=Object.setPrototypeOf||function(A,e){return A.__proto__=e,A},E(A,e)}function s(A,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");A.prototype=Object.create(e&&e.prototype,{constructor:{value:A,writable:!0,configurable:!0}}),e&&E(A,e)}function f(A,e){if(e&&("object"===t(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(A){if(void 0===A)throw new ReferenceError("this hasn\'t been initialised - super() hasn\'t been called");return A}(A)}function c(A){return c=Object.setPrototypeOf?Object.getPrototypeOf:function(A){return A.__proto__||Object.getPrototypeOf(A)},c(A)}function h(A,e){var t=A.length-e,i=0;do{for(var r=e;r>0;r--)A[i+e]+=A[i],i++;t-=e}while(t>0)}function l(A,e,t){for(var i=0,r=A.length,I=r/t;r>e;){for(var g=e;g>0;--g)A[i+e]+=A[i],++i;r-=e}for(var n=A.slice(),a=0;a<I;++a)for(var o=0;o<t;++o)A[t*a+o]=n[(t-o-1)*I+a]}function u(A,e,t,i,r,I){if(!e||1===e)return A;for(var g=0;g<r.length;++g){if(r[g]%8!=0)throw new Error("When decoding with predictor, only multiple of 8 bits are supported.");if(r[g]!==r[0])throw new Error("When decoding with predictor, all samples must have the same size.")}for(var n=r[0]/8,a=2===I?1:r.length,o=0;o<i&&!(o*a*t*n>=A.byteLength);++o){var B=void 0;if(2===e){switch(r[0]){case 8:B=new Uint8Array(A,o*a*t*n,a*t*n);break;case 16:B=new Uint16Array(A,o*a*t*n,a*t*n/2);break;case 32:B=new Uint32Array(A,o*a*t*n,a*t*n/4);break;default:throw new Error("Predictor 2 not allowed with ".concat(r[0]," bits per sample."))}h(B,a)}else 3===e&&l(B=new Uint8Array(A,o*a*t*n,a*t*n),a,n)}return A}o.addEventListener("message",function(){var A=e(r.mark((function A(e){var t,i,I,g,a,B;return r.wrap((function(A){for(;;)switch(A.prev=A.next){case 0:return t=e.data,i=t.id,I=t.fileDirectory,g=t.buffer,A.next=3,n(I);case 3:return a=A.sent,A.next=6,a.decode(I,g);case 6:B=A.sent,o.postMessage({decoded:B,id:i},[B]);case 8:case"end":return A.stop()}}),A)})));return function(e){return A.apply(this,arguments)}}());var w=function(){function A(){B(this,A)}var t;return Q(A,[{key:"decode",value:(t=e(r.mark((function A(e,t){var i,I,g,n,a;return r.wrap((function(A){for(;;)switch(A.prev=A.next){case 0:return A.next=2,this.decodeBlock(t);case 2:if(i=A.sent,1===(I=e.Predictor||1)){A.next=9;break}return g=!e.StripOffsets,n=g?e.TileWidth:e.ImageWidth,a=g?e.TileLength:e.RowsPerStrip||e.ImageLength,A.abrupt("return",u(i,I,n,a,e.BitsPerSample,e.PlanarConfiguration));case 9:return A.abrupt("return",i);case 10:case"end":return A.stop()}}),A,this)}))),function(A,e){return t.apply(this,arguments)})}]),A}();function d(A){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=c(A);if(e){var r=c(this).constructor;t=Reflect.construct(i,arguments,r)}else t=i.apply(this,arguments);return f(this,t)}}var D=function(A){s(t,w);var e=d(t);function t(){return B(this,t),e.apply(this,arguments)}return Q(t,[{key:"decodeBlock",value:function(A){return A}}]),t}(),y=Object.freeze({__proto__:null,default:D});function k(A){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=c(A);if(e){var r=c(this).constructor;t=Reflect.construct(i,arguments,r)}else t=i.apply(this,arguments);return f(this,t)}}function p(A,e){for(var t=e.length-1;t>=0;t--)A.push(e[t]);return A}function m(A){for(var e=new Uint16Array(4093),t=new Uint8Array(4093),i=0;i<=257;i++)e[i]=4096,t[i]=i;var r=258,I=9,g=0;function n(){r=258,I=9}function a(A){var e=function(A,e,t){var i=e%8,r=Math.floor(e/8),I=8-i,g=e+t-8*(r+1),n=8*(r+2)-(e+t),a=8*(r+2)-e;if(n=Math.max(0,n),r>=A.length)return console.warn("ran off the end of the buffer before finding EOI_CODE (end on input code)"),257;var o=A[r]&Math.pow(2,8-i)-1,B=o<<=t-I;if(r+1<A.length){var C=A[r+1]>>>n;B+=C<<=Math.max(0,t-a)}if(g>8&&r+2<A.length){var Q=8*(r+3)-(e+t);B+=A[r+2]>>>Q}return B}(A,g,I);return g+=I,e}function o(A,i){return t[r]=i,e[r]=A,++r-1}function B(A){for(var i=[],r=A;4096!==r;r=e[r])i.push(t[r]);return i}var C=[];n();for(var Q,E=new Uint8Array(A),s=a(E);257!==s;){if(256===s){for(n(),s=a(E);256===s;)s=a(E);if(257===s)break;if(s>256)throw new Error("corrupted code at scanline ".concat(s));p(C,B(s)),Q=s}else if(s<r){var f=B(s);p(C,f),o(Q,f[f.length-1]),Q=s}else{var c=B(Q);if(!c)throw new Error("Bogus entry. Not in dictionary, ".concat(Q," / ").concat(r,", position: ").concat(g));p(C,c),C.push(c[c.length-1]),o(Q,c[c.length-1]),Q=s}r+1>=Math.pow(2,I)&&(12===I?Q=void 0:I++),s=a(E)}return new Uint8Array(C)}var G=function(A){s(t,w);var e=k(t);function t(){return B(this,t),e.apply(this,arguments)}return Q(t,[{key:"decodeBlock",value:function(A){return m(A).buffer}}]),t}(),F=Object.freeze({__proto__:null,default:G});function S(A){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=c(A);if(e){var r=c(this).constructor;t=Reflect.construct(i,arguments,r)}else t=i.apply(this,arguments);return f(this,t)}}var v=new Int32Array([0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]);function R(A,e){for(var t=0,i=[],r=16;r>0&&!A[r-1];)--r;i.push({children:[],index:0});for(var I,g=i[0],n=0;n<r;n++){for(var a=0;a<A[n];a++){for((g=i.pop()).children[g.index]=e[t];g.index>0;)g=i.pop();for(g.index++,i.push(g);i.length<=n;)i.push(I={children:[],index:0}),g.children[g.index]=I.children,g=I;t++}n+1<r&&(i.push(I={children:[],index:0}),g.children[g.index]=I.children,g=I)}return i[0].children}function U(A,e,i,r,I,g,n,a,o){var B=i.mcusPerLine,C=i.progressive,Q=e,E=e,s=0,f=0;function c(){if(f>0)return f--,s>>f&1;if(255===(s=A[E++])){var e=A[E++];if(e)throw new Error("unexpected marker: ".concat((s<<8|e).toString(16)))}return f=7,s>>>7}function h(A){for(var e,i=A;null!==(e=c());){if("number"==typeof(i=i[e]))return i;if("object"!==t(i))throw new Error("invalid huffman sequence")}return null}function l(A){for(var e=A,t=0;e>0;){var i=c();if(null===i)return;t=t<<1|i,--e}return t}function u(A){var e=l(A);return e>=1<<A-1?e:e+(-1<<A)+1}var w=0;var d,D=0;function y(A,e,t,i,r){var I=t%B,g=(t/B|0)*A.v+i,n=I*A.h+r;e(A,A.blocks[g][n])}function k(A,e,t){var i=t/A.blocksPerLine|0,r=t%A.blocksPerLine;e(A,A.blocks[i][r])}var p,m,G,F,S,R,U=r.length;R=C?0===g?0===a?function(A,e){var t=h(A.huffmanTableDC),i=0===t?0:u(t)<<o;A.pred+=i,e[0]=A.pred}:function(A,e){e[0]|=c()<<o}:0===a?function(A,e){if(w>0)w--;else for(var t=g,i=n;t<=i;){var r=h(A.huffmanTableAC),I=15&r,a=r>>4;if(0===I){if(a<15){w=l(a)+(1<<a)-1;break}t+=16}else e[v[t+=a]]=u(I)*(1<<o),t++}}:function(A,e){for(var t=g,i=n,r=0;t<=i;){var I=v[t],a=e[I]<0?-1:1;switch(D){case 0:var B=h(A.huffmanTableAC),C=15&B;if(r=B>>4,0===C)r<15?(w=l(r)+(1<<r),D=4):(r=16,D=1);else{if(1!==C)throw new Error("invalid ACn encoding");d=u(C),D=r?2:3}continue;case 1:case 2:e[I]?e[I]+=(c()<<o)*a:0==--r&&(D=2===D?3:0);break;case 3:e[I]?e[I]+=(c()<<o)*a:(e[I]=d<<o,D=0);break;case 4:e[I]&&(e[I]+=(c()<<o)*a)}t++}4===D&&0==--w&&(D=0)}:function(A,e){var t=h(A.huffmanTableDC),i=0===t?0:u(t);A.pred+=i,e[0]=A.pred;for(var r=1;r<64;){var I=h(A.huffmanTableAC),g=15&I,n=I>>4;if(0===g){if(n<15)break;r+=16}else e[v[r+=n]]=u(g),r++}};var L,b,M=0;b=1===U?r[0].blocksPerLine*r[0].blocksPerColumn:B*i.mcusPerColumn;for(var N=I||b;M<b;){for(m=0;m<U;m++)r[m].pred=0;if(w=0,1===U)for(p=r[0],S=0;S<N;S++)k(p,R,M),M++;else for(S=0;S<N;S++){for(m=0;m<U;m++){var x=p=r[m],J=x.h,q=x.v;for(G=0;G<q;G++)for(F=0;F<J;F++)y(p,R,M,G,F)}if(++M===b)break}if(f=0,(L=A[E]<<8|A[E+1])<65280)throw new Error("marker was not found");if(!(L>=65488&&L<=65495))break;E+=2}return E-Q}function L(A,e){var t=[],i=e.blocksPerLine,r=e.blocksPerColumn,I=i<<3,g=new Int32Array(64),n=new Uint8Array(64);function a(A,t,i){var r,I,g,n,a,o,B,C,Q,E,s=e.quantizationTable,f=i;for(E=0;E<64;E++)f[E]=A[E]*s[E];for(E=0;E<8;++E){var c=8*E;0!==f[1+c]||0!==f[2+c]||0!==f[3+c]||0!==f[4+c]||0!==f[5+c]||0!==f[6+c]||0!==f[7+c]?(r=5793*f[0+c]+128>>8,I=5793*f[4+c]+128>>8,g=f[2+c],n=f[6+c],a=2896*(f[1+c]-f[7+c])+128>>8,C=2896*(f[1+c]+f[7+c])+128>>8,o=f[3+c]<<4,Q=r-I+1>>1,r=r+I+1>>1,I=Q,Q=3784*g+1567*n+128>>8,g=1567*g-3784*n+128>>8,n=Q,Q=a-(B=f[5+c]<<4)+1>>1,a=a+B+1>>1,B=Q,Q=C+o+1>>1,o=C-o+1>>1,C=Q,Q=r-n+1>>1,r=r+n+1>>1,n=Q,Q=I-g+1>>1,I=I+g+1>>1,g=Q,Q=2276*a+3406*C+2048>>12,a=3406*a-2276*C+2048>>12,C=Q,Q=799*o+4017*B+2048>>12,o=4017*o-799*B+2048>>12,B=Q,f[0+c]=r+C,f[7+c]=r-C,f[1+c]=I+B,f[6+c]=I-B,f[2+c]=g+o,f[5+c]=g-o,f[3+c]=n+a,f[4+c]=n-a):(Q=5793*f[0+c]+512>>10,f[0+c]=Q,f[1+c]=Q,f[2+c]=Q,f[3+c]=Q,f[4+c]=Q,f[5+c]=Q,f[6+c]=Q,f[7+c]=Q)}for(E=0;E<8;++E){var h=E;0!==f[8+h]||0!==f[16+h]||0!==f[24+h]||0!==f[32+h]||0!==f[40+h]||0!==f[48+h]||0!==f[56+h]?(r=5793*f[0+h]+2048>>12,I=5793*f[32+h]+2048>>12,g=f[16+h],n=f[48+h],a=2896*(f[8+h]-f[56+h])+2048>>12,C=2896*(f[8+h]+f[56+h])+2048>>12,o=f[24+h],Q=r-I+1>>1,r=r+I+1>>1,I=Q,Q=3784*g+1567*n+2048>>12,g=1567*g-3784*n+2048>>12,n=Q,Q=a-(B=f[40+h])+1>>1,a=a+B+1>>1,B=Q,Q=C+o+1>>1,o=C-o+1>>1,C=Q,Q=r-n+1>>1,r=r+n+1>>1,n=Q,Q=I-g+1>>1,I=I+g+1>>1,g=Q,Q=2276*a+3406*C+2048>>12,a=3406*a-2276*C+2048>>12,C=Q,Q=799*o+4017*B+2048>>12,o=4017*o-799*B+2048>>12,B=Q,f[0+h]=r+C,f[56+h]=r-C,f[8+h]=I+B,f[48+h]=I-B,f[16+h]=g+o,f[40+h]=g-o,f[24+h]=n+a,f[32+h]=n-a):(Q=5793*i[E+0]+8192>>14,f[0+h]=Q,f[8+h]=Q,f[16+h]=Q,f[24+h]=Q,f[32+h]=Q,f[40+h]=Q,f[48+h]=Q,f[56+h]=Q)}for(E=0;E<64;++E){var l=128+(f[E]+8>>4);t[E]=l<0?0:l>255?255:l}}for(var o=0;o<r;o++){for(var B=o<<3,C=0;C<8;C++)t.push(new Uint8Array(I));for(var Q=0;Q<i;Q++){a(e.blocks[o][Q],n,g);for(var E=0,s=Q<<3,f=0;f<8;f++)for(var c=t[B+f],h=0;h<8;h++)c[s+h]=n[E++]}}return t}var b=function(){function A(){B(this,A),this.jfif=null,this.adobe=null,this.quantizationTables=[],this.huffmanTablesAC=[],this.huffmanTablesDC=[],this.resetFrames()}return Q(A,[{key:"resetFrames",value:function(){this.frames=[]}},{key:"parse",value:function(A){var e=0;function t(){var t=A[e]<<8|A[e+1];return e+=2,t}function i(A){var e,t,i=0,r=0;for(t in A.components)A.components.hasOwnProperty(t)&&(i<(e=A.components[t]).h&&(i=e.h),r<e.v&&(r=e.v));var I=Math.ceil(A.samplesPerLine/8/i),g=Math.ceil(A.scanLines/8/r);for(t in A.components)if(A.components.hasOwnProperty(t)){e=A.components[t];for(var n=Math.ceil(Math.ceil(A.samplesPerLine/8)*e.h/i),a=Math.ceil(Math.ceil(A.scanLines/8)*e.v/r),o=I*e.h,B=g*e.v,C=[],Q=0;Q<B;Q++){for(var E=[],s=0;s<o;s++)E.push(new Int32Array(64));C.push(E)}e.blocksPerLine=n,e.blocksPerColumn=a,e.blocks=C}A.maxH=i,A.maxV=r,A.mcusPerLine=I,A.mcusPerColumn=g}var r,I,g=t();if(65496!==g)throw new Error("SOI not found");for(g=t();65497!==g;){switch(g){case 65280:break;case 65504:case 65505:case 65506:case 65507:case 65508:case 65509:case 65510:case 65511:case 65512:case 65513:case 65514:case 65515:case 65516:case 65517:case 65518:case 65519:case 65534:var n=(r=void 0,I=void 0,r=t(),I=A.subarray(e,e+r-2),e+=I.length,I);65504===g&&74===n[0]&&70===n[1]&&73===n[2]&&70===n[3]&&0===n[4]&&(this.jfif={version:{major:n[5],minor:n[6]},densityUnits:n[7],xDensity:n[8]<<8|n[9],yDensity:n[10]<<8|n[11],thumbWidth:n[12],thumbHeight:n[13],thumbData:n.subarray(14,14+3*n[12]*n[13])}),65518===g&&65===n[0]&&100===n[1]&&111===n[2]&&98===n[3]&&101===n[4]&&0===n[5]&&(this.adobe={version:n[6],flags0:n[7]<<8|n[8],flags1:n[9]<<8|n[10],transformCode:n[11]});break;case 65499:for(var a=t()+e-2;e<a;){var o=A[e++],B=new Int32Array(64);if(o>>4==0)for(var C=0;C<64;C++){B[v[C]]=A[e++]}else{if(o>>4!=1)throw new Error("DQT: invalid table spec");for(var Q=0;Q<64;Q++){B[v[Q]]=t()}}this.quantizationTables[15&o]=B}break;case 65472:case 65473:case 65474:t();for(var E={extended:65473===g,progressive:65474===g,precision:A[e++],scanLines:t(),samplesPerLine:t(),components:{},componentsOrder:[]},s=A[e++],f=void 0,c=0;c<s;c++){f=A[e];var h=A[e+1]>>4,l=15&A[e+1],u=A[e+2];E.componentsOrder.push(f),E.components[f]={h:h,v:l,quantizationIdx:u},e+=3}i(E),this.frames.push(E);break;case 65476:for(var w=t(),d=2;d<w;){for(var D=A[e++],y=new Uint8Array(16),k=0,p=0;p<16;p++,e++)y[p]=A[e],k+=y[p];for(var m=new Uint8Array(k),G=0;G<k;G++,e++)m[G]=A[e];d+=17+k,D>>4==0?this.huffmanTablesDC[15&D]=R(y,m):this.huffmanTablesAC[15&D]=R(y,m)}break;case 65501:t(),this.resetInterval=t();break;case 65498:t();for(var F=A[e++],S=[],L=this.frames[0],b=0;b<F;b++){var M=L.components[A[e++]],N=A[e++];M.huffmanTableDC=this.huffmanTablesDC[N>>4],M.huffmanTableAC=this.huffmanTablesAC[15&N],S.push(M)}var x=A[e++],J=A[e++],q=A[e++],Y=U(A,e,L,S,this.resetInterval,x,J,q>>4,15&q);e+=Y;break;case 65535:255!==A[e]&&e--;break;default:if(255===A[e-3]&&A[e-2]>=192&&A[e-2]<=254){e-=3;break}throw new Error("unknown JPEG marker ".concat(g.toString(16)))}g=t()}}},{key:"getResult",value:function(){var A=this.frames;if(0===this.frames.length)throw new Error("no frames were decoded");this.frames.length>1&&console.warn("more than one frame is not supported");for(var e=0;e<this.frames.length;e++)for(var t=this.frames[e].components,i=0,r=Object.keys(t);i<r.length;i++){var I=r[i];t[I].quantizationTable=this.quantizationTables[t[I].quantizationIdx],delete t[I].quantizationIdx}for(var g=A[0],n=g.components,a=g.componentsOrder,o=[],B=g.samplesPerLine,C=g.scanLines,Q=0;Q<a.length;Q++){var E=n[a[Q]];o.push({lines:L(0,E),scaleX:E.h/g.maxH,scaleY:E.v/g.maxV})}for(var s=new Uint8Array(B*C*o.length),f=0,c=0;c<C;++c)for(var h=0;h<B;++h)for(var l=0;l<o.length;++l){var u=o[l];s[f]=u.lines[0|c*u.scaleY][0|h*u.scaleX],++f}return s}}]),A}(),M=function(A){s(t,w);var e=S(t);function t(A){var i;return B(this,t),(i=e.call(this)).reader=new b,A.JPEGTables&&i.reader.parse(A.JPEGTables),i}return Q(t,[{key:"decodeBlock",value:function(A){return this.reader.resetFrames(),this.reader.parse(new Uint8Array(A)),this.reader.getResult().buffer}}]),t}(),N=Object.freeze({__proto__:null,default:M});function x(A){for(var e=A.length;--e>=0;)A[e]=0}x(new Array(576)),x(new Array(60)),x(new Array(512)),x(new Array(256)),x(new Array(29)),x(new Array(30));var J=function(A,e,t,i){for(var r=65535&A|0,I=A>>>16&65535|0,g=0;0!==t;){t-=g=t>2e3?2e3:t;do{I=I+(r=r+e[i++]|0)|0}while(--g);r%=65521,I%=65521}return r|I<<16|0},q=new Uint32Array(function(){for(var A,e=[],t=0;t<256;t++){A=t;for(var i=0;i<8;i++)A=1&A?3988292384^A>>>1:A>>>1;e[t]=A}return e}()),Y=function(A,e,t,i){var r=q,I=i+t;A^=-1;for(var g=i;g<I;g++)A=A>>>8^r[255&(A^e[g])];return-1^A},K={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"},H={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_MEM_ERROR:-4,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},O=function(A,e){return Object.prototype.hasOwnProperty.call(A,e)},P=function(A){for(var e=Array.prototype.slice.call(arguments,1);e.length;){var i=e.shift();if(i){if("object"!==t(i))throw new TypeError(i+"must be non-object");for(var r in i)O(i,r)&&(A[r]=i[r])}}return A},T=function(A){for(var e=0,t=0,i=A.length;t<i;t++)e+=A[t].length;for(var r=new Uint8Array(e),I=0,g=0,n=A.length;I<n;I++){var a=A[I];r.set(a,g),g+=a.length}return r},V=!0;try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(A){V=!1}for(var _=new Uint8Array(256),X=0;X<256;X++)_[X]=X>=252?6:X>=248?5:X>=240?4:X>=224?3:X>=192?2:1;_[254]=_[254]=1;var Z=function(A){if("function"==typeof TextEncoder&&TextEncoder.prototype.encode)return(new TextEncoder).encode(A);var e,t,i,r,I,g=A.length,n=0;for(r=0;r<g;r++)55296==(64512&(t=A.charCodeAt(r)))&&r+1<g&&56320==(64512&(i=A.charCodeAt(r+1)))&&(t=65536+(t-55296<<10)+(i-56320),r++),n+=t<128?1:t<2048?2:t<65536?3:4;for(e=new Uint8Array(n),I=0,r=0;I<n;r++)55296==(64512&(t=A.charCodeAt(r)))&&r+1<g&&56320==(64512&(i=A.charCodeAt(r+1)))&&(t=65536+(t-55296<<10)+(i-56320),r++),t<128?e[I++]=t:t<2048?(e[I++]=192|t>>>6,e[I++]=128|63&t):t<65536?(e[I++]=224|t>>>12,e[I++]=128|t>>>6&63,e[I++]=128|63&t):(e[I++]=240|t>>>18,e[I++]=128|t>>>12&63,e[I++]=128|t>>>6&63,e[I++]=128|63&t);return e},j=function(A,e){var t,i,r=e||A.length;if("function"==typeof TextDecoder&&TextDecoder.prototype.decode)return(new TextDecoder).decode(A.subarray(0,e));var I=new Array(2*r);for(i=0,t=0;t<r;){var g=A[t++];if(g<128)I[i++]=g;else{var n=_[g];if(n>4)I[i++]=65533,t+=n-1;else{for(g&=2===n?31:3===n?15:7;n>1&&t<r;)g=g<<6|63&A[t++],n--;n>1?I[i++]=65533:g<65536?I[i++]=g:(g-=65536,I[i++]=55296|g>>10&1023,I[i++]=56320|1023&g)}}}return function(A,e){if(e<65534&&A.subarray&&V)return String.fromCharCode.apply(null,A.length===e?A:A.subarray(0,e));for(var t="",i=0;i<e;i++)t+=String.fromCharCode(A[i]);return t}(I,i)},W=function(A,e){(e=e||A.length)>A.length&&(e=A.length);for(var t=e-1;t>=0&&128==(192&A[t]);)t--;return t<0||0===t?e:t+_[A[t]]>e?t:e};var z=function(){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},$=function(A,e){var t,i,r,I,g,n,a,o,B,C,Q,E,s,f,c,h,l,u,w,d,D,y,k,p,m=A.state;t=A.next_in,k=A.input,i=t+(A.avail_in-5),r=A.next_out,p=A.output,I=r-(e-A.avail_out),g=r+(A.avail_out-257),n=m.dmax,a=m.wsize,o=m.whave,B=m.wnext,C=m.window,Q=m.hold,E=m.bits,s=m.lencode,f=m.distcode,c=(1<<m.lenbits)-1,h=(1<<m.distbits)-1;A:do{E<15&&(Q+=k[t++]<<E,E+=8,Q+=k[t++]<<E,E+=8),l=s[Q&c];e:for(;;){if(Q>>>=u=l>>>24,E-=u,0===(u=l>>>16&255))p[r++]=65535&l;else{if(!(16&u)){if(0==(64&u)){l=s[(65535&l)+(Q&(1<<u)-1)];continue e}if(32&u){m.mode=12;break A}A.msg="invalid literal/length code",m.mode=30;break A}w=65535&l,(u&=15)&&(E<u&&(Q+=k[t++]<<E,E+=8),w+=Q&(1<<u)-1,Q>>>=u,E-=u),E<15&&(Q+=k[t++]<<E,E+=8,Q+=k[t++]<<E,E+=8),l=f[Q&h];t:for(;;){if(Q>>>=u=l>>>24,E-=u,!(16&(u=l>>>16&255))){if(0==(64&u)){l=f[(65535&l)+(Q&(1<<u)-1)];continue t}A.msg="invalid distance code",m.mode=30;break A}if(d=65535&l,E<(u&=15)&&(Q+=k[t++]<<E,(E+=8)<u&&(Q+=k[t++]<<E,E+=8)),(d+=Q&(1<<u)-1)>n){A.msg="invalid distance too far back",m.mode=30;break A}if(Q>>>=u,E-=u,d>(u=r-I)){if((u=d-u)>o&&m.sane){A.msg="invalid distance too far back",m.mode=30;break A}if(D=0,y=C,0===B){if(D+=a-u,u<w){w-=u;do{p[r++]=C[D++]}while(--u);D=r-d,y=p}}else if(B<u){if(D+=a+B-u,(u-=B)<w){w-=u;do{p[r++]=C[D++]}while(--u);if(D=0,B<w){w-=u=B;do{p[r++]=C[D++]}while(--u);D=r-d,y=p}}}else if(D+=B-u,u<w){w-=u;do{p[r++]=C[D++]}while(--u);D=r-d,y=p}for(;w>2;)p[r++]=y[D++],p[r++]=y[D++],p[r++]=y[D++],w-=3;w&&(p[r++]=y[D++],w>1&&(p[r++]=y[D++]))}else{D=r-d;do{p[r++]=p[D++],p[r++]=p[D++],p[r++]=p[D++],w-=3}while(w>2);w&&(p[r++]=p[D++],w>1&&(p[r++]=p[D++]))}break}}break}}while(t<i&&r<g);t-=w=E>>3,Q&=(1<<(E-=w<<3))-1,A.next_in=t,A.next_out=r,A.avail_in=t<i?i-t+5:5-(t-i),A.avail_out=r<g?g-r+257:257-(r-g),m.hold=Q,m.bits=E},AA=new Uint16Array([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]),eA=new Uint8Array([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]),tA=new Uint16Array([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]),iA=new Uint8Array([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]),rA=function(A,e,t,i,r,I,g,n){var a,o,B,C,Q,E,s,f,c,h=n.bits,l=0,u=0,w=0,d=0,D=0,y=0,k=0,p=0,m=0,G=0,F=null,S=0,v=new Uint16Array(16),R=new Uint16Array(16),U=null,L=0;for(l=0;l<=15;l++)v[l]=0;for(u=0;u<i;u++)v[e[t+u]]++;for(D=h,d=15;d>=1&&0===v[d];d--);if(D>d&&(D=d),0===d)return r[I++]=20971520,r[I++]=20971520,n.bits=1,0;for(w=1;w<d&&0===v[w];w++);for(D<w&&(D=w),p=1,l=1;l<=15;l++)if(p<<=1,(p-=v[l])<0)return-1;if(p>0&&(0===A||1!==d))return-1;for(R[1]=0,l=1;l<15;l++)R[l+1]=R[l]+v[l];for(u=0;u<i;u++)0!==e[t+u]&&(g[R[e[t+u]]++]=u);if(0===A?(F=U=g,E=19):1===A?(F=AA,S-=257,U=eA,L-=257,E=256):(F=tA,U=iA,E=-1),G=0,u=0,l=w,Q=I,y=D,k=0,B=-1,C=(m=1<<D)-1,1===A&&m>852||2===A&&m>592)return 1;for(;;){s=l-k,g[u]<E?(f=0,c=g[u]):g[u]>E?(f=U[L+g[u]],c=F[S+g[u]]):(f=96,c=0),a=1<<l-k,w=o=1<<y;do{r[Q+(G>>k)+(o-=a)]=s<<24|f<<16|c|0}while(0!==o);for(a=1<<l-1;G&a;)a>>=1;if(0!==a?(G&=a-1,G+=a):G=0,u++,0==--v[l]){if(l===d)break;l=e[t+g[u]]}if(l>D&&(G&C)!==B){for(0===k&&(k=D),Q+=w,p=1<<(y=l-k);y+k<d&&!((p-=v[y+k])<=0);)y++,p<<=1;if(m+=1<<y,1===A&&m>852||2===A&&m>592)return 1;r[B=G&C]=D<<24|y<<16|Q-I|0}}return 0!==G&&(r[Q+G]=l-k<<24|64<<16|0),n.bits=D,0},IA=H.Z_FINISH,gA=H.Z_BLOCK,nA=H.Z_TREES,aA=H.Z_OK,oA=H.Z_STREAM_END,BA=H.Z_NEED_DICT,CA=H.Z_STREAM_ERROR,QA=H.Z_DATA_ERROR,EA=H.Z_MEM_ERROR,sA=H.Z_BUF_ERROR,fA=H.Z_DEFLATED,cA=function(A){return(A>>>24&255)+(A>>>8&65280)+((65280&A)<<8)+((255&A)<<24)};function hA(){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 Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}var lA,uA,wA=function(A){if(!A||!A.state)return CA;var e=A.state;return A.total_in=A.total_out=e.total=0,A.msg="",e.wrap&&(A.adler=1&e.wrap),e.mode=1,e.last=0,e.havedict=0,e.dmax=32768,e.head=null,e.hold=0,e.bits=0,e.lencode=e.lendyn=new Int32Array(852),e.distcode=e.distdyn=new Int32Array(592),e.sane=1,e.back=-1,aA},dA=function(A){if(!A||!A.state)return CA;var e=A.state;return e.wsize=0,e.whave=0,e.wnext=0,wA(A)},DA=function(A,e){var t;if(!A||!A.state)return CA;var i=A.state;return e<0?(t=0,e=-e):(t=1+(e>>4),e<48&&(e&=15)),e&&(e<8||e>15)?CA:(null!==i.window&&i.wbits!==e&&(i.window=null),i.wrap=t,i.wbits=e,dA(A))},yA=function(A,e){if(!A)return CA;var t=new hA;A.state=t,t.window=null;var i=DA(A,e);return i!==aA&&(A.state=null),i},kA=!0,pA=function(A){if(kA){lA=new Int32Array(512),uA=new Int32Array(32);for(var e=0;e<144;)A.lens[e++]=8;for(;e<256;)A.lens[e++]=9;for(;e<280;)A.lens[e++]=7;for(;e<288;)A.lens[e++]=8;for(rA(1,A.lens,0,288,lA,0,A.work,{bits:9}),e=0;e<32;)A.lens[e++]=5;rA(2,A.lens,0,32,uA,0,A.work,{bits:5}),kA=!1}A.lencode=lA,A.lenbits=9,A.distcode=uA,A.distbits=5},mA=function(A,e,t,i){var r,I=A.state;return null===I.window&&(I.wsize=1<<I.wbits,I.wnext=0,I.whave=0,I.window=new Uint8Array(I.wsize)),i>=I.wsize?(I.window.set(e.subarray(t-I.wsize,t),0),I.wnext=0,I.whave=I.wsize):((r=I.wsize-I.wnext)>i&&(r=i),I.window.set(e.subarray(t-i,t-i+r),I.wnext),(i-=r)?(I.window.set(e.subarray(t-i,t),0),I.wnext=i,I.whave=I.wsize):(I.wnext+=r,I.wnext===I.wsize&&(I.wnext=0),I.whave<I.wsize&&(I.whave+=r))),0},GA={inflateReset:dA,inflateReset2:DA,inflateResetKeep:wA,inflateInit:function(A){return yA(A,15)},inflateInit2:yA,inflate:function(A,e){var t,i,r,I,g,n,a,o,B,C,Q,E,s,f,c,h,l,u,w,d,D,y,k,p,m=0,G=new Uint8Array(4),F=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(!A||!A.state||!A.output||!A.input&&0!==A.avail_in)return CA;12===(t=A.state).mode&&(t.mode=13),g=A.next_out,r=A.output,a=A.avail_out,I=A.next_in,i=A.input,n=A.avail_in,o=t.hold,B=t.bits,C=n,Q=a,y=aA;A:for(;;)switch(t.mode){case 1:if(0===t.wrap){t.mode=13;break}for(;B<16;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}if(2&t.wrap&&35615===o){t.check=0,G[0]=255&o,G[1]=o>>>8&255,t.check=Y(t.check,G,2,0),o=0,B=0,t.mode=2;break}if(t.flags=0,t.head&&(t.head.done=!1),!(1&t.wrap)||(((255&o)<<8)+(o>>8))%31){A.msg="incorrect header check",t.mode=30;break}if((15&o)!==fA){A.msg="unknown compression method",t.mode=30;break}if(B-=4,D=8+(15&(o>>>=4)),0===t.wbits)t.wbits=D;else if(D>t.wbits){A.msg="invalid window size",t.mode=30;break}t.dmax=1<<t.wbits,A.adler=t.check=1,t.mode=512&o?10:12,o=0,B=0;break;case 2:for(;B<16;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}if(t.flags=o,(255&t.flags)!==fA){A.msg="unknown compression method",t.mode=30;break}if(57344&t.flags){A.msg="unknown header flags set",t.mode=30;break}t.head&&(t.head.text=o>>8&1),512&t.flags&&(G[0]=255&o,G[1]=o>>>8&255,t.check=Y(t.check,G,2,0)),o=0,B=0,t.mode=3;case 3:for(;B<32;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}t.head&&(t.head.time=o),512&t.flags&&(G[0]=255&o,G[1]=o>>>8&255,G[2]=o>>>16&255,G[3]=o>>>24&255,t.check=Y(t.check,G,4,0)),o=0,B=0,t.mode=4;case 4:for(;B<16;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}t.head&&(t.head.xflags=255&o,t.head.os=o>>8),512&t.flags&&(G[0]=255&o,G[1]=o>>>8&255,t.check=Y(t.check,G,2,0)),o=0,B=0,t.mode=5;case 5:if(1024&t.flags){for(;B<16;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}t.length=o,t.head&&(t.head.extra_len=o),512&t.flags&&(G[0]=255&o,G[1]=o>>>8&255,t.check=Y(t.check,G,2,0)),o=0,B=0}else t.head&&(t.head.extra=null);t.mode=6;case 6:if(1024&t.flags&&((E=t.length)>n&&(E=n),E&&(t.head&&(D=t.head.extra_len-t.length,t.head.extra||(t.head.extra=new Uint8Array(t.head.extra_len)),t.head.extra.set(i.subarray(I,I+E),D)),512&t.flags&&(t.check=Y(t.check,i,E,I)),n-=E,I+=E,t.length-=E),t.length))break A;t.length=0,t.mode=7;case 7:if(2048&t.flags){if(0===n)break A;E=0;do{D=i[I+E++],t.head&&D&&t.length<65536&&(t.head.name+=String.fromCharCode(D))}while(D&&E<n);if(512&t.flags&&(t.check=Y(t.check,i,E,I)),n-=E,I+=E,D)break A}else t.head&&(t.head.name=null);t.length=0,t.mode=8;case 8:if(4096&t.flags){if(0===n)break A;E=0;do{D=i[I+E++],t.head&&D&&t.length<65536&&(t.head.comment+=String.fromCharCode(D))}while(D&&E<n);if(512&t.flags&&(t.check=Y(t.check,i,E,I)),n-=E,I+=E,D)break A}else t.head&&(t.head.comment=null);t.mode=9;case 9:if(512&t.flags){for(;B<16;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}if(o!==(65535&t.check)){A.msg="header crc mismatch",t.mode=30;break}o=0,B=0}t.head&&(t.head.hcrc=t.flags>>9&1,t.head.done=!0),A.adler=t.check=0,t.mode=12;break;case 10:for(;B<32;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}A.adler=t.check=cA(o),o=0,B=0,t.mode=11;case 11:if(0===t.havedict)return A.next_out=g,A.avail_out=a,A.next_in=I,A.avail_in=n,t.hold=o,t.bits=B,BA;A.adler=t.check=1,t.mode=12;case 12:if(e===gA||e===nA)break A;case 13:if(t.last){o>>>=7&B,B-=7&B,t.mode=27;break}for(;B<3;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}switch(t.last=1&o,B-=1,3&(o>>>=1)){case 0:t.mode=14;break;case 1:if(pA(t),t.mode=20,e===nA){o>>>=2,B-=2;break A}break;case 2:t.mode=17;break;case 3:A.msg="invalid block type",t.mode=30}o>>>=2,B-=2;break;case 14:for(o>>>=7&B,B-=7&B;B<32;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}if((65535&o)!=(o>>>16^65535)){A.msg="invalid stored block lengths",t.mode=30;break}if(t.length=65535&o,o=0,B=0,t.mode=15,e===nA)break A;case 15:t.mode=16;case 16:if(E=t.length){if(E>n&&(E=n),E>a&&(E=a),0===E)break A;r.set(i.subarray(I,I+E),g),n-=E,I+=E,a-=E,g+=E,t.length-=E;break}t.mode=12;break;case 17:for(;B<14;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}if(t.nlen=257+(31&o),o>>>=5,B-=5,t.ndist=1+(31&o),o>>>=5,B-=5,t.ncode=4+(15&o),o>>>=4,B-=4,t.nlen>286||t.ndist>30){A.msg="too many length or distance symbols",t.mode=30;break}t.have=0,t.mode=18;case 18:for(;t.have<t.ncode;){for(;B<3;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}t.lens[F[t.have++]]=7&o,o>>>=3,B-=3}for(;t.have<19;)t.lens[F[t.have++]]=0;if(t.lencode=t.lendyn,t.lenbits=7,k={bits:t.lenbits},y=rA(0,t.lens,0,19,t.lencode,0,t.work,k),t.lenbits=k.bits,y){A.msg="invalid code lengths set",t.mode=30;break}t.have=0,t.mode=19;case 19:for(;t.have<t.nlen+t.ndist;){for(;h=(m=t.lencode[o&(1<<t.lenbits)-1])>>>16&255,l=65535&m,!((c=m>>>24)<=B);){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}if(l<16)o>>>=c,B-=c,t.lens[t.have++]=l;else{if(16===l){for(p=c+2;B<p;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}if(o>>>=c,B-=c,0===t.have){A.msg="invalid bit length repeat",t.mode=30;break}D=t.lens[t.have-1],E=3+(3&o),o>>>=2,B-=2}else if(17===l){for(p=c+3;B<p;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}B-=c,D=0,E=3+(7&(o>>>=c)),o>>>=3,B-=3}else{for(p=c+7;B<p;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}B-=c,D=0,E=11+(127&(o>>>=c)),o>>>=7,B-=7}if(t.have+E>t.nlen+t.ndist){A.msg="invalid bit length repeat",t.mode=30;break}for(;E--;)t.lens[t.have++]=D}}if(30===t.mode)break;if(0===t.lens[256]){A.msg="invalid code -- missing end-of-block",t.mode=30;break}if(t.lenbits=9,k={bits:t.lenbits},y=rA(1,t.lens,0,t.nlen,t.lencode,0,t.work,k),t.lenbits=k.bits,y){A.msg="invalid literal/lengths set",t.mode=30;break}if(t.distbits=6,t.distcode=t.distdyn,k={bits:t.distbits},y=rA(2,t.lens,t.nlen,t.ndist,t.distcode,0,t.work,k),t.distbits=k.bits,y){A.msg="invalid distances set",t.mode=30;break}if(t.mode=20,e===nA)break A;case 20:t.mode=21;case 21:if(n>=6&&a>=258){A.next_out=g,A.avail_out=a,A.next_in=I,A.avail_in=n,t.hold=o,t.bits=B,$(A,Q),g=A.next_out,r=A.output,a=A.avail_out,I=A.next_in,i=A.input,n=A.avail_in,o=t.hold,B=t.bits,12===t.mode&&(t.back=-1);break}for(t.back=0;h=(m=t.lencode[o&(1<<t.lenbits)-1])>>>16&255,l=65535&m,!((c=m>>>24)<=B);){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}if(h&&0==(240&h)){for(u=c,w=h,d=l;h=(m=t.lencode[d+((o&(1<<u+w)-1)>>u)])>>>16&255,l=65535&m,!(u+(c=m>>>24)<=B);){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}o>>>=u,B-=u,t.back+=u}if(o>>>=c,B-=c,t.back+=c,t.length=l,0===h){t.mode=26;break}if(32&h){t.back=-1,t.mode=12;break}if(64&h){A.msg="invalid literal/length code",t.mode=30;break}t.extra=15&h,t.mode=22;case 22:if(t.extra){for(p=t.extra;B<p;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}t.length+=o&(1<<t.extra)-1,o>>>=t.extra,B-=t.extra,t.back+=t.extra}t.was=t.length,t.mode=23;case 23:for(;h=(m=t.distcode[o&(1<<t.distbits)-1])>>>16&255,l=65535&m,!((c=m>>>24)<=B);){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}if(0==(240&h)){for(u=c,w=h,d=l;h=(m=t.distcode[d+((o&(1<<u+w)-1)>>u)])>>>16&255,l=65535&m,!(u+(c=m>>>24)<=B);){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}o>>>=u,B-=u,t.back+=u}if(o>>>=c,B-=c,t.back+=c,64&h){A.msg="invalid distance code",t.mode=30;break}t.offset=l,t.extra=15&h,t.mode=24;case 24:if(t.extra){for(p=t.extra;B<p;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}t.offset+=o&(1<<t.extra)-1,o>>>=t.extra,B-=t.extra,t.back+=t.extra}if(t.offset>t.dmax){A.msg="invalid distance too far back",t.mode=30;break}t.mode=25;case 25:if(0===a)break A;if(E=Q-a,t.offset>E){if((E=t.offset-E)>t.whave&&t.sane){A.msg="invalid distance too far back",t.mode=30;break}E>t.wnext?(E-=t.wnext,s=t.wsize-E):s=t.wnext-E,E>t.length&&(E=t.length),f=t.window}else f=r,s=g-t.offset,E=t.length;E>a&&(E=a),a-=E,t.length-=E;do{r[g++]=f[s++]}while(--E);0===t.length&&(t.mode=21);break;case 26:if(0===a)break A;r[g++]=t.length,a--,t.mode=21;break;case 27:if(t.wrap){for(;B<32;){if(0===n)break A;n--,o|=i[I++]<<B,B+=8}if(Q-=a,A.total_out+=Q,t.total+=Q,Q&&(A.adler=t.check=t.flags?Y(t.check,r,Q,g-Q):J(t.check,r,Q,g-Q)),Q=a,(t.flags?o:cA(o))!==t.check){A.msg="incorrect data check",t.mode=30;break}o=0,B=0}t.mode=28;case 28:if(t.wrap&&t.flags){for(;B<32;){if(0===n)break A;n--,o+=i[I++]<<B,B+=8}if(o!==(4294967295&t.total)){A.msg="incorrect length check",t.mode=30;break}o=0,B=0}t.mode=29;case 29:y=oA;break A;case 30:y=QA;break A;case 31:return EA;default:return CA}return A.next_out=g,A.avail_out=a,A.next_in=I,A.avail_in=n,t.hold=o,t.bits=B,(t.wsize||Q!==A.avail_out&&t.mode<30&&(t.mode<27||e!==IA))&&mA(A,A.output,A.next_out,Q-A.avail_out),C-=A.avail_in,Q-=A.avail_out,A.total_in+=C,A.total_out+=Q,t.total+=Q,t.wrap&&Q&&(A.adler=t.check=t.flags?Y(t.check,r,Q,A.next_out-Q):J(t.check,r,Q,A.next_out-Q)),A.data_type=t.bits+(t.last?64:0)+(12===t.mode?128:0)+(20===t.mode||15===t.mode?256:0),(0===C&&0===Q||e===IA)&&y===aA&&(y=sA),y},inflateEnd:function(A){if(!A||!A.state)return CA;var e=A.state;return e.window&&(e.window=null),A.state=null,aA},inflateGetHeader:function(A,e){if(!A||!A.state)return CA;var t=A.state;return 0==(2&t.wrap)?CA:(t.head=e,e.done=!1,aA)},inflateSetDictionary:function(A,e){var t,i=e.length;return A&&A.state?0!==(t=A.state).wrap&&11!==t.mode?CA:11===t.mode&&J(1,e,i,0)!==t.check?QA:mA(A,e,i,i)?(t.mode=31,EA):(t.havedict=1,aA):CA},inflateInfo:"pako inflate (from Nodeca project)"};var FA=function(){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},SA=Object.prototype.toString,vA=H.Z_NO_FLUSH,RA=H.Z_FINISH,UA=H.Z_OK,LA=H.Z_STREAM_END,bA=H.Z_NEED_DICT,MA=H.Z_STREAM_ERROR,NA=H.Z_DATA_ERROR,xA=H.Z_MEM_ERROR;function JA(A){this.options=P({chunkSize:65536,windowBits:15,to:""},A||{});var e=this.options;e.raw&&e.windowBits>=0&&e.windowBits<16&&(e.windowBits=-e.windowBits,0===e.windowBits&&(e.windowBits=-15)),!(e.windowBits>=0&&e.windowBits<16)||A&&A.windowBits||(e.windowBits+=32),e.windowBits>15&&e.windowBits<48&&0==(15&e.windowBits)&&(e.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new z,this.strm.avail_out=0;var t=GA.inflateInit2(this.strm,e.windowBits);if(t!==UA)throw new Error(K[t]);if(this.header=new FA,GA.inflateGetHeader(this.strm,this.header),e.dictionary&&("string"==typeof e.dictionary?e.dictionary=Z(e.dictionary):"[object ArrayBuffer]"===SA.call(e.dictionary)&&(e.dictionary=new Uint8Array(e.dictionary)),e.raw&&(t=GA.inflateSetDictionary(this.strm,e.dictionary))!==UA))throw new Error(K[t])}function qA(A,e){var t=new JA(e);if(t.push(A),t.err)throw t.msg||K[t.err];return t.result}JA.prototype.push=function(A,e){var t,i,r,I=this.strm,g=this.options.chunkSize,n=this.options.dictionary;if(this.ended)return!1;for(i=e===~~e?e:!0===e?RA:vA,"[object ArrayBuffer]"===SA.call(A)?I.input=new Uint8Array(A):I.input=A,I.next_in=0,I.avail_in=I.input.length;;){for(0===I.avail_out&&(I.output=new Uint8Array(g),I.next_out=0,I.avail_out=g),(t=GA.inflate(I,i))===bA&&n&&((t=GA.inflateSetDictionary(I,n))===UA?t=GA.inflate(I,i):t===NA&&(t=bA));I.avail_in>0&&t===LA&&I.state.wrap>0&&0!==A[I.next_in];)GA.inflateReset(I),t=GA.inflate(I,i);switch(t){case MA:case NA:case bA:case xA:return this.onEnd(t),this.ended=!0,!1}if(r=I.avail_out,I.next_out&&(0===I.avail_out||t===LA))if("string"===this.options.to){var a=W(I.output,I.next_out),o=I.next_out-a,B=j(I.output,a);I.next_out=o,I.avail_out=g-o,o&&I.output.set(I.output.subarray(a,a+o),0),this.onData(B)}else this.onData(I.output.length===I.next_out?I.output:I.output.subarray(0,I.next_out));if(t!==UA||0!==r){if(t===LA)return t=GA.inflateEnd(this.strm),this.onEnd(t),this.ended=!0,!0;if(0===I.avail_in)break}}return!0},JA.prototype.onData=function(A){this.chunks.push(A)},JA.prototype.onEnd=function(A){A===UA&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=T(this.chunks)),this.chunks=[],this.err=A,this.msg=this.strm.msg};var YA={Inflate:JA,inflate:qA,inflateRaw:function(A,e){return(e=e||{}).raw=!0,qA(A,e)},ungzip:qA,constants:H}.inflate;function KA(A){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=c(A);if(e){var r=c(this).constructor;t=Reflect.construct(i,arguments,r)}else t=i.apply(this,arguments);return f(this,t)}}var HA=function(A){s(t,w);var e=KA(t);function t(){return B(this,t),e.apply(this,arguments)}return Q(t,[{key:"decodeBlock",value:function(A){return YA(new Uint8Array(A)).buffer}}]),t}(),OA=Object.freeze({__proto__:null,default:HA});function PA(A){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=c(A);if(e){var r=c(this).constructor;t=Reflect.construct(i,arguments,r)}else t=i.apply(this,arguments);return f(this,t)}}var TA,VA=function(A){s(t,w);var e=PA(t);function t(){return B(this,t),e.apply(this,arguments)}return Q(t,[{key:"decodeBlock",value:function(A){for(var e=new DataView(A),t=[],i=0;i<A.byteLength;++i){var r=e.getInt8(i);if(r<0){var I=e.getUint8(i+1);r=-r;for(var g=0;g<=r;++g)t.push(I);i+=1}else{for(var n=0;n<=r;++n)t.push(e.getUint8(i+n+1));i+=r+1}}return new Uint8Array(t).buffer}}]),t}(),_A=Object.freeze({__proto__:null,default:VA}),XA={exports:{}};TA=XA,\n/* Copyright 2015-2021 Esri. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 @preserve */\nfunction(){var A,e,t,i,r,I,g,n,a,o,B,C,Q,E,s,f,c=(A={defaultNoDataValue:-34027999387901484e22,decode:function(I,g){var n=(g=g||{}).encodedMaskData||null===g.encodedMaskData,a=r(I,g.inputOffset||0,n),o=null!==g.noDataValue?g.noDataValue:A.defaultNoDataValue,B=e(a,g.pixelType||Float32Array,g.encodedMaskData,o,g.returnMask),C={width:a.width,height:a.height,pixelData:B.resultPixels,minValue:B.minValue,maxValue:a.pixels.maxValue,noDataValue:o};return B.resultMask&&(C.maskData=B.resultMask),g.returnEncodedMask&&a.mask&&(C.encodedMaskData=a.mask.bitset?a.mask.bitset:null),g.returnFileInfo&&(C.fileInfo=t(a),g.computeUsedBitDepths&&(C.fileInfo.bitDepths=i(a))),C}},e=function(A,e,t,i,r){var g,n,a,o=0,B=A.pixels.numBlocksX,C=A.pixels.numBlocksY,Q=Math.floor(A.width/B),E=Math.floor(A.height/C),s=2*A.maxZError,f=Number.MAX_VALUE;t=t||(A.mask?A.mask.bitset:null),n=new e(A.width*A.height),r&&t&&(a=new Uint8Array(A.width*A.height));for(var c,h,l=new Float32Array(Q*E),u=0;u<=C;u++){var w=u!==C?E:A.height%C;if(0!==w)for(var d=0;d<=B;d++){var D=d!==B?Q:A.width%B;if(0!==D){var y,k,p,m,G=u*A.width*E+d*Q,F=A.width-D,S=A.pixels.blocks[o];if(S.encoding<2?(0===S.encoding?y=S.rawData:(I(S.stuffedData,S.bitsPerPixel,S.numValidPixels,S.offset,s,l,A.pixels.maxValue),y=l),k=0):p=2===S.encoding?0:S.offset,t)for(h=0;h<w;h++){for(7&G&&(m=t[G>>3],m<<=7&G),c=0;c<D;c++)7&G||(m=t[G>>3]),128&m?(a&&(a[G]=1),f=f>(g=S.encoding<2?y[k++]:p)?g:f,n[G++]=g):(a&&(a[G]=0),n[G++]=i),m<<=1;G+=F}else if(S.encoding<2)for(h=0;h<w;h++){for(c=0;c<D;c++)f=f>(g=y[k++])?g:f,n[G++]=g;G+=F}else for(f=f>p?p:f,h=0;h<w;h++){for(c=0;c<D;c++)n[G++]=p;G+=F}if(1===S.encoding&&k!==S.numValidPixels)throw"Block and Mask do not match";o++}}}return{resultPixels:n,resultMask:a,minValue:f}},t=function(A){return{fileIdentifierString:A.fileIdentifierString,fileVersion:A.fileVersion,imageType:A.imageType,height:A.height,width:A.width,maxZError:A.maxZError,eofOffset:A.eofOffset,mask:A.mask?{numBlocksX:A.mask.numBlocksX,numBlocksY:A.mask.numBlocksY,numBytes:A.mask.numBytes,maxValue:A.mask.maxValue}:null,pixels:{numBlocksX:A.pixels.numBlocksX,numBlocksY:A.pixels.numBlocksY,numBytes:A.pixels.numBytes,maxValue:A.pixels.maxValue,noDataValue:A.noDataValue}}},i=function(A){for(var e=A.pixels.numBlocksX*A.pixels.numBlocksY,t={},i=0;i<e;i++){var r=A.pixels.blocks[i];0===r.encoding?t.float32=!0:1===r.encoding?t[r.bitsPerPixel]=!0:t[0]=!0}return Object.keys(t)},r=function(A,e,t){var i={},r=new Uint8Array(A,e,10);if(i.fileIdentifierString=String.fromCharCode.apply(null,r),"CntZImage"!==i.fileIdentifierString.trim())throw"Unexpected file identifier string: "+i.fileIdentifierString;e+=10;var I=new DataView(A,e,24);if(i.fileVersion=I.getInt32(0,!0),i.imageType=I.getInt32(4,!0),i.height=I.getUint32(8,!0),i.width=I.getUint32(12,!0),i.maxZError=I.getFloat64(16,!0),e+=24,!t)if(I=new DataView(A,e,16),i.mask={},i.mask.numBlocksY=I.getUint32(0,!0),i.mask.numBlocksX=I.getUint32(4,!0),i.mask.numBytes=I.getUint32(8,!0),i.mask.maxValue=I.getFloat32(12,!0),e+=16,i.mask.numBytes>0){var g=new Uint8Array(Math.ceil(i.width*i.height/8)),n=(I=new DataView(A,e,i.mask.numBytes)).getInt16(0,!0),a=2,o=0;do{if(n>0)for(;n--;)g[o++]=I.getUint8(a++);else{var B=I.getUint8(a++);for(n=-n;n--;)g[o++]=B}n=I.getInt16(a,!0),a+=2}while(a<i.mask.numBytes);if(-32768!==n||o<g.length)throw"Unexpected end of mask RLE encoding";i.mask.bitset=g,e+=i.mask.numBytes}else 0==(i.mask.numBytes|i.mask.numBlocksY|i.mask.maxValue)&&(i.mask.bitset=new Uint8Array(Math.ceil(i.width*i.height/8)));I=new DataView(A,e,16),i.pixels={},i.pixels.numBlocksY=I.getUint32(0,!0),i.pixels.numBlocksX=I.getUint32(4,!0),i.pixels.numBytes=I.getUint32(8,!0),i.pixels.maxValue=I.getFloat32(12,!0),e+=16;var C=i.pixels.numBlocksX,Q=i.pixels.numBlocksY,E=C+(i.width%C>0?1:0),s=Q+(i.height%Q>0?1:0);i.pixels.blocks=new Array(E*s);for(var f=0,c=0;c<s;c++)for(var h=0;h<E;h++){var l=0,u=A.byteLength-e;I=new DataView(A,e,Math.min(10,u));var w={};i.pixels.blocks[f++]=w;var d=I.getUint8(0);if(l++,w.encoding=63&d,w.encoding>3)throw"Invalid block encoding ("+w.encoding+")";if(2!==w.encoding){if(0!==d&&2!==d){if(d>>=6,w.offsetType=d,2===d)w.offset=I.getInt8(1),l++;else if(1===d)w.offset=I.getInt16(1,!0),l+=2;else{if(0!==d)throw"Invalid block offset type";w.offset=I.getFloat32(1,!0),l+=4}if(1===w.encoding)if(d=I.getUint8(l),l++,w.bitsPerPixel=63&d,d>>=6,w.numValidPixelsType=d,2===d)w.numValidPixels=I.getUint8(l),l++;else if(1===d)w.numValidPixels=I.getUint16(l,!0),l+=2;else{if(0!==d)throw"Invalid valid pixel count type";w.numValidPixels=I.getUint32(l,!0),l+=4}}var D;if(e+=l,3!==w.encoding)if(0===w.encoding){var y=(i.pixels.numBytes-1)/4;if(y!==Math.floor(y))throw"uncompressed block has invalid length";D=new ArrayBuffer(4*y),new Uint8Array(D).set(new Uint8Array(A,e,4*y));var k=new Float32Array(D);w.rawData=k,e+=4*y}else if(1===w.encoding){var p=Math.ceil(w.numValidPixels*w.bitsPerPixel/8),m=Math.ceil(p/4);D=new ArrayBuffer(4*m),new Uint8Array(D).set(new Uint8Array(A,e,p)),w.stuffedData=new Uint32Array(D),e+=p}}else e++}return i.eofOffset=e,i},I=function(A,e,t,i,r,I,g){var n,a,o,B=(1<<e)-1,C=0,Q=0,E=Math.ceil((g-i)/r),s=4*A.length-Math.ceil(e*t/8);for(A[A.length-1]<<=8*s,n=0;n<t;n++){if(0===Q&&(o=A[C++],Q=32),Q>=e)a=o>>>Q-e&B,Q-=e;else{var f=e-Q;a=(o&B)<<f&B,a+=(o=A[C++])>>>(Q=32-f)}I[n]=a<E?i+a*r:g}return I},A),h=(g=function(A,e,t,i,r,I,g,n){var a,o,B,C,Q,E=(1<<t)-1,s=0,f=0,c=4*A.length-Math.ceil(t*i/8);if(A[A.length-1]<<=8*c,r)for(a=0;a<i;a++)0===f&&(B=A[s++],f=32),f>=t?(o=B>>>f-t&E,f-=t):(o=(B&E)<<(C=t-f)&E,o+=(B=A[s++])>>>(f=32-C)),e[a]=r[o];else for(Q=Math.ceil((n-I)/g),a=0;a<i;a++)0===f&&(B=A[s++],f=32),f>=t?(o=B>>>f-t&E,f-=t):(o=(B&E)<<(C=t-f)&E,o+=(B=A[s++])>>>(f=32-C)),e[a]=o<Q?I+o*g:n},n=function(A,e,t,i,r,I){var g,n=(1<<e)-1,a=0,o=0,B=0,C=0,Q=0,E=[],s=4*A.length-Math.ceil(e*t/8);A[A.length-1]<<=8*s;var f=Math.ceil((I-i)/r);for(o=0;o<t;o++)0===C&&(g=A[a++],C=32),C>=e?(Q=g>>>C-e&n,C-=e):(Q=(g&n)<<(B=e-C)&n,Q+=(g=A[a++])>>>(C=32-B)),E[o]=Q<f?i+Q*r:I;return E.unshift(i),E},a=function(A,e,t,i,r,I,g,n){var a,o,B,C,Q=(1<<t)-1,E=0,s=0,f=0;if(r)for(a=0;a<i;a++)0===s&&(B=A[E++],s=32,f=0),s>=t?(o=B>>>f&Q,s-=t,f+=t):(o=B>>>f&Q,s=32-(C=t-s),o|=((B=A[E++])&(1<<C)-1)<<t-C,f=C),e[a]=r[o];else{var c=Math.ceil((n-I)/g);for(a=0;a<i;a++)0===s&&(B=A[E++],s=32,f=0),s>=t?(o=B>>>f&Q,s-=t,f+=t):(o=B>>>f&Q,s=32-(C=t-s),o|=((B=A[E++])&(1<<C)-1)<<t-C,f=C),e[a]=o<c?I+o*g:n}return e},o=function(A,e,t,i,r,I){var g,n=(1<<e)-1,a=0,o=0,B=0,C=0,Q=0,E=0,s=[],f=Math.ceil((I-i)/r);for(o=0;o<t;o++)0===C&&(g=A[a++],C=32,E=0),C>=e?(Q=g>>>E&n,C-=e,E+=e):(Q=g>>>E&n,C=32-(B=e-C),Q|=((g=A[a++])&(1<<B)-1)<<e-B,E=B),s[o]=Q<f?i+Q*r:I;return s.unshift(i),s},B=function(A,e,t,i){var r,I,g,n,a=(1<<t)-1,o=0,B=0,C=4*A.length-Math.ceil(t*i/8);for(A[A.length-1]<<=8*C,r=0;r<i;r++)0===B&&(g=A[o++],B=32),B>=t?(I=g>>>B-t&a,B-=t):(I=(g&a)<<(n=t-B)&a,I+=(g=A[o++])>>>(B=32-n)),e[r]=I;return e},C=function(A,e,t,i){var r,I,g,n,a=(1<<t)-1,o=0,B=0,C=0;for(r=0;r<i;r++)0===B&&(g=A[o++],B=32,C=0),B>=t?(I=g>>>C&a,B-=t,C+=t):(I=g>>>C&a,B=32-(n=t-B),I|=((g=A[o++])&(1<<n)-1)<<t-n,C=n),e[r]=I;return e},Q={HUFFMAN_LUT_BITS_MAX:12,computeChecksumFletcher32:function(A){for(var e=65535,t=65535,i=A.length,r=Math.floor(i/2),I=0;r;){var g=r>=359?359:r;r-=g;do{e+=A[I++]<<8,t+=e+=A[I++]}while(--g);e=(65535&e)+(e>>>16),t=(65535&t)+(t>>>16)}return 1&i&&(t+=e+=A[I]<<8),((t=(65535&t)+(t>>>16))<<16|(e=(65535&e)+(e>>>16)))>>>0},readHeaderInfo:function(A,e){var t=e.ptr,i=new Uint8Array(A,t,6),r={};if(r.fileIdentifierString=String.fromCharCode.apply(null,i),0!==r.fileIdentifierString.lastIndexOf("Lerc2",0))throw"Unexpected file identifier string (expect Lerc2 ): "+r.fileIdentifierString;t+=6;var I,g=new DataView(A,t,8),n=g.getInt32(0,!0);if(r.fileVersion=n,t+=4,n>=3&&(r.checksum=g.getUint32(4,!0),t+=4),g=new DataView(A,t,12),r.height=g.getUint32(0,!0),r.width=g.getUint32(4,!0),t+=8,n>=4?(r.numDims=g.getUint32(8,!0),t+=4):r.numDims=1,g=new DataView(A,t,40),r.numValidPixel=g.getUint32(0,!0),r.microBlockSize=g.getInt32(4,!0),r.blobSize=g.getInt32(8,!0),r.imageType=g.getInt32(12,!0),r.maxZError=g.getFloat64(16,!0),r.zMin=g.getFloat64(24,!0),r.zMax=g.getFloat64(32,!0),t+=40,e.headerInfo=r,e.ptr=t,n>=3&&(I=n>=4?52:48,this.computeChecksumFletcher32(new Uint8Array(A,t-I,r.blobSize-14))!==r.checksum))throw"Checksum failed.";return!0},checkMinMaxRanges:function(A,e){var t=e.headerInfo,i=this.getDataTypeArray(t.imageType),r=t.numDims*this.getDataTypeSize(t.imageType),I=this.readSubArray(A,e.ptr,i,r),g=this.readSubArray(A,e.ptr+r,i,r);e.ptr+=2*r;var n,a=!0;for(n=0;n<t.numDims;n++)if(I[n]!==g[n]){a=!1;break}return t.minValues=I,t.maxValues=g,a},readSubArray:function(A,e,t,i){var r;if(t===Uint8Array)r=new Uint8Array(A,e,i);else{var I=new ArrayBuffer(i);new Uint8Array(I).set(new Uint8Array(A,e,i)),r=new t(I)}return r},readMask:function(A,e){var t,i,r=e.ptr,I=e.headerInfo,g=I.width*I.height,n=I.numValidPixel,a=new DataView(A,r,4),o={};if(o.numBytes=a.getUint32(0,!0),r+=4,(0===n||g===n)&&0!==o.numBytes)throw"invalid mask";if(0===n)t=new Uint8Array(Math.ceil(g/8)),o.bitset=t,i=new Uint8Array(g),e.pixels.resultMask=i,r+=o.numBytes;else if(o.numBytes>0){t=new Uint8Array(Math.ceil(g/8));var B=(a=new DataView(A,r,o.numBytes)).getInt16(0,!0),C=2,Q=0,E=0;do{if(B>0)for(;B--;)t[Q++]=a.getUint8(C++);else for(E=a.getUint8(C++),B=-B;B--;)t[Q++]=E;B=a.getInt16(C,!0),C+=2}while(C<o.numBytes);if(-32768!==B||Q<t.length)throw"Unexpected end of mask RLE encoding";i=new Uint8Array(g);var s=0,f=0;for(f=0;f<g;f++)7&f?(s=t[f>>3],s<<=7&f):s=t[f>>3],128&s&&(i[f]=1);e.pixels.resultMask=i,o.bitset=t,r+=o.numBytes}return e.ptr=r,e.mask=o,!0},readDataOneSweep:function(A,e,t,i){var r,I=e.ptr,g=e.headerInfo,n=g.numDims,a=g.width*g.height,o=g.imageType,B=g.numValidPixel*Q.getDataTypeSize(o)*n,C=e.pixels.resultMask;if(t===Uint8Array)r=new Uint8Array(A,I,B);else{var E=new ArrayBuffer(B);new Uint8Array(E).set(new Uint8Array(A,I,B)),r=new t(E)}if(r.length===a*n)e.pixels.resultPixels=i?Q.swapDimensionOrder(r,a,n,t,!0):r;else{e.pixels.resultPixels=new t(a*n);var s=0,f=0,c=0,h=0;if(n>1){if(i){for(f=0;f<a;f++)if(C[f])for(h=f,c=0;c<n;c++,h+=a)e.pixels.resultPixels[h]=r[s++]}else for(f=0;f<a;f++)if(C[f])for(h=f*n,c=0;c<n;c++)e.pixels.resultPixels[h+c]=r[s++]}else for(f=0;f<a;f++)C[f]&&(e.pixels.resultPixels[f]=r[s++])}return I+=B,e.ptr=I,!0},readHuffmanTree:function(A,e){var t=this.HUFFMAN_LUT_BITS_MAX,i=new DataView(A,e.ptr,16);if(e.ptr+=16,i.getInt32(0,!0)<2)throw"unsupported Huffman version";var r=i.getInt32(4,!0),I=i.getInt32(8,!0),g=i.getInt32(12,!0);if(I>=g)return!1;var n=new Uint32Array(g-I);Q.decodeBits(A,e,n);var a,o,B,C,s=[];for(a=I;a<g;a++)s[o=a-(a<r?0:r)]={first:n[a-I],second:null};var f=A.byteLength-e.ptr,c=Math.ceil(f/4),h=new ArrayBuffer(4*c);new Uint8Array(h).set(new Uint8Array(A,e.ptr,f));var l,u=new Uint32Array(h),w=0,d=0;for(l=u[0],a=I;a<g;a++)(C=s[o=a-(a<r?0:r)].first)>0&&(s[o].second=l<<w>>>32-C,32-w>=C?32===(w+=C)&&(w=0,l=u[++d]):(w+=C-32,l=u[++d],s[o].second|=l>>>32-w));var D=0,y=0,k=new E;for(a=0;a<s.length;a++)void 0!==s[a]&&(D=Math.max(D,s[a].first));y=D>=t?t:D;var p,m,G,F,S,v=[];for(a=I;a<g;a++)if((C=s[o=a-(a<r?0:r)].first)>0)if(p=[C,o],C<=y)for(m=s[o].second<<y-C,G=1<<y-C,B=0;B<G;B++)v[m|B]=p;else for(m=s[o].second,S=k,F=C-1;F>=0;F--)m>>>F&1?(S.right||(S.right=new E),S=S.right):(S.left||(S.left=new E),S=S.left),0!==F||S.val||(S.val=p[1]);return{decodeLut:v,numBitsLUTQick:y,numBitsLUT:D,tree:k,stuffedData:u,srcPtr:d,bitPos:w}},readHuffman:function(A,e,t,i){var r,I,g,n,a,o,B,C,E,s=e.headerInfo.numDims,f=e.headerInfo.height,c=e.headerInfo.width,h=c*f,l=this.readHuffmanTree(A,e),u=l.decodeLut,w=l.tree,d=l.stuffedData,D=l.srcPtr,y=l.bitPos,k=l.numBitsLUTQick,p=l.numBitsLUT,m=0===e.headerInfo.imageType?128:0,G=e.pixels.resultMask,F=0;y>0&&(D++,y=0);var S,v=d[D],R=1===e.encodeMode,U=new t(h*s),L=U;if(s<2||R){for(S=0;S<s;S++)if(s>1&&(L=new t(U.buffer,h*S,h),F=0),e.headerInfo.numValidPixel===c*f)for(C=0,o=0;o<f;o++)for(B=0;B<c;B++,C++){if(I=0,a=n=v<<y>>>32-k,32-y<k&&(a=n|=d[D+1]>>>64-y-k),u[a])I=u[a][1],y+=u[a][0];else for(a=n=v<<y>>>32-p,32-y<p&&(a=n|=d[D+1]>>>64-y-p),r=w,E=0;E<p;E++)if(!(r=n>>>p-E-1&1?r.right:r.left).left&&!r.right){I=r.val,y=y+E+1;break}y>=32&&(y-=32,v=d[++D]),g=I-m,R?(g+=B>0?F:o>0?L[C-c]:F,g&=255,L[C]=g,F=g):L[C]=g}else for(C=0,o=0;o<f;o++)for(B=0;B<c;B++,C++)if(G[C]){if(I=0,a=n=v<<y>>>32-k,32-y<k&&(a=n|=d[D+1]>>>64-y-k),u[a])I=u[a][1],y+=u[a][0];else for(a=n=v<<y>>>32-p,32-y<p&&(a=n|=d[D+1]>>>64-y-p),r=w,E=0;E<p;E++)if(!(r=n>>>p-E-1&1?r.right:r.left).left&&!r.right){I=r.val,y=y+E+1;break}y>=32&&(y-=32,v=d[++D]),g=I-m,R?(B>0&&G[C-1]?g+=F:o>0&&G[C-c]?g+=L[C-c]:g+=F,g&=255,L[C]=g,F=g):L[C]=g}}else for(C=0,o=0;o<f;o++)for(B=0;B<c;B++)if(C=o*c+B,!G||G[C])for(S=0;S<s;S++,C+=h){if(I=0,a=n=v<<y>>>32-k,32-y<k&&(a=n|=d[D+1]>>>64-y-k),u[a])I=u[a][1],y+=u[a][0];else for(a=n=v<<y>>>32-p,32-y<p&&(a=n|=d[D+1]>>>64-y-p),r=w,E=0;E<p;E++)if(!(r=n>>>p-E-1&1?r.right:r.left).left&&!r.right){I=r.val,y=y+E+1;break}y>=32&&(y-=32,v=d[++D]),g=I-m,L[C]=g}e.ptr=e.ptr+4*(D+1)+(y>0?4:0),e.pixels.resultPixels=U,s>1&&!i&&(e.pixels.resultPixels=Q.swapDimensionOrder(U,h,s,t))},decodeBits:function(A,e,t,i,r){var I=e.headerInfo,Q=I.fileVersion,E=0,s=A.byteLength-e.ptr>=5?5:A.byteLength-e.ptr,f=new DataView(A,e.ptr,s),c=f.getUint8(0);E++;var h=c>>6,l=0===h?4:3-h,u=(32&c)>0,w=31&c,d=0;if(1===l)d=f.getUint8(E),E++;else if(2===l)d=f.getUint16(E,!0),E+=2;else{if(4!==l)throw"Invalid valid pixel count type";d=f.getUint32(E,!0),E+=4}var D,y,k,p,m,G,F,S,v,R=2*I.maxZError,U=I.numDims>1?I.maxValues[r]:I.zMax;if(u){for(e.counter.lut++,S=f.getUint8(E),E++,p=Math.ceil((S-1)*w/8),m=Math.ceil(p/4),y=new ArrayBuffer(4*m),k=new Uint8Array(y),e.ptr+=E,k.set(new Uint8Array(A,e.ptr,p)),F=new Uint32Array(y),e.ptr+=p,v=0;S-1>>>v;)v++;p=Math.ceil(d*v/8),m=Math.ceil(p/4),y=new ArrayBuffer(4*m),(k=new Uint8Array(y)).set(new Uint8Array(A,e.ptr,p)),D=new Uint32Array(y),e.ptr+=p,G=Q>=3?o(F,w,S-1,i,R,U):n(F,w,S-1,i,R,U),Q>=3?a(D,t,v,d,G):g(D,t,v,d,G)}else e.counter.bitstuffer++,v=w,e.ptr+=E,v>0&&(p=Math.ceil(d*v/8),m=Math.ceil(p/4),y=new ArrayBuffer(4*m),(k=new Uint8Array(y)).set(new Uint8Array(A,e.ptr,p)),D=new Uint32Array(y),e.ptr+=p,Q>=3?null==i?C(D,t,v,d):a(D,t,v,d,!1,i,R,U):null==i?B(D,t,v,d):g(D,t,v,d,!1,i,R,U))},readTiles:function(A,e,t,i){var r=e.headerInfo,I=r.width,g=r.height,n=I*g,a=r.microBlockSize,o=r.imageType,B=Q.getDataTypeSize(o),C=Math.ceil(I/a),E=Math.ceil(g/a);e.pixels.numBlocksY=E,e.pixels.numBlocksX=C,e.pixels.ptr=0;var s,f,c,h,l,u,w,d,D,y,k=0,p=0,m=0,G=0,F=0,S=0,v=0,R=0,U=0,L=0,b=0,M=0,N=0,x=0,J=0,q=new t(a*a),Y=g%a||a,K=I%a||a,H=r.numDims,O=e.pixels.resultMask,P=e.pixels.resultPixels,T=r.fileVersion>=5?14:15,V=r.zMax;for(m=0;m<E;m++)for(F=m!==E-1?a:Y,G=0;G<C;G++)for(L=m*I*a+G*a,b=I-(S=G!==C-1?a:K),d=0;d<H;d++){if(H>1?(y=P,L=m*I*a+G*a,P=new t(e.pixels.resultPixels.buffer,n*d*B,n),V=r.maxValues[d]):y=null,v=A.byteLength-e.ptr,f={},J=0,R=(s=new DataView(A,e.ptr,Math.min(10,v))).getUint8(0),J++,D=r.fileVersion>=5?4&R:0,U=R>>6&255,(R>>2&T)!=(G*a>>3&T))throw"integrity issue";if(D&&0===d)throw"integrity issue";if((l=3&R)>3)throw e.ptr+=J,"Invalid block encoding ("+l+")";if(2!==l)if(0===l){if(D)throw"integrity issue";if(e.counter.uncompressed++,e.ptr+=J,M=(M=F*S*B)<(N=A.byteLength-e.ptr)?M:N,c=new ArrayBuffer(M%B==0?M:M+B-M%B),new Uint8Array(c).set(new Uint8Array(A,e.ptr,M)),h=new t(c),x=0,O)for(k=0;k<F;k++){for(p=0;p<S;p++)O[L]&&(P[L]=h[x++]),L++;L+=b}else for(k=0;k<F;k++){for(p=0;p<S;p++)P[L++]=h[x++];L+=b}e.ptr+=x*B}else if(u=Q.getDataTypeUsed(D&&o<6?4:o,U),w=Q.getOnePixel(f,J,u,s),J+=Q.getDataTypeSize(u),3===l)if(e.ptr+=J,e.counter.constantoffset++,O)for(k=0;k<F;k++){for(p=0;p<S;p++)O[L]&&(P[L]=D?Math.min(V,y[L]+w):w),L++;L+=b}else for(k=0;k<F;k++){for(p=0;p<S;p++)P[L]=D?Math.min(V,y[L]+w):w,L++;L+=b}else if(e.ptr+=J,Q.decodeBits(A,e,q,w,d),J=0,D)if(O)for(k=0;k<F;k++){for(p=0;p<S;p++)O[L]&&(P[L]=q[J++]+y[L]),L++;L+=b}else for(k=0;k<F;k++){for(p=0;p<S;p++)P[L]=q[J++]+y[L],L++;L+=b}else if(O)for(k=0;k<F;k++){for(p=0;p<S;p++)O[L]&&(P[L]=q[J++]),L++;L+=b}else for(k=0;k<F;k++){for(p=0;p<S;p++)P[L++]=q[J++];L+=b}else{if(D)if(O)for(k=0;k<F;k++)for(p=0;p<S;p++)O[L]&&(P[L]=y[L]),L++;else for(k=0;k<F;k++)for(p=0;p<S;p++)P[L]=y[L],L++;e.counter.constant++,e.ptr+=J}}H>1&&!i&&(e.pixels.resultPixels=Q.swapDimensionOrder(e.pixels.resultPixels,n,H,t))},formatFileInfo:function(A){return{fileIdentifierString:A.headerInfo.fileIdentifierString,fileVersion:A.headerInfo.fileVersion,imageType:A.headerInfo.imageType,height:A.headerInfo.height,width:A.headerInfo.width,numValidPixel:A.headerInfo.numValidPixel,microBlockSize:A.headerInfo.microBlockSize,blobSize:A.headerInfo.blobSize,maxZError:A.headerInfo.maxZError,pixelType:Q.getPixelType(A.headerInfo.imageType),eofOffset:A.eofOffset,mask:A.mask?{numBytes:A.mask.numBytes}:null,pixels:{numBlocksX:A.pixels.numBlocksX,numBlocksY:A.pixels.numBlocksY,maxValue:A.headerInfo.zMax,minValue:A.headerInfo.zMin,noDataValue:A.noDataValue}}},constructConstantSurface:function(A,e){var t=A.headerInfo.zMax,i=A.headerInfo.zMin,r=A.headerInfo.maxValues,I=A.headerInfo.numDims,g=A.headerInfo.height*A.headerInfo.width,n=0,a=0,o=0,B=A.pixels.resultMask,C=A.pixels.resultPixels;if(B)if(I>1){if(e)for(n=0;n<I;n++)for(o=n*g,t=r[n],a=0;a<g;a++)B[a]&&(C[o+a]=t);else for(a=0;a<g;a++)if(B[a])for(o=a*I,n=0;n<I;n++)C[o+I]=r[n]}else for(a=0;a<g;a++)B[a]&&(C[a]=t);else if(I>1&&i!==t)if(e)for(n=0;n<I;n++)for(o=n*g,t=r[n],a=0;a<g;a++)C[o+a]=t;else for(a=0;a<g;a++)for(o=a*I,n=0;n<I;n++)C[o+n]=r[n];else for(a=0;a<g*I;a++)C[a]=t},getDataTypeArray:function(A){var e;switch(A){case 0:e=Int8Array;break;case 1:e=Uint8Array;break;case 2:e=Int16Array;break;case 3:e=Uint16Array;break;case 4:e=Int32Array;break;case 5:e=Uint32Array;break;case 6:default:e=Float32Array;break;case 7:e=Float64Array}return e},getPixelType:function(A){var e;switch(A){case 0:e="S8";break;case 1:e="U8";break;case 2:e="S16";break;case 3:e="U16";break;case 4:e="S32";break;case 5:e="U32";break;case 6:default:e="F32";break;case 7:e="F64"}return e},isValidPixelValue:function(A,e){if(null==e)return!1;var t;switch(A){case 0:t=e>=-128&&e<=127;break;case 1:t=e>=0&&e<=255;break;case 2:t=e>=-32768&&e<=32767;break;case 3:t=e>=0&&e<=65536;break;case 4:t=e>=-2147483648&&e<=2147483647;break;case 5:t=e>=0&&e<=4294967296;break;case 6:t=e>=-34027999387901484e22&&e<=34027999387901484e22;break;case 7:t=e>=-17976931348623157e292&&e<=17976931348623157e292;break;default:t=!1}return t},getDataTypeSize:function(A){var e=0;switch(A){case 0:case 1:e=1;break;case 2:case 3:e=2;break;case 4:case 5:case 6:e=4;break;case 7:e=8;break;default:e=A}return e},getDataTypeUsed:function(A,e){var t=A;switch(A){case 2:case 4:t=A-e;break;case 3:case 5:t=A-2*e;break;case 6:t=0===e?A:1===e?2:1;break;case 7:t=0===e?A:A-2*e+1;break;default:t=A}return t},getOnePixel:function(A,e,t,i){var r=0;switch(t){case 0:r=i.getInt8(e);break;case 1:r=i.getUint8(e);break;case 2:r=i.getInt16(e,!0);break;case 3:r=i.getUint16(e,!0);break;case 4:r=i.getInt32(e,!0);break;case 5:r=i.getUInt32(e,!0);break;case 6:r=i.getFloat32(e,!0);break;case 7:r=i.getFloat64(e,!0);break;default:throw"the decoder does not understand this pixel type"}return r},swapDimensionOrder:function(A,e,t,i,r){var I=0,g=0,n=0,a=0,o=A;if(t>1)if(o=new i(e*t),r)for(I=0;I<e;I++)for(a=I,n=0;n<t;n++,a+=e)o[a]=A[g++];else for(I=0;I<e;I++)for(a=I,n=0;n<t;n++,a+=e)o[g++]=A[a];return o}},E=function(A,e,t){this.val=A,this.left=e,this.right=t},{decode:function(A,e){var t=(e=e||{}).noDataValue,i=0,r={};r.ptr=e.inputOffset||0,r.pixels={},Q.readHeaderInfo(A,r);var I=r.headerInfo,g=I.fileVersion,n=Q.getDataTypeArray(I.imageType);if(g>5)throw"unsupported lerc version 2."+g;Q.readMask(A,r),I.numValidPixel===I.width*I.height||r.pixels.resultMask||(r.pixels.resultMask=e.maskData);var a=I.width*I.height;r.pixels.resultPixels=new n(a*I.numDims),r.counter={onesweep:0,uncompressed:0,lut:0,bitstuffer:0,constant:0,constantoffset:0};var o,B=!e.returnPixelInterleavedDims;if(0!==I.numValidPixel)if(I.zMax===I.zMin)Q.constructConstantSurface(r,B);else if(g>=4&&Q.checkMinMaxRanges(A,r))Q.constructConstantSurface(r,B);else{var C=new DataView(A,r.ptr,2),E=C.getUint8(0);if(r.ptr++,E)Q.readDataOneSweep(A,r,n,B);else if(g>1&&I.imageType<=1&&Math.abs(I.maxZError-.5)<1e-5){var s=C.getUint8(1);if(r.ptr++,r.encodeMode=s,s>2||g<4&&s>1)throw"Invalid Huffman flag "+s;s?Q.readHuffman(A,r,n,B):Q.readTiles(A,r,n,B)}else Q.readTiles(A,r,n,B)}r.eofOffset=r.ptr,e.inputOffset?(o=r.headerInfo.blobSize+e.inputOffset-r.ptr,Math.abs(o)>=1&&(r.eofOffset=e.inputOffset+r.headerInfo.blobSize)):(o=r.headerInfo.blobSize-r.ptr,Math.abs(o)>=1&&(r.eofOffset=r.headerInfo.blobSize));var f={width:I.width,height:I.height,pixelData:r.pixels.resultPixels,minValue:I.zMin,maxValue:I.zMax,validPixelCount:I.numValidPixel,dimCount:I.numDims,dimStats:{minValues:I.minValues,maxValues:I.maxValues},maskData:r.pixels.resultMask};if(r.pixels.resultMask&&Q.isValidPixelValue(I.imageType,t)){var c=r.pixels.resultMask;for(i=0;i<a;i++)c[i]||(f.pixelData[i]=t);f.noDataValue=t}return r.noDataValue=t,e.returnFileInfo&&(f.fileInfo=Q.formatFileInfo(r)),f},getBandCount:function(A){for(var e=0,t=0,i={ptr:0,pixels:{}};t<A.byteLength-58;)Q.readHeaderInfo(A,i),t+=i.headerInfo.blobSize,e++,i.ptr=t;return e}}),l=(s=new ArrayBuffer(4),f=new Uint8Array(s),new Uint32Array(s)[0]=1,1===f[0]),u={decode:function(A,e){if(!l)throw"Big endian system is not supported.";var t,i,r=(e=e||{}).inputOffset||0,I=new Uint8Array(A,r,10),g=String.fromCharCode.apply(null,I);if("CntZImage"===g.trim())t=c,i=1;else{if("Lerc2"!==g.substring(0,5))throw"Unexpected file identifier string: "+g;t=h,i=2}for(var n,a,o,B,C,Q,E=0,s=A.byteLength-10,f=[],u={width:0,height:0,pixels:[],pixelType:e.pixelType,mask:null,statistics:[]},w=0;r<s;){var d=t.decode(A,{inputOffset:r,encodedMaskData:n,maskData:o,returnMask:0===E,returnEncodedMask:0===E,returnFileInfo:!0,returnPixelInterleavedDims:e.returnPixelInterleavedDims,pixelType:e.pixelType||null,noDataValue:e.noDataValue||null});r=d.fileInfo.eofOffset,o=d.maskData,0===E&&(n=d.encodedMaskData,u.width=d.width,u.height=d.height,u.dimCount=d.dimCount||1,u.pixelType=d.pixelType||d.fileInfo.pixelType,u.mask=o),i>1&&(o&&f.push(o),d.fileInfo.mask&&d.fileInfo.mask.numBytes>0&&w++),E++,u.pixels.push(d.pixelData),u.statistics.push({minValue:d.minValue,maxValue:d.maxValue,noDataValue:d.noDataValue,dimStats:d.dimStats})}if(i>1&&w>1){for(Q=u.width*u.height,u.bandMasks=f,(o=new Uint8Array(Q)).set(f[0]),B=1;B<f.length;B++)for(a=f[B],C=0;C<Q;C++)o[C]=o[C]&a[C];u.maskData=o}return u}};TA.exports?TA.exports=u:this.Lerc=u}();var ZA,jA,WA,zA=XA.exports,$A={env:{emscripten_notify_memory_growth:function(A){WA=new Uint8Array(jA.exports.memory.buffer)}}},Ae=function(){function A(){B(this,A)}return Q(A,[{key:"init",value:function(){return ZA||(ZA="undefined"!=typeof fetch?fetch("data:application/wasm;base64,"+ee).then((function(A){return A.arrayBuffer()})).then((function(A){return WebAssembly.instantiate(A,$A)})).then(this._init):WebAssembly.instantiate(Buffer.from(ee,"base64"),$A).then(this._init))}},{key:"_init",value:function(A){jA=A.instance,$A.env.emscripten_notify_memory_growth(0)}},{key:"decode",value:function(A){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;if(!jA)throw new Error("ZSTDDecoder: Await .init() before decoding.");var t=A.byteLength,i=jA.exports.malloc(t);WA.set(A,i),e=e||Number(jA.exports.ZSTD_findDecompressedSize(i,t));var r=jA.exports.malloc(e),I=jA.exports.ZSTD_decompress(r,e,i,t),g=WA.slice(r,r+I);return jA.exports.free(i),jA.exports.free(r),g}}]),A}(),ee="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IAMNACAEQQNxBEADQCACRQ0FIAAgAkF/aiICaiIDIAEgAmotAAA6AAAgA0EDcQ0ACwsgAkEDTQ0AA0AgACACQXxqIgJqIAEgAmooAgA2AgAgAkEDSw0ACwsgAkUNAgNAIAAgAkF/aiICaiABIAJqLQAAOgAAIAINAAsMAgsgAkEDTQ0AIAIhBANAIAMgASgCADYCACABQQRqIQEgA0EEaiEDIARBfGoiBEEDSw0ACyACQQNxIQILIAJFDQADQCADIAEtAAA6AAAgA0EBaiEDIAFBAWohASACQX9qIgINAAsLIAAL8wICAn8BfgJAIAJFDQAgACACaiIDQX9qIAE6AAAgACABOgAAIAJBA0kNACADQX5qIAE6AAAgACABOgABIANBfWogAToAACAAIAE6AAIgAkEHSQ0AIANBfGogAToAACAAIAE6AAMgAkEJSQ0AIABBACAAa0EDcSIEaiIDIAFB/wFxQYGChAhsIgE2AgAgAyACIARrQXxxIgRqIgJBfGogATYCACAEQQlJDQAgAyABNgIIIAMgATYCBCACQXhqIAE2AgAgAkF0aiABNgIAIARBGUkNACADIAE2AhggAyABNgIUIAMgATYCECADIAE2AgwgAkFwaiABNgIAIAJBbGogATYCACACQWhqIAE2AgAgAkFkaiABNgIAIAQgA0EEcUEYciIEayICQSBJDQAgAa0iBUIghiAFhCEFIAMgBGohAQNAIAEgBTcDGCABIAU3AxAgASAFNwMIIAEgBTcDACABQSBqIQEgAkFgaiICQR9LDQALCyAACy8BAn8gACgCBCAAKAIAQQJ0aiICLQACIQMgACACLwEAIAEgAi0AAxAIajYCACADCy8BAn8gACgCBCAAKAIAQQJ0aiICLQACIQMgACACLwEAIAEgAi0AAxAFajYCACADCx8AIAAgASACKAIEEAg2AgAgARAEGiAAIAJBCGo2AgQLCAAgAGdBH3MLugUBDX8jAEEQayIKJAACfyAEQQNNBEAgCkEANgIMIApBDGogAyAEEAsaIAAgASACIApBDGpBBBAVIgBBbCAAEAMbIAAgACAESxsMAQsgAEEAIAEoAgBBAXRBAmoQECENQVQgAygAACIGQQ9xIgBBCksNABogAiAAQQVqNgIAIAMgBGoiAkF8aiEMIAJBeWohDiACQXtqIRAgAEEGaiELQQQh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ASIDNgLE4AEgACgCvOABIQQgACABNgK84AEgACABIAJqNgK44AEgACABIAQgA2tqNgLA4AELpgEBAX8gACAAKALs4QEQFjYCyOABIABCADcD+OABIABCADcDuOABIABBwOABakIANwMAIABBqNAAaiIBQYyAgOAANgIAIABBADYCmOIBIABCADcDiOEBIABCAzcDgOEBIABBrNABakHgEikCADcCACAAQbTQAWpB6BIoAgA2AgAgACABNgIMIAAgAEGYIGo2AgggACAAQaAwajYCBCAAIABBEGo2AgALYQEBf0G4fyEDAkAgAUEDSQ0AIAIgABAhIgFBA3YiADYCCCACIAFBAXE2AgQgAiABQQF2QQNxIgM2AgACQCADQX9qIgFBAksNAAJAIAFBAWsOAgEAAgtBbA8LIAAhAwsgAwsMACAAIAEgAkEAEC4LiAQCA38CfiADEBYhBCAAQQBBKBAQIQAgBCACSwRAIAQPCyABRQRAQX8PCwJAAkAgA0EBRg0AIAEoAAAiBkGo6r5pRg0AQXYhAyAGQXBxQdDUtMIBRw0BQQghAyACQQhJDQEgAEEAQSgQECEAIAEoAAQhASAAQQE2AhQgACABrTcDAEEADwsgASACIAMQLyIDIAJLDQAgACADNgIYQXIhAyABIARqIgVBf2otAAAiAkEIcQ0AIAJBIHEiBkUEQEFwIQMgBS0AACIFQacBSw0BIAVBB3GtQgEgBUEDdkEKaq2GIgdCA4h+IAd8IQggBEEBaiEECyACQQZ2IQMgAkECdiEFAkAgAkEDcUF/aiICQQJLBEBBACECDAELAkACQAJAIAJBAWsOAgECAAsgASAEai0AACECIARBAWohBAwCCyABIARqLwAAIQIgBEECaiEEDAELIAEgBGooAAAhAiAEQQRqIQQLIAVBAXEhBQJ+AkACQAJAIANBf2oiA0ECTQRAIANBAWsOAgIDAQtCfyAGRQ0DGiABIARqMQAADAMLIAEgBGovAACtQoACfAwCCyABIARqKAAArQwBCyABIARqKQAACyEHIAAgBTYCICAAIAI2AhwgACAHNwMAQQAhAyAAQQA2AhQgACAHIAggBhsiBzcDCCAAIAdCgIAIIAdCgIAIVBs+AhALIAMLWwEBf0G4fyEDIAIQFiICIAFNBH8gACACakF/ai0AACIAQQNxQQJ0QaAeaigC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C0Egak8NAQsgByAHKQNoNwMQIAcgBykDYDcDCCAEIA0gB0EIaiAHQdwAaiAPIA4gESAQEB4hCwwBCyACIARqIQggBCAKEAcgAkERTwRAIARBEGohAgNAIAIgCkEQaiIKEAcgAkEQaiICIAhJDQALCyAIIAlrIQIgByATNgJcIAkgCCAOa0sEQCAJIAggEWtLBEBBbCELDAILIBAgAiAOayICaiIKIANqIBBNBEAgCCAKIAMQDxoMAgsgCCAKQQAgAmsQDyEIIAcgAiADaiIDNgJkIAggAmshCCAOIQILIAlBEE8EQCADIAhqIQMDQCAIIAIQByACQRBqIQIgCEEQaiIIIANJDQALDAELAkAgCUEHTQRAIAggAi0AADoAACAIIAItAAE6AAEgCCACLQACOgACIAggAi0AAzoAAyAIQQRqIAIgCUECdCIDQcAeaigCAGoiAhAXIAIgA0HgHmooAgBrIQIgBygCZCEDDAELIAggAhAMCyADQQlJDQAgAyAIaiEDIAhBCGoiCCACQQhqIgJrQQ9MBEADQCAIIAIQDCACQQhqIQIgCEEIaiIIIANJDQAMAgALAAsDQCAIIAIQByACQRBqIQIgCEEQaiIIIANJDQALCyAHQRhqEAQaIAsgDCALEAMiAhshDCAEIAQgC2ogAhshBCAFQX9qIgUNAAsgDBADDQFBbCEMIAdBGGoQBEECSQ0BQQAhCANAIAhBA0cEQCAAIAhBAnQiAmpBrNABaiACIAdqKAJENgIAIAhBAWohCAwBCwsgBygCXCEIC0G6fyEMIA8gCGsiACANIARrSw0AIAQEfyAEIAggABALIABqBUEACyABayEMCyAHQfAAaiQAIAwLkRcCFn8FfiMAQdABayIHJAAgByAAKALw4QEiCDYCvAEgASACaiESIAggACgCgOIBaiETAkACQCAFRQRAIAEhAwwBCyAAKALE4AEhESAAKALA4AEhFSAAKAK84AEhDyAAQQE2AozhAUEAIQgDQCAIQQNHBEAgByAIQQJ0IgJqIAAgAmpBrNABaigCADYCVCAIQQFqIQgMAQsLIAcgETYCZCAHIA82AmAgByABIA9rNgJoQWwhECAHQShqIAMgBBAGEAMNASAFQQQgBUEESBshFyAHQTxqIAdBKGogACgCABATIAdBxABqIAdBKGogACgCCBATIAdBzABqIAdB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IAdB0AFqJAAgEAslACAAQgA3AgAgAEEAOwEIIABBADoACyAAIAE2AgwgACACOgAKC7QFAQN/IwBBMGsiBCQAIABB/wFqIgVBfWohBgJAIAMvAQIEQCAEQRhqIAEgAhAGIgIQAw0BIARBEGogBEEYaiADEBwgBEEIaiAEQRhqIAMQHCAAIQMDQAJAIARBGGoQBCADIAZPckUEQCADIARBEGogBEEYahASOgAAIAMgBEEIaiAEQRhqEBI6AAEgBEEYahAERQ0BIANBAmohAwsgBUF+aiEFAn8DQEG6fyECIAMiASAFSw0FIAEgBEEQaiAEQRhqEBI6AAAgAUEBaiEDIARBGGoQBEEDRgRAQQIhAiAEQQhqDAILIAMgBUsNBSABIARBCGogBEEYahASOgABIAFBAmohA0EDIQIgBEEYahAEQQNHDQALIARBEGoLIQUgAyAFIARBGGoQEjoAACABIAJqIABrIQIMAwsgAyAEQRBqIARBGGoQEjoAAiADIARBCGogBEEYahASOgADIANBBGohAwwAAAsACyAEQRhqIAEgAhAGIgIQAw0AIARBEGogBEEYaiADEBwgBEEIaiAEQRhqIAMQHCAAIQMDQAJAIARBGGoQBCADIAZPckUEQCADIARBEGogBEEYahAROgAAIAMgBEEIaiAEQRhqEBE6AAEgBEEYahAERQ0BIANBAmohAwsgBUF+aiEFAn8DQEG6fyECIAMiASAFSw0EIAEgBEEQaiAEQRhqEBE6AAAgAUEBaiEDIARBGGoQBEEDRgRAQQIhAiAEQQhqDAILIAMgBUsNBCABIARBCGogBEEYahAROgABIAFBAmohA0EDIQIgBEEYahAEQQNHDQALIARBEGoLIQUgAyAFIARBGGoQEToAACABIAJqIABrIQIMAgsgAyAEQRBqIARBGGoQEToAAiADIARBCGogBEEYahAROgADIANBBGohAwwAAAsACyAEQTBqJAAgAgtpAQF/An8CQAJAIAJBB00NACABKAAAQbfIwuF+Rw0AIAAgASgABDYCmOIBQWIgAEEQaiABIAIQPiIDEAMNAhogAEKBgICAEDcDiOEBIAAgASADaiACIANrECoMAQsgACABIAIQKgtBAAsLrQMBBn8jAEGAAWsiAyQAQWIhCAJAIAJBCUkNACAAQZjQAGogAUEIaiIEIAJBeGogAEGY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wOABCwutAgIEfwF+IwBBQGoiBCQAAkACQCACQQhJDQAgASgAAEFwcUHQ1LTCAUcNACABIAIQIiEBIABCADcDCCAAQQA2AgQgACABNgIADAELIARBGGogASACEC0iAxADBEAgACADEBoMAQsgAwRAIABBuH8QGgwBCyACIAQoAjAiA2shAiABIANqIQMDQAJAIAAgAyACIARBCGoQLCIFEAMEfyAFBSACIAVBA2oiBU8NAUG4fwsQGgwCCyAGQQFqIQYgAiAFayECIAMgBWohAyAEKAIMRQ0ACyAEKAI4BEAgAkEDTQRAIABBuH8QGgwCCyADQQRqIQMLIAQoAighAiAEKQMYIQcgAEEANgIEIAAgAyABazYCACAAIAIgBmytIAcgB0J/URs3AwgLIARBQGskAAslAQF/IwBBEGsiAiQAIAIgACABEFEgAigCACEAIAJBEGokACAAC30BBH8jAEGQBGsiBCQAIARB/wE2AggCQCAEQRBqIARBCGogBEEMaiABIAIQFSIGEAMEQCAGIQUMAQtBVCEFIAQoAgwiB0EGSw0AIAMgBEEQaiAEKAIIIAcQQSIFEAMNACAAIAEgBmogAiAGayADEDwhBQsgBEGQBGokACAFC4cBAgJ/An5BABAWIQMCQANAIAEgA08EQAJAIAAoAABBcHFB0NS0wgFGBEAgACABECIiAhADRQ0BQn4PCyAAIAEQVSIEQn1WDQMgBCAFfCIFIARUIQJCfiEEIAINAyAAIAEQUiICEAMNAwsgASACayEBIAAgAmohAAwBCwtCfiAFIAEbIQQLIAQLPwIBfwF+IwBBMGsiAiQAAn5CfiACQQhqIAAgARAtDQAaQgAgAigCHEEBRg0AGiACKQMICyEDIAJBMGokACADC40BAQJ/IwBBMGsiASQAAkAgAEUNACAAKAKI4gENACABIABB/OEBaigCADYCKCABIAApAvThATcDICAAEDAgACgCqOIBIQIgASABKAIoNgIYIAEgASkDIDcDECACIAFBEGoQGyAAQQA2AqjiASABIAEoAig2AgggASABKQMgNwMAIAAgARAbCyABQTBqJAALKgECfyMAQRBrIgAkACAAQQA2AgggAEIANwMAIAAQWCEBIABBEGokACABC4cBAQN/IwBBEGsiAiQAAkAgACgCAEUgACgCBEVzDQAgAiAAKAIINgIIIAIgACkCADcDAAJ/IAIoAgAiAQRAIAIoAghBqOMJIAERBQAMAQtBqOMJECgLIgFFDQAgASAAKQIANwL04QEgAUH84QFqIAAoAgg2AgAgARBZIAEhAwsgAkEQaiQAIAMLywEBAn8jAEEgayIBJAAgAEGBgIDAADYCtOIBIABBADYCiOIBIABBADYC7OEBIABCADcDkOIBIABBADYCpOMJIABBADYC3OIBIABCADcCzOIBIABBADYCvOIBIABBADYCxOABIABCADcCnOIBIABBpOIBakIANwIAIABBrOIBakEANgIAIAFCADcCECABQgA3AhggASABKQMYNwMIIAEgASkDEDcDACABKAIIQQh2QQFxIQIgAEEANgLg4gEgACACNgKM4gEgAUEgaiQAC3YBA38jAEEwayIBJAAgAARAIAEgAEHE0AFqIgIoAgA2AiggASAAKQK80AE3AyAgACgCACEDIAEgAigCADYCGCABIAApArzQATcDECADIAFBEGoQGyABIAEoAig2AgggASABKQMgNwMAIAAgARAbCyABQTBqJAALzAEBAX8gACABKAK00AE2ApjiASAAIAEoAgQiAjYCwOABIAAgAjYCvOABIAAgAiABKAIIaiICNgK44AEgACACNgLE4AEgASgCuNABBEAgAEKBgICAEDcDiOEBIAAgAUGk0ABqNgIMIAAgAUGUIGo2AgggACABQZwwajYCBCAAIAFBDGo2AgAgAEGs0AFqIAFBqNABaigCADYCACAAQbDQAWogAUGs0AFqKAIANgIAIABBtNABaiABQbDQAWooAgA2AgAPCyAAQgA3A4jhAQs7ACACRQRAQbp/DwsgBEUEQEFsDwsgAiAEEGAEQCAAIAEgAiADIAQgBRBhDwsgACABIAIgAyAEIAUQZQtGAQF/IwBBEGsiBSQAIAVBCGogBBAOAn8gBS0ACQRAIAAgASACIAMgBBAyDAELIAAgASACIAMgBBA0CyEAIAVBEGokACAACzQAIAAgAyAEIAUQNiIFEAMEQCAFDwsgBSAESQR/IAEgAiADIAVqIAQgBWsgABA1BUG4fwsLRgEBfyMAQRBrIgUkACAFQQhqIAQQDgJ/IAUtAAkEQCAAIAEgAiADIAQQYgwBCyAAIAEgAiADIAQQNQshACAFQRBqJAAgAAtZAQF/QQ8hAiABIABJBEAgAUEE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",te={315:"Artist",258:"BitsPerSample",265:"CellLength",264:"CellWidth",320:"ColorMap",259:"Compression",33432:"Copyright",306:"DateTime",338:"ExtraSamples",266:"FillOrder",289:"FreeByteCounts",288:"FreeOffsets",291:"GrayResponseCurve",290:"GrayResponseUnit",316:"HostComputer",270:"ImageDescription",257:"ImageLength",256:"ImageWidth",271:"Make",281:"MaxSampleValue",280:"MinSampleValue",272:"Model",254:"NewSubfileType",274:"Orientation",262:"PhotometricInterpretation",284:"PlanarConfiguration",296:"ResolutionUnit",278:"RowsPerStrip",277:"SamplesPerPixel",305:"Software",279:"StripByteCounts",273:"StripOffsets",255:"SubfileType",263:"Threshholding",282:"XResolution",283:"YResolution",326:"BadFaxLines",327:"CleanFaxData",343:"ClipPath",328:"ConsecutiveBadFaxLines",433:"Decode",434:"DefaultImageColor",269:"DocumentName",336:"DotRange",321:"HalftoneHints",346:"Indexed",347:"JPEGTables",285:"PageName",297:"PageNumber",317:"Predictor",319:"PrimaryChromaticities",532:"ReferenceBlackWhite",339:"SampleFormat",340:"SMinSampleValue",341:"SMaxSampleValue",559:"StripRowCounts",330:"SubIFDs",292:"T4Options",293:"T6Options",325:"TileByteCounts",323:"TileLength",324:"TileOffsets",322:"TileWidth",301:"TransferFunction",318:"WhitePoint",344:"XClipPathUnits",286:"XPosition",529:"YCbCrCoefficients",531:"YCbCrPositioning",530:"YCbCrSubSampling",345:"YClipPathUnits",287:"YPosition",37378:"ApertureValue",40961:"ColorSpace",36868:"DateTimeDigitized",36867:"DateTimeOriginal",34665:"Exif IFD",36864:"ExifVersion",33434:"ExposureTime",41728:"FileSource",37385:"Flash",40960:"FlashpixVersion",33437:"FNumber",42016:"ImageUniqueID",37384:"LightSource",37500:"MakerNote",37377:"ShutterSpeedValue",37510:"UserComment",33723:"IPTC",34675:"ICC Profile",700:"XMP",42112:"GDAL_METADATA",42113:"GDAL_NODATA",34377:"Photoshop",33550:"ModelPixelScale",33922:"ModelTiepoint",34264:"ModelTransformation",34735:"GeoKeyDirectory",34736:"GeoDoubleParams",34737:"GeoAsciiParams",50674:"LercParameters"},ie={};for(var re in te)te.hasOwnProperty(re)&&(ie[te[re]]=parseInt(re,10));ie.BitsPerSample,ie.ExtraSamples,ie.SampleFormat,ie.StripByteCounts,ie.StripOffsets,ie.StripRowCounts,ie.TileByteCounts,ie.TileOffsets,ie.SubIFDs;var Ie={1:"BYTE",2:"ASCII",3:"SHORT",4:"LONG",5:"RATIONAL",6:"SBYTE",7:"UNDEFINED",8:"SSHORT",9:"SLONG",10:"SRATIONAL",11:"FLOAT",12:"DOUBLE",13:"IFD",16:"LONG8",17:"SLONG8",18:"IFD8"},ge={};for(var ne in Ie)Ie.hasOwnProperty(ne)&&(ge[Ie[ne]]=parseInt(ne,10));var ae=1,oe=0,Be=1,Ce=2,Qe={1024:"GTModelTypeGeoKey",1025:"GTRasterTypeGeoKey",1026:"GTCitationGeoKey",2048:"GeographicTypeGeoKey",2049:"GeogCitationGeoKey",2050:"GeogGeodeticDatumGeoKey",2051:"GeogPrimeMeridianGeoKey",2052:"GeogLinearUnitsGeoKey",2053:"GeogLinearUnitSizeGeoKey",2054:"GeogAngularUnitsGeoKey",2055:"GeogAngularUnitSizeGeoKey",2056:"GeogEllipsoidGeoKey",2057:"GeogSemiMajorAxisGeoKey",2058:"GeogSemiMinorAxisGeoKey",2059:"GeogInvFlatteningGeoKey",2060:"GeogAzimuthUnitsGeoKey",2061:"GeogPrimeMeridianLongGeoKey",2062:"GeogTOWGS84GeoKey",3072:"ProjectedCSTypeGeoKey",3073:"PCSCitationGeoKey",3074:"ProjectionGeoKey",3075:"ProjCoordTransGeoKey",3076:"ProjLinearUnitsGeoKey",3077:"ProjLinearUnitSizeGeoKey",3078:"ProjStdParallel1GeoKey",3079:"ProjStdParallel2GeoKey",3080:"ProjNatOriginLongGeoKey",3081:"ProjNatOriginLatGeoKey",3082:"ProjFalseEastingGeoKey",3083:"ProjFalseNorthingGeoKey",3084:"ProjFalseOriginLongGeoKey",3085:"ProjFalseOriginLatGeoKey",3086:"ProjFalseOriginEastingGeoKey",3087:"ProjFalseOriginNorthingGeoKey",3088:"ProjCenterLongGeoKey",3089:"ProjCenterLatGeoKey",3090:"ProjCenterEastingGeoKey",3091:"ProjCenterNorthingGeoKey",3092:"ProjScaleAtNatOriginGeoKey",3093:"ProjScaleAtCenterGeoKey",3094:"ProjAzimuthAngleGeoKey",3095:"ProjStraightVertPoleLongGeoKey",3096:"ProjRectifiedGridAngleGeoKey",4096:"VerticalCSTypeGeoKey",4097:"VerticalCitationGeoKey",4098:"VerticalDatumGeoKey",4099:"VerticalUnitsGeoKey"},Ee={};for(var se in Qe)Qe.hasOwnProperty(se)&&(Ee[Qe[se]]=parseInt(se,10));function fe(A){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=c(A);if(e){var r=c(this).constructor;t=Reflect.construct(i,arguments,r)}else t=i.apply(this,arguments);return f(this,t)}}var ce=new Ae,he=function(A){s(t,w);var e=fe(t);function t(A){var i;return B(this,t),(i=e.call(this)).planarConfiguration=void 0!==A.PlanarConfiguration?A.PlanarConfiguration:1,i.samplesPerPixel=void 0!==A.SamplesPerPixel?A.SamplesPerPixel:1,i.addCompression=A.LercParameters[ae],i}return Q(t,[{key:"decodeBlock",value:function(A){switch(this.addCompression){case oe:break;case Be:A=YA(new Uint8Array(A)).buffer;break;case Ce:A=ce.decode(new Uint8Array(A)).buffer;break;default:throw new Error("Unsupported LERC additional compression method identifier: ".concat(this.addCompression))}return zA.decode(A,{returnPixelInterleavedDims:1===this.planarConfiguration}).pixels[0].buffer}}]),t}(),le=Object.freeze({__proto__:null,zstd:ce,default:he});function ue(A){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(A){return!1}}();return function(){var t,i=c(A);if(e){var r=c(this).constructor;t=Reflect.construct(i,arguments,r)}else t=i.apply(this,arguments);return f(this,t)}}var we=function(A){s(I,w);var t,i=ue(I);function I(){var A;if(B(this,I),A=i.call(this),"undefined"==typeof createImageBitmap)throw new Error("Cannot decode WebImage as `createImageBitmap` is not available");if("undefined"==typeof document&&"undefined"==typeof OffscreenCanvas)throw new Error("Cannot decode WebImage as neither `document` nor `OffscreenCanvas` is not available");return A}return Q(I,[{key:"decode",value:(t=e(r.mark((function A(e,t){var i,I,g,n;return r.wrap((function(A){for(;;)switch(A.prev=A.next){case 0:return i=new Blob([t]),A.next=3,createImageBitmap(i);case 3:return I=A.sent,"undefined"!=typeof document?((g=document.createElement("canvas")).width=I.width,g.height=I.height):g=new OffscreenCanvas(I.width,I.height),(n=g.getContext("2d")).drawImage(I,0,0),A.abrupt("return",n.getImageData(0,0,I.width,I.height).data.buffer);case 8:case"end":return A.stop()}}),A)}))),function(A,e){return t.apply(this,arguments)})}]),I}(),de=Object.freeze({__proto__:null,default:we});';return new dke(typeof Buffer!="undefined"?"data:application/javascript;base64,"+Buffer.from(t,"binary").toString("base64"):URL.createObjectURL(new Blob([t],{type:"application/javascript"})))}const vke=Object.freeze(Object.defineProperty({__proto__:null,create:Ake},Symbol.toStringTag,{value:"Module"}));tt.VDraw=$g,tt.VEcharts=sA,tt.VGDRoute=vA,tt.VGraphic=Hg,tt.VHeatmap=jg,tt.VImage=zg,tt.VMap=xg,tt.VMeasure=Wg,tt.VOverlay=Dg,tt.VOverview=Rg,tt.VPath=hA,tt.VRoute=qg,tt.VSuperCluster=fA,tt.VTile=Ou,tt.VTrack=lA,tt.VTraffic=gA,tt.VVector=Qg,tt.VWfs=pA,tt.default=wDe,tt.utils=Ahe,Object.defineProperties(tt,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|