gridviz 3.0.32 → 3.0.34
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/gridviz.js +1929 -1052
- package/dist/gridviz.min.js +1 -1
- package/package.json +1 -1
- package/src/core/Drawable.js +2 -2
- package/src/core/Map.js +8 -4
- package/src/index.js +3 -1
- package/src/layer/GeoJSONLayer.js +132 -80
- package/src/layer/GridLayer.js +21 -4
- package/src/legend/TernaryLegend.js +1 -1
- package/src/style/Interpolator.js +258 -0
- package/src/style/JoyPlotStyle.js +63 -10
- package/src/style/ShadingRayStyle.js +280 -0
- package/src/style/SquareColorCategoryWebGLStyle.js +2 -2
- package/src/utils/utils.js +67 -0
package/dist/gridviz.min.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/*! For license information please see gridviz.min.js.LICENSE.txt */
|
|
2
|
-
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.gridviz=e():t.gridviz=e()}(self,(()=>(()=>{"use strict";var t={d:(e,r)=>{for(var n in r)t.o(r,n)&&!t.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:r[n]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r:t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})}},e={};function r(){}function n(t){return null==t?r:function(){return this.querySelector(t)}}function o(){return[]}function i(t){return null==t?o:function(){return this.querySelectorAll(t)}}function a(t){return function(){return this.matches(t)}}function u(t){return function(e){return e.matches(t)}}t.r(e),t.d(e,{BackgroundLayer:()=>Uc,BackgroundLayerImage:()=>rl,BackgroundLayerWMS:()=>Vc,CSVGrid:()=>Eo,ColorCategoryLegend:()=>Vl,ColorDiscreteLegend:()=>Ul,ColorLegend:()=>Rl,CompositionStyle:()=>di,Dataset:()=>Rn,DotDensityStyle:()=>Pa,GeoCanvas:()=>zr,GeoJSONLayer:()=>_l,GridLayer:()=>Rc,ImageStyle:()=>Pc,IsoFenceStyle:()=>pc,JSGrid:()=>Io,JoyPlotStyle:()=>ai,LabelLayer:()=>yl,Layer:()=>Tn,LegoStyle:()=>gu,Map:()=>ln,MosaicStyle:()=>Du,MultiResolutionDataset:()=>Dn,NinjaStarStyle:()=>qu,OrientationLegend:()=>ms,PillarStyle:()=>Gi,SegmentStyle:()=>_i,ShadingStyle:()=>ea,ShapeColorSizeStyle:()=>$o,SideCategoryStyle:()=>la,SideStyle:()=>Vi,SideTanakaStyle:()=>za,SizeLegend:()=>as,SquareColorCategoryWebGLStyle:()=>Ga,SquareColorWebGLStyle:()=>Mu,StrokeStyle:()=>Ko,Style:()=>Sn,TernaryLegend:()=>Ps,TextStyle:()=>Mi,TiledGrid:()=>vo,TimeSeriesStyle:()=>nc,circularInverseScale:()=>Ls,circularScale:()=>Ms,classifier:()=>iu,classifierMinMax:()=>au,colorClassifier:()=>uu,discreteColors:()=>cu,exponentialScale:()=>Es,getParameterByName:()=>vf,logarithmicScale:()=>Ts,nice:()=>Jl,orientationLegend:()=>gs,powerInverseScale:()=>As,powerScale:()=>Cs,sizeDiscreteLegend:()=>ls,sizeDiscreteViewScaleLegend:()=>ss,sizeLegend:()=>us,sizeLegendViewScale:()=>cs,ternaryClassifier:()=>tf,ternaryColorClassifier:()=>ef,viewScale:()=>Qa,viewScaleColor:()=>eu,viewScaleColorQuantile:()=>ru,viewScaleCombination:()=>ou,viewScaleQuantile:()=>tu,viewScaleQuantileClassifer:()=>nu});var c=Array.prototype.find;function l(){return this.firstElementChild}var s=Array.prototype.filter;function f(){return Array.from(this.children)}function h(t){return new Array(t.length)}function y(t,e){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=e}function p(t,e,r,n,o,i){for(var a,u=0,c=e.length,l=i.length;u<l;++u)(a=e[u])?(a.__data__=i[u],n[u]=a):r[u]=new y(t,i[u]);for(;u<c;++u)(a=e[u])&&(o[u]=a)}function v(t,e,r,n,o,i,a){var u,c,l,s=new Map,f=e.length,h=i.length,p=new Array(f);for(u=0;u<f;++u)(c=e[u])&&(p[u]=l=a.call(c,c.__data__,u,e)+"",s.has(l)?o[u]=c:s.set(l,c));for(u=0;u<h;++u)l=a.call(t,i[u],u,i)+"",(c=s.get(l))?(n[u]=c,c.__data__=i[u],s.delete(l)):r[u]=new y(t,i[u]);for(u=0;u<f;++u)(c=e[u])&&s.get(p[u])===c&&(o[u]=c)}function d(t){return t.__data__}function b(t){return"object"==typeof t&&"length"in t?t:Array.from(t)}function m(t,e){return t<e?-1:t>e?1:t>=e?0:NaN}y.prototype={constructor:y,appendChild:function(t){return this._parent.insertBefore(t,this._next)},insertBefore:function(t,e){return this._parent.insertBefore(t,e)},querySelector:function(t){return this._parent.querySelector(t)},querySelectorAll:function(t){return this._parent.querySelectorAll(t)}};var g="http://www.w3.org/1999/xhtml";const w={svg:"http://www.w3.org/2000/svg",xhtml:g,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function x(t){var e=t+="",r=e.indexOf(":");return r>=0&&"xmlns"!==(e=t.slice(0,r))&&(t=t.slice(r+1)),w.hasOwnProperty(e)?{space:w[e],local:t}:t}function S(t){return function(){this.removeAttribute(t)}}function O(t){return function(){this.removeAttributeNS(t.space,t.local)}}function _(t,e){return function(){this.setAttribute(t,e)}}function j(t,e){return function(){this.setAttributeNS(t.space,t.local,e)}}function P(t,e){return function(){var r=e.apply(this,arguments);null==r?this.removeAttribute(t):this.setAttribute(t,r)}}function k(t,e){return function(){var r=e.apply(this,arguments);null==r?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,r)}}function E(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}function T(t){return function(){this.style.removeProperty(t)}}function C(t,e,r){return function(){this.style.setProperty(t,e,r)}}function A(t,e,r){return function(){var n=e.apply(this,arguments);null==n?this.style.removeProperty(t):this.style.setProperty(t,n,r)}}function M(t,e){return t.style.getPropertyValue(e)||E(t).getComputedStyle(t,null).getPropertyValue(e)}function L(t){return function(){delete this[t]}}function z(t,e){return function(){this[t]=e}}function R(t,e){return function(){var r=e.apply(this,arguments);null==r?delete this[t]:this[t]=r}}function I(t){return t.trim().split(/^|\s+/)}function F(t){return t.classList||new B(t)}function B(t){this._node=t,this._names=I(t.getAttribute("class")||"")}function N(t,e){for(var r=F(t),n=-1,o=e.length;++n<o;)r.add(e[n])}function D(t,e){for(var r=F(t),n=-1,o=e.length;++n<o;)r.remove(e[n])}function G(t){return function(){N(this,t)}}function U(t){return function(){D(this,t)}}function W(t,e){return function(){(e.apply(this,arguments)?N:D)(this,t)}}function $(){this.textContent=""}function Y(t){return function(){this.textContent=t}}function H(t){return function(){var e=t.apply(this,arguments);this.textContent=null==e?"":e}}function X(){this.innerHTML=""}function q(t){return function(){this.innerHTML=t}}function V(t){return function(){var e=t.apply(this,arguments);this.innerHTML=null==e?"":e}}function Z(){this.nextSibling&&this.parentNode.appendChild(this)}function J(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function K(t){return function(){var e=this.ownerDocument,r=this.namespaceURI;return r===g&&e.documentElement.namespaceURI===g?e.createElement(t):e.createElementNS(r,t)}}function Q(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function tt(t){var e=x(t);return(e.local?Q:K)(e)}function et(){return null}function rt(){var t=this.parentNode;t&&t.removeChild(this)}function nt(){var t=this.cloneNode(!1),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function ot(){var t=this.cloneNode(!0),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function it(t){return function(){var e=this.__on;if(e){for(var r,n=0,o=-1,i=e.length;n<i;++n)r=e[n],t.type&&r.type!==t.type||r.name!==t.name?e[++o]=r:this.removeEventListener(r.type,r.listener,r.options);++o?e.length=o:delete this.__on}}}function at(t,e,r){return function(){var n,o=this.__on,i=function(t){return function(e){t.call(this,e,this.__data__)}}(e);if(o)for(var a=0,u=o.length;a<u;++a)if((n=o[a]).type===t.type&&n.name===t.name)return this.removeEventListener(n.type,n.listener,n.options),this.addEventListener(n.type,n.listener=i,n.options=r),void(n.value=e);this.addEventListener(t.type,i,r),n={type:t.type,name:t.name,value:e,listener:i,options:r},o?o.push(n):this.__on=[n]}}function ut(t,e,r){var n=E(t),o=n.CustomEvent;"function"==typeof o?o=new o(e,r):(o=n.document.createEvent("Event"),r?(o.initEvent(e,r.bubbles,r.cancelable),o.detail=r.detail):o.initEvent(e,!1,!1)),t.dispatchEvent(o)}function ct(t,e){return function(){return ut(this,t,e)}}function lt(t,e){return function(){return ut(this,t,e.apply(this,arguments))}}B.prototype={add:function(t){this._names.indexOf(t)<0&&(this._names.push(t),this._node.setAttribute("class",this._names.join(" ")))},remove:function(t){var e=this._names.indexOf(t);e>=0&&(this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(t){return this._names.indexOf(t)>=0}};var st=[null];function ft(t,e){this._groups=t,this._parents=e}function ht(){return new ft([[document.documentElement]],st)}ft.prototype=ht.prototype={constructor:ft,select:function(t){"function"!=typeof t&&(t=n(t));for(var e=this._groups,r=e.length,o=new Array(r),i=0;i<r;++i)for(var a,u,c=e[i],l=c.length,s=o[i]=new Array(l),f=0;f<l;++f)(a=c[f])&&(u=t.call(a,a.__data__,f,c))&&("__data__"in a&&(u.__data__=a.__data__),s[f]=u);return new ft(o,this._parents)},selectAll:function(t){t="function"==typeof t?function(t){return function(){return null==(e=t.apply(this,arguments))?[]:Array.isArray(e)?e:Array.from(e);var e}}(t):i(t);for(var e=this._groups,r=e.length,n=[],o=[],a=0;a<r;++a)for(var u,c=e[a],l=c.length,s=0;s<l;++s)(u=c[s])&&(n.push(t.call(u,u.__data__,s,c)),o.push(u));return new ft(n,o)},selectChild:function(t){return this.select(null==t?l:function(t){return function(){return c.call(this.children,t)}}("function"==typeof t?t:u(t)))},selectChildren:function(t){return this.selectAll(null==t?f:function(t){return function(){return s.call(this.children,t)}}("function"==typeof t?t:u(t)))},filter:function(t){"function"!=typeof t&&(t=a(t));for(var e=this._groups,r=e.length,n=new Array(r),o=0;o<r;++o)for(var i,u=e[o],c=u.length,l=n[o]=[],s=0;s<c;++s)(i=u[s])&&t.call(i,i.__data__,s,u)&&l.push(i);return new ft(n,this._parents)},data:function(t,e){if(!arguments.length)return Array.from(this,d);var r,n=e?v:p,o=this._parents,i=this._groups;"function"!=typeof t&&(r=t,t=function(){return r});for(var a=i.length,u=new Array(a),c=new Array(a),l=new Array(a),s=0;s<a;++s){var f=o[s],h=i[s],y=h.length,m=b(t.call(f,f&&f.__data__,s,o)),g=m.length,w=c[s]=new Array(g),x=u[s]=new Array(g);n(f,h,w,x,l[s]=new Array(y),m,e);for(var S,O,_=0,j=0;_<g;++_)if(S=w[_]){for(_>=j&&(j=_+1);!(O=x[j])&&++j<g;);S._next=O||null}}return(u=new ft(u,o))._enter=c,u._exit=l,u},enter:function(){return new ft(this._enter||this._groups.map(h),this._parents)},exit:function(){return new ft(this._exit||this._groups.map(h),this._parents)},join:function(t,e,r){var n=this.enter(),o=this,i=this.exit();return"function"==typeof t?(n=t(n))&&(n=n.selection()):n=n.append(t+""),null!=e&&(o=e(o))&&(o=o.selection()),null==r?i.remove():r(i),n&&o?n.merge(o).order():o},merge:function(t){for(var e=t.selection?t.selection():t,r=this._groups,n=e._groups,o=r.length,i=n.length,a=Math.min(o,i),u=new Array(o),c=0;c<a;++c)for(var l,s=r[c],f=n[c],h=s.length,y=u[c]=new Array(h),p=0;p<h;++p)(l=s[p]||f[p])&&(y[p]=l);for(;c<o;++c)u[c]=r[c];return new ft(u,this._parents)},selection:function(){return this},order:function(){for(var t=this._groups,e=-1,r=t.length;++e<r;)for(var n,o=t[e],i=o.length-1,a=o[i];--i>=0;)(n=o[i])&&(a&&4^n.compareDocumentPosition(a)&&a.parentNode.insertBefore(n,a),a=n);return this},sort:function(t){function e(e,r){return e&&r?t(e.__data__,r.__data__):!e-!r}t||(t=m);for(var r=this._groups,n=r.length,o=new Array(n),i=0;i<n;++i){for(var a,u=r[i],c=u.length,l=o[i]=new Array(c),s=0;s<c;++s)(a=u[s])&&(l[s]=a);l.sort(e)}return new ft(o,this._parents).order()},call:function(){var t=arguments[0];return arguments[0]=this,t.apply(null,arguments),this},nodes:function(){return Array.from(this)},node:function(){for(var t=this._groups,e=0,r=t.length;e<r;++e)for(var n=t[e],o=0,i=n.length;o<i;++o){var a=n[o];if(a)return a}return null},size:function(){let t=0;for(const e of this)++t;return t},empty:function(){return!this.node()},each:function(t){for(var e=this._groups,r=0,n=e.length;r<n;++r)for(var o,i=e[r],a=0,u=i.length;a<u;++a)(o=i[a])&&t.call(o,o.__data__,a,i);return this},attr:function(t,e){var r=x(t);if(arguments.length<2){var n=this.node();return r.local?n.getAttributeNS(r.space,r.local):n.getAttribute(r)}return this.each((null==e?r.local?O:S:"function"==typeof e?r.local?k:P:r.local?j:_)(r,e))},style:function(t,e,r){return arguments.length>1?this.each((null==e?T:"function"==typeof e?A:C)(t,e,null==r?"":r)):M(this.node(),t)},property:function(t,e){return arguments.length>1?this.each((null==e?L:"function"==typeof e?R:z)(t,e)):this.node()[t]},classed:function(t,e){var r=I(t+"");if(arguments.length<2){for(var n=F(this.node()),o=-1,i=r.length;++o<i;)if(!n.contains(r[o]))return!1;return!0}return this.each(("function"==typeof e?W:e?G:U)(r,e))},text:function(t){return arguments.length?this.each(null==t?$:("function"==typeof t?H:Y)(t)):this.node().textContent},html:function(t){return arguments.length?this.each(null==t?X:("function"==typeof t?V:q)(t)):this.node().innerHTML},raise:function(){return this.each(Z)},lower:function(){return this.each(J)},append:function(t){var e="function"==typeof t?t:tt(t);return this.select((function(){return this.appendChild(e.apply(this,arguments))}))},insert:function(t,e){var r="function"==typeof t?t:tt(t),o=null==e?et:"function"==typeof e?e:n(e);return this.select((function(){return this.insertBefore(r.apply(this,arguments),o.apply(this,arguments)||null)}))},remove:function(){return this.each(rt)},clone:function(t){return this.select(t?ot:nt)},datum:function(t){return arguments.length?this.property("__data__",t):this.node().__data__},on:function(t,e,r){var n,o,i=function(t){return t.trim().split(/^|\s+/).map((function(t){var e="",r=t.indexOf(".");return r>=0&&(e=t.slice(r+1),t=t.slice(0,r)),{type:t,name:e}}))}(t+""),a=i.length;if(!(arguments.length<2)){for(u=e?at:it,n=0;n<a;++n)this.each(u(i[n],e,r));return this}var u=this.node().__on;if(u)for(var c,l=0,s=u.length;l<s;++l)for(n=0,c=u[l];n<a;++n)if((o=i[n]).type===c.type&&o.name===c.name)return c.value},dispatch:function(t,e){return this.each(("function"==typeof e?lt:ct)(t,e))},[Symbol.iterator]:function*(){for(var t=this._groups,e=0,r=t.length;e<r;++e)for(var n,o=t[e],i=0,a=o.length;i<a;++i)(n=o[i])&&(yield n)}};const yt=ht;function pt(t){return"string"==typeof t?new ft([[document.querySelector(t)]],[document.documentElement]):new ft([[t]],st)}var vt={value:()=>{}};function dt(){for(var t,e=0,r=arguments.length,n={};e<r;++e){if(!(t=arguments[e]+"")||t in n||/[\s.]/.test(t))throw new Error("illegal type: "+t);n[t]=[]}return new bt(n)}function bt(t){this._=t}function mt(t,e){for(var r,n=0,o=t.length;n<o;++n)if((r=t[n]).name===e)return r.value}function gt(t,e,r){for(var n=0,o=t.length;n<o;++n)if(t[n].name===e){t[n]=vt,t=t.slice(0,n).concat(t.slice(n+1));break}return null!=r&&t.push({name:e,value:r}),t}bt.prototype=dt.prototype={constructor:bt,on:function(t,e){var r,n,o=this._,i=(n=o,(t+"").trim().split(/^|\s+/).map((function(t){var e="",r=t.indexOf(".");if(r>=0&&(e=t.slice(r+1),t=t.slice(0,r)),t&&!n.hasOwnProperty(t))throw new Error("unknown type: "+t);return{type:t,name:e}}))),a=-1,u=i.length;if(!(arguments.length<2)){if(null!=e&&"function"!=typeof e)throw new Error("invalid callback: "+e);for(;++a<u;)if(r=(t=i[a]).type)o[r]=gt(o[r],t.name,e);else if(null==e)for(r in o)o[r]=gt(o[r],t.name,null);return this}for(;++a<u;)if((r=(t=i[a]).type)&&(r=mt(o[r],t.name)))return r},copy:function(){var t={},e=this._;for(var r in e)t[r]=e[r].slice();return new bt(t)},call:function(t,e){if((r=arguments.length-2)>0)for(var r,n,o=new Array(r),i=0;i<r;++i)o[i]=arguments[i+2];if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(i=0,r=(n=this._[t]).length;i<r;++i)n[i].value.apply(e,o)},apply:function(t,e,r){if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(var n=this._[t],o=0,i=n.length;o<i;++o)n[o].value.apply(e,r)}};const wt=dt,xt={capture:!0,passive:!1};function St(t){t.preventDefault(),t.stopImmediatePropagation()}function Ot(t){return((t=Math.exp(t))+1/t)/2}const _t=function t(e,r,n){function o(t,o){var i,a,u=t[0],c=t[1],l=t[2],s=o[0],f=o[1],h=o[2],y=s-u,p=f-c,v=y*y+p*p;if(v<1e-12)a=Math.log(h/l)/e,i=function(t){return[u+t*y,c+t*p,l*Math.exp(e*t*a)]};else{var d=Math.sqrt(v),b=(h*h-l*l+n*v)/(2*l*r*d),m=(h*h-l*l-n*v)/(2*h*r*d),g=Math.log(Math.sqrt(b*b+1)-b),w=Math.log(Math.sqrt(m*m+1)-m);a=(w-g)/e,i=function(t){var n,o=t*a,i=Ot(g),s=l/(r*d)*(i*(n=e*o+g,((n=Math.exp(2*n))-1)/(n+1))-function(t){return((t=Math.exp(t))-1/t)/2}(g));return[u+s*y,c+s*p,l*i/Ot(e*o+g)]}}return i.duration=1e3*a*e/Math.SQRT2,i}return o.rho=function(e){var r=Math.max(.001,+e),n=r*r;return t(r,n,n*n)},o}(Math.SQRT2,2,4);function jt(t,e){if(t=function(t){let e;for(;e=t.sourceEvent;)t=e;return t}(t),void 0===e&&(e=t.currentTarget),e){var r=e.ownerSVGElement||e;if(r.createSVGPoint){var n=r.createSVGPoint();return n.x=t.clientX,n.y=t.clientY,[(n=n.matrixTransform(e.getScreenCTM().inverse())).x,n.y]}if(e.getBoundingClientRect){var o=e.getBoundingClientRect();return[t.clientX-o.left-e.clientLeft,t.clientY-o.top-e.clientTop]}}return[t.pageX,t.pageY]}var Pt,kt,Et=0,Tt=0,Ct=0,At=0,Mt=0,Lt=0,zt="object"==typeof performance&&performance.now?performance:Date,Rt="object"==typeof window&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(t){setTimeout(t,17)};function It(){return Mt||(Rt(Ft),Mt=zt.now()+Lt)}function Ft(){Mt=0}function Bt(){this._call=this._time=this._next=null}function Nt(t,e,r){var n=new Bt;return n.restart(t,e,r),n}function Dt(){Mt=(At=zt.now())+Lt,Et=Tt=0;try{!function(){It(),++Et;for(var t,e=Pt;e;)(t=Mt-e._time)>=0&&e._call.call(void 0,t),e=e._next;--Et}()}finally{Et=0,function(){for(var t,e,r=Pt,n=1/0;r;)r._call?(n>r._time&&(n=r._time),t=r,r=r._next):(e=r._next,r._next=null,r=t?t._next=e:Pt=e);kt=t,Ut(n)}(),Mt=0}}function Gt(){var t=zt.now(),e=t-At;e>1e3&&(Lt-=e,At=t)}function Ut(t){Et||(Tt&&(Tt=clearTimeout(Tt)),t-Mt>24?(t<1/0&&(Tt=setTimeout(Dt,t-zt.now()-Lt)),Ct&&(Ct=clearInterval(Ct))):(Ct||(At=zt.now(),Ct=setInterval(Gt,1e3)),Et=1,Rt(Dt)))}function Wt(t,e,r){var n=new Bt;return e=null==e?0:+e,n.restart((r=>{n.stop(),t(r+e)}),e,r),n}Bt.prototype=Nt.prototype={constructor:Bt,restart:function(t,e,r){if("function"!=typeof t)throw new TypeError("callback is not a function");r=(null==r?It():+r)+(null==e?0:+e),this._next||kt===this||(kt?kt._next=this:Pt=this,kt=this),this._call=t,this._time=r,Ut()},stop:function(){this._call&&(this._call=null,this._time=1/0,Ut())}};var $t=wt("start","end","cancel","interrupt"),Yt=[];function Ht(t,e,r,n,o,i){var a=t.__transition;if(a){if(r in a)return}else t.__transition={};!function(t,e,r){var n,o=t.__transition;function i(c){var l,s,f,h;if(1!==r.state)return u();for(l in o)if((h=o[l]).name===r.name){if(3===h.state)return Wt(i);4===h.state?(h.state=6,h.timer.stop(),h.on.call("interrupt",t,t.__data__,h.index,h.group),delete o[l]):+l<e&&(h.state=6,h.timer.stop(),h.on.call("cancel",t,t.__data__,h.index,h.group),delete o[l])}if(Wt((function(){3===r.state&&(r.state=4,r.timer.restart(a,r.delay,r.time),a(c))})),r.state=2,r.on.call("start",t,t.__data__,r.index,r.group),2===r.state){for(r.state=3,n=new Array(f=r.tween.length),l=0,s=-1;l<f;++l)(h=r.tween[l].value.call(t,t.__data__,r.index,r.group))&&(n[++s]=h);n.length=s+1}}function a(e){for(var o=e<r.duration?r.ease.call(null,e/r.duration):(r.timer.restart(u),r.state=5,1),i=-1,a=n.length;++i<a;)n[i].call(t,o);5===r.state&&(r.on.call("end",t,t.__data__,r.index,r.group),u())}function u(){for(var n in r.state=6,r.timer.stop(),delete o[e],o)return;delete t.__transition}o[e]=r,r.timer=Nt((function(t){r.state=1,r.timer.restart(i,r.delay,r.time),r.delay<=t&&i(t-r.delay)}),0,r.time)}(t,r,{name:e,index:n,group:o,on:$t,tween:Yt,time:i.time,delay:i.delay,duration:i.duration,ease:i.ease,timer:null,state:0})}function Xt(t,e){var r=Vt(t,e);if(r.state>0)throw new Error("too late; already scheduled");return r}function qt(t,e){var r=Vt(t,e);if(r.state>3)throw new Error("too late; already running");return r}function Vt(t,e){var r=t.__transition;if(!r||!(r=r[e]))throw new Error("transition not found");return r}function Zt(t,e){var r,n,o,i=t.__transition,a=!0;if(i){for(o in e=null==e?null:e+"",i)(r=i[o]).name===e?(n=r.state>2&&r.state<5,r.state=6,r.timer.stop(),r.on.call(n?"interrupt":"cancel",t,t.__data__,r.index,r.group),delete i[o]):a=!1;a&&delete t.__transition}}function Jt(t,e){return t=+t,e=+e,function(r){return t*(1-r)+e*r}}var Kt,Qt=180/Math.PI,te={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function ee(t,e,r,n,o,i){var a,u,c;return(a=Math.sqrt(t*t+e*e))&&(t/=a,e/=a),(c=t*r+e*n)&&(r-=t*c,n-=e*c),(u=Math.sqrt(r*r+n*n))&&(r/=u,n/=u,c/=u),t*n<e*r&&(t=-t,e=-e,c=-c,a=-a),{translateX:o,translateY:i,rotate:Math.atan2(e,t)*Qt,skewX:Math.atan(c)*Qt,scaleX:a,scaleY:u}}function re(t,e,r,n){function o(t){return t.length?t.pop()+" ":""}return function(i,a){var u=[],c=[];return i=t(i),a=t(a),function(t,n,o,i,a,u){if(t!==o||n!==i){var c=a.push("translate(",null,e,null,r);u.push({i:c-4,x:Jt(t,o)},{i:c-2,x:Jt(n,i)})}else(o||i)&&a.push("translate("+o+e+i+r)}(i.translateX,i.translateY,a.translateX,a.translateY,u,c),function(t,e,r,i){t!==e?(t-e>180?e+=360:e-t>180&&(t+=360),i.push({i:r.push(o(r)+"rotate(",null,n)-2,x:Jt(t,e)})):e&&r.push(o(r)+"rotate("+e+n)}(i.rotate,a.rotate,u,c),function(t,e,r,i){t!==e?i.push({i:r.push(o(r)+"skewX(",null,n)-2,x:Jt(t,e)}):e&&r.push(o(r)+"skewX("+e+n)}(i.skewX,a.skewX,u,c),function(t,e,r,n,i,a){if(t!==r||e!==n){var u=i.push(o(i)+"scale(",null,",",null,")");a.push({i:u-4,x:Jt(t,r)},{i:u-2,x:Jt(e,n)})}else 1===r&&1===n||i.push(o(i)+"scale("+r+","+n+")")}(i.scaleX,i.scaleY,a.scaleX,a.scaleY,u,c),i=a=null,function(t){for(var e,r=-1,n=c.length;++r<n;)u[(e=c[r]).i]=e.x(t);return u.join("")}}}var ne=re((function(t){const e=new("function"==typeof DOMMatrix?DOMMatrix:WebKitCSSMatrix)(t+"");return e.isIdentity?te:ee(e.a,e.b,e.c,e.d,e.e,e.f)}),"px, ","px)","deg)"),oe=re((function(t){return null==t?te:(Kt||(Kt=document.createElementNS("http://www.w3.org/2000/svg","g")),Kt.setAttribute("transform",t),(t=Kt.transform.baseVal.consolidate())?ee((t=t.matrix).a,t.b,t.c,t.d,t.e,t.f):te)}),", ",")",")");function ie(t,e){var r,n;return function(){var o=qt(this,t),i=o.tween;if(i!==r)for(var a=0,u=(n=r=i).length;a<u;++a)if(n[a].name===e){(n=n.slice()).splice(a,1);break}o.tween=n}}function ae(t,e,r){var n,o;if("function"!=typeof r)throw new Error;return function(){var i=qt(this,t),a=i.tween;if(a!==n){o=(n=a).slice();for(var u={name:e,value:r},c=0,l=o.length;c<l;++c)if(o[c].name===e){o[c]=u;break}c===l&&o.push(u)}i.tween=o}}function ue(t,e,r){var n=t._id;return t.each((function(){var t=qt(this,n);(t.value||(t.value={}))[e]=r.apply(this,arguments)})),function(t){return Vt(t,n).value[e]}}function ce(t,e,r){t.prototype=e.prototype=r,r.constructor=t}function le(t,e){var r=Object.create(t.prototype);for(var n in e)r[n]=e[n];return r}function se(){}var fe=.7,he=1/fe,ye="\\s*([+-]?\\d+)\\s*",pe="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",ve="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",de=/^#([0-9a-f]{3,8})$/,be=new RegExp(`^rgb\\(${ye},${ye},${ye}\\)$`),me=new RegExp(`^rgb\\(${ve},${ve},${ve}\\)$`),ge=new RegExp(`^rgba\\(${ye},${ye},${ye},${pe}\\)$`),we=new RegExp(`^rgba\\(${ve},${ve},${ve},${pe}\\)$`),xe=new RegExp(`^hsl\\(${pe},${ve},${ve}\\)$`),Se=new RegExp(`^hsla\\(${pe},${ve},${ve},${pe}\\)$`),Oe={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};function _e(){return this.rgb().formatHex()}function je(){return this.rgb().formatRgb()}function Pe(t){var e,r;return t=(t+"").trim().toLowerCase(),(e=de.exec(t))?(r=e[1].length,e=parseInt(e[1],16),6===r?ke(e):3===r?new Ae(e>>8&15|e>>4&240,e>>4&15|240&e,(15&e)<<4|15&e,1):8===r?Ee(e>>24&255,e>>16&255,e>>8&255,(255&e)/255):4===r?Ee(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|240&e,((15&e)<<4|15&e)/255):null):(e=be.exec(t))?new Ae(e[1],e[2],e[3],1):(e=me.exec(t))?new Ae(255*e[1]/100,255*e[2]/100,255*e[3]/100,1):(e=ge.exec(t))?Ee(e[1],e[2],e[3],e[4]):(e=we.exec(t))?Ee(255*e[1]/100,255*e[2]/100,255*e[3]/100,e[4]):(e=xe.exec(t))?Fe(e[1],e[2]/100,e[3]/100,1):(e=Se.exec(t))?Fe(e[1],e[2]/100,e[3]/100,e[4]):Oe.hasOwnProperty(t)?ke(Oe[t]):"transparent"===t?new Ae(NaN,NaN,NaN,0):null}function ke(t){return new Ae(t>>16&255,t>>8&255,255&t,1)}function Ee(t,e,r,n){return n<=0&&(t=e=r=NaN),new Ae(t,e,r,n)}function Te(t){return t instanceof se||(t=Pe(t)),t?new Ae((t=t.rgb()).r,t.g,t.b,t.opacity):new Ae}function Ce(t,e,r,n){return 1===arguments.length?Te(t):new Ae(t,e,r,null==n?1:n)}function Ae(t,e,r,n){this.r=+t,this.g=+e,this.b=+r,this.opacity=+n}function Me(){return`#${Ie(this.r)}${Ie(this.g)}${Ie(this.b)}`}function Le(){const t=ze(this.opacity);return`${1===t?"rgb(":"rgba("}${Re(this.r)}, ${Re(this.g)}, ${Re(this.b)}${1===t?")":`, ${t})`}`}function ze(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function Re(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function Ie(t){return((t=Re(t))<16?"0":"")+t.toString(16)}function Fe(t,e,r,n){return n<=0?t=e=r=NaN:r<=0||r>=1?t=e=NaN:e<=0&&(t=NaN),new Ne(t,e,r,n)}function Be(t){if(t instanceof Ne)return new Ne(t.h,t.s,t.l,t.opacity);if(t instanceof se||(t=Pe(t)),!t)return new Ne;if(t instanceof Ne)return t;var e=(t=t.rgb()).r/255,r=t.g/255,n=t.b/255,o=Math.min(e,r,n),i=Math.max(e,r,n),a=NaN,u=i-o,c=(i+o)/2;return u?(a=e===i?(r-n)/u+6*(r<n):r===i?(n-e)/u+2:(e-r)/u+4,u/=c<.5?i+o:2-i-o,a*=60):u=c>0&&c<1?0:a,new Ne(a,u,c,t.opacity)}function Ne(t,e,r,n){this.h=+t,this.s=+e,this.l=+r,this.opacity=+n}function De(t){return(t=(t||0)%360)<0?t+360:t}function Ge(t){return Math.max(0,Math.min(1,t||0))}function Ue(t,e,r){return 255*(t<60?e+(r-e)*t/60:t<180?r:t<240?e+(r-e)*(240-t)/60:e)}function We(t,e,r,n,o){var i=t*t,a=i*t;return((1-3*t+3*i-a)*e+(4-6*i+3*a)*r+(1+3*t+3*i-3*a)*n+a*o)/6}ce(se,Pe,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:_e,formatHex:_e,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return Be(this).formatHsl()},formatRgb:je,toString:je}),ce(Ae,Ce,le(se,{brighter(t){return t=null==t?he:Math.pow(he,t),new Ae(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=null==t?fe:Math.pow(fe,t),new Ae(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new Ae(Re(this.r),Re(this.g),Re(this.b),ze(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:Me,formatHex:Me,formatHex8:function(){return`#${Ie(this.r)}${Ie(this.g)}${Ie(this.b)}${Ie(255*(isNaN(this.opacity)?1:this.opacity))}`},formatRgb:Le,toString:Le})),ce(Ne,(function(t,e,r,n){return 1===arguments.length?Be(t):new Ne(t,e,r,null==n?1:n)}),le(se,{brighter(t){return t=null==t?he:Math.pow(he,t),new Ne(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=null==t?fe:Math.pow(fe,t),new Ne(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=this.h%360+360*(this.h<0),e=isNaN(t)||isNaN(this.s)?0:this.s,r=this.l,n=r+(r<.5?r:1-r)*e,o=2*r-n;return new Ae(Ue(t>=240?t-240:t+120,o,n),Ue(t,o,n),Ue(t<120?t+240:t-120,o,n),this.opacity)},clamp(){return new Ne(De(this.h),Ge(this.s),Ge(this.l),ze(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const t=ze(this.opacity);return`${1===t?"hsl(":"hsla("}${De(this.h)}, ${100*Ge(this.s)}%, ${100*Ge(this.l)}%${1===t?")":`, ${t})`}`}}));const $e=t=>()=>t;function Ye(t,e){var r=e-t;return r?function(t,e){return function(r){return t+r*e}}(t,r):$e(isNaN(t)?e:t)}const He=function t(e){var r=function(t){return 1==(t=+t)?Ye:function(e,r){return r-e?function(t,e,r){return t=Math.pow(t,r),e=Math.pow(e,r)-t,r=1/r,function(n){return Math.pow(t+n*e,r)}}(e,r,t):$e(isNaN(e)?r:e)}}(e);function n(t,e){var n=r((t=Ce(t)).r,(e=Ce(e)).r),o=r(t.g,e.g),i=r(t.b,e.b),a=Ye(t.opacity,e.opacity);return function(e){return t.r=n(e),t.g=o(e),t.b=i(e),t.opacity=a(e),t+""}}return n.gamma=t,n}(1);function Xe(t){return function(e){var r,n,o=e.length,i=new Array(o),a=new Array(o),u=new Array(o);for(r=0;r<o;++r)n=Ce(e[r]),i[r]=n.r||0,a[r]=n.g||0,u[r]=n.b||0;return i=t(i),a=t(a),u=t(u),n.opacity=1,function(t){return n.r=i(t),n.g=a(t),n.b=u(t),n+""}}}Xe((function(t){var e=t.length-1;return function(r){var n=r<=0?r=0:r>=1?(r=1,e-1):Math.floor(r*e),o=t[n],i=t[n+1],a=n>0?t[n-1]:2*o-i,u=n<e-1?t[n+2]:2*i-o;return We((r-n/e)*e,a,o,i,u)}})),Xe((function(t){var e=t.length;return function(r){var n=Math.floor(((r%=1)<0?++r:r)*e),o=t[(n+e-1)%e],i=t[n%e],a=t[(n+1)%e],u=t[(n+2)%e];return We((r-n/e)*e,o,i,a,u)}}));var qe=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Ve=new RegExp(qe.source,"g");function Ze(t,e){var r,n,o,i=qe.lastIndex=Ve.lastIndex=0,a=-1,u=[],c=[];for(t+="",e+="";(r=qe.exec(t))&&(n=Ve.exec(e));)(o=n.index)>i&&(o=e.slice(i,o),u[a]?u[a]+=o:u[++a]=o),(r=r[0])===(n=n[0])?u[a]?u[a]+=n:u[++a]=n:(u[++a]=null,c.push({i:a,x:Jt(r,n)})),i=Ve.lastIndex;return i<e.length&&(o=e.slice(i),u[a]?u[a]+=o:u[++a]=o),u.length<2?c[0]?function(t){return function(e){return t(e)+""}}(c[0].x):function(t){return function(){return t}}(e):(e=c.length,function(t){for(var r,n=0;n<e;++n)u[(r=c[n]).i]=r.x(t);return u.join("")})}function Je(t,e){var r;return("number"==typeof e?Jt:e instanceof Pe?He:(r=Pe(e))?(e=r,He):Ze)(t,e)}function Ke(t){return function(){this.removeAttribute(t)}}function Qe(t){return function(){this.removeAttributeNS(t.space,t.local)}}function tr(t,e,r){var n,o,i=r+"";return function(){var a=this.getAttribute(t);return a===i?null:a===n?o:o=e(n=a,r)}}function er(t,e,r){var n,o,i=r+"";return function(){var a=this.getAttributeNS(t.space,t.local);return a===i?null:a===n?o:o=e(n=a,r)}}function rr(t,e,r){var n,o,i;return function(){var a,u,c=r(this);if(null!=c)return(a=this.getAttribute(t))===(u=c+"")?null:a===n&&u===o?i:(o=u,i=e(n=a,c));this.removeAttribute(t)}}function nr(t,e,r){var n,o,i;return function(){var a,u,c=r(this);if(null!=c)return(a=this.getAttributeNS(t.space,t.local))===(u=c+"")?null:a===n&&u===o?i:(o=u,i=e(n=a,c));this.removeAttributeNS(t.space,t.local)}}function or(t,e){var r,n;function o(){var o=e.apply(this,arguments);return o!==n&&(r=(n=o)&&function(t,e){return function(r){this.setAttributeNS(t.space,t.local,e.call(this,r))}}(t,o)),r}return o._value=e,o}function ir(t,e){var r,n;function o(){var o=e.apply(this,arguments);return o!==n&&(r=(n=o)&&function(t,e){return function(r){this.setAttribute(t,e.call(this,r))}}(t,o)),r}return o._value=e,o}function ar(t,e){return function(){Xt(this,t).delay=+e.apply(this,arguments)}}function ur(t,e){return e=+e,function(){Xt(this,t).delay=e}}function cr(t,e){return function(){qt(this,t).duration=+e.apply(this,arguments)}}function lr(t,e){return e=+e,function(){qt(this,t).duration=e}}var sr=yt.prototype.constructor;function fr(t){return function(){this.style.removeProperty(t)}}var hr=0;function yr(t,e,r,n){this._groups=t,this._parents=e,this._name=r,this._id=n}function pr(){return++hr}var vr=yt.prototype;yr.prototype=function(t){return yt().transition(t)}.prototype={constructor:yr,select:function(t){var e=this._name,r=this._id;"function"!=typeof t&&(t=n(t));for(var o=this._groups,i=o.length,a=new Array(i),u=0;u<i;++u)for(var c,l,s=o[u],f=s.length,h=a[u]=new Array(f),y=0;y<f;++y)(c=s[y])&&(l=t.call(c,c.__data__,y,s))&&("__data__"in c&&(l.__data__=c.__data__),h[y]=l,Ht(h[y],e,r,y,h,Vt(c,r)));return new yr(a,this._parents,e,r)},selectAll:function(t){var e=this._name,r=this._id;"function"!=typeof t&&(t=i(t));for(var n=this._groups,o=n.length,a=[],u=[],c=0;c<o;++c)for(var l,s=n[c],f=s.length,h=0;h<f;++h)if(l=s[h]){for(var y,p=t.call(l,l.__data__,h,s),v=Vt(l,r),d=0,b=p.length;d<b;++d)(y=p[d])&&Ht(y,e,r,d,p,v);a.push(p),u.push(l)}return new yr(a,u,e,r)},selectChild:vr.selectChild,selectChildren:vr.selectChildren,filter:function(t){"function"!=typeof t&&(t=a(t));for(var e=this._groups,r=e.length,n=new Array(r),o=0;o<r;++o)for(var i,u=e[o],c=u.length,l=n[o]=[],s=0;s<c;++s)(i=u[s])&&t.call(i,i.__data__,s,u)&&l.push(i);return new yr(n,this._parents,this._name,this._id)},merge:function(t){if(t._id!==this._id)throw new Error;for(var e=this._groups,r=t._groups,n=e.length,o=r.length,i=Math.min(n,o),a=new Array(n),u=0;u<i;++u)for(var c,l=e[u],s=r[u],f=l.length,h=a[u]=new Array(f),y=0;y<f;++y)(c=l[y]||s[y])&&(h[y]=c);for(;u<n;++u)a[u]=e[u];return new yr(a,this._parents,this._name,this._id)},selection:function(){return new sr(this._groups,this._parents)},transition:function(){for(var t=this._name,e=this._id,r=pr(),n=this._groups,o=n.length,i=0;i<o;++i)for(var a,u=n[i],c=u.length,l=0;l<c;++l)if(a=u[l]){var s=Vt(a,e);Ht(a,t,r,l,u,{time:s.time+s.delay+s.duration,delay:0,duration:s.duration,ease:s.ease})}return new yr(n,this._parents,t,r)},call:vr.call,nodes:vr.nodes,node:vr.node,size:vr.size,empty:vr.empty,each:vr.each,on:function(t,e){var r=this._id;return arguments.length<2?Vt(this.node(),r).on.on(t):this.each(function(t,e,r){var n,o,i=function(t){return(t+"").trim().split(/^|\s+/).every((function(t){var e=t.indexOf(".");return e>=0&&(t=t.slice(0,e)),!t||"start"===t}))}(e)?Xt:qt;return function(){var a=i(this,t),u=a.on;u!==n&&(o=(n=u).copy()).on(e,r),a.on=o}}(r,t,e))},attr:function(t,e){var r=x(t),n="transform"===r?oe:Je;return this.attrTween(t,"function"==typeof e?(r.local?nr:rr)(r,n,ue(this,"attr."+t,e)):null==e?(r.local?Qe:Ke)(r):(r.local?er:tr)(r,n,e))},attrTween:function(t,e){var r="attr."+t;if(arguments.length<2)return(r=this.tween(r))&&r._value;if(null==e)return this.tween(r,null);if("function"!=typeof e)throw new Error;var n=x(t);return this.tween(r,(n.local?or:ir)(n,e))},style:function(t,e,r){var n="transform"==(t+="")?ne:Je;return null==e?this.styleTween(t,function(t,e){var r,n,o;return function(){var i=M(this,t),a=(this.style.removeProperty(t),M(this,t));return i===a?null:i===r&&a===n?o:o=e(r=i,n=a)}}(t,n)).on("end.style."+t,fr(t)):"function"==typeof e?this.styleTween(t,function(t,e,r){var n,o,i;return function(){var a=M(this,t),u=r(this),c=u+"";return null==u&&(this.style.removeProperty(t),c=u=M(this,t)),a===c?null:a===n&&c===o?i:(o=c,i=e(n=a,u))}}(t,n,ue(this,"style."+t,e))).each(function(t,e){var r,n,o,i,a="style."+e,u="end."+a;return function(){var c=qt(this,t),l=c.on,s=null==c.value[a]?i||(i=fr(e)):void 0;l===r&&o===s||(n=(r=l).copy()).on(u,o=s),c.on=n}}(this._id,t)):this.styleTween(t,function(t,e,r){var n,o,i=r+"";return function(){var a=M(this,t);return a===i?null:a===n?o:o=e(n=a,r)}}(t,n,e),r).on("end.style."+t,null)},styleTween:function(t,e,r){var n="style."+(t+="");if(arguments.length<2)return(n=this.tween(n))&&n._value;if(null==e)return this.tween(n,null);if("function"!=typeof e)throw new Error;return this.tween(n,function(t,e,r){var n,o;function i(){var i=e.apply(this,arguments);return i!==o&&(n=(o=i)&&function(t,e,r){return function(n){this.style.setProperty(t,e.call(this,n),r)}}(t,i,r)),n}return i._value=e,i}(t,e,null==r?"":r))},text:function(t){return this.tween("text","function"==typeof t?function(t){return function(){var e=t(this);this.textContent=null==e?"":e}}(ue(this,"text",t)):function(t){return function(){this.textContent=t}}(null==t?"":t+""))},textTween:function(t){var e="text";if(arguments.length<1)return(e=this.tween(e))&&e._value;if(null==t)return this.tween(e,null);if("function"!=typeof t)throw new Error;return this.tween(e,function(t){var e,r;function n(){var n=t.apply(this,arguments);return n!==r&&(e=(r=n)&&function(t){return function(e){this.textContent=t.call(this,e)}}(n)),e}return n._value=t,n}(t))},remove:function(){return this.on("end.remove",function(t){return function(){var e=this.parentNode;for(var r in this.__transition)if(+r!==t)return;e&&e.removeChild(this)}}(this._id))},tween:function(t,e){var r=this._id;if(t+="",arguments.length<2){for(var n,o=Vt(this.node(),r).tween,i=0,a=o.length;i<a;++i)if((n=o[i]).name===t)return n.value;return null}return this.each((null==e?ie:ae)(r,t,e))},delay:function(t){var e=this._id;return arguments.length?this.each(("function"==typeof t?ar:ur)(e,t)):Vt(this.node(),e).delay},duration:function(t){var e=this._id;return arguments.length?this.each(("function"==typeof t?cr:lr)(e,t)):Vt(this.node(),e).duration},ease:function(t){var e=this._id;return arguments.length?this.each(function(t,e){if("function"!=typeof e)throw new Error;return function(){qt(this,t).ease=e}}(e,t)):Vt(this.node(),e).ease},easeVarying:function(t){if("function"!=typeof t)throw new Error;return this.each(function(t,e){return function(){var r=e.apply(this,arguments);if("function"!=typeof r)throw new Error;qt(this,t).ease=r}}(this._id,t))},end:function(){var t,e,r=this,n=r._id,o=r.size();return new Promise((function(i,a){var u={value:a},c={value:function(){0==--o&&i()}};r.each((function(){var r=qt(this,n),o=r.on;o!==t&&((e=(t=o).copy())._.cancel.push(u),e._.interrupt.push(u),e._.end.push(c)),r.on=e})),0===o&&i()}))},[Symbol.iterator]:vr[Symbol.iterator]};var dr={time:null,delay:0,duration:250,ease:function(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}};function br(t,e){for(var r;!(r=t.__transition)||!(r=r[e]);)if(!(t=t.parentNode))throw new Error(`transition ${e} not found`);return r}yt.prototype.interrupt=function(t){return this.each((function(){Zt(this,t)}))},yt.prototype.transition=function(t){var e,r;t instanceof yr?(e=t._id,t=t._name):(e=pr(),(r=dr).time=It(),t=null==t?null:t+"");for(var n=this._groups,o=n.length,i=0;i<o;++i)for(var a,u=n[i],c=u.length,l=0;l<c;++l)(a=u[l])&&Ht(a,t,e,l,u,r||br(a,e));return new yr(n,this._parents,t,e)};const mr=t=>()=>t;function gr(t,{sourceEvent:e,target:r,transform:n,dispatch:o}){Object.defineProperties(this,{type:{value:t,enumerable:!0,configurable:!0},sourceEvent:{value:e,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},transform:{value:n,enumerable:!0,configurable:!0},_:{value:o}})}function wr(t,e,r){this.k=t,this.x=e,this.y=r}wr.prototype={constructor:wr,scale:function(t){return 1===t?this:new wr(this.k*t,this.x,this.y)},translate:function(t,e){return 0===t&0===e?this:new wr(this.k,this.x+this.k*t,this.y+this.k*e)},apply:function(t){return[t[0]*this.k+this.x,t[1]*this.k+this.y]},applyX:function(t){return t*this.k+this.x},applyY:function(t){return t*this.k+this.y},invert:function(t){return[(t[0]-this.x)/this.k,(t[1]-this.y)/this.k]},invertX:function(t){return(t-this.x)/this.k},invertY:function(t){return(t-this.y)/this.k},rescaleX:function(t){return t.copy().domain(t.range().map(this.invertX,this).map(t.invert,t))},rescaleY:function(t){return t.copy().domain(t.range().map(this.invertY,this).map(t.invert,t))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var xr=new wr(1,0,0);function Sr(t){t.stopImmediatePropagation()}function Or(t){t.preventDefault(),t.stopImmediatePropagation()}function _r(t){return!(t.ctrlKey&&"wheel"!==t.type||t.button)}function jr(){var t=this;return t instanceof SVGElement?(t=t.ownerSVGElement||t).hasAttribute("viewBox")?[[(t=t.viewBox.baseVal).x,t.y],[t.x+t.width,t.y+t.height]]:[[0,0],[t.width.baseVal.value,t.height.baseVal.value]]:[[0,0],[t.clientWidth,t.clientHeight]]}function Pr(){return this.__zoom||xr}function kr(t){return-t.deltaY*(1===t.deltaMode?.05:t.deltaMode?1:.002)*(t.ctrlKey?10:1)}function Er(){return navigator.maxTouchPoints||"ontouchstart"in this}function Tr(t,e,r){var n=t.invertX(e[0][0])-r[0][0],o=t.invertX(e[1][0])-r[1][0],i=t.invertY(e[0][1])-r[0][1],a=t.invertY(e[1][1])-r[1][1];return t.translate(o>n?(n+o)/2:Math.min(0,n)||Math.max(0,o),a>i?(i+a)/2:Math.min(0,i)||Math.max(0,a))}function Cr(t){return Cr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Cr(t)}function Ar(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function Mr(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,Lr(n.key),n)}}function Lr(t){var e=function(t){if("object"!=Cr(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=Cr(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Cr(e)?e:e+""}wr.prototype;var zr=function(){function t(e){var r=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:void 0;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.opts=a||{},this.canvas=e,this.canvas.style.cursor="grab",this.w=this.canvas.offsetWidth,this.h=this.canvas.offsetHeight,this.offscreenCanvas=document.createElement("canvas"),this.offscreenCanvas.width=this.w,this.offscreenCanvas.height=this.h;var u=this.canvas.getContext("2d"),c=this.offscreenCanvas.getContext("2d");if(!u)throw"Impossible to create canvas 2D context";if(!c)throw"Impossible to create canvas 2D context";if(this.ctx=u,this.offscreenCtx=c,this.view={x:n,y:o,z:i},this.backgroundColor=a.backgroundColor||"white",this.onZoomStartFun=a.onZoomStartFun,this.onZoomEndFun=a.onZoomEndFun,this.onZoomFun=a.onZoomFun,this.extGeo={xMin:NaN,xMax:NaN,yMin:NaN,yMax:NaN},this.updateExtentGeo(),!a.disableZoom){var l=xr;(function(){var t,e,r,n=_r,o=jr,i=Tr,a=kr,u=Er,c=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],s=250,f=_t,h=wt("start","zoom","end"),y=0,p=10;function v(t){t.property("__zoom",Pr).on("wheel.zoom",S,{passive:!1}).on("mousedown.zoom",O).on("dblclick.zoom",_).filter(u).on("touchstart.zoom",j).on("touchmove.zoom",P).on("touchend.zoom touchcancel.zoom",k).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function d(t,e){return(e=Math.max(c[0],Math.min(c[1],e)))===t.k?t:new wr(e,t.x,t.y)}function b(t,e,r){var n=e[0]-r[0]*t.k,o=e[1]-r[1]*t.k;return n===t.x&&o===t.y?t:new wr(t.k,n,o)}function m(t){return[(+t[0][0]+ +t[1][0])/2,(+t[0][1]+ +t[1][1])/2]}function g(t,e,r,n){t.on("start.zoom",(function(){w(this,arguments).event(n).start()})).on("interrupt.zoom end.zoom",(function(){w(this,arguments).event(n).end()})).tween("zoom",(function(){var t=this,i=arguments,a=w(t,i).event(n),u=o.apply(t,i),c=null==r?m(u):"function"==typeof r?r.apply(t,i):r,l=Math.max(u[1][0]-u[0][0],u[1][1]-u[0][1]),s=t.__zoom,h="function"==typeof e?e.apply(t,i):e,y=f(s.invert(c).concat(l/s.k),h.invert(c).concat(l/h.k));return function(t){if(1===t)t=h;else{var e=y(t),r=l/e[2];t=new wr(r,c[0]-e[0]*r,c[1]-e[1]*r)}a.zoom(null,t)}}))}function w(t,e,r){return!r&&t.__zooming||new x(t,e)}function x(t,e){this.that=t,this.args=e,this.active=0,this.sourceEvent=null,this.extent=o.apply(t,e),this.taps=0}function S(t,...e){if(n.apply(this,arguments)){var r=w(this,e).event(t),o=this.__zoom,u=Math.max(c[0],Math.min(c[1],o.k*Math.pow(2,a.apply(this,arguments)))),s=jt(t);if(r.wheel)r.mouse[0][0]===s[0]&&r.mouse[0][1]===s[1]||(r.mouse[1]=o.invert(r.mouse[0]=s)),clearTimeout(r.wheel);else{if(o.k===u)return;r.mouse=[s,o.invert(s)],Zt(this),r.start()}Or(t),r.wheel=setTimeout((function(){r.wheel=null,r.end()}),150),r.zoom("mouse",i(b(d(o,u),r.mouse[0],r.mouse[1]),r.extent,l))}}function O(t,...e){if(!r&&n.apply(this,arguments)){var o=t.currentTarget,a=w(this,e,!0).event(t),u=pt(t.view).on("mousemove.zoom",(function(t){if(Or(t),!a.moved){var e=t.clientX-s,r=t.clientY-f;a.moved=e*e+r*r>y}a.event(t).zoom("mouse",i(b(a.that.__zoom,a.mouse[0]=jt(t,o),a.mouse[1]),a.extent,l))}),!0).on("mouseup.zoom",(function(t){u.on("mousemove.zoom mouseup.zoom",null),function(t,e){var r=t.document.documentElement,n=pt(t).on("dragstart.drag",null);e&&(n.on("click.drag",St,xt),setTimeout((function(){n.on("click.drag",null)}),0)),"onselectstart"in r?n.on("selectstart.drag",null):(r.style.MozUserSelect=r.__noselect,delete r.__noselect)}(t.view,a.moved),Or(t),a.event(t).end()}),!0),c=jt(t,o),s=t.clientX,f=t.clientY;!function(t){var e=t.document.documentElement,r=pt(t).on("dragstart.drag",St,xt);"onselectstart"in e?r.on("selectstart.drag",St,xt):(e.__noselect=e.style.MozUserSelect,e.style.MozUserSelect="none")}(t.view),Sr(t),a.mouse=[c,this.__zoom.invert(c)],Zt(this),a.start()}}function _(t,...e){if(n.apply(this,arguments)){var r=this.__zoom,a=jt(t.changedTouches?t.changedTouches[0]:t,this),u=r.invert(a),c=r.k*(t.shiftKey?.5:2),f=i(b(d(r,c),a,u),o.apply(this,e),l);Or(t),s>0?pt(this).transition().duration(s).call(g,f,a,t):pt(this).call(v.transform,f,a,t)}}function j(r,...o){if(n.apply(this,arguments)){var i,a,u,c,l=r.touches,s=l.length,f=w(this,o,r.changedTouches.length===s).event(r);for(Sr(r),a=0;a<s;++a)c=[c=jt(u=l[a],this),this.__zoom.invert(c),u.identifier],f.touch0?f.touch1||f.touch0[2]===c[2]||(f.touch1=c,f.taps=0):(f.touch0=c,i=!0,f.taps=1+!!t);t&&(t=clearTimeout(t)),i&&(f.taps<2&&(e=c[0],t=setTimeout((function(){t=null}),500)),Zt(this),f.start())}}function P(t,...e){if(this.__zooming){var r,n,o,a,u=w(this,e).event(t),c=t.changedTouches,s=c.length;for(Or(t),r=0;r<s;++r)o=jt(n=c[r],this),u.touch0&&u.touch0[2]===n.identifier?u.touch0[0]=o:u.touch1&&u.touch1[2]===n.identifier&&(u.touch1[0]=o);if(n=u.that.__zoom,u.touch1){var f=u.touch0[0],h=u.touch0[1],y=u.touch1[0],p=u.touch1[1],v=(v=y[0]-f[0])*v+(v=y[1]-f[1])*v,m=(m=p[0]-h[0])*m+(m=p[1]-h[1])*m;n=d(n,Math.sqrt(v/m)),o=[(f[0]+y[0])/2,(f[1]+y[1])/2],a=[(h[0]+p[0])/2,(h[1]+p[1])/2]}else{if(!u.touch0)return;o=u.touch0[0],a=u.touch0[1]}u.zoom("touch",i(b(n,o,a),u.extent,l))}}function k(t,...n){if(this.__zooming){var o,i,a=w(this,n).event(t),u=t.changedTouches,c=u.length;for(Sr(t),r&&clearTimeout(r),r=setTimeout((function(){r=null}),500),o=0;o<c;++o)i=u[o],a.touch0&&a.touch0[2]===i.identifier?delete a.touch0:a.touch1&&a.touch1[2]===i.identifier&&delete a.touch1;if(a.touch1&&!a.touch0&&(a.touch0=a.touch1,delete a.touch1),a.touch0)a.touch0[1]=this.__zoom.invert(a.touch0[0]);else if(a.end(),2===a.taps&&(i=jt(i,this),Math.hypot(e[0]-i[0],e[1]-i[1])<p)){var l=pt(this).on("dblclick.zoom");l&&l.apply(this,arguments)}}}return v.transform=function(t,e,r,n){var o=t.selection?t.selection():t;o.property("__zoom",Pr),t!==o?g(t,e,r,n):o.interrupt().each((function(){w(this,arguments).event(n).start().zoom(null,"function"==typeof e?e.apply(this,arguments):e).end()}))},v.scaleBy=function(t,e,r,n){v.scaleTo(t,(function(){return this.__zoom.k*("function"==typeof e?e.apply(this,arguments):e)}),r,n)},v.scaleTo=function(t,e,r,n){v.transform(t,(function(){var t=o.apply(this,arguments),n=this.__zoom,a=null==r?m(t):"function"==typeof r?r.apply(this,arguments):r,u=n.invert(a),c="function"==typeof e?e.apply(this,arguments):e;return i(b(d(n,c),a,u),t,l)}),r,n)},v.translateBy=function(t,e,r,n){v.transform(t,(function(){return i(this.__zoom.translate("function"==typeof e?e.apply(this,arguments):e,"function"==typeof r?r.apply(this,arguments):r),o.apply(this,arguments),l)}),null,n)},v.translateTo=function(t,e,r,n,a){v.transform(t,(function(){var t=o.apply(this,arguments),a=this.__zoom,u=null==n?m(t):"function"==typeof n?n.apply(this,arguments):n;return i(xr.translate(u[0],u[1]).scale(a.k).translate("function"==typeof e?-e.apply(this,arguments):-e,"function"==typeof r?-r.apply(this,arguments):-r),t,l)}),n,a)},x.prototype={event:function(t){return t&&(this.sourceEvent=t),this},start:function(){return 1==++this.active&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(t,e){return this.mouse&&"mouse"!==t&&(this.mouse[1]=e.invert(this.mouse[0])),this.touch0&&"touch"!==t&&(this.touch0[1]=e.invert(this.touch0[0])),this.touch1&&"touch"!==t&&(this.touch1[1]=e.invert(this.touch1[0])),this.that.__zoom=e,this.emit("zoom"),this},end:function(){return 0==--this.active&&(delete this.that.__zooming,this.emit("end")),this},emit:function(t){var e=pt(this.that).datum();h.call(t,this.that,new gr(t,{sourceEvent:this.sourceEvent,target:v,type:t,transform:this.that.__zoom,dispatch:h}),e)}},v.wheelDelta=function(t){return arguments.length?(a="function"==typeof t?t:mr(+t),v):a},v.filter=function(t){return arguments.length?(n="function"==typeof t?t:mr(!!t),v):n},v.touchable=function(t){return arguments.length?(u="function"==typeof t?t:mr(!!t),v):u},v.extent=function(t){return arguments.length?(o="function"==typeof t?t:mr([[+t[0][0],+t[0][1]],[+t[1][0],+t[1][1]]]),v):o},v.scaleExtent=function(t){return arguments.length?(c[0]=+t[0],c[1]=+t[1],v):[c[0],c[1]]},v.translateExtent=function(t){return arguments.length?(l[0][0]=+t[0][0],l[1][0]=+t[1][0],l[0][1]=+t[0][1],l[1][1]=+t[1][1],v):[[l[0][0],l[0][1]],[l[1][0],l[1][1]]]},v.constrain=function(t){return arguments.length?(i=t,v):i},v.duration=function(t){return arguments.length?(s=+t,v):s},v.interpolate=function(t){return arguments.length?(f=t,v):f},v.on=function(){var t=h.on.apply(h,arguments);return t===h?v:t},v.clickDistance=function(t){return arguments.length?(y=(t=+t)*t,v):Math.sqrt(y)},v.tapDistance=function(t){return arguments.length?(p=+t,v):p},v})().wheelDelta((function(t){return-t.deltaY*(1===t.deltaMode?.07:t.deltaMode?1:.004)})).on("zoom",(function(t){r._isZooming=!0;var e=t.transform,n=l.k/e.k;if(1==n){var o=l.x-e.x,i=l.y-e.y;r.applyPan(o*r.view.z,-i*r.view.z)}else s(t,n);l=e,r.onZoomFun&&r.onZoomFun(t)})).on("start",(function(t){var e;try{r.canvas.style.cursor="grabbing"}catch(t){}r._isZooming=!0,r.canvasSave.c=document.createElement("canvas"),r.canvasSave.c.setAttribute("width",""+r.w),r.canvasSave.c.setAttribute("height",""+r.h),null===(e=r.canvasSave.c.getContext("2d"))||void 0===e||e.drawImage(r.canvas,0,0),r.canvasSave.dx=0,r.canvasSave.dy=0,r.canvasSave.f=1,r.onZoomStartFun&&r.onZoomStartFun(t)})).on("end",(function(t){try{r.canvas.style.cursor="grab"}catch(t){}r._isZooming=!1,r.redraw(),r.canvasSave={c:null,dx:0,dy:0,f:1},r.onZoomEndFun&&r.onZoomEndFun(t)}))(pt(this.canvas));var s=function(t,e){r.cancelCurrentRequests();var n=t.sourceEvent;if(n instanceof WheelEvent)r.applyZoom(e,r.pixToGeoX(n.offsetX),r.pixToGeoY(n.offsetY));else if(n instanceof TouchEvent){var o,i=0,a=0,u=function(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(t){if("string"==typeof t)return Ar(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Ar(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(u)throw i}}}}(n.targetTouches);try{for(u.s();!(o=u.n()).done;){var c=o.value;i+=c.clientX,a+=c.clientY}}catch(t){u.e(t)}finally{u.f()}i/=n.targetTouches.length,a/=n.targetTouches.length,r.applyZoom(e,r.pixToGeoX(i),r.pixToGeoY(a))}}}this.xMin=a.centerExtent?a.centerExtent[0]:void 0,this.yMin=a.centerExtent?a.centerExtent[1]:void 0,this.xMax=a.centerExtent?a.centerExtent[2]:void 0,this.yMax=a.centerExtent?a.centerExtent[3]:void 0,this.zoomExtent=a.zoomExtent||[0,1/0],this.canvasSave={c:null,dx:0,dy:0,f:1}}return e=t,r=[{key:"applyPan",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;if(null!=this.xMin&&this.view.x+t<this.xMin&&(t=this.xMin-this.view.x),null!=this.yMin&&this.view.y+e<this.yMin&&(e=this.yMin-this.view.y),null!=this.xMax&&this.view.x+t>this.xMax&&(t=this.xMax-this.view.x),null!=this.yMax&&this.view.y+e>this.yMax&&(e=this.yMax-this.view.y),this.view.x+=t,this.view.y+=e,this.updateExtentGeo(),this.canvasSave.c){var r=1/this.view.z;this.canvasSave.dx-=t*r,this.canvasSave.dy+=e*r,this.clear(this.backgroundColor),this.offscreenCtx.drawImage(this.canvasSave.c,this.canvasSave.dx,this.canvasSave.dy),this.ctx.drawImage(this.offscreenCtx.canvas,0,0)}else console.log("no canvas save")}},{key:"applyZoom",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.view.x,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.view.y;if(!(this.zoomExtent[0]==this.view.z&&t<=1||this.zoomExtent[1]==this.view.z&&t>=1)){var n=t*this.view.z;n<this.zoomExtent[0]&&(t=this.zoomExtent[0]/this.view.z),n>this.zoomExtent[1]&&(t=this.zoomExtent[1]/this.view.z),this.view.z*=t;var o=(e-this.view.x)*(1-t),i=(r-this.view.y)*(1-t);null!=this.xMin&&this.view.x+o<this.xMin&&(o=this.xMin-this.view.x),null!=this.yMin&&this.view.y+i<this.yMin&&(i=this.yMin-this.view.y),null!=this.xMax&&this.view.x+o>this.xMax&&(o=this.xMax-this.view.x),null!=this.yMax&&this.view.y+i>this.yMax&&(i=this.yMax-this.view.y),this.view.x+=o,this.view.y+=i,this.updateExtentGeo(),this._drawZoomFrame(t,e,r)}}},{key:"_drawZoomFrame",value:function(t,e,r){this.canvasSave.c&&(this.clear(this.backgroundColor),this.canvasSave.f/=t,this.canvasSave.dx=this.geoToPixX(e)*(1-this.canvasSave.f),this.canvasSave.dy=this.geoToPixY(r)*(1-this.canvasSave.f),this.clear(this.backgroundColor),this.offscreenCtx.drawImage(this.canvasSave.c,this.canvasSave.dx,this.canvasSave.dy,this.canvasSave.f*this.canvasSave.c.width,this.canvasSave.f*this.canvasSave.c.height),this.ctx.drawImage(this.offscreenCanvas,0,0,this.canvas.width,this.canvas.height))}},{key:"clear",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"white";this.opts.transparentBackground?(this.ctx.clearRect(0,0,this.w,this.h),this.offscreenCtx.clearRect(0,0,this.w,this.h)):(this.ctx&&(this.ctx.fillStyle=t),this.offscreenCtx&&(this.offscreenCtx.fillStyle=t),this.ctx.fillRect(0,0,this.w,this.h),this.offscreenCtx.fillRect(0,0,this.w,this.h))}},{key:"getView",value:function(){return this.view}},{key:"setCenterExtent",value:function(t){this.xMin=t[0],this.yMin=t[1],this.xMax=t[2],this.yMax=t[3]}},{key:"getCenterExtent",value:function(){return[this.xMin,this.yMin,this.xMax,this.yMax]}},{key:"setZoomExtent",value:function(t){this.zoomExtent=t}},{key:"getZoomExtent",value:function(){return this.zoomExtent}},{key:"initCanvasTransform",value:function(){this.ctx.setTransform(1,0,0,1,0,0),this.offscreenCtx.setTransform(1,0,0,1,0,0)}},{key:"setCanvasTransform",value:function(){var t=1/this.view.z,e=-this.view.x/this.view.z+.5*this.w,r=this.view.y/this.view.z+.5*this.h;this.ctx.setTransform(t,0,0,-t,e,r),this.offscreenCtx.setTransform(t,0,0,-t,e,r)}},{key:"getWebGLTransform",value:function(){var t=2/(this.w*this.view.z),e=2/(this.h*this.view.z);return[t,0,0,0,e,0,-t*this.view.x,-e*this.view.y,1]}},{key:"redraw",value:function(){throw new Error("Method redraw not implemented.")}},{key:"cancelCurrentRequests",value:function(){throw new Error("Method cancelCurrentRequests not implemented.")}},{key:"updateExtentGeo",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:20;return this.extGeo={xMin:this.pixToGeoX(-t),xMax:this.pixToGeoX(this.w+t),yMin:this.pixToGeoY(this.h+t),yMax:this.pixToGeoY(-t)},this.extGeo}},{key:"toDraw",value:function(t){return!(t.x<this.extGeo.xMin||t.x>this.extGeo.xMax||t.y<this.extGeo.yMin||t.y>this.extGeo.yMax)}},{key:"geoToPixX",value:function(t){return(t-this.view.x)/this.view.z+.5*this.w}},{key:"geoToPixY",value:function(t){return-(t-this.view.y)/this.view.z+.5*this.h}},{key:"pixToGeoX",value:function(t){return(t-.5*this.w)*this.view.z+this.view.x}},{key:"pixToGeoY",value:function(t){return-(t-.5*this.h)*this.view.z+this.view.y}},{key:"setViewFromURL",value:function(){var e=t.getParameterByName("x"),r=t.getParameterByName("y"),n=t.getParameterByName("z");null==e||null==e||isNaN(+e)||(this.view.x=+e),null==r||null==r||isNaN(+r)||(this.view.y=+r),null==n||null==n||isNaN(+n)||(this.view.z=+n)}}],n=[{key:"getParameterByName",value:function(t){t=t.replace(/[\[]/,"\\[").replace(/[\]]/,"\\]");var e=new RegExp("[\\?&]"+t+"=([^&#]*)").exec(location.search);return e?decodeURIComponent(e[1].replace(/\+/g," ")):null}}],r&&Mr(e.prototype,r),n&&Mr(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,r,n}();function Rr(t){return Rr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Rr(t)}function Ir(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,Fr(n.key),n)}}function Fr(t){var e=function(t){if("object"!=Rr(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=Rr(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Rr(e)?e:e+""}var Br=function(){return t=function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),e=e||{},this.maxWidth=e.maxWidth||"20em",this.fontSize=e.fontSize||"1.2em",this.background=e.background||"white",this.padding=e.padding||"5px",this.border=e.border||"0px",this["border-radius"]=e["border-radius"]||"0px",this["box-shadow"]=e["box-shadow"]||"5px 5px 5px grey",this["font-family"]=e["font-family"]||"Helvetica, Arial, sans-serif",this.transitionDuration=e.transitionDuration||100,this.xOffset=e.xOffset||30,this.yOffset=e.yOffset||20,this.yMouseOffset=e.yMouseOffset||0,this.xMouseOffset=e.xMouseOffset||0,this.parentElement=e.parentElement||document.body,this.tooltipElement=e.tooltipElement||null,this.tooltip=e.tooltipElement?pt(e.tooltipElement):pt(this.parentElement).append("div").attr("id","gridviz-tooltip").attr("class","gridviz-tooltip"),this.tooltip.style("max-width",this.maxWidth),this.tooltip.style("overflow","hidden"),this.tooltip.style("font-size",this.fontSize),this.tooltip.style("background",this.background),this.tooltip.style("padding",this.padding),this.tooltip.style("border",this.border),this.tooltip.style("border-radius",this["border-radius"]),this.tooltip.style("box-shadow",this["box-shadow"]),this.tooltip.style("font-family",this["font-family"]),this.tooltip.style("position","absolute"),this.tooltip.style("pointer-events","none"),this.tooltip.style("opacity","0"),this.tooltip.style("text-wrap","nowrap"),this.tooltip.style("z-index",99999999),this.tooltip.style("left","0"),this.tooltip.style("top","0"),this.tooltip.attr("role","tooltip").attr("aria-live","polite")},e=[{key:"show",value:function(){this.tooltip.transition().duration(this.transitionDuration).style("opacity",1)}},{key:"hide",value:function(){this.tooltip.transition().duration(this.transitionDuration).style("opacity",0)}},{key:"html",value:function(t){this.tooltip.html(t)}},{key:"setPosition",value:function(t){var e=this.parentElement.getBoundingClientRect(),r=t.clientX-e.left+this.xOffset,n=t.clientY-e.top-this.yOffset;this.tooltip.style("left",r+"px").style("top",n+"px"),this.ensureTooltipInsideContainer(t,e,this.tooltip.node())}},{key:"ensureTooltipInsideContainer",value:function(t,e,r){var n=r,o=e.width,i=e.height;if(n.offsetLeft+n.clientWidth>o){var a=t.clientX-n.clientWidth-this.xOffset;n.style.left=a+"px"}n.offsetTop+n.clientHeight>i&&(n.style.top=i-n.clientHeight+"px"),n.offsetTop<0&&(n.style.top="0px"),n.offsetLeft<0&&(n.style.left="0px")}},{key:"style",value:function(t,e){return 1==arguments.length?this.tooltip.style(t):(this.tooltip.style(t,e),this)}},{key:"attr",value:function(t,e){return 1==arguments.length?this.tooltip.attr(t):(this.tooltip.attr(t,e),this)}}],e&&Ir(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,e}();function Nr(t){return Nr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Nr(t)}function Dr(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,Gr(n.key),n)}}function Gr(t){var e=function(t){if("object"!=Nr(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=Nr(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Nr(e)?e:e+""}var Ur=function(){return t=function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.map=e.map,this.parentNode=e.parentNode||e.map.container,e.id&&(this.div=pt("#"+e.id)),this.div&&!this.div.empty()||(this.div=pt(document.createElement("div")),e.id&&this.div.attr("id",e.id)),e.title&&this.div.attr("title",e.title),e.class&&this.div.attr("class",e.class),e.onClickFunction&&this.div.on("click",e.onClickFunction),this.style("box-shadow","0 7px 8px rgba(0,47,103,.08), 0 0 22px rgba(0,47,103,.04), 0 12px 17px rgba(0,47,103,.04), 0 -4px 4px rgba(0,47,103,.04)"),this.style("background-color","#ffffff"),this.style("position","absolute"),this.style("cursor","pointer"),this.style("display","flex"),this.style("justify-content","center"),this.style("align-items","center"),this.style("width","35px"),this.style("height","30px"),this.parentNode.appendChild(this.div.node())},(e=[{key:"style",value:function(t,e){return this.div.style(t,e),this}}])&&Dr(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,e}();function Wr(t){return Wr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Wr(t)}function $r(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,Yr(n.key),n)}}function Yr(t){var e=function(t){if("object"!=Wr(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=Wr(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Wr(e)?e:e+""}function Hr(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(Hr=function(){return!!t})()}function Xr(t){return Xr=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Xr(t)}function qr(t,e){return qr=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},qr(t,e)}var Vr=function(t){function e(t){var r;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),(r=function(t,e,r){return e=Xr(e),function(t,e){if(e&&("object"==Wr(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Hr()?Reflect.construct(e,r||[],Xr(t).constructor):e.apply(t,r))}(this,e,[t])).onZoom=t.onZoom,r.delta=t.delta||.2,r.zoomInBtn=document.createElement("a"),r.zoomInBtn.id="zoom-in",r.zoomInBtn.className="gridviz-zoom-button",r.zoomInBtn.title="Zoom in",r.zoomInBtn.textContent="+",r.zoomInBtn.addEventListener("click",(function(t){r.zoomIn(t)})),r.zoomInBtn.addEventListener("mouseover",(function(){r.zoomInBtn.style.backgroundColor="lightgrey"})),r.zoomInBtn.addEventListener("mouseout",(function(){r.zoomInBtn.style.backgroundColor="#ffffff"})),r.zoomOutBtn=document.createElement("a"),r.zoomOutBtn.id="zoom-out",r.zoomOutBtn.className="gridviz-zoom-button",r.zoomOutBtn.title="Zoom out",r.zoomOutBtn.textContent="-",r.zoomOutBtn.addEventListener("click",(function(t){r.zoomOut(t)})),r.zoomOutBtn.addEventListener("mouseover",(function(){r.zoomOutBtn.style.backgroundColor="lightgrey"})),r.zoomOutBtn.addEventListener("mouseout",(function(){r.zoomOutBtn.style.backgroundColor="#ffffff"})),[r.zoomInBtn,r.zoomOutBtn].forEach((function(t,e){t.style.alignItems="center",t.style.justifyContent="center",t.style.display="flex",t.style.border="none",t.style.color="black",t.style.textAlign="center",t.style.textDecoration="none",t.style.padding="4px",t.style.fontSize="24px",t.style.fontWeight="bold",t.style.userSelect="none",t.style.backgroundColor="#ffffff",0===e&&(t.style.borderBottom="1px solid grey")})),r.style("height","unset"),r.style("display","unset"),t.x?r.style("left",t.x+"px"):r.style("right","10px"),t.y?r.style("top",t.y+"px"):r.style("top","10px"),r.div.node().appendChild(r.zoomInBtn),r.div.node().appendChild(r.zoomOutBtn),r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&qr(t,e)}(e,t),r=e,n=[{key:"zoomIn",value:function(t){this.map.setZoom(this.map.getZoom()*(1-this.delta)).redraw(),this.onZoom&&this.onZoom(t),this.map.geoCanvas.onZoomFun&&this.map.geoCanvas.onZoomFun(t)}},{key:"zoomOut",value:function(t){this.map.setZoom(this.map.getZoom()*(1+this.delta)).redraw(),this.onZoom&&this.onZoom(t),this.map.geoCanvas.onZoomFun&&this.map.geoCanvas.onZoomFun(t)}}],n&&$r(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(Ur);function Zr(t){return Zr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Zr(t)}function Jr(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,en(n.key),n)}}function Kr(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(Kr=function(){return!!t})()}function Qr(t){return Qr=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Qr(t)}function tn(t,e){return tn=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},tn(t,e)}function en(t){var e=function(t){if("object"!=Zr(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=Zr(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Zr(e)?e:e+""}var rn=function(t){function e(t){var r,n,o,i;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),r=function(t,e,r){return e=Qr(e),function(t,e){if(e&&("object"==Zr(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Kr()?Reflect.construct(e,r||[],Qr(t).constructor):e.apply(t,r))}(this,e,[t]),n=r,i=!1,(o=en(o="isFullscreen"))in n?Object.defineProperty(n,o,{value:i,enumerable:!0,configurable:!0,writable:!0}):n[o]=i,r.div.node().innerHTML='\n <svg\n style="height: 1.2rem; width: 1.2rem; fill:black; margin:0;"\n focusable="false"\n aria-hidden="true"\n >\n <svg fill="#000000" viewBox="0 0 96 96" xmlns="http://www.w3.org/2000/svg">\n <title/>\n <g>\n <path d="M30,0H6A5.9966,5.9966,0,0,0,0,6V30a6,6,0,0,0,12,0V12H30A6,6,0,0,0,30,0Z"/>\n <path d="M90,0H66a6,6,0,0,0,0,12H84V30a6,6,0,0,0,12,0V6A5.9966,5.9966,0,0,0,90,0Z"/>\n <path d="M30,84H12V66A6,6,0,0,0,0,66V90a5.9966,5.9966,0,0,0,6,6H30a6,6,0,0,0,0-12Z"/>\n <path d="M90,60a5.9966,5.9966,0,0,0-6,6V84H66a6,6,0,0,0,0,12H90a5.9966,5.9966,0,0,0,6-6V66A5.9966,5.9966,0,0,0,90,60Z"/>\n </g>\n </svg>\n </svg>\n ',r.defaultHeight=r.map.h,r.defaultWidth=r.map.w,r.div.on("click",(function(t){r.onClickFunction(t)})),r.div.on("mouseover",(function(t){r.style("background-color","lightgrey")})),r.div.on("mouseout",(function(t){r.style("background-color","#ffffff")})),t.x?r.style("left",t.x+"px"):r.style("right","10px"),t.y?r.style("top",t.y+"px"):r.style("top","90px"),r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&tn(t,e)}(e,t),r=e,(n=[{key:"onClickFunction",value:function(t){this.isFullscreen?(this.closeFullscreen(this.map.container),this.map.h=this.defaultHeight,this.map.w=this.defaultWidth,this.map.geoCanvas.h=this.defaultHeight,this.map.geoCanvas.w=this.defaultWidth,this.map.geoCanvas.canvas.setAttribute("width",""+this.defaultWidth),this.map.geoCanvas.canvas.setAttribute("height",""+this.defaultHeight),this.map.redraw(),this.isFullscreen=!1):(this.openFullscreen(this.map.container),this.map.h=window.screen.height,this.map.w=window.screen.width,this.isFullscreen=!0)}},{key:"openFullscreen",value:function(t){t.requestFullscreen?t.requestFullscreen():t.webkitRequestFullscreen?t.webkitRequestFullscreen():t.msRequestFullscreen&&t.msRequestFullscreen()}},{key:"closeFullscreen",value:function(){document.exitFullscreen?document.exitFullscreen():document.webkitExitFullscreen?document.webkitExitFullscreen():document.msExitFullscreen&&document.msExitFullscreen()}}])&&Jr(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(Ur);function nn(t){return nn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},nn(t)}function on(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(t){if("string"==typeof t)return an(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?an(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(u)throw i}}}}function an(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function un(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,cn(n.key),n)}}function cn(t){var e=function(t){if("object"!=nn(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=nn(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==nn(e)?e:e+""}var ln=function(){return t=function t(e,r){var n=this;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),r=r||{},this.layers=r.layers||[],this.container=e||document.getElementById("gridviz"),this.container?(this.container.style.position="relative",this.w=r.w||this.container.offsetWidth,this.h=r.h||this.container.offsetHeight,this._canvas=r.canvas||this.initialiseCanvas(),this.geoCanvas=new zr(this._canvas,r.x,r.y,r.z,r),this.geoCanvas.redraw=function(){n.redraw()},this.geoCanvas.cancelCurrentRequests=function(){var t,e=on(n.layers);try{for(e.s();!(t=e.n()).done;){var r,o,i,a=t.value;if(null!==(r=a.dataset)&&void 0!==r&&r.datasets){var u,c,l=on(null===(u=a.dataset)||void 0===u?void 0:u.datasets);try{for(l.s();!(c=l.n()).done;){var s=c.value;null!=s&&s.cancelCurrentRequests&&s.cancelCurrentRequests()}}catch(t){l.e(t)}finally{l.f()}}null!==(o=a.dataset)&&void 0!==o&&o.cancelCurrentRequests&&(null===(i=a.dataset)||void 0===i||i.cancelCurrentRequests())}}catch(t){e.e(t)}finally{e.f()}},this.legend=r.legendContainer?pt(r.legendContainer):null,this._legendProvidedByUser=!!r.legendContainer,this.legend||this.initialiseLegend(),r.tooltip||(r.tooltip={}),r.tooltip.parentElement||(r.tooltip.parentElement=this.container),this.tooltip=new Br(r.tooltip),this.mouseOverHandler=function(t){return n.focusCell(t)},this.mouseMoveHandler=function(t){return n.focusCell(t)},this.mouseOutHandler=function(t){return n.tooltip.hide()},this.geoCanvas.canvas.addEventListener("mouseover",this.mouseOverHandler),this.geoCanvas.canvas.addEventListener("mousemove",this.mouseMoveHandler),this.geoCanvas.canvas.addEventListener("mouseout",this.mouseOutHandler),this.defineResizeObserver(),this.geoCanvas.onZoomStartFun=function(t){r.onZoomStartFun&&r.onZoomStartFun(t),n.tooltip.hide()},this.canvasSave=null,this.selectionRectangleColor=r.selectionRectangleColor||"#FF6347",this.selectionRectangleWidthPix=r.selectionRectangleWidthPix||function(){return 4},this.transparentBackground=r.transparentBackground,this.defaultGlobalCompositeOperation=r.defaultGlobalCompositeOperation||this.geoCanvas.ctx.globalCompositeOperation):console.error("Cannot find gridviz container element.")},e=[{key:"initialiseCanvas",value:function(){var t=document.createElement("canvas");return t.setAttribute("width",""+this.w),t.setAttribute("height",""+this.h),this.container.appendChild(t),t}},{key:"initialiseLegend",value:function(){this.legend=pt(this.container).append("div").attr("id","gridviz-legend").style("position","absolute").style("width","auto").style("height","auto").style("background","#FFFFFF").style("border","0px").style("box-shadow","3px 3px 3px grey, -3px -3px 3px #ddd").style("font-family","Helvetica, Arial, sans-serif").style("bottom","15px").style("right","15px")}},{key:"layers_",value:function(t){return 0===arguments.length?this.layers:(1===arguments.length?Array.isArray(t)?this.layers=t:this.layers=[t]:this.layers=arguments,this)}},{key:"redraw",value:function(){this.legend&&this.legend.selectAll("*").remove(),this.geoCanvas.initCanvasTransform(),this.geoCanvas.clear(this.geoCanvas.backgroundColor);var t=this.geoCanvas.view.z;this.updateExtentGeo();var e,r=on(this.layers);try{for(r.s();!(e=r.n()).done;){var n=e.value;n.visible&&!n.visible(t)||(this.geoCanvas.offscreenCtx.globalAlpha=n.alpha?n.alpha(t):1,n.blendOperation&&(this.geoCanvas.offscreenCtx.globalCompositeOperation=n.blendOperation(t)),this.geoCanvas.setCanvasTransform(),n.draw(this.geoCanvas,this.legend),n.filterColor&&n.drawFilter(this.geoCanvas),this.geoCanvas.offscreenCtx.globalAlpha=1,this.geoCanvas.offscreenCtx.globalCompositeOperation=this.defaultGlobalCompositeOperation)}}catch(t){r.e(t)}finally{r.f()}return this.geoCanvas.initCanvasTransform(),this.geoCanvas.ctx.drawImage(this.geoCanvas.offscreenCanvas,0,0),this.canvasSave=null,this}},{key:"updateExtentGeo",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:20;return this.geoCanvas.updateExtentGeo(t)}},{key:"focusCell",value:function(t){if(!this.geoCanvas._isZooming){var e={x:this.geoCanvas.pixToGeoX(t.offsetX+this.tooltip.xMouseOffset),y:this.geoCanvas.pixToGeoY(t.offsetY+this.tooltip.yMouseOffset)},r=this.getCellFocusInfo(e);if(this.transparentBackground)if(this.geoCanvas.initCanvasTransform(),this.geoCanvas.ctx.clearRect(0,0,this.w,this.h),this.geoCanvas.ctx.drawImage(this.geoCanvas.offscreenCanvas,0,0),r){this.tooltip.html(r.html),this.tooltip.setPosition(t),this.tooltip.show();var n=this.selectionRectangleWidthPix?this.selectionRectangleWidthPix(r.resolution,this.geoCanvas.view.z):4,o=this.geoCanvas.ctx;o.save(),o.strokeStyle=this.selectionRectangleColor,o.lineWidth=n,o.beginPath();var i=this.geoCanvas.geoToPixX(r.cell.x),a=this.geoCanvas.geoToPixY(r.cell.y),u=r.resolution/this.geoCanvas.view.z,c=-u;o.rect(i-n/2,a+n/2,u+n,c-n),o.stroke(),o.restore()}else this.tooltip.hide();else if(r){var l;this.geoCanvas.canvas.style.cursor="pointer",this.tooltip.html(r.html),this.tooltip.setPosition(t),this.tooltip.show(),this.canvasSave?this.geoCanvas.offscreenCtx.drawImage(this.canvasSave,0,0):(this.canvasSave=document.createElement("canvas"),this.canvasSave.setAttribute("width",""+this.w),this.canvasSave.setAttribute("height",""+this.h),null===(l=this.canvasSave.getContext("2d"))||void 0===l||l.drawImage(this.geoCanvas.offscreenCanvas,0,0));var s=this.selectionRectangleWidthPix?this.selectionRectangleWidthPix(r.resolution,this.geoCanvas.view.z):4;this.geoCanvas.initCanvasTransform();var f=this.geoCanvas.offscreenCtx;f.strokeStyle=this.selectionRectangleColor,f.lineWidth=s,f.beginPath(),f.rect(this.geoCanvas.geoToPixX(r.cell.x)-s/2,this.geoCanvas.geoToPixY(r.cell.y)+s/2,r.resolution/this.geoCanvas.view.z+s,-r.resolution/this.geoCanvas.view.z-s),f.stroke(),this.geoCanvas.ctx.drawImage(this.geoCanvas.offscreenCanvas,0,0)}else this.geoCanvas.canvas.style.cursor="default",this.tooltip.hide(),this.canvasSave&&this.geoCanvas.ctx.drawImage(this.canvasSave,0,0)}}},{key:"getCellFocusInfo",value:function(t){for(var e=this.geoCanvas.view.z,r=this.layers.length-1;r>=0;r--){var n=this.layers[r];if((!n.visible||n.visible(e))&&"none"!==n.cellInfoHTML&&n.cellInfoHTML&&n.getDataset){var o=n.getDataset(e);if(o){var i=o.getCellFromPosition(t,o.getViewCache());if(!i)return;if(o.mixedResolution){var a=+o.mixedResolution(i),u=n.cellInfoHTML(i,a);if(!u)return;return{cell:i,html:u,resolution:a}}var c=n.cellInfoHTML(i,o.getResolution());if(!c)return;return{cell:i,html:c,resolution:o.getResolution()}}}}}},{key:"setView",value:function(t,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0;return this.geoCanvas.view.x=t,this.geoCanvas.view.y=e,null!=r&&(this.geoCanvas.view.z=r),this}},{key:"getView",value:function(){return this.geoCanvas.view}},{key:"getZoom",value:function(){return this.geoCanvas.view.z}},{key:"setZoom",value:function(t){return this.geoCanvas.view.z=t,this}},{key:"getCenterExtent",value:function(){return this.geoCanvas.getCenterExtent()}},{key:"setCenterExtent",value:function(t){return this.geoCanvas.setCenterExtent(t),this}},{key:"getZoomExtent",value:function(){return this.geoCanvas.getZoomExtent()}},{key:"setZoomExtent",value:function(t){return this.geoCanvas.setZoomExtent(t),this}},{key:"getBackgroundColor",value:function(){return this.geoCanvas.backgroundColor}},{key:"setBackgroundColor",value:function(t){return this.geoCanvas.backgroundColor=t,this}},{key:"addZoomButtons",value:function(t){return this.zoomButtons=new Vr({map:this,id:(null==t?void 0:t.id)||"gridviz-zoom-buttons-"+this.container.id,class:null==t?void 0:t.class,x:null==t?void 0:t.x,y:null==t?void 0:t.y,onZoom:null==t?void 0:t.onZoom,delta:(null==t?void 0:t.delta)||.2}),this}},{key:"addFullscreenButton",value:function(t){return this.fullscreenButton=new rn({map:this,id:(null==t?void 0:t.id)||"gridviz-fullscreen-button",class:null==t?void 0:t.class,x:null==t?void 0:t.x,y:null==t?void 0:t.y}),this}},{key:"setViewFromURL",value:function(){return this.geoCanvas.setViewFromURL(),this}},{key:"defineResizeObserver",value:function(){var t=this,e=!1;new ResizeObserver((function(r){if(Array.isArray(r)&&r.length){var n=t.container;n.clientWidth>0&&n.clientHeight>0&&(e||(e=!0,window.requestAnimationFrame((function(){e=!1,t.h===n.clientHeight&&t.w===n.clientWidth||(t.h=n.clientHeight,t.w=n.clientWidth,t.geoCanvas.h=t.h,t.geoCanvas.w=t.w,t.geoCanvas.canvas.setAttribute("width",String(t.w)),t.geoCanvas.canvas.setAttribute("height",String(t.h)),t.geoCanvas.offscreenCanvas.setAttribute("width",String(t.w)),t.geoCanvas.offscreenCanvas.setAttribute("height",String(t.h)),t.redraw())}))))}})).observe(this.container)}},{key:"destroy",value:function(){var t,e;this.layers=[],this.bgLayers=[],this.container.removeEventListener("mouseover",this.mouseOverHandler),this.container.removeEventListener("mousemove",this.mouseMoveHandler),this.container.removeEventListener("mouseout",this.mouseOutHandler),this.geoCanvas.canvas.remove(),this._legendProvidedByUser||null===(e=this.legend)||void 0===e||e.remove(),null===(t=this.tooltip.tooltip)||void 0===t||t.remove()}}],e&&un(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,e}();function sn(t){return sn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},sn(t)}function fn(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,hn(n.key),n)}}function hn(t){var e=function(t){if("object"!=sn(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=sn(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==sn(e)?e:e+""}var yn=function(){return t=function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),e=e||{},this.visible=e.visible,this.alpha=e.alpha,this.blendOperation=e.blendOperation||function(t){return"source-over"},this.filterColor=e.filterColor,this.filterBlendOperation=e.filterBlendOperation},(e=[{key:"drawFilter",value:function(t){if(this.filterColor){var e=this.filterColor(t.view.z);if(e&&"none"!=e){t.offscreenCtx.fillStyle=e;var r=void 0,n=void 0;this.filterBlendOperation&&(r=t.offscreenCtx.globalCompositeOperation,n=this.filterBlendOperation(t.view.z)),n&&"none"!=n&&(t.offscreenCtx.globalCompositeOperation=n),t.offscreenCtx.fillRect(0,0,t.w,t.h),r&&(t.offscreenCtx.globalCompositeOperation=r)}}}}])&&fn(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,e}();function pn(t){return pn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},pn(t)}function vn(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(t){if("string"==typeof t)return dn(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?dn(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(u)throw i}}}}function dn(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function bn(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,mn(n.key),n)}}function mn(t){var e=function(t){if("object"!=pn(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=pn(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==pn(e)?e:e+""}function gn(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(gn=function(){return!!t})()}function wn(t){return wn=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},wn(t)}function xn(t,e){return xn=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},xn(t,e)}var Sn=function(t){function e(t){var r;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),r=function(t,e,r){return e=wn(e),function(t,e){if(e&&("object"==pn(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,gn()?Reflect.construct(e,r||[],wn(t).constructor):e.apply(t,r))}(this,e,[t]),t=t||{},r.viewScale=t.viewScale,r.filter=t.filter||void 0,r.offset=t.offset||function(t,e,r){return{dx:0,dy:0}},r.drawFun=t.drawFun,r.legends=[],r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&xn(t,e)}(e,t),r=e,o=[{key:"updateLegendsRecursive",value:function(t,e){if(Array.isArray(t)){var r,n=vn(t);try{for(n.s();!(r=n.n()).done;){var o=r.value;this.updateLegendsRecursive(o,e)}}catch(t){n.e(t)}finally{n.f()}}else t.update(e)}}],(n=[{key:"draw",value:function(t,e,r){if(!this.drawFun)throw new Error("Method draw not implemented.");this.drawFun(t,e,r)}},{key:"getOffset",value:function(){return this.offset}},{key:"setOffset",value:function(t){return this.offset=t,this}},{key:"updateLegends",value:function(t){return e.updateLegendsRecursive(this.legends,t),this}},{key:"addLegends",value:function(t){var e,r=vn(t);try{for(r.s();!(e=r.n()).done;){var n=e.value;this.legends.push(n)}}catch(t){r.e(t)}finally{r.f()}return this}}])&&bn(r.prototype,n),o&&bn(r,o),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n,o}(yn);function On(t){return On="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},On(t)}function _n(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,jn(n.key),n)}}function jn(t){var e=function(t){if("object"!=On(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=On(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==On(e)?e:e+""}function Pn(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(Pn=function(){return!!t})()}function kn(t){return kn=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},kn(t)}function En(t,e){return En=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},En(t,e)}var Tn=function(t){function e(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),function(t,e,r){return e=kn(e),function(t,e){if(e&&("object"==On(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Pn()?Reflect.construct(e,r||[],kn(t).constructor):e.apply(t,r))}(this,e,arguments)}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&En(t,e)}(e,t),r=e,(n=[{key:"draw",value:function(t){throw new Error("Method draw not implemented.")}}])&&_n(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(yn);function Cn(t){return Cn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Cn(t)}function An(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(t){if("string"==typeof t)return Mn(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Mn(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(u)throw i}}}}function Mn(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function Ln(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,zn(n.key),n)}}function zn(t){var e=function(t){if("object"!=Cn(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=Cn(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Cn(e)?e:e+""}var Rn=function(){return t=function t(e,r,n){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.map=e,this.url=r,this.resolution=n,this.mixedResolution=o.mixedResolution,this.preprocess=o.preprocess||void 0,this.cellsViewCache=[]},(e=[{key:"getData",value:function(){throw new Error("Method getData not implemented.")}},{key:"updateViewCache",value:function(t){throw new Error("Method updateViewCache not implemented.")}},{key:"getCellFromPosition",value:function(t,e){if(this.mixedResolution){var r,n=An(e);try{for(n.s();!(r=n.n()).done;){var o=r.value,i=+this.mixedResolution(o);if(!(t.x<o.x||o.x+i<t.x||t.y<o.y||o.y+i<t.y))return o}}catch(t){n.e(t)}finally{n.f()}}else{var a,u=this.getResolution(),c=An(e);try{for(c.s();!(a=c.n()).done;){var l=a.value;if(!(t.x<l.x||l.x+u<t.x||t.y<l.y||l.y+u<t.y))return l}}catch(t){c.e(t)}finally{c.f()}}}},{key:"getResolution",value:function(){return this.resolution}},{key:"getViewCache",value:function(){return this.cellsViewCache}},{key:"getDataset",value:function(t,e){return this}}])&&Ln(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,e}();function In(t){return In="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},In(t)}function Fn(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function Bn(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,Nn(n.key),n)}}function Nn(t){var e=function(t){if("object"!=In(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=In(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==In(e)?e:e+""}var Dn=function(){return t=function t(e,r){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),n=n||{},this.resolutions=e,this.datasets="function"==typeof r?this.resolutions.map(r):r,this.datasets.length>1&&this.datasets.length!=this.resolutions.length)throw new Error("Uncompatible number of datasets and resolutions: "+this.datasets.length+" "+this.resolutions.length);n.preprocess&&this.setPrepocesses(n.preprocess)},(e=[{key:"getDataset",value:function(t,e){if(1==this.datasets.length)return this.datasets[0];for(var r=this.resolutions,n=0,o=r[n]/e;o<t&&n<r.length;)o=r[++n]/e;return n==r.length?this.datasets[r.length-1]:this.datasets[n]}},{key:"setPrepocesses",value:function(t){var e,r=function(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(t){if("string"==typeof t)return Fn(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Fn(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(u)throw i}}}}(this.datasets);try{for(r.s();!(e=r.n()).done;)e.value.preprocess=t}catch(t){r.e(t)}finally{r.f()}return this}}])&&Bn(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,e}();function Gn(t){if(!t.ok)throw new Error(t.status+" "+t.statusText);if(204!==t.status&&205!==t.status)return t.json()}function Un(t,e){return fetch(t,e).then(Gn)}var Wn={},$n={};function Yn(t){return new Function("d","return {"+t.map((function(t,e){return JSON.stringify(t)+": d["+e+'] || ""'})).join(",")+"}")}function Hn(t){var e=Object.create(null),r=[];return t.forEach((function(t){for(var n in t)n in e||r.push(e[n]=n)})),r}function Xn(t,e){var r=t+"",n=r.length;return n<e?new Array(e-n+1).join(0)+r:r}function qn(t){var e=new RegExp('["'+t+"\n\r]"),r=t.charCodeAt(0);function n(t,e){var n,o=[],i=t.length,a=0,u=0,c=i<=0,l=!1;function s(){if(c)return $n;if(l)return l=!1,Wn;var e,n,o=a;if(34===t.charCodeAt(o)){for(;a++<i&&34!==t.charCodeAt(a)||34===t.charCodeAt(++a););return(e=a)>=i?c=!0:10===(n=t.charCodeAt(a++))?l=!0:13===n&&(l=!0,10===t.charCodeAt(a)&&++a),t.slice(o+1,e-1).replace(/""/g,'"')}for(;a<i;){if(10===(n=t.charCodeAt(e=a++)))l=!0;else if(13===n)l=!0,10===t.charCodeAt(a)&&++a;else if(n!==r)continue;return t.slice(o,e)}return c=!0,t.slice(o,i)}for(10===t.charCodeAt(i-1)&&--i,13===t.charCodeAt(i-1)&&--i;(n=s())!==$n;){for(var f=[];n!==Wn&&n!==$n;)f.push(n),n=s();e&&null==(f=e(f,u++))||o.push(f)}return o}function o(e,r){return e.map((function(e){return r.map((function(t){return a(e[t])})).join(t)}))}function i(e){return e.map(a).join(t)}function a(t){return null==t?"":t instanceof Date?(o=(r=t).getUTCHours(),i=r.getUTCMinutes(),a=r.getUTCSeconds(),u=r.getUTCMilliseconds(),isNaN(r)?"Invalid Date":((n=r.getUTCFullYear())<0?"-"+Xn(-n,6):n>9999?"+"+Xn(n,6):Xn(n,4))+"-"+Xn(r.getUTCMonth()+1,2)+"-"+Xn(r.getUTCDate(),2)+(u?"T"+Xn(o,2)+":"+Xn(i,2)+":"+Xn(a,2)+"."+Xn(u,3)+"Z":a?"T"+Xn(o,2)+":"+Xn(i,2)+":"+Xn(a,2)+"Z":i||o?"T"+Xn(o,2)+":"+Xn(i,2)+"Z":"")):e.test(t+="")?'"'+t.replace(/"/g,'""')+'"':t;var r,n,o,i,a,u}return{parse:function(t,e){var r,o,i=n(t,(function(t,n){if(r)return r(t,n-1);o=t,r=e?function(t,e){var r=Yn(t);return function(n,o){return e(r(n),o,t)}}(t,e):Yn(t)}));return i.columns=o||[],i},parseRows:n,format:function(e,r){return null==r&&(r=Hn(e)),[r.map(a).join(t)].concat(o(e,r)).join("\n")},formatBody:function(t,e){return null==e&&(e=Hn(t)),o(t,e).join("\n")},formatRows:function(t){return t.map(i).join("\n")},formatRow:i,formatValue:a}}var Vn=qn(","),Zn=Vn.parse,Jn=(Vn.parseRows,Vn.format,Vn.formatBody,Vn.formatRows,Vn.formatRow,Vn.formatValue,qn("\t")),Kn=Jn.parse;function Qn(t){if(!t.ok)throw new Error(t.status+" "+t.statusText);return t.text()}function to(t,e){return fetch(t,e).then(Qn)}function eo(t){return function(e,r,n){return 2===arguments.length&&"function"==typeof r&&(n=r,r=void 0),to(e,r).then((function(e){return t(e,n)}))}}function ro(t,e,r,n){3===arguments.length&&"function"==typeof r&&(n=r,r=void 0);var o=qn(t);return to(e,r).then((function(t){return o.parse(t,n)}))}Jn.parseRows,Jn.format,Jn.formatBody,Jn.formatRows,Jn.formatRow,Jn.formatValue;var no=eo(Zn);function oo(t){return oo="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},oo(t)}function io(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(t){if("string"==typeof t)return ao(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?ao(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(u)throw i}}}}function ao(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function uo(){uo=function(){return e};var t,e={},r=Object.prototype,n=r.hasOwnProperty,o=Object.defineProperty||function(t,e,r){t[e]=r.value},i="function"==typeof Symbol?Symbol:{},a=i.iterator||"@@iterator",u=i.asyncIterator||"@@asyncIterator",c=i.toStringTag||"@@toStringTag";function l(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,r){return t[e]=r}}function s(t,e,r,n){var i=e&&e.prototype instanceof b?e:b,a=Object.create(i.prototype),u=new C(n||[]);return o(a,"_invoke",{value:P(t,r,u)}),a}function f(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}e.wrap=s;var h="suspendedStart",y="suspendedYield",p="executing",v="completed",d={};function b(){}function m(){}function g(){}var w={};l(w,a,(function(){return this}));var x=Object.getPrototypeOf,S=x&&x(x(A([])));S&&S!==r&&n.call(S,a)&&(w=S);var O=g.prototype=b.prototype=Object.create(w);function _(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function j(t,e){function r(o,i,a,u){var c=f(t[o],t,i);if("throw"!==c.type){var l=c.arg,s=l.value;return s&&"object"==oo(s)&&n.call(s,"__await")?e.resolve(s.__await).then((function(t){r("next",t,a,u)}),(function(t){r("throw",t,a,u)})):e.resolve(s).then((function(t){l.value=t,a(l)}),(function(t){return r("throw",t,a,u)}))}u(c.arg)}var i;o(this,"_invoke",{value:function(t,n){function o(){return new e((function(e,o){r(t,n,e,o)}))}return i=i?i.then(o,o):o()}})}function P(e,r,n){var o=h;return function(i,a){if(o===p)throw Error("Generator is already running");if(o===v){if("throw"===i)throw a;return{value:t,done:!0}}for(n.method=i,n.arg=a;;){var u=n.delegate;if(u){var c=k(u,n);if(c){if(c===d)continue;return c}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===h)throw o=v,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=p;var l=f(e,r,n);if("normal"===l.type){if(o=n.done?v:y,l.arg===d)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(o=v,n.method="throw",n.arg=l.arg)}}}function k(e,r){var n=r.method,o=e.iterator[n];if(o===t)return r.delegate=null,"throw"===n&&e.iterator.return&&(r.method="return",r.arg=t,k(e,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),d;var i=f(o,e.iterator,r.arg);if("throw"===i.type)return r.method="throw",r.arg=i.arg,r.delegate=null,d;var a=i.arg;return a?a.done?(r[e.resultName]=a.value,r.next=e.nextLoc,"return"!==r.method&&(r.method="next",r.arg=t),r.delegate=null,d):a:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,d)}function E(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function T(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function C(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(E,this),this.reset(!0)}function A(e){if(e||""===e){var r=e[a];if(r)return r.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var o=-1,i=function r(){for(;++o<e.length;)if(n.call(e,o))return r.value=e[o],r.done=!1,r;return r.value=t,r.done=!0,r};return i.next=i}}throw new TypeError(oo(e)+" is not iterable")}return m.prototype=g,o(O,"constructor",{value:g,configurable:!0}),o(g,"constructor",{value:m,configurable:!0}),m.displayName=l(g,c,"GeneratorFunction"),e.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===m||"GeneratorFunction"===(e.displayName||e.name))},e.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,g):(t.__proto__=g,l(t,c,"GeneratorFunction")),t.prototype=Object.create(O),t},e.awrap=function(t){return{__await:t}},_(j.prototype),l(j.prototype,u,(function(){return this})),e.AsyncIterator=j,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new j(s(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},_(O),l(O,c,"Generator"),l(O,a,(function(){return this})),l(O,"toString",(function(){return"[object Generator]"})),e.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},e.values=A,C.prototype={constructor:C,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=t,this.done=!1,this.delegate=null,this.method="next",this.arg=t,this.tryEntries.forEach(T),!e)for(var r in this)"t"===r.charAt(0)&&n.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=t)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var r=this;function o(n,o){return u.type="throw",u.arg=e,r.next=n,o&&(r.method="next",r.arg=t),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var a=this.tryEntries[i],u=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var c=n.call(a,"catchLoc"),l=n.call(a,"finallyLoc");if(c&&l){if(this.prev<a.catchLoc)return o(a.catchLoc,!0);if(this.prev<a.finallyLoc)return o(a.finallyLoc)}else if(c){if(this.prev<a.catchLoc)return o(a.catchLoc,!0)}else{if(!l)throw Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return o(a.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),T(r),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;T(r)}return o}}throw Error("illegal catch attempt")},delegateYield:function(e,r,n){return this.delegate={iterator:A(e),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=t),d}},e}function co(t,e,r,n,o,i,a){try{var u=t[i](a),c=u.value}catch(t){return void r(t)}u.done?e(c):Promise.resolve(c).then(n,o)}function lo(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){co(i,n,o,a,u,"next",t)}function u(t){co(i,n,o,a,u,"throw",t)}a(void 0)}))}}function so(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,fo(n.key),n)}}function fo(t){var e=function(t){if("object"!=oo(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=oo(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==oo(e)?e:e+""}function ho(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(ho=function(){return!!t})()}function yo(t){return yo=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},yo(t)}function po(t,e){return po=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},po(t,e)}eo(Kn);var vo=function(t){function e(t,r){var n,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),(n=function(t,e,r){return e=yo(e),function(t,e){if(e&&("object"==oo(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,ho()?Reflect.construct(e,r||[],yo(t).constructor):e.apply(t,r))}(this,e,[t,r,0,o])).onlyDrawWhenAllTilesReady=o.onlyDrawWhenAllTilesReady||!1,n.info=void 0,n.infoLoadingStatus="notLoaded",n.cache={},n.loadInfo(),n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&po(t,e)}(e,t),r=e,n=[{key:"loadInfo",value:function(){var t=this;return this.info||"notLoaded"!==this.infoLoadingStatus?"loaded"!==this.infoLoadingStatus&&"failed"!==this.infoLoadingStatus||this.map.redraw():lo(uo().mark((function e(){var r;return uo().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,Un(t.url+"info.json");case 3:r=e.sent,t.info=r,t.resolution=r.resolutionGeo,t.infoLoadingStatus="loaded",t.map.redraw(),e.next=13;break;case 10:e.prev=10,e.t0=e.catch(0),t.infoLoadingStatus="failed";case 13:case"end":return e.stop()}}),e,null,[[0,10]])})))(),this}},{key:"getTilingEnvelope",value:function(t){if(this.info){var e=this.info.originPoint,r=this.info.resolutionGeo,n=this.info.tileSizeCell;return{xMin:Math.floor((t.xMin-e.x)/(r*n)),xMax:Math.floor((t.xMax-e.x)/(r*n)),yMin:Math.floor((t.yMin-e.y)/(r*n)),yMax:Math.floor((t.yMax-e.y)/(r*n))}}this.loadInfo()}},{key:"getData",value:(i=lo(uo().mark((function t(e){var r,n,o,i,a,u,c,l,s,f,h,y,p,v,d,b,m=this;return uo().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(this.info){t.next=2;break}return t.abrupt("return",this);case 2:if(this.abortController=new AbortController,r=this.abortController.signal,n=this.getTilingEnvelope(e)){t.next=7;break}return t.abrupt("return",this);case 7:o=this.info.tilingBounds,i=o.xMin,a=o.xMax,u=o.yMin,c=o.yMax,l=Math.max(n.xMin,i),s=Math.min(n.xMax,a),f=Math.max(n.yMin,u),h=Math.min(n.yMax,c),y=(s-l+1)*(h-f+1),p=0,v=[],d=uo().mark((function t(e){var n,o;return uo().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:n=uo().mark((function t(n){return uo().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(m.cache[e]||(m.cache[e]={}),!m.cache[e][n]||"failed"===m.cache[e][n]){t.next=4;break}return++p,t.abrupt("return",1);case 4:m.cache[e][n]="loading",v.push(m.loadTile(e,n,r).then((function(t){m.cache[e][n]=t;var r=++p===y;m.checkAndRedraw(t,r)})).catch((function(){m.cache[e][n]="failed",++p})));case 6:case"end":return t.stop()}}),t)})),o=f;case 2:if(!(o<=h)){t.next=9;break}return t.delegateYield(n(o),"t0",4);case 4:if(!t.t0){t.next=6;break}return t.abrupt("continue",6);case 6:o++,t.next=2;break;case 9:case"end":return t.stop()}}),t)})),b=l;case 17:if(!(b<=s)){t.next=22;break}return t.delegateYield(d(b),"t0",19);case 19:b++,t.next=17;break;case 22:return t.next=24,Promise.allSettled(v);case 24:return t.abrupt("return",this);case 25:case"end":return t.stop()}}),t,this)}))),function(t){return i.apply(this,arguments)})},{key:"loadTile",value:(o=lo(uo().mark((function t(e,r,n){var o,i,a=this;return uo().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,no("".concat(this.url).concat(e,"/").concat(r,".csv"),{signal:n});case 3:if(o=t.sent,i=this.preprocess?o.filter((function(t){return!1!==a.preprocess(t)})):o,this.info){t.next=7;break}throw new Error("Tile info unknown");case 7:return t.abrupt("return",bo(i,e,r,this.info));case 10:throw t.prev=10,t.t0=t.catch(0),"AbortError"===t.t0.name&&console.warn("Tile request for ".concat(e,", ").concat(r," was aborted.")),t.t0;case 14:case"end":return t.stop()}}),t,this,[[0,10]])}))),function(t,e,r){return o.apply(this,arguments)})},{key:"cancelCurrentRequests",value:function(){this.abortController&&this.abortController.abort()}},{key:"checkAndRedraw",value:function(t,e){var r,n=!1,o=this.map.getZoom(),i=io(this.map.layers);try{for(i.s();!(r=i.n()).done;){var a=r.value;if((!a.visible||a.visible(o))&&a.getDataset&&a.getDataset(o)==this){n=!0;break}}}catch(t){i.e(t)}finally{i.f()}if(n){var u=this.map.updateExtentGeo(),c=t.extGeo,l=c.xMin,s=c.xMax,f=c.yMin,h=c.yMax;u.xMax<=l||u.xMin>=s||u.yMax<=f||u.yMin>=h||(this.onlyDrawWhenAllTilesReady?e&&this.map.redraw():this.map.redraw())}}},{key:"updateViewCache",value:function(t){if(this.cellsViewCache=[],this.info){var e=this.getTilingEnvelope(t);if(e)for(var r=this.info.tilingBounds,n=Math.max(e.xMin,r.xMin);n<=Math.min(e.xMax,r.xMax);n++)if(this.cache[n])for(var o=Math.max(e.yMin,r.yMin);o<=Math.min(e.yMax,r.yMax);o++){var i=this.cache[n][o];if(i&&"string"!=typeof i){var a,u=io(i.cells);try{for(u.s();!(a=u.n()).done;){var c=a.value;+c.x+this.resolution<t.xMin||+c.x-this.resolution>t.xMax||+c.y+this.resolution<t.yMin||+c.y-this.resolution>t.yMax||this.cellsViewCache.push(c)}}catch(t){u.e(t)}finally{u.f()}}}}}}],n&&so(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n,o,i}(Rn);function bo(t,e,r,n){var o={};o.cells=t,o.x=e,o.y=r;var i=n.resolutionGeo,a=n.tileSizeCell;o.extGeo={xMin:n.originPoint.x+i*a*o.x,xMax:n.originPoint.x+i*a*(o.x+1),yMin:n.originPoint.y+i*a*o.y,yMax:n.originPoint.y+i*a*(o.y+1)};var u,c=io(o.cells);try{for(c.s();!(u=c.n()).done;){var l=u.value;l.x=o.extGeo.xMin+l.x*i,l.y=o.extGeo.yMin+l.y*i}}catch(t){c.e(t)}finally{c.f()}return o}function mo(t){return mo="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},mo(t)}function go(){go=function(){return e};var t,e={},r=Object.prototype,n=r.hasOwnProperty,o=Object.defineProperty||function(t,e,r){t[e]=r.value},i="function"==typeof Symbol?Symbol:{},a=i.iterator||"@@iterator",u=i.asyncIterator||"@@asyncIterator",c=i.toStringTag||"@@toStringTag";function l(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,r){return t[e]=r}}function s(t,e,r,n){var i=e&&e.prototype instanceof b?e:b,a=Object.create(i.prototype),u=new C(n||[]);return o(a,"_invoke",{value:P(t,r,u)}),a}function f(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}e.wrap=s;var h="suspendedStart",y="suspendedYield",p="executing",v="completed",d={};function b(){}function m(){}function g(){}var w={};l(w,a,(function(){return this}));var x=Object.getPrototypeOf,S=x&&x(x(A([])));S&&S!==r&&n.call(S,a)&&(w=S);var O=g.prototype=b.prototype=Object.create(w);function _(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function j(t,e){function r(o,i,a,u){var c=f(t[o],t,i);if("throw"!==c.type){var l=c.arg,s=l.value;return s&&"object"==mo(s)&&n.call(s,"__await")?e.resolve(s.__await).then((function(t){r("next",t,a,u)}),(function(t){r("throw",t,a,u)})):e.resolve(s).then((function(t){l.value=t,a(l)}),(function(t){return r("throw",t,a,u)}))}u(c.arg)}var i;o(this,"_invoke",{value:function(t,n){function o(){return new e((function(e,o){r(t,n,e,o)}))}return i=i?i.then(o,o):o()}})}function P(e,r,n){var o=h;return function(i,a){if(o===p)throw Error("Generator is already running");if(o===v){if("throw"===i)throw a;return{value:t,done:!0}}for(n.method=i,n.arg=a;;){var u=n.delegate;if(u){var c=k(u,n);if(c){if(c===d)continue;return c}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===h)throw o=v,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=p;var l=f(e,r,n);if("normal"===l.type){if(o=n.done?v:y,l.arg===d)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(o=v,n.method="throw",n.arg=l.arg)}}}function k(e,r){var n=r.method,o=e.iterator[n];if(o===t)return r.delegate=null,"throw"===n&&e.iterator.return&&(r.method="return",r.arg=t,k(e,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),d;var i=f(o,e.iterator,r.arg);if("throw"===i.type)return r.method="throw",r.arg=i.arg,r.delegate=null,d;var a=i.arg;return a?a.done?(r[e.resultName]=a.value,r.next=e.nextLoc,"return"!==r.method&&(r.method="next",r.arg=t),r.delegate=null,d):a:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,d)}function E(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function T(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function C(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(E,this),this.reset(!0)}function A(e){if(e||""===e){var r=e[a];if(r)return r.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var o=-1,i=function r(){for(;++o<e.length;)if(n.call(e,o))return r.value=e[o],r.done=!1,r;return r.value=t,r.done=!0,r};return i.next=i}}throw new TypeError(mo(e)+" is not iterable")}return m.prototype=g,o(O,"constructor",{value:g,configurable:!0}),o(g,"constructor",{value:m,configurable:!0}),m.displayName=l(g,c,"GeneratorFunction"),e.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===m||"GeneratorFunction"===(e.displayName||e.name))},e.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,g):(t.__proto__=g,l(t,c,"GeneratorFunction")),t.prototype=Object.create(O),t},e.awrap=function(t){return{__await:t}},_(j.prototype),l(j.prototype,u,(function(){return this})),e.AsyncIterator=j,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new j(s(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},_(O),l(O,c,"Generator"),l(O,a,(function(){return this})),l(O,"toString",(function(){return"[object Generator]"})),e.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},e.values=A,C.prototype={constructor:C,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=t,this.done=!1,this.delegate=null,this.method="next",this.arg=t,this.tryEntries.forEach(T),!e)for(var r in this)"t"===r.charAt(0)&&n.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=t)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var r=this;function o(n,o){return u.type="throw",u.arg=e,r.next=n,o&&(r.method="next",r.arg=t),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var a=this.tryEntries[i],u=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var c=n.call(a,"catchLoc"),l=n.call(a,"finallyLoc");if(c&&l){if(this.prev<a.catchLoc)return o(a.catchLoc,!0);if(this.prev<a.finallyLoc)return o(a.finallyLoc)}else if(c){if(this.prev<a.catchLoc)return o(a.catchLoc,!0)}else{if(!l)throw Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return o(a.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),T(r),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;T(r)}return o}}throw Error("illegal catch attempt")},delegateYield:function(e,r,n){return this.delegate={iterator:A(e),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=t),d}},e}function wo(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(t){if("string"==typeof t)return xo(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?xo(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(u)throw i}}}}function xo(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function So(t,e,r,n,o,i,a){try{var u=t[i](a),c=u.value}catch(t){return void r(t)}u.done?e(c):Promise.resolve(c).then(n,o)}function Oo(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,_o(n.key),n)}}function _o(t){var e=function(t){if("object"!=mo(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=mo(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==mo(e)?e:e+""}function jo(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(jo=function(){return!!t})()}function Po(t){return Po=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Po(t)}function ko(t,e){return ko=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},ko(t,e)}var Eo=function(t){function e(t,r,n){var o,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),(o=function(t,e,r){return e=Po(e),function(t,e){if(e&&("object"==mo(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,jo()?Reflect.construct(e,r||[],Po(t).constructor):e.apply(t,r))}(this,e,[t,r,n,i])).cells=[],o.delimiter=i.delimiter||",",o.infoLoadingStatus="notLoaded",o.getData(void 0),o}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&ko(t,e)}(e,t),r=e,n=[{key:"getData",value:function(t){var e,r=this;return"notLoaded"!=this.infoLoadingStatus||(this.infoLoadingStatus="loading",(e=go().mark((function t(){var e,n,o,i,a,u,c;return go().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,ro(r.delimiter,r.url);case 3:e=t.sent,n=wo(e);try{for(n.s();!(o=n.n()).done;)(i=o.value).x=+i.x,i.y=+i.y}catch(t){n.e(t)}finally{n.f()}if(!r.preprocess){t.next=29;break}r.cells=[],a=wo(e),t.prev=9,a.s();case 11:if((u=a.n()).done){t.next=19;break}if(c=u.value,0!=r.preprocess(c)){t.next=16;break}return t.abrupt("continue",17);case 16:r.cells.push(c);case 17:t.next=11;break;case 19:t.next=24;break;case 21:t.prev=21,t.t0=t.catch(9),a.e(t.t0);case 24:return t.prev=24,a.f(),t.finish(24);case 27:t.next=30;break;case 29:r.cells=e;case 30:r.map&&r.map.redraw(),r.infoLoadingStatus="loaded",t.next=38;break;case 34:t.prev=34,t.t1=t.catch(0),r.infoLoadingStatus="failed",r.cells=[];case 38:case"end":return t.stop()}}),t,null,[[0,34],[9,21,24,27]])})),function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(t){So(i,n,o,a,u,"next",t)}function u(t){So(i,n,o,a,u,"throw",t)}a(void 0)}))})()),this}},{key:"updateViewCache",value:function(t){if(this.cells){this.cellsViewCache=[];var e,r=wo(this.cells);try{for(r.s();!(e=r.n()).done;){var n=e.value;+n.x+this.resolution<t.xMin||+n.x-this.resolution>t.xMax||+n.y+this.resolution<t.yMin||+n.y-this.resolution>t.yMax||this.cellsViewCache.push(n)}}catch(t){r.e(t)}finally{r.f()}}}}],n&&Oo(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(Rn);function To(t){return To="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},To(t)}function Co(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function Ao(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,Mo(n.key),n)}}function Mo(t){var e=function(t){if("object"!=To(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=To(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==To(e)?e:e+""}function Lo(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(Lo=function(){return!!t})()}function zo(t){return zo=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},zo(t)}function Ro(t,e){return Ro=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Ro(t,e)}var Io=function(t){function e(t,r){var n,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),(n=function(t,e,r){return e=zo(e),function(t,e){if(e&&("object"==To(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Lo()?Reflect.construct(e,r||[],zo(t).constructor):e.apply(t,r))}(this,e,[void 0,"",t,o])).cells=r||[],n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Ro(t,e)}(e,t),r=e,(n=[{key:"getData",value:function(t){return this}},{key:"updateViewCache",value:function(t){if(this.cells){this.cellsViewCache=[];var e,r=function(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(t){if("string"==typeof t)return Co(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Co(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(u)throw i}}}}(this.cells);try{for(r.s();!(e=r.n()).done;){var n=e.value;+n.x+this.resolution<t.xMin||+n.x-this.resolution>t.xMax||+n.y+this.resolution<t.yMin||+n.y-this.resolution>t.yMax||this.cellsViewCache.push(n)}}catch(t){r.e(t)}finally{r.f()}}}}])&&Ao(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(Rn);function Fo(t){return Fo="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Fo(t)}function Bo(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function No(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,Do(n.key),n)}}function Do(t){var e=function(t){if("object"!=Fo(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=Fo(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Fo(e)?e:e+""}function Go(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(Go=function(){return!!t})()}function Uo(t){return Uo=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Uo(t)}function Wo(t,e){return Wo=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Wo(t,e)}var $o=function(t){function e(t){var r;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),r=function(t,e,r){return e=Uo(e),function(t,e){if(e&&("object"==Fo(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Go()?Reflect.construct(e,r||[],Uo(t).constructor):e.apply(t,r))}(this,e,[t]),t=t||{},r.color=t.color||"#EA6BAC",r.size=t.size||function(t,e){return e},r.shape=t.shape||"square",r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Wo(t,e)}(e,t),r=e,n=[{key:"draw",value:function(t,e,r){this.filter&&(t=t.filter(this.filter));var n,o=e.view.z,i=this.viewScale?this.viewScale(t,r,o):void 0,a=.5*r,u="function"==typeof this.color,c="function"==typeof this.size,l="function"==typeof this.shape,s=this.color||"black",f=this.size||r,h=this.shape||"square",y=u?this.color:null,p=c?this.size:null,v=l?this.shape:null,d=function(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(t){if("string"==typeof t)return Bo(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Bo(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(u)throw i}}}}(t);try{for(d.s();!(n=d.n()).done;){var b=n.value,m=y?y(b,r,o,i):s;if(m&&"none"!==m){var g=p?p(b,r,o,i):f;if(g){var w=v?v(b,r,o,i):h;if("none"!==w){var x=this.offset(b,r,o),S=e.offscreenCtx;if(S.fillStyle=m,"square"===w){var O=r*(1-g/r)*.5;S.fillRect(b.x+O+x.dx,b.y+O+x.dy,g,g)}else if("circle"===w)S.beginPath(),S.arc(b.x+a+x.dx,b.y+a+x.dy,.5*g,0,2*Math.PI,!1),S.fill();else if("donut"===w){var _=b.x+a+x.dx,j=b.y+a+x.dy;S.beginPath(),S.moveTo(_,j),S.arc(_,j,a,0,2*Math.PI),S.arc(_,j,(1-g/r)*a,0,2*Math.PI,!0),S.closePath(),S.fill()}else if("diamond"===w){var P=.5*g;S.beginPath(),S.moveTo(b.x+a-P,b.y+a),S.lineTo(b.x+a,b.y+a+P),S.lineTo(b.x+a+P,b.y+a),S.lineTo(b.x+a,b.y+a-P),S.fill()}else if("triangle_up"===w){var k=(g-r)/2;S.beginPath(),S.moveTo(b.x-k,b.y-k),S.lineTo(b.x+a,b.y+r+k),S.lineTo(b.x+r+k,b.y-k),S.fill()}else if("triangle_down"===w){var E=(g-r)/2;S.beginPath(),S.moveTo(b.x-E,b.y+r+E),S.lineTo(b.x+a,b.y-E),S.lineTo(b.x+r+E,b.y+r+E),S.fill()}else if("triangle_left"===w){var T=(g-r)/2;S.beginPath(),S.moveTo(b.x+r+T,b.y+r+T),S.lineTo(b.x-T,b.y+a),S.lineTo(b.x+r+T,b.y-T),S.fill()}else{if("triangle_right"!==w)throw new Error("Unexpected shape:"+w);var C=(g-r)/2;S.beginPath(),S.moveTo(b.x-C,b.y-C),S.lineTo(b.x+r+C,b.y+a),S.lineTo(b.x-C,b.y+r+C),S.fill()}}}}}}catch(t){d.e(t)}finally{d.f()}this.updateLegends({viewScale:i,resolution:r,z:o,cells:t})}}],n&&No(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(Sn);function Yo(t){return Yo="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Yo(t)}function Ho(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function Xo(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,qo(n.key),n)}}function qo(t){var e=function(t){if("object"!=Yo(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=Yo(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Yo(e)?e:e+""}function Vo(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(Vo=function(){return!!t})()}function Zo(t){return Zo=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Zo(t)}function Jo(t,e){return Jo=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Jo(t,e)}var Ko=function(t){function e(t){var r;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),r=function(t,e,r){return e=Zo(e),function(t,e){if(e&&("object"==Yo(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Vo()?Reflect.construct(e,r||[],Zo(t).constructor):e.apply(t,r))}(this,e,[t]),t=t||{},r.strokeColor=t.strokeColor||function(){return"#666"},r.size=t.size||function(t,e){return e},r.strokeWidth=t.strokeWidth||function(t,e,r){return 1.5*r},r.shape=t.shape||function(){return"square"},r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Jo(t,e)}(e,t),r=e,n=[{key:"draw",value:function(t,e,r){this.filter&&(t=t.filter(this.filter));var n,o=e.view.z,i=e.offscreenCtx,a=this.viewScale?this.viewScale(t,r,o):void 0,u=.5*r,c=function(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(t){if("string"==typeof t)return Ho(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Ho(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(u)throw i}}}}(t);try{for(c.s();!(n=c.n()).done;){var l=n.value,s=this.strokeColor?this.strokeColor(l,r,o,a):void 0;if(s&&"none"!==s){i.strokeStyle=s;var f=this.size?this.size(l,r,o,a):r,h=this.strokeWidth?this.strokeWidth(l,r,o,a):1*o;if(h&&!(h<=0)){i.lineWidth=h;var y=this.shape?this.shape(l,r,o,a):"square";if("none"!==y){var p=this.offset(l,r,o);if("square"===y){var v=r*(1-f/r)*.5;i.beginPath(),i.rect(l.x+v+p.dx,l.y+v+p.dy,f,f),i.stroke()}else if("circle"===y)i.beginPath(),i.arc(l.x+u+p.dx,l.y+u+p.dy,.5*f,0,2*Math.PI,!1),i.stroke();else if("diamond"===y){var d=.5*f;i.beginPath(),i.moveTo(l.x+u-d,l.y+u),i.lineTo(l.x+u,l.y+u+d),i.lineTo(l.x+u+d,l.y+u),i.lineTo(l.x+u,l.y+u-d),i.lineTo(l.x+u-d,l.y+u),i.stroke()}else if("donut"===y)console.error("Not implemented");else if("triangle_up"===y){var b=(f-r)/2;i.beginPath(),i.moveTo(l.x-b,l.y-b),i.lineTo(l.x+u,l.y+r+b),i.lineTo(l.x+r+b,l.y-b),i.closePath(),i.stroke()}else if("triangle_down"===y){var m=(f-r)/2;i.beginPath(),i.moveTo(l.x-m,l.y+r+m),i.lineTo(l.x+u,l.y-m),i.lineTo(l.x+r+m,l.y+r+m),i.closePath(),i.stroke()}else if("triangle_left"===y){var g=(f-r)/2;i.beginPath(),i.moveTo(l.x+r+g,l.y+r+g),i.lineTo(l.x-g,l.y+u),i.lineTo(l.x+r+g,l.y-g),i.closePath(),i.stroke()}else{if("triangle_right"!==y)throw new Error("Unexpected shape:"+y);var w=(f-r)/2;i.beginPath(),i.moveTo(l.x-w,l.y-w),i.lineTo(l.x+r+w,l.y+u),i.lineTo(l.x-w,l.y+r+w),i.closePath(),i.stroke()}}}}}}catch(t){c.e(t)}finally{c.f()}this.updateLegends({style:this,resolution:r,z:o,viewScale:a})}}],n&&Xo(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(Sn);function Qo(t){return Qo="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Qo(t)}function ti(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function ei(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,ri(n.key),n)}}function ri(t){var e=function(t){if("object"!=Qo(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=Qo(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Qo(e)?e:e+""}function ni(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(ni=function(){return!!t})()}function oi(t){return oi=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},oi(t)}function ii(t,e){return ii=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},ii(t,e)}var ai=function(t){function e(t){var r;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),r=function(t,e,r){return e=oi(e),function(t,e){if(e&&("object"==Qo(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,ni()?Reflect.construct(e,r||[],oi(t).constructor):e.apply(t,r))}(this,e,[t]),t=t||{},r.height=t.height||function(t,e){return e*Math.random()},r.lineColor=t.lineColor||function(t,e,r,n){return"#BBB"},r.lineWidth=t.lineWidth||function(t,e,r,n){return n},r.fillColor=t.fillColor||function(t,e,r,n){return"#c08c5968"},r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&ii(t,e)}(e,t),r=e,n=[{key:"draw",value:function(t,e,r){this.filter&&(t=t.filter(this.filter));var n,o=e.view.z,i=e.offscreenCtx,a=this.viewScale?this.viewScale(t,r,o):void 0,u={},c=function(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(t){if("string"==typeof t)return ti(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?ti(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(u)throw i}}}}(t);try{for(c.s();!(n=c.n()).done;){var l=n.value,s=u[l.y];s||(s={},u[l.y]=s),s[l.x]=this.height(l,r,o,a)}}catch(t){c.e(t)}finally{c.f()}var f=e.extGeo;if(f){var h=Math.floor(f.xMin/r)*r,y=Math.floor(f.xMax/r)*r,p=Math.floor(f.yMin/r)*r,v=Math.floor(f.yMax/r)*r,d={min:p,max:v};i.lineJoin="round";for(var b=v;b>=p;b-=r){var m=u[b];if(m){i.beginPath(),i.moveTo(h-r/2,b);for(var g=void 0,w=h;w<=y;w+=r){var x=m[w];x||(x=0),x||g?i.lineTo(w+r/2,b+x):i.moveTo(w+r/2,b),g=x}g&&i.lineTo(y+r/2,b);var S=this.fillColor(b,d,r,o);S&&"none"!=S&&(i.fillStyle=S,i.fill());var O=this.lineColor(b,d,r,o),_=this.lineWidth(b,d,r,o);O&&"none"!=O&&_>0&&(i.strokeStyle=O,i.lineWidth=_,i.stroke())}}}}}],n&&ei(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(Sn);function ui(t){return ui="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ui(t)}function ci(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,u=[],c=!0,l=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(u.push(n.value),u.length!==e);c=!0);}catch(t){l=!0,o=t}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(l)throw o}}return u}}(t,e)||li(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function li(t,e){if(t){if("string"==typeof t)return si(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?si(t,e):void 0}}function si(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function fi(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,hi(n.key),n)}}function hi(t){var e=function(t){if("object"!=ui(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=ui(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==ui(e)?e:e+""}function yi(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(yi=function(){return!!t})()}function pi(t){return pi=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},pi(t)}function vi(t,e){return vi=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},vi(t,e)}var di=function(t){function e(t){var r;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),r=function(t,e,r){return e=pi(e),function(t,e){if(e&&("object"==ui(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,yi()?Reflect.construct(e,r||[],pi(t).constructor):e.apply(t,r))}(this,e,[t]),t=t||{},r.color=t.color,r.type=t.type||function(){return"flag"},r.size=t.size||function(t,e){return e},r.stripesOrientation=t.stripesOrientation||function(){return 0},r.offsetAngle=t.offsetAngle||function(){return 0},r.agePyramidHeight=t.agePyramidHeight||function(t,e){return e},r.pieChartInternalRadiusFactor=t.pieChartInternalRadiusFactor||0,r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&vi(t,e)}(e,t),r=e,n=[{key:"draw",value:function(t,e,r){this.filter&&(t=t.filter(this.filter));var n,o=e.view.z,i=e.offscreenCtx,a=this.viewScale?this.viewScale(t,r,o):void 0,u=Object.entries(this.color).length,c=function(t){var e="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!e){if(Array.isArray(t)||(e=li(t))){e&&(t=e);var r=0,n=function(){};return{s:n,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:n}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,i=!0,a=!1;return{s:function(){e=e.call(t)},n:function(){var t=e.next();return i=t.done,t},e:function(t){a=!0,o=t},f:function(){try{i||null==e.return||e.return()}finally{if(a)throw o}}}}(t);try{for(c.s();!(n=c.n()).done;){var l=n.value,s=this.size?this.size(l,r,o,a):r;if(s){var f=this.offset(l,r,o),h=this.type?this.type(l,r,o,a):"flag",y=l.x+f.dx+("agepyramid"===h?0:.5*r),p=l.y+f.dy+("agepyramid"===h?0:.5*r),v=this.offsetAngle?this.offsetAngle(l,r,o,a)*Math.PI/180:0;if("agepyramid"===h||"radar"===h||"halftone"===h){for(var d=-1/0,b=0,m=Object.keys(this.color);b<m.length;b++){var g=+l[m[b]];g>d&&(d=g)}var w=0;"agepyramid"===h&&this.agePyramidHeight&&(w=(r-this.agePyramidHeight(l,r,o,a))/2),"radar"!==h&&"halftone"!==h||(w=Math.PI/2+v);var x="agepyramid"===h?(this.agePyramidHeight?this.agePyramidHeight(l,r,o,a):r)/u:"radar"===h||"halftone"===h?2*Math.PI/u:void 0;if(void 0===x)throw new Error("Unexpected symbol type:"+h);for(var S=0,O=Object.entries(this.color);S<O.length;S++){var _=ci(O[S],2),j=_[0],P=_[1];if("agepyramid"===h){i.fillStyle=P;var k=s*l[j]/d;i.fillRect(y+(r-k)/2,p+w,k,x),w+=x}else if("radar"===h){i.fillStyle=P;var E=l[j],T=s/2*Math.sqrt(E/d);i.beginPath(),i.moveTo(y,p),i.arc(y,p,T,w-x,w),i.lineTo(y,p),i.fill(),w+=x}else{if("halftone"!==h)throw new Error("Unexpected symbol type:"+h);i.fillStyle=P;var C=l[j],A=.333*s*Math.sqrt(C/d);i.beginPath(),i.arc(y+.25*r*Math.cos(w),p+.25*r*Math.sin(w),A,0,2*Math.PI),i.fill(),w+=x}}}else{for(var M=0,L=0,z=Object.keys(this.color);L<z.length;L++){var R=+l[z[L]];R&&(M+=R)}if(!M||isNaN(M))continue;for(var I=0,F=r*(1-s/r)*.5,B=this.stripesOrientation(l,r,o,a),N=0,D=Object.entries(this.color);N<D.length;N++){var G=ci(D[N],2),U=G[0],W=G[1],$=l[U]/M;if($&&!isNaN($)){if(i.fillStyle=W,"flag"===h)0==B?i.fillRect(l.x+F+f.dx,l.y+F+I*s+f.dy,s,$*s):i.fillRect(l.x+F+I*s+f.dx,l.y+F+f.dy,$*s,s);else if("piechart"===h){var Y=2*I*Math.PI,H=2*(I+$)*Math.PI;i.beginPath(),i.moveTo(y,p),i.arc(y,p,.5*s,Y+v,H+v),this.pieChartInternalRadiusFactor&&i.arc(y,p,.5*s*this.pieChartInternalRadiusFactor,Y+v,H+v,!0),i.closePath(),i.fill()}else if("ring"===h)i.beginPath(),i.arc(y,p,Math.sqrt(1-I)*s*.5,0,2*Math.PI),i.fill();else{if("segment"!==h)throw new Error("Unexpected symbol type:"+h);var X=s*s/r;0==B?i.fillRect(l.x+f.dx,l.y+(r-X)/2+I*X+f.dy,r,$*X):i.fillRect(l.x+I*r+f.dx,l.y+(r-X)/2+f.dy,$*r,X)}I+=$}}}}}}catch(t){c.e(t)}finally{c.f()}this.updateLegends({style:this,resolution:r,z:o,viewScale:a})}}],n&&fi(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(Sn);function bi(t){return bi="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},bi(t)}function mi(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function gi(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,wi(n.key),n)}}function wi(t){var e=function(t){if("object"!=bi(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=bi(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==bi(e)?e:e+""}function xi(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(xi=function(){return!!t})()}function Si(t){return Si=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Si(t)}function Oi(t,e){return Oi=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Oi(t,e)}var _i=function(t){function e(t){var r;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),r=function(t,e,r){return e=Si(e),function(t,e){if(e&&("object"==bi(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,xi()?Reflect.construct(e,r||[],Si(t).constructor):e.apply(t,r))}(this,e,[t]),t=t||{},r.color=t.color||function(){return"#EA6BAC"},r.width=t.width||function(t,e){return.1*e},r.length=t.length||function(t,e){return.9*e},r.orientation=t.orientation||function(){return 180*Math.random()},r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Oi(t,e)}(e,t),r=e,n=[{key:"draw",value:function(t,e,r){this.filter&&(t=t.filter(this.filter));var n=e.view.z,o=e.offscreenCtx,i=this.viewScale?this.viewScale(t,r,n):void 0;o.lineCap="butt";var a,u=Math.PI/180,c=function(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(t){if("string"==typeof t)return mi(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?mi(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(u)throw i}}}}(t);try{for(c.s();!(a=c.n()).done;){var l=a.value,s=this.color?this.color(l,r,n,i):void 0;if(s){var f=this.width?this.width(l,r,n,i):void 0;if(f&&!(f<0)){var h=this.length?this.length(l,r,n,i):void 0;if(h&&!(h<0)){var y=this.orientation(l,r,n,i)*u;if(void 0!==y&&!isNaN(y)){var p=this.offset(l,r,n);o.strokeStyle=s,o.lineWidth=f;var v=l.x+r/2+p.dx,d=l.y+r/2+p.dy,b=.5*Math.cos(y)*h,m=.5*Math.sin(y)*h;o.beginPath(),o.moveTo(v-b,d-m),o.lineTo(v+b,d+m),o.stroke()}}}}}}catch(t){c.e(t)}finally{c.f()}this.updateLegends({viewScale:i,resolution:r,z:n,cells:t})}}],n&&gi(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(Sn);function ji(t){return ji="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ji(t)}function Pi(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function ki(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,Ei(n.key),n)}}function Ei(t){var e=function(t){if("object"!=ji(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=ji(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==ji(e)?e:e+""}function Ti(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(Ti=function(){return!!t})()}function Ci(t){return Ci=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Ci(t)}function Ai(t,e){return Ai=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Ai(t,e)}var Mi=function(t){function e(t){var r;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),r=function(t,e,r){return e=Ci(e),function(t,e){if(e&&("object"==ji(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Ti()?Reflect.construct(e,r||[],Ci(t).constructor):e.apply(t,r))}(this,e,[t]),t=t||{},r.text=t.text||function(){return"X"},r.color=t.color||function(){return"black"},r.fontSize=t.fontSize||function(t,e){return e},r.fontFamily=t.fontFamily||function(){return"Arial"},r.fontWeight=t.fontWeight||function(){return"bold"},r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Ai(t,e)}(e,t),r=e,n=[{key:"draw",value:function(t,e,r){this.filter&&(t=t.filter(this.filter));var n=e.view.z,o=e.offscreenCtx,i=this.viewScale?this.viewScale(t,r,n):void 0;e.initCanvasTransform();var a,u=function(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(t){if("string"==typeof t)return Pi(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Pi(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(u)throw i}}}}(t);try{for(u.s();!(a=u.n()).done;){var c=a.value,l=this.text?this.text(c,r,n,i):void 0;if(null!=l&&null!=l&&l+""!=""){var s=this.color?this.color(c,r,n,i):void 0;if(s){o.fillStyle=s;var f=this.fontSize(c,r,n,i)/n;if(f){var h=this.fontFamily?this.fontFamily(c,r,n,i):"Arial",y=this.fontWeight?this.fontWeight(c,r,n,i):"bold";o.font=y+" "+f+"px "+h;var p=this.offset(c,r,n);o.textAlign="center";var v=e.geoToPixX(c.x+.5*r+p.dx),d=e.geoToPixY(c.y+.5*r+p.dy)+.3*f;o.fillText(l,v,d)}}}}}catch(t){u.e(t)}finally{u.f()}this.updateLegends({style:this,resolution:r,z:n,viewScale:i})}}],o=[{key:"textScale",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0,r=t.length;return function(n){return e&&(n=e(n)),0==n?"":n>=1?t[r-1]:t[Math.floor(n*r)]}}}],n&&ki(r.prototype,n),o&&ki(r,o),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n,o}(Sn);function Li(t){return Li="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Li(t)}function zi(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(t){if("string"==typeof t)return Ri(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Ri(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(u)throw i}}}}function Ri(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function Ii(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,Fi(n.key),n)}}function Fi(t){var e=function(t){if("object"!=Li(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=Li(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Li(e)?e:e+""}function Bi(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(Bi=function(){return!!t})()}function Ni(t){return Ni=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Ni(t)}function Di(t,e){return Di=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Di(t,e)}var Gi=function(t){function e(t){var r;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),r=function(t,e,r){return e=Ni(e),function(t,e){if(e&&("object"==Li(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Bi()?Reflect.construct(e,r||[],Ni(t).constructor):e.apply(t,r))}(this,e,[t]),t=t||{},r.height=t.height,r.color=t.color||function(){return"#c08c59"},r.width=t.width||function(t,e){return.5*e},r.simple=t.simple||function(){return!1},r.viewHeightFactor=t.viewHeightFactor||1.5,r.viewSX=null==t.viewSX?0:t.viewSX,r.viewSY=null==t.viewSY?-.5:t.viewSY,r.shadowDirection=null==t.shadowDirection?-40.3*Math.PI/180:t.shadowDirection,r.shadowFactor=t.shadowFactor||.3,r.shadowColor=t.shadowColor||"#00000033",r.outlineCol=t.outlineCol||"#FFFFFF",r.outlineWidthPix=null==t.outlineWidthPix?.5:t.outlineWidthPix,r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Di(t,e)}(e,t),r=e,n=[{key:"draw",value:function(t,e,r){this.filter&&(t=t.filter(this.filter));var n=e.view.z,o=e.offscreenCtx,i=this.viewScale?this.viewScale(t,r,n):void 0,a=e.view.x+this.viewSX*e.w*n,u=e.view.y+this.viewSY*e.h*n,c=this.viewHeightFactor*(e.w+e.h)*.5*n;t.sort((function(t,e){return 1e8*(e.y-t.y)+t.x-e.x}));var l=this.simple(r,n,i);o.lineCap=l?"butt":"round",o.strokeStyle=this.shadowColor,o.fillStyle=this.shadowColor;var s,f=zi(t);try{for(f.s();!(s=f.n()).done;){var h=s.value,y=this.width?this.width(h,r,n,i):void 0;if(y&&!(y<0)){var p=this.height?this.height(h,r,n,i):void 0;if(p&&!(p<0)){o.lineWidth=y;var v=h.x+r/2,d=h.y+r/2,b=p*this.shadowFactor;o.beginPath(),o.moveTo(v,d),o.lineTo(v+b*Math.cos(this.shadowDirection),d+b*Math.sin(this.shadowDirection)),o.stroke()}}}}catch(t){f.e(t)}finally{f.f()}var m,g=zi(t);try{for(g.s();!(m=g.n()).done;){var w=m.value,x=this.color?this.color(w,r,n,i):void 0;if(x){var S=this.width?this.width(w,r,n,i):void 0;if(S&&!(S<0)){var O=this.height?this.height(w,r,n,i):void 0;if(O&&!(O<0)){var _=w.x+r/2,j=w.y+r/2,P=_-a,k=j-u,E=Math.atan2(k,P),T=Math.sqrt(P*P+k*k)*O/(c-O);l?(o.strokeStyle=x,o.lineWidth=S,o.beginPath(),o.moveTo(_,j),o.lineTo(_+T*Math.cos(E),j+T*Math.sin(E)),o.stroke()):(o.strokeStyle=this.outlineCol,o.lineWidth=S+2*this.outlineWidthPix*n,o.beginPath(),o.moveTo(_,j),o.lineTo(_+T*Math.cos(E),j+T*Math.sin(E)),o.stroke(),o.strokeStyle=x,o.lineWidth=S,o.beginPath(),o.moveTo(_,j),o.lineTo(_+T*Math.cos(E),j+T*Math.sin(E)),o.stroke(),o.strokeStyle=this.outlineCol,o.lineWidth=this.outlineWidthPix*n,o.beginPath(),o.arc(_+T*Math.cos(E),j+T*Math.sin(E),.5*S,0,2*Math.PI,!1),o.stroke())}}}}}catch(t){g.e(t)}finally{g.f()}o.lineCap="butt",this.updateLegends({style:this,resolution:r,z:n,viewScale:i})}}],n&&Ii(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(Sn);function Ui(t){return Ui="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ui(t)}function Wi(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function $i(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,Yi(n.key),n)}}function Yi(t){var e=function(t){if("object"!=Ui(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=Ui(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Ui(e)?e:e+""}function Hi(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(Hi=function(){return!!t})()}function Xi(t){return Xi=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Xi(t)}function qi(t,e){return qi=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},qi(t,e)}var Vi=function(t){function e(){var t,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),(t=function(t,e,r){return e=Xi(e),function(t,e){if(e&&("object"==Ui(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Hi()?Reflect.construct(e,r||[],Xi(t).constructor):e.apply(t,r))}(this,e,[r])).color=r.color||function(t,e,r,n){return"#EA6BAC"},t.width=r.width||function(t,e,r,n){return e/5},t.length=r.length||function(t,e,r,n){return e},t.diamond=r.diamond,t}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&qi(t,e)}(e,t),r=e,n=[{key:"draw",value:function(t,r,n){this.filter&&(t=t.filter(this.filter));var o=r.view.z,i=r.offscreenCtx,a=e.buildSides(t,n);if(0!=a.length){var u=this.viewScale?this.viewScale(a,n,o):void 0;i.lineCap="butt";var c,l=.5*n,s=function(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(t){if("string"==typeof t)return Wi(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Wi(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(u)throw i}}}}(a);try{for(s.s();!(c=s.n()).done;){var f=c.value,h=this.color?this.color(f,n,o,u):void 0;if(h&&"none"!=h)if(this.diamond){i.fillStyle=h;var y=f.x,p=f.y;i.beginPath(),i.moveTo(y-l,p),i.lineTo(y,p+l),i.lineTo(y+l,p),i.lineTo(y,p-l),i.closePath(),i.fill()}else{var v=this.width?this.width(f,n,o,u):void 0;if(!v||v<=0)continue;var d=this.length?this.length(f,n,o,u):void 0;if(!d||d<=0)continue;var b=.5*d;i.lineWidth=v,i.strokeStyle=h;var m=f.x,g=f.y;i.beginPath(),"v"===f.or?(i.moveTo(m,g-b),i.lineTo(m,g+b)):(i.moveTo(m-b,g),i.lineTo(m+b,g)),i.stroke()}}}catch(t){s.e(t)}finally{s.f()}this.updateLegends({style:this,resolution:n,z:o,viewScale:u})}}}],o=[{key:"buildSides",value:function(t,e){var r=arguments.length>5&&void 0!==arguments[5]?arguments[5]:.01,n=[],o=arguments.length>4&&void 0!==arguments[4]&&!arguments[4]?0:e/2;r*=e;var i=Math.abs;t.sort((function(t,e){return e.x==t.x?t.y-e.y:t.x-e.x}));for(var a=t[0],u=1;u<t.length;u++){var c=t[u];i(a.y+e-c.y)<r&&i(a.x-c.x)<r?n.push({or:"h",x:a.x+o,y:c.y,c1:a,c2:c}):(n.push({or:"h",x:a.x+o,y:a.y+e,c1:a,c2:void 0}),n.push({or:"h",x:c.x+o,y:c.y,c1:void 0,c2:c})),a=c}t.sort((function(t,e){return e.y==t.y?t.x-e.x:t.y-e.y})),a=t[0];for(var l=1;l<t.length;l++){var s=t[l];i(a.x+e-s.x)<r&&i(a.y-s.y)<r?n.push({or:"v",x:a.x+e,y:a.y+o,c1:a,c2:s}):(n.push({or:"v",x:a.x+e,y:a.y+o,c1:a,c2:void 0}),n.push({or:"v",x:s.x,y:s.y+o,c1:void 0,c2:s})),a=s}return n}}],n&&$i(r.prototype,n),o&&$i(r,o),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n,o}(Sn);function Zi(t,e){let r;if(void 0===e)for(const e of t)null!=e&&(r<e||void 0===r&&e>=e)&&(r=e);else{let n=-1;for(let o of t)null!=(o=e(o,++n,t))&&(r<o||void 0===r&&o>=o)&&(r=o)}return r}function Ji(t){return Ji="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ji(t)}function Ki(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(Ki=function(){return!!t})()}function Qi(t){return Qi=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Qi(t)}function ta(t,e){return ta=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},ta(t,e)}var ea=function(t){function e(){var t,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),t=function(t,e,r){return e=Qi(e),function(t,e){if(e&&("object"==Ji(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Ki()?Reflect.construct(e,r||[],Qi(t).constructor):e.apply(t,r))}(this,e,[r]);var n=r.elevation;t.viewScale=function(t){return Zi(t,(function(t){return(e=t).c1&&e.c2&&e.c1[n]&&e.c2[n]?e.v=+e.c2[n]-e.c1[n]:e.v=0,e.v;var e}))};var o=r.colorTopLeft||"255,255,255",i=r.colorBottomRight||"0,0,0";if(null!=r.revert&&r.revert){var a=o;o=i,i=a}var u=r.scale;return t.color=function(t,e,r,n){if(0!=t.v){var a=Math.abs(t.v/n);return u&&(a=u(a)),t.v<0&&"h"===t.or||t.v>0&&"v"===t.or?"rgba("+o+","+a+")":"rgba("+i+","+a+")"}},t.width=function(t,e,n){return r.width|Math.min(2*n,e/3)},t.diamond=r.diamond,t}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&ta(t,e)}(e,t),r=e,Object.defineProperty(r,"prototype",{writable:!1}),r;var r}(Vi);function ra(t){return ra="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ra(t)}function na(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function oa(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,ia(n.key),n)}}function ia(t){var e=function(t){if("object"!=ra(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=ra(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==ra(e)?e:e+""}function aa(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(aa=function(){return!!t})()}function ua(t){return ua=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},ua(t)}function ca(t,e){return ca=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},ca(t,e)}var la=function(t){function e(t){var r;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),r=function(t,e,r){return e=ua(e),function(t,e){if(e&&("object"==ra(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,aa()?Reflect.construct(e,r||[],ua(t).constructor):e.apply(t,r))}(this,e,[t]),t=t||{},r.code=t.code,r.color=t.color,r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&ca(t,e)}(e,t),r=e,n=[{key:"draw",value:function(t,e,r){this.filter&&(t=t.filter(this.filter));var n=e.view.z,o=e.offscreenCtx,i=Vi.buildSides(t,r);if(0!=i.length){var a=this.viewScale?this.viewScale(i,r,n):void 0;o.lineCap="butt";var u,c=.5*r,l=function(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(t){if("string"==typeof t)return na(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?na(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(u)throw i}}}}(i);try{for(l.s();!(u=l.n()).done;){var s=u.value,f=s.c1?this.code(s.c1,r,n):void 0,h=s.c2?this.code(s.c2,r,n):void 0;if(f!=h){var y=this.width?this.width(s,r,n,a):void 0;if(y&&!(y<=0)){var p=.5*y;o.lineWidth=y,"h"===s.or?(h&&(o.beginPath(),o.strokeStyle=this.color[h],o.moveTo(s.x-c,s.y+p),o.lineTo(s.x+c,s.y+p),o.stroke()),f&&(o.beginPath(),o.strokeStyle=this.color[f],o.moveTo(s.x-c,s.y-p),o.lineTo(s.x+c,s.y-p),o.stroke())):(h&&(o.beginPath(),o.strokeStyle=this.color[h],o.moveTo(s.x+p,s.y-c),o.lineTo(s.x+p,s.y+c),o.stroke()),f&&(o.beginPath(),o.strokeStyle=this.color[f],o.moveTo(s.x-p,s.y-c),o.lineTo(s.x-p,s.y+c),o.stroke()))}}}}catch(t){l.e(t)}finally{l.f()}this.updateLegends({style:this,resolution:r,z:n,viewScale:a})}}}],n&&oa(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(Vi);const sa=function t(e){function r(t,r){var n,o;return t=null==t?0:+t,r=null==r?1:+r,function(){var i;if(null!=n)i=n,n=null;else do{n=2*e()-1,i=2*e()-1,o=n*n+i*i}while(!o||o>1);return t+r*i*Math.sqrt(-2*Math.log(o)/o)}}return r.source=t,r}(Math.random);function fa(t,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=document.createElement("canvas");n.setAttribute("width",t),n.setAttribute("height",e);var o=r&&2==+r.version?"2":"",i=n.getContext("webgl"+o,r);if(!i)throw new Error("Unable to initialize WebGL"+o+". Your browser or machine may not support it.");return{canvas:n,gl:i,width:t,height:e}}function ha(t){var e=t.createProgram();if(null==e)throw new Error("Cannot create webGL program");for(var r=arguments.length,n=new Array(r>1?r-1:0),o=1;o<r;o++)n[o-1]=arguments[o];for(var i=0,a=n;i<a.length;i++){var u=a[i];t.attachShader(e,u)}if(t.linkProgram(e),t.getProgramParameter(e,t.LINK_STATUS))return e;throw new Error(t.getProgramInfoLog(e)||"Cannot create webGL program (2)")}function ya(t,e){var r=t.createShader(e);if(null==r)throw new Error("Cannot create webGL shader");for(var n=arguments.length,o=new Array(n>2?n-2:0),i=2;i<n;i++)o[i-2]=arguments[i];if(t.shaderSource(r,o.join("\n")),t.compileShader(r),t.getShaderParameter(r,t.COMPILE_STATUS))return r;throw new Error(t.getShaderInfoLog(r)||"Cannot create webGL shader (2)")}function pa(t){return pa="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},pa(t)}function va(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,da(n.key),n)}}function da(t){var e=function(t){if("object"!=pa(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=pa(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==pa(e)?e:e+""}var ba=function(){return t=function t(e,r){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.gl=e,this.sizePix=r||10,this.program=ha(e,ya(e,e.VERTEX_SHADER,"\n attribute vec2 pos;\n uniform float sizePix;\n uniform mat3 mat;\n attribute vec4 color;\n varying vec4 vColor;\n void main() {\n gl_Position = vec4(mat * vec3(pos, 1.0), 1.0);\n gl_PointSize = sizePix;\n vColor = color;\n }\n "),ya(e,e.FRAGMENT_SHADER,"\n precision mediump float;\n varying vec4 vColor;\n void main(void) {\n vec4 vColor_ = vColor / 255.0;\n vColor_[3] = 255.0 * vColor_[3];\n gl_FragColor = vColor_;\n }")),e.useProgram(this.program),this.verticesBuffer=[],this.colorsBuffer=[]},(e=[{key:"addPointData",value:function(t,e,r){var n=Pe(r);n&&(this.verticesBuffer.push(t,e),this.colorsBuffer.push(n.r,n.g,n.b,n.opacity))}},{key:"addPointData2",value:function(t,e,r,n,o,i){this.verticesBuffer.push(t,e),this.colorsBuffer.push(r,n,o,i)}},{key:"draw",value:function(t){var e=this.gl;e.bindBuffer(e.ARRAY_BUFFER,e.createBuffer()),e.bufferData(e.ARRAY_BUFFER,new Float32Array(this.verticesBuffer),e.STATIC_DRAW);var r=e.getAttribLocation(this.program,"pos");e.vertexAttribPointer(r,2,e.FLOAT,!1,0,0),e.enableVertexAttribArray(r),e.bindBuffer(e.ARRAY_BUFFER,e.createBuffer()),e.bufferData(e.ARRAY_BUFFER,new Float32Array(this.colorsBuffer),e.STATIC_DRAW);var n=e.getAttribLocation(this.program,"color");e.vertexAttribPointer(n,4,e.FLOAT,!1,0,0),e.enableVertexAttribArray(n),e.uniform1f(e.getUniformLocation(this.program,"sizePix"),1*this.sizePix),e.uniformMatrix3fv(e.getUniformLocation(this.program,"mat"),!1,new Float32Array(t)),e.clear(e.COLOR_BUFFER_BIT),e.drawArrays(e.POINTS,0,this.verticesBuffer.length/2)}}])&&va(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,e}();function ma(t){return ma="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ma(t)}function ga(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(t){if("string"==typeof t)return wa(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?wa(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(u)throw i}}}}function wa(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function xa(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,Sa(n.key),n)}}function Sa(t){var e=function(t){if("object"!=ma(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=ma(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==ma(e)?e:e+""}function Oa(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(Oa=function(){return!!t})()}function _a(t){return _a=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},_a(t)}function ja(t,e){return ja=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},ja(t,e)}var Pa=function(t){function e(t){var r;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),r=function(t,e,r){return e=_a(e),function(t,e){if(e&&("object"==ma(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Oa()?Reflect.construct(e,r||[],_a(t).constructor):e.apply(t,r))}(this,e,[t]),t=t||{},r.dotNumber=t.dotNumber||function(t,e){return e/100},r.color=t.color||function(){return"#FF5733"},r.dotSize=t.dotSize||function(t,e){return 1.5*e},r.sigma=t.sigma||function(t,e){return t/2},r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&ja(t,e)}(e,t),r=e,n=[{key:"draw",value:function(t,e,r){this.filter&&(t=t.filter(this.filter));var n=e.view.z,o=this.viewScale?this.viewScale(t,r,n):void 0,i=this.dotSize?this.dotSize(r,n,o):n,a=this.sigma?this.sigma(r,n,o):.4*r,u=sa(0,a),c=e.offscreenCtx;if(function(){try{var t=document.createElement("canvas");return!(!window.WebGLRenderingContext||!t.getContext("webgl")&&!t.getContext("experimental-webgl"))}catch(t){return!1}}()){var l=fa(e.w+"",e.h+"");if(!l)return void console.error("No webGL");var s,f=new ba(l.gl,i/n),h=r/2,y=ga(t);try{for(y.s();!(s=y.n()).done;){var p=s.value,v=this.color(p,r,n,o);if(v&&"none"!==v){var d=this.dotNumber(p,r,n,o),b=this.offset(p,r,n),m=p.x+b.dx+h,g=p.y+b.dy+h,w=Pe(v);if(!w)return;for(var x=0;x<=d;x++)f.addPointData2(m+u(),g+u(),w.r,w.g,w.b,w.opacity)}}}catch(t){y.e(t)}finally{y.f()}f.draw(e.getWebGLTransform()),e.initCanvasTransform(),c.drawImage(l.canvas,0,0)}else{var S,O=ga(t);try{for(O.s();!(S=O.n()).done;){var _=S.value,j=this.color(_,r,n,o);if(j&&"none"!==j){c.fillStyle=j;for(var P=this.dotNumber(_,r,n,o),k=this.offset(_,r,n),E=_.x+k.dx+r/2,T=_.y+k.dy+r/2,C=0;C<=P;C++)c.fillRect(E+u(),T+u(),i,i)}}}catch(t){O.e(t)}finally{O.f()}}this.updateLegends({style:this,resolution:r,z:n,viewScale:o})}}],n&&xa(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(Sn);function ka(t){return ka="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ka(t)}function Ea(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function Ta(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,Ca(n.key),n)}}function Ca(t){var e=function(t){if("object"!=ka(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=ka(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==ka(e)?e:e+""}function Aa(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(Aa=function(){return!!t})()}function Ma(t){return Ma=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Ma(t)}function La(t,e){return La=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},La(t,e)}var za=function(t){function e(){var t,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),(t=function(t,e,r){return e=Ma(e),function(t,e){if(e&&("object"==ka(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Aa()?Reflect.construct(e,r||[],Ma(t).constructor):e.apply(t,r))}(this,e,[r])).classifier=r.classifier||function(t,e,r){return function(t){return 1}},t.width=r.width||function(t,e,r,n,o){return Math.abs(e)*n},t.length=r.length||function(t,e,r,n){return e},t.colorDark=r.colorDark||"#111",t.colorBright=r.colorBright||"#ddd",t.revert=null!=r.revert&&r.revert,t.diamond=r.diamond,t.limit=r.limit||"steep",t}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&La(t,e)}(e,t),r=e,n=[{key:"draw",value:function(t,e,r){var n=this;this.filter&&(t=t.filter(this.filter));var o=e.view.z,i=e.offscreenCtx,a=this.classifier(t,r,o),u=function(t){var e=t.c1?a(t.c1):void 0,r=t.c2?a(t.c2):void 0;if(void 0!==e||void 0!==r)return void 0===e?"none"==n.limit?void 0:"steep"==n.limit?r:Math.sign(r):void 0===r?"none"==n.limit?void 0:"steep"==n.limit?-e:Math.sign(-e):r-e},c=Vi.buildSides(t,r);if(0!=c.length){var l=this.viewScale?this.viewScale(c,r,o):void 0;i.lineCap="butt";var s,f=.5*r,h=this.revert?this.colorBright:this.colorDark,y=this.revert?this.colorDark:this.colorBright,p=function(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(t){if("string"==typeof t)return Ea(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Ea(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(u)throw i}}}}(c);try{for(p.s();!(s=p.n()).done;){var v=s.value,d=u(v);if(void 0!==d&&0!==d){var b=d<0&&"h"===v.or||d>0&&"v"===v.or?y:h;if(b&&"none"!=b)if(this.diamond){i.fillStyle=b;var m=v.x,g=v.y;i.beginPath(),i.moveTo(m-f,g),i.lineTo(m,g+f),i.lineTo(m+f,g),i.lineTo(m,g-f),i.closePath(),i.fill()}else{var w=this.width?this.width(v,d,r,o,l):void 0;if(!w||w<=0)continue;var x=this.length?this.length(v,r,o,l):void 0;if(!x||x<=0)continue;var S=.5*x;i.lineWidth=w,i.strokeStyle=b;var O=v.x,_=v.y;i.beginPath(),"v"===v.or?(i.moveTo(O,_-S),i.lineTo(O,_+S)):(i.moveTo(O-S,_),i.lineTo(O+S,_)),i.stroke()}}}}catch(t){p.e(t)}finally{p.f()}this.updateLegends({style:this,resolution:r,z:o,viewScale:l})}}}],n&&Ta(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(Sn);function Ra(t){return Ra="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ra(t)}function Ia(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,Fa(n.key),n)}}function Fa(t){var e=function(t){if("object"!=Ra(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=Ra(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Ra(e)?e:e+""}function Ba(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(Ba=function(){return!!t})()}function Na(t){return Na=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Na(t)}function Da(t,e){return Da=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Da(t,e)}var Ga=function(t){function e(t){var r;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),r=function(t,e,r){return e=Na(e),function(t,e){if(e&&("object"==Ra(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Ba()?Reflect.construct(e,r||[],Na(t).constructor):e.apply(t,r))}(this,e,[t]),t=t||{},r.code=t.code,t.color=t.color||void 0;var n=Object.keys(t.color);r.catToI={};for(var o=0;o<n.length;o++)r.catToI[n[o]]=o+"";r.colors=[];for(var i=0,a=n;i<a.length;i++){var u=a[i];r.colors.push(t.color[""+u])}return r.size=t.size,r.cvWGL=void 0,r.programm=void 0,r.x=void 0,r.y=void 0,r.z=void 0,r.cellsNb=void 0,r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Da(t,e)}(e,t),r=e,n=[{key:"init",value:function(t,e){if(this.cvWGL=fa(t+"",e+""),this.cvWGL){var r=this.cvWGL.gl,n=ya(r,r.VERTEX_SHADER,"\n attribute vec2 pos;\n uniform float sizePix;\n uniform mat3 mat;\n attribute float i;\n varying float vi;\n void main() {\n gl_Position = vec4(mat * vec3(pos, 1.0), 1.0);\n gl_PointSize = sizePix;\n vi = i;\n }"),o=ya(r,r.FRAGMENT_SHADER,"\n precision highp float;\n varying float vi;\n uniform sampler2D colorLUT;\n uniform float lutSize;\n void main(void) {\n float idx = floor(vi + 0.5);\n float u = (idx + 0.5) / lutSize;\n gl_FragColor = texture2D(colorLUT, vec2(u, 0.5));\n }");this.program=ha(r,n,o),r.useProgram(this.program)}else console.error("No webGL")}},{key:"bindColors",value:function(){for(var t=this.cvWGL.gl,e=this.colors.length,r=new Uint8Array(4*e),n=0;n<e;n++){var o=Pe(this.colors[n]);r[4*n]=+o.r,r[4*n+1]=o.g,r[4*n+2]=o.b,r[4*n+3]=255*(null==o?void 0:o.opacity)}var i=t.createTexture();t.bindTexture(t.TEXTURE_2D,i),t.texImage2D(t.TEXTURE_2D,0,t.RGBA,e,1,0,t.RGBA,t.UNSIGNED_BYTE,r),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.NEAREST),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.NEAREST),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE);var a=t.getUniformLocation(this.program,"colorLUT"),u=t.getUniformLocation(this.program,"lutSize");t.uniform1i(a,0),t.uniform1f(u,e),t.activeTexture(t.TEXTURE0),t.bindTexture(t.TEXTURE_2D,i)}},{key:"bindVertices",value:function(t,e,r,n){for(var o,i=this.cvWGL.gl,a=e/2,u=t.length,c=[],l=[],s=0;s<u;s++){o=t[s];var f=this.code(o,e,r,n);if(null!=f){var h=this.catToI[f];isNaN(+h)?console.log("Unexpected category index: "+f+" "+h):(c.push(o.x+a,o.y+a),l.push(+h))}else console.log("Unexpected category: "+f)}i.bindBuffer(i.ARRAY_BUFFER,i.createBuffer()),i.bufferData(i.ARRAY_BUFFER,new Float32Array(c),i.STATIC_DRAW);var y=i.getAttribLocation(this.program,"pos");i.vertexAttribPointer(y,2,i.FLOAT,!1,0,0),i.enableVertexAttribArray(y),i.bindBuffer(i.ARRAY_BUFFER,i.createBuffer()),i.bufferData(i.ARRAY_BUFFER,new Float32Array(l),i.STATIC_DRAW);var p=i.getAttribLocation(this.program,"i");i.vertexAttribPointer(p,1,i.FLOAT,!1,0,0),i.enableVertexAttribArray(p)}},{key:"mapContentChanged",value:function(t,e){return(t.x!=this.x||t.y!=this.y||t.z!=this.z||this.cellsNb!=e)&&(this.x=t.x,this.y=t.y,this.z=t.z,this.cellsNb=e,!0)}},{key:"draw",value:function(t,e,r){this.filter&&(t=t.filter(this.filter));var n=e.view.z,o=this.viewScale?this.viewScale(t,r,n):void 0;this.cvWGL&&e.w==this.cvWGL.width&&e.h==this.cvWGL.height||(this.init(e.w,e.h),this.bindColors());var i=this.cvWGL.gl,a=this.cvWGL.canvas,u=this.size?this.size(r,n)/n:r/n+.2;i.uniform1f(i.getUniformLocation(this.program,"sizePix"),1*u),this.mapContentChanged(e.view,t.length)&&this.bindVertices(t,r,n,o),i.uniformMatrix3fv(i.getUniformLocation(this.program,"mat"),!1,new Float32Array(e.getWebGLTransform())),i.clear(i.COLOR_BUFFER_BIT),i.drawArrays(i.POINTS,0,t.length),e.initCanvasTransform(),e.offscreenCtx.drawImage(a,0,0),this.updateLegends({style:this,resolution:r,z:n})}}],n&&Ia(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(Sn);function Ua(t){return null===t?NaN:+t}function Wa(t,e,r=Ua){if((n=t.length)&&!isNaN(e=+e)){if(e<=0||n<2)return+r(t[0],0,t);if(e>=1)return+r(t[n-1],n-1,t);var n,o=(n-1)*e,i=Math.floor(o),a=+r(t[i],i,t);return a+(+r(t[i+1],i+1,t)-a)*(o-i)}}function $a(t,e){return null==t||null==e?NaN:t<e?-1:t>e?1:t>=e?0:NaN}function Ya(t,e){return null==t||null==e?NaN:e<t?-1:e>t?1:e>=t?0:NaN}function Ha(t){let e,r,n;function o(t,n,o=0,i=t.length){if(o<i){if(0!==e(n,n))return i;do{const e=o+i>>>1;r(t[e],n)<0?o=e+1:i=e}while(o<i)}return o}return 2!==t.length?(e=$a,r=(e,r)=>$a(t(e),r),n=(e,r)=>t(e)-r):(e=t===$a||t===Ya?t:Xa,r=t,n=t),{left:o,center:function(t,e,r=0,i=t.length){const a=o(t,e,r,i-1);return a>r&&n(t[a-1],e)>-n(t[a],e)?a-1:a},right:function(t,n,o=0,i=t.length){if(o<i){if(0!==e(n,n))return i;do{const e=o+i>>>1;r(t[e],n)<=0?o=e+1:i=e}while(o<i)}return o}}}function Xa(){return 0}const qa=Ha($a),Va=qa.right,Za=(qa.left,Ha(Ua).center,Va);function Ja(t,e){switch(arguments.length){case 0:break;case 1:this.range(t);break;default:this.range(e).domain(t)}return this}function Ka(){var t,e=[],r=[],n=[];function o(){var t=0,o=Math.max(1,r.length);for(n=new Array(o-1);++t<o;)n[t-1]=Wa(e,t/o);return i}function i(e){return null==e||isNaN(e=+e)?t:r[Za(n,e)]}return i.invertExtent=function(t){var o=r.indexOf(t);return o<0?[NaN,NaN]:[o>0?n[o-1]:e[0],o<n.length?n[o]:e[e.length-1]]},i.domain=function(t){if(!arguments.length)return e.slice();e=[];for(let r of t)null==r||isNaN(r=+r)||e.push(r);return e.sort($a),o()},i.range=function(t){return arguments.length?(r=Array.from(t),o()):r.slice()},i.unknown=function(e){return arguments.length?(t=e,i):t},i.quantiles=function(){return n.slice()},i.copy=function(){return Ka().domain(e).range(r).unknown(t)},Ja.apply(i,arguments)}var Qa=function(t){var e=t.valueFunction,r=t.minValue||0,n=t.minSizePix||0,o=t.maxSizeFactor||1,i=t.stretching,a=t.range,u=t.domain,c=t.classNumber;return function(t,l,s){var f=u||[r,Zi(t,e)],h=a||[n*s,l*o],y=f[1]-f[0],p=f[0],v=h[1]-h[0],d=h[0];return function(t){return t=(t-p)/y,i&&(t=i(t)),c&&(t=1==t?1:Math.floor(t*c)/(c-1)),d+t*v}}},tu=function(t){var e=t.valueFunction,r=t.classNumber||12,n=t.minSizePix||1,o=t.maxSizeFactor||1,i=Ka();return function(t,a,u){i.domain(t.map(e));var c=n*u,l=a*o;return i.range(Array.from({length:r},(function(t,e){return c+e*(l-c)/(r-1)}))),i.breaks=i.quantiles(),i.values=i.range(),i}},eu=function(t){var e,r=t.valueFunction,n=t.stretching,o=t.colorScale||function(){return"purple"},i=null===(e=t.colors)||void 0===e?void 0:e.length;return t.colors&&i&&(o=function(e){return t.colors[1==e?i-1:Math.floor(e*i)]}),function(e){if(0!=e.length&&e){var a=function(t,e){let r,n;if(void 0===e)for(const e of t)null!=e&&(void 0===r?e>=e&&(r=n=e):(r>e&&(r=e),n<e&&(n=e)));else{let o=-1;for(let i of t)null!=(i=e(i,++o,t))&&(void 0===r?i>=i&&(r=n=i):(r>i&&(r=i),n<i&&(n=i)))}return[r,n]}(e,r);if(null!=a[0]){var u=a[1]-a[0],c=function(t){return t=(t-a[0])/u,n&&(t=n(t)),o(t)};if(c.invert=function(t){return n&&(t=n.invert(t)),a[0]+t*u},t.colors&&i){c.breaks=[];for(var l=1;l<i;l++)c.breaks.push(c.invert(l/i))}return c}}}},ru=function(t){var e=t.valueFunction,r=t.classNumber||12,n=t.colors;t.colorScale&&(n=cu(t.colorScale,r)),n=n||Array.from({length:r},(function(t,e){return"rgb("+Math.floor(255*e/(r-1))+",150,150)"}));var o=Ka().range(n);return function(t){return o.domain(t.map(e)),o.breaks=o.quantiles(),o.colors=n,o}},nu=function(t){var e=t.valueFunction,r=t.classNumber||12,n=Ka().range(Array.from({length:r},(function(t,e){return e})));return function(t){return n.domain(t.map(e)),n.breaks=n.quantiles(),n}},ou=function(t){return function(e,r,n){var o={};for(var i in t)o[i]=t[i](e,r,n);return o}};function iu(t){var e=t.length,r=function(r){for(var n=0;n<e;){if(r<=t[n])return n;n++}return n};return r.breaks=t,r}function au(t,e,r){for(var n=[],o=(e-t)/r,i=1;i<r;i++)n.push(t+i*o);return iu(n)}function uu(t,e){var r=iu(t),n=function(t){return e[r(t)]};return n.breaks=t,n.colors=e,n}function cu(t,e){if(1==e)return[t(.5)];for(var r=[],n=0;n<e;n++)r.push(t(n/(e-1)));return r}function lu(t){return lu="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},lu(t)}function su(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(t){if("string"==typeof t)return fu(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?fu(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(u)throw i}}}}function fu(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function hu(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(hu=function(){return!!t})()}function yu(t){return yu=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},yu(t)}function pu(t,e){return pu=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},pu(t,e)}function vu(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function du(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,mu(n.key),n)}}function bu(t,e,r){return e&&du(t.prototype,e),r&&du(t,r),Object.defineProperty(t,"prototype",{writable:!1}),t}function mu(t){var e=function(t){if("object"!=lu(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=lu(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==lu(e)?e:e+""}var gu=function(){return bu((function t(){vu(this,t)}),null,[{key:"get",value:function(t,e,r){var n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};(n=n||{}).colorDark=n.colorDark||"#333",n.colorBright=n.colorBright||"#aaa";for(var o=iu(e),i=function(e){return o(t(e))},a={},u=0;u<r.length;u++)a[u+""]=r[u];var c=new Ga({code:i,color:a}),l=new za({classifier:function(){return i},colorDark:n.colorDark,colorBright:n.colorBright,diamond:n.diamond});return[c,new Ko({strokeColor:function(){return"#666"},strokeWidth:function(t,e,r){return.2*r},filter:n.filter}),l,new wu({colDark:n.colDark,colBright:n.colBright,filter:n.filter})]}},{key:"getCategory",value:function(t,e,r){return(r=r||{}).colDark=r.colDark||"#333",r.colBright=r.colBright||"#aaa",[new Ga({code:t,color:e}),new Ko({strokeColor:function(){return"#666"},strokeWidth:function(t,e,r){return.2*r}}),new wu({colDark:r.colDark,colBright:r.colBright})]}}])}(),wu=function(t){function e(t){var r,n,o,i;return vu(this,e),n=this,i=[t],o=yu(o=e),r=function(t,e){if(e&&("object"==lu(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(n,hu()?Reflect.construct(o,i||[],yu(n).constructor):o.apply(n,i)),t=t||{},r.colDark=t.colDark||"#333",r.colBright=t.colBright||"#aaa",r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&pu(t,e)}(e,t),bu(e,[{key:"draw",value:function(t,e,r){this.filter&&(t=t.filter(this.filter));var n=e.offscreenCtx;n.lineWidth=.6*e.view.z,n.strokeStyle=this.colDark;var o,i=su(t);try{for(i.s();!(o=i.n()).done;){var a=o.value;n.beginPath(),n.arc(a.x+.5*r,a.y+.5*r,.55*r*.5,Math.PI/4,-Math.PI*(3/4),!0),n.stroke()}}catch(t){i.e(t)}finally{i.f()}n.strokeStyle=this.colBright;var u,c=su(t);try{for(c.s();!(u=c.n()).done;){var l=u.value;n.beginPath(),n.arc(l.x+.5*r,l.y+.5*r,.55*r*.5,Math.PI/4,-Math.PI*(3/4),!1),n.stroke()}}catch(t){c.e(t)}finally{c.f()}}}])}(Sn);function xu(t){return xu="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},xu(t)}function Su(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,Ou(n.key),n)}}function Ou(t){var e=function(t){if("object"!=xu(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=xu(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==xu(e)?e:e+""}var _u=function(){return t=function t(e,r,n){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:10,i=arguments.length>4&&void 0!==arguments[4]?arguments[4]:void 0;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.gl=e;var a=ya(e,e.VERTEX_SHADER,"\n attribute vec2 pos;\n uniform float sizePix;\n uniform mat3 mat;\n\n attribute float t;\n varying float vt;\n\n void main() {\n gl_Position = vec4(mat * vec3(pos, 1.0), 1.0);\n gl_PointSize = sizePix;\n vt = t;\n }\n "),u=[];u.push("precision mediump float;"),u.push("varying float vt;"),u.push("uniform float alpha;");for(var c=0;c<r.length;c++)u.push("uniform vec4 c"+c+";");if(u.push("void main(void) {"),n?"pow"==n.fun?u.push(" float t = pow(vt, alpha);"):"powInv"==n.fun?u.push(" float t = 1.0-pow(1.0-vt, 1.0/alpha);"):"exp"==n.fun?u.push(0==n.alpha?"float t = vt;":" float t = (exp(vt * alpha) - 1.0) / (exp(alpha) - 1.0);"):"log"==n.fun?u.push(0==n.alpha?"float t = vt;":" float t = 1.0 - (1.0 / alpha) * log(exp(alpha) * (1.0 - vt) + vt);"):"circle"==n.fun?0==n.alpha?u.push(" float t = vt;"):1==n.alpha?u.push(" float t = sqrt(vt * (2.0 - vt));"):(u.push(" float a = alpha / (1.0 - alpha);"),u.push(" float t = sqrt(1.0 / (a * a) + vt * ( 2.0/a + 2.0 - vt )) - 1.0 / a;")):"circleInv"==n.fun?0==n.alpha?u.push(" float t = vt;"):1==n.alpha?u.push(" float t = 1.0 - sqrt((1.0 - vt) * (1.0 + vt));"):(u.push(" float a = alpha / (1.0 - alpha);"),u.push(" float t = 1.0 - sqrt(1.0 / (a * a) + (1.0-vt) * ( 2.0/a + 1.0 + vt )) + 1.0 / a;")):(console.error("Unexpected stretching function code: "+n.fun),u.push(" float t = vt;")):u.push(" float t = vt;"),1==r.length)u.push(" vec4 cI=c0;"),u.push(" vec4 cF=c0;");else if(2==r.length)u.push(" vec4 cI=c0;"),u.push(" vec4 cF=c1;");else{var l=r.length-1,s=l+".0";u.push(" vec4 cI;"),u.push(" vec4 cF;"),u.push(" if(t<1.0/"+s+") { cI=c0; cF=c1; t=t*"+s+"; }");for(var f=2;f<l;f++)u.push(" else if(t<"+f+".0/"+s+") { cI=c"+(f-1)+"; cF=c"+f+"; t="+s+"*t-"+(f-1)+".0; }");u.push(" else { cI=c"+(l-1)+"; cF=c"+l+"; t="+s+"*t-"+(l-1)+".0; }")}1==r.length?u.push(" gl_FragColor = vec4(c0[0], c0[1], c0[2], c0[3]);}"):u.push(" gl_FragColor = mix(cI, cF, t);}");var h=u.join(""),y=ya(e,e.FRAGMENT_SHADER,h);this.program=ha(e,a,y),e.useProgram(this.program),e.uniform1f(e.getUniformLocation(this.program,"sizePix"),1*o),e.uniform1f(e.getUniformLocation(this.program,"alpha"),n?1*n.alpha:0);for(var p=0;p<r.length;p++){var v=Pe(r[p]),d=v.opacity;1==v.opacity&&null!=i&&(d=i);var b=[+v.r/255,+v.g/255,+v.b/255,+d];e.uniform4fv(e.getUniformLocation(this.program,"c"+p),b)}},e=[{key:"draw",value:function(t,e,r){var n=this.gl,o=this.program;n.bindBuffer(n.ARRAY_BUFFER,n.createBuffer()),n.bufferData(n.ARRAY_BUFFER,new Float32Array(t),n.STATIC_DRAW);var i=n.getAttribLocation(o,"pos");n.vertexAttribPointer(i,2,n.FLOAT,!1,0,0),n.enableVertexAttribArray(i),n.bindBuffer(n.ARRAY_BUFFER,n.createBuffer()),n.bufferData(n.ARRAY_BUFFER,new Float32Array(e),n.STATIC_DRAW);var a=n.getAttribLocation(o,"t");n.vertexAttribPointer(a,1,n.FLOAT,!1,0,0),n.enableVertexAttribArray(a),n.uniformMatrix3fv(n.getUniformLocation(o,"mat"),!1,new Float32Array(r)),n.clear(n.COLOR_BUFFER_BIT),n.drawArrays(n.POINTS,0,t.length/2)}}],e&&Su(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,e}();function ju(t){return ju="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ju(t)}function Pu(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function ku(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,Eu(n.key),n)}}function Eu(t){var e=function(t){if("object"!=ju(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=ju(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==ju(e)?e:e+""}function Tu(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(Tu=function(){return!!t})()}function Cu(t){return Cu=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Cu(t)}function Au(t,e){return Au=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Au(t,e)}var Mu=function(t){function e(t){var r;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),r=function(t,e,r){return e=Cu(e),function(t,e){if(e&&("object"==ju(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Tu()?Reflect.construct(e,r||[],Cu(t).constructor):e.apply(t,r))}(this,e,[t]),t=t||{},r.tFun=t.tFun,r.stretching=t.stretching,r.colors=t.colors||["rgb(158, 1, 66)","rgb(248, 142, 83)","rgb(251, 248, 176)","rgb(137, 207, 165)","rgb(94, 79, 162)"].reverse(),t.color&&(r.colors=[t.color(0),t.color(.2),t.color(.4),t.color(.6),t.color(.8),t.color(1)]),r.opacity=t.opacity,r.size=t.size,r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Au(t,e)}(e,t),r=e,n=[{key:"draw",value:function(t,e,r){this.filter&&(t=t.filter(this.filter));var n=e.view.z,o=this.viewScale?this.viewScale(t,r,n):void 0,i=fa(e.w+"",e.h+"",null!=this.opacity?{premultipliedAlpha:!1}:void 0);if(i){var a,u=r/2,c=[],l=[],s=function(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(t){if("string"==typeof t)return Pu(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Pu(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(u)throw i}}}}(t);try{for(s.s();!(a=s.n()).done;){var f=a.value,h=this.tFun(f,r,n,o);null!=h&&null!=h&&(c.push(f.x+u,f.y+u),l.push(h>1?1:h<0?0:h))}}catch(t){s.e(t)}finally{s.f()}var y=this.size?this.size(r,n):r+.2*n,p=this.opacity?this.opacity(r,n):void 0;new _u(i.gl,this.colors,this.stretching,y/n,p).draw(c,l,e.getWebGLTransform()),e.initCanvasTransform(),e.offscreenCtx.drawImage(i.canvas,0,0),this.updateLegends({style:this,resolution:r,z:n,viewScale:o})}else console.error("No webGL")}}],n&&ku(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(Sn);function Lu(t){return Lu="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Lu(t)}function zu(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function Ru(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,Iu(n.key),n)}}function Iu(t){var e=function(t){if("object"!=Lu(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=Lu(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Lu(e)?e:e+""}function Fu(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(Fu=function(){return!!t})()}function Bu(t){return Bu=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Bu(t)}function Nu(t,e){return Nu=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Nu(t,e)}var Du=function(t){function e(t){var r;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),r=function(t,e,r){return e=Bu(e),function(t,e){if(e&&("object"==Lu(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Fu()?Reflect.construct(e,r||[],Bu(t).constructor):e.apply(t,r))}(this,e,[t]),t=t||{},r.color=t.color||function(){return"#EA6BAC"},r.mosaicFactor=t.mosaicFactor||.15,r.shadowFactor=t.shadowFactor||.2,r.shadowColor=t.shadowColor||"#555",r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Nu(t,e)}(e,t),r=e,n=[{key:"draw",value:function(t,e,r){this.filter&&(t=t.filter(this.filter));var n=e.view.z,o=e.offscreenCtx,i=this.viewScale?this.viewScale(t,r,n):void 0;o.strokeStyle=this.shadowColor,o.lineWidth=this.shadowFactor*r,o.lineJoin="round",o.lineCap="butt";var a,u=r*this.mosaicFactor,c=function(){return{x:Math.random()*u,y:Math.random()*u}},l=function(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(t){if("string"==typeof t)return zu(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?zu(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(u)throw i}}}}(t);try{for(l.s();!(a=l.n()).done;){var s=a.value,f=this.color?this.color(s,r,n,i):void 0;if(f&&"none"!==f){o.fillStyle=f;var h=this.offset(s,r,n),y=c(),p=c(),v=c(),d=c();this.shadowFactor>0&&(o.beginPath(),o.moveTo(s.x+h.dx+y.x,s.y+h.dy+y.y),o.lineTo(s.x+h.dx+r-v.x,s.y+h.dy+v.y),o.lineTo(s.x+h.dx+r-d.x,s.y+h.dy+r-d.y),o.stroke()),o.beginPath(),o.moveTo(s.x+h.dx+y.x,s.y+h.dy+y.y),o.lineTo(s.x+h.dx+r-v.x,s.y+h.dy+v.y),o.lineTo(s.x+h.dx+r-d.x,s.y+h.dy+r-d.y),o.lineTo(s.x+h.dx+p.x,s.y+h.dy+r-p.y),o.fill()}}}catch(t){l.e(t)}finally{l.f()}this.updateLegends({style:this,resolution:r,z:n,viewScale:i})}}],n&&Ru(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(Sn);function Gu(t){return Gu="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Gu(t)}function Uu(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function Wu(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,$u(n.key),n)}}function $u(t){var e=function(t){if("object"!=Gu(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=Gu(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Gu(e)?e:e+""}function Yu(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(Yu=function(){return!!t})()}function Hu(t){return Hu=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Hu(t)}function Xu(t,e){return Xu=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Xu(t,e)}var qu=function(t){function e(t){var r;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),r=function(t,e,r){return e=Hu(e),function(t,e){if(e&&("object"==Gu(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Yu()?Reflect.construct(e,r||[],Hu(t).constructor):e.apply(t,r))}(this,e,[t]),t=t||{},r.color=t.color||function(){return"#EA6BAC"},r.size=t.size||function(t,e){return e},r.shape=t.shape||function(){return"o"},r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Xu(t,e)}(e,t),r=e,n=[{key:"draw",value:function(t,e,r){this.filter&&(t=t.filter(this.filter));var n,o=e.view.z,i=e.offscreenCtx,a=this.viewScale?this.viewScale(t,r,o):void 0,u=.5*r,c=function(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(t){if("string"==typeof t)return Uu(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Uu(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(u)throw i}}}}(t);try{for(c.s();!(n=c.n()).done;){var l=n.value,s=this.color?this.color(l,r,o,a):void 0;if(s&&"none"!==s){i.fillStyle=s;var f=this.size(l,r,o,a),h=(f=f<0?0:f>1?1:f)*u,y=this.shape?this.shape(l):"o";if("none"!==y){var p=l.x+u,v=l.y+u;if("p"===y)i.beginPath(),i.moveTo(p,v+u),i.lineTo(p+h,v+h),i.lineTo(p+u,v),i.lineTo(p+h,v-h),i.lineTo(p,v-u),i.lineTo(p-h,v-h),i.lineTo(p-u,v),i.lineTo(p-h,v+h),i.fill();else{if("o"!==y)throw new Error("Unexpected shape:"+y);i.beginPath(),i.moveTo(p,v+h),i.lineTo(p+u,v+u),i.lineTo(p+h,v),i.lineTo(p+u,v-u),i.lineTo(p,v-h),i.lineTo(p-u,v-u),i.lineTo(p-h,v),i.lineTo(p-u,v+u),i.fill()}}}}}catch(t){c.e(t)}finally{c.f()}this.updateLegends({style:this,resolution:r,z:o,viewScale:a})}}],n&&Wu(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(Sn);function Vu(t){return Vu="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Vu(t)}function Zu(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(t){if("string"==typeof t)return Ju(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Ju(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(u)throw i}}}}function Ju(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function Ku(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,Qu(n.key),n)}}function Qu(t){var e=function(t){if("object"!=Vu(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=Vu(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Vu(e)?e:e+""}function tc(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(tc=function(){return!!t})()}function ec(t){return ec=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},ec(t)}function rc(t,e){return rc=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},rc(t,e)}var nc=function(t){function e(t){var r;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),r=function(t,e,r){return e=ec(e),function(t,e){if(e&&("object"==Vu(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,tc()?Reflect.construct(e,r||[],ec(t).constructor):e.apply(t,r))}(this,e,[t]),t=t||{},r.ts=t.ts,r.noData=t.noData||function(t){return void 0===t||""==t||null===t||isNaN(+t)},r.offsetX=t.offsetX||function(t,e,r){return 0},r.width=t.width||function(t,e,r){return e},r.offsetY=t.offsetY||function(t,e,r){return 0},r.height=t.height||function(t,e,r){return e},r.anchorModeY=t.anchorModeY||function(t,e,r){return"center"},r.lineWidth=t.lineWidth||function(t,e,r,n){return 1.5*n},r.color=t.color||function(){return"black"},r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&rc(t,e)}(e,t),r=e,n=[{key:"draw",value:function(t,e,r){var n=this;this.filter&&(t=t.filter(this.filter));var o,i,a=e.view.z,u=e.offscreenCtx,c=this.viewScale?this.viewScale(t,r,a):void 0,l=function(t){var e,r,o,i=Zu(n.ts);try{for(i.s();!(o=i.n()).done;){var a=t[o.value];null!=a&&((null==e||a<e)&&(e=a),(null==r||a>r)&&(r=a))}}catch(t){i.e(t)}finally{i.f()}if(null!=e)return r-e},s=Zu(t);try{for(s.s();!(i=s.n()).done;){var f=l(i.value);null!=f&&(null==o||f>o)&&(o=f)}}catch(t){s.e(t)}finally{s.f()}if(o){var h=this.ts.length;u.lineCap="butt";var y,p=Zu(t);try{for(p.s();!(y=p.n()).done;){var v=y.value,d=this.lineWidth?this.lineWidth(v,r,a,c):void 0;if(d&&!(d<0)){var b=this.color?this.color(v,r,a,c):void 0;if(b){var m=this.offsetX?this.offsetX(v,r,a):0;if(null!=m&&!isNaN(m)){var g=this.width?this.width(v,r,a):r;if(null!=g&&!isNaN(g)){var w=this.offsetY?this.offsetY(v,r,a):0;if(null!=w&&!isNaN(w)){var x=this.height?this.height(v,r,a):r;if(null!=x&&!isNaN(x)){var S=this.anchorModeY?this.anchorModeY(v,r,a):"center";if(S){u.lineWidth=d,u.strokeStyle=b;var O=void 0,_=void 0;if("first"===S)O=v[this.ts[0]],_=0;else if("last"===S)O=v[this.ts[this.ts.length-1]],_=0;else if("bottom"===S){var j,P=Zu(this.ts);try{for(P.s();!(j=P.n()).done;){var k=+v[j.value];null!=k&&(null==O||k<O)&&(O=k)}}catch(t){P.e(t)}finally{P.f()}_=0}else if("top"===S){var E,T=Zu(this.ts);try{for(T.s();!(E=T.n()).done;){var C=+v[E.value];null!=C&&(null==O||C>O)&&(O=C)}}catch(t){T.e(t)}finally{T.f()}_=r}else{if("center"!==S){console.log("Unexpected anchorModeY: "+S);continue}var A,M=void 0,L=void 0,z=Zu(this.ts);try{for(z.s();!(A=z.n()).done;){var R=v[A.value];null!=R&&((null==M||R<M)&&(M=R),(null==L||R>L)&&(L=R))}}catch(t){z.e(t)}finally{z.f()}O=.5*(+L+ +M),_=r/2}var I=g/(h-1),F=v[this.ts[0]];this.noData(F)||(u.beginPath(),u.moveTo(v.x+m,v.y+_+(F-O)*x/o+w));for(var B=void 0,N=1;N<h;N++)B=v[this.ts[N]],this.noData(F)&&this.noData(B)||(!this.noData(F)&&this.noData(B)?u.stroke():this.noData(F)&&!this.noData(B)?(u.beginPath(),u.moveTo(v.x+N*I+m,v.y+_+(B-O)*x/o+w)):(u.lineTo(v.x+N*I+m,v.y+_+(B-O)*x/o+w),N==h-1&&u.stroke())),F=B}}}}}}}}}catch(t){p.e(t)}finally{p.f()}this.updateLegends({style:this,resolution:r,z:a,viewScale:c})}}}],n&&Ku(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(Sn);function oc(t){return oc="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},oc(t)}function ic(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,u=[],c=!0,l=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(u.push(n.value),u.length!==e);c=!0);}catch(t){l=!0,o=t}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(l)throw o}}return u}}(t,e)||uc(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ac(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=uc(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(u)throw i}}}}function uc(t,e){if(t){if("string"==typeof t)return cc(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?cc(t,e):void 0}}function cc(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function lc(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,sc(n.key),n)}}function sc(t){var e=function(t){if("object"!=oc(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=oc(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==oc(e)?e:e+""}function fc(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(fc=function(){return!!t})()}function hc(t){return hc=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},hc(t)}function yc(t,e){return yc=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},yc(t,e)}var pc=function(t){function e(t){var r;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),r=function(t,e,r){return e=hc(e),function(t,e){if(e&&("object"==oc(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,fc()?Reflect.construct(e,r||[],hc(t).constructor):e.apply(t,r))}(this,e,[t]),t=t||{},r.color=t.color,r.height=t.height||function(t,e,r,n){return.4*e},r.angle=null!=t.angle?t.angle:50,r.cornerLineStrokeColor=t.cornerLineStrokeColor||function(t,e,r,n){return"#999"},r.cornerLineWidth=t.cornerLineWidth||function(t,e,r,n){return n%90==0?0:.8*r},r.sVert=null==t.sVert||t.sVert,r.sHor=null==t.sHor||t.sHor,r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&yc(t,e)}(e,t),r=e,n=[{key:"draw",value:function(t,e,r){var n=this;this.filter&&(t=t.filter(this.filter));var o=e.view.z,i=e.offscreenCtx,a=this.viewScale?this.viewScale(t,r,o):void 0,u=Object.keys(this.color),c=r/2,l=this.offset(void 0,r,o),s=l.dx,f=l.dy,h=Vi.buildSides(t,r,this.angle%180!=90&&this.sVert,this.angle%180!=0&&this.sHor);if(0!=h.length){var y=this.angle*Math.PI/180,p=Math.cos(y),v=Math.sin(y),d=Math.abs(this.angle)<90?e.extGeo.xMin:e.extGeo.xMax,b=this.angle<0?e.extGeo.yMax:e.extGeo.yMin;h.sort((function(t,e){return Math.hypot(e.x-d,e.y-b)-Math.hypot(t.x-d,t.y-b)}));var m=function(t){if(t){var e=n.cornerLineWidth?n.cornerLineWidth(t,r,o,n.angle):.8*o;if(0!=e){i.strokeStyle=n.cornerLineStrokeColor?n.cornerLineStrokeColor(t,r,o,n.angle):"#333",i.lineWidth=e;var u=n.height(t,r,o,a);i.beginPath(),i.moveTo(t.x+c+s,t.y+c+f),i.lineTo(t.x+c+u*p+s,t.y+c+u*v+f),i.stroke()}}};i.lineCap="round";var g,w=ac(h);try{for(w.s();!(g=w.n()).done;){var x=g.value,S=x.c1,O=x.c2,_=x.x,j=x.y,P=S?this.height(S,r,o,a):0,k=O?this.height(O,r,o,a):0,E=vc(S,u),T=vc(O,u);if(0!=E||0!=T)for(var C=0,A=0,M=0,L=Object.entries(this.color);M<L.length;M++){var z=ic(L[M],2),R=z[0],I=z[1],F=S?+S[R]:0,B=O?+O[R]:0;if(0!=F||0!=B){var N=P*C/E||0,D=P*(C+F)/E||0,G=k*A/T||0,U=k*(A+B)/T||0;i.beginPath(),"h"==x.or?(i.moveTo(_+N*p+s,j-c+N*v+f),i.lineTo(_+G*p+s,j+c+G*v+f),i.lineTo(_+U*p+s,j+c+U*v+f),i.lineTo(_+D*p+s,j-c+D*v+f)):(i.moveTo(_-c+N*p+s,j+N*v+f),i.lineTo(_+c+G*p+s,j+G*v+f),i.lineTo(_+c+U*p+s,j+U*v+f),i.lineTo(_-c+D*p+s,j+D*v+f)),i.fillStyle=I,i.fill(),C+=F,A+=B,m(S),m(O)}}}}catch(t){w.e(t)}finally{w.f()}this.updateLegends({style:this,resolution:r,z:o,viewScale:a})}}}],n&&lc(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(Sn),vc=function(t,e){if(!t)return 0;var r,n=0,o=ac(e);try{for(o.s();!(r=o.n()).done;){var i=t[r.value];i&&(n+=+i)}}catch(t){o.e(t)}finally{o.f()}return n||0};function dc(t){return dc="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},dc(t)}function bc(){bc=function(){return e};var t,e={},r=Object.prototype,n=r.hasOwnProperty,o=Object.defineProperty||function(t,e,r){t[e]=r.value},i="function"==typeof Symbol?Symbol:{},a=i.iterator||"@@iterator",u=i.asyncIterator||"@@asyncIterator",c=i.toStringTag||"@@toStringTag";function l(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,r){return t[e]=r}}function s(t,e,r,n){var i=e&&e.prototype instanceof b?e:b,a=Object.create(i.prototype),u=new C(n||[]);return o(a,"_invoke",{value:P(t,r,u)}),a}function f(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}e.wrap=s;var h="suspendedStart",y="suspendedYield",p="executing",v="completed",d={};function b(){}function m(){}function g(){}var w={};l(w,a,(function(){return this}));var x=Object.getPrototypeOf,S=x&&x(x(A([])));S&&S!==r&&n.call(S,a)&&(w=S);var O=g.prototype=b.prototype=Object.create(w);function _(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function j(t,e){function r(o,i,a,u){var c=f(t[o],t,i);if("throw"!==c.type){var l=c.arg,s=l.value;return s&&"object"==dc(s)&&n.call(s,"__await")?e.resolve(s.__await).then((function(t){r("next",t,a,u)}),(function(t){r("throw",t,a,u)})):e.resolve(s).then((function(t){l.value=t,a(l)}),(function(t){return r("throw",t,a,u)}))}u(c.arg)}var i;o(this,"_invoke",{value:function(t,n){function o(){return new e((function(e,o){r(t,n,e,o)}))}return i=i?i.then(o,o):o()}})}function P(e,r,n){var o=h;return function(i,a){if(o===p)throw Error("Generator is already running");if(o===v){if("throw"===i)throw a;return{value:t,done:!0}}for(n.method=i,n.arg=a;;){var u=n.delegate;if(u){var c=k(u,n);if(c){if(c===d)continue;return c}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===h)throw o=v,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=p;var l=f(e,r,n);if("normal"===l.type){if(o=n.done?v:y,l.arg===d)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(o=v,n.method="throw",n.arg=l.arg)}}}function k(e,r){var n=r.method,o=e.iterator[n];if(o===t)return r.delegate=null,"throw"===n&&e.iterator.return&&(r.method="return",r.arg=t,k(e,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),d;var i=f(o,e.iterator,r.arg);if("throw"===i.type)return r.method="throw",r.arg=i.arg,r.delegate=null,d;var a=i.arg;return a?a.done?(r[e.resultName]=a.value,r.next=e.nextLoc,"return"!==r.method&&(r.method="next",r.arg=t),r.delegate=null,d):a:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,d)}function E(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function T(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function C(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(E,this),this.reset(!0)}function A(e){if(e||""===e){var r=e[a];if(r)return r.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var o=-1,i=function r(){for(;++o<e.length;)if(n.call(e,o))return r.value=e[o],r.done=!1,r;return r.value=t,r.done=!0,r};return i.next=i}}throw new TypeError(dc(e)+" is not iterable")}return m.prototype=g,o(O,"constructor",{value:g,configurable:!0}),o(g,"constructor",{value:m,configurable:!0}),m.displayName=l(g,c,"GeneratorFunction"),e.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===m||"GeneratorFunction"===(e.displayName||e.name))},e.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,g):(t.__proto__=g,l(t,c,"GeneratorFunction")),t.prototype=Object.create(O),t},e.awrap=function(t){return{__await:t}},_(j.prototype),l(j.prototype,u,(function(){return this})),e.AsyncIterator=j,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new j(s(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},_(O),l(O,c,"Generator"),l(O,a,(function(){return this})),l(O,"toString",(function(){return"[object Generator]"})),e.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},e.values=A,C.prototype={constructor:C,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=t,this.done=!1,this.delegate=null,this.method="next",this.arg=t,this.tryEntries.forEach(T),!e)for(var r in this)"t"===r.charAt(0)&&n.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=t)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var r=this;function o(n,o){return u.type="throw",u.arg=e,r.next=n,o&&(r.method="next",r.arg=t),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var a=this.tryEntries[i],u=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var c=n.call(a,"catchLoc"),l=n.call(a,"finallyLoc");if(c&&l){if(this.prev<a.catchLoc)return o(a.catchLoc,!0);if(this.prev<a.finallyLoc)return o(a.finallyLoc)}else if(c){if(this.prev<a.catchLoc)return o(a.catchLoc,!0)}else{if(!l)throw Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return o(a.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),T(r),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;T(r)}return o}}throw Error("illegal catch attempt")},delegateYield:function(e,r,n){return this.delegate={iterator:A(e),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=t),d}},e}function mc(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(t){if("string"==typeof t)return gc(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?gc(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(u)throw i}}}}function gc(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function wc(t,e,r,n,o,i,a){try{var u=t[i](a),c=u.value}catch(t){return void r(t)}u.done?e(c):Promise.resolve(c).then(n,o)}function xc(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,Sc(n.key),n)}}function Sc(t){var e=function(t){if("object"!=dc(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=dc(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==dc(e)?e:e+""}function Oc(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(Oc=function(){return!!t})()}function _c(t){return _c=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},_c(t)}function jc(t,e){return jc=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},jc(t,e)}var Pc=function(t){function e(t){var r;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),r=function(t,e,r){return e=_c(e),function(t,e){if(e&&("object"==dc(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Oc()?Reflect.construct(e,r||[],_c(t).constructor):e.apply(t,r))}(this,e,[t]),t=t||{},r.image=t.image||function(){return""},r.size=t.size||function(t,e){return e},r.cache={},r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&jc(t,e)}(e,t),r=e,n=[{key:"draw",value:(o=bc().mark((function t(e,r,n){var o,i,a,u,c,l,s,f=this;return bc().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:o=r.view.z,i=n/o,a=this.viewScale?this.viewScale(e,n,o):void 0,r.initCanvasTransform(),u=mc(e),t.prev=4,l=bc().mark((function t(){var e,u,l,s,h,y;return bc().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(e=c.value,u=f.image(e,n,o,a)){t.next=4;break}return t.abrupt("return",0);case 4:if(l=f.size(e,n,o,a)/o){t.next=7;break}return t.abrupt("return",0);case 7:if("loading"!=(s=f.cache[u])){t.next=12;break}return t.abrupt("return",{v:void 0});case 12:if(s){y=(i-l)/2;try{r.offscreenCtx.drawImage(s,r.geoToPixX(e.x)+y,r.geoToPixY(e.y)+y-i,l,l)}catch(t){console.error(t)}}else f.cache[u]="loading",(h=new Image).onload=function(){f.cache[u]=h,r.redraw()},h.onerror=function(){console.warn("Could not retrieve image from",u)},h.src=u;case 13:case"end":return t.stop()}}),t)})),u.s();case 7:if((c=u.n()).done){t.next=16;break}return t.delegateYield(l(),"t0",9);case 9:if(0!==(s=t.t0)){t.next=12;break}return t.abrupt("continue",14);case 12:if(!s){t.next=14;break}return t.abrupt("return",s.v);case 14:t.next=7;break;case 16:t.next=21;break;case 18:t.prev=18,t.t1=t.catch(4),u.e(t.t1);case 21:return t.prev=21,u.f(),t.finish(21);case 24:this.updateLegends({style:this,resolution:n,z:o,viewScale:a});case 25:case"end":return t.stop()}}),t,this,[[4,18,21,24]])})),i=function(){var t=this,e=arguments;return new Promise((function(r,n){var i=o.apply(t,e);function a(t){wc(i,r,n,a,u,"next",t)}function u(t){wc(i,r,n,a,u,"throw",t)}a(void 0)}))},function(t,e,r){return i.apply(this,arguments)})}],n&&xc(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n,o,i}(Sn);function kc(t){return kc="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},kc(t)}function Ec(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(t){if("string"==typeof t)return Tc(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Tc(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(u)throw i}}}}function Tc(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function Cc(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,Ac(n.key),n)}}function Ac(t){var e=function(t){if("object"!=kc(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=kc(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==kc(e)?e:e+""}function Mc(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(Mc=function(){return!!t})()}function Lc(t){return Lc=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Lc(t)}function zc(t,e){return zc=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},zc(t,e)}var Rc=function(t){function e(t,r){var n,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),n=function(t,e,r){return e=Lc(e),function(t,e){if(e&&("object"==kc(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Mc()?Reflect.construct(e,r||[],Lc(t).constructor):e.apply(t,r))}(this,e,[o]),o=o||{},n.dataset=t,n.styles=r,n.minPixelsPerCell=o.minPixelsPerCell||3,n.cellInfoHTML=o.cellInfoHTML||e.defaultCellInfoHTML,n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&zc(t,e)}(e,t),r=e,n=[{key:"draw",value:function(t,r){var n=t.view.z,o=t.offscreenCtx,i=this.getDataset(n);if(i){i.getData(t.extGeo),i.updateViewCache(t.extGeo);var a,u=Ec(this.styles);try{for(u.s();!(a=u.n()).done;){var c=a.value;c.visible&&!c.visible(n)||(o.globalAlpha=c.alpha?c.alpha(n):1,c.blendOperation&&(o.globalCompositeOperation=c.blendOperation(n)),t.setCanvasTransform(),c.draw(i.getViewCache(),t,i.getResolution()),c.filterColor&&c.drawFilter(t))}}catch(t){u.e(t)}finally{u.f()}if(r){var l,s=Ec(this.styles);try{for(s.s();!(l=s.n()).done;){var f=l.value;if((!f.visible||f.visible(n))&&(e.addLegends(r,f.legends),f.styles)){var h,y=Ec(f.styles);try{for(y.s();!(h=y.n()).done;){var p=h.value;p.visible&&!p.visible(n)||e.addLegends(r,p.legends)}}catch(t){y.e(t)}finally{y.f()}}}}catch(t){s.e(t)}finally{s.f()}}}}},{key:"getDataset",value:function(t){return this.dataset.getDataset(t,this.minPixelsPerCell)}},{key:"styles_",value:function(t){return 0===arguments.length?this.styles:(1===arguments.length?Array.isArray(t)?this.styles=t:this.styles=[t]:this.styles=arguments,this)}}],o=[{key:"addLegends",value:function(t,e){if(Array.isArray(e)){var r,n=Ec(e);try{for(n.s();!(r=n.n()).done;){var o=r.value;this.addLegends(t,o)}}catch(t){n.e(t)}finally{n.f()}}else t.node().append(e.div.node())}},{key:"defaultCellInfoHTML",value:function(t){for(var e=[],r=0,n=Object.keys(t);r<n.length;r++){var o=n[r];"x"!==o&&"y"!==o&&e.push("<b>",o,"</b>"," : ",t[o],"<br>")}return e.join("")}}],n&&Cc(r.prototype,n),o&&Cc(r,o),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n,o}(Tn);function Ic(t){return Ic="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ic(t)}function Fc(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,Bc(n.key),n)}}function Bc(t){var e=function(t){if("object"!=Ic(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=Ic(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Ic(e)?e:e+""}function Nc(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(Nc=function(){return!!t})()}function Dc(t){return Dc=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Dc(t)}function Gc(t,e){return Gc=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Gc(t,e)}var Uc=function(t){function e(t){var r;if(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),r=function(t,e,r){return e=Dc(e),function(t,e){if(e&&("object"==Ic(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Nc()?Reflect.construct(e,r||[],Dc(t).constructor):e.apply(t,r))}(this,e,[t]),t=t||{},r.cache={},r.url=t.url,r.urlFun=t.urlFun||function(t,e,n){return r.url+n+"/"+t+"/"+e+".png"},r.resolutions=t.resolutions,!r.resolutions||0==r.resolutions.length)throw new Error("No resolutions provided for background layer");return r.nbPix=t.nbPix||256,r.origin=t.origin||[0,0],r.z0=t.z0||0,r.pixelationCoefficient=t.pixelationCoefficient||1,r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Gc(t,e)}(e,t),r=e,(n=[{key:"get",value:function(t,e,r){var n=this.cache[t];if(n&&(n=n[e]))return n[r]}},{key:"put",value:function(t,e,r,n){this.cache[e]||(this.cache[e]={}),this.cache[e][r]||(this.cache[e][r]={}),this.cache[e][r][n]=t}},{key:"draw",value:function(t){var e=this;if(this.resolutions&&0!=this.resolutions.length){var r=t.view.z,n=this.origin[0],o=this.origin[1],i=0;for(i=0;i<this.resolutions.length&&!(this.resolutions[i]<r*this.pixelationCoefficient);i++);i-=1,i=Math.max(0,i),i=Math.min(i,this.resolutions.length-1);var a=this.resolutions[i];i+=this.z0;for(var u=this.nbPix*a,c=u/r,l=function(t){return Math.ceil((t-n)/u)},s=function(t){return Math.ceil(-(t-o)/u)},f=l(t.extGeo.xMin)-1,h=l(t.extGeo.xMax),y=s(t.extGeo.yMin),p=s(t.extGeo.yMax)-1,v=function(r){for(var a=function(a){var l=e.get(i,r,a);if(!l){var s=new Image;return e.put(s,i,r,a),s.onload=function(){t.redraw()},s.onerror=function(){e.put("failed",i,r,a)},s.src=e.urlFun(r,a,i),0}if("failed"===l)return 0;if(!(l instanceof HTMLImageElement))return console.log(l),0;if(0==l.width||0==l.height)return 0;var f=n+r*u,h=o-a*u;try{t.initCanvasTransform(),t.offscreenCtx.drawImage(l,t.geoToPixX(f),t.geoToPixY(h),c,c)}catch(t){console.error(t)}},l=p;l<y;l++)a(l)},d=f;d<h;d++)v(d)}else console.error("No resolutions provided for background layer")}}])&&Fc(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(Tn);function Wc(t){return Wc="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Wc(t)}function $c(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,Yc(n.key),n)}}function Yc(t){var e=function(t){if("object"!=Wc(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=Wc(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Wc(e)?e:e+""}function Hc(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(Hc=function(){return!!t})()}function Xc(t){return Xc=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Xc(t)}function qc(t,e){return qc=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},qc(t,e)}var Vc=function(t){function e(t){var r;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),r=function(t,e,r){return e=Xc(e),function(t,e){if(e&&("object"==Wc(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Hc()?Reflect.construct(e,r||[],Xc(t).constructor):e.apply(t,r))}(this,e,[t]),t=t||{},r.url=t.url,r.img=void 0,r.xMin=void 0,r.xMax=void 0,r.yMin=void 0,r.yMax=void 0,r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&qc(t,e)}(e,t),r=e,(n=[{key:"hasMoved",value:function(t){return t.xMin!=this.xMin||t.xMax!=this.xMax||t.yMin!=this.yMin||t.yMax!=this.yMax}},{key:"draw",value:function(t){if(t.updateExtentGeo(0),!this.hasMoved(t.extGeo)&&this.img)t.initCanvasTransform(),t.offscreenCtx.drawImage(this.img,0,0,t.w,t.h);else{this.xMin=t.extGeo.xMin,this.xMax=t.extGeo.xMax,this.yMin=t.extGeo.yMin,this.yMax=t.extGeo.yMax;var e=[];e.push(this.url),e.push("&width="),e.push(t.w),e.push("&height="),e.push(t.h),e.push("&bbox="),e.push(t.extGeo.xMin),e.push(","),e.push(t.extGeo.yMin),e.push(","),e.push(t.extGeo.xMax),e.push(","),e.push(t.extGeo.yMax);var r=e.join("");this.img||(this.img=new Image,this.img.onload=function(){t.redraw()},this.img.onerror=function(){console.warn("Could not retrieve WMS background image from",r)}),this.img.src=r}}}])&&$c(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(Tn);function Zc(t){return Zc="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Zc(t)}function Jc(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,Kc(n.key),n)}}function Kc(t){var e=function(t){if("object"!=Zc(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=Zc(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Zc(e)?e:e+""}function Qc(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(Qc=function(){return!!t})()}function tl(t){return tl=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},tl(t)}function el(t,e){return el=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},el(t,e)}var rl=function(t){function e(t){var r;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),r=function(t,e,r){return e=tl(e),function(t,e){if(e&&("object"==Zc(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Qc()?Reflect.construct(e,r||[],tl(t).constructor):e.apply(t,r))}(this,e,[t]),t=t||{},r.url=t.url,r.xMin=t.xMin||0,r.yMax=t.yMax||0,r.width=t.width||2e4,r.height=t.height||2e4,r.img=void 0,r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&el(t,e)}(e,t),r=e,(n=[{key:"draw",value:function(t){var e=this;if(this.img){var r=t.geoToPixX(this.xMin),n=t.geoToPixY(this.yMax),o=t.getView().z;t.initCanvasTransform(),t.offscreenCtx.drawImage(this.img,r,n,this.width/o,this.height/o)}else this.img||(this.img=new Image,this.img.onload=function(){t.redraw()},this.img.onerror=function(){console.warn("Could not retrieve background image from",e.url)}),this.img.src=this.url}}])&&Jc(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(Tn);function nl(t){return nl="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},nl(t)}function ol(){ol=function(){return e};var t,e={},r=Object.prototype,n=r.hasOwnProperty,o=Object.defineProperty||function(t,e,r){t[e]=r.value},i="function"==typeof Symbol?Symbol:{},a=i.iterator||"@@iterator",u=i.asyncIterator||"@@asyncIterator",c=i.toStringTag||"@@toStringTag";function l(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,r){return t[e]=r}}function s(t,e,r,n){var i=e&&e.prototype instanceof b?e:b,a=Object.create(i.prototype),u=new C(n||[]);return o(a,"_invoke",{value:P(t,r,u)}),a}function f(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}e.wrap=s;var h="suspendedStart",y="suspendedYield",p="executing",v="completed",d={};function b(){}function m(){}function g(){}var w={};l(w,a,(function(){return this}));var x=Object.getPrototypeOf,S=x&&x(x(A([])));S&&S!==r&&n.call(S,a)&&(w=S);var O=g.prototype=b.prototype=Object.create(w);function _(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function j(t,e){function r(o,i,a,u){var c=f(t[o],t,i);if("throw"!==c.type){var l=c.arg,s=l.value;return s&&"object"==nl(s)&&n.call(s,"__await")?e.resolve(s.__await).then((function(t){r("next",t,a,u)}),(function(t){r("throw",t,a,u)})):e.resolve(s).then((function(t){l.value=t,a(l)}),(function(t){return r("throw",t,a,u)}))}u(c.arg)}var i;o(this,"_invoke",{value:function(t,n){function o(){return new e((function(e,o){r(t,n,e,o)}))}return i=i?i.then(o,o):o()}})}function P(e,r,n){var o=h;return function(i,a){if(o===p)throw Error("Generator is already running");if(o===v){if("throw"===i)throw a;return{value:t,done:!0}}for(n.method=i,n.arg=a;;){var u=n.delegate;if(u){var c=k(u,n);if(c){if(c===d)continue;return c}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===h)throw o=v,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=p;var l=f(e,r,n);if("normal"===l.type){if(o=n.done?v:y,l.arg===d)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(o=v,n.method="throw",n.arg=l.arg)}}}function k(e,r){var n=r.method,o=e.iterator[n];if(o===t)return r.delegate=null,"throw"===n&&e.iterator.return&&(r.method="return",r.arg=t,k(e,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),d;var i=f(o,e.iterator,r.arg);if("throw"===i.type)return r.method="throw",r.arg=i.arg,r.delegate=null,d;var a=i.arg;return a?a.done?(r[e.resultName]=a.value,r.next=e.nextLoc,"return"!==r.method&&(r.method="next",r.arg=t),r.delegate=null,d):a:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,d)}function E(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function T(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function C(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(E,this),this.reset(!0)}function A(e){if(e||""===e){var r=e[a];if(r)return r.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var o=-1,i=function r(){for(;++o<e.length;)if(n.call(e,o))return r.value=e[o],r.done=!1,r;return r.value=t,r.done=!0,r};return i.next=i}}throw new TypeError(nl(e)+" is not iterable")}return m.prototype=g,o(O,"constructor",{value:g,configurable:!0}),o(g,"constructor",{value:m,configurable:!0}),m.displayName=l(g,c,"GeneratorFunction"),e.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===m||"GeneratorFunction"===(e.displayName||e.name))},e.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,g):(t.__proto__=g,l(t,c,"GeneratorFunction")),t.prototype=Object.create(O),t},e.awrap=function(t){return{__await:t}},_(j.prototype),l(j.prototype,u,(function(){return this})),e.AsyncIterator=j,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new j(s(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},_(O),l(O,c,"Generator"),l(O,a,(function(){return this})),l(O,"toString",(function(){return"[object Generator]"})),e.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},e.values=A,C.prototype={constructor:C,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=t,this.done=!1,this.delegate=null,this.method="next",this.arg=t,this.tryEntries.forEach(T),!e)for(var r in this)"t"===r.charAt(0)&&n.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=t)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var r=this;function o(n,o){return u.type="throw",u.arg=e,r.next=n,o&&(r.method="next",r.arg=t),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var a=this.tryEntries[i],u=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var c=n.call(a,"catchLoc"),l=n.call(a,"finallyLoc");if(c&&l){if(this.prev<a.catchLoc)return o(a.catchLoc,!0);if(this.prev<a.finallyLoc)return o(a.finallyLoc)}else if(c){if(this.prev<a.catchLoc)return o(a.catchLoc,!0)}else{if(!l)throw Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return o(a.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),T(r),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;T(r)}return o}}throw Error("illegal catch attempt")},delegateYield:function(e,r,n){return this.delegate={iterator:A(e),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=t),d}},e}function il(t,e,r,n,o,i,a){try{var u=t[i](a),c=u.value}catch(t){return void r(t)}u.done?e(c):Promise.resolve(c).then(n,o)}function al(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(t){if("string"==typeof t)return ul(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?ul(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(u)throw i}}}}function ul(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function cl(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,ll(n.key),n)}}function ll(t){var e=function(t){if("object"!=nl(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=nl(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==nl(e)?e:e+""}function sl(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(sl=function(){return!!t})()}function fl(t){return fl=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},fl(t)}function hl(t,e){return hl=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},hl(t,e)}var yl=function(t){function e(t){var r;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),r=function(t,e,r){return e=fl(e),function(t,e){if(e&&("object"==nl(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,sl()?Reflect.construct(e,r||[],fl(t).constructor):e.apply(t,r))}(this,e,[t]),t=t||{},r.url=t.url,r.style=t.style||function(){return"1.2em Arial"},r.color=t.color||(t.dark?function(){return"white"}:function(){return"black"}),r.haloColor=t.haloColor||(t.dark?function(){return"black"}:function(){return"white"}),r.haloWidth=t.haloWidth||function(){return 2.5},r.textAlign=t.textAlign||"start",r.offsetPix=t.offsetPix||[5,5],r.preprocess=t.preprocess,r.labels=void 0,r.loadingStatus="notLoaded",r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&hl(t,e)}(e,t),r=e,n=[{key:"draw",value:function(t){if(this.labels){var e=t.view.z,r=t.offscreenCtx;r.textAlign=this.textAlign||"start",r.lineJoin="bevel",r.lineCap="butt",t.initCanvasTransform();var n,o=al(this.labels);try{for(o.s();!(n=o.n()).done;){var i=n.value,a=this.style(i,e);if(a&&(r.font=a,t.toDraw(i))){var u=t.geoToPixX(i.x)+this.offsetPix[0],c=t.geoToPixY(i.y)-this.offsetPix[1];if(this.haloColor&&this.haloWidth){var l=this.haloColor(i,e),s=this.haloWidth(i,e);l&&s&&s>0&&(r.strokeStyle=l,r.lineWidth=s,r.strokeText(i.name,u,c))}if(this.color){var f=this.color(i,e);f&&(r.fillStyle=f,r.fillText(i.name,u,c))}}}}catch(t){o.e(t)}finally{o.f()}}else this.load(t.redraw)}},{key:"load",value:(o=ol().mark((function t(e){var r,n,o,i;return ol().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(this.url){t.next=5;break}return console.log("Failed loading labels: No URL specified. "+this.url),this.loadingStatus="failed",this.labels=[],t.abrupt("return");case 5:if("notLoaded"==this.loadingStatus){t.next=7;break}return t.abrupt("return");case 7:return this.loadingStatus="loading",t.prev=8,t.next=11,no(this.url);case 11:if(r=t.sent,!this.preprocess){t.next=35;break}this.labels=[],n=al(r),t.prev=15,n.s();case 17:if((o=n.n()).done){t.next=25;break}if(i=o.value,0!=this.preprocess(i)){t.next=22;break}return t.abrupt("continue",23);case 22:this.labels.push(i);case 23:t.next=17;break;case 25:t.next=30;break;case 27:t.prev=27,t.t0=t.catch(15),n.e(t.t0);case 30:return t.prev=30,n.f(),t.finish(30);case 33:t.next=36;break;case 35:this.labels=r;case 36:this.loadingStatus="loaded",e&&e(),t.next=45;break;case 40:t.prev=40,t.t1=t.catch(8),console.log("Failed loading labels from "+this.url),this.labels=[],this.loadingStatus="failed";case 45:case"end":return t.stop()}}),t,this,[[8,40],[15,27,30,33]])})),i=function(){var t=this,e=arguments;return new Promise((function(r,n){var i=o.apply(t,e);function a(t){il(i,r,n,a,u,"next",t)}function u(t){il(i,r,n,a,u,"throw",t)}a(void 0)}))},function(t){return i.apply(this,arguments)})}],n&&cl(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n,o,i}(Tn);function pl(t){return pl="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},pl(t)}function vl(){vl=function(){return e};var t,e={},r=Object.prototype,n=r.hasOwnProperty,o=Object.defineProperty||function(t,e,r){t[e]=r.value},i="function"==typeof Symbol?Symbol:{},a=i.iterator||"@@iterator",u=i.asyncIterator||"@@asyncIterator",c=i.toStringTag||"@@toStringTag";function l(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,r){return t[e]=r}}function s(t,e,r,n){var i=e&&e.prototype instanceof b?e:b,a=Object.create(i.prototype),u=new C(n||[]);return o(a,"_invoke",{value:P(t,r,u)}),a}function f(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}e.wrap=s;var h="suspendedStart",y="suspendedYield",p="executing",v="completed",d={};function b(){}function m(){}function g(){}var w={};l(w,a,(function(){return this}));var x=Object.getPrototypeOf,S=x&&x(x(A([])));S&&S!==r&&n.call(S,a)&&(w=S);var O=g.prototype=b.prototype=Object.create(w);function _(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function j(t,e){function r(o,i,a,u){var c=f(t[o],t,i);if("throw"!==c.type){var l=c.arg,s=l.value;return s&&"object"==pl(s)&&n.call(s,"__await")?e.resolve(s.__await).then((function(t){r("next",t,a,u)}),(function(t){r("throw",t,a,u)})):e.resolve(s).then((function(t){l.value=t,a(l)}),(function(t){return r("throw",t,a,u)}))}u(c.arg)}var i;o(this,"_invoke",{value:function(t,n){function o(){return new e((function(e,o){r(t,n,e,o)}))}return i=i?i.then(o,o):o()}})}function P(e,r,n){var o=h;return function(i,a){if(o===p)throw Error("Generator is already running");if(o===v){if("throw"===i)throw a;return{value:t,done:!0}}for(n.method=i,n.arg=a;;){var u=n.delegate;if(u){var c=k(u,n);if(c){if(c===d)continue;return c}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===h)throw o=v,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=p;var l=f(e,r,n);if("normal"===l.type){if(o=n.done?v:y,l.arg===d)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(o=v,n.method="throw",n.arg=l.arg)}}}function k(e,r){var n=r.method,o=e.iterator[n];if(o===t)return r.delegate=null,"throw"===n&&e.iterator.return&&(r.method="return",r.arg=t,k(e,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),d;var i=f(o,e.iterator,r.arg);if("throw"===i.type)return r.method="throw",r.arg=i.arg,r.delegate=null,d;var a=i.arg;return a?a.done?(r[e.resultName]=a.value,r.next=e.nextLoc,"return"!==r.method&&(r.method="next",r.arg=t),r.delegate=null,d):a:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,d)}function E(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function T(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function C(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(E,this),this.reset(!0)}function A(e){if(e||""===e){var r=e[a];if(r)return r.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var o=-1,i=function r(){for(;++o<e.length;)if(n.call(e,o))return r.value=e[o],r.done=!1,r;return r.value=t,r.done=!0,r};return i.next=i}}throw new TypeError(pl(e)+" is not iterable")}return m.prototype=g,o(O,"constructor",{value:g,configurable:!0}),o(g,"constructor",{value:m,configurable:!0}),m.displayName=l(g,c,"GeneratorFunction"),e.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===m||"GeneratorFunction"===(e.displayName||e.name))},e.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,g):(t.__proto__=g,l(t,c,"GeneratorFunction")),t.prototype=Object.create(O),t},e.awrap=function(t){return{__await:t}},_(j.prototype),l(j.prototype,u,(function(){return this})),e.AsyncIterator=j,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new j(s(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},_(O),l(O,c,"Generator"),l(O,a,(function(){return this})),l(O,"toString",(function(){return"[object Generator]"})),e.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},e.values=A,C.prototype={constructor:C,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=t,this.done=!1,this.delegate=null,this.method="next",this.arg=t,this.tryEntries.forEach(T),!e)for(var r in this)"t"===r.charAt(0)&&n.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=t)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var r=this;function o(n,o){return u.type="throw",u.arg=e,r.next=n,o&&(r.method="next",r.arg=t),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var a=this.tryEntries[i],u=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var c=n.call(a,"catchLoc"),l=n.call(a,"finallyLoc");if(c&&l){if(this.prev<a.catchLoc)return o(a.catchLoc,!0);if(this.prev<a.finallyLoc)return o(a.finallyLoc)}else if(c){if(this.prev<a.catchLoc)return o(a.catchLoc,!0)}else{if(!l)throw Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return o(a.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),T(r),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;T(r)}return o}}throw Error("illegal catch attempt")},delegateYield:function(e,r,n){return this.delegate={iterator:A(e),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=t),d}},e}function dl(t,e,r,n,o,i,a){try{var u=t[i](a),c=u.value}catch(t){return void r(t)}u.done?e(c):Promise.resolve(c).then(n,o)}function bl(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(t){if("string"==typeof t)return ml(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?ml(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(u)throw i}}}}function ml(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function gl(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,wl(n.key),n)}}function wl(t){var e=function(t){if("object"!=pl(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=pl(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==pl(e)?e:e+""}function xl(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(xl=function(){return!!t})()}function Sl(t){return Sl=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Sl(t)}function Ol(t,e){return Ol=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Ol(t,e)}var _l=function(t){function e(t){var r;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),r=function(t,e,r){return e=Sl(e),function(t,e){if(e&&("object"==pl(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,xl()?Reflect.construct(e,r||[],Sl(t).constructor):e.apply(t,r))}(this,e,[t]),t=t||{},r.url=t.url,r.preprocess=t.preprocess,r.shape=t.shape||function(t,e){return"circle"},r.size=t.size||function(t,e){return 10},r.strokeStyle=t.strokeStyle||function(t,e){return"red"},r.fillStyle=t.fillStyle||function(t,e){return"black"},r.lineWidth=t.lineWidth||function(t,e){return 2},r.color=t.color||function(t,e){return"gray"},r.width=t.width||function(t,e){return 2},r.lineDash=t.lineDash||function(t,e){},r.fs=void 0,r.loadingStatus="notLoaded",r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Ol(t,e)}(e,t),r=e,n=[{key:"draw",value:function(t){if(this.fs){var e,r=t.view.z,n=t.offscreenCtx,o=bl(this.fs);try{for(o.s();!(e=o.n()).done;){var i=e.value,a=i.geometry.type;if("Point"==a||"MultiPoint"==a){var u=this.shape(i,r);if(!u||"none"==u)continue;var c=this.size(i,r)*r;if(!c)continue;var l=this.strokeStyle(i,r),s=this.fillStyle(i,r),f=this.lineWidth(i,r)*r;l&&(n.strokeStyle=l),s&&(n.fillStyle=s),f&&(n.lineWidth=f);var h=i.geometry.coordinates;if("Point"==a&&(h=[h]),"circle"==u){var y,p=bl(h);try{for(p.s();!(y=p.n()).done;){var v=y.value;n.beginPath(),n.arc(v[0],v[1],c/2,0,2*Math.PI,!1),s&&n.fill(),l&&f&&n.stroke()}}catch(t){p.e(t)}finally{p.f()}}else if("square"==u){var d,b=bl(h);try{for(b.s();!(d=b.n()).done;){var m=d.value;n.beginPath(),n.rect(m[0]-c/2,m[1]-c/2,c,c),s&&n.fill(),l&&f&&n.stroke()}}catch(t){b.e(t)}finally{b.f()}}else console.error("Unexpected shape for point geojson: "+u)}else if("LineString"==a||"MultiLineString"==a){var g=this.color(i,r);if(!g||"none"==g)continue;n.strokeStyle=g;var w=this.width(i,r);if(!w||w<0)continue;n.lineWidth=w*r;var x=this.lineDash(i,r);x&&n.setLineDash(x);var S=i.geometry.coordinates;"LineString"==a&&(S=[S]);var O,_=bl(S);try{for(_.s();!(O=_.n()).done;){var j=O.value;if(!(j.length<2)){n.beginPath(),n.moveTo(j[0][0],j[0][1]);for(var P=1;P<j.length;P++)n.lineTo(j[P][0],j[P][1]);n.stroke()}}}catch(t){_.e(t)}finally{_.f()}}else console.log("Unsupported geometry type in GeoJSONLayer: "+a)}}catch(t){o.e(t)}finally{o.f()}n.setLineDash([])}else this.load(t.redraw)}},{key:"load",value:(o=vl().mark((function t(e){var r,n,o,i,a;return vl().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(this.url){t.next=5;break}return console.log("Failed loading boundaries: No URL specified. "+this.url),this.loadingStatus="failed",this.labels=[],t.abrupt("return");case 5:if("notLoaded"==this.loadingStatus){t.next=7;break}return t.abrupt("return");case 7:return this.loadingStatus="loading",t.prev=8,t.next=11,Un(this.url);case 11:if(r=t.sent,n=r.features,!this.preprocess){t.next=36;break}this.fs=[],o=bl(n),t.prev=16,o.s();case 18:if((i=o.n()).done){t.next=26;break}if(a=i.value,0!=this.preprocess(a)){t.next=23;break}return t.abrupt("continue",24);case 23:this.fs.push(a);case 24:t.next=18;break;case 26:t.next=31;break;case 28:t.prev=28,t.t0=t.catch(16),o.e(t.t0);case 31:return t.prev=31,o.f(),t.finish(31);case 34:t.next=37;break;case 36:this.fs=n;case 37:this.loadingStatus="loaded",e&&e(),t.next=46;break;case 41:t.prev=41,t.t1=t.catch(8),console.log("Failed loading boundaries from "+this.url),this.fs=[],this.loadingStatus="failed";case 46:case"end":return t.stop()}}),t,this,[[8,41],[16,28,31,34]])})),i=function(){var t=this,e=arguments;return new Promise((function(r,n){var i=o.apply(t,e);function a(t){dl(i,r,n,a,u,"next",t)}function u(t){dl(i,r,n,a,u,"throw",t)}a(void 0)}))},function(t){return i.apply(this,arguments)})}],n&&gl(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n,o,i}(Tn);function jl(t){return jl="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},jl(t)}function Pl(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,kl(n.key),n)}}function kl(t){var e=function(t){if("object"!=jl(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=jl(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==jl(e)?e:e+""}var El=function(){return t=function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),e=e||{},this.id=e.id,this.top=e.top,this.bottom=e.bottom,this.left=e.left,this.right=e.right,this.background=e.background||"none",this.padding=e.padding||"5px",this.border=e.border||"0px",this["border-radius"]=e["border-radius"]||"none",this["box-shadow"]=e["box-shadow"]||"none",this["font-family"]=e["font-family"]||"Helvetica, Arial, sans-serif",this.id&&(this.div=pt("#"+this.id)),this.div&&!this.div.empty()||(this.div=pt(document.createElement("div")),this.id&&this.div.attr("id",this.id)),this.div.style("background",this.background),this.div.style("padding",this.padding),this.div.style("border",this.border),this.div.style("border-radius",this["border-radius"]),this.div.style("box-shadow",this["box-shadow"]),this.div.style("font-family",this["font-family"]),this.title=e.title,this.titleFontSize=e.titleFontSize||"0.8em",this.titleFontWeight=e.titleFontWeight||"bold",this.labelFontSize=e.labelFontSize||"0.8em",this.labelUnitText=e.labelUnitText||"",this.labelFormat=e.labelFormat},e=[{key:"makeTitle",value:function(){this.title&&this.div.append("div").style("font-size",this.titleFontSize).style("font-weight",this.titleFontWeight).style("margin-bottom","7px").text(this.title)}},{key:"style",value:function(t,e){return 1==arguments.length?this.div.style(t):(this.div.style(t,e),this)}},{key:"update",value:function(){console.error("Legend update not implemented yet.")}}],e&&Pl(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,e}();function Tl(t){return Tl="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Tl(t)}function Cl(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,Al(n.key),n)}}function Al(t){var e=function(t){if("object"!=Tl(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=Tl(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Tl(e)?e:e+""}function Ml(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(Ml=function(){return!!t})()}function Ll(t){return Ll=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Ll(t)}function zl(t,e){return zl=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},zl(t,e)}var Rl=function(t){function e(t){var r;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),r=function(t,e,r){return e=Ll(e),function(t,e){if(e&&("object"==Tl(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Ml()?Reflect.construct(e,r||[],Ll(t).constructor):e.apply(t,r))}(this,e,[t]),t=t||{},r.colorScale=t.colorScale,r.textScale=t.textScale||function(t){return t},r.margin=t.margin||5,r.tickSize=t.tickSize||6,r.ticks=t.ticks||Math.floor(r.width/50),r.tickFormat=t.tickFormat,r.tickUnit=t.tickUnit,r.fontSize=t.fontSize||"0.8em",r.invert=t.invert,r.width=t.width||300,r.height=t.height||15,r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&zl(t,e)}(e,t),r=e,n=[{key:"update",value:function(t){this.div.selectAll("*").remove(),this.makeTitle();for(var e=this.width+2*this.margin,r=this.height+this.margin+this.tickSize+10,n=this.div.append("svg").attr("width",e).attr("height",r).append("g").attr("transform","translate("+this.margin+" 0)"),o=this.width,i=this.height,a=0;a<o;a+=5){var u=a/(o-1);this.invert&&(u=1-u),n.append("rect").attr("x",a).attr("y",0).attr("width",5).attr("height",i).style("fill",this.colorScale(u,t.viewScale))}for(var c=0;c<this.ticks;c++){var l=c/(this.ticks-1);n.append("line").attr("x1",o*l).attr("y1",0).attr("x2",o*l).attr("y2",i+this.tickSize).style("stroke","black"),n.append("text").attr("id","ticklabel_"+c).attr("x",o*l).attr("y",i+this.tickSize+2).style("font-size",this.fontSize).style("text-anchor",0==c?"start":c==this.ticks-1?"end":"middle").style("alignment-baseline","top").style("dominant-baseline","hanging").style("pointer-events","none")}for(var s=this.tickFormat&&"text"!=this.tickFormat?this.tickFormat:function(t){return t},f=0;f<this.ticks;f++){var h=f/(this.ticks-1),y=this.textScale(h,t.viewScale),p=(y?s(y):"0")+(this.tickUnit?this.tickUnit:"");null!=p&&this.div.select("#ticklabel_"+f).text(p)}}}],n&&Cl(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(El);function Il(t){return Il="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Il(t)}function Fl(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,Bl(n.key),n)}}function Bl(t){var e=function(t){if("object"!=Il(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=Il(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Il(e)?e:e+""}function Nl(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(Nl=function(){return!!t})()}function Dl(t){return Dl=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Dl(t)}function Gl(t,e){return Gl=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Gl(t,e)}var Ul=function(t){function e(t){var r;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),r=function(t,e,r){return e=Dl(e),function(t,e){if(e&&("object"==Il(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Nl()?Reflect.construct(e,r||[],Dl(t).constructor):e.apply(t,r))}(this,e,[t]),t=t||{},r.colors=t.colors,r.breaks=t.breaks,r.width=t.width||300,r.height=t.height||15,r.tickSize=t.tickSize||3,r.invert=t.invert,r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Gl(t,e)}(e,t),r=e,(n=[{key:"update",value:function(t){this.div.selectAll("*").remove(),this.makeTitle();var e=this.colors(t.viewScale),r=this.breaks(t.viewScale);if(r){var n=e.length;if(0!=n){for(var o=this.width/n,i=this.div.append("svg").attr("width",this.width).attr("height",this.height+this.tickSize+2+10),a=0;a<n;a++)i.append("rect").attr("x",a*o).attr("y",0).attr("width",o).attr("height",this.height).style("fill",e[a]);for(var u=1;u<n;u++)i.append("line").attr("x1",o*u).attr("y1",0).attr("x2",o*u).attr("y2",this.height+this.tickSize).style("stroke","black");for(var c=1;c<n;c++){var l=r[c-1];isNaN(l)||null==l||(this.labelFormat&&(l=this.labelFormat(l,c)),i.append("text").attr("id","ticklabel_"+c).attr("x",o*c).attr("y",this.height+this.tickSize+2).style("font-size",this.labelFontSize).style("text-anchor","middle").style("alignment-baseline","top").style("dominant-baseline","hanging").style("pointer-events","none").text(l))}}}}}])&&Fl(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(El);function Wl(t){return Wl="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Wl(t)}function $l(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,Yl(n.key),n)}}function Yl(t){var e=function(t){if("object"!=Wl(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=Wl(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Wl(e)?e:e+""}function Hl(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(Hl=function(){return!!t})()}function Xl(t){return Xl=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Xl(t)}function ql(t,e){return ql=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},ql(t,e)}var Vl=function(t){function e(t){var r;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),r=function(t,e,r){return e=Xl(e),function(t,e){if(e&&("object"==Wl(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Hl()?Reflect.construct(e,r||[],Xl(t).constructor):e.apply(t,r))}(this,e,[t]),t=t||{},r.colorLabel=t.colorLabel||[["gray","-"]],r.shape=t.shape||"circle",r.dimension=t.dimension||{r:8},r.strokeColor=t.strokeColor||"gray",r.strokeWidth=t.strokeWidth||1,r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&ql(t,e)}(e,t),r=e,(n=[{key:"update",value:function(){this.div.selectAll("*").remove(),this.makeTitle();var t=this.colorLabel.length;if(0!=t)for(var e=0;e<t;e++){var r=this.colorLabel[e],n=this.div.append("div"),o=this.strokeWidth;if("square"===this.shape){var i=this.dimension.h||15,a=this.dimension.w||20;n.append("div").style("display","inline").append("svg").attr("width",a+2*o).attr("height",i+2*o).append("rect").attr("x",o).attr("y",o).attr("width",a).attr("height",i).style("fill",r[0]).style("stroke",this.strokeColor).style("stroke-width",this.strokeWidth)}else{if("circle"!==this.shape)throw new Error("Unexpected shape:"+this.shape);var u=this.dimension.r||8,c=2*u+2*o;n.append("div").style("display","inline").append("svg").attr("width",c).attr("height",c).append("circle").attr("cx",u+o).attr("cy",u+o).attr("r",u).style("fill",r[0]).style("stroke",this.strokeColor).style("stroke-width",this.strokeWidth)}n.append("div").style("display","inline").style("padding-left","5px").style("font-size",this.labelFontSize).text(r[1])}}}])&&$l(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(El);function Zl(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function Jl(t){var e,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[8,6,5,4,2.5,2],n=Math.pow(10,Math.floor(Math.log10(t))),o=function(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(t){if("string"==typeof t)return Zl(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Zl(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(u)throw i}}}}(r);try{for(o.s();!(e=o.n()).done;){var i=e.value;if(n*i<=t)return n*i}}catch(t){o.e(t)}finally{o.f()}return n}function Kl(t){return Kl="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Kl(t)}function Ql(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=function(t,e){if(t){if("string"==typeof t)return ts(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?ts(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(u)throw i}}}}function ts(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function es(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,rs(n.key),n)}}function rs(t){var e=function(t){if("object"!=Kl(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=Kl(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Kl(e)?e:e+""}function ns(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(ns=function(){return!!t})()}function os(t){return os=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},os(t)}function is(t,e){return is=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},is(t,e)}var as=function(t){function e(t){var r;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),r=function(t,e,r){return e=os(e),function(t,e){if(e&&("object"==Kl(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,ns()?Reflect.construct(e,r||[],os(t).constructor):e.apply(t,r))}(this,e,[t]),t=t||{},r.label=t.label||void 0,r.size=t.size||void 0,r.shape=t.shape||"circle",r.fillColor=t.fillColor||"none",r.strokeColor=t.strokeColor||"gray",r.strokeWidth=t.strokeWidth||1,r.color=t.color||"gray",r.length=t.length||function(t,e,r){return t},r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&is(t,e)}(e,t),r=e,(n=[{key:"update",value:function(t){var e=this;this.div.selectAll("*").remove(),this.makeTitle();var r,n=this.label(t.viewScale,t.cells,t.resolution,t.z);if(r=this.size?this.size(t.viewScale,t.resolution,t.z)/t.z:t.viewScale(+n)/t.z){this.labelFormat&&!isNaN(+n)&&(n=this.labelFormat(n));var o=this.div.append("div"),i=function(){return o.append("svg").attr("width",r+e.strokeWidth+2).attr("height",r+e.strokeWidth+2).style("","inline-block")};if("square"===this.shape)i().append("rect").attr("x",0).attr("y",0).attr("width",r).attr("height",r).style("fill",this.fillColor).style("stroke",this.strokeColor).style("stroke-width",this.strokeWidth);else if("circle"===this.shape){var a=.5*(r+this.strokeWidth);i().append("circle").attr("cx",a+1).attr("cy",a+1).attr("r",a).style("fill",this.fillColor).style("stroke",this.strokeColor).style("stroke-width",this.strokeWidth)}else if("donut"===this.shape);else if("diamond"===this.shape);else{if("line"!==this.shape)throw new Error("Unexpected shape:"+this.shape);var u=this.length?this.length(t.resolution,t.z,t.viewScale):t.resolution;u/=t.z,o.append("svg").attr("width",u).attr("height",r).style("","inline-block").append("line").attr("x1",0).attr("y1",r/2).attr("x2",u).attr("y2",r/2).style("stroke",this.color).style("stroke-width",r)}o.append("div").style("display","inline").style("padding-left","5px").style("font-size",this.labelFontSize).text(n+(this.labelUnitText?" ":"")+this.labelUnitText)}}}])&&es(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(El);function us(t,e){var r,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=[],i=Ql(t);try{var a=function(){var i=r.value;n.title=i==t[0]?n.title:void 0,n.size=function(){return e(i)},n.label=function(){return i},o.push(new as(n))};for(i.s();!(r=i.n()).done;)a()}catch(t){i.e(t)}finally{i.f()}return o}function cs(t){var e,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=r.k||[.9,.5,.2,.05],o=[],i=Ql(n);try{var a=function(){var i=e.value;r.title=i==n[0]?r.title:void 0,r.label=function(e,r){return Jl(i*Zi(r,t))},o.push(new as(r))};for(i.s();!(e=i.n()).done;)a()}catch(t){i.e(t)}finally{i.f()}return o}function ls(t,e){for(var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=r.labelFormat||function(t){return t},o=r.labelText||fs(n),i=[],a=function(n){r.title=n==e.length-1?r.title:void 0,r.size=function(){return e[n]},r.label=function(){return o(t[n-1],t[n])},i.push(new as(r))},u=e.length-1;u>=0;u--)a(u);return i}function ss(t){for(var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=e.labelFormat||function(t){return t},n=e.labelText||fs(r),o=[],i=e.viewScaleFun||function(t){return t},a=function(r){e.title=r==t-1?e.title:void 0,e.size=function(t){return i(t).values[r]},e.label=function(t){return n(i(t).breaks[r-1],i(t).breaks[r])},o.push(new as(e))},u=t-1;u>=0;u--)a(u);return o}function fs(t){return function(e,r){return null==e&&null==r?"":null==r?"> "+t(e):null==e?"< "+t(r):t(e)+" - "+t(r)}}function hs(t){return hs="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},hs(t)}function ys(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,ps(n.key),n)}}function ps(t){var e=function(t){if("object"!=hs(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=hs(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==hs(e)?e:e+""}function vs(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(vs=function(){return!!t})()}function ds(t){return ds=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},ds(t)}function bs(t,e){return bs=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},bs(t,e)}var ms=function(t){function e(t){var r;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),r=function(t,e,r){return e=ds(e),function(t,e){if(e&&("object"==hs(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,vs()?Reflect.construct(e,r||[],ds(t).constructor):e.apply(t,r))}(this,e,[t]),t=t||{},r.orientation=t.orientation||0,r.color=t.color||function(t,e,r){return"gray"},r.width=t.width||function(t,e,r){return 3*e},r.length=t.length||function(t,e,r){return t},r.label=t.label||"-",r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&bs(t,e)}(e,t),r=e,n=[{key:"update",value:function(t){this.div.selectAll("*").remove(),this.makeTitle();var e=this.div.append("div"),r=this.color(t.resolution,t.z,t.viewScale),n=this.width(t.resolution,t.z,t.viewScale)/t.z,o=this.length(t.resolution,t.z,t.viewScale)/t.z,i=Math.max(o,n),a=e.append("svg").attr("width",i).attr("height",i).style("","inline-block"),u=Math.cos(-this.orientation*Math.PI/180),c=Math.sin(-this.orientation*Math.PI/180),l=.5*i,s=.5*o;a.append("line").attr("x1",l-u*s).attr("y1",l-c*s).attr("x2",l+u*s).attr("y2",l+c*s).style("stroke",r).style("stroke-width",n),e.append("div").style("display","inline").style("padding-left","5px").style("font-size",this.labelFontSize).text(this.label+(this.labelUnitText?" ":"")+this.labelUnitText)}}],n&&ys(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(El);function gs(t,e){for(var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=[],o=0;o<t.length;o++)r.title=0==o?r.title:void 0,r.orientation=t[o],r.label=e[o],n.push(new ms(r));return n}function ws(t){return ws="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ws(t)}function xs(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,Ss(n.key),n)}}function Ss(t){var e=function(t){if("object"!=ws(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,"string");if("object"!=ws(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==ws(e)?e:e+""}function Os(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(Os=function(){return!!t})()}function _s(t){return _s=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},_s(t)}function js(t,e){return js=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},js(t,e)}var Ps=function(t){function e(t){var r;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),r=function(t,e,r){return e=_s(e),function(t,e){if(e&&("object"==ws(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Os()?Reflect.construct(e,r||[],_s(t).constructor):e.apply(t,r))}(this,e,[t]),t=t||{},r.classifier=t.classifier,r.width=t.width||150,r.selectionColor=r.selectionColor||"red",r.tooltip=t.tooltip,r.texts=t.texts,r.leftText=t.leftText||"Category 0",r.topText=t.topText||"Category 1",r.rightText=t.rightText||"Category 2",r.centerCoefficient=t.centerCoefficient||r.classifier.centerCoefficient,r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&js(t,e)}(e,t),r=e,n=[{key:"update",value:function(t){this.div.selectAll("*").remove(),this.makeTitle();var e=this.width,r=.866025*e,n=this.classifier,o=this.selectionColor,i=this.tooltip,a=this.texts||{},u=this.div.append("svg").attr("width",e+0).attr("height",r+8+24);u.append("text").attr("x",e/2).attr("y",14).text(this.topText).attr("font-size",12).attr("text-anchor","middle"),u.append("text").attr("x",0).attr("y",30+r).text(this.leftText).attr("font-size",12).attr("text-anchor","start"),u.append("text").attr("x",e).attr("y",30+r).text(this.rightText).attr("font-size",12).attr("text-anchor","end");var c=u.append("g").attr("transform","translate(0 16)"),l=function(t,e,r){t.attr("fill",e).on("mouseover",(function(t){pt(this).attr("fill",o),i&&r&&(i.html(r),i.setPosition(t),i.show())})).on("mouseout",(function(){pt(this).attr("fill",e),i&&i.hide()})),i&&r&&t.on("mousemove",(function(t){i.setPosition(t)}))};l(c.append("polygon").attr("points","0,"+r+" "+e/3+","+r+" "+e/2+","+2*r/3+" "+e/6+","+2*r/3),n.colors[0],a[0]),l(c.append("polygon").attr("points",e/2+",0 "+2*e/3+","+r/3+" "+e/2+","+2*r/3+" "+e/3+","+r/3),n.colors[1],a[1]),l(c.append("polygon").attr("points",e+","+r+" "+5*e/6+","+2*r/3+" "+e/2+","+2*r/3+" "+2*e/3+","+r),n.colors[2],a[2]),l(c.append("polygon").attr("points",e/2+","+2*r/3+" "+5*e/6+","+2*r/3+" "+2*e/3+","+r/3),n.mixColors[0],a.m12),l(c.append("polygon").attr("points",e/2+","+2*r/3+" "+e/3+","+r+" "+2*e/3+","+r),n.mixColors[1],a.m02),l(c.append("polygon").attr("points",e/2+","+2*r/3+" "+e/6+","+2*r/3+" "+e/3+","+r/3),n.mixColors[2],a.m01),this.centerCoefficient&&l(c.append("circle").attr("cx",e/2).attr("cy",2*r/3).attr("r",this.centerCoefficient*r/3),n.centerColor,a.center)}}],n&&xs(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),r;var r,n}(El),ks=function(t){return t};ks.invert=ks;var Es=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:3;if(0==t)return ks;var e=Math.exp(t)-1,r=function(r){return(Math.exp(r*t)-1)/e};return r.invert=function(r){return Math.log(e*r+1)/t},r},Ts=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:3;if(0==t)return ks;var e=Math.exp(t),r=1-e,n=function(n){return 1-Math.log(e+n*r)/t};return n.invert=function(n){return(Math.exp((1-n)*t)-e)/r},n},Cs=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:3;if(1==t)return ks;var e=function(e){return Math.pow(e,t)},r=1/t;return e.invert=function(t){return Math.pow(t,r)},e},As=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:3;if(1==t)return ks;var e=1/t,r=function(t){return 1-Math.pow(1-t,e)};return r.invert=function(e){return 1-Math.pow(1-e,t)},r},Ms=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:.8;if(0==t)return ks;if(1==t)return function(t){return Math.sqrt(t*(2-t))};var e=t/(1-t);return function(t){return Math.sqrt(1/(e*e)+t*(2/e+2-t))-1/e}},Ls=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:.8;if(0==t)return ks;var e=Ms(t);return function(t){return 1-e(1-t)}};const zs=Math.PI/180,Rs=180/Math.PI,Is=.96422,Fs=.82521,Bs=4/29,Ns=6/29,Ds=3*Ns*Ns,Gs=Ns*Ns*Ns;function Us(t){if(t instanceof $s)return new $s(t.l,t.a,t.b,t.opacity);if(t instanceof Vs)return Zs(t);t instanceof Ae||(t=Te(t));var e,r,n=qs(t.r),o=qs(t.g),i=qs(t.b),a=Ys((.2225045*n+.7168786*o+.0606169*i)/1);return n===o&&o===i?e=r=a:(e=Ys((.4360747*n+.3850649*o+.1430804*i)/Is),r=Ys((.0139322*n+.0971045*o+.7141733*i)/Fs)),new $s(116*a-16,500*(e-a),200*(a-r),t.opacity)}function Ws(t,e,r,n){return 1===arguments.length?Us(t):new $s(t,e,r,null==n?1:n)}function $s(t,e,r,n){this.l=+t,this.a=+e,this.b=+r,this.opacity=+n}function Ys(t){return t>Gs?Math.pow(t,1/3):t/Ds+Bs}function Hs(t){return t>Ns?t*t*t:Ds*(t-Bs)}function Xs(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function qs(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function Vs(t,e,r,n){this.h=+t,this.c=+e,this.l=+r,this.opacity=+n}function Zs(t){if(isNaN(t.h))return new $s(t.l,0,0,t.opacity);var e=t.h*zs;return new $s(t.l,Math.cos(e)*t.c,Math.sin(e)*t.c,t.opacity)}function Js(t,e){var r=Ye((t=Ws(t)).l,(e=Ws(e)).l),n=Ye(t.a,e.a),o=Ye(t.b,e.b),i=Ye(t.opacity,e.opacity);return function(e){return t.l=r(e),t.a=n(e),t.b=o(e),t.opacity=i(e),t+""}}function Ks(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,u=[],c=!0,l=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(u.push(n.value),u.length!==e);c=!0);}catch(t){l=!0,o=t}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(l)throw o}}return u}}(t,e)||function(t,e){if(t){if("string"==typeof t)return Qs(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Qs(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Qs(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}ce($s,Ws,le(se,{brighter(t){return new $s(this.l+18*(null==t?1:t),this.a,this.b,this.opacity)},darker(t){return new $s(this.l-18*(null==t?1:t),this.a,this.b,this.opacity)},rgb(){var t=(this.l+16)/116,e=isNaN(this.a)?t:t+this.a/500,r=isNaN(this.b)?t:t-this.b/200;return new Ae(Xs(3.1338561*(e=Is*Hs(e))-1.6168667*(t=1*Hs(t))-.4906146*(r=Fs*Hs(r))),Xs(-.9787684*e+1.9161415*t+.033454*r),Xs(.0719453*e-.2289914*t+1.4052427*r),this.opacity)}})),ce(Vs,(function(t,e,r,n){return 1===arguments.length?function(t){if(t instanceof Vs)return new Vs(t.h,t.c,t.l,t.opacity);if(t instanceof $s||(t=Us(t)),0===t.a&&0===t.b)return new Vs(NaN,0<t.l&&t.l<100?0:NaN,t.l,t.opacity);var e=Math.atan2(t.b,t.a)*Rs;return new Vs(e<0?e+360:e,Math.sqrt(t.a*t.a+t.b*t.b),t.l,t.opacity)}(t):new Vs(t,e,r,null==n?1:n)}),le(se,{brighter(t){return new Vs(this.h,this.c,this.l+18*(null==t?1:t),this.opacity)},darker(t){return new Vs(this.h,this.c,this.l-18*(null==t?1:t),this.opacity)},rgb(){return Zs(this).rgb()}}));var tf=function(t,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=t[0],o=t[1],i=t[2],a=Ks(r.center||[1/3,1/3,1/3],3),u=a[0],c=a[1],l=a[2],s=null==r.withMixedClasses||r.withMixedClasses,f=r.centerCoefficient?1-r.centerCoefficient:void 0,h=function(t){var r=e(t);if(r){var a=+t[n]/r,h=+t[o]/r,y=+t[i]/r;return a>=u&&h<=c&&y<=l?null!=f&&(y-l)*(c-f*c)>=(h-f*c)*(f*l-l)?"center":"0":a<=u&&h>=c&&y<=l?null!=f&&(y-l)*(u-f*u)>=(a-f*u)*(f*l-l)?"center":"1":a<=u&&h<=c&&y>=l?null!=f&&(h-c)*(u-f*u)>=(a-f*u)*(f*c-c)?"center":"2":a<=u&&h>=c&&y>=l?null!=f&&a>f*u?"center":s?"m12":h>y?"1":"2":a>=u&&h<=c&&y>=l?null!=f&&h>f*c?"center":s?"m02":a>y?"0":"2":a>=u&&h>=c&&y<=l?null!=f&&y>f*l?"center":s?"m01":h>a?"1":"0":"unknown"}};return h.center=[u,c,l],h.centerCoefficient=r.centerCoefficient,h},ef=function(t,e,r){var n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},o=Ks(r||["red","green","blue"],3),i=o[0],a=o[1],u=o[2],c=n.colorInterpolation||Js,l=null==n.withMixedClasses||n.withMixedClasses,s=function(t,e){return c(t,e)(.5)},f=Ks(n.mixedColors||l?[s(a,u),s(i,u),s(i,a)]:[],3),h=f[0],y=f[1],p=f[2],v=n.centerColor||c(s(i,a),u)(.333),d=tf(t,e,n),b=function(t){var e=d(t);return"0"==e?i:"1"==e?a:"2"==e?u:"m12"==e?h:"m02"==e?y:"m01"==e?p:"center"==e?v:n.defaultColor||"black"};return b.center=d.center,b.centerCoefficient=n.centerCoefficient,b.colors=[i,a,u],b.mixColors=[h,y,p],b.centerColor=v,b.classifier=d,b};function rf(t,e){if((r=(t=e?t.toExponential(e-1):t.toExponential()).indexOf("e"))<0)return null;var r,n=t.slice(0,r);return[n.length>1?n[0]+n.slice(2):n,+t.slice(r+1)]}var nf,of=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function af(t){if(!(e=of.exec(t)))throw new Error("invalid format: "+t);var e;return new uf({fill:e[1],align:e[2],sign:e[3],symbol:e[4],zero:e[5],width:e[6],comma:e[7],precision:e[8]&&e[8].slice(1),trim:e[9],type:e[10]})}function uf(t){this.fill=void 0===t.fill?" ":t.fill+"",this.align=void 0===t.align?">":t.align+"",this.sign=void 0===t.sign?"-":t.sign+"",this.symbol=void 0===t.symbol?"":t.symbol+"",this.zero=!!t.zero,this.width=void 0===t.width?void 0:+t.width,this.comma=!!t.comma,this.precision=void 0===t.precision?void 0:+t.precision,this.trim=!!t.trim,this.type=void 0===t.type?"":t.type+""}function cf(t,e){var r=rf(t,e);if(!r)return t+"";var n=r[0],o=r[1];return o<0?"0."+new Array(-o).join("0")+n:n.length>o+1?n.slice(0,o+1)+"."+n.slice(o+1):n+new Array(o-n.length+2).join("0")}af.prototype=uf.prototype,uf.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(void 0===this.width?"":Math.max(1,0|this.width))+(this.comma?",":"")+(void 0===this.precision?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type};const lf={"%":(t,e)=>(100*t).toFixed(e),b:t=>Math.round(t).toString(2),c:t=>t+"",d:function(t){return Math.abs(t=Math.round(t))>=1e21?t.toLocaleString("en").replace(/,/g,""):t.toString(10)},e:(t,e)=>t.toExponential(e),f:(t,e)=>t.toFixed(e),g:(t,e)=>t.toPrecision(e),o:t=>Math.round(t).toString(8),p:(t,e)=>cf(100*t,e),r:cf,s:function(t,e){var r=rf(t,e);if(!r)return t+"";var n=r[0],o=r[1],i=o-(nf=3*Math.max(-8,Math.min(8,Math.floor(o/3))))+1,a=n.length;return i===a?n:i>a?n+new Array(i-a+1).join("0"):i>0?n.slice(0,i)+"."+n.slice(i):"0."+new Array(1-i).join("0")+rf(t,Math.max(0,e+i-1))[0]},X:t=>Math.round(t).toString(16).toUpperCase(),x:t=>Math.round(t).toString(16)};function sf(t){return t}var ff,hf=Array.prototype.map,yf=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function pf(t){return ff=function(t){var e,r,n=void 0===t.grouping||void 0===t.thousands?sf:(e=hf.call(t.grouping,Number),r=t.thousands+"",function(t,n){for(var o=t.length,i=[],a=0,u=e[0],c=0;o>0&&u>0&&(c+u+1>n&&(u=Math.max(1,n-c)),i.push(t.substring(o-=u,o+u)),!((c+=u+1)>n));)u=e[a=(a+1)%e.length];return i.reverse().join(r)}),o=void 0===t.currency?"":t.currency[0]+"",i=void 0===t.currency?"":t.currency[1]+"",a=void 0===t.decimal?".":t.decimal+"",u=void 0===t.numerals?sf:function(t){return function(e){return e.replace(/[0-9]/g,(function(e){return t[+e]}))}}(hf.call(t.numerals,String)),c=void 0===t.percent?"%":t.percent+"",l=void 0===t.minus?"−":t.minus+"",s=void 0===t.nan?"NaN":t.nan+"";function f(t){var e=(t=af(t)).fill,r=t.align,f=t.sign,h=t.symbol,y=t.zero,p=t.width,v=t.comma,d=t.precision,b=t.trim,m=t.type;"n"===m?(v=!0,m="g"):lf[m]||(void 0===d&&(d=12),b=!0,m="g"),(y||"0"===e&&"="===r)&&(y=!0,e="0",r="=");var g="$"===h?o:"#"===h&&/[boxX]/.test(m)?"0"+m.toLowerCase():"",w="$"===h?i:/[%p]/.test(m)?c:"",x=lf[m],S=/[defgprs%]/.test(m);function O(t){var o,i,c,h=g,O=w;if("c"===m)O=x(t)+O,t="";else{var _=(t=+t)<0||1/t<0;if(t=isNaN(t)?s:x(Math.abs(t),d),b&&(t=function(t){t:for(var e,r=t.length,n=1,o=-1;n<r;++n)switch(t[n]){case".":o=e=n;break;case"0":0===o&&(o=n),e=n;break;default:if(!+t[n])break t;o>0&&(o=0)}return o>0?t.slice(0,o)+t.slice(e+1):t}(t)),_&&0==+t&&"+"!==f&&(_=!1),h=(_?"("===f?f:l:"-"===f||"("===f?"":f)+h,O=("s"===m?yf[8+nf/3]:"")+O+(_&&"("===f?")":""),S)for(o=-1,i=t.length;++o<i;)if(48>(c=t.charCodeAt(o))||c>57){O=(46===c?a+t.slice(o+1):t.slice(o))+O,t=t.slice(0,o);break}}v&&!y&&(t=n(t,1/0));var j=h.length+t.length+O.length,P=j<p?new Array(p-j+1).join(e):"";switch(v&&y&&(t=n(P+t,P.length?p-O.length:1/0),P=""),r){case"<":t=h+t+O+P;break;case"=":t=h+P+t+O;break;case"^":t=P.slice(0,j=P.length>>1)+h+t+O+P.slice(j);break;default:t=P+h+t+O}return u(t)}return d=void 0===d?6:/[gprs]/.test(m)?Math.max(1,Math.min(21,d)):Math.max(0,Math.min(20,d)),O.toString=function(){return t+""},O}return{format:f,formatPrefix:function(t,e){var r,n=f(((t=af(t)).type="f",t)),o=3*Math.max(-8,Math.min(8,Math.floor((r=e,((r=rf(Math.abs(r)))?r[1]:NaN)/3)))),i=Math.pow(10,-o),a=yf[8+o/3];return function(t){return n(i*t)+a}}}}(t),ff.format,ff.formatPrefix,ff}pf({thousands:",",grouping:[3],currency:["$",""]});var vf=zr.getParameterByName;return pf({decimal:".",thousands:" ",grouping:[3],currency:["","€"]}),e})()));
|
|
2
|
+
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.gridviz=e():t.gridviz=e()}(self,()=>(()=>{"use strict";var t={d:(e,n)=>{for(var r in n)t.o(n,r)&&!t.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:n[r]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r:t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})}},e={};function n(){}function r(t){return null==t?n:function(){return this.querySelector(t)}}function o(t){"function"!=typeof t&&(t=r(t));for(var e=this._groups,n=e.length,o=new Array(n),i=0;i<n;++i)for(var a,u,l=e[i],c=l.length,f=o[i]=new Array(c),s=0;s<c;++s)(a=l[s])&&(u=t.call(a,a.__data__,s,l))&&("__data__"in a&&(u.__data__=a.__data__),f[s]=u);return new Xt(o,this._parents)}function i(){return[]}function a(t){return null==t?i:function(){return this.querySelectorAll(t)}}function u(t){t="function"==typeof t?function(t){return function(){return null==(e=t.apply(this,arguments))?[]:Array.isArray(e)?e:Array.from(e);var e}}(t):a(t);for(var e=this._groups,n=e.length,r=[],o=[],i=0;i<n;++i)for(var u,l=e[i],c=l.length,f=0;f<c;++f)(u=l[f])&&(r.push(t.call(u,u.__data__,f,l)),o.push(u));return new Xt(r,o)}function l(t){return function(){return this.matches(t)}}function c(t){return function(e){return e.matches(t)}}t.r(e),t.d(e,{BackgroundLayer:()=>Rf,BackgroundLayerImage:()=>qf,BackgroundLayerWMS:()=>Gf,CSVGrid:()=>Yi,ColorCategoryLegend:()=>Us,ColorDiscreteLegend:()=>Fs,ColorLegend:()=>Cs,CompositionStyle:()=>Ua,Dataset:()=>Jo,DotDensityStyle:()=>yl,GeoCanvas:()=>Zr,GeoJSONLayer:()=>ms,GridLayer:()=>Tf,ImageStyle:()=>cf,Interpolator:()=>bf,IsoFenceStyle:()=>qc,JSGrid:()=>ra,JoyPlotStyle:()=>za,LabelLayer:()=>as,Layer:()=>Ho,LegoStyle:()=>Kl,Map:()=>Po,MosaicStyle:()=>wc,MultiResolutionDataset:()=>ni,NinjaStarStyle:()=>kc,OrientationLegend:()=>fh,PillarStyle:()=>pu,SegmentStyle:()=>Ja,ShadingRayStyle:()=>Nu,ShadingStyle:()=>Hu,ShapeColorSizeStyle:()=>sa,SideCategoryStyle:()=>Ku,SideStyle:()=>Su,SideTanakaStyle:()=>xl,SizeLegend:()=>Qs,SquareColorCategoryWebGLStyle:()=>Mu,SquareColorWebGLStyle:()=>hc,StrokeStyle:()=>ga,Style:()=>Lo,TernaryLegend:()=>mh,TextStyle:()=>iu,TiledGrid:()=>Fi,TimeSeriesStyle:()=>Bc,cellsToMatrix:()=>_a,circularInverseScale:()=>Ph,circularScale:()=>jh,classifier:()=>Nl,classifierMinMax:()=>Dl,colorClassifier:()=>Gl,discreteColors:()=>Wl,exponentialScale:()=>wh,getParameterByName:()=>yy,logarithmicScale:()=>xh,nice:()=>Pa,orientationLegend:()=>sh,powerInverseScale:()=>Oh,powerScale:()=>Sh,sizeDiscreteLegend:()=>eh,sizeDiscreteViewScaleLegend:()=>nh,sizeLegend:()=>Ks,sizeLegendViewScale:()=>th,ternaryClassifier:()=>Xh,ternaryColorClassifier:()=>Vh,viewScale:()=>zl,viewScaleColor:()=>Il,viewScaleColorQuantile:()=>Fl,viewScaleCombination:()=>Ll,viewScaleQuantile:()=>Rl,viewScaleQuantileClassifer:()=>Bl}),Object.defineProperty(r,"name",{value:"default",configurable:!0}),Object.defineProperty(o,"name",{value:"default",configurable:!0}),Object.defineProperty(a,"name",{value:"default",configurable:!0}),Object.defineProperty(u,"name",{value:"default",configurable:!0}),Object.defineProperty(l,"name",{value:"default",configurable:!0}),Object.defineProperty(h,"name",{value:"default",configurable:!0});var f=Array.prototype.find;function s(){return this.firstElementChild}function h(t){return this.select(null==t?s:function(t){return function(){return f.call(this.children,t)}}("function"==typeof t?t:c(t)))}Object.defineProperty(v,"name",{value:"default",configurable:!0});var y=Array.prototype.filter;function p(){return Array.from(this.children)}function v(t){return this.selectAll(null==t?p:function(t){return function(){return y.call(this.children,t)}}("function"==typeof t?t:c(t)))}function d(t){"function"!=typeof t&&(t=l(t));for(var e=this._groups,n=e.length,r=new Array(n),o=0;o<n;++o)for(var i,a=e[o],u=a.length,c=r[o]=[],f=0;f<u;++f)(i=a[f])&&t.call(i,i.__data__,f,a)&&c.push(i);return new Xt(r,this._parents)}function b(t){return new Array(t.length)}function m(){return new Xt(this._enter||this._groups.map(b),this._parents)}function g(t,e){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=e}function w(t){return function(){return t}}function x(t,e,n,r,o,i){for(var a,u=0,l=e.length,c=i.length;u<c;++u)(a=e[u])?(a.__data__=i[u],r[u]=a):n[u]=new g(t,i[u]);for(;u<l;++u)(a=e[u])&&(o[u]=a)}function S(t,e,n,r,o,i,a){var u,l,c,f=new Map,s=e.length,h=i.length,y=new Array(s);for(u=0;u<s;++u)(l=e[u])&&(y[u]=c=a.call(l,l.__data__,u,e)+"",f.has(c)?o[u]=l:f.set(c,l));for(u=0;u<h;++u)c=a.call(t,i[u],u,i)+"",(l=f.get(c))?(r[u]=l,l.__data__=i[u],f.delete(c)):n[u]=new g(t,i[u]);for(u=0;u<s;++u)(l=e[u])&&f.get(y[u])===l&&(o[u]=l)}function O(t){return t.__data__}function j(t,e){if(!arguments.length)return Array.from(this,O);var n=e?S:x,r=this._parents,o=this._groups;"function"!=typeof t&&(t=w(t));for(var i=o.length,a=new Array(i),u=new Array(i),l=new Array(i),c=0;c<i;++c){var f=r[c],s=o[c],h=s.length,y=P(t.call(f,f&&f.__data__,c,r)),p=y.length,v=u[c]=new Array(p),d=a[c]=new Array(p);n(f,s,v,d,l[c]=new Array(h),y,e);for(var b,m,g=0,j=0;g<p;++g)if(b=v[g]){for(g>=j&&(j=g+1);!(m=d[j])&&++j<p;);b._next=m||null}}return(a=new Xt(a,r))._enter=u,a._exit=l,a}function P(t){return"object"==typeof t&&"length"in t?t:Array.from(t)}function _(){return new Xt(this._exit||this._groups.map(b),this._parents)}function T(t,e,n){var r=this.enter(),o=this,i=this.exit();return"function"==typeof t?(r=t(r))&&(r=r.selection()):r=r.append(t+""),null!=e&&(o=e(o))&&(o=o.selection()),null==n?i.remove():n(i),r&&o?r.merge(o).order():o}function k(t){for(var e=t.selection?t.selection():t,n=this._groups,r=e._groups,o=n.length,i=r.length,a=Math.min(o,i),u=new Array(o),l=0;l<a;++l)for(var c,f=n[l],s=r[l],h=f.length,y=u[l]=new Array(h),p=0;p<h;++p)(c=f[p]||s[p])&&(y[p]=c);for(;l<o;++l)u[l]=n[l];return new Xt(u,this._parents)}function C(){for(var t=this._groups,e=-1,n=t.length;++e<n;)for(var r,o=t[e],i=o.length-1,a=o[i];--i>=0;)(r=o[i])&&(a&&4^r.compareDocumentPosition(a)&&a.parentNode.insertBefore(r,a),a=r);return this}function E(t){function e(e,n){return e&&n?t(e.__data__,n.__data__):!e-!n}t||(t=A);for(var n=this._groups,r=n.length,o=new Array(r),i=0;i<r;++i){for(var a,u=n[i],l=u.length,c=o[i]=new Array(l),f=0;f<l;++f)(a=u[f])&&(c[f]=a);c.sort(e)}return new Xt(o,this._parents).order()}function A(t,e){return t<e?-1:t>e?1:t>=e?0:NaN}function M(){var t=arguments[0];return arguments[0]=this,t.apply(null,arguments),this}function z(){return Array.from(this)}function R(){for(var t=this._groups,e=0,n=t.length;e<n;++e)for(var r=t[e],o=0,i=r.length;o<i;++o){var a=r[o];if(a)return a}return null}function I(){let t=0;for(const e of this)++t;return t}function F(){return!this.node()}function B(t){for(var e=this._groups,n=0,r=e.length;n<r;++n)for(var o,i=e[n],a=0,u=i.length;a<u;++a)(o=i[a])&&t.call(o,o.__data__,a,i);return this}Object.defineProperty(d,"name",{value:"default",configurable:!0}),Object.defineProperty(b,"name",{value:"default",configurable:!0}),Object.defineProperty(m,"name",{value:"default",configurable:!0}),g.prototype={constructor:g,appendChild:function(t){return this._parent.insertBefore(t,this._next)},insertBefore:function(t,e){return this._parent.insertBefore(t,e)},querySelector:function(t){return this._parent.querySelector(t)},querySelectorAll:function(t){return this._parent.querySelectorAll(t)}},Object.defineProperty(w,"name",{value:"default",configurable:!0}),Object.defineProperty(j,"name",{value:"default",configurable:!0}),Object.defineProperty(_,"name",{value:"default",configurable:!0}),Object.defineProperty(T,"name",{value:"default",configurable:!0}),Object.defineProperty(k,"name",{value:"default",configurable:!0}),Object.defineProperty(C,"name",{value:"default",configurable:!0}),Object.defineProperty(E,"name",{value:"default",configurable:!0}),Object.defineProperty(M,"name",{value:"default",configurable:!0}),Object.defineProperty(z,"name",{value:"default",configurable:!0}),Object.defineProperty(R,"name",{value:"default",configurable:!0}),Object.defineProperty(I,"name",{value:"default",configurable:!0}),Object.defineProperty(F,"name",{value:"default",configurable:!0}),Object.defineProperty(B,"name",{value:"default",configurable:!0});var L="http://www.w3.org/1999/xhtml";const N={svg:"http://www.w3.org/2000/svg",xhtml:L,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function D(t){var e=t+="",n=e.indexOf(":");return n>=0&&"xmlns"!==(e=t.slice(0,n))&&(t=t.slice(n+1)),N.hasOwnProperty(e)?{space:N[e],local:t}:t}function G(t){return function(){this.removeAttribute(t)}}function W(t){return function(){this.removeAttributeNS(t.space,t.local)}}function U(t,e){return function(){this.setAttribute(t,e)}}function $(t,e){return function(){this.setAttributeNS(t.space,t.local,e)}}function H(t,e){return function(){var n=e.apply(this,arguments);null==n?this.removeAttribute(t):this.setAttribute(t,n)}}function X(t,e){return function(){var n=e.apply(this,arguments);null==n?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,n)}}function V(t,e){var n=D(t);if(arguments.length<2){var r=this.node();return n.local?r.getAttributeNS(n.space,n.local):r.getAttribute(n)}return this.each((null==e?n.local?W:G:"function"==typeof e?n.local?X:H:n.local?$:U)(n,e))}function q(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}function Y(t){return function(){this.style.removeProperty(t)}}function Z(t,e,n){return function(){this.style.setProperty(t,e,n)}}function J(t,e,n){return function(){var r=e.apply(this,arguments);null==r?this.style.removeProperty(t):this.style.setProperty(t,r,n)}}function Q(t,e,n){return arguments.length>1?this.each((null==e?Y:"function"==typeof e?J:Z)(t,e,null==n?"":n)):K(this.node(),t)}function K(t,e){return t.style.getPropertyValue(e)||q(t).getComputedStyle(t,null).getPropertyValue(e)}function tt(t){return function(){delete this[t]}}function et(t,e){return function(){this[t]=e}}function nt(t,e){return function(){var n=e.apply(this,arguments);null==n?delete this[t]:this[t]=n}}function rt(t,e){return arguments.length>1?this.each((null==e?tt:"function"==typeof e?nt:et)(t,e)):this.node()[t]}function ot(t){return t.trim().split(/^|\s+/)}function it(t){return t.classList||new at(t)}function at(t){this._node=t,this._names=ot(t.getAttribute("class")||"")}function ut(t,e){for(var n=it(t),r=-1,o=e.length;++r<o;)n.add(e[r])}function lt(t,e){for(var n=it(t),r=-1,o=e.length;++r<o;)n.remove(e[r])}function ct(t){return function(){ut(this,t)}}function ft(t){return function(){lt(this,t)}}function st(t,e){return function(){(e.apply(this,arguments)?ut:lt)(this,t)}}function ht(t,e){var n=ot(t+"");if(arguments.length<2){for(var r=it(this.node()),o=-1,i=n.length;++o<i;)if(!r.contains(n[o]))return!1;return!0}return this.each(("function"==typeof e?st:e?ct:ft)(n,e))}function yt(){this.textContent=""}function pt(t){return function(){this.textContent=t}}function vt(t){return function(){var e=t.apply(this,arguments);this.textContent=null==e?"":e}}function dt(t){return arguments.length?this.each(null==t?yt:("function"==typeof t?vt:pt)(t)):this.node().textContent}function bt(){this.innerHTML=""}function mt(t){return function(){this.innerHTML=t}}function gt(t){return function(){var e=t.apply(this,arguments);this.innerHTML=null==e?"":e}}function wt(t){return arguments.length?this.each(null==t?bt:("function"==typeof t?gt:mt)(t)):this.node().innerHTML}function xt(){this.nextSibling&&this.parentNode.appendChild(this)}function St(){return this.each(xt)}function Ot(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function jt(){return this.each(Ot)}function Pt(t){return function(){var e=this.ownerDocument,n=this.namespaceURI;return n===L&&e.documentElement.namespaceURI===L?e.createElement(t):e.createElementNS(n,t)}}function _t(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function Tt(t){var e=D(t);return(e.local?_t:Pt)(e)}function kt(t){var e="function"==typeof t?t:Tt(t);return this.select(function(){return this.appendChild(e.apply(this,arguments))})}function Ct(){return null}function Et(t,e){var n="function"==typeof t?t:Tt(t),o=null==e?Ct:"function"==typeof e?e:r(e);return this.select(function(){return this.insertBefore(n.apply(this,arguments),o.apply(this,arguments)||null)})}function At(){var t=this.parentNode;t&&t.removeChild(this)}function Mt(){return this.each(At)}function zt(){var t=this.cloneNode(!1),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function Rt(){var t=this.cloneNode(!0),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function It(t){return this.select(t?Rt:zt)}function Ft(t){return arguments.length?this.property("__data__",t):this.node().__data__}function Bt(t){return function(){var e=this.__on;if(e){for(var n,r=0,o=-1,i=e.length;r<i;++r)n=e[r],t.type&&n.type!==t.type||n.name!==t.name?e[++o]=n:this.removeEventListener(n.type,n.listener,n.options);++o?e.length=o:delete this.__on}}}function Lt(t,e,n){return function(){var r,o=this.__on,i=function(t){return function(e){t.call(this,e,this.__data__)}}(e);if(o)for(var a=0,u=o.length;a<u;++a)if((r=o[a]).type===t.type&&r.name===t.name)return this.removeEventListener(r.type,r.listener,r.options),this.addEventListener(r.type,r.listener=i,r.options=n),void(r.value=e);this.addEventListener(t.type,i,n),r={type:t.type,name:t.name,value:e,listener:i,options:n},o?o.push(r):this.__on=[r]}}function Nt(t,e,n){var r,o,i=function(t){return t.trim().split(/^|\s+/).map(function(t){var e="",n=t.indexOf(".");return n>=0&&(e=t.slice(n+1),t=t.slice(0,n)),{type:t,name:e}})}(t+""),a=i.length;if(!(arguments.length<2)){for(u=e?Lt:Bt,r=0;r<a;++r)this.each(u(i[r],e,n));return this}var u=this.node().__on;if(u)for(var l,c=0,f=u.length;c<f;++c)for(r=0,l=u[c];r<a;++r)if((o=i[r]).type===l.type&&o.name===l.name)return l.value}function Dt(t,e,n){var r=q(t),o=r.CustomEvent;"function"==typeof o?o=new o(e,n):(o=r.document.createEvent("Event"),n?(o.initEvent(e,n.bubbles,n.cancelable),o.detail=n.detail):o.initEvent(e,!1,!1)),t.dispatchEvent(o)}function Gt(t,e){return function(){return Dt(this,t,e)}}function Wt(t,e){return function(){return Dt(this,t,e.apply(this,arguments))}}function Ut(t,e){return this.each(("function"==typeof e?Wt:Gt)(t,e))}function*$t(){for(var t=this._groups,e=0,n=t.length;e<n;++e)for(var r,o=t[e],i=0,a=o.length;i<a;++i)(r=o[i])&&(yield r)}Object.defineProperty(D,"name",{value:"default",configurable:!0}),Object.defineProperty(V,"name",{value:"default",configurable:!0}),Object.defineProperty(q,"name",{value:"default",configurable:!0}),Object.defineProperty(Q,"name",{value:"default",configurable:!0}),Object.defineProperty(rt,"name",{value:"default",configurable:!0}),Object.defineProperty(ht,"name",{value:"default",configurable:!0}),at.prototype={add:function(t){this._names.indexOf(t)<0&&(this._names.push(t),this._node.setAttribute("class",this._names.join(" ")))},remove:function(t){var e=this._names.indexOf(t);e>=0&&(this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(t){return this._names.indexOf(t)>=0}},Object.defineProperty(dt,"name",{value:"default",configurable:!0}),Object.defineProperty(wt,"name",{value:"default",configurable:!0}),Object.defineProperty(St,"name",{value:"default",configurable:!0}),Object.defineProperty(jt,"name",{value:"default",configurable:!0}),Object.defineProperty(Tt,"name",{value:"default",configurable:!0}),Object.defineProperty(kt,"name",{value:"default",configurable:!0}),Object.defineProperty(Et,"name",{value:"default",configurable:!0}),Object.defineProperty(Mt,"name",{value:"default",configurable:!0}),Object.defineProperty(It,"name",{value:"default",configurable:!0}),Object.defineProperty(Ft,"name",{value:"default",configurable:!0}),Object.defineProperty(Nt,"name",{value:"default",configurable:!0}),Object.defineProperty(Ut,"name",{value:"default",configurable:!0}),Object.defineProperty($t,"name",{value:"default",configurable:!0});var Ht=[null];function Xt(t,e){this._groups=t,this._parents=e}function Vt(){return new Xt([[document.documentElement]],Ht)}Xt.prototype=Vt.prototype={constructor:Xt,select:o,selectAll:u,selectChild:h,selectChildren:v,filter:d,data:j,enter:m,exit:_,join:T,merge:k,selection:function(){return this},order:C,sort:E,call:M,nodes:z,node:R,size:I,empty:F,each:B,attr:V,style:Q,property:rt,classed:ht,text:dt,html:wt,raise:St,lower:jt,append:kt,insert:Et,remove:Mt,clone:It,datum:Ft,on:Nt,dispatch:Ut,[Symbol.iterator]:$t};const qt=Vt;function Yt(t){return"string"==typeof t?new Xt([[document.querySelector(t)]],[document.documentElement]):new Xt([[t]],Ht)}Object.defineProperty(Yt,"name",{value:"default",configurable:!0});var Zt={value:()=>{}};function Jt(){for(var t,e=0,n=arguments.length,r={};e<n;++e){if(!(t=arguments[e]+"")||t in r||/[\s.]/.test(t))throw new Error("illegal type: "+t);r[t]=[]}return new Qt(r)}function Qt(t){this._=t}function Kt(t,e){for(var n,r=0,o=t.length;r<o;++r)if((n=t[r]).name===e)return n.value}function te(t,e,n){for(var r=0,o=t.length;r<o;++r)if(t[r].name===e){t[r]=Zt,t=t.slice(0,r).concat(t.slice(r+1));break}return null!=n&&t.push({name:e,value:n}),t}Qt.prototype=Jt.prototype={constructor:Qt,on:function(t,e){var n,r,o=this._,i=(r=o,(t+"").trim().split(/^|\s+/).map(function(t){var e="",n=t.indexOf(".");if(n>=0&&(e=t.slice(n+1),t=t.slice(0,n)),t&&!r.hasOwnProperty(t))throw new Error("unknown type: "+t);return{type:t,name:e}})),a=-1,u=i.length;if(!(arguments.length<2)){if(null!=e&&"function"!=typeof e)throw new Error("invalid callback: "+e);for(;++a<u;)if(n=(t=i[a]).type)o[n]=te(o[n],t.name,e);else if(null==e)for(n in o)o[n]=te(o[n],t.name,null);return this}for(;++a<u;)if((n=(t=i[a]).type)&&(n=Kt(o[n],t.name)))return n},copy:function(){var t={},e=this._;for(var n in e)t[n]=e[n].slice();return new Qt(t)},call:function(t,e){if((n=arguments.length-2)>0)for(var n,r,o=new Array(n),i=0;i<n;++i)o[i]=arguments[i+2];if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(i=0,n=(r=this._[t]).length;i<n;++i)r[i].value.apply(e,o)},apply:function(t,e,n){if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(var r=this._[t],o=0,i=r.length;o<i;++o)r[o].value.apply(e,n)}};const ee=Jt;Object.defineProperty(re,"name",{value:"default",configurable:!0});const ne={capture:!0,passive:!1};function re(t){t.preventDefault(),t.stopImmediatePropagation()}function oe(t){var e=t.document.documentElement,n=Yt(t).on("dragstart.drag",re,ne);"onselectstart"in e?n.on("selectstart.drag",re,ne):(e.__noselect=e.style.MozUserSelect,e.style.MozUserSelect="none")}function ie(t){return((t=Math.exp(t))+1/t)/2}Object.defineProperty(oe,"name",{value:"default",configurable:!0});const ae=function t(e,n,r){function o(t,o){var i,a,u=t[0],l=t[1],c=t[2],f=o[0],s=o[1],h=o[2],y=f-u,p=s-l,v=y*y+p*p;if(v<1e-12)a=Math.log(h/c)/e,i=function(t){return[u+t*y,l+t*p,c*Math.exp(e*t*a)]};else{var d=Math.sqrt(v),b=(h*h-c*c+r*v)/(2*c*n*d),m=(h*h-c*c-r*v)/(2*h*n*d),g=Math.log(Math.sqrt(b*b+1)-b),w=Math.log(Math.sqrt(m*m+1)-m);a=(w-g)/e,i=function(t){var r,o=t*a,i=ie(g),f=c/(n*d)*(i*(r=e*o+g,((r=Math.exp(2*r))-1)/(r+1))-function(t){return((t=Math.exp(t))-1/t)/2}(g));return[u+f*y,l+f*p,c*i/ie(e*o+g)]}}return i.duration=1e3*a*e/Math.SQRT2,i}return o.rho=function(e){var n=Math.max(.001,+e),r=n*n;return t(n,r,r*r)},o}(Math.SQRT2,2,4);function ue(t){let e;for(;e=t.sourceEvent;)t=e;return t}function le(t,e){if(t=ue(t),void 0===e&&(e=t.currentTarget),e){var n=e.ownerSVGElement||e;if(n.createSVGPoint){var r=n.createSVGPoint();return r.x=t.clientX,r.y=t.clientY,[(r=r.matrixTransform(e.getScreenCTM().inverse())).x,r.y]}if(e.getBoundingClientRect){var o=e.getBoundingClientRect();return[t.clientX-o.left-e.clientLeft,t.clientY-o.top-e.clientTop]}}return[t.pageX,t.pageY]}Object.defineProperty(ue,"name",{value:"default",configurable:!0}),Object.defineProperty(le,"name",{value:"default",configurable:!0});var ce,fe,se=0,he=0,ye=0,pe=0,ve=0,de=0,be="object"==typeof performance&&performance.now?performance:Date,me="object"==typeof window&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(t){setTimeout(t,17)};function ge(){return ve||(me(we),ve=be.now()+de)}function we(){ve=0}function xe(){this._call=this._time=this._next=null}function Se(t,e,n){var r=new xe;return r.restart(t,e,n),r}function Oe(){ve=(pe=be.now())+de,se=he=0;try{!function(){ge(),++se;for(var t,e=ce;e;)(t=ve-e._time)>=0&&e._call.call(void 0,t),e=e._next;--se}()}finally{se=0,function(){for(var t,e,n=ce,r=1/0;n;)n._call?(r>n._time&&(r=n._time),t=n,n=n._next):(e=n._next,n._next=null,n=t?t._next=e:ce=e);fe=t,Pe(r)}(),ve=0}}function je(){var t=be.now(),e=t-pe;e>1e3&&(de-=e,pe=t)}function Pe(t){se||(he&&(he=clearTimeout(he)),t-ve>24?(t<1/0&&(he=setTimeout(Oe,t-be.now()-de)),ye&&(ye=clearInterval(ye))):(ye||(pe=be.now(),ye=setInterval(je,1e3)),se=1,me(Oe)))}function _e(t,e,n){var r=new xe;return e=null==e?0:+e,r.restart(n=>{r.stop(),t(n+e)},e,n),r}xe.prototype=Se.prototype={constructor:xe,restart:function(t,e,n){if("function"!=typeof t)throw new TypeError("callback is not a function");n=(null==n?ge():+n)+(null==e?0:+e),this._next||fe===this||(fe?fe._next=this:ce=this,fe=this),this._call=t,this._time=n,Pe()},stop:function(){this._call&&(this._call=null,this._time=1/0,Pe())}},Object.defineProperty(_e,"name",{value:"default",configurable:!0}),Object.defineProperty(Fe,"name",{value:"default",configurable:!0});var Te=ee("start","end","cancel","interrupt"),ke=[],Ce=0,Ee=1,Ae=2,Me=3,ze=4,Re=5,Ie=6;function Fe(t,e,n,r,o,i){var a=t.__transition;if(a){if(n in a)return}else t.__transition={};!function(t,e,n){var r,o=t.__transition;function i(l){var c,f,s,h;if(n.state!==Ee)return u();for(c in o)if((h=o[c]).name===n.name){if(h.state===Me)return _e(i);h.state===ze?(h.state=Ie,h.timer.stop(),h.on.call("interrupt",t,t.__data__,h.index,h.group),delete o[c]):+c<e&&(h.state=Ie,h.timer.stop(),h.on.call("cancel",t,t.__data__,h.index,h.group),delete o[c])}if(_e(function(){n.state===Me&&(n.state=ze,n.timer.restart(a,n.delay,n.time),a(l))}),n.state=Ae,n.on.call("start",t,t.__data__,n.index,n.group),n.state===Ae){for(n.state=Me,r=new Array(s=n.tween.length),c=0,f=-1;c<s;++c)(h=n.tween[c].value.call(t,t.__data__,n.index,n.group))&&(r[++f]=h);r.length=f+1}}function a(e){for(var o=e<n.duration?n.ease.call(null,e/n.duration):(n.timer.restart(u),n.state=Re,1),i=-1,a=r.length;++i<a;)r[i].call(t,o);n.state===Re&&(n.on.call("end",t,t.__data__,n.index,n.group),u())}function u(){for(var r in n.state=Ie,n.timer.stop(),delete o[e],o)return;delete t.__transition}o[e]=n,n.timer=Se(function(t){n.state=Ee,n.timer.restart(i,n.delay,n.time),n.delay<=t&&i(t-n.delay)},0,n.time)}(t,n,{name:e,index:r,group:o,on:Te,tween:ke,time:i.time,delay:i.delay,duration:i.duration,ease:i.ease,timer:null,state:Ce})}function Be(t,e){var n=Ne(t,e);if(n.state>Ce)throw new Error("too late; already scheduled");return n}function Le(t,e){var n=Ne(t,e);if(n.state>Me)throw new Error("too late; already running");return n}function Ne(t,e){var n=t.__transition;if(!n||!(n=n[e]))throw new Error("transition not found");return n}function De(t,e){var n,r,o,i=t.__transition,a=!0;if(i){for(o in e=null==e?null:e+"",i)(n=i[o]).name===e?(r=n.state>Ae&&n.state<Re,n.state=Ie,n.timer.stop(),n.on.call(r?"interrupt":"cancel",t,t.__data__,n.index,n.group),delete i[o]):a=!1;a&&delete t.__transition}}function Ge(t){return this.each(function(){De(this,t)})}function We(t,e){return t=+t,e=+e,function(n){return t*(1-n)+e*n}}Object.defineProperty(De,"name",{value:"default",configurable:!0}),Object.defineProperty(Ge,"name",{value:"default",configurable:!0}),Object.defineProperty(We,"name",{value:"default",configurable:!0}),Object.defineProperty(Xe,"name",{value:"default",configurable:!0});var Ue,$e=180/Math.PI,He={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function Xe(t,e,n,r,o,i){var a,u,l;return(a=Math.sqrt(t*t+e*e))&&(t/=a,e/=a),(l=t*n+e*r)&&(n-=t*l,r-=e*l),(u=Math.sqrt(n*n+r*r))&&(n/=u,r/=u,l/=u),t*r<e*n&&(t=-t,e=-e,l=-l,a=-a),{translateX:o,translateY:i,rotate:Math.atan2(e,t)*$e,skewX:Math.atan(l)*$e,scaleX:a,scaleY:u}}function Ve(t,e,n,r){function o(t){return t.length?t.pop()+" ":""}return function(i,a){var u=[],l=[];return i=t(i),a=t(a),function(t,r,o,i,a,u){if(t!==o||r!==i){var l=a.push("translate(",null,e,null,n);u.push({i:l-4,x:We(t,o)},{i:l-2,x:We(r,i)})}else(o||i)&&a.push("translate("+o+e+i+n)}(i.translateX,i.translateY,a.translateX,a.translateY,u,l),function(t,e,n,i){t!==e?(t-e>180?e+=360:e-t>180&&(t+=360),i.push({i:n.push(o(n)+"rotate(",null,r)-2,x:We(t,e)})):e&&n.push(o(n)+"rotate("+e+r)}(i.rotate,a.rotate,u,l),function(t,e,n,i){t!==e?i.push({i:n.push(o(n)+"skewX(",null,r)-2,x:We(t,e)}):e&&n.push(o(n)+"skewX("+e+r)}(i.skewX,a.skewX,u,l),function(t,e,n,r,i,a){if(t!==n||e!==r){var u=i.push(o(i)+"scale(",null,",",null,")");a.push({i:u-4,x:We(t,n)},{i:u-2,x:We(e,r)})}else 1===n&&1===r||i.push(o(i)+"scale("+n+","+r+")")}(i.scaleX,i.scaleY,a.scaleX,a.scaleY,u,l),i=a=null,function(t){for(var e,n=-1,r=l.length;++n<r;)u[(e=l[n]).i]=e.x(t);return u.join("")}}}var qe=Ve(function(t){const e=new("function"==typeof DOMMatrix?DOMMatrix:WebKitCSSMatrix)(t+"");return e.isIdentity?He:Xe(e.a,e.b,e.c,e.d,e.e,e.f)},"px, ","px)","deg)"),Ye=Ve(function(t){return null==t?He:(Ue||(Ue=document.createElementNS("http://www.w3.org/2000/svg","g")),Ue.setAttribute("transform",t),(t=Ue.transform.baseVal.consolidate())?Xe((t=t.matrix).a,t.b,t.c,t.d,t.e,t.f):He)},", ",")",")");function Ze(t,e){var n,r;return function(){var o=Le(this,t),i=o.tween;if(i!==n)for(var a=0,u=(r=n=i).length;a<u;++a)if(r[a].name===e){(r=r.slice()).splice(a,1);break}o.tween=r}}function Je(t,e,n){var r,o;if("function"!=typeof n)throw new Error;return function(){var i=Le(this,t),a=i.tween;if(a!==r){o=(r=a).slice();for(var u={name:e,value:n},l=0,c=o.length;l<c;++l)if(o[l].name===e){o[l]=u;break}l===c&&o.push(u)}i.tween=o}}function Qe(t,e){var n=this._id;if(t+="",arguments.length<2){for(var r,o=Ne(this.node(),n).tween,i=0,a=o.length;i<a;++i)if((r=o[i]).name===t)return r.value;return null}return this.each((null==e?Ze:Je)(n,t,e))}function Ke(t,e,n){var r=t._id;return t.each(function(){var t=Le(this,r);(t.value||(t.value={}))[e]=n.apply(this,arguments)}),function(t){return Ne(t,r).value[e]}}function tn(t,e,n){t.prototype=e.prototype=n,n.constructor=t}function en(t,e){var n=Object.create(t.prototype);for(var r in e)n[r]=e[r];return n}function nn(){}Object.defineProperty(Qe,"name",{value:"default",configurable:!0}),Object.defineProperty(tn,"name",{value:"default",configurable:!0});var rn=.7,on=1/rn,an="\\s*([+-]?\\d+)\\s*",un="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",ln="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",cn=/^#([0-9a-f]{3,8})$/,fn=new RegExp(`^rgb\\(${an},${an},${an}\\)$`),sn=new RegExp(`^rgb\\(${ln},${ln},${ln}\\)$`),hn=new RegExp(`^rgba\\(${an},${an},${an},${un}\\)$`),yn=new RegExp(`^rgba\\(${ln},${ln},${ln},${un}\\)$`),pn=new RegExp(`^hsl\\(${un},${ln},${ln}\\)$`),vn=new RegExp(`^hsla\\(${un},${ln},${ln},${un}\\)$`),dn={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};function bn(){return this.rgb().formatHex()}function mn(){return this.rgb().formatRgb()}function gn(t){var e,n;return t=(t+"").trim().toLowerCase(),(e=cn.exec(t))?(n=e[1].length,e=parseInt(e[1],16),6===n?wn(e):3===n?new jn(e>>8&15|e>>4&240,e>>4&15|240&e,(15&e)<<4|15&e,1):8===n?xn(e>>24&255,e>>16&255,e>>8&255,(255&e)/255):4===n?xn(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|240&e,((15&e)<<4|15&e)/255):null):(e=fn.exec(t))?new jn(e[1],e[2],e[3],1):(e=sn.exec(t))?new jn(255*e[1]/100,255*e[2]/100,255*e[3]/100,1):(e=hn.exec(t))?xn(e[1],e[2],e[3],e[4]):(e=yn.exec(t))?xn(255*e[1]/100,255*e[2]/100,255*e[3]/100,e[4]):(e=pn.exec(t))?En(e[1],e[2]/100,e[3]/100,1):(e=vn.exec(t))?En(e[1],e[2]/100,e[3]/100,e[4]):dn.hasOwnProperty(t)?wn(dn[t]):"transparent"===t?new jn(NaN,NaN,NaN,0):null}function wn(t){return new jn(t>>16&255,t>>8&255,255&t,1)}function xn(t,e,n,r){return r<=0&&(t=e=n=NaN),new jn(t,e,n,r)}function Sn(t){return t instanceof nn||(t=gn(t)),t?new jn((t=t.rgb()).r,t.g,t.b,t.opacity):new jn}function On(t,e,n,r){return 1===arguments.length?Sn(t):new jn(t,e,n,null==r?1:r)}function jn(t,e,n,r){this.r=+t,this.g=+e,this.b=+n,this.opacity=+r}function Pn(){return`#${Cn(this.r)}${Cn(this.g)}${Cn(this.b)}`}function _n(){const t=Tn(this.opacity);return`${1===t?"rgb(":"rgba("}${kn(this.r)}, ${kn(this.g)}, ${kn(this.b)}${1===t?")":`, ${t})`}`}function Tn(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function kn(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function Cn(t){return((t=kn(t))<16?"0":"")+t.toString(16)}function En(t,e,n,r){return r<=0?t=e=n=NaN:n<=0||n>=1?t=e=NaN:e<=0&&(t=NaN),new Mn(t,e,n,r)}function An(t){if(t instanceof Mn)return new Mn(t.h,t.s,t.l,t.opacity);if(t instanceof nn||(t=gn(t)),!t)return new Mn;if(t instanceof Mn)return t;var e=(t=t.rgb()).r/255,n=t.g/255,r=t.b/255,o=Math.min(e,n,r),i=Math.max(e,n,r),a=NaN,u=i-o,l=(i+o)/2;return u?(a=e===i?(n-r)/u+6*(n<r):n===i?(r-e)/u+2:(e-n)/u+4,u/=l<.5?i+o:2-i-o,a*=60):u=l>0&&l<1?0:a,new Mn(a,u,l,t.opacity)}function Mn(t,e,n,r){this.h=+t,this.s=+e,this.l=+n,this.opacity=+r}function zn(t){return(t=(t||0)%360)<0?t+360:t}function Rn(t){return Math.max(0,Math.min(1,t||0))}function In(t,e,n){return 255*(t<60?e+(n-e)*t/60:t<180?n:t<240?e+(n-e)*(240-t)/60:e)}function Fn(t,e,n,r,o){var i=t*t,a=i*t;return((1-3*t+3*i-a)*e+(4-6*i+3*a)*n+(1+3*t+3*i-3*a)*r+a*o)/6}function Bn(t){var e=t.length-1;return function(n){var r=n<=0?n=0:n>=1?(n=1,e-1):Math.floor(n*e),o=t[r],i=t[r+1],a=r>0?t[r-1]:2*o-i,u=r<e-1?t[r+2]:2*i-o;return Fn((n-r/e)*e,a,o,i,u)}}function Ln(t){var e=t.length;return function(n){var r=Math.floor(((n%=1)<0?++n:n)*e),o=t[(r+e-1)%e],i=t[r%e],a=t[(r+1)%e],u=t[(r+2)%e];return Fn((n-r/e)*e,o,i,a,u)}}tn(nn,gn,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:bn,formatHex:bn,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return An(this).formatHsl()},formatRgb:mn,toString:mn}),tn(jn,On,en(nn,{brighter(t){return t=null==t?on:Math.pow(on,t),new jn(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=null==t?rn:Math.pow(rn,t),new jn(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new jn(kn(this.r),kn(this.g),kn(this.b),Tn(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:Pn,formatHex:Pn,formatHex8:function(){return`#${Cn(this.r)}${Cn(this.g)}${Cn(this.b)}${Cn(255*(isNaN(this.opacity)?1:this.opacity))}`},formatRgb:_n,toString:_n})),tn(Mn,function(t,e,n,r){return 1===arguments.length?An(t):new Mn(t,e,n,null==r?1:r)},en(nn,{brighter(t){return t=null==t?on:Math.pow(on,t),new Mn(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=null==t?rn:Math.pow(rn,t),new Mn(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=this.h%360+360*(this.h<0),e=isNaN(t)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*e,o=2*n-r;return new jn(In(t>=240?t-240:t+120,o,r),In(t,o,r),In(t<120?t+240:t-120,o,r),this.opacity)},clamp(){return new Mn(zn(this.h),Rn(this.s),Rn(this.l),Tn(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const t=Tn(this.opacity);return`${1===t?"hsl(":"hsla("}${zn(this.h)}, ${100*Rn(this.s)}%, ${100*Rn(this.l)}%${1===t?")":`, ${t})`}`}})),Object.defineProperty(Bn,"name",{value:"default",configurable:!0}),Object.defineProperty(Ln,"name",{value:"default",configurable:!0});const Nn=t=>()=>t;function Dn(t,e){var n=e-t;return n?function(t,e){return function(n){return t+n*e}}(t,n):Nn(isNaN(t)?e:t)}(Object.getOwnPropertyDescriptor(Nn,"name")||{}).writable||Object.defineProperty(Nn,"name",{value:"default",configurable:!0});const Gn=function t(e){var n=function(t){return 1===(t=+t)?Dn:function(e,n){return n-e?function(t,e,n){return t=Math.pow(t,n),e=Math.pow(e,n)-t,n=1/n,function(r){return Math.pow(t+r*e,n)}}(e,n,t):Nn(isNaN(e)?n:e)}}(e);function r(t,e){var r=n((t=On(t)).r,(e=On(e)).r),o=n(t.g,e.g),i=n(t.b,e.b),a=Dn(t.opacity,e.opacity);return function(e){return t.r=r(e),t.g=o(e),t.b=i(e),t.opacity=a(e),t+""}}return r.gamma=t,r}(1);function Wn(t){return function(e){var n,r,o=e.length,i=new Array(o),a=new Array(o),u=new Array(o);for(n=0;n<o;++n)r=On(e[n]),i[n]=r.r||0,a[n]=r.g||0,u[n]=r.b||0;return i=t(i),a=t(a),u=t(u),r.opacity=1,function(t){return r.r=i(t),r.g=a(t),r.b=u(t),r+""}}}Wn(Bn),Wn(Ln),Object.defineProperty(Hn,"name",{value:"default",configurable:!0});var Un=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,$n=new RegExp(Un.source,"g");function Hn(t,e){var n,r,o,i=Un.lastIndex=$n.lastIndex=0,a=-1,u=[],l=[];for(t+="",e+="";(n=Un.exec(t))&&(r=$n.exec(e));)(o=r.index)>i&&(o=e.slice(i,o),u[a]?u[a]+=o:u[++a]=o),(n=n[0])===(r=r[0])?u[a]?u[a]+=r:u[++a]=r:(u[++a]=null,l.push({i:a,x:We(n,r)})),i=$n.lastIndex;return i<e.length&&(o=e.slice(i),u[a]?u[a]+=o:u[++a]=o),u.length<2?l[0]?function(t){return function(e){return t(e)+""}}(l[0].x):function(t){return function(){return t}}(e):(e=l.length,function(t){for(var n,r=0;r<e;++r)u[(n=l[r]).i]=n.x(t);return u.join("")})}function Xn(t,e){var n;return("number"==typeof e?We:e instanceof gn?Gn:(n=gn(e))?(e=n,Gn):Hn)(t,e)}function Vn(t){return function(){this.removeAttribute(t)}}function qn(t){return function(){this.removeAttributeNS(t.space,t.local)}}function Yn(t,e,n){var r,o,i=n+"";return function(){var a=this.getAttribute(t);return a===i?null:a===r?o:o=e(r=a,n)}}function Zn(t,e,n){var r,o,i=n+"";return function(){var a=this.getAttributeNS(t.space,t.local);return a===i?null:a===r?o:o=e(r=a,n)}}function Jn(t,e,n){var r,o,i;return function(){var a,u,l=n(this);if(null!=l)return(a=this.getAttribute(t))===(u=l+"")?null:a===r&&u===o?i:(o=u,i=e(r=a,l));this.removeAttribute(t)}}function Qn(t,e,n){var r,o,i;return function(){var a,u,l=n(this);if(null!=l)return(a=this.getAttributeNS(t.space,t.local))===(u=l+"")?null:a===r&&u===o?i:(o=u,i=e(r=a,l));this.removeAttributeNS(t.space,t.local)}}function Kn(t,e){var n=D(t),r="transform"===n?Ye:Xn;return this.attrTween(t,"function"==typeof e?(n.local?Qn:Jn)(n,r,Ke(this,"attr."+t,e)):null==e?(n.local?qn:Vn)(n):(n.local?Zn:Yn)(n,r,e))}function tr(t,e){var n,r;function o(){var o=e.apply(this,arguments);return o!==r&&(n=(r=o)&&function(t,e){return function(n){this.setAttributeNS(t.space,t.local,e.call(this,n))}}(t,o)),n}return o._value=e,o}function er(t,e){var n,r;function o(){var o=e.apply(this,arguments);return o!==r&&(n=(r=o)&&function(t,e){return function(n){this.setAttribute(t,e.call(this,n))}}(t,o)),n}return o._value=e,o}function nr(t,e){var n="attr."+t;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(null==e)return this.tween(n,null);if("function"!=typeof e)throw new Error;var r=D(t);return this.tween(n,(r.local?tr:er)(r,e))}function rr(t,e){return function(){Be(this,t).delay=+e.apply(this,arguments)}}function or(t,e){return e=+e,function(){Be(this,t).delay=e}}function ir(t){var e=this._id;return arguments.length?this.each(("function"==typeof t?rr:or)(e,t)):Ne(this.node(),e).delay}function ar(t,e){return function(){Le(this,t).duration=+e.apply(this,arguments)}}function ur(t,e){return e=+e,function(){Le(this,t).duration=e}}function lr(t){var e=this._id;return arguments.length?this.each(("function"==typeof t?ar:ur)(e,t)):Ne(this.node(),e).duration}function cr(t){var e=this._id;return arguments.length?this.each(function(t,e){if("function"!=typeof e)throw new Error;return function(){Le(this,t).ease=e}}(e,t)):Ne(this.node(),e).ease}function fr(t){if("function"!=typeof t)throw new Error;return this.each(function(t,e){return function(){var n=e.apply(this,arguments);if("function"!=typeof n)throw new Error;Le(this,t).ease=n}}(this._id,t))}function sr(t){"function"!=typeof t&&(t=l(t));for(var e=this._groups,n=e.length,r=new Array(n),o=0;o<n;++o)for(var i,a=e[o],u=a.length,c=r[o]=[],f=0;f<u;++f)(i=a[f])&&t.call(i,i.__data__,f,a)&&c.push(i);return new Tr(r,this._parents,this._name,this._id)}function hr(t){if(t._id!==this._id)throw new Error;for(var e=this._groups,n=t._groups,r=e.length,o=n.length,i=Math.min(r,o),a=new Array(r),u=0;u<i;++u)for(var l,c=e[u],f=n[u],s=c.length,h=a[u]=new Array(s),y=0;y<s;++y)(l=c[y]||f[y])&&(h[y]=l);for(;u<r;++u)a[u]=e[u];return new Tr(a,this._parents,this._name,this._id)}function yr(t,e){var n=this._id;return arguments.length<2?Ne(this.node(),n).on.on(t):this.each(function(t,e,n){var r,o,i=function(t){return(t+"").trim().split(/^|\s+/).every(function(t){var e=t.indexOf(".");return e>=0&&(t=t.slice(0,e)),!t||"start"===t})}(e)?Be:Le;return function(){var a=i(this,t),u=a.on;u!==r&&(o=(r=u).copy()).on(e,n),a.on=o}}(n,t,e))}function pr(){return this.on("end.remove",function(t){return function(){var e=this.parentNode;for(var n in this.__transition)if(+n!==t)return;e&&e.removeChild(this)}}(this._id))}function vr(t){var e=this._name,n=this._id;"function"!=typeof t&&(t=r(t));for(var o=this._groups,i=o.length,a=new Array(i),u=0;u<i;++u)for(var l,c,f=o[u],s=f.length,h=a[u]=new Array(s),y=0;y<s;++y)(l=f[y])&&(c=t.call(l,l.__data__,y,f))&&("__data__"in l&&(c.__data__=l.__data__),h[y]=c,Fe(h[y],e,n,y,h,Ne(l,n)));return new Tr(a,this._parents,e,n)}function dr(t){var e=this._name,n=this._id;"function"!=typeof t&&(t=a(t));for(var r=this._groups,o=r.length,i=[],u=[],l=0;l<o;++l)for(var c,f=r[l],s=f.length,h=0;h<s;++h)if(c=f[h]){for(var y,p=t.call(c,c.__data__,h,f),v=Ne(c,n),d=0,b=p.length;d<b;++d)(y=p[d])&&Fe(y,e,n,d,p,v);i.push(p),u.push(c)}return new Tr(i,u,e,n)}Object.defineProperty(Xn,"name",{value:"default",configurable:!0}),Object.defineProperty(Kn,"name",{value:"default",configurable:!0}),Object.defineProperty(nr,"name",{value:"default",configurable:!0}),Object.defineProperty(ir,"name",{value:"default",configurable:!0}),Object.defineProperty(lr,"name",{value:"default",configurable:!0}),Object.defineProperty(cr,"name",{value:"default",configurable:!0}),Object.defineProperty(fr,"name",{value:"default",configurable:!0}),Object.defineProperty(sr,"name",{value:"default",configurable:!0}),Object.defineProperty(hr,"name",{value:"default",configurable:!0}),Object.defineProperty(yr,"name",{value:"default",configurable:!0}),Object.defineProperty(pr,"name",{value:"default",configurable:!0}),Object.defineProperty(vr,"name",{value:"default",configurable:!0}),Object.defineProperty(dr,"name",{value:"default",configurable:!0}),Object.defineProperty(mr,"name",{value:"default",configurable:!0});var br=qt.prototype.constructor;function mr(){return new br(this._groups,this._parents)}function gr(t){return function(){this.style.removeProperty(t)}}function wr(t,e,n){var r="transform"==(t+="")?qe:Xn;return null==e?this.styleTween(t,function(t,e){var n,r,o;return function(){var i=K(this,t),a=(this.style.removeProperty(t),K(this,t));return i===a?null:i===n&&a===r?o:o=e(n=i,r=a)}}(t,r)).on("end.style."+t,gr(t)):"function"==typeof e?this.styleTween(t,function(t,e,n){var r,o,i;return function(){var a=K(this,t),u=n(this),l=u+"";return null==u&&(this.style.removeProperty(t),l=u=K(this,t)),a===l?null:a===r&&l===o?i:(o=l,i=e(r=a,u))}}(t,r,Ke(this,"style."+t,e))).each(function(t,e){var n,r,o,i,a="style."+e,u="end."+a;return function(){var l=Le(this,t),c=l.on,f=null==l.value[a]?i||(i=gr(e)):void 0;c===n&&o===f||(r=(n=c).copy()).on(u,o=f),l.on=r}}(this._id,t)):this.styleTween(t,function(t,e,n){var r,o,i=n+"";return function(){var a=K(this,t);return a===i?null:a===r?o:o=e(r=a,n)}}(t,r,e),n).on("end.style."+t,null)}function xr(t,e,n){var r="style."+(t+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(null==e)return this.tween(r,null);if("function"!=typeof e)throw new Error;return this.tween(r,function(t,e,n){var r,o;function i(){var i=e.apply(this,arguments);return i!==o&&(r=(o=i)&&function(t,e,n){return function(r){this.style.setProperty(t,e.call(this,r),n)}}(t,i,n)),r}return i._value=e,i}(t,e,null==n?"":n))}function Sr(t){return this.tween("text","function"==typeof t?function(t){return function(){var e=t(this);this.textContent=null==e?"":e}}(Ke(this,"text",t)):function(t){return function(){this.textContent=t}}(null==t?"":t+""))}function Or(t){var e="text";if(arguments.length<1)return(e=this.tween(e))&&e._value;if(null==t)return this.tween(e,null);if("function"!=typeof t)throw new Error;return this.tween(e,function(t){var e,n;function r(){var r=t.apply(this,arguments);return r!==n&&(e=(n=r)&&function(t){return function(e){this.textContent=t.call(this,e)}}(r)),e}return r._value=t,r}(t))}function jr(){for(var t=this._name,e=this._id,n=kr(),r=this._groups,o=r.length,i=0;i<o;++i)for(var a,u=r[i],l=u.length,c=0;c<l;++c)if(a=u[c]){var f=Ne(a,e);Fe(a,t,n,c,u,{time:f.time+f.delay+f.duration,delay:0,duration:f.duration,ease:f.ease})}return new Tr(r,this._parents,t,n)}function Pr(){var t,e,n=this,r=n._id,o=n.size();return new Promise(function(i,a){var u={value:a},l={value:function(){0===--o&&i()}};n.each(function(){var n=Le(this,r),o=n.on;o!==t&&((e=(t=o).copy())._.cancel.push(u),e._.interrupt.push(u),e._.end.push(l)),n.on=e}),0===o&&i()})}Object.defineProperty(wr,"name",{value:"default",configurable:!0}),Object.defineProperty(xr,"name",{value:"default",configurable:!0}),Object.defineProperty(Sr,"name",{value:"default",configurable:!0}),Object.defineProperty(Or,"name",{value:"default",configurable:!0}),Object.defineProperty(jr,"name",{value:"default",configurable:!0}),Object.defineProperty(Pr,"name",{value:"default",configurable:!0});var _r=0;function Tr(t,e,n,r){this._groups=t,this._parents=e,this._name=n,this._id=r}function kr(){return++_r}var Cr=qt.prototype;Tr.prototype=function(t){return qt().transition(t)}.prototype={constructor:Tr,select:vr,selectAll:dr,selectChild:Cr.selectChild,selectChildren:Cr.selectChildren,filter:sr,merge:hr,selection:mr,transition:jr,call:Cr.call,nodes:Cr.nodes,node:Cr.node,size:Cr.size,empty:Cr.empty,each:Cr.each,on:yr,attr:Kn,attrTween:nr,style:wr,styleTween:xr,text:Sr,textTween:Or,remove:pr,tween:Qe,delay:ir,duration:lr,ease:cr,easeVarying:fr,end:Pr,[Symbol.iterator]:Cr[Symbol.iterator]},Object.defineProperty(Mr,"name",{value:"default",configurable:!0});var Er={time:null,delay:0,duration:250,ease:function(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}};function Ar(t,e){for(var n;!(n=t.__transition)||!(n=n[e]);)if(!(t=t.parentNode))throw new Error(`transition ${e} not found`);return n}function Mr(t){var e,n;t instanceof Tr?(e=t._id,t=t._name):(e=kr(),(n=Er).time=ge(),t=null==t?null:t+"");for(var r=this._groups,o=r.length,i=0;i<o;++i)for(var a,u=r[i],l=u.length,c=0;c<l;++c)(a=u[c])&&Fe(a,t,e,c,u,n||Ar(a,e));return new Tr(r,this._parents,t,e)}qt.prototype.interrupt=Ge,qt.prototype.transition=Mr;const zr=t=>()=>t;function Rr(t,{sourceEvent:e,target:n,transform:r,dispatch:o}){Object.defineProperties(this,{type:{value:t,enumerable:!0,configurable:!0},sourceEvent:{value:e,enumerable:!0,configurable:!0},target:{value:n,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:o}})}function Ir(t,e,n){this.k=t,this.x=e,this.y=n}(Object.getOwnPropertyDescriptor(zr,"name")||{}).writable||Object.defineProperty(zr,"name",{value:"default",configurable:!0}),Ir.prototype={constructor:Ir,scale:function(t){return 1===t?this:new Ir(this.k*t,this.x,this.y)},translate:function(t,e){return 0===t&0===e?this:new Ir(this.k,this.x+this.k*t,this.y+this.k*e)},apply:function(t){return[t[0]*this.k+this.x,t[1]*this.k+this.y]},applyX:function(t){return t*this.k+this.x},applyY:function(t){return t*this.k+this.y},invert:function(t){return[(t[0]-this.x)/this.k,(t[1]-this.y)/this.k]},invertX:function(t){return(t-this.x)/this.k},invertY:function(t){return(t-this.y)/this.k},rescaleX:function(t){return t.copy().domain(t.range().map(this.invertX,this).map(t.invert,t))},rescaleY:function(t){return t.copy().domain(t.range().map(this.invertY,this).map(t.invert,t))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var Fr=new Ir(1,0,0);function Br(t){t.stopImmediatePropagation()}function Lr(t){t.preventDefault(),t.stopImmediatePropagation()}function Nr(t){return!(t.ctrlKey&&"wheel"!==t.type||t.button)}function Dr(){var t=this;return t instanceof SVGElement?(t=t.ownerSVGElement||t).hasAttribute("viewBox")?[[(t=t.viewBox.baseVal).x,t.y],[t.x+t.width,t.y+t.height]]:[[0,0],[t.width.baseVal.value,t.height.baseVal.value]]:[[0,0],[t.clientWidth,t.clientHeight]]}function Gr(){return this.__zoom||Fr}function Wr(t){return-t.deltaY*(1===t.deltaMode?.05:t.deltaMode?1:.002)*(t.ctrlKey?10:1)}function Ur(){return navigator.maxTouchPoints||"ontouchstart"in this}function $r(t,e,n){var r=t.invertX(e[0][0])-n[0][0],o=t.invertX(e[1][0])-n[1][0],i=t.invertY(e[0][1])-n[0][1],a=t.invertY(e[1][1])-n[1][1];return t.translate(o>r?(r+o)/2:Math.min(0,r)||Math.max(0,o),a>i?(i+a)/2:Math.min(0,i)||Math.max(0,a))}function Hr(){var t,e,n,r=Nr,o=Dr,i=$r,a=Wr,u=Ur,l=[0,1/0],c=[[-1/0,-1/0],[1/0,1/0]],f=250,s=ae,h=ee("start","zoom","end"),y=0,p=10;function v(t){t.property("__zoom",Gr).on("wheel.zoom",S,{passive:!1}).on("mousedown.zoom",O).on("dblclick.zoom",j).filter(u).on("touchstart.zoom",P).on("touchmove.zoom",_).on("touchend.zoom touchcancel.zoom",T).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function d(t,e){return(e=Math.max(l[0],Math.min(l[1],e)))===t.k?t:new Ir(e,t.x,t.y)}function b(t,e,n){var r=e[0]-n[0]*t.k,o=e[1]-n[1]*t.k;return r===t.x&&o===t.y?t:new Ir(t.k,r,o)}function m(t){return[(+t[0][0]+ +t[1][0])/2,(+t[0][1]+ +t[1][1])/2]}function g(t,e,n,r){t.on("start.zoom",function(){w(this,arguments).event(r).start()}).on("interrupt.zoom end.zoom",function(){w(this,arguments).event(r).end()}).tween("zoom",function(){var t=this,i=arguments,a=w(t,i).event(r),u=o.apply(t,i),l=null==n?m(u):"function"==typeof n?n.apply(t,i):n,c=Math.max(u[1][0]-u[0][0],u[1][1]-u[0][1]),f=t.__zoom,h="function"==typeof e?e.apply(t,i):e,y=s(f.invert(l).concat(c/f.k),h.invert(l).concat(c/h.k));return function(t){if(1===t)t=h;else{var e=y(t),n=c/e[2];t=new Ir(n,l[0]-e[0]*n,l[1]-e[1]*n)}a.zoom(null,t)}})}function w(t,e,n){return!n&&t.__zooming||new x(t,e)}function x(t,e){this.that=t,this.args=e,this.active=0,this.sourceEvent=null,this.extent=o.apply(t,e),this.taps=0}function S(t,...e){if(r.apply(this,arguments)){var n=w(this,e).event(t),o=this.__zoom,u=Math.max(l[0],Math.min(l[1],o.k*Math.pow(2,a.apply(this,arguments)))),f=le(t);if(n.wheel)n.mouse[0][0]===f[0]&&n.mouse[0][1]===f[1]||(n.mouse[1]=o.invert(n.mouse[0]=f)),clearTimeout(n.wheel);else{if(o.k===u)return;n.mouse=[f,o.invert(f)],De(this),n.start()}Lr(t),n.wheel=setTimeout(function(){n.wheel=null,n.end()},150),n.zoom("mouse",i(b(d(o,u),n.mouse[0],n.mouse[1]),n.extent,c))}}function O(t,...e){if(!n&&r.apply(this,arguments)){var o=t.currentTarget,a=w(this,e,!0).event(t),u=Yt(t.view).on("mousemove.zoom",function(t){if(Lr(t),!a.moved){var e=t.clientX-f,n=t.clientY-s;a.moved=e*e+n*n>y}a.event(t).zoom("mouse",i(b(a.that.__zoom,a.mouse[0]=le(t,o),a.mouse[1]),a.extent,c))},!0).on("mouseup.zoom",function(t){u.on("mousemove.zoom mouseup.zoom",null),function(t,e){var n=t.document.documentElement,r=Yt(t).on("dragstart.drag",null);e&&(r.on("click.drag",re,ne),setTimeout(function(){r.on("click.drag",null)},0)),"onselectstart"in n?r.on("selectstart.drag",null):(n.style.MozUserSelect=n.__noselect,delete n.__noselect)}(t.view,a.moved),Lr(t),a.event(t).end()},!0),l=le(t,o),f=t.clientX,s=t.clientY;oe(t.view),Br(t),a.mouse=[l,this.__zoom.invert(l)],De(this),a.start()}}function j(t,...e){if(r.apply(this,arguments)){var n=this.__zoom,a=le(t.changedTouches?t.changedTouches[0]:t,this),u=n.invert(a),l=n.k*(t.shiftKey?.5:2),s=i(b(d(n,l),a,u),o.apply(this,e),c);Lr(t),f>0?Yt(this).transition().duration(f).call(g,s,a,t):Yt(this).call(v.transform,s,a,t)}}function P(n,...o){if(r.apply(this,arguments)){var i,a,u,l,c=n.touches,f=c.length,s=w(this,o,n.changedTouches.length===f).event(n);for(Br(n),a=0;a<f;++a)l=[l=le(u=c[a],this),this.__zoom.invert(l),u.identifier],s.touch0?s.touch1||s.touch0[2]===l[2]||(s.touch1=l,s.taps=0):(s.touch0=l,i=!0,s.taps=1+!!t);t&&(t=clearTimeout(t)),i&&(s.taps<2&&(e=l[0],t=setTimeout(function(){t=null},500)),De(this),s.start())}}function _(t,...e){if(this.__zooming){var n,r,o,a,u=w(this,e).event(t),l=t.changedTouches,f=l.length;for(Lr(t),n=0;n<f;++n)o=le(r=l[n],this),u.touch0&&u.touch0[2]===r.identifier?u.touch0[0]=o:u.touch1&&u.touch1[2]===r.identifier&&(u.touch1[0]=o);if(r=u.that.__zoom,u.touch1){var s=u.touch0[0],h=u.touch0[1],y=u.touch1[0],p=u.touch1[1],v=(v=y[0]-s[0])*v+(v=y[1]-s[1])*v,m=(m=p[0]-h[0])*m+(m=p[1]-h[1])*m;r=d(r,Math.sqrt(v/m)),o=[(s[0]+y[0])/2,(s[1]+y[1])/2],a=[(h[0]+p[0])/2,(h[1]+p[1])/2]}else{if(!u.touch0)return;o=u.touch0[0],a=u.touch0[1]}u.zoom("touch",i(b(r,o,a),u.extent,c))}}function T(t,...r){if(this.__zooming){var o,i,a=w(this,r).event(t),u=t.changedTouches,l=u.length;for(Br(t),n&&clearTimeout(n),n=setTimeout(function(){n=null},500),o=0;o<l;++o)i=u[o],a.touch0&&a.touch0[2]===i.identifier?delete a.touch0:a.touch1&&a.touch1[2]===i.identifier&&delete a.touch1;if(a.touch1&&!a.touch0&&(a.touch0=a.touch1,delete a.touch1),a.touch0)a.touch0[1]=this.__zoom.invert(a.touch0[0]);else if(a.end(),2===a.taps&&(i=le(i,this),Math.hypot(e[0]-i[0],e[1]-i[1])<p)){var c=Yt(this).on("dblclick.zoom");c&&c.apply(this,arguments)}}}return v.transform=function(t,e,n,r){var o=t.selection?t.selection():t;o.property("__zoom",Gr),t!==o?g(t,e,n,r):o.interrupt().each(function(){w(this,arguments).event(r).start().zoom(null,"function"==typeof e?e.apply(this,arguments):e).end()})},v.scaleBy=function(t,e,n,r){v.scaleTo(t,function(){return this.__zoom.k*("function"==typeof e?e.apply(this,arguments):e)},n,r)},v.scaleTo=function(t,e,n,r){v.transform(t,function(){var t=o.apply(this,arguments),r=this.__zoom,a=null==n?m(t):"function"==typeof n?n.apply(this,arguments):n,u=r.invert(a),l="function"==typeof e?e.apply(this,arguments):e;return i(b(d(r,l),a,u),t,c)},n,r)},v.translateBy=function(t,e,n,r){v.transform(t,function(){return i(this.__zoom.translate("function"==typeof e?e.apply(this,arguments):e,"function"==typeof n?n.apply(this,arguments):n),o.apply(this,arguments),c)},null,r)},v.translateTo=function(t,e,n,r,a){v.transform(t,function(){var t=o.apply(this,arguments),a=this.__zoom,u=null==r?m(t):"function"==typeof r?r.apply(this,arguments):r;return i(Fr.translate(u[0],u[1]).scale(a.k).translate("function"==typeof e?-e.apply(this,arguments):-e,"function"==typeof n?-n.apply(this,arguments):-n),t,c)},r,a)},x.prototype={event:function(t){return t&&(this.sourceEvent=t),this},start:function(){return 1===++this.active&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(t,e){return this.mouse&&"mouse"!==t&&(this.mouse[1]=e.invert(this.mouse[0])),this.touch0&&"touch"!==t&&(this.touch0[1]=e.invert(this.touch0[0])),this.touch1&&"touch"!==t&&(this.touch1[1]=e.invert(this.touch1[0])),this.that.__zoom=e,this.emit("zoom"),this},end:function(){return 0===--this.active&&(delete this.that.__zooming,this.emit("end")),this},emit:function(t){var e=Yt(this.that).datum();h.call(t,this.that,new Rr(t,{sourceEvent:this.sourceEvent,target:v,type:t,transform:this.that.__zoom,dispatch:h}),e)}},v.wheelDelta=function(t){return arguments.length?(a="function"==typeof t?t:zr(+t),v):a},v.filter=function(t){return arguments.length?(r="function"==typeof t?t:zr(!!t),v):r},v.touchable=function(t){return arguments.length?(u="function"==typeof t?t:zr(!!t),v):u},v.extent=function(t){return arguments.length?(o="function"==typeof t?t:zr([[+t[0][0],+t[0][1]],[+t[1][0],+t[1][1]]]),v):o},v.scaleExtent=function(t){return arguments.length?(l[0]=+t[0],l[1]=+t[1],v):[l[0],l[1]]},v.translateExtent=function(t){return arguments.length?(c[0][0]=+t[0][0],c[1][0]=+t[1][0],c[0][1]=+t[0][1],c[1][1]=+t[1][1],v):[[c[0][0],c[0][1]],[c[1][0],c[1][1]]]},v.constrain=function(t){return arguments.length?(i=t,v):i},v.duration=function(t){return arguments.length?(f=+t,v):f},v.interpolate=function(t){return arguments.length?(s=t,v):s},v.on=function(){var t=h.on.apply(h,arguments);return t===h?v:t},v.clickDistance=function(t){return arguments.length?(y=(t=+t)*t,v):Math.sqrt(y)},v.tapDistance=function(t){return arguments.length?(p=+t,v):p},v}function Xr(t){return Xr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Xr(t)}function Vr(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function qr(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,Yr(r.key),r)}}function Yr(t){var e=function(t){if("object"!=Xr(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=Xr(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Xr(e)?e:e+""}Ir.prototype,Object.defineProperty(Lr,"name",{value:"default",configurable:!0}),Object.defineProperty(Hr,"name",{value:"default",configurable:!0});var Zr=function(){function t(e){var n=this,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:void 0;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.opts=a||{},this.canvas=e,this.canvas.style.cursor="grab",this.w=this.canvas.offsetWidth,this.h=this.canvas.offsetHeight,this.offscreenCanvas=document.createElement("canvas"),this.offscreenCanvas.width=this.w,this.offscreenCanvas.height=this.h;var u=this.canvas.getContext("2d"),l=this.offscreenCanvas.getContext("2d");if(!u)throw"Impossible to create canvas 2D context";if(!l)throw"Impossible to create canvas 2D context";if(this.ctx=u,this.offscreenCtx=l,this.view={x:r,y:o,z:i},this.backgroundColor=a.backgroundColor||"white",this.onZoomStartFun=a.onZoomStartFun,this.onZoomEndFun=a.onZoomEndFun,this.onZoomFun=a.onZoomFun,this.extGeo={xMin:NaN,xMax:NaN,yMin:NaN,yMax:NaN},this.updateExtentGeo(),!a.disableZoom){var c=Fr;Hr().wheelDelta(function(t){return-t.deltaY*(1===t.deltaMode?.07:t.deltaMode?1:.004)}).on("zoom",function(t){n._isZooming=!0;var e=t.transform,r=c.k/e.k;if(1==r){var o=c.x-e.x,i=c.y-e.y;n.applyPan(o*n.view.z,-i*n.view.z)}else f(t,r);c=e,n.onZoomFun&&n.onZoomFun(t)}).on("start",function(t){var e;try{n.canvas.style.cursor="grabbing"}catch(t){}n._isZooming=!0,n.canvasSave.c=document.createElement("canvas"),n.canvasSave.c.setAttribute("width",""+n.w),n.canvasSave.c.setAttribute("height",""+n.h),null===(e=n.canvasSave.c.getContext("2d"))||void 0===e||e.drawImage(n.canvas,0,0),n.canvasSave.dx=0,n.canvasSave.dy=0,n.canvasSave.f=1,n.onZoomStartFun&&n.onZoomStartFun(t)}).on("end",function(t){try{n.canvas.style.cursor="grab"}catch(t){}n._isZooming=!1,n.redraw(),n.canvasSave={c:null,dx:0,dy:0,f:1},n.onZoomEndFun&&n.onZoomEndFun(t)})(Yt(this.canvas));var f=function(t,e){n.cancelCurrentRequests();var r=t.sourceEvent;if(r instanceof WheelEvent)n.applyZoom(e,n.pixToGeoX(r.offsetX),n.pixToGeoY(r.offsetY));else if(r instanceof TouchEvent){var o,i=0,a=0,u=function(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return Vr(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Vr(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw i}}}}(r.targetTouches);try{for(u.s();!(o=u.n()).done;){var l=o.value;i+=l.clientX,a+=l.clientY}}catch(t){u.e(t)}finally{u.f()}i/=r.targetTouches.length,a/=r.targetTouches.length,n.applyZoom(e,n.pixToGeoX(i),n.pixToGeoY(a))}}}this.xMin=a.centerExtent?a.centerExtent[0]:void 0,this.yMin=a.centerExtent?a.centerExtent[1]:void 0,this.xMax=a.centerExtent?a.centerExtent[2]:void 0,this.yMax=a.centerExtent?a.centerExtent[3]:void 0,this.zoomExtent=a.zoomExtent||[0,1/0],this.canvasSave={c:null,dx:0,dy:0,f:1}}return e=t,n=[{key:"applyPan",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;if(null!=this.xMin&&this.view.x+t<this.xMin&&(t=this.xMin-this.view.x),null!=this.yMin&&this.view.y+e<this.yMin&&(e=this.yMin-this.view.y),null!=this.xMax&&this.view.x+t>this.xMax&&(t=this.xMax-this.view.x),null!=this.yMax&&this.view.y+e>this.yMax&&(e=this.yMax-this.view.y),this.view.x+=t,this.view.y+=e,this.updateExtentGeo(),this.canvasSave.c){var n=1/this.view.z;this.canvasSave.dx-=t*n,this.canvasSave.dy+=e*n,this.clear(this.backgroundColor),this.offscreenCtx.drawImage(this.canvasSave.c,this.canvasSave.dx,this.canvasSave.dy),this.ctx.drawImage(this.offscreenCtx.canvas,0,0)}else console.log("no canvas save")}},{key:"applyZoom",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.view.x,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.view.y;if(!(this.zoomExtent[0]==this.view.z&&t<=1||this.zoomExtent[1]==this.view.z&&t>=1)){var r=t*this.view.z;r<this.zoomExtent[0]&&(t=this.zoomExtent[0]/this.view.z),r>this.zoomExtent[1]&&(t=this.zoomExtent[1]/this.view.z),this.view.z*=t;var o=(e-this.view.x)*(1-t),i=(n-this.view.y)*(1-t);null!=this.xMin&&this.view.x+o<this.xMin&&(o=this.xMin-this.view.x),null!=this.yMin&&this.view.y+i<this.yMin&&(i=this.yMin-this.view.y),null!=this.xMax&&this.view.x+o>this.xMax&&(o=this.xMax-this.view.x),null!=this.yMax&&this.view.y+i>this.yMax&&(i=this.yMax-this.view.y),this.view.x+=o,this.view.y+=i,this.updateExtentGeo(),this._drawZoomFrame(t,e,n)}}},{key:"_drawZoomFrame",value:function(t,e,n){this.canvasSave.c&&(this.clear(this.backgroundColor),this.canvasSave.f/=t,this.canvasSave.dx=this.geoToPixX(e)*(1-this.canvasSave.f),this.canvasSave.dy=this.geoToPixY(n)*(1-this.canvasSave.f),this.clear(this.backgroundColor),this.offscreenCtx.drawImage(this.canvasSave.c,this.canvasSave.dx,this.canvasSave.dy,this.canvasSave.f*this.canvasSave.c.width,this.canvasSave.f*this.canvasSave.c.height),this.ctx.drawImage(this.offscreenCanvas,0,0,this.canvas.width,this.canvas.height))}},{key:"clear",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"white";this.opts.transparentBackground?(this.ctx.clearRect(0,0,this.w,this.h),this.offscreenCtx.clearRect(0,0,this.w,this.h)):(this.ctx&&(this.ctx.fillStyle=t),this.offscreenCtx&&(this.offscreenCtx.fillStyle=t),this.ctx.fillRect(0,0,this.w,this.h),this.offscreenCtx.fillRect(0,0,this.w,this.h))}},{key:"getView",value:function(){return this.view}},{key:"setCenterExtent",value:function(t){this.xMin=t[0],this.yMin=t[1],this.xMax=t[2],this.yMax=t[3]}},{key:"getCenterExtent",value:function(){return[this.xMin,this.yMin,this.xMax,this.yMax]}},{key:"setZoomExtent",value:function(t){this.zoomExtent=t}},{key:"getZoomExtent",value:function(){return this.zoomExtent}},{key:"initCanvasTransform",value:function(){this.ctx.setTransform(1,0,0,1,0,0),this.offscreenCtx.setTransform(1,0,0,1,0,0)}},{key:"setCanvasTransform",value:function(){var t=1/this.view.z,e=-this.view.x/this.view.z+.5*this.w,n=this.view.y/this.view.z+.5*this.h;this.ctx.setTransform(t,0,0,-t,e,n),this.offscreenCtx.setTransform(t,0,0,-t,e,n)}},{key:"getWebGLTransform",value:function(){var t=2/(this.w*this.view.z),e=2/(this.h*this.view.z);return[t,0,0,0,e,0,-t*this.view.x,-e*this.view.y,1]}},{key:"redraw",value:function(){throw new Error("Method redraw not implemented.")}},{key:"cancelCurrentRequests",value:function(){throw new Error("Method cancelCurrentRequests not implemented.")}},{key:"updateExtentGeo",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:20;return this.extGeo={xMin:this.pixToGeoX(-t),xMax:this.pixToGeoX(this.w+t),yMin:this.pixToGeoY(this.h+t),yMax:this.pixToGeoY(-t)},this.extGeo}},{key:"toDraw",value:function(t){return!(t.x<this.extGeo.xMin||t.x>this.extGeo.xMax||t.y<this.extGeo.yMin||t.y>this.extGeo.yMax)}},{key:"geoToPixX",value:function(t){return(t-this.view.x)/this.view.z+.5*this.w}},{key:"geoToPixY",value:function(t){return-(t-this.view.y)/this.view.z+.5*this.h}},{key:"pixToGeoX",value:function(t){return(t-.5*this.w)*this.view.z+this.view.x}},{key:"pixToGeoY",value:function(t){return-(t-.5*this.h)*this.view.z+this.view.y}},{key:"setViewFromURL",value:function(){var e=t.getParameterByName("x"),n=t.getParameterByName("y"),r=t.getParameterByName("z");null==e||null==e||isNaN(+e)||(this.view.x=+e),null==n||null==n||isNaN(+n)||(this.view.y=+n),null==r||null==r||isNaN(+r)||(this.view.z=+r)}}],r=[{key:"getParameterByName",value:function(t){t=t.replace(/[\[]/,"\\[").replace(/[\]]/,"\\]");var e=new RegExp("[\\?&]"+t+"=([^&#]*)").exec(location.search);return e?decodeURIComponent(e[1].replace(/\+/g," ")):null}}],n&&qr(e.prototype,n),r&&qr(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,n,r}();function Jr(t){return Jr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Jr(t)}function Qr(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,Kr(r.key),r)}}function Kr(t){var e=function(t){if("object"!=Jr(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=Jr(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Jr(e)?e:e+""}var to=function(){return t=function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),e=e||{},this.maxWidth=e.maxWidth||"20em",this.fontSize=e.fontSize||"1.2em",this.background=e.background||"white",this.padding=e.padding||"5px",this.border=e.border||"0px",this["border-radius"]=e["border-radius"]||"0px",this["box-shadow"]=e["box-shadow"]||"5px 5px 5px grey",this["font-family"]=e["font-family"]||"Helvetica, Arial, sans-serif",this.transitionDuration=e.transitionDuration||100,this.xOffset=e.xOffset||30,this.yOffset=e.yOffset||20,this.yMouseOffset=e.yMouseOffset||0,this.xMouseOffset=e.xMouseOffset||0,this.parentElement=e.parentElement||document.body,this.tooltipElement=e.tooltipElement||null,this.tooltip=e.tooltipElement?Yt(e.tooltipElement):Yt(this.parentElement).append("div").attr("id","gridviz-tooltip").attr("class","gridviz-tooltip"),this.tooltip.style("max-width",this.maxWidth),this.tooltip.style("overflow","hidden"),this.tooltip.style("font-size",this.fontSize),this.tooltip.style("background",this.background),this.tooltip.style("padding",this.padding),this.tooltip.style("border",this.border),this.tooltip.style("border-radius",this["border-radius"]),this.tooltip.style("box-shadow",this["box-shadow"]),this.tooltip.style("font-family",this["font-family"]),this.tooltip.style("position","absolute"),this.tooltip.style("pointer-events","none"),this.tooltip.style("opacity","0"),this.tooltip.style("text-wrap","nowrap"),this.tooltip.style("z-index",99999999),this.tooltip.style("left","0"),this.tooltip.style("top","0"),this.tooltip.attr("role","tooltip").attr("aria-live","polite")},e=[{key:"show",value:function(){this.tooltip.transition().duration(this.transitionDuration).style("opacity",1)}},{key:"hide",value:function(){this.tooltip.transition().duration(this.transitionDuration).style("opacity",0)}},{key:"html",value:function(t){this.tooltip.html(t)}},{key:"setPosition",value:function(t){var e=this.parentElement.getBoundingClientRect(),n=t.clientX-e.left+this.xOffset,r=t.clientY-e.top-this.yOffset;this.tooltip.style("left",n+"px").style("top",r+"px"),this.ensureTooltipInsideContainer(t,e,this.tooltip.node())}},{key:"ensureTooltipInsideContainer",value:function(t,e,n){var r=n,o=e.width,i=e.height;if(r.offsetLeft+r.clientWidth>o){var a=t.clientX-r.clientWidth-this.xOffset;r.style.left=a+"px"}r.offsetTop+r.clientHeight>i&&(r.style.top=i-r.clientHeight+"px"),r.offsetTop<0&&(r.style.top="0px"),r.offsetLeft<0&&(r.style.left="0px")}},{key:"style",value:function(t,e){return 1==arguments.length?this.tooltip.style(t):(this.tooltip.style(t,e),this)}},{key:"attr",value:function(t,e){return 1==arguments.length?this.tooltip.attr(t):(this.tooltip.attr(t,e),this)}}],e&&Qr(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,e}();function eo(t){return eo="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},eo(t)}function no(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,ro(r.key),r)}}function ro(t){var e=function(t){if("object"!=eo(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=eo(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==eo(e)?e:e+""}var oo=function(){return t=function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.map=e.map,this.parentNode=e.parentNode||e.map.container,e.id&&(this.div=Yt("#"+e.id)),this.div&&!this.div.empty()||(this.div=Yt(document.createElement("div")),e.id&&this.div.attr("id",e.id)),e.title&&this.div.attr("title",e.title),e.class&&this.div.attr("class",e.class),e.onClickFunction&&this.div.on("click",e.onClickFunction),this.style("box-shadow","0 7px 8px rgba(0,47,103,.08), 0 0 22px rgba(0,47,103,.04), 0 12px 17px rgba(0,47,103,.04), 0 -4px 4px rgba(0,47,103,.04)"),this.style("background-color","#ffffff"),this.style("position","absolute"),this.style("cursor","pointer"),this.style("display","flex"),this.style("justify-content","center"),this.style("align-items","center"),this.style("width","35px"),this.style("height","30px"),this.parentNode.appendChild(this.div.node())},(e=[{key:"style",value:function(t,e){return this.div.style(t,e),this}}])&&no(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,e}();function io(t){return io="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},io(t)}function ao(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,uo(r.key),r)}}function uo(t){var e=function(t){if("object"!=io(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=io(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==io(e)?e:e+""}function lo(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(lo=function(){return!!t})()}function co(t){return co=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},co(t)}function fo(t,e){return fo=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},fo(t,e)}var so=function(t){function e(t){var n;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),(n=function(t,e,n){return e=co(e),function(t,e){if(e&&("object"==io(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,lo()?Reflect.construct(e,n||[],co(t).constructor):e.apply(t,n))}(this,e,[t])).onZoom=t.onZoom,n.delta=t.delta||.2,n.zoomInBtn=document.createElement("a"),n.zoomInBtn.id="zoom-in",n.zoomInBtn.className="gridviz-zoom-button",n.zoomInBtn.title="Zoom in",n.zoomInBtn.textContent="+",n.zoomInBtn.addEventListener("click",function(t){n.zoomIn(t)}),n.zoomInBtn.addEventListener("mouseover",function(){n.zoomInBtn.style.backgroundColor="lightgrey"}),n.zoomInBtn.addEventListener("mouseout",function(){n.zoomInBtn.style.backgroundColor="#ffffff"}),n.zoomOutBtn=document.createElement("a"),n.zoomOutBtn.id="zoom-out",n.zoomOutBtn.className="gridviz-zoom-button",n.zoomOutBtn.title="Zoom out",n.zoomOutBtn.textContent="-",n.zoomOutBtn.addEventListener("click",function(t){n.zoomOut(t)}),n.zoomOutBtn.addEventListener("mouseover",function(){n.zoomOutBtn.style.backgroundColor="lightgrey"}),n.zoomOutBtn.addEventListener("mouseout",function(){n.zoomOutBtn.style.backgroundColor="#ffffff"}),[n.zoomInBtn,n.zoomOutBtn].forEach(function(t,e){t.style.alignItems="center",t.style.justifyContent="center",t.style.display="flex",t.style.border="none",t.style.color="black",t.style.textAlign="center",t.style.textDecoration="none",t.style.padding="4px",t.style.fontSize="24px",t.style.fontWeight="bold",t.style.userSelect="none",t.style.backgroundColor="#ffffff",0===e&&(t.style.borderBottom="1px solid grey")}),n.style("height","unset"),n.style("display","unset"),t.x?n.style("left",t.x+"px"):n.style("right","10px"),t.y?n.style("top",t.y+"px"):n.style("top","10px"),n.div.node().appendChild(n.zoomInBtn),n.div.node().appendChild(n.zoomOutBtn),n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&fo(t,e)}(e,t),n=e,r=[{key:"zoomIn",value:function(t){this.map.setZoom(this.map.getZoom()*(1-this.delta)).redraw(),this.onZoom&&this.onZoom(t),this.map.geoCanvas.onZoomFun&&this.map.geoCanvas.onZoomFun(t)}},{key:"zoomOut",value:function(t){this.map.setZoom(this.map.getZoom()*(1+this.delta)).redraw(),this.onZoom&&this.onZoom(t),this.map.geoCanvas.onZoomFun&&this.map.geoCanvas.onZoomFun(t)}}],r&&ao(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(oo);function ho(t){return ho="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ho(t)}function yo(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,mo(r.key),r)}}function po(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(po=function(){return!!t})()}function vo(t){return vo=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},vo(t)}function bo(t,e){return bo=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},bo(t,e)}function mo(t){var e=function(t){if("object"!=ho(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=ho(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==ho(e)?e:e+""}var go=function(t){function e(t){var n,r,o,i;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),n=function(t,e,n){return e=vo(e),function(t,e){if(e&&("object"==ho(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,po()?Reflect.construct(e,n||[],vo(t).constructor):e.apply(t,n))}(this,e,[t]),r=n,i=!1,(o=mo(o="isFullscreen"))in r?Object.defineProperty(r,o,{value:i,enumerable:!0,configurable:!0,writable:!0}):r[o]=i,n.div.node().innerHTML='\n <svg\n style="height: 1.2rem; width: 1.2rem; fill:black; margin:0;"\n focusable="false"\n aria-hidden="true"\n >\n <svg fill="#000000" viewBox="0 0 96 96" xmlns="http://www.w3.org/2000/svg">\n <title/>\n <g>\n <path d="M30,0H6A5.9966,5.9966,0,0,0,0,6V30a6,6,0,0,0,12,0V12H30A6,6,0,0,0,30,0Z"/>\n <path d="M90,0H66a6,6,0,0,0,0,12H84V30a6,6,0,0,0,12,0V6A5.9966,5.9966,0,0,0,90,0Z"/>\n <path d="M30,84H12V66A6,6,0,0,0,0,66V90a5.9966,5.9966,0,0,0,6,6H30a6,6,0,0,0,0-12Z"/>\n <path d="M90,60a5.9966,5.9966,0,0,0-6,6V84H66a6,6,0,0,0,0,12H90a5.9966,5.9966,0,0,0,6-6V66A5.9966,5.9966,0,0,0,90,60Z"/>\n </g>\n </svg>\n </svg>\n ',n.defaultHeight=n.map.h,n.defaultWidth=n.map.w,n.div.on("click",function(t){n.onClickFunction(t)}),n.div.on("mouseover",function(t){n.style("background-color","lightgrey")}),n.div.on("mouseout",function(t){n.style("background-color","#ffffff")}),t.x?n.style("left",t.x+"px"):n.style("right","10px"),t.y?n.style("top",t.y+"px"):n.style("top","90px"),n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&bo(t,e)}(e,t),n=e,(r=[{key:"onClickFunction",value:function(t){this.isFullscreen?(this.closeFullscreen(this.map.container),this.map.h=this.defaultHeight,this.map.w=this.defaultWidth,this.map.geoCanvas.h=this.defaultHeight,this.map.geoCanvas.w=this.defaultWidth,this.map.geoCanvas.canvas.setAttribute("width",""+this.defaultWidth),this.map.geoCanvas.canvas.setAttribute("height",""+this.defaultHeight),this.map.redraw(),this.isFullscreen=!1):(this.openFullscreen(this.map.container),this.map.h=window.screen.height,this.map.w=window.screen.width,this.isFullscreen=!0)}},{key:"openFullscreen",value:function(t){t.requestFullscreen?t.requestFullscreen():t.webkitRequestFullscreen?t.webkitRequestFullscreen():t.msRequestFullscreen&&t.msRequestFullscreen()}},{key:"closeFullscreen",value:function(){document.exitFullscreen?document.exitFullscreen():document.webkitExitFullscreen?document.webkitExitFullscreen():document.msExitFullscreen&&document.msExitFullscreen()}}])&&yo(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(oo);function wo(t){return wo="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},wo(t)}function xo(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return So(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?So(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw i}}}}function So(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function Oo(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,jo(r.key),r)}}function jo(t){var e=function(t){if("object"!=wo(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=wo(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==wo(e)?e:e+""}var Po=function(){return t=function t(e,n){var r=this;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),n=n||{},this.layers=n.layers||[],this.container=e||document.getElementById("gridviz"),this.container?(this.container.style.position="relative",this.w=n.w||this.container.offsetWidth,this.h=n.h||this.container.offsetHeight,this._canvas=n.canvas||this.initialiseCanvas(),this.geoCanvas=new Zr(this._canvas,n.x,n.y,n.z,n),this.geoCanvas.redraw=function(){r.redraw()},this.geoCanvas.cancelCurrentRequests=function(){var t,e=xo(r.layers);try{for(e.s();!(t=e.n()).done;){var n,o,i,a=t.value;if(null!==(n=a.dataset)&&void 0!==n&&n.datasets){var u,l,c=xo(null===(u=a.dataset)||void 0===u?void 0:u.datasets);try{for(c.s();!(l=c.n()).done;){var f=l.value;null!=f&&f.cancelCurrentRequests&&f.cancelCurrentRequests()}}catch(t){c.e(t)}finally{c.f()}}null!==(o=a.dataset)&&void 0!==o&&o.cancelCurrentRequests&&(null===(i=a.dataset)||void 0===i||i.cancelCurrentRequests())}}catch(t){e.e(t)}finally{e.f()}},this.legend=n.legendContainer?Yt(n.legendContainer):null,this._legendProvidedByUser=!!n.legendContainer,this.legend||this.initialiseLegend(),n.tooltip||(n.tooltip={}),n.tooltip.parentElement||(n.tooltip.parentElement=this.container),this.tooltip=new to(n.tooltip),this.mouseOverHandler=function(t){return r.focusCell(t)},this.mouseMoveHandler=function(t){return r.focusCell(t)},this.mouseOutHandler=function(t){return r.tooltip.hide()},this.geoCanvas.canvas.addEventListener("mouseover",this.mouseOverHandler),this.geoCanvas.canvas.addEventListener("mousemove",this.mouseMoveHandler),this.geoCanvas.canvas.addEventListener("mouseout",this.mouseOutHandler),this.defineResizeObserver(),this.geoCanvas.onZoomStartFun=function(t){n.onZoomStartFun&&n.onZoomStartFun(t),r.tooltip.hide()},this.canvasSave=null,this.selectionRectangleColor=n.selectionRectangleColor||"#FF6347",this.selectionRectangleWidthPix=n.selectionRectangleWidthPix||function(){return 4},this.transparentBackground=n.transparentBackground,this.defaultGlobalCompositeOperation=n.defaultGlobalCompositeOperation||this.geoCanvas.ctx.globalCompositeOperation):console.error("Cannot find gridviz container element.")},e=[{key:"initialiseCanvas",value:function(){var t=document.createElement("canvas");return t.setAttribute("width",""+this.w),t.setAttribute("height",""+this.h),this.container.appendChild(t),t}},{key:"initialiseLegend",value:function(){this.legend=Yt(this.container).append("div").attr("id","gridviz-legend").style("position","absolute").style("width","auto").style("height","auto").style("background","#FFFFFF").style("border","0px").style("box-shadow","3px 3px 3px grey, -3px -3px 3px #ddd").style("font-family","Helvetica, Arial, sans-serif").style("bottom","15px").style("right","15px")}},{key:"layers_",value:function(t){return 0===arguments.length?this.layers:(1===arguments.length?Array.isArray(t)?this.layers=t:this.layers=[t]:this.layers=arguments,this)}},{key:"redraw",value:function(){this.legend&&this.legend.selectAll("*").remove(),this.geoCanvas.initCanvasTransform(),this.geoCanvas.clear(this.geoCanvas.backgroundColor);var t=this.geoCanvas.view.z;this.updateExtentGeo();var e,n=this.geoCanvas.offscreenCtx,r=xo(this.layers);try{for(r.s();!(e=r.n()).done;){var o=e.value;o.visible&&!o.visible(t)||((o.alpha||o.blendOperation)&&(n.save(),o.alpha&&(n.globalAlpha=o.alpha(t)),o.blendOperation&&(n.globalCompositeOperation=o.blendOperation(t))),this.geoCanvas.setCanvasTransform(),o.draw(this.geoCanvas,this.legend),o.filterColor&&o.drawFilter(this.geoCanvas),(o.alpha||o.blendOperation)&&n.restore())}}catch(t){r.e(t)}finally{r.f()}return this.geoCanvas.initCanvasTransform(),this.geoCanvas.ctx.drawImage(this.geoCanvas.offscreenCanvas,0,0),this.canvasSave=null,this}},{key:"updateExtentGeo",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:20;return this.geoCanvas.updateExtentGeo(t)}},{key:"focusCell",value:function(t){if(!this.geoCanvas._isZooming){var e={x:this.geoCanvas.pixToGeoX(t.offsetX+this.tooltip.xMouseOffset),y:this.geoCanvas.pixToGeoY(t.offsetY+this.tooltip.yMouseOffset)},n=this.getCellFocusInfo(e);if(this.transparentBackground)if(this.geoCanvas.initCanvasTransform(),this.geoCanvas.ctx.clearRect(0,0,this.w,this.h),this.geoCanvas.ctx.drawImage(this.geoCanvas.offscreenCanvas,0,0),n){this.tooltip.html(n.html),this.tooltip.setPosition(t),this.tooltip.show();var r=this.selectionRectangleWidthPix?this.selectionRectangleWidthPix(n.resolution,this.geoCanvas.view.z):4,o=this.geoCanvas.ctx;o.save(),o.strokeStyle=this.selectionRectangleColor,o.lineWidth=r,o.beginPath();var i=this.geoCanvas.geoToPixX(n.cell.x),a=this.geoCanvas.geoToPixY(n.cell.y),u=n.resolution/this.geoCanvas.view.z,l=-u;o.rect(i-r/2,a+r/2,u+r,l-r),o.stroke(),o.restore()}else this.tooltip.hide();else if(n){var c;this.geoCanvas.canvas.style.cursor="pointer",this.tooltip.html(n.html),this.tooltip.setPosition(t),this.tooltip.show(),this.canvasSave?this.geoCanvas.offscreenCtx.drawImage(this.canvasSave,0,0):(this.canvasSave=document.createElement("canvas"),this.canvasSave.setAttribute("width",""+this.w),this.canvasSave.setAttribute("height",""+this.h),null===(c=this.canvasSave.getContext("2d"))||void 0===c||c.drawImage(this.geoCanvas.offscreenCanvas,0,0));var f=this.selectionRectangleWidthPix?this.selectionRectangleWidthPix(n.resolution,this.geoCanvas.view.z):4;this.geoCanvas.initCanvasTransform();var s=this.geoCanvas.offscreenCtx;s.strokeStyle=this.selectionRectangleColor,s.lineWidth=f,s.beginPath(),s.rect(this.geoCanvas.geoToPixX(n.cell.x)-f/2,this.geoCanvas.geoToPixY(n.cell.y)+f/2,n.resolution/this.geoCanvas.view.z+f,-n.resolution/this.geoCanvas.view.z-f),s.stroke(),this.geoCanvas.ctx.drawImage(this.geoCanvas.offscreenCanvas,0,0)}else this.geoCanvas.canvas.style.cursor="default",this.tooltip.hide(),this.canvasSave&&this.geoCanvas.ctx.drawImage(this.canvasSave,0,0)}}},{key:"getCellFocusInfo",value:function(t){for(var e=this.geoCanvas.view.z,n=this.layers.length-1;n>=0;n--){var r=this.layers[n];if((!r.visible||r.visible(e))&&"none"!==r.cellInfoHTML&&r.cellInfoHTML&&r.getDataset){var o=r.getDataset(e);if(o){var i=o.getCellFromPosition(t,o.getViewCache());if(!i)return;if(o.mixedResolution){var a=+o.mixedResolution(i),u=r.cellInfoHTML(i,a);if(!u)return;return{cell:i,html:u,resolution:a}}var l=r.cellInfoHTML(i,o.getResolution());if(!l)return;return{cell:i,html:l,resolution:o.getResolution()}}}}}},{key:"setView",value:function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0;return this.geoCanvas.view.x=t,this.geoCanvas.view.y=e,null!=n&&(this.geoCanvas.view.z=n),this}},{key:"getView",value:function(){return this.geoCanvas.view}},{key:"getZoom",value:function(){return this.geoCanvas.view.z}},{key:"setZoom",value:function(t){return this.geoCanvas.view.z=t,this}},{key:"getCenterExtent",value:function(){return this.geoCanvas.getCenterExtent()}},{key:"setCenterExtent",value:function(t){return this.geoCanvas.setCenterExtent(t),this}},{key:"getZoomExtent",value:function(){return this.geoCanvas.getZoomExtent()}},{key:"setZoomExtent",value:function(t){return this.geoCanvas.setZoomExtent(t),this}},{key:"getBackgroundColor",value:function(){return this.geoCanvas.backgroundColor}},{key:"setBackgroundColor",value:function(t){return this.geoCanvas.backgroundColor=t,this}},{key:"addZoomButtons",value:function(t){return this.zoomButtons=new so({map:this,id:(null==t?void 0:t.id)||"gridviz-zoom-buttons-"+this.container.id,class:null==t?void 0:t.class,x:null==t?void 0:t.x,y:null==t?void 0:t.y,onZoom:null==t?void 0:t.onZoom,delta:(null==t?void 0:t.delta)||.2}),this}},{key:"addFullscreenButton",value:function(t){return this.fullscreenButton=new go({map:this,id:(null==t?void 0:t.id)||"gridviz-fullscreen-button",class:null==t?void 0:t.class,x:null==t?void 0:t.x,y:null==t?void 0:t.y}),this}},{key:"setViewFromURL",value:function(){return this.geoCanvas.setViewFromURL(),this}},{key:"defineResizeObserver",value:function(){var t=this,e=!1;new ResizeObserver(function(n){if(Array.isArray(n)&&n.length){var r=t.container;r.clientWidth>0&&r.clientHeight>0&&(e||(e=!0,window.requestAnimationFrame(function(){e=!1,t.h===r.clientHeight&&t.w===r.clientWidth||(t.h=r.clientHeight,t.w=r.clientWidth,t.geoCanvas.h=t.h,t.geoCanvas.w=t.w,t.geoCanvas.canvas.setAttribute("width",String(t.w)),t.geoCanvas.canvas.setAttribute("height",String(t.h)),t.geoCanvas.offscreenCanvas.setAttribute("width",String(t.w)),t.geoCanvas.offscreenCanvas.setAttribute("height",String(t.h)),t.redraw())})))}}).observe(this.container)}},{key:"destroy",value:function(){var t,e;this.layers=[],this.bgLayers=[],this.container.removeEventListener("mouseover",this.mouseOverHandler),this.container.removeEventListener("mousemove",this.mouseMoveHandler),this.container.removeEventListener("mouseout",this.mouseOutHandler),this.geoCanvas.canvas.remove(),this._legendProvidedByUser||null===(e=this.legend)||void 0===e||e.remove(),null===(t=this.tooltip.tooltip)||void 0===t||t.remove()}}],e&&Oo(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,e}();function _o(t){return _o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},_o(t)}function To(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,ko(r.key),r)}}function ko(t){var e=function(t){if("object"!=_o(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=_o(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==_o(e)?e:e+""}var Co=function(){return t=function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),e=e||{},this.visible=e.visible,this.alpha=e.alpha,this.blendOperation=e.blendOperation,this.filterColor=e.filterColor,this.filterBlendOperation=e.filterBlendOperation},(e=[{key:"drawFilter",value:function(t){if(this.filterColor){var e=this.filterColor(t.view.z);if(e&&"none"!=e){t.offscreenCtx.fillStyle=e;var n=void 0,r=void 0;this.filterBlendOperation&&(n=t.offscreenCtx.globalCompositeOperation,r=this.filterBlendOperation(t.view.z)),r&&"none"!=r&&(t.offscreenCtx.globalCompositeOperation=r),t.offscreenCtx.fillRect(0,0,t.w,t.h),n&&(t.offscreenCtx.globalCompositeOperation=n)}}}}])&&To(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,e}();function Eo(t){return Eo="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Eo(t)}function Ao(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return Mo(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Mo(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw i}}}}function Mo(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function zo(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,Ro(r.key),r)}}function Ro(t){var e=function(t){if("object"!=Eo(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=Eo(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Eo(e)?e:e+""}function Io(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(Io=function(){return!!t})()}function Fo(t){return Fo=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Fo(t)}function Bo(t,e){return Bo=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Bo(t,e)}var Lo=function(t){function e(t){var n;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),n=function(t,e,n){return e=Fo(e),function(t,e){if(e&&("object"==Eo(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Io()?Reflect.construct(e,n||[],Fo(t).constructor):e.apply(t,n))}(this,e,[t]),t=t||{},n.viewScale=t.viewScale,n.filter=t.filter||void 0,n.offset=t.offset||function(t,e,n){return{dx:0,dy:0}},n.drawFun=t.drawFun,n.legends=[],n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Bo(t,e)}(e,t),n=e,o=[{key:"updateLegendsRecursive",value:function(t,e){if(Array.isArray(t)){var n,r=Ao(t);try{for(r.s();!(n=r.n()).done;){var o=n.value;this.updateLegendsRecursive(o,e)}}catch(t){r.e(t)}finally{r.f()}}else t.update(e)}}],(r=[{key:"draw",value:function(t,e,n){if(!this.drawFun)throw new Error("Method draw not implemented.");this.drawFun(t,e,n)}},{key:"getOffset",value:function(){return this.offset}},{key:"setOffset",value:function(t){return this.offset=t,this}},{key:"updateLegends",value:function(t){return e.updateLegendsRecursive(this.legends,t),this}},{key:"addLegends",value:function(t){var e,n=Ao(t);try{for(n.s();!(e=n.n()).done;){var r=e.value;this.legends.push(r)}}catch(t){n.e(t)}finally{n.f()}return this}}])&&zo(n.prototype,r),o&&zo(n,o),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r,o}(Co);function No(t){return No="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},No(t)}function Do(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,Go(r.key),r)}}function Go(t){var e=function(t){if("object"!=No(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=No(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==No(e)?e:e+""}function Wo(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(Wo=function(){return!!t})()}function Uo(t){return Uo=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Uo(t)}function $o(t,e){return $o=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},$o(t,e)}var Ho=function(t){function e(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),function(t,e,n){return e=Uo(e),function(t,e){if(e&&("object"==No(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Wo()?Reflect.construct(e,n||[],Uo(t).constructor):e.apply(t,n))}(this,e,arguments)}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&$o(t,e)}(e,t),n=e,(r=[{key:"draw",value:function(t){throw new Error("Method draw not implemented.")}}])&&Do(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(Co);function Xo(t){return Xo="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Xo(t)}function Vo(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return qo(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?qo(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw i}}}}function qo(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function Yo(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,Zo(r.key),r)}}function Zo(t){var e=function(t){if("object"!=Xo(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=Xo(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Xo(e)?e:e+""}var Jo=function(){return t=function t(e,n,r){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.map=e,this.url=n,this.resolution=r,this.mixedResolution=o.mixedResolution,this.preprocess=o.preprocess||void 0,this.cellsViewCache=[]},(e=[{key:"getData",value:function(){throw new Error("Method getData not implemented.")}},{key:"updateViewCache",value:function(t){throw new Error("Method updateViewCache not implemented.")}},{key:"getCellFromPosition",value:function(t,e){if(this.mixedResolution){var n,r=Vo(e);try{for(r.s();!(n=r.n()).done;){var o=n.value,i=+this.mixedResolution(o);if(!(t.x<o.x||o.x+i<t.x||t.y<o.y||o.y+i<t.y))return o}}catch(t){r.e(t)}finally{r.f()}}else{var a,u=this.getResolution(),l=Vo(e);try{for(l.s();!(a=l.n()).done;){var c=a.value;if(!(t.x<c.x||c.x+u<t.x||t.y<c.y||c.y+u<t.y))return c}}catch(t){l.e(t)}finally{l.f()}}}},{key:"getResolution",value:function(){return this.resolution}},{key:"getViewCache",value:function(){return this.cellsViewCache}},{key:"getDataset",value:function(t,e){return this}}])&&Yo(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,e}();function Qo(t){return Qo="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Qo(t)}function Ko(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function ti(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,ei(r.key),r)}}function ei(t){var e=function(t){if("object"!=Qo(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=Qo(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Qo(e)?e:e+""}var ni=function(){return t=function t(e,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),r=r||{},this.resolutions=e,this.datasets="function"==typeof n?this.resolutions.map(n):n,this.datasets.length>1&&this.datasets.length!=this.resolutions.length)throw new Error("Uncompatible number of datasets and resolutions: "+this.datasets.length+" "+this.resolutions.length);r.preprocess&&this.setPrepocesses(r.preprocess)},(e=[{key:"getDataset",value:function(t,e){if(1==this.datasets.length)return this.datasets[0];for(var n=this.resolutions,r=0,o=n[r]/e;o<t&&r<n.length;)o=n[++r]/e;return r==n.length?this.datasets[n.length-1]:this.datasets[r]}},{key:"setPrepocesses",value:function(t){var e,n=function(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return Ko(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Ko(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw i}}}}(this.datasets);try{for(n.s();!(e=n.n()).done;)e.value.preprocess=t}catch(t){n.e(t)}finally{n.f()}return this}}])&&ti(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,e}();function ri(t){if(!t.ok)throw new Error(t.status+" "+t.statusText);if(204!==t.status&&205!==t.status)return t.json()}function oi(t,e){return fetch(t,e).then(ri)}Object.defineProperty(oi,"name",{value:"default",configurable:!0}),Object.defineProperty(yi,"name",{value:"default",configurable:!0});var ii={},ai={},ui=34,li=10,ci=13;function fi(t){return new Function("d","return {"+t.map(function(t,e){return JSON.stringify(t)+": d["+e+'] || ""'}).join(",")+"}")}function si(t){var e=Object.create(null),n=[];return t.forEach(function(t){for(var r in t)r in e||n.push(e[r]=r)}),n}function hi(t,e){var n=t+"",r=n.length;return r<e?new Array(e-r+1).join(0)+n:n}function yi(t){var e=new RegExp('["'+t+"\n\r]"),n=t.charCodeAt(0);function r(t,e){var r,o=[],i=t.length,a=0,u=0,l=i<=0,c=!1;function f(){if(l)return ai;if(c)return c=!1,ii;var e,r,o=a;if(t.charCodeAt(o)===ui){for(;a++<i&&t.charCodeAt(a)!==ui||t.charCodeAt(++a)===ui;);return(e=a)>=i?l=!0:(r=t.charCodeAt(a++))===li?c=!0:r===ci&&(c=!0,t.charCodeAt(a)===li&&++a),t.slice(o+1,e-1).replace(/""/g,'"')}for(;a<i;){if((r=t.charCodeAt(e=a++))===li)c=!0;else if(r===ci)c=!0,t.charCodeAt(a)===li&&++a;else if(r!==n)continue;return t.slice(o,e)}return l=!0,t.slice(o,i)}for(t.charCodeAt(i-1)===li&&--i,t.charCodeAt(i-1)===ci&&--i;(r=f())!==ai;){for(var s=[];r!==ii&&r!==ai;)s.push(r),r=f();e&&null==(s=e(s,u++))||o.push(s)}return o}function o(e,n){return e.map(function(e){return n.map(function(t){return a(e[t])}).join(t)})}function i(e){return e.map(a).join(t)}function a(t){return null==t?"":t instanceof Date?(o=(n=t).getUTCHours(),i=n.getUTCMinutes(),a=n.getUTCSeconds(),u=n.getUTCMilliseconds(),isNaN(n)?"Invalid Date":((r=n.getUTCFullYear())<0?"-"+hi(-r,6):r>9999?"+"+hi(r,6):hi(r,4))+"-"+hi(n.getUTCMonth()+1,2)+"-"+hi(n.getUTCDate(),2)+(u?"T"+hi(o,2)+":"+hi(i,2)+":"+hi(a,2)+"."+hi(u,3)+"Z":a?"T"+hi(o,2)+":"+hi(i,2)+":"+hi(a,2)+"Z":i||o?"T"+hi(o,2)+":"+hi(i,2)+"Z":"")):e.test(t+="")?'"'+t.replace(/"/g,'""')+'"':t;var n,r,o,i,a,u}return{parse:function(t,e){var n,o,i=r(t,function(t,r){if(n)return n(t,r-1);o=t,n=e?function(t,e){var n=fi(t);return function(r,o){return e(n(r),o,t)}}(t,e):fi(t)});return i.columns=o||[],i},parseRows:r,format:function(e,n){return null==n&&(n=si(e)),[n.map(a).join(t)].concat(o(e,n)).join("\n")},formatBody:function(t,e){return null==e&&(e=si(t)),o(t,e).join("\n")},formatRows:function(t){return t.map(i).join("\n")},formatRow:i,formatValue:a}}var pi=yi(","),vi=pi.parse,di=(pi.parseRows,pi.format,pi.formatBody,pi.formatRows,pi.formatRow,pi.formatValue,yi("\t")),bi=di.parse;function mi(t){if(!t.ok)throw new Error(t.status+" "+t.statusText);return t.text()}function gi(t,e){return fetch(t,e).then(mi)}function wi(t){return function(e,n,r){return 2===arguments.length&&"function"==typeof n&&(r=n,n=void 0),gi(e,n).then(function(e){return t(e,r)})}}function xi(t,e,n,r){3===arguments.length&&"function"==typeof n&&(r=n,n=void 0);var o=yi(t);return gi(e,n).then(function(t){return o.parse(t,r)})}di.parseRows,di.format,di.formatBody,di.formatRows,di.formatRow,di.formatValue,Object.defineProperty(gi,"name",{value:"default",configurable:!0});var Si=wi(vi);function Oi(t){return Oi="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Oi(t)}function ji(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return Pi(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Pi(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw i}}}}function Pi(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function _i(t){if(null!=t){var e=t["function"==typeof Symbol&&Symbol.iterator||"@@iterator"],n=0;if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length))return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}}}throw new TypeError(Oi(t)+" is not iterable")}function Ti(){var t,e,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",o=n.toStringTag||"@@toStringTag";function i(n,r,o,i){var l=r&&r.prototype instanceof u?r:u,c=Object.create(l.prototype);return ki(c,"_invoke",function(n,r,o){var i,u,l,c=0,f=o||[],s=!1,h={p:0,n:0,v:t,a:y,f:y.bind(t,4),d:function(e,n){return i=e,u=0,l=t,h.n=n,a}};function y(n,r){for(u=n,l=r,e=0;!s&&c&&!o&&e<f.length;e++){var o,i=f[e],y=h.p,p=i[2];n>3?(o=p===r)&&(l=i[(u=i[4])?5:(u=3,3)],i[4]=i[5]=t):i[0]<=y&&((o=n<2&&y<i[1])?(u=0,h.v=r,h.n=i[1]):y<p&&(o=n<3||i[0]>r||r>p)&&(i[4]=n,i[5]=r,h.n=p,u=0))}if(o||n>1)return a;throw s=!0,r}return function(o,f,p){if(c>1)throw TypeError("Generator is already running");for(s&&1===f&&y(f,p),u=f,l=p;(e=u<2?t:l)||!s;){i||(u?u<3?(u>1&&(h.n=-1),y(u,l)):h.n=l:h.v=l);try{if(c=2,i){if(u||(o="next"),e=i[o]){if(!(e=e.call(i,l)))throw TypeError("iterator result is not an object");if(!e.done)return e;l=e.value,u<2&&(u=0)}else 1===u&&(e=i.return)&&e.call(i),u<2&&(l=TypeError("The iterator does not provide a '"+o+"' method"),u=1);i=t}else if((e=(s=h.n<0)?l:n.call(r,h))!==a)break}catch(e){i=t,u=1,l=e}finally{c=1}}return{value:e,done:s}}}(n,o,i),!0),c}var a={};function u(){}function l(){}function c(){}e=Object.getPrototypeOf;var f=[][r]?e(e([][r]())):(ki(e={},r,function(){return this}),e),s=c.prototype=u.prototype=Object.create(f);function h(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,c):(t.__proto__=c,ki(t,o,"GeneratorFunction")),t.prototype=Object.create(s),t}return l.prototype=c,ki(s,"constructor",c),ki(c,"constructor",l),l.displayName="GeneratorFunction",ki(c,o,"GeneratorFunction"),ki(s),ki(s,o,"Generator"),ki(s,r,function(){return this}),ki(s,"toString",function(){return"[object Generator]"}),(Ti=function(){return{w:i,m:h}})()}function ki(t,e,n,r){var o=Object.defineProperty;try{o({},"",{})}catch(t){o=0}ki=function(t,e,n,r){function i(e,n){ki(t,e,function(t){return this._invoke(e,n,t)})}e?o?o(t,e,{value:n,enumerable:!r,configurable:!r,writable:!r}):t[e]=n:(i("next",0),i("throw",1),i("return",2))},ki(t,e,n,r)}function Ci(t,e,n,r,o,i,a){try{var u=t[i](a),l=u.value}catch(t){return void n(t)}u.done?e(l):Promise.resolve(l).then(r,o)}function Ei(t){return function(){var e=this,n=arguments;return new Promise(function(r,o){var i=t.apply(e,n);function a(t){Ci(i,r,o,a,u,"next",t)}function u(t){Ci(i,r,o,a,u,"throw",t)}a(void 0)})}}function Ai(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,Mi(r.key),r)}}function Mi(t){var e=function(t){if("object"!=Oi(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=Oi(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Oi(e)?e:e+""}function zi(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(zi=function(){return!!t})()}function Ri(t){return Ri=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Ri(t)}function Ii(t,e){return Ii=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Ii(t,e)}wi(bi);var Fi=function(t){function e(t,n){var r,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),(r=function(t,e,n){return e=Ri(e),function(t,e){if(e&&("object"==Oi(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,zi()?Reflect.construct(e,n||[],Ri(t).constructor):e.apply(t,n))}(this,e,[t,n,0,o])).onlyDrawWhenAllTilesReady=o.onlyDrawWhenAllTilesReady||!1,r.info=void 0,r.infoLoadingStatus="notLoaded",r.cache={},r.loadInfo(),r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Ii(t,e)}(e,t),n=e,r=[{key:"loadInfo",value:function(){var t=this;return this.info||"notLoaded"!==this.infoLoadingStatus?"loaded"!==this.infoLoadingStatus&&"failed"!==this.infoLoadingStatus||this.map.redraw():Ei(Ti().m(function e(){var n;return Ti().w(function(e){for(;;)switch(e.p=e.n){case 0:return e.p=0,e.n=1,oi(t.url+"info.json");case 1:n=e.v,t.info=n,t.resolution=n.resolutionGeo,t.infoLoadingStatus="loaded",t.map.redraw(),e.n=3;break;case 2:e.p=2,e.v,t.infoLoadingStatus="failed";case 3:return e.a(2)}},e,null,[[0,2]])}))(),this}},{key:"getTilingEnvelope",value:function(t){if(this.info){var e=this.info.originPoint,n=this.info.resolutionGeo,r=this.info.tileSizeCell;return{xMin:Math.floor((t.xMin-e.x)/(n*r)),xMax:Math.floor((t.xMax-e.x)/(n*r)),yMin:Math.floor((t.yMin-e.y)/(n*r)),yMax:Math.floor((t.yMax-e.y)/(n*r))}}this.loadInfo()}},{key:"getData",value:(i=Ei(Ti().m(function t(e){var n,r,o,i,a,u,l,c,f,s,h,y,p,v,d,b,m=this;return Ti().w(function(t){for(;;)switch(t.n){case 0:if(this.info){t.n=1;break}return t.a(2,this);case 1:if(this.abortController=new AbortController,n=this.abortController.signal,r=this.getTilingEnvelope(e)){t.n=2;break}return t.a(2,this);case 2:o=this.info.tilingBounds,i=o.xMin,a=o.xMax,u=o.yMin,l=o.yMax,c=Math.max(r.xMin,i),f=Math.min(r.xMax,a),s=Math.max(r.yMin,u),h=Math.min(r.yMax,l),y=(f-c+1)*(h-s+1),p=0,v=[],d=Ti().m(function t(e){var r,o;return Ti().w(function(t){for(;;)switch(t.n){case 0:r=Ti().m(function t(r){return Ti().w(function(t){for(;;)switch(t.n){case 0:if(m.cache[e]||(m.cache[e]={}),!m.cache[e][r]||"failed"===m.cache[e][r]){t.n=1;break}return++p,t.a(2,1);case 1:m.cache[e][r]="loading",v.push(m.loadTile(e,r,n).then(function(t){m.cache[e][r]=t;var n=++p===y;m.checkAndRedraw(t,n)}).catch(function(){m.cache[e][r]="failed",++p}));case 2:return t.a(2)}},t)}),o=s;case 1:if(!(o<=h)){t.n=4;break}return t.d(_i(r(o)),2);case 2:if(!t.v){t.n=3;break}return t.a(3,3);case 3:o++,t.n=1;break;case 4:return t.a(2)}},t)}),b=c;case 3:if(!(b<=f)){t.n=5;break}return t.d(_i(d(b)),4);case 4:b++,t.n=3;break;case 5:return t.n=6,Promise.allSettled(v);case 6:return t.a(2,this)}},t,this)})),function(t){return i.apply(this,arguments)})},{key:"loadTile",value:(o=Ei(Ti().m(function t(e,n,r){var o,i,a,u=this;return Ti().w(function(t){for(;;)switch(t.p=t.n){case 0:return t.p=0,t.n=1,Si("".concat(this.url).concat(e,"/").concat(n,".csv"),{signal:r});case 1:if(o=t.v,i=this.preprocess?o.filter(function(t){return!1!==u.preprocess(t)}):o,this.info){t.n=2;break}throw new Error("Tile info unknown");case 2:return t.a(2,Bi(i,e,n,this.info));case 3:throw t.p=3,"AbortError"===(a=t.v).name&&console.warn("Tile request for ".concat(e,", ").concat(n," was aborted.")),a;case 4:return t.a(2)}},t,this,[[0,3]])})),function(t,e,n){return o.apply(this,arguments)})},{key:"cancelCurrentRequests",value:function(){this.abortController&&this.abortController.abort()}},{key:"checkAndRedraw",value:function(t,e){var n,r=!1,o=this.map.getZoom(),i=ji(this.map.layers);try{for(i.s();!(n=i.n()).done;){var a=n.value;if((!a.visible||a.visible(o))&&a.getDataset&&a.getDataset(o)==this){r=!0;break}}}catch(t){i.e(t)}finally{i.f()}if(r){var u=this.map.updateExtentGeo(),l=t.extGeo,c=l.xMin,f=l.xMax,s=l.yMin,h=l.yMax;u.xMax<=c||u.xMin>=f||u.yMax<=s||u.yMin>=h||(this.onlyDrawWhenAllTilesReady?e&&this.map.redraw():this.map.redraw())}}},{key:"updateViewCache",value:function(t){if(this.cellsViewCache=[],this.info){var e=this.getTilingEnvelope(t);if(e)for(var n=this.info.tilingBounds,r=Math.max(e.xMin,n.xMin);r<=Math.min(e.xMax,n.xMax);r++)if(this.cache[r])for(var o=Math.max(e.yMin,n.yMin);o<=Math.min(e.yMax,n.yMax);o++){var i=this.cache[r][o];if(i&&"string"!=typeof i){var a,u=ji(i.cells);try{for(u.s();!(a=u.n()).done;){var l=a.value;+l.x+this.resolution<t.xMin||+l.x-this.resolution>t.xMax||+l.y+this.resolution<t.yMin||+l.y-this.resolution>t.yMax||this.cellsViewCache.push(l)}}catch(t){u.e(t)}finally{u.f()}}}}}}],r&&Ai(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r,o,i}(Jo);function Bi(t,e,n,r){var o={};o.cells=t,o.x=e,o.y=n;var i=r.resolutionGeo,a=r.tileSizeCell;o.extGeo={xMin:r.originPoint.x+i*a*o.x,xMax:r.originPoint.x+i*a*(o.x+1),yMin:r.originPoint.y+i*a*o.y,yMax:r.originPoint.y+i*a*(o.y+1)};var u,l=ji(o.cells);try{for(l.s();!(u=l.n()).done;){var c=u.value;c.x=o.extGeo.xMin+c.x*i,c.y=o.extGeo.yMin+c.y*i}}catch(t){l.e(t)}finally{l.f()}return o}function Li(t){return Li="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Li(t)}function Ni(){var t,e,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",o=n.toStringTag||"@@toStringTag";function i(n,r,o,i){var l=r&&r.prototype instanceof u?r:u,c=Object.create(l.prototype);return Di(c,"_invoke",function(n,r,o){var i,u,l,c=0,f=o||[],s=!1,h={p:0,n:0,v:t,a:y,f:y.bind(t,4),d:function(e,n){return i=e,u=0,l=t,h.n=n,a}};function y(n,r){for(u=n,l=r,e=0;!s&&c&&!o&&e<f.length;e++){var o,i=f[e],y=h.p,p=i[2];n>3?(o=p===r)&&(l=i[(u=i[4])?5:(u=3,3)],i[4]=i[5]=t):i[0]<=y&&((o=n<2&&y<i[1])?(u=0,h.v=r,h.n=i[1]):y<p&&(o=n<3||i[0]>r||r>p)&&(i[4]=n,i[5]=r,h.n=p,u=0))}if(o||n>1)return a;throw s=!0,r}return function(o,f,p){if(c>1)throw TypeError("Generator is already running");for(s&&1===f&&y(f,p),u=f,l=p;(e=u<2?t:l)||!s;){i||(u?u<3?(u>1&&(h.n=-1),y(u,l)):h.n=l:h.v=l);try{if(c=2,i){if(u||(o="next"),e=i[o]){if(!(e=e.call(i,l)))throw TypeError("iterator result is not an object");if(!e.done)return e;l=e.value,u<2&&(u=0)}else 1===u&&(e=i.return)&&e.call(i),u<2&&(l=TypeError("The iterator does not provide a '"+o+"' method"),u=1);i=t}else if((e=(s=h.n<0)?l:n.call(r,h))!==a)break}catch(e){i=t,u=1,l=e}finally{c=1}}return{value:e,done:s}}}(n,o,i),!0),c}var a={};function u(){}function l(){}function c(){}e=Object.getPrototypeOf;var f=[][r]?e(e([][r]())):(Di(e={},r,function(){return this}),e),s=c.prototype=u.prototype=Object.create(f);function h(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,c):(t.__proto__=c,Di(t,o,"GeneratorFunction")),t.prototype=Object.create(s),t}return l.prototype=c,Di(s,"constructor",c),Di(c,"constructor",l),l.displayName="GeneratorFunction",Di(c,o,"GeneratorFunction"),Di(s),Di(s,o,"Generator"),Di(s,r,function(){return this}),Di(s,"toString",function(){return"[object Generator]"}),(Ni=function(){return{w:i,m:h}})()}function Di(t,e,n,r){var o=Object.defineProperty;try{o({},"",{})}catch(t){o=0}Di=function(t,e,n,r){function i(e,n){Di(t,e,function(t){return this._invoke(e,n,t)})}e?o?o(t,e,{value:n,enumerable:!r,configurable:!r,writable:!r}):t[e]=n:(i("next",0),i("throw",1),i("return",2))},Di(t,e,n,r)}function Gi(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return Wi(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Wi(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw i}}}}function Wi(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function Ui(t,e,n,r,o,i,a){try{var u=t[i](a),l=u.value}catch(t){return void n(t)}u.done?e(l):Promise.resolve(l).then(r,o)}function $i(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,Hi(r.key),r)}}function Hi(t){var e=function(t){if("object"!=Li(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=Li(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Li(e)?e:e+""}function Xi(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(Xi=function(){return!!t})()}function Vi(t){return Vi=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Vi(t)}function qi(t,e){return qi=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},qi(t,e)}var Yi=function(t){function e(t,n,r){var o,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),(o=function(t,e,n){return e=Vi(e),function(t,e){if(e&&("object"==Li(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Xi()?Reflect.construct(e,n||[],Vi(t).constructor):e.apply(t,n))}(this,e,[t,n,r,i])).cells=[],o.delimiter=i.delimiter||",",o.infoLoadingStatus="notLoaded",o.getData(void 0),o}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&qi(t,e)}(e,t),n=e,r=[{key:"getData",value:function(t){var e,n=this;return"notLoaded"!=this.infoLoadingStatus||(this.infoLoadingStatus="loading",(e=Ni().m(function t(){var e,r,o,i,a,u,l,c;return Ni().w(function(t){for(;;)switch(t.p=t.n){case 0:return t.p=0,t.n=1,xi(n.delimiter,n.url);case 1:e=t.v,r=Gi(e);try{for(r.s();!(o=r.n()).done;)(i=o.value).x=+i.x,i.y=+i.y}catch(t){r.e(t)}finally{r.f()}if(!n.preprocess){t.n=10;break}n.cells=[],a=Gi(e),t.p=2,a.s();case 3:if((u=a.n()).done){t.n=6;break}if(l=u.value,0!=n.preprocess(l)){t.n=4;break}return t.a(3,5);case 4:n.cells.push(l);case 5:t.n=3;break;case 6:t.n=8;break;case 7:t.p=7,c=t.v,a.e(c);case 8:return t.p=8,a.f(),t.f(8);case 9:t.n=11;break;case 10:n.cells=e;case 11:n.map&&n.map.redraw(),n.infoLoadingStatus="loaded",t.n=13;break;case 12:t.p=12,t.v,n.infoLoadingStatus="failed",n.cells=[];case 13:return t.a(2)}},t,null,[[2,7,8,9],[0,12]])}),function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(t){Ui(i,r,o,a,u,"next",t)}function u(t){Ui(i,r,o,a,u,"throw",t)}a(void 0)})})()),this}},{key:"updateViewCache",value:function(t){if(this.cells){this.cellsViewCache=[];var e,n=Gi(this.cells);try{for(n.s();!(e=n.n()).done;){var r=e.value;+r.x+this.resolution<t.xMin||+r.x-this.resolution>t.xMax||+r.y+this.resolution<t.yMin||+r.y-this.resolution>t.yMax||this.cellsViewCache.push(r)}}catch(t){n.e(t)}finally{n.f()}}}}],r&&$i(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(Jo);function Zi(t){return Zi="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Zi(t)}function Ji(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function Qi(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,Ki(r.key),r)}}function Ki(t){var e=function(t){if("object"!=Zi(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=Zi(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Zi(e)?e:e+""}function ta(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(ta=function(){return!!t})()}function ea(t){return ea=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},ea(t)}function na(t,e){return na=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},na(t,e)}var ra=function(t){function e(t,n){var r,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),(r=function(t,e,n){return e=ea(e),function(t,e){if(e&&("object"==Zi(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,ta()?Reflect.construct(e,n||[],ea(t).constructor):e.apply(t,n))}(this,e,[void 0,"",t,o])).cells=n||[],r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&na(t,e)}(e,t),n=e,(r=[{key:"getData",value:function(t){return this}},{key:"updateViewCache",value:function(t){if(this.cells){this.cellsViewCache=[];var e,n=function(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return Ji(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Ji(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw i}}}}(this.cells);try{for(n.s();!(e=n.n()).done;){var r=e.value;+r.x+this.resolution<t.xMin||+r.x-this.resolution>t.xMax||+r.y+this.resolution<t.yMin||+r.y-this.resolution>t.yMax||this.cellsViewCache.push(r)}}catch(t){n.e(t)}finally{n.f()}}}}])&&Qi(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(Jo);function oa(t){return oa="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},oa(t)}function ia(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function aa(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,ua(r.key),r)}}function ua(t){var e=function(t){if("object"!=oa(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=oa(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==oa(e)?e:e+""}function la(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(la=function(){return!!t})()}function ca(t){return ca=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},ca(t)}function fa(t,e){return fa=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},fa(t,e)}var sa=function(t){function e(t){var n;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),n=function(t,e,n){return e=ca(e),function(t,e){if(e&&("object"==oa(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,la()?Reflect.construct(e,n||[],ca(t).constructor):e.apply(t,n))}(this,e,[t]),t=t||{},n.color=t.color||"#EA6BAC",n.size=t.size||function(t,e){return e},n.shape=t.shape||"square",n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&fa(t,e)}(e,t),n=e,r=[{key:"draw",value:function(t,e,n){this.filter&&(t=t.filter(this.filter));var r,o=e.view.z,i=this.viewScale?this.viewScale(t,n,o):void 0,a=.5*n,u="function"==typeof this.color,l="function"==typeof this.size,c="function"==typeof this.shape,f=this.color||"black",s=this.size||n,h=this.shape||"square",y=u?this.color:null,p=l?this.size:null,v=c?this.shape:null,d=function(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return ia(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ia(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw i}}}}(t);try{for(d.s();!(r=d.n()).done;){var b=r.value,m=y?y(b,n,o,i):f;if(m&&"none"!==m){var g=p?p(b,n,o,i):s;if(g){var w=v?v(b,n,o,i):h;if("none"!==w){var x=this.offset(b,n,o),S=e.offscreenCtx;if(S.fillStyle=m,"square"===w){var O=n*(1-g/n)*.5;S.fillRect(b.x+O+x.dx,b.y+O+x.dy,g,g)}else if("circle"===w)S.beginPath(),S.arc(b.x+a+x.dx,b.y+a+x.dy,.5*g,0,2*Math.PI,!1),S.fill();else if("donut"===w){var j=b.x+a+x.dx,P=b.y+a+x.dy;S.beginPath(),S.moveTo(j,P),S.arc(j,P,a,0,2*Math.PI),S.arc(j,P,(1-g/n)*a,0,2*Math.PI,!0),S.closePath(),S.fill()}else if("diamond"===w){var _=.5*g;S.beginPath(),S.moveTo(b.x+a-_,b.y+a),S.lineTo(b.x+a,b.y+a+_),S.lineTo(b.x+a+_,b.y+a),S.lineTo(b.x+a,b.y+a-_),S.fill()}else if("triangle_up"===w){var T=(g-n)/2;S.beginPath(),S.moveTo(b.x-T,b.y-T),S.lineTo(b.x+a,b.y+n+T),S.lineTo(b.x+n+T,b.y-T),S.fill()}else if("triangle_down"===w){var k=(g-n)/2;S.beginPath(),S.moveTo(b.x-k,b.y+n+k),S.lineTo(b.x+a,b.y-k),S.lineTo(b.x+n+k,b.y+n+k),S.fill()}else if("triangle_left"===w){var C=(g-n)/2;S.beginPath(),S.moveTo(b.x+n+C,b.y+n+C),S.lineTo(b.x-C,b.y+a),S.lineTo(b.x+n+C,b.y-C),S.fill()}else{if("triangle_right"!==w)throw new Error("Unexpected shape:"+w);var E=(g-n)/2;S.beginPath(),S.moveTo(b.x-E,b.y-E),S.lineTo(b.x+n+E,b.y+a),S.lineTo(b.x-E,b.y+n+E),S.fill()}}}}}}catch(t){d.e(t)}finally{d.f()}this.updateLegends({viewScale:i,resolution:n,z:o,cells:t})}}],r&&aa(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(Lo);function ha(t){return ha="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ha(t)}function ya(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function pa(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,va(r.key),r)}}function va(t){var e=function(t){if("object"!=ha(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=ha(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==ha(e)?e:e+""}function da(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(da=function(){return!!t})()}function ba(t){return ba=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},ba(t)}function ma(t,e){return ma=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},ma(t,e)}var ga=function(t){function e(t){var n;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),n=function(t,e,n){return e=ba(e),function(t,e){if(e&&("object"==ha(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,da()?Reflect.construct(e,n||[],ba(t).constructor):e.apply(t,n))}(this,e,[t]),t=t||{},n.strokeColor=t.strokeColor||function(){return"#666"},n.size=t.size||function(t,e){return e},n.strokeWidth=t.strokeWidth||function(t,e,n){return 1.5*n},n.shape=t.shape||function(){return"square"},n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&ma(t,e)}(e,t),n=e,r=[{key:"draw",value:function(t,e,n){this.filter&&(t=t.filter(this.filter));var r,o=e.view.z,i=e.offscreenCtx,a=this.viewScale?this.viewScale(t,n,o):void 0,u=.5*n,l=function(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return ya(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ya(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw i}}}}(t);try{for(l.s();!(r=l.n()).done;){var c=r.value,f=this.strokeColor?this.strokeColor(c,n,o,a):void 0;if(f&&"none"!==f){i.strokeStyle=f;var s=this.size?this.size(c,n,o,a):n,h=this.strokeWidth?this.strokeWidth(c,n,o,a):1*o;if(h&&!(h<=0)){i.lineWidth=h;var y=this.shape?this.shape(c,n,o,a):"square";if("none"!==y){var p=this.offset(c,n,o);if("square"===y){var v=n*(1-s/n)*.5;i.beginPath(),i.rect(c.x+v+p.dx,c.y+v+p.dy,s,s),i.stroke()}else if("circle"===y)i.beginPath(),i.arc(c.x+u+p.dx,c.y+u+p.dy,.5*s,0,2*Math.PI,!1),i.stroke();else if("diamond"===y){var d=.5*s;i.beginPath(),i.moveTo(c.x+u-d,c.y+u),i.lineTo(c.x+u,c.y+u+d),i.lineTo(c.x+u+d,c.y+u),i.lineTo(c.x+u,c.y+u-d),i.lineTo(c.x+u-d,c.y+u),i.stroke()}else if("donut"===y)console.error("Not implemented");else if("triangle_up"===y){var b=(s-n)/2;i.beginPath(),i.moveTo(c.x-b,c.y-b),i.lineTo(c.x+u,c.y+n+b),i.lineTo(c.x+n+b,c.y-b),i.closePath(),i.stroke()}else if("triangle_down"===y){var m=(s-n)/2;i.beginPath(),i.moveTo(c.x-m,c.y+n+m),i.lineTo(c.x+u,c.y-m),i.lineTo(c.x+n+m,c.y+n+m),i.closePath(),i.stroke()}else if("triangle_left"===y){var g=(s-n)/2;i.beginPath(),i.moveTo(c.x+n+g,c.y+n+g),i.lineTo(c.x-g,c.y+u),i.lineTo(c.x+n+g,c.y-g),i.closePath(),i.stroke()}else{if("triangle_right"!==y)throw new Error("Unexpected shape:"+y);var w=(s-n)/2;i.beginPath(),i.moveTo(c.x-w,c.y-w),i.lineTo(c.x+n+w,c.y+u),i.lineTo(c.x-w,c.y+n+w),i.closePath(),i.stroke()}}}}}}catch(t){l.e(t)}finally{l.f()}this.updateLegends({style:this,resolution:n,z:o,viewScale:a})}}],r&&pa(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(Lo);function wa(t,e){let n,r;if(void 0===e)for(const e of t)null!=e&&(void 0===n?e>=e&&(n=r=e):(n>e&&(n=e),r<e&&(r=e)));else{let o=-1;for(let i of t)null!=(i=e(i,++o,t))&&(void 0===n?i>=i&&(n=r=i):(n>i&&(n=i),r<i&&(r=i)))}return[n,r]}function xa(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var r,o,i,a,u=[],l=!0,c=!1;try{if(i=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=i.call(n)).done)&&(u.push(r.value),u.length!==e);l=!0);}catch(t){c=!0,o=t}finally{try{if(!l&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw o}}return u}}(t,e)||Oa(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Sa(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=Oa(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw i}}}}function Oa(t,e){if(t){if("string"==typeof t)return ja(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ja(t,e):void 0}}function ja(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function Pa(t){var e,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[8,6,5,4,2.5,2],r=Math.pow(10,Math.floor(Math.log10(t))),o=Sa(n);try{for(o.s();!(e=o.n()).done;){var i=e.value;if(r*i<=t)return r*i}}catch(t){o.e(t)}finally{o.f()}return r}function _a(t,e,n){var r=wa(t,function(t){return t.x}),o=xa(r,2),i=o[0],a=o[1],u=wa(t,function(t){return t.y}),l=xa(u,2),c=l[0],f=l[1],s=Math.ceil((f-c)/e)+1,h=Math.ceil((a-i)/e)+1,y=Array.from({length:s},function(){return new Array(h).fill(void 0)});y.x0=i,y.y0=f,y.resolution=e;var p,v=Sa(t);try{for(v.s();!(p=v.n()).done;){var d=p.value,b=Math.floor((f-d.y)/e),m=Math.floor((d.x-i)/e),g=n?n(d):d;y[b][m]=g}}catch(t){v.e(t)}finally{v.f()}return y}function Ta(t){return Ta="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ta(t)}function ka(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,Ca(r.key),r)}}function Ca(t){var e=function(t){if("object"!=Ta(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=Ta(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Ta(e)?e:e+""}function Ea(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(Ea=function(){return!!t})()}function Aa(t){return Aa=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Aa(t)}function Ma(t,e){return Ma=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Ma(t,e)}var za=function(t){function e(t){var n;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),n=function(t,e,n){return e=Aa(e),function(t,e){if(e&&("object"==Ta(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Ea()?Reflect.construct(e,n||[],Aa(t).constructor):e.apply(t,n))}(this,e,[t]),t=t||{},n.height=t.height||function(t,e){return e*Math.random()},n.lineColor=t.lineColor||function(t,e,n,r){return"#BBB"},n.lineWidth=t.lineWidth||function(t,e,n,r){return r},n.fillColor=t.fillColor||function(t,e,n,r){return"#c08c5968"},n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Ma(t,e)}(e,t),n=e,r=[{key:"draw",value:function(t,e,n){var r=this;this.filter&&(t=t.filter(this.filter));var o=e.view.z,i=e.offscreenCtx,a=this.viewScale?this.viewScale(t,n,o):void 0,u=function(t,e){var n,r={},o=Sa(t);try{for(o.s();!(n=o.n()).done;){var i=n.value,a=r[i.y];a||(a={},r[i.y]=a),a[i.x]=e?e(i):i}}catch(t){o.e(t)}finally{o.f()}return r}(t,function(t){return r.height(t,n,o,a)}),l=e.extGeo;if(l){var c=Math.floor(l.xMin/n)*n,f=Math.floor(l.xMax/n)*n,s=Math.floor(l.yMin/n)*n,h=Math.floor(l.yMax/n)*n,y={min:s,max:h};i.lineJoin="round";for(var p=h;p>=s;p-=n){var v=u[p];if(v){i.beginPath(),i.moveTo(c-n/2,p);for(var d=void 0,b=c;b<=f;b+=n){var m=v[b];m||(m=0),m||d?i.lineTo(b+n/2,p+m):i.moveTo(b+n/2,p),d=m}d&&i.lineTo(f+n/2,p);var g=this.fillColor(p,y,n,o);g&&"none"!=g&&(i.fillStyle=g,i.fill());var w=this.lineColor(p,y,n,o),x=this.lineWidth(p,y,n,o);w&&"none"!=w&&x>0&&(i.strokeStyle=w,i.lineWidth=x,i.stroke())}}}}}],r&&ka(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(Lo);function Ra(t){return Ra="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ra(t)}function Ia(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var r,o,i,a,u=[],l=!0,c=!1;try{if(i=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=i.call(n)).done)&&(u.push(r.value),u.length!==e);l=!0);}catch(t){c=!0,o=t}finally{try{if(!l&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw o}}return u}}(t,e)||Fa(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Fa(t,e){if(t){if("string"==typeof t)return Ba(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Ba(t,e):void 0}}function Ba(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function La(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,Na(r.key),r)}}function Na(t){var e=function(t){if("object"!=Ra(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=Ra(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Ra(e)?e:e+""}function Da(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(Da=function(){return!!t})()}function Ga(t){return Ga=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Ga(t)}function Wa(t,e){return Wa=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Wa(t,e)}var Ua=function(t){function e(t){var n;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),n=function(t,e,n){return e=Ga(e),function(t,e){if(e&&("object"==Ra(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Da()?Reflect.construct(e,n||[],Ga(t).constructor):e.apply(t,n))}(this,e,[t]),t=t||{},n.color=t.color,n.type=t.type||function(){return"flag"},n.size=t.size||function(t,e){return e},n.stripesOrientation=t.stripesOrientation||function(){return 0},n.offsetAngle=t.offsetAngle||function(){return 0},n.agePyramidHeight=t.agePyramidHeight||function(t,e){return e},n.pieChartInternalRadiusFactor=t.pieChartInternalRadiusFactor||0,n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Wa(t,e)}(e,t),n=e,r=[{key:"draw",value:function(t,e,n){this.filter&&(t=t.filter(this.filter));var r,o=e.view.z,i=e.offscreenCtx,a=this.viewScale?this.viewScale(t,n,o):void 0,u=Object.entries(this.color).length,l=function(t){var e="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!e){if(Array.isArray(t)||(e=Fa(t))){e&&(t=e);var n=0,r=function(){};return{s:r,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,i=!0,a=!1;return{s:function(){e=e.call(t)},n:function(){var t=e.next();return i=t.done,t},e:function(t){a=!0,o=t},f:function(){try{i||null==e.return||e.return()}finally{if(a)throw o}}}}(t);try{for(l.s();!(r=l.n()).done;){var c=r.value,f=this.size?this.size(c,n,o,a):n;if(f){var s=this.offset(c,n,o),h=this.type?this.type(c,n,o,a):"flag",y=c.x+s.dx+("agepyramid"===h?0:.5*n),p=c.y+s.dy+("agepyramid"===h?0:.5*n),v=this.offsetAngle?this.offsetAngle(c,n,o,a)*Math.PI/180:0;if("agepyramid"===h||"radar"===h||"halftone"===h){for(var d=-1/0,b=0,m=Object.keys(this.color);b<m.length;b++){var g=+c[m[b]];g>d&&(d=g)}var w=0;"agepyramid"===h&&this.agePyramidHeight&&(w=(n-this.agePyramidHeight(c,n,o,a))/2),"radar"!==h&&"halftone"!==h||(w=Math.PI/2+v);var x="agepyramid"===h?(this.agePyramidHeight?this.agePyramidHeight(c,n,o,a):n)/u:"radar"===h||"halftone"===h?2*Math.PI/u:void 0;if(void 0===x)throw new Error("Unexpected symbol type:"+h);for(var S=0,O=Object.entries(this.color);S<O.length;S++){var j=Ia(O[S],2),P=j[0],_=j[1];if("agepyramid"===h){i.fillStyle=_;var T=f*c[P]/d;i.fillRect(y+(n-T)/2,p+w,T,x),w+=x}else if("radar"===h){i.fillStyle=_;var k=c[P],C=f/2*Math.sqrt(k/d);i.beginPath(),i.moveTo(y,p),i.arc(y,p,C,w-x,w),i.lineTo(y,p),i.fill(),w+=x}else{if("halftone"!==h)throw new Error("Unexpected symbol type:"+h);i.fillStyle=_;var E=c[P],A=.333*f*Math.sqrt(E/d);i.beginPath(),i.arc(y+.25*n*Math.cos(w),p+.25*n*Math.sin(w),A,0,2*Math.PI),i.fill(),w+=x}}}else{for(var M=0,z=0,R=Object.keys(this.color);z<R.length;z++){var I=+c[R[z]];I&&(M+=I)}if(!M||isNaN(M))continue;for(var F=0,B=n*(1-f/n)*.5,L=this.stripesOrientation(c,n,o,a),N=0,D=Object.entries(this.color);N<D.length;N++){var G=Ia(D[N],2),W=G[0],U=G[1],$=c[W]/M;if($&&!isNaN($)){if(i.fillStyle=U,"flag"===h)0==L?i.fillRect(c.x+B+s.dx,c.y+B+F*f+s.dy,f,$*f):i.fillRect(c.x+B+F*f+s.dx,c.y+B+s.dy,$*f,f);else if("piechart"===h){var H=2*F*Math.PI,X=2*(F+$)*Math.PI;i.beginPath(),i.moveTo(y,p),i.arc(y,p,.5*f,H+v,X+v),this.pieChartInternalRadiusFactor&&i.arc(y,p,.5*f*this.pieChartInternalRadiusFactor,H+v,X+v,!0),i.closePath(),i.fill()}else if("ring"===h)i.beginPath(),i.arc(y,p,Math.sqrt(1-F)*f*.5,0,2*Math.PI),i.fill();else{if("segment"!==h)throw new Error("Unexpected symbol type:"+h);var V=f*f/n;0==L?i.fillRect(c.x+s.dx,c.y+(n-V)/2+F*V+s.dy,n,$*V):i.fillRect(c.x+F*n+s.dx,c.y+(n-V)/2+s.dy,$*n,V)}F+=$}}}}}}catch(t){l.e(t)}finally{l.f()}this.updateLegends({style:this,resolution:n,z:o,viewScale:a})}}],r&&La(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(Lo);function $a(t){return $a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},$a(t)}function Ha(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function Xa(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,Va(r.key),r)}}function Va(t){var e=function(t){if("object"!=$a(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=$a(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==$a(e)?e:e+""}function qa(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(qa=function(){return!!t})()}function Ya(t){return Ya=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Ya(t)}function Za(t,e){return Za=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Za(t,e)}var Ja=function(t){function e(t){var n;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),n=function(t,e,n){return e=Ya(e),function(t,e){if(e&&("object"==$a(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,qa()?Reflect.construct(e,n||[],Ya(t).constructor):e.apply(t,n))}(this,e,[t]),t=t||{},n.color=t.color||function(){return"#EA6BAC"},n.width=t.width||function(t,e){return.1*e},n.length=t.length||function(t,e){return.9*e},n.orientation=t.orientation||function(){return 180*Math.random()},n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Za(t,e)}(e,t),n=e,r=[{key:"draw",value:function(t,e,n){this.filter&&(t=t.filter(this.filter));var r=e.view.z,o=e.offscreenCtx,i=this.viewScale?this.viewScale(t,n,r):void 0;o.lineCap="butt";var a,u=Math.PI/180,l=function(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return Ha(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Ha(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw i}}}}(t);try{for(l.s();!(a=l.n()).done;){var c=a.value,f=this.color?this.color(c,n,r,i):void 0;if(f){var s=this.width?this.width(c,n,r,i):void 0;if(s&&!(s<0)){var h=this.length?this.length(c,n,r,i):void 0;if(h&&!(h<0)){var y=this.orientation(c,n,r,i)*u;if(void 0!==y&&!isNaN(y)){var p=this.offset(c,n,r);o.strokeStyle=f,o.lineWidth=s;var v=c.x+n/2+p.dx,d=c.y+n/2+p.dy,b=.5*Math.cos(y)*h,m=.5*Math.sin(y)*h;o.beginPath(),o.moveTo(v-b,d-m),o.lineTo(v+b,d+m),o.stroke()}}}}}}catch(t){l.e(t)}finally{l.f()}this.updateLegends({viewScale:i,resolution:n,z:r,cells:t})}}],r&&Xa(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(Lo);function Qa(t){return Qa="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Qa(t)}function Ka(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function tu(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,eu(r.key),r)}}function eu(t){var e=function(t){if("object"!=Qa(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=Qa(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Qa(e)?e:e+""}function nu(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(nu=function(){return!!t})()}function ru(t){return ru=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},ru(t)}function ou(t,e){return ou=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},ou(t,e)}var iu=function(t){function e(t){var n;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),n=function(t,e,n){return e=ru(e),function(t,e){if(e&&("object"==Qa(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,nu()?Reflect.construct(e,n||[],ru(t).constructor):e.apply(t,n))}(this,e,[t]),t=t||{},n.text=t.text||function(){return"X"},n.color=t.color||function(){return"black"},n.fontSize=t.fontSize||function(t,e){return e},n.fontFamily=t.fontFamily||function(){return"Arial"},n.fontWeight=t.fontWeight||function(){return"bold"},n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&ou(t,e)}(e,t),n=e,r=[{key:"draw",value:function(t,e,n){this.filter&&(t=t.filter(this.filter));var r=e.view.z,o=e.offscreenCtx,i=this.viewScale?this.viewScale(t,n,r):void 0;e.initCanvasTransform();var a,u=function(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return Ka(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Ka(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw i}}}}(t);try{for(u.s();!(a=u.n()).done;){var l=a.value,c=this.text?this.text(l,n,r,i):void 0;if(null!=c&&null!=c&&c+""!=""){var f=this.color?this.color(l,n,r,i):void 0;if(f){o.fillStyle=f;var s=this.fontSize(l,n,r,i)/r;if(s){var h=this.fontFamily?this.fontFamily(l,n,r,i):"Arial",y=this.fontWeight?this.fontWeight(l,n,r,i):"bold";o.font=y+" "+s+"px "+h;var p=this.offset(l,n,r);o.textAlign="center";var v=e.geoToPixX(l.x+.5*n+p.dx),d=e.geoToPixY(l.y+.5*n+p.dy)+.3*s;o.fillText(c,v,d)}}}}}catch(t){u.e(t)}finally{u.f()}this.updateLegends({style:this,resolution:n,z:r,viewScale:i})}}],o=[{key:"textScale",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0,n=t.length;return function(r){return e&&(r=e(r)),0==r?"":r>=1?t[n-1]:t[Math.floor(r*n)]}}}],r&&tu(n.prototype,r),o&&tu(n,o),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r,o}(Lo);function au(t){return au="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},au(t)}function uu(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return lu(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?lu(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw i}}}}function lu(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function cu(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,fu(r.key),r)}}function fu(t){var e=function(t){if("object"!=au(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=au(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==au(e)?e:e+""}function su(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(su=function(){return!!t})()}function hu(t){return hu=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},hu(t)}function yu(t,e){return yu=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},yu(t,e)}var pu=function(t){function e(t){var n;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),n=function(t,e,n){return e=hu(e),function(t,e){if(e&&("object"==au(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,su()?Reflect.construct(e,n||[],hu(t).constructor):e.apply(t,n))}(this,e,[t]),t=t||{},n.height=t.height,n.color=t.color||function(){return"#c08c59"},n.width=t.width||function(t,e){return.5*e},n.simple=t.simple||function(){return!1},n.viewHeightFactor=t.viewHeightFactor||1.5,n.viewSX=null==t.viewSX?0:t.viewSX,n.viewSY=null==t.viewSY?-.5:t.viewSY,n.shadowDirection=null==t.shadowDirection?-40.3*Math.PI/180:t.shadowDirection,n.shadowFactor=t.shadowFactor||.3,n.shadowColor=t.shadowColor||"#00000033",n.outlineCol=t.outlineCol||"#FFFFFF",n.outlineWidthPix=null==t.outlineWidthPix?.5:t.outlineWidthPix,n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&yu(t,e)}(e,t),n=e,r=[{key:"draw",value:function(t,e,n){this.filter&&(t=t.filter(this.filter));var r=e.view.z,o=e.offscreenCtx,i=this.viewScale?this.viewScale(t,n,r):void 0,a=e.view.x+this.viewSX*e.w*r,u=e.view.y+this.viewSY*e.h*r,l=this.viewHeightFactor*(e.w+e.h)*.5*r;t.sort(function(t,e){return 1e8*(e.y-t.y)+t.x-e.x});var c=this.simple(n,r,i);o.lineCap=c?"butt":"round",o.strokeStyle=this.shadowColor,o.fillStyle=this.shadowColor;var f,s=uu(t);try{for(s.s();!(f=s.n()).done;){var h=f.value,y=this.width?this.width(h,n,r,i):void 0;if(y&&!(y<0)){var p=this.height?this.height(h,n,r,i):void 0;if(p&&!(p<0)){o.lineWidth=y;var v=h.x+n/2,d=h.y+n/2,b=p*this.shadowFactor;o.beginPath(),o.moveTo(v,d),o.lineTo(v+b*Math.cos(this.shadowDirection),d+b*Math.sin(this.shadowDirection)),o.stroke()}}}}catch(t){s.e(t)}finally{s.f()}var m,g=uu(t);try{for(g.s();!(m=g.n()).done;){var w=m.value,x=this.color?this.color(w,n,r,i):void 0;if(x){var S=this.width?this.width(w,n,r,i):void 0;if(S&&!(S<0)){var O=this.height?this.height(w,n,r,i):void 0;if(O&&!(O<0)){var j=w.x+n/2,P=w.y+n/2,_=j-a,T=P-u,k=Math.atan2(T,_),C=Math.sqrt(_*_+T*T)*O/(l-O);c?(o.strokeStyle=x,o.lineWidth=S,o.beginPath(),o.moveTo(j,P),o.lineTo(j+C*Math.cos(k),P+C*Math.sin(k)),o.stroke()):(o.strokeStyle=this.outlineCol,o.lineWidth=S+2*this.outlineWidthPix*r,o.beginPath(),o.moveTo(j,P),o.lineTo(j+C*Math.cos(k),P+C*Math.sin(k)),o.stroke(),o.strokeStyle=x,o.lineWidth=S,o.beginPath(),o.moveTo(j,P),o.lineTo(j+C*Math.cos(k),P+C*Math.sin(k)),o.stroke(),o.strokeStyle=this.outlineCol,o.lineWidth=this.outlineWidthPix*r,o.beginPath(),o.arc(j+C*Math.cos(k),P+C*Math.sin(k),.5*S,0,2*Math.PI,!1),o.stroke())}}}}}catch(t){g.e(t)}finally{g.f()}o.lineCap="butt",this.updateLegends({style:this,resolution:n,z:r,viewScale:i})}}],r&&cu(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(Lo);function vu(t){return vu="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},vu(t)}function du(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function bu(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,mu(r.key),r)}}function mu(t){var e=function(t){if("object"!=vu(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=vu(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==vu(e)?e:e+""}function gu(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(gu=function(){return!!t})()}function wu(t){return wu=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},wu(t)}function xu(t,e){return xu=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},xu(t,e)}var Su=function(t){function e(){var t,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),(t=function(t,e,n){return e=wu(e),function(t,e){if(e&&("object"==vu(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,gu()?Reflect.construct(e,n||[],wu(t).constructor):e.apply(t,n))}(this,e,[n])).color=n.color||function(t,e,n,r){return"#EA6BAC"},t.width=n.width||function(t,e,n,r){return e/5},t.length=n.length||function(t,e,n,r){return e},t.diamond=n.diamond,t}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&xu(t,e)}(e,t),n=e,r=[{key:"draw",value:function(t,n,r){this.filter&&(t=t.filter(this.filter));var o=n.view.z,i=n.offscreenCtx,a=e.buildSides(t,r);if(0!=a.length){var u=this.viewScale?this.viewScale(a,r,o):void 0;i.lineCap="butt";var l,c=.5*r,f=function(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return du(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?du(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw i}}}}(a);try{for(f.s();!(l=f.n()).done;){var s=l.value,h=this.color?this.color(s,r,o,u):void 0;if(h&&"none"!=h)if(this.diamond){i.fillStyle=h;var y=s.x,p=s.y;i.beginPath(),i.moveTo(y-c,p),i.lineTo(y,p+c),i.lineTo(y+c,p),i.lineTo(y,p-c),i.closePath(),i.fill()}else{var v=this.width?this.width(s,r,o,u):void 0;if(!v||v<=0)continue;var d=this.length?this.length(s,r,o,u):void 0;if(!d||d<=0)continue;var b=.5*d;i.lineWidth=v,i.strokeStyle=h;var m=s.x,g=s.y;i.beginPath(),"v"===s.or?(i.moveTo(m,g-b),i.lineTo(m,g+b)):(i.moveTo(m-b,g),i.lineTo(m+b,g)),i.stroke()}}}catch(t){f.e(t)}finally{f.f()}this.updateLegends({style:this,resolution:r,z:o,viewScale:u})}}}],o=[{key:"buildSides",value:function(t,e){var n=arguments.length>5&&void 0!==arguments[5]?arguments[5]:.01,r=[],o=arguments.length>4&&void 0!==arguments[4]&&!arguments[4]?0:e/2;n*=e;var i=Math.abs;t.sort(function(t,e){return e.x==t.x?t.y-e.y:t.x-e.x});for(var a=t[0],u=1;u<t.length;u++){var l=t[u];i(a.y+e-l.y)<n&&i(a.x-l.x)<n?r.push({or:"h",x:a.x+o,y:l.y,c1:a,c2:l}):(r.push({or:"h",x:a.x+o,y:a.y+e,c1:a,c2:void 0}),r.push({or:"h",x:l.x+o,y:l.y,c1:void 0,c2:l})),a=l}t.sort(function(t,e){return e.y==t.y?t.x-e.x:t.y-e.y}),a=t[0];for(var c=1;c<t.length;c++){var f=t[c];i(a.x+e-f.x)<n&&i(a.y-f.y)<n?r.push({or:"v",x:a.x+e,y:a.y+o,c1:a,c2:f}):(r.push({or:"v",x:a.x+e,y:a.y+o,c1:a,c2:void 0}),r.push({or:"v",x:f.x,y:f.y+o,c1:void 0,c2:f})),a=f}return r}}],r&&bu(n.prototype,r),o&&bu(n,o),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r,o}(Lo);function Ou(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=document.createElement("canvas");r.setAttribute("width",t),r.setAttribute("height",e);var o=n&&2==+n.version?"2":"",i=r.getContext("webgl"+o,n);if(!i)throw new Error("Unable to initialize WebGL"+o+". Your browser or machine may not support it.");return{canvas:r,gl:i,width:t,height:e}}function ju(t){var e=t.createProgram();if(null==e)throw new Error("Cannot create webGL program");for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];for(var i=0,a=r;i<a.length;i++){var u=a[i];t.attachShader(e,u)}if(t.linkProgram(e),t.getProgramParameter(e,t.LINK_STATUS))return e;throw new Error(t.getProgramInfoLog(e)||"Cannot create webGL program (2)")}function Pu(t,e){var n=t.createShader(e);if(null==n)throw new Error("Cannot create webGL shader");for(var r=arguments.length,o=new Array(r>2?r-2:0),i=2;i<r;i++)o[i-2]=arguments[i];if(t.shaderSource(n,o.join("\n")),t.compileShader(n),t.getShaderParameter(n,t.COMPILE_STATUS))return n;throw new Error(t.getShaderInfoLog(n)||"Cannot create webGL shader (2)")}function _u(t){return _u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},_u(t)}function Tu(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,ku(r.key),r)}}function ku(t){var e=function(t){if("object"!=_u(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=_u(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==_u(e)?e:e+""}function Cu(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(Cu=function(){return!!t})()}function Eu(t){return Eu=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Eu(t)}function Au(t,e){return Au=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Au(t,e)}var Mu=function(t){function e(t){var n;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),n=function(t,e,n){return e=Eu(e),function(t,e){if(e&&("object"==_u(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Cu()?Reflect.construct(e,n||[],Eu(t).constructor):e.apply(t,n))}(this,e,[t]),t=t||{},n.code=t.code,t.color=t.color||void 0;var r=Object.keys(t.color);n.catToI={};for(var o=0;o<r.length;o++)n.catToI[r[o]]=o+"";n.colors=[];for(var i=0,a=r;i<a.length;i++){var u=a[i];n.colors.push(t.color[""+u])}return n.size=t.size,n.cvWGL=void 0,n.programm=void 0,n.x=void 0,n.y=void 0,n.z=void 0,n.cellsNb=void 0,n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Au(t,e)}(e,t),n=e,r=[{key:"init",value:function(t,e){if(this.cvWGL=Ou(t+"",e+""),this.cvWGL){var n=this.cvWGL.gl,r=Pu(n,n.VERTEX_SHADER,"\n attribute vec2 pos;\n uniform float sizePix;\n uniform mat3 mat;\n attribute float i;\n varying float vi;\n void main() {\n gl_Position = vec4(mat * vec3(pos, 1.0), 1.0);\n gl_PointSize = sizePix;\n vi = i;\n }"),o=Pu(n,n.FRAGMENT_SHADER,"\n precision highp float;\n varying float vi;\n uniform sampler2D colorLUT;\n uniform float lutSize;\n void main(void) {\n float idx = floor(vi + 0.5);\n float u = (idx + 0.5) / lutSize;\n gl_FragColor = texture2D(colorLUT, vec2(u, 0.5));\n }");this.program=ju(n,r,o),n.useProgram(this.program)}else console.error("No webGL")}},{key:"bindColors",value:function(){for(var t=this.cvWGL.gl,e=this.colors.length,n=new Uint8Array(4*e),r=0;r<e;r++){var o=gn(this.colors[r]);n[4*r]=+o.r,n[4*r+1]=o.g,n[4*r+2]=o.b,n[4*r+3]=255*(null==o?void 0:o.opacity)}var i=t.createTexture();t.bindTexture(t.TEXTURE_2D,i),t.texImage2D(t.TEXTURE_2D,0,t.RGBA,e,1,0,t.RGBA,t.UNSIGNED_BYTE,n),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.NEAREST),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.NEAREST),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE);var a=t.getUniformLocation(this.program,"colorLUT"),u=t.getUniformLocation(this.program,"lutSize");t.uniform1i(a,0),t.uniform1f(u,e),t.activeTexture(t.TEXTURE0),t.bindTexture(t.TEXTURE_2D,i)}},{key:"bindVertices",value:function(t,e,n,r){for(var o,i=this.cvWGL.gl,a=e/2,u=t.length,l=[],c=[],f=0;f<u;f++){o=t[f];var s=this.code(o,e,n,r);if(null!=s){var h=this.catToI[s];isNaN(+h)?console.log("Unexpected category index: "+s+" "+h):(l.push(o.x+a,o.y+a),c.push(+h))}}i.bindBuffer(i.ARRAY_BUFFER,i.createBuffer()),i.bufferData(i.ARRAY_BUFFER,new Float32Array(l),i.STATIC_DRAW);var y=i.getAttribLocation(this.program,"pos");i.vertexAttribPointer(y,2,i.FLOAT,!1,0,0),i.enableVertexAttribArray(y),i.bindBuffer(i.ARRAY_BUFFER,i.createBuffer()),i.bufferData(i.ARRAY_BUFFER,new Float32Array(c),i.STATIC_DRAW);var p=i.getAttribLocation(this.program,"i");i.vertexAttribPointer(p,1,i.FLOAT,!1,0,0),i.enableVertexAttribArray(p)}},{key:"mapContentChanged",value:function(t,e){return(t.x!=this.x||t.y!=this.y||t.z!=this.z||this.cellsNb!=e)&&(this.x=t.x,this.y=t.y,this.z=t.z,this.cellsNb=e,!0)}},{key:"draw",value:function(t,e,n){this.filter&&(t=t.filter(this.filter));var r=e.view.z,o=this.viewScale?this.viewScale(t,n,r):void 0;this.cvWGL&&e.w==this.cvWGL.width&&e.h==this.cvWGL.height||(this.init(e.w,e.h),this.bindColors());var i=this.cvWGL.gl,a=this.cvWGL.canvas,u=this.size?this.size(n,r)/r:n/r+.2;i.uniform1f(i.getUniformLocation(this.program,"sizePix"),1*u),this.mapContentChanged(e.view,t.length)&&this.bindVertices(t,n,r,o),i.uniformMatrix3fv(i.getUniformLocation(this.program,"mat"),!1,new Float32Array(e.getWebGLTransform())),i.clear(i.COLOR_BUFFER_BIT),i.drawArrays(i.POINTS,0,t.length),e.initCanvasTransform(),e.offscreenCtx.drawImage(a,0,0),this.updateLegends({style:this,resolution:n,z:r,viewScale:o})}}],r&&Tu(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(Lo);function zu(t){return zu="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},zu(t)}function Ru(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,Iu(r.key),r)}}function Iu(t){var e=function(t){if("object"!=zu(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=zu(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==zu(e)?e:e+""}function Fu(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(Fu=function(){return!!t})()}function Bu(t){return Bu=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Bu(t)}function Lu(t,e){return Lu=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Lu(t,e)}var Nu=function(t){function e(t){var n;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),n=function(t,e,n){return e=Bu(e),function(t,e){if(e&&("object"==zu(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Fu()?Reflect.construct(e,n||[],Bu(t).constructor):e.apply(t,n))}(this,e,[t]),t=t||{},n.elevation=t.elevation,n.sunAzimuth=t.sunAzimuth||function(){return 2.356},n.sunAltitude=t.sunAltitude||function(){return.2},n.color=t.color||function(){return"black"},n.undefinedValue=t.undefinedValue||0,n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Lu(t,e)}(e,t),n=e,r=[{key:"draw",value:function(t,e,n){var r=this;if(this.filter&&(t=t.filter(this.filter)),0!=t.length){var o=e.view.z,i=this.viewScale?this.viewScale(t,n,o):void 0,a=_a(t,n,function(t){return r.elevation(t)}),u=a.x0,l=a.y0;a=function(t){for(var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e3,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:2.356,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:.15,o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:void 0,i=t.length,a=t[0].length,u=Math.sin(n),l=-Math.cos(n),c=Math.tan(r),f=Array.from({length:i},function(){return new Array(a).fill(void 0)}),s=0;s<i;s++)for(var h=0;h<a;h++){var y=t[s][h]||o;if(void 0!==y)for(var p=e;;){var v=h-u*p/e,d=s-l*p/e,b=Math.round(v),m=Math.round(d);if(b<0||m<0||b>=a||m>=i)break;var g=t[m][b]||o;if(void 0===g)break;if(g-y-c*p>0){f[s][h]=1;break}p+=e}}return f}(a,n,this.sunAzimuth(n,o,i),this.sunAltitude(n,o,i),this.undefinedValue),t=[];for(var c=0;c<a.length;c++)for(var f=a[c],s=l-c*n,h=0;h<f.length;h++)if(f[h]){var y={x:u+h*n,y:s};t.push(y)}new Mu({code:function(){return"a"},color:{a:this.color(n,o,i)}}).draw(t,e,n),this.updateLegends({style:this,resolution:n,z:o,viewScale:i})}}}],r&&Ru(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(Lo);function Du(t,e){let n;if(void 0===e)for(const e of t)null!=e&&(n<e||void 0===n&&e>=e)&&(n=e);else{let r=-1;for(let o of t)null!=(o=e(o,++r,t))&&(n<o||void 0===n&&o>=o)&&(n=o)}return n}function Gu(t){return Gu="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Gu(t)}function Wu(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(Wu=function(){return!!t})()}function Uu(t){return Uu=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Uu(t)}function $u(t,e){return $u=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},$u(t,e)}var Hu=function(t){function e(){var t,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),t=function(t,e,n){return e=Uu(e),function(t,e){if(e&&("object"==Gu(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Wu()?Reflect.construct(e,n||[],Uu(t).constructor):e.apply(t,n))}(this,e,[n]);var r=n.elevation;t.viewScale=function(t){return Du(t,function(t){return(e=t).c1&&e.c2&&e.c1[r]&&e.c2[r]?e.v=+e.c2[r]-e.c1[r]:e.v=0,e.v;var e})};var o=n.colorTopLeft||"255,255,255",i=n.colorBottomRight||"0,0,0";if(null!=n.revert&&n.revert){var a=o;o=i,i=a}var u=n.scale;return t.color=function(t,e,n,r){if(0!=t.v){var a=Math.abs(t.v/r);return u&&(a=u(a)),t.v<0&&"h"===t.or||t.v>0&&"v"===t.or?"rgba("+o+","+a+")":"rgba("+i+","+a+")"}},t.width=function(t,e,r){return n.width|Math.min(2*r,e/3)},t.diamond=n.diamond,t}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&$u(t,e)}(e,t),n=e,Object.defineProperty(n,"prototype",{writable:!1}),n;var n}(Su);function Xu(t){return Xu="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Xu(t)}function Vu(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function qu(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,Yu(r.key),r)}}function Yu(t){var e=function(t){if("object"!=Xu(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=Xu(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Xu(e)?e:e+""}function Zu(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(Zu=function(){return!!t})()}function Ju(t){return Ju=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Ju(t)}function Qu(t,e){return Qu=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Qu(t,e)}var Ku=function(t){function e(t){var n;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),n=function(t,e,n){return e=Ju(e),function(t,e){if(e&&("object"==Xu(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Zu()?Reflect.construct(e,n||[],Ju(t).constructor):e.apply(t,n))}(this,e,[t]),t=t||{},n.code=t.code,n.color=t.color,n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Qu(t,e)}(e,t),n=e,r=[{key:"draw",value:function(t,e,n){this.filter&&(t=t.filter(this.filter));var r=e.view.z,o=e.offscreenCtx,i=Su.buildSides(t,n);if(0!=i.length){var a=this.viewScale?this.viewScale(i,n,r):void 0;o.lineCap="butt";var u,l=.5*n,c=function(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return Vu(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Vu(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw i}}}}(i);try{for(c.s();!(u=c.n()).done;){var f=u.value,s=f.c1?this.code(f.c1,n,r):void 0,h=f.c2?this.code(f.c2,n,r):void 0;if(s!=h){var y=this.width?this.width(f,n,r,a):void 0;if(y&&!(y<=0)){var p=.5*y;o.lineWidth=y,"h"===f.or?(h&&(o.beginPath(),o.strokeStyle=this.color[h],o.moveTo(f.x-l,f.y+p),o.lineTo(f.x+l,f.y+p),o.stroke()),s&&(o.beginPath(),o.strokeStyle=this.color[s],o.moveTo(f.x-l,f.y-p),o.lineTo(f.x+l,f.y-p),o.stroke())):(h&&(o.beginPath(),o.strokeStyle=this.color[h],o.moveTo(f.x+p,f.y-l),o.lineTo(f.x+p,f.y+l),o.stroke()),s&&(o.beginPath(),o.strokeStyle=this.color[s],o.moveTo(f.x-p,f.y-l),o.lineTo(f.x-p,f.y+l),o.stroke()))}}}}catch(t){c.e(t)}finally{c.f()}this.updateLegends({style:this,resolution:n,z:r,viewScale:a})}}}],r&&qu(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(Su);const tl=function t(e){function n(t,n){var r,o;return t=null==t?0:+t,n=null==n?1:+n,function(){var i;if(null!=r)i=r,r=null;else do{r=2*e()-1,i=2*e()-1,o=r*r+i*i}while(!o||o>1);return t+n*i*Math.sqrt(-2*Math.log(o)/o)}}return n.source=t,n}(Math.random);function el(t){return el="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},el(t)}function nl(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,rl(r.key),r)}}function rl(t){var e=function(t){if("object"!=el(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=el(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==el(e)?e:e+""}var ol=function(){return t=function t(e,n){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.gl=e,this.sizePix=n||10,this.program=ju(e,Pu(e,e.VERTEX_SHADER,"\n attribute vec2 pos;\n uniform float sizePix;\n uniform mat3 mat;\n attribute vec4 color;\n varying vec4 vColor;\n void main() {\n gl_Position = vec4(mat * vec3(pos, 1.0), 1.0);\n gl_PointSize = sizePix;\n vColor = color;\n }\n "),Pu(e,e.FRAGMENT_SHADER,"\n precision mediump float;\n varying vec4 vColor;\n void main(void) {\n vec4 vColor_ = vColor / 255.0;\n vColor_[3] = 255.0 * vColor_[3];\n gl_FragColor = vColor_;\n }")),e.useProgram(this.program),this.verticesBuffer=[],this.colorsBuffer=[]},(e=[{key:"addPointData",value:function(t,e,n){var r=gn(n);r&&(this.verticesBuffer.push(t,e),this.colorsBuffer.push(r.r,r.g,r.b,r.opacity))}},{key:"addPointData2",value:function(t,e,n,r,o,i){this.verticesBuffer.push(t,e),this.colorsBuffer.push(n,r,o,i)}},{key:"draw",value:function(t){var e=this.gl;e.bindBuffer(e.ARRAY_BUFFER,e.createBuffer()),e.bufferData(e.ARRAY_BUFFER,new Float32Array(this.verticesBuffer),e.STATIC_DRAW);var n=e.getAttribLocation(this.program,"pos");e.vertexAttribPointer(n,2,e.FLOAT,!1,0,0),e.enableVertexAttribArray(n),e.bindBuffer(e.ARRAY_BUFFER,e.createBuffer()),e.bufferData(e.ARRAY_BUFFER,new Float32Array(this.colorsBuffer),e.STATIC_DRAW);var r=e.getAttribLocation(this.program,"color");e.vertexAttribPointer(r,4,e.FLOAT,!1,0,0),e.enableVertexAttribArray(r),e.uniform1f(e.getUniformLocation(this.program,"sizePix"),1*this.sizePix),e.uniformMatrix3fv(e.getUniformLocation(this.program,"mat"),!1,new Float32Array(t)),e.clear(e.COLOR_BUFFER_BIT),e.drawArrays(e.POINTS,0,this.verticesBuffer.length/2)}}])&&nl(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,e}();function il(t){return il="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},il(t)}function al(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return ul(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ul(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw i}}}}function ul(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function ll(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,cl(r.key),r)}}function cl(t){var e=function(t){if("object"!=il(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=il(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==il(e)?e:e+""}function fl(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(fl=function(){return!!t})()}function sl(t){return sl=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},sl(t)}function hl(t,e){return hl=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},hl(t,e)}var yl=function(t){function e(t){var n;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),n=function(t,e,n){return e=sl(e),function(t,e){if(e&&("object"==il(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,fl()?Reflect.construct(e,n||[],sl(t).constructor):e.apply(t,n))}(this,e,[t]),t=t||{},n.dotNumber=t.dotNumber||function(t,e){return e/100},n.color=t.color||function(){return"#FF5733"},n.dotSize=t.dotSize||function(t,e){return 1.5*e},n.sigma=t.sigma||function(t,e){return t/2},n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&hl(t,e)}(e,t),n=e,r=[{key:"draw",value:function(t,e,n){this.filter&&(t=t.filter(this.filter));var r=e.view.z,o=this.viewScale?this.viewScale(t,n,r):void 0,i=this.dotSize?this.dotSize(n,r,o):r,a=this.sigma?this.sigma(n,r,o):.4*n,u=tl(0,a),l=e.offscreenCtx;if(function(){try{var t=document.createElement("canvas");return!(!window.WebGLRenderingContext||!t.getContext("webgl")&&!t.getContext("experimental-webgl"))}catch(t){return!1}}()){var c=Ou(e.w+"",e.h+"");if(!c)return void console.error("No webGL");var f,s=new ol(c.gl,i/r),h=n/2,y=al(t);try{for(y.s();!(f=y.n()).done;){var p=f.value,v=this.color(p,n,r,o);if(v&&"none"!==v){var d=this.dotNumber(p,n,r,o),b=this.offset(p,n,r),m=p.x+b.dx+h,g=p.y+b.dy+h,w=gn(v);if(!w)return;for(var x=0;x<=d;x++)s.addPointData2(m+u(),g+u(),w.r,w.g,w.b,w.opacity)}}}catch(t){y.e(t)}finally{y.f()}s.draw(e.getWebGLTransform()),e.initCanvasTransform(),l.drawImage(c.canvas,0,0)}else{var S,O=al(t);try{for(O.s();!(S=O.n()).done;){var j=S.value,P=this.color(j,n,r,o);if(P&&"none"!==P){l.fillStyle=P;for(var _=this.dotNumber(j,n,r,o),T=this.offset(j,n,r),k=j.x+T.dx+n/2,C=j.y+T.dy+n/2,E=0;E<=_;E++)l.fillRect(k+u(),C+u(),i,i)}}}catch(t){O.e(t)}finally{O.f()}}this.updateLegends({style:this,resolution:n,z:r,viewScale:o})}}],r&&ll(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(Lo);function pl(t){return pl="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},pl(t)}function vl(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function dl(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,bl(r.key),r)}}function bl(t){var e=function(t){if("object"!=pl(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=pl(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==pl(e)?e:e+""}function ml(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(ml=function(){return!!t})()}function gl(t){return gl=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},gl(t)}function wl(t,e){return wl=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},wl(t,e)}var xl=function(t){function e(){var t,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),(t=function(t,e,n){return e=gl(e),function(t,e){if(e&&("object"==pl(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,ml()?Reflect.construct(e,n||[],gl(t).constructor):e.apply(t,n))}(this,e,[n])).classifier=n.classifier||function(t,e,n){return function(t){return 1}},t.width=n.width||function(t,e,n,r,o){return Math.abs(e)*r},t.length=n.length||function(t,e,n,r){return e},t.colorDark=n.colorDark||"#111",t.colorBright=n.colorBright||"#ddd",t.revert=null!=n.revert&&n.revert,t.diamond=n.diamond,t.limit=n.limit||"steep",t}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&wl(t,e)}(e,t),n=e,r=[{key:"draw",value:function(t,e,n){var r=this;this.filter&&(t=t.filter(this.filter));var o=e.view.z,i=e.offscreenCtx,a=this.classifier(t,n,o),u=function(t){var e=t.c1?a(t.c1):void 0,n=t.c2?a(t.c2):void 0;if(void 0!==e||void 0!==n)return void 0===e?"none"==r.limit?void 0:"steep"==r.limit?n:Math.sign(n):void 0===n?"none"==r.limit?void 0:"steep"==r.limit?-e:Math.sign(-e):n-e},l=Su.buildSides(t,n);if(0!=l.length){var c=this.viewScale?this.viewScale(l,n,o):void 0;i.lineCap="butt";var f,s=.5*n,h=this.revert?this.colorBright:this.colorDark,y=this.revert?this.colorDark:this.colorBright,p=function(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return vl(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?vl(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw i}}}}(l);try{for(p.s();!(f=p.n()).done;){var v=f.value,d=u(v);if(void 0!==d&&0!==d){var b=d<0&&"h"===v.or||d>0&&"v"===v.or?y:h;if(b&&"none"!=b)if(this.diamond){i.fillStyle=b;var m=v.x,g=v.y;i.beginPath(),i.moveTo(m-s,g),i.lineTo(m,g+s),i.lineTo(m+s,g),i.lineTo(m,g-s),i.closePath(),i.fill()}else{var w=this.width?this.width(v,d,n,o,c):void 0;if(!w||w<=0)continue;var x=this.length?this.length(v,n,o,c):void 0;if(!x||x<=0)continue;var S=.5*x;i.lineWidth=w,i.strokeStyle=b;var O=v.x,j=v.y;i.beginPath(),"v"===v.or?(i.moveTo(O,j-S),i.lineTo(O,j+S)):(i.moveTo(O-S,j),i.lineTo(O+S,j)),i.stroke()}}}}catch(t){p.e(t)}finally{p.f()}this.updateLegends({style:this,resolution:n,z:o,viewScale:c})}}}],r&&dl(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(Lo);function Sl(t){return null===t?NaN:+t}function Ol(t,e,n=Sl){if((r=t.length)&&!isNaN(e=+e)){if(e<=0||r<2)return+n(t[0],0,t);if(e>=1)return+n(t[r-1],r-1,t);var r,o=(r-1)*e,i=Math.floor(o),a=+n(t[i],i,t);return a+(+n(t[i+1],i+1,t)-a)*(o-i)}}function jl(t,e){return null==t||null==e?NaN:t<e?-1:t>e?1:t>=e?0:NaN}function Pl(t,e){return null==t||null==e?NaN:e<t?-1:e>t?1:e>=t?0:NaN}function _l(t){let e,n,r;function o(t,r,o=0,i=t.length){if(o<i){if(0!==e(r,r))return i;do{const e=o+i>>>1;n(t[e],r)<0?o=e+1:i=e}while(o<i)}return o}return 2!==t.length?(e=jl,n=(e,n)=>jl(t(e),n),r=(e,n)=>t(e)-n):(e=t===jl||t===Pl?t:Tl,n=t,r=t),{left:o,center:function(t,e,n=0,i=t.length){const a=o(t,e,n,i-1);return a>n&&r(t[a-1],e)>-r(t[a],e)?a-1:a},right:function(t,r,o=0,i=t.length){if(o<i){if(0!==e(r,r))return i;do{const e=o+i>>>1;n(t[e],r)<=0?o=e+1:i=e}while(o<i)}return o}}}function Tl(){return 0}const kl=_l(jl),Cl=kl.right,El=(kl.left,_l(Sl).center,Cl);function Al(t,e){switch(arguments.length){case 0:break;case 1:this.range(t);break;default:this.range(e).domain(t)}return this}function Ml(){var t,e=[],n=[],r=[];function o(){var t=0,o=Math.max(1,n.length);for(r=new Array(o-1);++t<o;)r[t-1]=Ol(e,t/o);return i}function i(e){return null==e||isNaN(e=+e)?t:n[El(r,e)]}return i.invertExtent=function(t){var o=n.indexOf(t);return o<0?[NaN,NaN]:[o>0?r[o-1]:e[0],o<r.length?r[o]:e[e.length-1]]},i.domain=function(t){if(!arguments.length)return e.slice();e=[];for(let n of t)null==n||isNaN(n=+n)||e.push(n);return e.sort(jl),o()},i.range=function(t){return arguments.length?(n=Array.from(t),o()):n.slice()},i.unknown=function(e){return arguments.length?(t=e,i):t},i.quantiles=function(){return r.slice()},i.copy=function(){return Ml().domain(e).range(n).unknown(t)},Al.apply(i,arguments)}var zl=function(t){var e=t.valueFunction,n=t.minValue||0,r=t.minSizePix||0,o=t.maxSizeFactor||1,i=t.stretching,a=t.range,u=t.domain,l=t.classNumber;return function(t,c,f){var s=u||[n,Du(t,e)],h=a||[r*f,c*o],y=s[1]-s[0],p=s[0],v=h[1]-h[0],d=h[0];return function(t){return t=(t-p)/y,i&&(t=i(t)),l&&(t=1==t?1:Math.floor(t*l)/(l-1)),d+t*v}}},Rl=function(t){var e=t.valueFunction,n=t.classNumber||12,r=t.minSizePix||1,o=t.maxSizeFactor||1,i=Ml();return function(t,a,u){i.domain(t.map(e));var l=r*u,c=a*o;return i.range(Array.from({length:n},function(t,e){return l+e*(c-l)/(n-1)})),i.breaks=i.quantiles(),i.values=i.range(),i}},Il=function(t){var e,n=t.valueFunction,r=t.stretching,o=t.colorScale||function(){return"purple"},i=null===(e=t.colors)||void 0===e?void 0:e.length;return t.colors&&i&&(o=function(e){return t.colors[1==e?i-1:Math.floor(e*i)]}),function(e){if(0!=e.length&&e){var a=wa(e,n);if(null!=a[0]){var u=a[1]-a[0],l=function(t){return t=(t-a[0])/u,r&&(t=r(t)),o(t)};if(l.invert=function(t){return r&&(t=r.invert(t)),a[0]+t*u},t.colors&&i){l.breaks=[];for(var c=1;c<i;c++)l.breaks.push(l.invert(c/i))}return l}}}},Fl=function(t){var e=t.valueFunction,n=t.classNumber||12,r=t.colors;t.colorScale&&(r=Wl(t.colorScale,n)),r=r||Array.from({length:n},function(t,e){return"rgb("+Math.floor(255*e/(n-1))+",150,150)"});var o=Ml().range(r);return function(t){return o.domain(t.map(e)),o.breaks=o.quantiles(),o.colors=r,o}},Bl=function(t){var e=t.valueFunction,n=t.classNumber||12,r=Ml().range(Array.from({length:n},function(t,e){return e}));return function(t){return r.domain(t.map(e)),r.breaks=r.quantiles(),r}},Ll=function(t){return function(e,n,r){var o={};for(var i in t)o[i]=t[i](e,n,r);return o}};function Nl(t){var e=t.length,n=function(n){for(var r=0;r<e;){if(n<=t[r])return r;r++}return r};return n.breaks=t,n}function Dl(t,e,n){for(var r=[],o=(e-t)/n,i=1;i<n;i++)r.push(t+i*o);return Nl(r)}function Gl(t,e){var n=Nl(t),r=function(t){return e[n(t)]};return r.breaks=t,r.colors=e,r}function Wl(t,e){if(1==e)return[t(.5)];for(var n=[],r=0;r<e;r++)n.push(t(r/(e-1)));return n}function Ul(t){return Ul="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ul(t)}function $l(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return Hl(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Hl(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw i}}}}function Hl(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function Xl(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(Xl=function(){return!!t})()}function Vl(t){return Vl=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Vl(t)}function ql(t,e){return ql=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},ql(t,e)}function Yl(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function Zl(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,Ql(r.key),r)}}function Jl(t,e,n){return e&&Zl(t.prototype,e),n&&Zl(t,n),Object.defineProperty(t,"prototype",{writable:!1}),t}function Ql(t){var e=function(t){if("object"!=Ul(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=Ul(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Ul(e)?e:e+""}var Kl=function(){return Jl(function t(){Yl(this,t)},null,[{key:"get",value:function(t,e,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};(r=r||{}).colorDark=r.colorDark||"#333",r.colorBright=r.colorBright||"#aaa";for(var o=Nl(e),i=function(e){return o(t(e))},a={},u=0;u<n.length;u++)a[u+""]=n[u];var l=new Mu({code:i,color:a}),c=new xl({classifier:function(){return i},colorDark:r.colorDark,colorBright:r.colorBright,diamond:r.diamond});return[l,new ga({strokeColor:function(){return"#666"},strokeWidth:function(t,e,n){return.2*n},filter:r.filter}),c,new tc({colDark:r.colDark,colBright:r.colBright,filter:r.filter})]}},{key:"getCategory",value:function(t,e,n){return(n=n||{}).colDark=n.colDark||"#333",n.colBright=n.colBright||"#aaa",[new Mu({code:t,color:e}),new ga({strokeColor:function(){return"#666"},strokeWidth:function(t,e,n){return.2*n}}),new tc({colDark:n.colDark,colBright:n.colBright})]}}])}(),tc=function(t){function e(t){var n,r,o,i;return Yl(this,e),r=this,i=[t],o=Vl(o=e),n=function(t,e){if(e&&("object"==Ul(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(r,Xl()?Reflect.construct(o,i||[],Vl(r).constructor):o.apply(r,i)),t=t||{},n.colDark=t.colDark||"#333",n.colBright=t.colBright||"#aaa",n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&ql(t,e)}(e,t),Jl(e,[{key:"draw",value:function(t,e,n){this.filter&&(t=t.filter(this.filter));var r=e.offscreenCtx;r.lineWidth=.6*e.view.z,r.strokeStyle=this.colDark;var o,i=$l(t);try{for(i.s();!(o=i.n()).done;){var a=o.value;r.beginPath(),r.arc(a.x+.5*n,a.y+.5*n,.55*n*.5,Math.PI/4,-Math.PI*(3/4),!0),r.stroke()}}catch(t){i.e(t)}finally{i.f()}r.strokeStyle=this.colBright;var u,l=$l(t);try{for(l.s();!(u=l.n()).done;){var c=u.value;r.beginPath(),r.arc(c.x+.5*n,c.y+.5*n,.55*n*.5,Math.PI/4,-Math.PI*(3/4),!1),r.stroke()}}catch(t){l.e(t)}finally{l.f()}}}])}(Lo);function ec(t){return ec="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ec(t)}function nc(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,rc(r.key),r)}}function rc(t){var e=function(t){if("object"!=ec(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=ec(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==ec(e)?e:e+""}var oc=function(){return t=function t(e,n,r){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:10,i=arguments.length>4&&void 0!==arguments[4]?arguments[4]:void 0;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.gl=e;var a=Pu(e,e.VERTEX_SHADER,"\n attribute vec2 pos;\n uniform float sizePix;\n uniform mat3 mat;\n\n attribute float t;\n varying float vt;\n\n void main() {\n gl_Position = vec4(mat * vec3(pos, 1.0), 1.0);\n gl_PointSize = sizePix;\n vt = t;\n }\n "),u=[];u.push("precision mediump float;"),u.push("varying float vt;"),u.push("uniform float alpha;");for(var l=0;l<n.length;l++)u.push("uniform vec4 c"+l+";");if(u.push("void main(void) {"),r?"pow"==r.fun?u.push(" float t = pow(vt, alpha);"):"powInv"==r.fun?u.push(" float t = 1.0-pow(1.0-vt, 1.0/alpha);"):"exp"==r.fun?u.push(0==r.alpha?"float t = vt;":" float t = (exp(vt * alpha) - 1.0) / (exp(alpha) - 1.0);"):"log"==r.fun?u.push(0==r.alpha?"float t = vt;":" float t = 1.0 - (1.0 / alpha) * log(exp(alpha) * (1.0 - vt) + vt);"):"circle"==r.fun?0==r.alpha?u.push(" float t = vt;"):1==r.alpha?u.push(" float t = sqrt(vt * (2.0 - vt));"):(u.push(" float a = alpha / (1.0 - alpha);"),u.push(" float t = sqrt(1.0 / (a * a) + vt * ( 2.0/a + 2.0 - vt )) - 1.0 / a;")):"circleInv"==r.fun?0==r.alpha?u.push(" float t = vt;"):1==r.alpha?u.push(" float t = 1.0 - sqrt((1.0 - vt) * (1.0 + vt));"):(u.push(" float a = alpha / (1.0 - alpha);"),u.push(" float t = 1.0 - sqrt(1.0 / (a * a) + (1.0-vt) * ( 2.0/a + 1.0 + vt )) + 1.0 / a;")):(console.error("Unexpected stretching function code: "+r.fun),u.push(" float t = vt;")):u.push(" float t = vt;"),1==n.length)u.push(" vec4 cI=c0;"),u.push(" vec4 cF=c0;");else if(2==n.length)u.push(" vec4 cI=c0;"),u.push(" vec4 cF=c1;");else{var c=n.length-1,f=c+".0";u.push(" vec4 cI;"),u.push(" vec4 cF;"),u.push(" if(t<1.0/"+f+") { cI=c0; cF=c1; t=t*"+f+"; }");for(var s=2;s<c;s++)u.push(" else if(t<"+s+".0/"+f+") { cI=c"+(s-1)+"; cF=c"+s+"; t="+f+"*t-"+(s-1)+".0; }");u.push(" else { cI=c"+(c-1)+"; cF=c"+c+"; t="+f+"*t-"+(c-1)+".0; }")}1==n.length?u.push(" gl_FragColor = vec4(c0[0], c0[1], c0[2], c0[3]);}"):u.push(" gl_FragColor = mix(cI, cF, t);}");var h=u.join(""),y=Pu(e,e.FRAGMENT_SHADER,h);this.program=ju(e,a,y),e.useProgram(this.program),e.uniform1f(e.getUniformLocation(this.program,"sizePix"),1*o),e.uniform1f(e.getUniformLocation(this.program,"alpha"),r?1*r.alpha:0);for(var p=0;p<n.length;p++){var v=gn(n[p]),d=v.opacity;1==v.opacity&&null!=i&&(d=i);var b=[+v.r/255,+v.g/255,+v.b/255,+d];e.uniform4fv(e.getUniformLocation(this.program,"c"+p),b)}},e=[{key:"draw",value:function(t,e,n){var r=this.gl,o=this.program;r.bindBuffer(r.ARRAY_BUFFER,r.createBuffer()),r.bufferData(r.ARRAY_BUFFER,new Float32Array(t),r.STATIC_DRAW);var i=r.getAttribLocation(o,"pos");r.vertexAttribPointer(i,2,r.FLOAT,!1,0,0),r.enableVertexAttribArray(i),r.bindBuffer(r.ARRAY_BUFFER,r.createBuffer()),r.bufferData(r.ARRAY_BUFFER,new Float32Array(e),r.STATIC_DRAW);var a=r.getAttribLocation(o,"t");r.vertexAttribPointer(a,1,r.FLOAT,!1,0,0),r.enableVertexAttribArray(a),r.uniformMatrix3fv(r.getUniformLocation(o,"mat"),!1,new Float32Array(n)),r.clear(r.COLOR_BUFFER_BIT),r.drawArrays(r.POINTS,0,t.length/2)}}],e&&nc(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,e}();function ic(t){return ic="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ic(t)}function ac(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function uc(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,lc(r.key),r)}}function lc(t){var e=function(t){if("object"!=ic(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=ic(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==ic(e)?e:e+""}function cc(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(cc=function(){return!!t})()}function fc(t){return fc=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},fc(t)}function sc(t,e){return sc=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},sc(t,e)}var hc=function(t){function e(t){var n;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),n=function(t,e,n){return e=fc(e),function(t,e){if(e&&("object"==ic(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,cc()?Reflect.construct(e,n||[],fc(t).constructor):e.apply(t,n))}(this,e,[t]),t=t||{},n.tFun=t.tFun,n.stretching=t.stretching,n.colors=t.colors||["rgb(158, 1, 66)","rgb(248, 142, 83)","rgb(251, 248, 176)","rgb(137, 207, 165)","rgb(94, 79, 162)"].reverse(),t.color&&(n.colors=[t.color(0),t.color(.2),t.color(.4),t.color(.6),t.color(.8),t.color(1)]),n.opacity=t.opacity,n.size=t.size,n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&sc(t,e)}(e,t),n=e,r=[{key:"draw",value:function(t,e,n){this.filter&&(t=t.filter(this.filter));var r=e.view.z,o=this.viewScale?this.viewScale(t,n,r):void 0,i=Ou(e.w+"",e.h+"",null!=this.opacity?{premultipliedAlpha:!1}:void 0);if(i){var a,u=n/2,l=[],c=[],f=function(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return ac(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ac(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw i}}}}(t);try{for(f.s();!(a=f.n()).done;){var s=a.value,h=this.tFun(s,n,r,o);null!=h&&null!=h&&(l.push(s.x+u,s.y+u),c.push(h>1?1:h<0?0:h))}}catch(t){f.e(t)}finally{f.f()}var y=this.size?this.size(n,r):n+.2*r,p=this.opacity?this.opacity(n,r):void 0;new oc(i.gl,this.colors,this.stretching,y/r,p).draw(l,c,e.getWebGLTransform()),e.initCanvasTransform(),e.offscreenCtx.drawImage(i.canvas,0,0),this.updateLegends({style:this,resolution:n,z:r,viewScale:o})}else console.error("No webGL")}}],r&&uc(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(Lo);function yc(t){return yc="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},yc(t)}function pc(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function vc(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,dc(r.key),r)}}function dc(t){var e=function(t){if("object"!=yc(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=yc(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==yc(e)?e:e+""}function bc(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(bc=function(){return!!t})()}function mc(t){return mc=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},mc(t)}function gc(t,e){return gc=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},gc(t,e)}var wc=function(t){function e(t){var n;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),n=function(t,e,n){return e=mc(e),function(t,e){if(e&&("object"==yc(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,bc()?Reflect.construct(e,n||[],mc(t).constructor):e.apply(t,n))}(this,e,[t]),t=t||{},n.color=t.color||function(){return"#EA6BAC"},n.mosaicFactor=t.mosaicFactor||.15,n.shadowFactor=t.shadowFactor||.2,n.shadowColor=t.shadowColor||"#555",n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&gc(t,e)}(e,t),n=e,r=[{key:"draw",value:function(t,e,n){this.filter&&(t=t.filter(this.filter));var r=e.view.z,o=e.offscreenCtx,i=this.viewScale?this.viewScale(t,n,r):void 0;o.strokeStyle=this.shadowColor,o.lineWidth=this.shadowFactor*n,o.lineJoin="round",o.lineCap="butt";var a,u=n*this.mosaicFactor,l=function(){return{x:Math.random()*u,y:Math.random()*u}},c=function(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return pc(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?pc(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw i}}}}(t);try{for(c.s();!(a=c.n()).done;){var f=a.value,s=this.color?this.color(f,n,r,i):void 0;if(s&&"none"!==s){o.fillStyle=s;var h=this.offset(f,n,r),y=l(),p=l(),v=l(),d=l();this.shadowFactor>0&&(o.beginPath(),o.moveTo(f.x+h.dx+y.x,f.y+h.dy+y.y),o.lineTo(f.x+h.dx+n-v.x,f.y+h.dy+v.y),o.lineTo(f.x+h.dx+n-d.x,f.y+h.dy+n-d.y),o.stroke()),o.beginPath(),o.moveTo(f.x+h.dx+y.x,f.y+h.dy+y.y),o.lineTo(f.x+h.dx+n-v.x,f.y+h.dy+v.y),o.lineTo(f.x+h.dx+n-d.x,f.y+h.dy+n-d.y),o.lineTo(f.x+h.dx+p.x,f.y+h.dy+n-p.y),o.fill()}}}catch(t){c.e(t)}finally{c.f()}this.updateLegends({style:this,resolution:n,z:r,viewScale:i})}}],r&&vc(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(Lo);function xc(t){return xc="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},xc(t)}function Sc(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function Oc(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,jc(r.key),r)}}function jc(t){var e=function(t){if("object"!=xc(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=xc(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==xc(e)?e:e+""}function Pc(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(Pc=function(){return!!t})()}function _c(t){return _c=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},_c(t)}function Tc(t,e){return Tc=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Tc(t,e)}var kc=function(t){function e(t){var n;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),n=function(t,e,n){return e=_c(e),function(t,e){if(e&&("object"==xc(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Pc()?Reflect.construct(e,n||[],_c(t).constructor):e.apply(t,n))}(this,e,[t]),t=t||{},n.color=t.color||function(){return"#EA6BAC"},n.size=t.size||function(t,e){return e},n.shape=t.shape||function(){return"o"},n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Tc(t,e)}(e,t),n=e,r=[{key:"draw",value:function(t,e,n){this.filter&&(t=t.filter(this.filter));var r,o=e.view.z,i=e.offscreenCtx,a=this.viewScale?this.viewScale(t,n,o):void 0,u=.5*n,l=function(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return Sc(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Sc(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw i}}}}(t);try{for(l.s();!(r=l.n()).done;){var c=r.value,f=this.color?this.color(c,n,o,a):void 0;if(f&&"none"!==f){i.fillStyle=f;var s=this.size(c,n,o,a),h=(s=s<0?0:s>1?1:s)*u,y=this.shape?this.shape(c):"o";if("none"!==y){var p=c.x+u,v=c.y+u;if("p"===y)i.beginPath(),i.moveTo(p,v+u),i.lineTo(p+h,v+h),i.lineTo(p+u,v),i.lineTo(p+h,v-h),i.lineTo(p,v-u),i.lineTo(p-h,v-h),i.lineTo(p-u,v),i.lineTo(p-h,v+h),i.fill();else{if("o"!==y)throw new Error("Unexpected shape:"+y);i.beginPath(),i.moveTo(p,v+h),i.lineTo(p+u,v+u),i.lineTo(p+h,v),i.lineTo(p+u,v-u),i.lineTo(p,v-h),i.lineTo(p-u,v-u),i.lineTo(p-h,v),i.lineTo(p-u,v+u),i.fill()}}}}}catch(t){l.e(t)}finally{l.f()}this.updateLegends({style:this,resolution:n,z:o,viewScale:a})}}],r&&Oc(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(Lo);function Cc(t){return Cc="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Cc(t)}function Ec(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return Ac(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Ac(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw i}}}}function Ac(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function Mc(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,zc(r.key),r)}}function zc(t){var e=function(t){if("object"!=Cc(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=Cc(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Cc(e)?e:e+""}function Rc(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(Rc=function(){return!!t})()}function Ic(t){return Ic=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Ic(t)}function Fc(t,e){return Fc=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Fc(t,e)}var Bc=function(t){function e(t){var n;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),n=function(t,e,n){return e=Ic(e),function(t,e){if(e&&("object"==Cc(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Rc()?Reflect.construct(e,n||[],Ic(t).constructor):e.apply(t,n))}(this,e,[t]),t=t||{},n.ts=t.ts,n.noData=t.noData||function(t){return void 0===t||""==t||null===t||isNaN(+t)},n.offsetX=t.offsetX||function(t,e,n){return 0},n.width=t.width||function(t,e,n){return e},n.offsetY=t.offsetY||function(t,e,n){return 0},n.height=t.height||function(t,e,n){return e},n.anchorModeY=t.anchorModeY||function(t,e,n){return"center"},n.lineWidth=t.lineWidth||function(t,e,n,r){return 1.5*r},n.color=t.color||function(){return"black"},n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Fc(t,e)}(e,t),n=e,r=[{key:"draw",value:function(t,e,n){var r=this;this.filter&&(t=t.filter(this.filter));var o,i,a=e.view.z,u=e.offscreenCtx,l=this.viewScale?this.viewScale(t,n,a):void 0,c=function(t){var e,n,o,i=Ec(r.ts);try{for(i.s();!(o=i.n()).done;){var a=t[o.value];null!=a&&((null==e||a<e)&&(e=a),(null==n||a>n)&&(n=a))}}catch(t){i.e(t)}finally{i.f()}if(null!=e)return n-e},f=Ec(t);try{for(f.s();!(i=f.n()).done;){var s=c(i.value);null!=s&&(null==o||s>o)&&(o=s)}}catch(t){f.e(t)}finally{f.f()}if(o){var h=this.ts.length;u.lineCap="butt";var y,p=Ec(t);try{for(p.s();!(y=p.n()).done;){var v=y.value,d=this.lineWidth?this.lineWidth(v,n,a,l):void 0;if(d&&!(d<0)){var b=this.color?this.color(v,n,a,l):void 0;if(b){var m=this.offsetX?this.offsetX(v,n,a):0;if(null!=m&&!isNaN(m)){var g=this.width?this.width(v,n,a):n;if(null!=g&&!isNaN(g)){var w=this.offsetY?this.offsetY(v,n,a):0;if(null!=w&&!isNaN(w)){var x=this.height?this.height(v,n,a):n;if(null!=x&&!isNaN(x)){var S=this.anchorModeY?this.anchorModeY(v,n,a):"center";if(S){u.lineWidth=d,u.strokeStyle=b;var O=void 0,j=void 0;if("first"===S)O=v[this.ts[0]],j=0;else if("last"===S)O=v[this.ts[this.ts.length-1]],j=0;else if("bottom"===S){var P,_=Ec(this.ts);try{for(_.s();!(P=_.n()).done;){var T=+v[P.value];null!=T&&(null==O||T<O)&&(O=T)}}catch(t){_.e(t)}finally{_.f()}j=0}else if("top"===S){var k,C=Ec(this.ts);try{for(C.s();!(k=C.n()).done;){var E=+v[k.value];null!=E&&(null==O||E>O)&&(O=E)}}catch(t){C.e(t)}finally{C.f()}j=n}else{if("center"!==S){console.log("Unexpected anchorModeY: "+S);continue}var A,M=void 0,z=void 0,R=Ec(this.ts);try{for(R.s();!(A=R.n()).done;){var I=v[A.value];null!=I&&((null==M||I<M)&&(M=I),(null==z||I>z)&&(z=I))}}catch(t){R.e(t)}finally{R.f()}O=.5*(+z+ +M),j=n/2}var F=g/(h-1),B=v[this.ts[0]];this.noData(B)||(u.beginPath(),u.moveTo(v.x+m,v.y+j+(B-O)*x/o+w));for(var L=void 0,N=1;N<h;N++)L=v[this.ts[N]],this.noData(B)&&this.noData(L)||(!this.noData(B)&&this.noData(L)?u.stroke():this.noData(B)&&!this.noData(L)?(u.beginPath(),u.moveTo(v.x+N*F+m,v.y+j+(L-O)*x/o+w)):(u.lineTo(v.x+N*F+m,v.y+j+(L-O)*x/o+w),N==h-1&&u.stroke())),B=L}}}}}}}}}catch(t){p.e(t)}finally{p.f()}this.updateLegends({style:this,resolution:n,z:a,viewScale:l})}}}],r&&Mc(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(Lo);function Lc(t){return Lc="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Lc(t)}function Nc(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var r,o,i,a,u=[],l=!0,c=!1;try{if(i=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=i.call(n)).done)&&(u.push(r.value),u.length!==e);l=!0);}catch(t){c=!0,o=t}finally{try{if(!l&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw o}}return u}}(t,e)||Gc(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Dc(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=Gc(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw i}}}}function Gc(t,e){if(t){if("string"==typeof t)return Wc(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Wc(t,e):void 0}}function Wc(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function Uc(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,$c(r.key),r)}}function $c(t){var e=function(t){if("object"!=Lc(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=Lc(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Lc(e)?e:e+""}function Hc(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(Hc=function(){return!!t})()}function Xc(t){return Xc=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Xc(t)}function Vc(t,e){return Vc=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Vc(t,e)}var qc=function(t){function e(t){var n;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),n=function(t,e,n){return e=Xc(e),function(t,e){if(e&&("object"==Lc(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Hc()?Reflect.construct(e,n||[],Xc(t).constructor):e.apply(t,n))}(this,e,[t]),t=t||{},n.color=t.color,n.height=t.height||function(t,e,n,r){return.4*e},n.angle=null!=t.angle?t.angle:50,n.cornerLineStrokeColor=t.cornerLineStrokeColor||function(t,e,n,r){return"#999"},n.cornerLineWidth=t.cornerLineWidth||function(t,e,n,r){return r%90==0?0:.8*n},n.sVert=null==t.sVert||t.sVert,n.sHor=null==t.sHor||t.sHor,n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Vc(t,e)}(e,t),n=e,r=[{key:"draw",value:function(t,e,n){var r=this;this.filter&&(t=t.filter(this.filter));var o=e.view.z,i=e.offscreenCtx,a=this.viewScale?this.viewScale(t,n,o):void 0,u=Object.keys(this.color),l=n/2,c=this.offset(void 0,n,o),f=c.dx,s=c.dy,h=Su.buildSides(t,n,this.angle%180!=90&&this.sVert,this.angle%180!=0&&this.sHor);if(0!=h.length){var y=this.angle*Math.PI/180,p=Math.cos(y),v=Math.sin(y),d=Math.abs(this.angle)<90?e.extGeo.xMin:e.extGeo.xMax,b=this.angle<0?e.extGeo.yMax:e.extGeo.yMin;h.sort(function(t,e){return Math.hypot(e.x-d,e.y-b)-Math.hypot(t.x-d,t.y-b)});var m=function(t){if(t){var e=r.cornerLineWidth?r.cornerLineWidth(t,n,o,r.angle):.8*o;if(0!=e){i.strokeStyle=r.cornerLineStrokeColor?r.cornerLineStrokeColor(t,n,o,r.angle):"#333",i.lineWidth=e;var u=r.height(t,n,o,a);i.beginPath(),i.moveTo(t.x+l+f,t.y+l+s),i.lineTo(t.x+l+u*p+f,t.y+l+u*v+s),i.stroke()}}};i.lineCap="round";var g,w=Dc(h);try{for(w.s();!(g=w.n()).done;){var x=g.value,S=x.c1,O=x.c2,j=x.x,P=x.y,_=S?this.height(S,n,o,a):0,T=O?this.height(O,n,o,a):0,k=Yc(S,u),C=Yc(O,u);if(0!=k||0!=C)for(var E=0,A=0,M=0,z=Object.entries(this.color);M<z.length;M++){var R=Nc(z[M],2),I=R[0],F=R[1],B=S?+S[I]:0,L=O?+O[I]:0;if(0!=B||0!=L){var N=_*E/k||0,D=_*(E+B)/k||0,G=T*A/C||0,W=T*(A+L)/C||0;i.beginPath(),"h"==x.or?(i.moveTo(j+N*p+f,P-l+N*v+s),i.lineTo(j+G*p+f,P+l+G*v+s),i.lineTo(j+W*p+f,P+l+W*v+s),i.lineTo(j+D*p+f,P-l+D*v+s)):(i.moveTo(j-l+N*p+f,P+N*v+s),i.lineTo(j+l+G*p+f,P+G*v+s),i.lineTo(j+l+W*p+f,P+W*v+s),i.lineTo(j-l+D*p+f,P+D*v+s)),i.fillStyle=F,i.fill(),E+=B,A+=L,m(S),m(O)}}}}catch(t){w.e(t)}finally{w.f()}this.updateLegends({style:this,resolution:n,z:o,viewScale:a})}}}],r&&Uc(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(Lo),Yc=function(t,e){if(!t)return 0;var n,r=0,o=Dc(e);try{for(o.s();!(n=o.n()).done;){var i=t[n.value];i&&(r+=+i)}}catch(t){o.e(t)}finally{o.f()}return r||0};function Zc(t){return Zc="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Zc(t)}function Jc(t){if(null!=t){var e=t["function"==typeof Symbol&&Symbol.iterator||"@@iterator"],n=0;if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length))return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}}}throw new TypeError(Zc(t)+" is not iterable")}function Qc(){var t,e,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",o=n.toStringTag||"@@toStringTag";function i(n,r,o,i){var l=r&&r.prototype instanceof u?r:u,c=Object.create(l.prototype);return Kc(c,"_invoke",function(n,r,o){var i,u,l,c=0,f=o||[],s=!1,h={p:0,n:0,v:t,a:y,f:y.bind(t,4),d:function(e,n){return i=e,u=0,l=t,h.n=n,a}};function y(n,r){for(u=n,l=r,e=0;!s&&c&&!o&&e<f.length;e++){var o,i=f[e],y=h.p,p=i[2];n>3?(o=p===r)&&(l=i[(u=i[4])?5:(u=3,3)],i[4]=i[5]=t):i[0]<=y&&((o=n<2&&y<i[1])?(u=0,h.v=r,h.n=i[1]):y<p&&(o=n<3||i[0]>r||r>p)&&(i[4]=n,i[5]=r,h.n=p,u=0))}if(o||n>1)return a;throw s=!0,r}return function(o,f,p){if(c>1)throw TypeError("Generator is already running");for(s&&1===f&&y(f,p),u=f,l=p;(e=u<2?t:l)||!s;){i||(u?u<3?(u>1&&(h.n=-1),y(u,l)):h.n=l:h.v=l);try{if(c=2,i){if(u||(o="next"),e=i[o]){if(!(e=e.call(i,l)))throw TypeError("iterator result is not an object");if(!e.done)return e;l=e.value,u<2&&(u=0)}else 1===u&&(e=i.return)&&e.call(i),u<2&&(l=TypeError("The iterator does not provide a '"+o+"' method"),u=1);i=t}else if((e=(s=h.n<0)?l:n.call(r,h))!==a)break}catch(e){i=t,u=1,l=e}finally{c=1}}return{value:e,done:s}}}(n,o,i),!0),c}var a={};function u(){}function l(){}function c(){}e=Object.getPrototypeOf;var f=[][r]?e(e([][r]())):(Kc(e={},r,function(){return this}),e),s=c.prototype=u.prototype=Object.create(f);function h(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,c):(t.__proto__=c,Kc(t,o,"GeneratorFunction")),t.prototype=Object.create(s),t}return l.prototype=c,Kc(s,"constructor",c),Kc(c,"constructor",l),l.displayName="GeneratorFunction",Kc(c,o,"GeneratorFunction"),Kc(s),Kc(s,o,"Generator"),Kc(s,r,function(){return this}),Kc(s,"toString",function(){return"[object Generator]"}),(Qc=function(){return{w:i,m:h}})()}function Kc(t,e,n,r){var o=Object.defineProperty;try{o({},"",{})}catch(t){o=0}Kc=function(t,e,n,r){function i(e,n){Kc(t,e,function(t){return this._invoke(e,n,t)})}e?o?o(t,e,{value:n,enumerable:!r,configurable:!r,writable:!r}):t[e]=n:(i("next",0),i("throw",1),i("return",2))},Kc(t,e,n,r)}function tf(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return ef(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ef(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw i}}}}function ef(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function nf(t,e,n,r,o,i,a){try{var u=t[i](a),l=u.value}catch(t){return void n(t)}u.done?e(l):Promise.resolve(l).then(r,o)}function rf(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,of(r.key),r)}}function of(t){var e=function(t){if("object"!=Zc(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=Zc(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Zc(e)?e:e+""}function af(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(af=function(){return!!t})()}function uf(t){return uf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},uf(t)}function lf(t,e){return lf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},lf(t,e)}var cf=function(t){function e(t){var n;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),n=function(t,e,n){return e=uf(e),function(t,e){if(e&&("object"==Zc(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,af()?Reflect.construct(e,n||[],uf(t).constructor):e.apply(t,n))}(this,e,[t]),t=t||{},n.image=t.image||function(){return""},n.size=t.size||function(t,e){return e},n.cache={},n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&lf(t,e)}(e,t),n=e,r=[{key:"draw",value:(o=Qc().m(function t(e,n,r){var o,i,a,u,l,c,f,s,h=this;return Qc().w(function(t){for(;;)switch(t.p=t.n){case 0:o=n.view.z,i=r/o,a=this.viewScale?this.viewScale(e,r,o):void 0,n.initCanvasTransform(),u=tf(e),t.p=1,c=Qc().m(function t(){var e,u,c,f,s,y;return Qc().w(function(t){for(;;)switch(t.n){case 0:if(e=l.value,u=h.image(e,r,o,a)){t.n=1;break}return t.a(2,0);case 1:if(c=h.size(e,r,o,a)/o){t.n=2;break}return t.a(2,0);case 2:if("loading"!=(f=h.cache[u])){t.n=3;break}return t.a(2,{v:void 0});case 3:if(f){y=(i-c)/2;try{n.offscreenCtx.drawImage(f,n.geoToPixX(e.x)+y,n.geoToPixY(e.y)+y-i,c,c)}catch(t){console.error(t)}}else h.cache[u]="loading",(s=new Image).onload=function(){h.cache[u]=s,n.redraw()},s.onerror=function(){console.warn("Could not retrieve image from",u)},s.src=u;case 4:return t.a(2)}},t)}),u.s();case 2:if((l=u.n()).done){t.n=6;break}return t.d(Jc(c()),3);case 3:if(0!==(f=t.v)){t.n=4;break}return t.a(3,5);case 4:if(!f){t.n=5;break}return t.a(2,f.v);case 5:t.n=2;break;case 6:t.n=8;break;case 7:t.p=7,s=t.v,u.e(s);case 8:return t.p=8,u.f(),t.f(8);case 9:this.updateLegends({style:this,resolution:r,z:o,viewScale:a});case 10:return t.a(2)}},t,this,[[1,7,8,9]])}),i=function(){var t=this,e=arguments;return new Promise(function(n,r){var i=o.apply(t,e);function a(t){nf(i,n,r,a,u,"next",t)}function u(t){nf(i,n,r,a,u,"throw",t)}a(void 0)})},function(t,e,n){return i.apply(this,arguments)})}],r&&rf(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r,o,i}(Lo);function ff(t){return ff="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ff(t)}function sf(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function hf(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,yf(r.key),r)}}function yf(t){var e=function(t){if("object"!=ff(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=ff(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==ff(e)?e:e+""}function pf(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(pf=function(){return!!t})()}function vf(t){return vf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},vf(t)}function df(t,e){return df=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},df(t,e)}var bf=function(t){function e(t){var n;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),n=function(t,e,n){return e=vf(e),function(t,e){if(e&&("object"==ff(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,pf()?Reflect.construct(e,n||[],vf(t).constructor):e.apply(t,n))}(this,e,[t]),t=t||{},n.value=t.value,n.targetResolution=t.targetResolution||function(t,e){return t/5},n.interpolatedProperty=t.interpolatedProperty||"value",n.nodataHandling=t.nodataHandling||"zero",n.styles=t.styles||[],n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&df(t,e)}(e,t),n=e,r=[{key:"draw",value:function(t,e,n){var r=this;if(this.filter&&(t=t.filter(this.filter)),0!=t.length){var o=e.view.z,i=_a(t,n,function(t){return r.value(t)}),a=i.x0,u=i.y0,l=this.targetResolution(n,o),c=Math.round(n/l);l=n/c,i=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:5,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"zero";if(1===e)return t;var r=t.length;if(0===r)return[];for(var o=t[0].length,i=r*e,a=o*e,u=Array(i).fill().map(function(){return Array(a).fill(void 0)}),l=e%2==0,c=0;c<i;c++)for(var f=Math.min(Math.floor(c/e),r-2),s=c%e/e,h=f*e+e/2,y=0;y<a;y++){var p=Math.min(Math.floor(y/e),o-2),v=y%e/e,d=p*e+e/2,b=t[f][p],m=t[f][p+1],g=t[f+1][p],w=t[f+1][p+1];if(l){if(void 0===b&&c<=h&&y<=d)continue;if(void 0===m&&c<=h&&y>=d)continue;if(void 0===g&&c>=h&&y<=d)continue;if(void 0===w&&c>=h&&y>=d)continue}else{if(void 0===b&&c<h&&y<d)continue;if(void 0===m&&c<h&&y>d)continue;if(void 0===g&&c>h&&y<d)continue;if(void 0===w&&c>h&&y>d)continue}if("zero"!==n)if(void 0===b||void 0===m||void 0===g||void 0===w)if(void 0!==b||void 0===m||void 0===g||void 0===w)if(void 0===b||void 0!==m||void 0===g||void 0===w)if(void 0===b||void 0===m||void 0!==g||void 0===w)if(void 0===b||void 0===m||void 0===g||void 0!==w)if(void 0===b||void 0===w)if(void 0===m||void 0===g)void 0===b||void 0===g?void 0===m||void 0===w?(void 0!==b&&void 0!==m&&(u[c][y]=m*v+b*(1-v)),void 0===g||void 0===w?void 0===b?void 0===m?void 0===g?void 0!==w&&(u[c][y]=w):u[c][y]=g:u[c][y]=m:u[c][y]=b:u[c][y]=w*v+g*(1-v)):u[c][y]=w*s+m*(1-s):u[c][y]=g*s+b*(1-s);else{var x=(1-v+s)*Math.SQRT1_2;u[c][y]=m*(1-x)+g*x}else{var S=(v+s)*Math.SQRT1_2;u[c][y]=b*(1-S)+w*S}else{var O=m+g;u[c][y]=mf(b,m,g,O/2,v,s)}else{var j=b+w;u[c][y]=mf(b,m,j/2,w,v,s)}else{var P=b+w;u[c][y]=mf(b,P/2,g,w,v,s)}else{var _=m+g;u[c][y]=mf(_/2,m,g,w,v,s)}else u[c][y]=mf(b,m,g,w,v,s);else u[c][y]=mf(b||0,m||0,g||0,w||0,v,s)}return u}(i,c,this.nodataHandling),t=[];for(var f=(n-l)/2,s=0;s<i.length;s++)for(var h=i[s],y=u-s*l+f,p=0;p<h.length;p++){var v=h[p];if(v){var d={x:a+p*l+f,y};d[this.interpolatedProperty]=v,t.push(d)}}var b,m=e.offscreenCtx,g=function(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return sf(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?sf(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw i}}}}(this.styles);try{for(g.s();!(b=g.n()).done;){var w=b.value;w.visible&&!w.visible(o)||((w.alpha||w.blendOperation)&&(m.save(),w.alpha&&(m.globalAlpha=w.alpha(o)),w.blendOperation&&(m.globalCompositeOperation=w.blendOperation(o))),e.setCanvasTransform(),w.draw(t,e,l),w.filterColor&&w.drawFilter(e),(w.alpha||w.blendOperation)&&m.restore())}}catch(t){g.e(t)}finally{g.f()}}}}],r&&hf(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(Lo),mf=function(t,e,n,r,o,i){var a=t+(e-t)*o;return a+(n+(r-n)*o-a)*i};function gf(t){return gf="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},gf(t)}function wf(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return xf(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?xf(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw i}}}}function xf(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function Sf(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,Of(r.key),r)}}function Of(t){var e=function(t){if("object"!=gf(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=gf(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==gf(e)?e:e+""}function jf(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(jf=function(){return!!t})()}function Pf(t){return Pf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Pf(t)}function _f(t,e){return _f=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},_f(t,e)}var Tf=function(t){function e(t,n){var r,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),r=function(t,e,n){return e=Pf(e),function(t,e){if(e&&("object"==gf(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,jf()?Reflect.construct(e,n||[],Pf(t).constructor):e.apply(t,n))}(this,e,[o]),o=o||{},r.dataset=t,r.styles=n,r.minPixelsPerCell=o.minPixelsPerCell||3,r.cellInfoHTML=o.cellInfoHTML||e.defaultCellInfoHTML,r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&_f(t,e)}(e,t),n=e,r=[{key:"draw",value:function(t,n){var r=t.view.z,o=t.offscreenCtx,i=this.getDataset(r);if(i){i.getData(t.extGeo),i.updateViewCache(t.extGeo),(this.alpha||this.blendOperation)&&(o.save(),this.alpha&&(o.globalAlpha=this.alpha(r)),this.blendOperation&&(o.globalCompositeOperation=this.blendOperation(r)));var a,u=wf(this.styles);try{for(u.s();!(a=u.n()).done;){var l=a.value;l.visible&&!l.visible(r)||((l.alpha||l.blendOperation)&&(o.save(),l.alpha&&(o.globalAlpha=l.alpha(r)),l.blendOperation&&(o.globalCompositeOperation=l.blendOperation(r))),t.setCanvasTransform(),l.draw(i.getViewCache(),t,i.getResolution()),l.filterColor&&l.drawFilter(t),(l.alpha||l.blendOperation)&&o.restore())}}catch(t){u.e(t)}finally{u.f()}if((this.alpha||this.blendOperation)&&o.restore(),n){var c,f=wf(this.styles);try{for(f.s();!(c=f.n()).done;){var s=c.value;if((!s.visible||s.visible(r))&&(e.addLegends(n,s.legends),s.styles)){var h,y=wf(s.styles);try{for(y.s();!(h=y.n()).done;){var p=h.value;p.visible&&!p.visible(r)||e.addLegends(n,p.legends)}}catch(t){y.e(t)}finally{y.f()}}}}catch(t){f.e(t)}finally{f.f()}}}}},{key:"getDataset",value:function(t){return this.dataset.getDataset(t,this.minPixelsPerCell)}},{key:"styles_",value:function(t){return 0===arguments.length?this.styles:(1===arguments.length?Array.isArray(t)?this.styles=t:this.styles=[t]:this.styles=arguments,this)}}],o=[{key:"addLegends",value:function(t,e){if(Array.isArray(e)){var n,r=wf(e);try{for(r.s();!(n=r.n()).done;){var o=n.value;this.addLegends(t,o)}}catch(t){r.e(t)}finally{r.f()}}else t.node().append(e.div.node())}},{key:"defaultCellInfoHTML",value:function(t){for(var e=[],n=0,r=Object.keys(t);n<r.length;n++){var o=r[n];"x"!==o&&"y"!==o&&e.push("<b>",o,"</b>"," : ",t[o],"<br>")}return e.join("")}}],r&&Sf(n.prototype,r),o&&Sf(n,o),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r,o}(Ho);function kf(t){return kf="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},kf(t)}function Cf(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,Ef(r.key),r)}}function Ef(t){var e=function(t){if("object"!=kf(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=kf(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==kf(e)?e:e+""}function Af(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(Af=function(){return!!t})()}function Mf(t){return Mf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Mf(t)}function zf(t,e){return zf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},zf(t,e)}var Rf=function(t){function e(t){var n;if(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),n=function(t,e,n){return e=Mf(e),function(t,e){if(e&&("object"==kf(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Af()?Reflect.construct(e,n||[],Mf(t).constructor):e.apply(t,n))}(this,e,[t]),t=t||{},n.cache={},n.url=t.url,n.urlFun=t.urlFun||function(t,e,r){return n.url+r+"/"+t+"/"+e+".png"},n.resolutions=t.resolutions,!n.resolutions||0==n.resolutions.length)throw new Error("No resolutions provided for background layer");return n.nbPix=t.nbPix||256,n.origin=t.origin||[0,0],n.z0=t.z0||0,n.pixelationCoefficient=t.pixelationCoefficient||1,n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&zf(t,e)}(e,t),n=e,r=[{key:"get",value:function(t,e,n){var r=this.cache[t];if(r&&(r=r[e]))return r[n]}},{key:"put",value:function(t,e,n,r){this.cache[e]||(this.cache[e]={}),this.cache[e][n]||(this.cache[e][n]={}),this.cache[e][n][r]=t}},{key:"draw",value:function(t){var e=this;if(this.resolutions&&0!=this.resolutions.length){var n=t.view.z,r=this.origin[0],o=this.origin[1],i=0;for(i=0;i<this.resolutions.length&&!(this.resolutions[i]<n*this.pixelationCoefficient);i++);i-=1,i=Math.max(0,i),i=Math.min(i,this.resolutions.length-1);var a=this.resolutions[i];i+=this.z0;for(var u=this.nbPix*a,l=u/n,c=function(t){return Math.ceil((t-r)/u)},f=function(t){return Math.ceil(-(t-o)/u)},s=c(t.extGeo.xMin)-1,h=c(t.extGeo.xMax),y=f(t.extGeo.yMin),p=f(t.extGeo.yMax)-1,v=function(n){for(var a=function(a){var c=e.get(i,n,a);if(!c){var f=new Image;return e.put(f,i,n,a),f.onload=function(){t.redraw()},f.onerror=function(){e.put("failed",i,n,a)},f.src=e.urlFun(n,a,i),0}if("failed"===c)return 0;if(!(c instanceof HTMLImageElement))return console.log(c),0;if(0==c.width||0==c.height)return 0;var s=r+n*u,h=o-a*u;try{t.initCanvasTransform(),t.offscreenCtx.drawImage(c,t.geoToPixX(s),t.geoToPixY(h),l,l)}catch(t){console.error(t)}},c=p;c<y;c++)a(c)},d=s;d<h;d++)v(d)}else console.error("No resolutions provided for background layer")}}],r&&Cf(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(Ho);function If(t){return If="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},If(t)}function Ff(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,Bf(r.key),r)}}function Bf(t){var e=function(t){if("object"!=If(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=If(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==If(e)?e:e+""}function Lf(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(Lf=function(){return!!t})()}function Nf(t){return Nf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Nf(t)}function Df(t,e){return Df=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Df(t,e)}var Gf=function(t){function e(t){var n;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),n=function(t,e,n){return e=Nf(e),function(t,e){if(e&&("object"==If(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Lf()?Reflect.construct(e,n||[],Nf(t).constructor):e.apply(t,n))}(this,e,[t]),t=t||{},n.url=t.url,n.img=void 0,n.xMin=void 0,n.xMax=void 0,n.yMin=void 0,n.yMax=void 0,n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Df(t,e)}(e,t),n=e,(r=[{key:"hasMoved",value:function(t){return t.xMin!=this.xMin||t.xMax!=this.xMax||t.yMin!=this.yMin||t.yMax!=this.yMax}},{key:"draw",value:function(t){if(t.updateExtentGeo(0),!this.hasMoved(t.extGeo)&&this.img)t.initCanvasTransform(),t.offscreenCtx.drawImage(this.img,0,0,t.w,t.h);else{this.xMin=t.extGeo.xMin,this.xMax=t.extGeo.xMax,this.yMin=t.extGeo.yMin,this.yMax=t.extGeo.yMax;var e=[];e.push(this.url),e.push("&width="),e.push(t.w),e.push("&height="),e.push(t.h),e.push("&bbox="),e.push(t.extGeo.xMin),e.push(","),e.push(t.extGeo.yMin),e.push(","),e.push(t.extGeo.xMax),e.push(","),e.push(t.extGeo.yMax);var n=e.join("");this.img||(this.img=new Image,this.img.onload=function(){t.redraw()},this.img.onerror=function(){console.warn("Could not retrieve WMS background image from",n)}),this.img.src=n}}}])&&Ff(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(Ho);function Wf(t){return Wf="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Wf(t)}function Uf(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,$f(r.key),r)}}function $f(t){var e=function(t){if("object"!=Wf(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=Wf(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Wf(e)?e:e+""}function Hf(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(Hf=function(){return!!t})()}function Xf(t){return Xf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Xf(t)}function Vf(t,e){return Vf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Vf(t,e)}var qf=function(t){function e(t){var n;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),n=function(t,e,n){return e=Xf(e),function(t,e){if(e&&("object"==Wf(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Hf()?Reflect.construct(e,n||[],Xf(t).constructor):e.apply(t,n))}(this,e,[t]),t=t||{},n.url=t.url,n.xMin=t.xMin||0,n.yMax=t.yMax||0,n.width=t.width||2e4,n.height=t.height||2e4,n.img=void 0,n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Vf(t,e)}(e,t),n=e,(r=[{key:"draw",value:function(t){var e=this;if(this.img){var n=t.geoToPixX(this.xMin),r=t.geoToPixY(this.yMax),o=t.getView().z;t.initCanvasTransform(),t.offscreenCtx.drawImage(this.img,n,r,this.width/o,this.height/o)}else this.img||(this.img=new Image,this.img.onload=function(){t.redraw()},this.img.onerror=function(){console.warn("Could not retrieve background image from",e.url)}),this.img.src=this.url}}])&&Uf(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(Ho);function Yf(t){return Yf="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Yf(t)}function Zf(){var t,e,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",o=n.toStringTag||"@@toStringTag";function i(n,r,o,i){var l=r&&r.prototype instanceof u?r:u,c=Object.create(l.prototype);return Jf(c,"_invoke",function(n,r,o){var i,u,l,c=0,f=o||[],s=!1,h={p:0,n:0,v:t,a:y,f:y.bind(t,4),d:function(e,n){return i=e,u=0,l=t,h.n=n,a}};function y(n,r){for(u=n,l=r,e=0;!s&&c&&!o&&e<f.length;e++){var o,i=f[e],y=h.p,p=i[2];n>3?(o=p===r)&&(l=i[(u=i[4])?5:(u=3,3)],i[4]=i[5]=t):i[0]<=y&&((o=n<2&&y<i[1])?(u=0,h.v=r,h.n=i[1]):y<p&&(o=n<3||i[0]>r||r>p)&&(i[4]=n,i[5]=r,h.n=p,u=0))}if(o||n>1)return a;throw s=!0,r}return function(o,f,p){if(c>1)throw TypeError("Generator is already running");for(s&&1===f&&y(f,p),u=f,l=p;(e=u<2?t:l)||!s;){i||(u?u<3?(u>1&&(h.n=-1),y(u,l)):h.n=l:h.v=l);try{if(c=2,i){if(u||(o="next"),e=i[o]){if(!(e=e.call(i,l)))throw TypeError("iterator result is not an object");if(!e.done)return e;l=e.value,u<2&&(u=0)}else 1===u&&(e=i.return)&&e.call(i),u<2&&(l=TypeError("The iterator does not provide a '"+o+"' method"),u=1);i=t}else if((e=(s=h.n<0)?l:n.call(r,h))!==a)break}catch(e){i=t,u=1,l=e}finally{c=1}}return{value:e,done:s}}}(n,o,i),!0),c}var a={};function u(){}function l(){}function c(){}e=Object.getPrototypeOf;var f=[][r]?e(e([][r]())):(Jf(e={},r,function(){return this}),e),s=c.prototype=u.prototype=Object.create(f);function h(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,c):(t.__proto__=c,Jf(t,o,"GeneratorFunction")),t.prototype=Object.create(s),t}return l.prototype=c,Jf(s,"constructor",c),Jf(c,"constructor",l),l.displayName="GeneratorFunction",Jf(c,o,"GeneratorFunction"),Jf(s),Jf(s,o,"Generator"),Jf(s,r,function(){return this}),Jf(s,"toString",function(){return"[object Generator]"}),(Zf=function(){return{w:i,m:h}})()}function Jf(t,e,n,r){var o=Object.defineProperty;try{o({},"",{})}catch(t){o=0}Jf=function(t,e,n,r){function i(e,n){Jf(t,e,function(t){return this._invoke(e,n,t)})}e?o?o(t,e,{value:n,enumerable:!r,configurable:!r,writable:!r}):t[e]=n:(i("next",0),i("throw",1),i("return",2))},Jf(t,e,n,r)}function Qf(t,e,n,r,o,i,a){try{var u=t[i](a),l=u.value}catch(t){return void n(t)}u.done?e(l):Promise.resolve(l).then(r,o)}function Kf(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return ts(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ts(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw i}}}}function ts(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function es(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,ns(r.key),r)}}function ns(t){var e=function(t){if("object"!=Yf(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=Yf(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Yf(e)?e:e+""}function rs(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(rs=function(){return!!t})()}function os(t){return os=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},os(t)}function is(t,e){return is=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},is(t,e)}var as=function(t){function e(t){var n;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),n=function(t,e,n){return e=os(e),function(t,e){if(e&&("object"==Yf(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,rs()?Reflect.construct(e,n||[],os(t).constructor):e.apply(t,n))}(this,e,[t]),t=t||{},n.url=t.url,n.style=t.style||function(){return"1.2em Arial"},n.color=t.color||(t.dark?function(){return"white"}:function(){return"black"}),n.haloColor=t.haloColor||(t.dark?function(){return"black"}:function(){return"white"}),n.haloWidth=t.haloWidth||function(){return 2.5},n.textAlign=t.textAlign||"start",n.offsetPix=t.offsetPix||[5,5],n.preprocess=t.preprocess,n.labels=void 0,n.loadingStatus="notLoaded",n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&is(t,e)}(e,t),n=e,r=[{key:"draw",value:function(t){if(this.labels){var e=t.view.z,n=t.offscreenCtx;n.textAlign=this.textAlign||"start",n.lineJoin="bevel",n.lineCap="butt",t.initCanvasTransform();var r,o=Kf(this.labels);try{for(o.s();!(r=o.n()).done;){var i=r.value,a=this.style(i,e);if(a&&(n.font=a,t.toDraw(i))){var u=t.geoToPixX(i.x)+this.offsetPix[0],l=t.geoToPixY(i.y)-this.offsetPix[1];if(this.haloColor&&this.haloWidth){var c=this.haloColor(i,e),f=this.haloWidth(i,e);c&&f&&f>0&&(n.strokeStyle=c,n.lineWidth=f,n.strokeText(i.name,u,l))}if(this.color){var s=this.color(i,e);s&&(n.fillStyle=s,n.fillText(i.name,u,l))}}}}catch(t){o.e(t)}finally{o.f()}}else this.load(t.redraw)}},{key:"load",value:(o=Zf().m(function t(e){var n,r,o,i,a;return Zf().w(function(t){for(;;)switch(t.p=t.n){case 0:if(this.url){t.n=1;break}return console.log("Failed loading labels: No URL specified. "+this.url),this.loadingStatus="failed",this.labels=[],t.a(2);case 1:if("notLoaded"==this.loadingStatus){t.n=2;break}return t.a(2);case 2:return this.loadingStatus="loading",t.p=3,t.n=4,Si(this.url);case 4:if(n=t.v,!this.preprocess){t.n=13;break}this.labels=[],r=Kf(n),t.p=5,r.s();case 6:if((o=r.n()).done){t.n=9;break}if(i=o.value,0!=this.preprocess(i)){t.n=7;break}return t.a(3,8);case 7:this.labels.push(i);case 8:t.n=6;break;case 9:t.n=11;break;case 10:t.p=10,a=t.v,r.e(a);case 11:return t.p=11,r.f(),t.f(11);case 12:t.n=14;break;case 13:this.labels=n;case 14:this.loadingStatus="loaded",e&&e(),t.n=16;break;case 15:t.p=15,t.v,console.log("Failed loading labels from "+this.url),this.labels=[],this.loadingStatus="failed";case 16:return t.a(2)}},t,this,[[5,10,11,12],[3,15]])}),i=function(){var t=this,e=arguments;return new Promise(function(n,r){var i=o.apply(t,e);function a(t){Qf(i,n,r,a,u,"next",t)}function u(t){Qf(i,n,r,a,u,"throw",t)}a(void 0)})},function(t){return i.apply(this,arguments)})}],r&&es(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r,o,i}(Ho);function us(t){return us="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},us(t)}function ls(){var t,e,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",o=n.toStringTag||"@@toStringTag";function i(n,r,o,i){var l=r&&r.prototype instanceof u?r:u,c=Object.create(l.prototype);return cs(c,"_invoke",function(n,r,o){var i,u,l,c=0,f=o||[],s=!1,h={p:0,n:0,v:t,a:y,f:y.bind(t,4),d:function(e,n){return i=e,u=0,l=t,h.n=n,a}};function y(n,r){for(u=n,l=r,e=0;!s&&c&&!o&&e<f.length;e++){var o,i=f[e],y=h.p,p=i[2];n>3?(o=p===r)&&(l=i[(u=i[4])?5:(u=3,3)],i[4]=i[5]=t):i[0]<=y&&((o=n<2&&y<i[1])?(u=0,h.v=r,h.n=i[1]):y<p&&(o=n<3||i[0]>r||r>p)&&(i[4]=n,i[5]=r,h.n=p,u=0))}if(o||n>1)return a;throw s=!0,r}return function(o,f,p){if(c>1)throw TypeError("Generator is already running");for(s&&1===f&&y(f,p),u=f,l=p;(e=u<2?t:l)||!s;){i||(u?u<3?(u>1&&(h.n=-1),y(u,l)):h.n=l:h.v=l);try{if(c=2,i){if(u||(o="next"),e=i[o]){if(!(e=e.call(i,l)))throw TypeError("iterator result is not an object");if(!e.done)return e;l=e.value,u<2&&(u=0)}else 1===u&&(e=i.return)&&e.call(i),u<2&&(l=TypeError("The iterator does not provide a '"+o+"' method"),u=1);i=t}else if((e=(s=h.n<0)?l:n.call(r,h))!==a)break}catch(e){i=t,u=1,l=e}finally{c=1}}return{value:e,done:s}}}(n,o,i),!0),c}var a={};function u(){}function l(){}function c(){}e=Object.getPrototypeOf;var f=[][r]?e(e([][r]())):(cs(e={},r,function(){return this}),e),s=c.prototype=u.prototype=Object.create(f);function h(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,c):(t.__proto__=c,cs(t,o,"GeneratorFunction")),t.prototype=Object.create(s),t}return l.prototype=c,cs(s,"constructor",c),cs(c,"constructor",l),l.displayName="GeneratorFunction",cs(c,o,"GeneratorFunction"),cs(s),cs(s,o,"Generator"),cs(s,r,function(){return this}),cs(s,"toString",function(){return"[object Generator]"}),(ls=function(){return{w:i,m:h}})()}function cs(t,e,n,r){var o=Object.defineProperty;try{o({},"",{})}catch(t){o=0}cs=function(t,e,n,r){function i(e,n){cs(t,e,function(t){return this._invoke(e,n,t)})}e?o?o(t,e,{value:n,enumerable:!r,configurable:!r,writable:!r}):t[e]=n:(i("next",0),i("throw",1),i("return",2))},cs(t,e,n,r)}function fs(t,e,n,r,o,i,a){try{var u=t[i](a),l=u.value}catch(t){return void n(t)}u.done?e(l):Promise.resolve(l).then(r,o)}function ss(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return hs(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?hs(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw i}}}}function hs(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function ys(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,ps(r.key),r)}}function ps(t){var e=function(t){if("object"!=us(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=us(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==us(e)?e:e+""}function vs(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(vs=function(){return!!t})()}function ds(t){return ds=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},ds(t)}function bs(t,e){return bs=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},bs(t,e)}var ms=function(t){function e(t){var n;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),n=function(t,e,n){return e=ds(e),function(t,e){if(e&&("object"==us(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,vs()?Reflect.construct(e,n||[],ds(t).constructor):e.apply(t,n))}(this,e,[t]),t=t||{},n.url=t.url,n.preprocess=t.preprocess,n.shape=t.shape||function(t,e){return"circle"},n.size=t.size||function(t,e){return 10},n.strokeStyle=t.strokeStyle||t.color||function(t,e){return"gray"},n.lineWidth=t.lineWidth||t.width||function(t,e){return 2},n.lineDash=t.lineDash||function(t,e){},n.fillStyle=t.fillStyle||function(t,e){return"black"},n.fs=void 0,n.loadingStatus="notLoaded",n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&bs(t,e)}(e,t),n=e,r=[{key:"draw",value:function(t){if(this.fs){var e,n=t.view.z,r=t.offscreenCtx,o=ss(this.fs);try{for(o.s();!(e=o.n()).done;){var i=e.value;this.drawGeometry(i,i.geometry,i.geometry.type,n,r)}}catch(t){o.e(t)}finally{o.f()}}else this.load(t.redraw)}},{key:"drawGeometry",value:function(t,e,n,r,o){if("Point"==n||"MultiPoint"==n){var i=this.shape(t,r);if(!i||"none"==i)return;var a=this.size(t,r)*r;if(!a)return;var u=this.strokeStyle(t,r),l=this.fillStyle(t,r),c=this.lineWidth(t,r)*r;o.save(),u&&(o.strokeStyle=u),l&&(o.fillStyle=l),c&&(o.lineWidth=c);var f=e.coordinates;if("Point"==n&&(f=[f]),"circle"==i){var s,h=ss(f);try{for(h.s();!(s=h.n()).done;){var y=s.value;o.beginPath(),o.arc(y[0],y[1],a/2,0,2*Math.PI,!1),l&&o.fill(),u&&c&&o.stroke()}}catch(t){h.e(t)}finally{h.f()}}else if("square"==i){var p,v=ss(f);try{for(v.s();!(p=v.n()).done;){var d=p.value;o.beginPath(),o.rect(d[0]-a/2,d[1]-a/2,a,a),l&&o.fill(),u&&c&&o.stroke()}}catch(t){v.e(t)}finally{v.f()}}else console.error("Unexpected shape for point GeoJSON: "+i);o.restore()}else if("LineString"==n||"MultiLineString"==n){var b=this.strokeStyle(t,r);if(!b||"none"===b)return;var m=this.lineWidth(t,r);if(!m||m<0)return;o.save(),o.strokeStyle=b,o.lineWidth=m*r,o.setLineDash(this.lineDash(t,r)||[]);var g,w=ss("LineString"===n?[e.coordinates]:e.coordinates);try{for(w.s();!(g=w.n()).done;){var x=g.value;if(!(x.length<2)){o.beginPath(),o.moveTo(x[0][0],x[0][1]);for(var S=1;S<x.length;S++)o.lineTo(x[S][0],x[S][1]);o.stroke()}}}catch(t){w.e(t)}finally{w.f()}o.restore()}else if("Polygon"==n||"MultiPolygon"==n){o.save();var O="Polygon"===n?[e.coordinates]:e.coordinates;o.beginPath();var j,P=ss(O);try{for(P.s();!(j=P.n()).done;){var _,T=ss(j.value);try{for(T.s();!(_=T.n()).done;){var k=_.value;if(!(k.length<2)){o.moveTo(k[0][0],k[0][1]);for(var C=1;C<k.length;C++)o.lineTo(k[C][0],k[C][1]);o.closePath()}}}catch(t){T.e(t)}finally{T.f()}}}catch(t){P.e(t)}finally{P.f()}var E=this.fillStyle(t,r);E&&"none"!==E&&(o.fillStyle=E,o.fill("evenodd"));var A=this.lineWidth(t,r);if(A&&A>0){var M,z,R,I=null!==(M=null===(z=this.strokeStyle)||void 0===z?void 0:z.call(this,t,r))&&void 0!==M?M:E;I&&"none"!==I&&(o.strokeStyle=I,o.lineWidth=A*r,o.setLineDash((null===(R=this.lineDash)||void 0===R?void 0:R.call(this,t,r))||[]),o.stroke())}o.restore()}else if("GeometryCollection"==n){var F,B=ss(e.geometries);try{for(B.s();!(F=B.n()).done;){var L=F.value;this.drawGeometry(t,L,L.type,r,o)}}catch(t){B.e(t)}finally{B.f()}}else console.log("Unexpected geometry type in GeoJSONLayer: "+n)}},{key:"load",value:(o=ls().m(function t(e){var n,r,o,i,a,u;return ls().w(function(t){for(;;)switch(t.p=t.n){case 0:if(this.url){t.n=1;break}return console.log("Failed loading GeoJSON data: No URL specified. "+this.url),this.loadingStatus="failed",this.labels=[],t.a(2);case 1:if("notLoaded"==this.loadingStatus){t.n=2;break}return t.a(2);case 2:return this.loadingStatus="loading",t.p=3,t.n=4,oi(this.url);case 4:if(n=t.v,r=n.features,!this.preprocess){t.n=13;break}this.fs=[],o=ss(r),t.p=5,o.s();case 6:if((i=o.n()).done){t.n=9;break}if(a=i.value,0!=this.preprocess(a)){t.n=7;break}return t.a(3,8);case 7:this.fs.push(a);case 8:t.n=6;break;case 9:t.n=11;break;case 10:t.p=10,u=t.v,o.e(u);case 11:return t.p=11,o.f(),t.f(11);case 12:t.n=14;break;case 13:this.fs=r;case 14:this.loadingStatus="loaded",e&&e(),t.n=16;break;case 15:t.p=15,t.v,console.log("Failed loading GeoJSON from "+this.url),this.fs=[],this.loadingStatus="failed";case 16:return t.a(2)}},t,this,[[5,10,11,12],[3,15]])}),i=function(){var t=this,e=arguments;return new Promise(function(n,r){var i=o.apply(t,e);function a(t){fs(i,n,r,a,u,"next",t)}function u(t){fs(i,n,r,a,u,"throw",t)}a(void 0)})},function(t){return i.apply(this,arguments)})}],r&&ys(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r,o,i}(Ho);function gs(t){return gs="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},gs(t)}function ws(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,xs(r.key),r)}}function xs(t){var e=function(t){if("object"!=gs(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=gs(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==gs(e)?e:e+""}var Ss=function(){return t=function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),e=e||{},this.id=e.id,this.top=e.top,this.bottom=e.bottom,this.left=e.left,this.right=e.right,this.background=e.background||"none",this.padding=e.padding||"5px",this.border=e.border||"0px",this["border-radius"]=e["border-radius"]||"none",this["box-shadow"]=e["box-shadow"]||"none",this["font-family"]=e["font-family"]||"Helvetica, Arial, sans-serif",this.id&&(this.div=Yt("#"+this.id)),this.div&&!this.div.empty()||(this.div=Yt(document.createElement("div")),this.id&&this.div.attr("id",this.id)),this.div.style("background",this.background),this.div.style("padding",this.padding),this.div.style("border",this.border),this.div.style("border-radius",this["border-radius"]),this.div.style("box-shadow",this["box-shadow"]),this.div.style("font-family",this["font-family"]),this.title=e.title,this.titleFontSize=e.titleFontSize||"0.8em",this.titleFontWeight=e.titleFontWeight||"bold",this.labelFontSize=e.labelFontSize||"0.8em",this.labelUnitText=e.labelUnitText||"",this.labelFormat=e.labelFormat},e=[{key:"makeTitle",value:function(){this.title&&this.div.append("div").style("font-size",this.titleFontSize).style("font-weight",this.titleFontWeight).style("margin-bottom","7px").text(this.title)}},{key:"style",value:function(t,e){return 1==arguments.length?this.div.style(t):(this.div.style(t,e),this)}},{key:"update",value:function(){console.error("Legend update not implemented yet.")}}],e&&ws(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,e}();function Os(t){return Os="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Os(t)}function js(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,Ps(r.key),r)}}function Ps(t){var e=function(t){if("object"!=Os(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=Os(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Os(e)?e:e+""}function _s(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(_s=function(){return!!t})()}function Ts(t){return Ts=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Ts(t)}function ks(t,e){return ks=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},ks(t,e)}var Cs=function(t){function e(t){var n;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),n=function(t,e,n){return e=Ts(e),function(t,e){if(e&&("object"==Os(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,_s()?Reflect.construct(e,n||[],Ts(t).constructor):e.apply(t,n))}(this,e,[t]),t=t||{},n.colorScale=t.colorScale,n.textScale=t.textScale||function(t){return t},n.margin=t.margin||5,n.tickSize=t.tickSize||6,n.ticks=t.ticks||Math.floor(n.width/50),n.tickFormat=t.tickFormat,n.tickUnit=t.tickUnit,n.fontSize=t.fontSize||"0.8em",n.invert=t.invert,n.width=t.width||300,n.height=t.height||15,n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&ks(t,e)}(e,t),n=e,r=[{key:"update",value:function(t){this.div.selectAll("*").remove(),this.makeTitle();for(var e=this.width+2*this.margin,n=this.height+this.margin+this.tickSize+10,r=this.div.append("svg").attr("width",e).attr("height",n).append("g").attr("transform","translate("+this.margin+" 0)"),o=this.width,i=this.height,a=0;a<o;a+=5){var u=a/(o-1);this.invert&&(u=1-u),r.append("rect").attr("x",a).attr("y",0).attr("width",5).attr("height",i).style("fill",this.colorScale(u,t.viewScale))}for(var l=0;l<this.ticks;l++){var c=l/(this.ticks-1);r.append("line").attr("x1",o*c).attr("y1",0).attr("x2",o*c).attr("y2",i+this.tickSize).style("stroke","black"),r.append("text").attr("id","ticklabel_"+l).attr("x",o*c).attr("y",i+this.tickSize+2).style("font-size",this.fontSize).style("text-anchor",0==l?"start":l==this.ticks-1?"end":"middle").style("alignment-baseline","top").style("dominant-baseline","hanging").style("pointer-events","none")}for(var f=this.tickFormat&&"text"!=this.tickFormat?this.tickFormat:function(t){return t},s=0;s<this.ticks;s++){var h=s/(this.ticks-1),y=this.textScale(h,t.viewScale),p=(y?f(y):"0")+(this.tickUnit?this.tickUnit:"");null!=p&&this.div.select("#ticklabel_"+s).text(p)}}}],r&&js(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(Ss);function Es(t){return Es="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Es(t)}function As(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,Ms(r.key),r)}}function Ms(t){var e=function(t){if("object"!=Es(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=Es(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Es(e)?e:e+""}function zs(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(zs=function(){return!!t})()}function Rs(t){return Rs=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Rs(t)}function Is(t,e){return Is=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Is(t,e)}var Fs=function(t){function e(t){var n;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),n=function(t,e,n){return e=Rs(e),function(t,e){if(e&&("object"==Es(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,zs()?Reflect.construct(e,n||[],Rs(t).constructor):e.apply(t,n))}(this,e,[t]),t=t||{},n.colors=t.colors,n.breaks=t.breaks,n.width=t.width||300,n.height=t.height||15,n.tickSize=t.tickSize||3,n.invert=t.invert,n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Is(t,e)}(e,t),n=e,(r=[{key:"update",value:function(t){this.div.selectAll("*").remove(),this.makeTitle();var e=this.colors(t.viewScale),n=this.breaks(t.viewScale);if(n){var r=e.length;if(0!=r){for(var o=this.width/r,i=this.div.append("svg").attr("width",this.width).attr("height",this.height+this.tickSize+2+10),a=0;a<r;a++)i.append("rect").attr("x",a*o).attr("y",0).attr("width",o).attr("height",this.height).style("fill",e[a]);for(var u=1;u<r;u++)i.append("line").attr("x1",o*u).attr("y1",0).attr("x2",o*u).attr("y2",this.height+this.tickSize).style("stroke","black");for(var l=1;l<r;l++){var c=n[l-1];isNaN(c)||null==c||(this.labelFormat&&(c=this.labelFormat(c,l)),i.append("text").attr("id","ticklabel_"+l).attr("x",o*l).attr("y",this.height+this.tickSize+2).style("font-size",this.labelFontSize).style("text-anchor","middle").style("alignment-baseline","top").style("dominant-baseline","hanging").style("pointer-events","none").text(c))}}}}}])&&As(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(Ss);function Bs(t){return Bs="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Bs(t)}function Ls(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,Ns(r.key),r)}}function Ns(t){var e=function(t){if("object"!=Bs(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=Bs(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==Bs(e)?e:e+""}function Ds(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(Ds=function(){return!!t})()}function Gs(t){return Gs=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Gs(t)}function Ws(t,e){return Ws=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Ws(t,e)}var Us=function(t){function e(t){var n;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),n=function(t,e,n){return e=Gs(e),function(t,e){if(e&&("object"==Bs(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Ds()?Reflect.construct(e,n||[],Gs(t).constructor):e.apply(t,n))}(this,e,[t]),t=t||{},n.colorLabel=t.colorLabel||[["gray","-"]],n.shape=t.shape||"circle",n.dimension=t.dimension||{r:8},n.strokeColor=t.strokeColor||"gray",n.strokeWidth=t.strokeWidth||1,n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Ws(t,e)}(e,t),n=e,(r=[{key:"update",value:function(){this.div.selectAll("*").remove(),this.makeTitle();var t=this.colorLabel.length;if(0!=t)for(var e=0;e<t;e++){var n=this.colorLabel[e],r=this.div.append("div"),o=this.strokeWidth;if("square"===this.shape){var i=this.dimension.h||15,a=this.dimension.w||20;r.append("div").style("display","inline").append("svg").attr("width",a+2*o).attr("height",i+2*o).append("rect").attr("x",o).attr("y",o).attr("width",a).attr("height",i).style("fill",n[0]).style("stroke",this.strokeColor).style("stroke-width",this.strokeWidth)}else{if("circle"!==this.shape)throw new Error("Unexpected shape:"+this.shape);var u=this.dimension.r||8,l=2*u+2*o;r.append("div").style("display","inline").append("svg").attr("width",l).attr("height",l).append("circle").attr("cx",u+o).attr("cy",u+o).attr("r",u).style("fill",n[0]).style("stroke",this.strokeColor).style("stroke-width",this.strokeWidth)}r.append("div").style("display","inline").style("padding-left","5px").style("font-size",this.labelFontSize).text(n[1])}}}])&&Ls(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(Ss);function $s(t){return $s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},$s(t)}function Hs(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return Xs(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Xs(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw i}}}}function Xs(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function Vs(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,qs(r.key),r)}}function qs(t){var e=function(t){if("object"!=$s(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=$s(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==$s(e)?e:e+""}function Ys(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(Ys=function(){return!!t})()}function Zs(t){return Zs=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Zs(t)}function Js(t,e){return Js=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},Js(t,e)}var Qs=function(t){function e(t){var n;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),n=function(t,e,n){return e=Zs(e),function(t,e){if(e&&("object"==$s(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,Ys()?Reflect.construct(e,n||[],Zs(t).constructor):e.apply(t,n))}(this,e,[t]),t=t||{},n.label=t.label||void 0,n.size=t.size||void 0,n.shape=t.shape||"circle",n.fillColor=t.fillColor||"none",n.strokeColor=t.strokeColor||"gray",n.strokeWidth=t.strokeWidth||1,n.color=t.color||"gray",n.length=t.length||function(t,e,n){return t},n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Js(t,e)}(e,t),n=e,(r=[{key:"update",value:function(t){var e=this;this.div.selectAll("*").remove(),this.makeTitle();var n,r=this.label(t.viewScale,t.cells,t.resolution,t.z);if(n=this.size?this.size(t.viewScale,t.resolution,t.z)/t.z:t.viewScale(+r)/t.z){this.labelFormat&&!isNaN(+r)&&(r=this.labelFormat(r));var o=this.div.append("div"),i=function(){return o.append("svg").attr("width",n+e.strokeWidth+2).attr("height",n+e.strokeWidth+2).style("","inline-block")};if("square"===this.shape)i().append("rect").attr("x",0).attr("y",0).attr("width",n).attr("height",n).style("fill",this.fillColor).style("stroke",this.strokeColor).style("stroke-width",this.strokeWidth);else if("circle"===this.shape){var a=.5*(n+this.strokeWidth);i().append("circle").attr("cx",a+1).attr("cy",a+1).attr("r",a).style("fill",this.fillColor).style("stroke",this.strokeColor).style("stroke-width",this.strokeWidth)}else if("donut"===this.shape);else if("diamond"===this.shape);else{if("line"!==this.shape)throw new Error("Unexpected shape:"+this.shape);var u=this.length?this.length(t.resolution,t.z,t.viewScale):t.resolution;u/=t.z,o.append("svg").attr("width",u).attr("height",n).style("","inline-block").append("line").attr("x1",0).attr("y1",n/2).attr("x2",u).attr("y2",n/2).style("stroke",this.color).style("stroke-width",n)}o.append("div").style("display","inline").style("padding-left","5px").style("font-size",this.labelFontSize).text(r+(this.labelUnitText?" ":"")+this.labelUnitText)}}}])&&Vs(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(Ss);function Ks(t,e){var n,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=[],i=Hs(t);try{var a=function(){var i=n.value;r.title=i==t[0]?r.title:void 0,r.size=function(){return e(i)},r.label=function(){return i},o.push(new Qs(r))};for(i.s();!(n=i.n()).done;)a()}catch(t){i.e(t)}finally{i.f()}return o}function th(t){var e,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=n.k||[.9,.5,.2,.05],o=[],i=Hs(r);try{var a=function(){var i=e.value;n.title=i==r[0]?n.title:void 0,n.label=function(e,n){return Pa(i*Du(n,t))},o.push(new Qs(n))};for(i.s();!(e=i.n()).done;)a()}catch(t){i.e(t)}finally{i.f()}return o}function eh(t,e){for(var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=n.labelFormat||function(t){return t},o=n.labelText||rh(r),i=[],a=function(r){n.title=r==e.length-1?n.title:void 0,n.size=function(){return e[r]},n.label=function(){return o(t[r-1],t[r])},i.push(new Qs(n))},u=e.length-1;u>=0;u--)a(u);return i}function nh(t){for(var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=e.labelFormat||function(t){return t},r=e.labelText||rh(n),o=[],i=e.viewScaleFun||function(t){return t},a=function(n){e.title=n==t-1?e.title:void 0,e.size=function(t){return i(t).values[n]},e.label=function(t){return r(i(t).breaks[n-1],i(t).breaks[n])},o.push(new Qs(e))},u=t-1;u>=0;u--)a(u);return o}function rh(t){return function(e,n){return null==e&&null==n?"":null==n?"> "+t(e):null==e?"< "+t(n):t(e)+" - "+t(n)}}function oh(t){return oh="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},oh(t)}function ih(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,ah(r.key),r)}}function ah(t){var e=function(t){if("object"!=oh(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=oh(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==oh(e)?e:e+""}function uh(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(uh=function(){return!!t})()}function lh(t){return lh=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},lh(t)}function ch(t,e){return ch=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},ch(t,e)}var fh=function(t){function e(t){var n;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),n=function(t,e,n){return e=lh(e),function(t,e){if(e&&("object"==oh(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,uh()?Reflect.construct(e,n||[],lh(t).constructor):e.apply(t,n))}(this,e,[t]),t=t||{},n.orientation=t.orientation||0,n.color=t.color||function(t,e,n){return"gray"},n.width=t.width||function(t,e,n){return 3*e},n.length=t.length||function(t,e,n){return t},n.label=t.label||"-",n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&ch(t,e)}(e,t),n=e,r=[{key:"update",value:function(t){this.div.selectAll("*").remove(),this.makeTitle();var e=this.div.append("div"),n=this.color(t.resolution,t.z,t.viewScale),r=this.width(t.resolution,t.z,t.viewScale)/t.z,o=this.length(t.resolution,t.z,t.viewScale)/t.z,i=Math.max(o,r),a=e.append("svg").attr("width",i).attr("height",i).style("","inline-block"),u=Math.cos(-this.orientation*Math.PI/180),l=Math.sin(-this.orientation*Math.PI/180),c=.5*i,f=.5*o;a.append("line").attr("x1",c-u*f).attr("y1",c-l*f).attr("x2",c+u*f).attr("y2",c+l*f).style("stroke",n).style("stroke-width",r),e.append("div").style("display","inline").style("padding-left","5px").style("font-size",this.labelFontSize).text(this.label+(this.labelUnitText?" ":"")+this.labelUnitText)}}],r&&ih(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(Ss);function sh(t,e){for(var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=[],o=0;o<t.length;o++)n.title=0==o?n.title:void 0,n.orientation=t[o],n.label=e[o],r.push(new fh(n));return r}function hh(t){return hh="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},hh(t)}function yh(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,ph(r.key),r)}}function ph(t){var e=function(t){if("object"!=hh(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=hh(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==hh(e)?e:e+""}function vh(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(vh=function(){return!!t})()}function dh(t){return dh=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},dh(t)}function bh(t,e){return bh=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},bh(t,e)}var mh=function(t){function e(t){var n;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),n=function(t,e,n){return e=dh(e),function(t,e){if(e&&("object"==hh(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,vh()?Reflect.construct(e,n||[],dh(t).constructor):e.apply(t,n))}(this,e,[t]),t=t||{},n.classifier=t.classifier,n.width=t.width||150,n.selectionColor=t.selectionColor||"red",n.tooltip=t.tooltip,n.texts=t.texts,n.leftText=t.leftText||"Category 0",n.topText=t.topText||"Category 1",n.rightText=t.rightText||"Category 2",n.centerCoefficient=t.centerCoefficient||n.classifier.centerCoefficient,n}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&bh(t,e)}(e,t),n=e,r=[{key:"update",value:function(t){this.div.selectAll("*").remove(),this.makeTitle();var e=this.width,n=.866025*e,r=this.classifier,o=this.selectionColor,i=this.tooltip,a=this.texts||{},u=this.div.append("svg").attr("width",e+0).attr("height",n+8+24);u.append("text").attr("x",e/2).attr("y",14).text(this.topText).attr("font-size",12).attr("text-anchor","middle"),u.append("text").attr("x",0).attr("y",30+n).text(this.leftText).attr("font-size",12).attr("text-anchor","start"),u.append("text").attr("x",e).attr("y",30+n).text(this.rightText).attr("font-size",12).attr("text-anchor","end");var l=u.append("g").attr("transform","translate(0 16)"),c=function(t,e,n){t.attr("fill",e).on("mouseover",function(t){Yt(this).attr("fill",o),i&&n&&(i.html(n),i.setPosition(t),i.show())}).on("mouseout",function(){Yt(this).attr("fill",e),i&&i.hide()}),i&&n&&t.on("mousemove",function(t){i.setPosition(t)})};c(l.append("polygon").attr("points","0,"+n+" "+e/3+","+n+" "+e/2+","+2*n/3+" "+e/6+","+2*n/3),r.colors[0],a[0]),c(l.append("polygon").attr("points",e/2+",0 "+2*e/3+","+n/3+" "+e/2+","+2*n/3+" "+e/3+","+n/3),r.colors[1],a[1]),c(l.append("polygon").attr("points",e+","+n+" "+5*e/6+","+2*n/3+" "+e/2+","+2*n/3+" "+2*e/3+","+n),r.colors[2],a[2]),c(l.append("polygon").attr("points",e/2+","+2*n/3+" "+5*e/6+","+2*n/3+" "+2*e/3+","+n/3),r.mixColors[0],a.m12),c(l.append("polygon").attr("points",e/2+","+2*n/3+" "+e/3+","+n+" "+2*e/3+","+n),r.mixColors[1],a.m02),c(l.append("polygon").attr("points",e/2+","+2*n/3+" "+e/6+","+2*n/3+" "+e/3+","+n/3),r.mixColors[2],a.m01),this.centerCoefficient&&c(l.append("circle").attr("cx",e/2).attr("cy",2*n/3).attr("r",this.centerCoefficient*n/3),r.centerColor,a.center)}}],r&&yh(n.prototype,r),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,r}(Ss),gh=function(t){return t};gh.invert=gh;var wh=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:3;if(0==t)return gh;var e=Math.exp(t)-1,n=function(n){return(Math.exp(n*t)-1)/e};return n.invert=function(n){return Math.log(e*n+1)/t},n},xh=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:3;if(0==t)return gh;var e=Math.exp(t),n=1-e,r=function(r){return 1-Math.log(e+r*n)/t};return r.invert=function(r){return(Math.exp((1-r)*t)-e)/n},r},Sh=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:3;if(1==t)return gh;var e=function(e){return Math.pow(e,t)},n=1/t;return e.invert=function(t){return Math.pow(t,n)},e},Oh=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:3;if(1==t)return gh;var e=1/t,n=function(t){return 1-Math.pow(1-t,e)};return n.invert=function(e){return 1-Math.pow(1-e,t)},n},jh=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:.8;if(0==t)return gh;if(1==t)return function(t){return Math.sqrt(t*(2-t))};var e=t/(1-t);return function(t){return Math.sqrt(1/(e*e)+t*(2/e+2-t))-1/e}},Ph=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:.8;if(0==t)return gh;var e=jh(t);return function(t){return 1-e(1-t)}};const _h=Math.PI/180,Th=180/Math.PI,kh=.96422,Ch=.82521,Eh=4/29,Ah=6/29,Mh=3*Ah*Ah,zh=Ah*Ah*Ah;function Rh(t){if(t instanceof Fh)return new Fh(t.l,t.a,t.b,t.opacity);if(t instanceof Gh)return Wh(t);t instanceof jn||(t=Sn(t));var e,n,r=Dh(t.r),o=Dh(t.g),i=Dh(t.b),a=Bh((.2225045*r+.7168786*o+.0606169*i)/1);return r===o&&o===i?e=n=a:(e=Bh((.4360747*r+.3850649*o+.1430804*i)/kh),n=Bh((.0139322*r+.0971045*o+.7141733*i)/Ch)),new Fh(116*a-16,500*(e-a),200*(a-n),t.opacity)}function Ih(t,e,n,r){return 1===arguments.length?Rh(t):new Fh(t,e,n,null==r?1:r)}function Fh(t,e,n,r){this.l=+t,this.a=+e,this.b=+n,this.opacity=+r}function Bh(t){return t>zh?Math.pow(t,1/3):t/Mh+Eh}function Lh(t){return t>Ah?t*t*t:Mh*(t-Eh)}function Nh(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function Dh(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function Gh(t,e,n,r){this.h=+t,this.c=+e,this.l=+n,this.opacity=+r}function Wh(t){if(isNaN(t.h))return new Fh(t.l,0,0,t.opacity);var e=t.h*_h;return new Fh(t.l,Math.cos(e)*t.c,Math.sin(e)*t.c,t.opacity)}function Uh(t,e){var n=Dn((t=Ih(t)).l,(e=Ih(e)).l),r=Dn(t.a,e.a),o=Dn(t.b,e.b),i=Dn(t.opacity,e.opacity);return function(e){return t.l=n(e),t.a=r(e),t.b=o(e),t.opacity=i(e),t+""}}function $h(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var r,o,i,a,u=[],l=!0,c=!1;try{if(i=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=i.call(n)).done)&&(u.push(r.value),u.length!==e);l=!0);}catch(t){c=!0,o=t}finally{try{if(!l&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw o}}return u}}(t,e)||function(t,e){if(t){if("string"==typeof t)return Hh(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Hh(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Hh(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}tn(Fh,Ih,en(nn,{brighter(t){return new Fh(this.l+18*(null==t?1:t),this.a,this.b,this.opacity)},darker(t){return new Fh(this.l-18*(null==t?1:t),this.a,this.b,this.opacity)},rgb(){var t=(this.l+16)/116,e=isNaN(this.a)?t:t+this.a/500,n=isNaN(this.b)?t:t-this.b/200;return new jn(Nh(3.1338561*(e=kh*Lh(e))-1.6168667*(t=1*Lh(t))-.4906146*(n=Ch*Lh(n))),Nh(-.9787684*e+1.9161415*t+.033454*n),Nh(.0719453*e-.2289914*t+1.4052427*n),this.opacity)}})),tn(Gh,function(t,e,n,r){return 1===arguments.length?function(t){if(t instanceof Gh)return new Gh(t.h,t.c,t.l,t.opacity);if(t instanceof Fh||(t=Rh(t)),0===t.a&&0===t.b)return new Gh(NaN,0<t.l&&t.l<100?0:NaN,t.l,t.opacity);var e=Math.atan2(t.b,t.a)*Th;return new Gh(e<0?e+360:e,Math.sqrt(t.a*t.a+t.b*t.b),t.l,t.opacity)}(t):new Gh(t,e,n,null==r?1:r)},en(nn,{brighter(t){return new Gh(this.h,this.c,this.l+18*(null==t?1:t),this.opacity)},darker(t){return new Gh(this.h,this.c,this.l-18*(null==t?1:t),this.opacity)},rgb(){return Wh(this).rgb()}}));var Xh=function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=t[0],o=t[1],i=t[2],a=$h(n.center||[1/3,1/3,1/3],3),u=a[0],l=a[1],c=a[2],f=null==n.withMixedClasses||n.withMixedClasses,s=n.centerCoefficient?1-n.centerCoefficient:void 0,h=function(t){var n=e(t);if(n){var a=+t[r]/n,h=+t[o]/n,y=+t[i]/n;return a>=u&&h<=l&&y<=c?null!=s&&(y-c)*(l-s*l)>=(h-s*l)*(s*c-c)?"center":"0":a<=u&&h>=l&&y<=c?null!=s&&(y-c)*(u-s*u)>=(a-s*u)*(s*c-c)?"center":"1":a<=u&&h<=l&&y>=c?null!=s&&(h-l)*(u-s*u)>=(a-s*u)*(s*l-l)?"center":"2":a<=u&&h>=l&&y>=c?null!=s&&a>s*u?"center":f?"m12":h>y?"1":"2":a>=u&&h<=l&&y>=c?null!=s&&h>s*l?"center":f?"m02":a>y?"0":"2":a>=u&&h>=l&&y<=c?null!=s&&y>s*c?"center":f?"m01":h>a?"1":"0":"unknown"}};return h.center=[u,l,c],h.centerCoefficient=n.centerCoefficient,h},Vh=function(t,e,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},o=$h(n||["red","green","blue"],3),i=o[0],a=o[1],u=o[2],l=r.colorInterpolation||Uh,c=null==r.withMixedClasses||r.withMixedClasses,f=function(t,e){return l(t,e)(.5)},s=$h(r.mixedColors||c?[f(a,u),f(i,u),f(i,a)]:[],3),h=s[0],y=s[1],p=s[2],v=r.centerColor||l(f(i,a),u)(.333),d=Xh(t,e,r),b=function(t){var e=d(t);return"0"==e?i:"1"==e?a:"2"==e?u:"m12"==e?h:"m02"==e?y:"m01"==e?p:"center"==e?v:r.defaultColor||"black"};return b.center=d.center,b.centerCoefficient=r.centerCoefficient,b.colors=[i,a,u],b.mixColors=[h,y,p],b.centerColor=v,b.classifier=d,b};function qh(t){return Math.abs(t=Math.round(t))>=1e21?t.toLocaleString("en").replace(/,/g,""):t.toString(10)}function Yh(t,e){if(!isFinite(t)||0===t)return null;var n=(t=e?t.toExponential(e-1):t.toExponential()).indexOf("e"),r=t.slice(0,n);return[r.length>1?r[0]+r.slice(2):r,+t.slice(n+1)]}function Zh(t){return(t=Yh(Math.abs(t)))?t[1]:NaN}function Jh(t,e){return function(n,r){for(var o=n.length,i=[],a=0,u=t[0],l=0;o>0&&u>0&&(l+u+1>r&&(u=Math.max(1,r-l)),i.push(n.substring(o-=u,o+u)),!((l+=u+1)>r));)u=t[a=(a+1)%t.length];return i.reverse().join(e)}}function Qh(t){return function(e){return e.replace(/[0-9]/g,function(e){return t[+e]})}}Object.defineProperty(qh,"name",{value:"default",configurable:!0}),Object.defineProperty(Zh,"name",{value:"default",configurable:!0}),Object.defineProperty(Jh,"name",{value:"default",configurable:!0}),Object.defineProperty(Qh,"name",{value:"default",configurable:!0});var Kh,ty=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function ey(t){if(!(e=ty.exec(t)))throw new Error("invalid format: "+t);var e;return new ny({fill:e[1],align:e[2],sign:e[3],symbol:e[4],zero:e[5],width:e[6],comma:e[7],precision:e[8]&&e[8].slice(1),trim:e[9],type:e[10]})}function ny(t){this.fill=void 0===t.fill?" ":t.fill+"",this.align=void 0===t.align?">":t.align+"",this.sign=void 0===t.sign?"-":t.sign+"",this.symbol=void 0===t.symbol?"":t.symbol+"",this.zero=!!t.zero,this.width=void 0===t.width?void 0:+t.width,this.comma=!!t.comma,this.precision=void 0===t.precision?void 0:+t.precision,this.trim=!!t.trim,this.type=void 0===t.type?"":t.type+""}function ry(t){t:for(var e,n=t.length,r=1,o=-1;r<n;++r)switch(t[r]){case".":o=e=r;break;case"0":0===o&&(o=r),e=r;break;default:if(!+t[r])break t;o>0&&(o=0)}return o>0?t.slice(0,o)+t.slice(e+1):t}function oy(t,e){var n=Yh(t,e);if(!n)return Kh=void 0,t.toPrecision(e);var r=n[0],o=n[1],i=o-(Kh=3*Math.max(-8,Math.min(8,Math.floor(o/3))))+1,a=r.length;return i===a?r:i>a?r+new Array(i-a+1).join("0"):i>0?r.slice(0,i)+"."+r.slice(i):"0."+new Array(1-i).join("0")+Yh(t,Math.max(0,e+i-1))[0]}function iy(t,e){var n=Yh(t,e);if(!n)return t+"";var r=n[0],o=n[1];return o<0?"0."+new Array(-o).join("0")+r:r.length>o+1?r.slice(0,o+1)+"."+r.slice(o+1):r+new Array(o-r.length+2).join("0")}ey.prototype=ny.prototype,ny.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(void 0===this.width?"":Math.max(1,0|this.width))+(this.comma?",":"")+(void 0===this.precision?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type},Object.defineProperty(ry,"name",{value:"default",configurable:!0}),Object.defineProperty(oy,"name",{value:"default",configurable:!0}),Object.defineProperty(iy,"name",{value:"default",configurable:!0});const ay={"%":(t,e)=>(100*t).toFixed(e),b:t=>Math.round(t).toString(2),c:t=>t+"",d:qh,e:(t,e)=>t.toExponential(e),f:(t,e)=>t.toFixed(e),g:(t,e)=>t.toPrecision(e),o:t=>Math.round(t).toString(8),p:(t,e)=>iy(100*t,e),r:iy,s:oy,X:t=>Math.round(t).toString(16).toUpperCase(),x:t=>Math.round(t).toString(16)};function uy(t){return t}Object.defineProperty(uy,"name",{value:"default",configurable:!0}),Object.defineProperty(sy,"name",{value:"default",configurable:!0});var ly,cy=Array.prototype.map,fy=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function sy(t){var e=void 0===t.grouping||void 0===t.thousands?uy:Jh(cy.call(t.grouping,Number),t.thousands+""),n=void 0===t.currency?"":t.currency[0]+"",r=void 0===t.currency?"":t.currency[1]+"",o=void 0===t.decimal?".":t.decimal+"",i=void 0===t.numerals?uy:Qh(cy.call(t.numerals,String)),a=void 0===t.percent?"%":t.percent+"",u=void 0===t.minus?"−":t.minus+"",l=void 0===t.nan?"NaN":t.nan+"";function c(t,c){var f=(t=ey(t)).fill,s=t.align,h=t.sign,y=t.symbol,p=t.zero,v=t.width,d=t.comma,b=t.precision,m=t.trim,g=t.type;"n"===g?(d=!0,g="g"):ay[g]||(void 0===b&&(b=12),m=!0,g="g"),(p||"0"===f&&"="===s)&&(p=!0,f="0",s="=");var w=(c&&void 0!==c.prefix?c.prefix:"")+("$"===y?n:"#"===y&&/[boxX]/.test(g)?"0"+g.toLowerCase():""),x=("$"===y?r:/[%p]/.test(g)?a:"")+(c&&void 0!==c.suffix?c.suffix:""),S=ay[g],O=/[defgprs%]/.test(g);function j(t){var n,r,a,c=w,y=x;if("c"===g)y=S(t)+y,t="";else{var j=(t=+t)<0||1/t<0;if(t=isNaN(t)?l:S(Math.abs(t),b),m&&(t=ry(t)),j&&0===+t&&"+"!==h&&(j=!1),c=(j?"("===h?h:u:"-"===h||"("===h?"":h)+c,y=("s"!==g||isNaN(t)||void 0===Kh?"":fy[8+Kh/3])+y+(j&&"("===h?")":""),O)for(n=-1,r=t.length;++n<r;)if(48>(a=t.charCodeAt(n))||a>57){y=(46===a?o+t.slice(n+1):t.slice(n))+y,t=t.slice(0,n);break}}d&&!p&&(t=e(t,1/0));var P=c.length+t.length+y.length,_=P<v?new Array(v-P+1).join(f):"";switch(d&&p&&(t=e(_+t,_.length?v-y.length:1/0),_=""),s){case"<":t=c+t+y+_;break;case"=":t=c+_+t+y;break;case"^":t=_.slice(0,P=_.length>>1)+c+t+y+_.slice(P);break;default:t=_+c+t+y}return i(t)}return b=void 0===b?6:/[gprs]/.test(g)?Math.max(1,Math.min(21,b)):Math.max(0,Math.min(20,b)),j.toString=function(){return t+""},j}return{format:c,formatPrefix:function(t,e){var n=3*Math.max(-8,Math.min(8,Math.floor(Zh(e)/3))),r=Math.pow(10,-n),o=c(((t=ey(t)).type="f",t),{suffix:fy[8+n/3]});return function(t){return o(r*t)}}}}function hy(t){return(ly=sy(t)).format,ly.formatPrefix,ly}hy({thousands:",",grouping:[3],currency:["$",""]});var yy=Zr.getParameterByName;return hy({decimal:".",thousands:" ",grouping:[3],currency:["","€"]}),e})());
|