CyberChef/modules/Charts.js
2025-04-05 18:13:43 +00:00

2 lines
No EOL
454 KiB
JavaScript
Executable file
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*! For license information please see Charts.js.LICENSE.txt */
(()=>{var t={67526:(t,e)=>{"use strict";e.byteLength=function(t){var e=u(t),n=e[0],r=e[1];return 3*(n+r)/4-r},e.toByteArray=function(t){var e,n,o=u(t),a=o[0],c=o[1],s=new i(function(t,e,n){return 3*(e+n)/4-n}(0,a,c)),f=0,l=c>0?a-4:a;for(n=0;n<l;n+=4)e=r[t.charCodeAt(n)]<<18|r[t.charCodeAt(n+1)]<<12|r[t.charCodeAt(n+2)]<<6|r[t.charCodeAt(n+3)],s[f++]=e>>16&255,s[f++]=e>>8&255,s[f++]=255&e;return 2===c&&(e=r[t.charCodeAt(n)]<<2|r[t.charCodeAt(n+1)]>>4,s[f++]=255&e),1===c&&(e=r[t.charCodeAt(n)]<<10|r[t.charCodeAt(n+1)]<<4|r[t.charCodeAt(n+2)]>>2,s[f++]=e>>8&255,s[f++]=255&e),s},e.fromByteArray=function(t){for(var e,r=t.length,i=r%3,o=[],a=16383,u=0,s=r-i;u<s;u+=a)o.push(c(t,u,u+a>s?s:u+a));return 1===i?(e=t[r-1],o.push(n[e>>2]+n[e<<4&63]+"==")):2===i&&(e=(t[r-2]<<8)+t[r-1],o.push(n[e>>10]+n[e>>4&63]+n[e<<2&63]+"=")),o.join("")};for(var n=[],r=[],i="undefined"!=typeof Uint8Array?Uint8Array:Array,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=0;a<64;++a)n[a]=o[a],r[o.charCodeAt(a)]=a;function u(t){var e=t.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var n=t.indexOf("=");return-1===n&&(n=e),[n,n===e?0:4-n%4]}function c(t,e,r){for(var i,o,a=[],u=e;u<r;u+=3)i=(t[u]<<16&16711680)+(t[u+1]<<8&65280)+(255&t[u+2]),a.push(n[(o=i)>>18&63]+n[o>>12&63]+n[o>>6&63]+n[63&o]);return a.join("")}r["-".charCodeAt(0)]=62,r["_".charCodeAt(0)]=63},48287:(t,e,n)=>{"use strict";const r=n(67526),i=n(251),o="function"==typeof Symbol&&"function"==typeof Symbol.for?Symbol.for("nodejs.util.inspect.custom"):null;e.Buffer=c,e.INSPECT_MAX_BYTES=50;const a=2147483647;function u(t){if(t>a)throw new RangeError('The value "'+t+'" is invalid for option "size"');const e=new Uint8Array(t);return Object.setPrototypeOf(e,c.prototype),e}function c(t,e,n){if("number"==typeof t){if("string"==typeof e)throw new TypeError('The "string" argument must be of type string. Received type number');return l(t)}return s(t,e,n)}function s(t,e,n){if("string"==typeof t)return function(t,e){if("string"==typeof e&&""!==e||(e="utf8"),!c.isEncoding(e))throw new TypeError("Unknown encoding: "+e);const n=0|g(t,e);let r=u(n);const i=r.write(t,e);return i!==n&&(r=r.slice(0,i)),r}(t,e);if(ArrayBuffer.isView(t))return function(t){if(X(t,Uint8Array)){const e=new Uint8Array(t);return d(e.buffer,e.byteOffset,e.byteLength)}return h(t)}(t);if(null==t)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t);if(X(t,ArrayBuffer)||t&&X(t.buffer,ArrayBuffer))return d(t,e,n);if("undefined"!=typeof SharedArrayBuffer&&(X(t,SharedArrayBuffer)||t&&X(t.buffer,SharedArrayBuffer)))return d(t,e,n);if("number"==typeof t)throw new TypeError('The "value" argument must not be of type number. Received type number');const r=t.valueOf&&t.valueOf();if(null!=r&&r!==t)return c.from(r,e,n);const i=function(t){if(c.isBuffer(t)){const e=0|p(t.length),n=u(e);return 0===n.length||t.copy(n,0,0,e),n}return void 0!==t.length?"number"!=typeof t.length||J(t.length)?u(0):h(t):"Buffer"===t.type&&Array.isArray(t.data)?h(t.data):void 0}(t);if(i)return i;if("undefined"!=typeof Symbol&&null!=Symbol.toPrimitive&&"function"==typeof t[Symbol.toPrimitive])return c.from(t[Symbol.toPrimitive]("string"),e,n);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t)}function f(t){if("number"!=typeof t)throw new TypeError('"size" argument must be of type number');if(t<0)throw new RangeError('The value "'+t+'" is invalid for option "size"')}function l(t){return f(t),u(t<0?0:0|p(t))}function h(t){const e=t.length<0?0:0|p(t.length),n=u(e);for(let r=0;r<e;r+=1)n[r]=255&t[r];return n}function d(t,e,n){if(e<0||t.byteLength<e)throw new RangeError('"offset" is outside of buffer bounds');if(t.byteLength<e+(n||0))throw new RangeError('"length" is outside of buffer bounds');let r;return r=void 0===e&&void 0===n?new Uint8Array(t):void 0===n?new Uint8Array(t,e):new Uint8Array(t,e,n),Object.setPrototypeOf(r,c.prototype),r}function p(t){if(t>=a)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+a.toString(16)+" bytes");return 0|t}function g(t,e){if(c.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||X(t,ArrayBuffer))return t.byteLength;if("string"!=typeof t)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof t);const n=t.length,r=arguments.length>2&&!0===arguments[2];if(!r&&0===n)return 0;let i=!1;for(;;)switch(e){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":return G(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return V(t).length;default:if(i)return r?-1:G(t).length;e=(""+e).toLowerCase(),i=!0}}function y(t,e,n){let r=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return S(this,e,n);case"utf8":case"utf-8":return B(this,e,n);case"ascii":return k(this,e,n);case"latin1":case"binary":return F(this,e,n);case"base64":return M(this,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return N(this,e,n);default:if(r)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),r=!0}}function m(t,e,n){const r=t[e];t[e]=t[n],t[n]=r}function v(t,e,n,r,i){if(0===t.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),J(n=+n)&&(n=i?0:t.length-1),n<0&&(n=t.length+n),n>=t.length){if(i)return-1;n=t.length-1}else if(n<0){if(!i)return-1;n=0}if("string"==typeof e&&(e=c.from(e,r)),c.isBuffer(e))return 0===e.length?-1:b(t,e,n,r,i);if("number"==typeof e)return e&=255,"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(t,e,n):Uint8Array.prototype.lastIndexOf.call(t,e,n):b(t,[e],n,r,i);throw new TypeError("val must be string, number or Buffer")}function b(t,e,n,r,i){let o,a=1,u=t.length,c=e.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(t.length<2||e.length<2)return-1;a=2,u/=2,c/=2,n/=2}function s(t,e){return 1===a?t[e]:t.readUInt16BE(e*a)}if(i){let r=-1;for(o=n;o<u;o++)if(s(t,o)===s(e,-1===r?0:o-r)){if(-1===r&&(r=o),o-r+1===c)return r*a}else-1!==r&&(o-=o-r),r=-1}else for(n+c>u&&(n=u-c),o=n;o>=0;o--){let n=!0;for(let r=0;r<c;r++)if(s(t,o+r)!==s(e,r)){n=!1;break}if(n)return o}return-1}function x(t,e,n,r){n=Number(n)||0;const i=t.length-n;r?(r=Number(r))>i&&(r=i):r=i;const o=e.length;let a;for(r>o/2&&(r=o/2),a=0;a<r;++a){const r=parseInt(e.substr(2*a,2),16);if(J(r))return a;t[n+a]=r}return a}function w(t,e,n,r){return W(G(e,t.length-n),t,n,r)}function _(t,e,n,r){return W(function(t){const e=[];for(let n=0;n<t.length;++n)e.push(255&t.charCodeAt(n));return e}(e),t,n,r)}function A(t,e,n,r){return W(V(e),t,n,r)}function E(t,e,n,r){return W(function(t,e){let n,r,i;const o=[];for(let a=0;a<t.length&&!((e-=2)<0);++a)n=t.charCodeAt(a),r=n>>8,i=n%256,o.push(i),o.push(r);return o}(e,t.length-n),t,n,r)}function M(t,e,n){return 0===e&&n===t.length?r.fromByteArray(t):r.fromByteArray(t.slice(e,n))}function B(t,e,n){n=Math.min(t.length,n);const r=[];let i=e;for(;i<n;){const e=t[i];let o=null,a=e>239?4:e>223?3:e>191?2:1;if(i+a<=n){let n,r,u,c;switch(a){case 1:e<128&&(o=e);break;case 2:n=t[i+1],128==(192&n)&&(c=(31&e)<<6|63&n,c>127&&(o=c));break;case 3:n=t[i+1],r=t[i+2],128==(192&n)&&128==(192&r)&&(c=(15&e)<<12|(63&n)<<6|63&r,c>2047&&(c<55296||c>57343)&&(o=c));break;case 4:n=t[i+1],r=t[i+2],u=t[i+3],128==(192&n)&&128==(192&r)&&128==(192&u)&&(c=(15&e)<<18|(63&n)<<12|(63&r)<<6|63&u,c>65535&&c<1114112&&(o=c))}}null===o?(o=65533,a=1):o>65535&&(o-=65536,r.push(o>>>10&1023|55296),o=56320|1023&o),r.push(o),i+=a}return function(t){const e=t.length;if(e<=T)return String.fromCharCode.apply(String,t);let n="",r=0;for(;r<e;)n+=String.fromCharCode.apply(String,t.slice(r,r+=T));return n}(r)}c.TYPED_ARRAY_SUPPORT=function(){try{const t=new Uint8Array(1),e={foo:function(){return 42}};return Object.setPrototypeOf(e,Uint8Array.prototype),Object.setPrototypeOf(t,e),42===t.foo()}catch(t){return!1}}(),c.TYPED_ARRAY_SUPPORT||"undefined"==typeof console||"function"!=typeof console.error||console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support."),Object.defineProperty(c.prototype,"parent",{enumerable:!0,get:function(){if(c.isBuffer(this))return this.buffer}}),Object.defineProperty(c.prototype,"offset",{enumerable:!0,get:function(){if(c.isBuffer(this))return this.byteOffset}}),c.poolSize=8192,c.from=function(t,e,n){return s(t,e,n)},Object.setPrototypeOf(c.prototype,Uint8Array.prototype),Object.setPrototypeOf(c,Uint8Array),c.alloc=function(t,e,n){return function(t,e,n){return f(t),t<=0?u(t):void 0!==e?"string"==typeof n?u(t).fill(e,n):u(t).fill(e):u(t)}(t,e,n)},c.allocUnsafe=function(t){return l(t)},c.allocUnsafeSlow=function(t){return l(t)},c.isBuffer=function(t){return null!=t&&!0===t._isBuffer&&t!==c.prototype},c.compare=function(t,e){if(X(t,Uint8Array)&&(t=c.from(t,t.offset,t.byteLength)),X(e,Uint8Array)&&(e=c.from(e,e.offset,e.byteLength)),!c.isBuffer(t)||!c.isBuffer(e))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(t===e)return 0;let n=t.length,r=e.length;for(let i=0,o=Math.min(n,r);i<o;++i)if(t[i]!==e[i]){n=t[i],r=e[i];break}return n<r?-1:r<n?1:0},c.isEncoding=function(t){switch(String(t).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},c.concat=function(t,e){if(!Array.isArray(t))throw new TypeError('"list" argument must be an Array of Buffers');if(0===t.length)return c.alloc(0);let n;if(void 0===e)for(e=0,n=0;n<t.length;++n)e+=t[n].length;const r=c.allocUnsafe(e);let i=0;for(n=0;n<t.length;++n){let e=t[n];if(X(e,Uint8Array))i+e.length>r.length?(c.isBuffer(e)||(e=c.from(e)),e.copy(r,i)):Uint8Array.prototype.set.call(r,e,i);else{if(!c.isBuffer(e))throw new TypeError('"list" argument must be an Array of Buffers');e.copy(r,i)}i+=e.length}return r},c.byteLength=g,c.prototype._isBuffer=!0,c.prototype.swap16=function(){const t=this.length;if(t%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let e=0;e<t;e+=2)m(this,e,e+1);return this},c.prototype.swap32=function(){const t=this.length;if(t%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(let e=0;e<t;e+=4)m(this,e,e+3),m(this,e+1,e+2);return this},c.prototype.swap64=function(){const t=this.length;if(t%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(let e=0;e<t;e+=8)m(this,e,e+7),m(this,e+1,e+6),m(this,e+2,e+5),m(this,e+3,e+4);return this},c.prototype.toString=function(){const t=this.length;return 0===t?"":0===arguments.length?B(this,0,t):y.apply(this,arguments)},c.prototype.toLocaleString=c.prototype.toString,c.prototype.equals=function(t){if(!c.isBuffer(t))throw new TypeError("Argument must be a Buffer");return this===t||0===c.compare(this,t)},c.prototype.inspect=function(){let t="";const n=e.INSPECT_MAX_BYTES;return t=this.toString("hex",0,n).replace(/(.{2})/g,"$1 ").trim(),this.length>n&&(t+=" ... "),"<Buffer "+t+">"},o&&(c.prototype[o]=c.prototype.inspect),c.prototype.compare=function(t,e,n,r,i){if(X(t,Uint8Array)&&(t=c.from(t,t.offset,t.byteLength)),!c.isBuffer(t))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof t);if(void 0===e&&(e=0),void 0===n&&(n=t?t.length:0),void 0===r&&(r=0),void 0===i&&(i=this.length),e<0||n>t.length||r<0||i>this.length)throw new RangeError("out of range index");if(r>=i&&e>=n)return 0;if(r>=i)return-1;if(e>=n)return 1;if(this===t)return 0;let o=(i>>>=0)-(r>>>=0),a=(n>>>=0)-(e>>>=0);const u=Math.min(o,a),s=this.slice(r,i),f=t.slice(e,n);for(let t=0;t<u;++t)if(s[t]!==f[t]){o=s[t],a=f[t];break}return o<a?-1:a<o?1:0},c.prototype.includes=function(t,e,n){return-1!==this.indexOf(t,e,n)},c.prototype.indexOf=function(t,e,n){return v(this,t,e,n,!0)},c.prototype.lastIndexOf=function(t,e,n){return v(this,t,e,n,!1)},c.prototype.write=function(t,e,n,r){if(void 0===e)r="utf8",n=this.length,e=0;else if(void 0===n&&"string"==typeof e)r=e,n=this.length,e=0;else{if(!isFinite(e))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");e>>>=0,isFinite(n)?(n>>>=0,void 0===r&&(r="utf8")):(r=n,n=void 0)}const i=this.length-e;if((void 0===n||n>i)&&(n=i),t.length>0&&(n<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");let o=!1;for(;;)switch(r){case"hex":return x(this,t,e,n);case"utf8":case"utf-8":return w(this,t,e,n);case"ascii":case"latin1":case"binary":return _(this,t,e,n);case"base64":return A(this,t,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return E(this,t,e,n);default:if(o)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),o=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};const T=4096;function k(t,e,n){let r="";n=Math.min(t.length,n);for(let i=e;i<n;++i)r+=String.fromCharCode(127&t[i]);return r}function F(t,e,n){let r="";n=Math.min(t.length,n);for(let i=e;i<n;++i)r+=String.fromCharCode(t[i]);return r}function S(t,e,n){const r=t.length;(!e||e<0)&&(e=0),(!n||n<0||n>r)&&(n=r);let i="";for(let r=e;r<n;++r)i+=Z[t[r]];return i}function N(t,e,n){const r=t.slice(e,n);let i="";for(let t=0;t<r.length-1;t+=2)i+=String.fromCharCode(r[t]+256*r[t+1]);return i}function C(t,e,n){if(t%1!=0||t<0)throw new RangeError("offset is not uint");if(t+e>n)throw new RangeError("Trying to access beyond buffer length")}function I(t,e,n,r,i,o){if(!c.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>i||e<o)throw new RangeError('"value" argument is out of bounds');if(n+r>t.length)throw new RangeError("Index out of range")}function R(t,e,n,r,i){z(e,r,i,t,n,7);let o=Number(e&BigInt(4294967295));t[n++]=o,o>>=8,t[n++]=o,o>>=8,t[n++]=o,o>>=8,t[n++]=o;let a=Number(e>>BigInt(32)&BigInt(4294967295));return t[n++]=a,a>>=8,t[n++]=a,a>>=8,t[n++]=a,a>>=8,t[n++]=a,n}function O(t,e,n,r,i){z(e,r,i,t,n,7);let o=Number(e&BigInt(4294967295));t[n+7]=o,o>>=8,t[n+6]=o,o>>=8,t[n+5]=o,o>>=8,t[n+4]=o;let a=Number(e>>BigInt(32)&BigInt(4294967295));return t[n+3]=a,a>>=8,t[n+2]=a,a>>=8,t[n+1]=a,a>>=8,t[n]=a,n+8}function P(t,e,n,r,i,o){if(n+r>t.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function D(t,e,n,r,o){return e=+e,n>>>=0,o||P(t,0,n,4),i.write(t,e,n,r,23,4),n+4}function L(t,e,n,r,o){return e=+e,n>>>=0,o||P(t,0,n,8),i.write(t,e,n,r,52,8),n+8}c.prototype.slice=function(t,e){const n=this.length;(t=~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),(e=void 0===e?n:~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),e<t&&(e=t);const r=this.subarray(t,e);return Object.setPrototypeOf(r,c.prototype),r},c.prototype.readUintLE=c.prototype.readUIntLE=function(t,e,n){t>>>=0,e>>>=0,n||C(t,e,this.length);let r=this[t],i=1,o=0;for(;++o<e&&(i*=256);)r+=this[t+o]*i;return r},c.prototype.readUintBE=c.prototype.readUIntBE=function(t,e,n){t>>>=0,e>>>=0,n||C(t,e,this.length);let r=this[t+--e],i=1;for(;e>0&&(i*=256);)r+=this[t+--e]*i;return r},c.prototype.readUint8=c.prototype.readUInt8=function(t,e){return t>>>=0,e||C(t,1,this.length),this[t]},c.prototype.readUint16LE=c.prototype.readUInt16LE=function(t,e){return t>>>=0,e||C(t,2,this.length),this[t]|this[t+1]<<8},c.prototype.readUint16BE=c.prototype.readUInt16BE=function(t,e){return t>>>=0,e||C(t,2,this.length),this[t]<<8|this[t+1]},c.prototype.readUint32LE=c.prototype.readUInt32LE=function(t,e){return t>>>=0,e||C(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},c.prototype.readUint32BE=c.prototype.readUInt32BE=function(t,e){return t>>>=0,e||C(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},c.prototype.readBigUInt64LE=K((function(t){H(t>>>=0,"offset");const e=this[t],n=this[t+7];void 0!==e&&void 0!==n||q(t,this.length-8);const r=e+256*this[++t]+65536*this[++t]+this[++t]*2**24,i=this[++t]+256*this[++t]+65536*this[++t]+n*2**24;return BigInt(r)+(BigInt(i)<<BigInt(32))})),c.prototype.readBigUInt64BE=K((function(t){H(t>>>=0,"offset");const e=this[t],n=this[t+7];void 0!==e&&void 0!==n||q(t,this.length-8);const r=e*2**24+65536*this[++t]+256*this[++t]+this[++t],i=this[++t]*2**24+65536*this[++t]+256*this[++t]+n;return(BigInt(r)<<BigInt(32))+BigInt(i)})),c.prototype.readIntLE=function(t,e,n){t>>>=0,e>>>=0,n||C(t,e,this.length);let r=this[t],i=1,o=0;for(;++o<e&&(i*=256);)r+=this[t+o]*i;return i*=128,r>=i&&(r-=Math.pow(2,8*e)),r},c.prototype.readIntBE=function(t,e,n){t>>>=0,e>>>=0,n||C(t,e,this.length);let r=e,i=1,o=this[t+--r];for(;r>0&&(i*=256);)o+=this[t+--r]*i;return i*=128,o>=i&&(o-=Math.pow(2,8*e)),o},c.prototype.readInt8=function(t,e){return t>>>=0,e||C(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},c.prototype.readInt16LE=function(t,e){t>>>=0,e||C(t,2,this.length);const n=this[t]|this[t+1]<<8;return 32768&n?4294901760|n:n},c.prototype.readInt16BE=function(t,e){t>>>=0,e||C(t,2,this.length);const n=this[t+1]|this[t]<<8;return 32768&n?4294901760|n:n},c.prototype.readInt32LE=function(t,e){return t>>>=0,e||C(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},c.prototype.readInt32BE=function(t,e){return t>>>=0,e||C(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},c.prototype.readBigInt64LE=K((function(t){H(t>>>=0,"offset");const e=this[t],n=this[t+7];void 0!==e&&void 0!==n||q(t,this.length-8);const r=this[t+4]+256*this[t+5]+65536*this[t+6]+(n<<24);return(BigInt(r)<<BigInt(32))+BigInt(e+256*this[++t]+65536*this[++t]+this[++t]*2**24)})),c.prototype.readBigInt64BE=K((function(t){H(t>>>=0,"offset");const e=this[t],n=this[t+7];void 0!==e&&void 0!==n||q(t,this.length-8);const r=(e<<24)+65536*this[++t]+256*this[++t]+this[++t];return(BigInt(r)<<BigInt(32))+BigInt(this[++t]*2**24+65536*this[++t]+256*this[++t]+n)})),c.prototype.readFloatLE=function(t,e){return t>>>=0,e||C(t,4,this.length),i.read(this,t,!0,23,4)},c.prototype.readFloatBE=function(t,e){return t>>>=0,e||C(t,4,this.length),i.read(this,t,!1,23,4)},c.prototype.readDoubleLE=function(t,e){return t>>>=0,e||C(t,8,this.length),i.read(this,t,!0,52,8)},c.prototype.readDoubleBE=function(t,e){return t>>>=0,e||C(t,8,this.length),i.read(this,t,!1,52,8)},c.prototype.writeUintLE=c.prototype.writeUIntLE=function(t,e,n,r){t=+t,e>>>=0,n>>>=0,r||I(this,t,e,n,Math.pow(2,8*n)-1,0);let i=1,o=0;for(this[e]=255&t;++o<n&&(i*=256);)this[e+o]=t/i&255;return e+n},c.prototype.writeUintBE=c.prototype.writeUIntBE=function(t,e,n,r){t=+t,e>>>=0,n>>>=0,r||I(this,t,e,n,Math.pow(2,8*n)-1,0);let i=n-1,o=1;for(this[e+i]=255&t;--i>=0&&(o*=256);)this[e+i]=t/o&255;return e+n},c.prototype.writeUint8=c.prototype.writeUInt8=function(t,e,n){return t=+t,e>>>=0,n||I(this,t,e,1,255,0),this[e]=255&t,e+1},c.prototype.writeUint16LE=c.prototype.writeUInt16LE=function(t,e,n){return t=+t,e>>>=0,n||I(this,t,e,2,65535,0),this[e]=255&t,this[e+1]=t>>>8,e+2},c.prototype.writeUint16BE=c.prototype.writeUInt16BE=function(t,e,n){return t=+t,e>>>=0,n||I(this,t,e,2,65535,0),this[e]=t>>>8,this[e+1]=255&t,e+2},c.prototype.writeUint32LE=c.prototype.writeUInt32LE=function(t,e,n){return t=+t,e>>>=0,n||I(this,t,e,4,4294967295,0),this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t,e+4},c.prototype.writeUint32BE=c.prototype.writeUInt32BE=function(t,e,n){return t=+t,e>>>=0,n||I(this,t,e,4,4294967295,0),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},c.prototype.writeBigUInt64LE=K((function(t,e=0){return R(this,t,e,BigInt(0),BigInt("0xffffffffffffffff"))})),c.prototype.writeBigUInt64BE=K((function(t,e=0){return O(this,t,e,BigInt(0),BigInt("0xffffffffffffffff"))})),c.prototype.writeIntLE=function(t,e,n,r){if(t=+t,e>>>=0,!r){const r=Math.pow(2,8*n-1);I(this,t,e,n,r-1,-r)}let i=0,o=1,a=0;for(this[e]=255&t;++i<n&&(o*=256);)t<0&&0===a&&0!==this[e+i-1]&&(a=1),this[e+i]=(t/o|0)-a&255;return e+n},c.prototype.writeIntBE=function(t,e,n,r){if(t=+t,e>>>=0,!r){const r=Math.pow(2,8*n-1);I(this,t,e,n,r-1,-r)}let i=n-1,o=1,a=0;for(this[e+i]=255&t;--i>=0&&(o*=256);)t<0&&0===a&&0!==this[e+i+1]&&(a=1),this[e+i]=(t/o|0)-a&255;return e+n},c.prototype.writeInt8=function(t,e,n){return t=+t,e>>>=0,n||I(this,t,e,1,127,-128),t<0&&(t=255+t+1),this[e]=255&t,e+1},c.prototype.writeInt16LE=function(t,e,n){return t=+t,e>>>=0,n||I(this,t,e,2,32767,-32768),this[e]=255&t,this[e+1]=t>>>8,e+2},c.prototype.writeInt16BE=function(t,e,n){return t=+t,e>>>=0,n||I(this,t,e,2,32767,-32768),this[e]=t>>>8,this[e+1]=255&t,e+2},c.prototype.writeInt32LE=function(t,e,n){return t=+t,e>>>=0,n||I(this,t,e,4,2147483647,-2147483648),this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24,e+4},c.prototype.writeInt32BE=function(t,e,n){return t=+t,e>>>=0,n||I(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},c.prototype.writeBigInt64LE=K((function(t,e=0){return R(this,t,e,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),c.prototype.writeBigInt64BE=K((function(t,e=0){return O(this,t,e,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),c.prototype.writeFloatLE=function(t,e,n){return D(this,t,e,!0,n)},c.prototype.writeFloatBE=function(t,e,n){return D(this,t,e,!1,n)},c.prototype.writeDoubleLE=function(t,e,n){return L(this,t,e,!0,n)},c.prototype.writeDoubleBE=function(t,e,n){return L(this,t,e,!1,n)},c.prototype.copy=function(t,e,n,r){if(!c.isBuffer(t))throw new TypeError("argument should be a Buffer");if(n||(n=0),r||0===r||(r=this.length),e>=t.length&&(e=t.length),e||(e=0),r>0&&r<n&&(r=n),r===n)return 0;if(0===t.length||0===this.length)return 0;if(e<0)throw new RangeError("targetStart out of bounds");if(n<0||n>=this.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),t.length-e<r-n&&(r=t.length-e+n);const i=r-n;return this===t&&"function"==typeof Uint8Array.prototype.copyWithin?this.copyWithin(e,n,r):Uint8Array.prototype.set.call(t,this.subarray(n,r),e),i},c.prototype.fill=function(t,e,n,r){if("string"==typeof t){if("string"==typeof e?(r=e,e=0,n=this.length):"string"==typeof n&&(r=n,n=this.length),void 0!==r&&"string"!=typeof r)throw new TypeError("encoding must be a string");if("string"==typeof r&&!c.isEncoding(r))throw new TypeError("Unknown encoding: "+r);if(1===t.length){const e=t.charCodeAt(0);("utf8"===r&&e<128||"latin1"===r)&&(t=e)}}else"number"==typeof t?t&=255:"boolean"==typeof t&&(t=Number(t));if(e<0||this.length<e||this.length<n)throw new RangeError("Out of range index");if(n<=e)return this;let i;if(e>>>=0,n=void 0===n?this.length:n>>>0,t||(t=0),"number"==typeof t)for(i=e;i<n;++i)this[i]=t;else{const o=c.isBuffer(t)?t:c.from(t,r),a=o.length;if(0===a)throw new TypeError('The value "'+t+'" is invalid for argument "value"');for(i=0;i<n-e;++i)this[i+e]=o[i%a]}return this};const U={};function $(t,e,n){U[t]=class extends n{constructor(){super(),Object.defineProperty(this,"message",{value:e.apply(this,arguments),writable:!0,configurable:!0}),this.name=`${this.name} [${t}]`,this.stack,delete this.name}get code(){return t}set code(t){Object.defineProperty(this,"code",{configurable:!0,enumerable:!0,value:t,writable:!0})}toString(){return`${this.name} [${t}]: ${this.message}`}}}function j(t){let e="",n=t.length;const r="-"===t[0]?1:0;for(;n>=r+4;n-=3)e=`_${t.slice(n-3,n)}${e}`;return`${t.slice(0,n)}${e}`}function z(t,e,n,r,i,o){if(t>n||t<e){const r="bigint"==typeof e?"n":"";let i;throw i=o>3?0===e||e===BigInt(0)?`>= 0${r} and < 2${r} ** ${8*(o+1)}${r}`:`>= -(2${r} ** ${8*(o+1)-1}${r}) and < 2 ** ${8*(o+1)-1}${r}`:`>= ${e}${r} and <= ${n}${r}`,new U.ERR_OUT_OF_RANGE("value",i,t)}!function(t,e,n){H(e,"offset"),void 0!==t[e]&&void 0!==t[e+n]||q(e,t.length-(n+1))}(r,i,o)}function H(t,e){if("number"!=typeof t)throw new U.ERR_INVALID_ARG_TYPE(e,"number",t)}function q(t,e,n){if(Math.floor(t)!==t)throw H(t,n),new U.ERR_OUT_OF_RANGE(n||"offset","an integer",t);if(e<0)throw new U.ERR_BUFFER_OUT_OF_BOUNDS;throw new U.ERR_OUT_OF_RANGE(n||"offset",`>= ${n?1:0} and <= ${e}`,t)}$("ERR_BUFFER_OUT_OF_BOUNDS",(function(t){return t?`${t} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"}),RangeError),$("ERR_INVALID_ARG_TYPE",(function(t,e){return`The "${t}" argument must be of type number. Received type ${typeof e}`}),TypeError),$("ERR_OUT_OF_RANGE",(function(t,e,n){let r=`The value of "${t}" is out of range.`,i=n;return Number.isInteger(n)&&Math.abs(n)>2**32?i=j(String(n)):"bigint"==typeof n&&(i=String(n),(n>BigInt(2)**BigInt(32)||n<-(BigInt(2)**BigInt(32)))&&(i=j(i)),i+="n"),r+=` It must be ${e}. Received ${i}`,r}),RangeError);const Y=/[^+/0-9A-Za-z-_]/g;function G(t,e){let n;e=e||1/0;const r=t.length;let i=null;const o=[];for(let a=0;a<r;++a){if(n=t.charCodeAt(a),n>55295&&n<57344){if(!i){if(n>56319){(e-=3)>-1&&o.push(239,191,189);continue}if(a+1===r){(e-=3)>-1&&o.push(239,191,189);continue}i=n;continue}if(n<56320){(e-=3)>-1&&o.push(239,191,189),i=n;continue}n=65536+(i-55296<<10|n-56320)}else i&&(e-=3)>-1&&o.push(239,191,189);if(i=null,n<128){if((e-=1)<0)break;o.push(n)}else if(n<2048){if((e-=2)<0)break;o.push(n>>6|192,63&n|128)}else if(n<65536){if((e-=3)<0)break;o.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;o.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return o}function V(t){return r.toByteArray(function(t){if((t=(t=t.split("=")[0]).trim().replace(Y,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(t))}function W(t,e,n,r){let i;for(i=0;i<r&&!(i+n>=e.length||i>=t.length);++i)e[i+n]=t[i];return i}function X(t,e){return t instanceof e||null!=t&&null!=t.constructor&&null!=t.constructor.name&&t.constructor.name===e.name}function J(t){return t!=t}const Z=function(){const t="0123456789abcdef",e=new Array(256);for(let n=0;n<16;++n){const r=16*n;for(let i=0;i<16;++i)e[r+i]=t[n]+t[i]}return e}();function K(t){return"undefined"==typeof BigInt?Q:t}function Q(){throw new Error("BigInt not supported")}},251:(t,e)=>{e.read=function(t,e,n,r,i){var o,a,u=8*i-r-1,c=(1<<u)-1,s=c>>1,f=-7,l=n?i-1:0,h=n?-1:1,d=t[e+l];for(l+=h,o=d&(1<<-f)-1,d>>=-f,f+=u;f>0;o=256*o+t[e+l],l+=h,f-=8);for(a=o&(1<<-f)-1,o>>=-f,f+=r;f>0;a=256*a+t[e+l],l+=h,f-=8);if(0===o)o=1-s;else{if(o===c)return a?NaN:1/0*(d?-1:1);a+=Math.pow(2,r),o-=s}return(d?-1:1)*a*Math.pow(2,o-r)},e.write=function(t,e,n,r,i,o){var a,u,c,s=8*o-i-1,f=(1<<s)-1,l=f>>1,h=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,d=r?0:o-1,p=r?1:-1,g=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(u=isNaN(e)?1:0,a=f):(a=Math.floor(Math.log(e)/Math.LN2),e*(c=Math.pow(2,-a))<1&&(a--,c*=2),(e+=a+l>=1?h/c:h*Math.pow(2,1-l))*c>=2&&(a++,c/=2),a+l>=f?(u=0,a=f):a+l>=1?(u=(e*c-1)*Math.pow(2,i),a+=l):(u=e*Math.pow(2,l-1)*Math.pow(2,i),a=0));i>=8;t[n+d]=255&u,d+=p,u/=256,i-=8);for(a=a<<i|u,s+=i;s>0;t[n+d]=255&a,d+=p,a/=256,s-=8);t[n+d-p]|=128*g}},73065:function(t,e,n){var r,i;!function(){"use strict";r=function(){var t=function(){},e="undefined",n=typeof window!==e&&typeof window.navigator!==e&&/Trident\/|MSIE /.test(window.navigator.userAgent),r=["trace","debug","info","warn","error"],i={},o=null;function a(t,e){var n=t[e];if("function"==typeof n.bind)return n.bind(t);try{return Function.prototype.bind.call(n,t)}catch(e){return function(){return Function.prototype.apply.apply(n,[t,arguments])}}}function u(){console.log&&(console.log.apply?console.log.apply(console,arguments):Function.prototype.apply.apply(console.log,[console,arguments])),console.trace&&console.trace()}function c(){for(var n=this.getLevel(),i=0;i<r.length;i++){var o=r[i];this[o]=i<n?t:this.methodFactory(o,n,this.name)}if(this.log=this.debug,typeof console===e&&n<this.levels.SILENT)return"No console available for logging"}function s(t){return function(){typeof console!==e&&(c.call(this),this[t].apply(this,arguments))}}function f(r,i,o){return function(r){return"debug"===r&&(r="log"),typeof console!==e&&("trace"===r&&n?u:void 0!==console[r]?a(console,r):void 0!==console.log?a(console,"log"):t)}(r)||s.apply(this,arguments)}function l(t,n){var a,u,s,l=this,h="loglevel";function d(){var t;if(typeof window!==e&&h){try{t=window.localStorage[h]}catch(t){}if(typeof t===e)try{var n=window.document.cookie,r=encodeURIComponent(h),i=n.indexOf(r+"=");-1!==i&&(t=/^([^;]+)/.exec(n.slice(i+r.length+1))[1])}catch(t){}return void 0===l.levels[t]&&(t=void 0),t}}function p(t){var e=t;if("string"==typeof e&&void 0!==l.levels[e.toUpperCase()]&&(e=l.levels[e.toUpperCase()]),"number"==typeof e&&e>=0&&e<=l.levels.SILENT)return e;throw new TypeError("log.setLevel() called with invalid level: "+t)}"string"==typeof t?h+=":"+t:"symbol"==typeof t&&(h=void 0),l.name=t,l.levels={TRACE:0,DEBUG:1,INFO:2,WARN:3,ERROR:4,SILENT:5},l.methodFactory=n||f,l.getLevel=function(){return null!=s?s:null!=u?u:a},l.setLevel=function(t,n){return s=p(t),!1!==n&&function(t){var n=(r[t]||"silent").toUpperCase();if(typeof window!==e&&h){try{return void(window.localStorage[h]=n)}catch(t){}try{window.document.cookie=encodeURIComponent(h)+"="+n+";"}catch(t){}}}(s),c.call(l)},l.setDefaultLevel=function(t){u=p(t),d()||l.setLevel(t,!1)},l.resetLevel=function(){s=null,function(){if(typeof window!==e&&h){try{window.localStorage.removeItem(h)}catch(t){}try{window.document.cookie=encodeURIComponent(h)+"=; expires=Thu, 01 Jan 1970 00:00:00 UTC"}catch(t){}}}(),c.call(l)},l.enableAll=function(t){l.setLevel(l.levels.TRACE,t)},l.disableAll=function(t){l.setLevel(l.levels.SILENT,t)},l.rebuild=function(){if(o!==l&&(a=p(o.getLevel())),c.call(l),o===l)for(var t in i)i[t].rebuild()},a=p(o?o.getLevel():"WARN");var g=d();null!=g&&(s=p(g)),c.call(l)}(o=new l).getLogger=function(t){if("symbol"!=typeof t&&"string"!=typeof t||""===t)throw new TypeError("You must supply a name when creating a logger.");var e=i[t];return e||(e=i[t]=new l(t,o.methodFactory)),e};var h=typeof window!==e?window.log:void 0;return o.noConflict=function(){return typeof window!==e&&window.log===o&&(window.log=h),o},o.getLoggers=function(){return i},o.default=o,o},void 0===(i=r.call(e,n,e,t))||(t.exports=i)}()},78194:function(t,e){!function(t){"use strict";function e(t){this.reset(t.className)}function n(){this.childNodes=[]}e.prototype=[],e.prototype.reset=function(t){var e=(t||"").split(" ");this.length=e.length;for(var n=0;n<e.length;n++)this[n]=e[n]},e.prototype.add=function(t){this.contains(t)||this.push(t)},e.prototype.contains=function(t){for(var e=0;e<this.length;e++)if(this[e]===t)return!0;return!1},e.prototype.item=function(t){return this[t]||null},e.prototype.remove=function(t){for(var e=this.classNames,n=0;n<this.length;n++)e[n]===t&&this.splice(n,1)},e.prototype.toggle=function(t){var e=this.indexOf(t);return e>=0?(this.splice(e,1),!1):(this.push(t),!0)},e.prototype.toString=function(){return this.join(" ").trim()},n.prototype.cloneNode=function(t){if(!t||"childNodes"in this&&Array.isArray(this.childNodes)&&0===this.childNodes.length)return new(Object.getPrototypeOf(this).constructor)(this);var e=new(Object.getPrototypeOf(this).constructor)(this),n=[];return this.childNodes.map((function(t){return n.push(t.cloneNode(!0))})),e.childNodes=n,e},Object.defineProperty(n.prototype,"nodeValue",{get:function(){return null}}),Object.defineProperty(n.prototype,"children",{get:function(){return this.childNodes}}),Object.defineProperty(n.prototype,"firstChild",{get:function(){return this.childNodes[0]||null}}),Object.defineProperty(n.prototype,"lastChild",{get:function(){return this.childNodes[this.childNodes.length-1]||null}}),Object.defineProperty(n.prototype,"nodeName",{get:function(){return this.tagName}});var r={"&":"&amp;","<":"&lt;",">":"&gt;"};function i(t){n.apply(this),this.nodeType=3,this.textContent=String(t)}i.prototype=Object.create(n.prototype),i.prototype.constructor=i,i.prototype.render=function(){return(this.textContent||"").replace(/[&<>]/g,(function(t){return r[t]}))},Object.defineProperty(i.prototype,"nodeValue",{get:function(){return this.textContent}});var o,a=new RegExp("\\s*([ >+~])\\s*","g"),u=new RegExp("(^|[ >+~])([^ >+~]+)","ig"),c=new RegExp("#[^. >+~]+","g"),s=new RegExp("^(?:[ >+~])?([^#. >+~\\[\\]]+)"),f=new RegExp("\\.[^. >+~]+","g"),l=function(t){return null!=t?t[0]:null},h=function(t){return t.substr(1)},d=function(t){return null!=t?h(t):null},p=(o=h,function(t){return Array.isArray(t)?t.map(o):null});function g(t){return null==t||0===t.length?null:t.replace(a,"$1").match(u).map((function(t,e){return{tagName:(n=t.match(s),(Array.isArray(n)&&n.length>1?n[1]:null)||"").toLowerCase(),id:d(l(t.match(c))),classNames:p(t.match(f)),relation:e>0?t[0]:null};var n})).reverse()}function y(t,e){return!(null==t||e.tagName&&t.tagName!==e.tagName||e.id&&t.id!==e.id||e.classNames&&!e.classNames.every((function(e){return t.classList.contains(e)})))}function m(t,e){for(var n=t,r=function(t){switch(e[t-1].relation){case" ":do{n=n.parentNode}while(null!=n&&!y(n,e[t]));break;case">":if(!y(n.parentNode,e[t]))return{v:!1};break;case"+":if(!y(n.parentNode.childNodes.find((function(t){return t.nextSibling===n})),e[t]))return{v:!1};break;case"~":if(!n.parentNode.childNodes.slice(0,n.parentNode.childNodes.indexOf(n)).some((function(n){return y(n,e[t])})))return{v:!1}}},i=1;i<e.length;i++){var o=r(i);if(o)return o.v}return null!=n}function v(t,e,n){var r=g(t);if(null==r)return[];for(var i=e.getElementsByTagName(r[0].tagName||"*"),o=[],a=0;a<i.length&&!(y(i[a],r[0])&&m(i[a],r)&&(o.push(i[a]),null!=n&&o.length>=n));a++);return o}function b(t,e){return v(t,e,1)[0]||null}function x(){}function w(t,e){return Object.prototype.hasOwnProperty.call(t,e)}function _(t){var e=[],n=t.split("");n.map((function(t,n){"-"===t&&e.push(n)}));var r=t.split("");return e.map((function(t,e){var i=n[t+1].toUpperCase();r.splice(t-e,2,i)})),r.join("")}function A(t){var e=[],n=t.split("");n.map((function(t,n){/^[A-Z]/.test(t)&&e.push(n)}));var r=t.split("");return e.map((function(t){r.splice(t,1,"-"+n[t].toLowerCase())})),r.join("")}function E(){}function M(){}x.prototype={},E.prototype=Object.create({}),E.prototype.getPropertyPriority=function(t){return""},E.prototype.getPropertyValue=function(t){return w(this,t=_(t))?this[t]:""},E.prototype.setProperty=function(t,e){this[_(t)]=e},E.prototype.removeProperty=function(t){var e=this.getPropertyValue(t);return e&&delete this[_(t)],e},E.prototype.valueOf=function(){return this},E.prototype.toString=function(){var t="";for(var e in this)w(this,e)&&(t+=A(e)+": "+this[e]+"; ");return t},E.prototype.setValue=function(t){var e=t.split(";");for(var n in e){var r=n.split(":");this[r[0].trim()]=r[1].trim()}},Object.defineProperty(E.prototype,"cssText",{get:function(){return this.toString()},set:function(t){this.setValue(t)},enumerable:!0}),M.prototype={};var B="area base br col command embed hr img input keygen link meta param source track wbr".split(" ").reduce((function(t,e){return t[e]=!0,t}),{});function T(t){for(var e in n.apply(this),this.attributes=new x,this.style=new E,this.dataset=new M,this.nodeType=1,t)this[e]=t[e];this.tagName||(this.tagName="div"),this.tagName=this.tagName.toLowerCase(),Object.defineProperty(this,"isVoidEl",{value:B[this.tagName]})}var k=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(T);T.prototype=Object.create(n.prototype),T.prototype.constructor=T;var F=function(){};"blur click focus".split(" ").forEach((function(t){return T.prototype[t]=F}));var S="tagName view nodeType isVoidEl parent parentNode childNodes isMounted".split(" ").reduce((function(t,e){return t[e]=!0,t}),{});function N(t){return t.render()}function C(){this.documentElement=this.createElement("html"),this.head=this.documentElement.appendChild(this.createElement("head")),this.body=this.documentElement.appendChild(this.createElement("body")),this.nodeType=9}T.prototype.render=function(t){var e=this,n=this.isVoidEl,r=[],i=!1,o="";for(var a in this)if("isMounted"!==a&&"style"!==a&&"attributes"!==a&&"dataset"!==a&&"_classList"!==a&&w(this,a))if(S[a])this.childNodes.length&&(i=!0);else if("_innerHTML"===a)o=this._innerHTML;else if(!S[a]){if(a in this.attributes)continue;if("function"==typeof this[a])continue;var u=void 0;switch(typeof this[a]){case"string":case"number":u='"'+this[a]+'"';break;default:u="'"+JSON.stringify(this[a])+"'"}r.push(a+"="+u)}this.className&&r.push('class="'+this.className+'"');var c=this.style.cssText;c.length>0&&r.push('style="'+c+'"');var s=Object.keys(this.attributes);if(s.length>0&&s.filter((function(t){return"style"!==t&&"_classList"!==t})).map((function(t){return r.push(t+'="'+e.attributes[t]+'"')})),t)return!n&&i?this.childNodes.map(N).join(""):!n&&o?o:"";if(!n&&i){var f=this.tagName;return"<"+[f].concat(r).join(" ")+">"+this.childNodes.map(N).join("")+"</"+f+">"}if(!n&&o){var l=this.tagName;return"<"+[this.tagName].concat(r).join(" ")+">"+o+"</"+l+">"}var h=[this.tagName].concat(r).join(" ");return n?"<"+h+">":"<"+h+"></"+this.tagName+">"},T.prototype.addEventListener=function(){},T.prototype.removeEventListener=function(){},T.prototype.setAttribute=function(t,e){var n=this;if("class"===t)return this.classList.splice(0,this.classList.length),void e.split(" ").forEach((function(t){return n.classList.add(t)}));var r,i,o=t;/^data-/.test(t)?(o=_(t),this.dataset[o]=e,Object.defineProperty(this,o,{get:(r=this,i=o,function(){return r.dataset[i]}),enumerable:!1,configurable:!0})):w(this,o)||Object.defineProperty(this,o,{get:function(t,e){return function(){return t.attributes[e]}}(this,o),enumerable:!0,configurable:!0}),this.attributes[t]=e},T.prototype.getAttribute=function(t){return this.attributes[t]||this[t]||null},T.prototype.removeAttribute=function(t){"class"!==t?(/^data-/.test(t)&&delete this.dataset[_(t)],w(this.attributes,t)&&(delete this.attributes[t],delete this[t])):this.classList.reset()},T.prototype.appendChild=function(t){if(this.isVoidEl)return t;t.parentNode=this;for(var e=0;e<this.childNodes.length;e++)this.childNodes[e]===t&&this.childNodes.splice(e,1);return this.childNodes.push(t),t},T.prototype.insertBefore=function(t,e){var n=this;if(this.isVoidEl)return t;if(t.parentNode=this,null==e)n.childNodes.push(t);else for(var r=0;r<this.childNodes.length;r++)n.childNodes[r]===e?n.childNodes.splice(r++,0,t):n.childNodes[r]===t&&n.childNodes.splice(r,1);return t},T.prototype.replaceChild=function(t,e){if(this.isVoidEl)return e;t.parentNode=this;for(var n=0;n<this.childNodes.length;n++)this.childNodes[n]===e&&(this.childNodes[n]=t);return e},T.prototype.removeChild=function(t){if(this.isVoidEl)return t;t.parentNode=null;for(var e=0;e<this.childNodes.length;e++)this.childNodes[e]===t&&this.childNodes.splice(e,1);return t},T.prototype.getElementsByTagName=function(t){var e=t.toLowerCase();return this.isVoidEl||0===this.childNodes.length?[]:this.childNodes.reduce((function(t,n){return n.getElementsByTagName?"*"===e||n.tagName===e?t.concat(n,n.getElementsByTagName(e)):t.concat(n.getElementsByTagName(e)):t}),[])},T.prototype.getElementsByClassName=function(t){return Array.isArray(t)?0===t.length?[]:this.childNodes.reduce((function(e,n){return t.every((function(t){return n.classList.contains(t)}))?e.concat(n,n.getElementsByClassName(t)):e.concat(n.getElementsByClassName(t))}),[]):this.getElementsByClassName(String(t).split(" ").map((function(t){return t.trim()})).filter((function(t){return t.length>0})))},T.prototype.querySelector=function(t){return b(t,this)},T.prototype.querySelectorAll=function(t){return v(t,this)},T.prototype.matches=function(t){var e=g(t);return!(null==e||e.length>1)&&y(this,e[0])},Object.defineProperties(T.prototype,{_classList:{value:null,enumerable:!1,configurable:!1,writable:!0},classList:{get:function(){return this._classList||(this._classList=new e(this)),this._classList}},className:{set:function(t){this.classList.reset(t)},get:function(){return null==this._classList?"":this._classList.toString()}},innerHTML:{get:function(){return this._innerHTML||this.render(!0)},set:function(t){this._innerHTML=t}},outerHTML:{get:function(){return this.render()}},firstChild:{get:function(){return this.childNodes[0]||null}},textContent:{get:function(){return this.childNodes.filter((function(t){return t instanceof i})).map((function(t){return t.textContent})).join("")},set:function(t){this.childNodes=[new i(t)]}},nextSibling:{get:function(){for(var t=this.parentNode.childNodes,e=0;e<t.length;e++)if(t[e]===this)return t[e+1];return null}}}),C.prototype.createElement=function(t){var e,n=new T({tagName:t});return"ownerDocument"in n||Object.defineProperty(n,"ownerDocument",{enumerable:!1,get:(e=this,function(){return e})}),n},C.prototype.createElementNS=function(t,e){var n,r;return"ownerDocument"in(n="http://www.w3.org/2000/svg"===e?new k({tagName:e}):new T({tagName:e}))||Object.defineProperty(n,"ownerDocument",{enumerable:!1,get:(r=this,function(){return r})}),n},C.prototype.createDocumentFragment=function(){return(new C).body},C.prototype.createTextNode=function(t){var e,n=new i(t);return"ownerDocument"in n||Object.defineProperty(n,"ownerDocument",{enumerable:!1,get:(e=this,function(){return e})}),n},C.prototype.getElementsByTagName=function(t){var e=t.toLowerCase();return"html"===e?[this.documentElement]:"*"===e?[this.documentElement].concat(this.documentElement.getElementsByTagName(e)):this.documentElement.getElementsByTagName(e)},C.prototype.getElementsByClassName=function(t){var e=this;if(!Array.isArray(t))return this.getElementsByClassName(String(t).split(" ").map((function(t){return t.trim()})).filter((function(t){return t.length>0})));if(0===t.length)return[];var n=t.every((function(t){return e.documentElement.classList.contains(t)}));return this.documentElement.childNodes.reduce((function(e,n){return t.every((function(t){return n.classList.contains(t)}))?e.concat(n,n.getElementsByClassName(t)):e.concat(n.getElementsByClassName(t))}),n?[this.documentElement]:[])},C.prototype.getElementById=function(t){if(this.documentElement.id===t)return this.documentElement;return function t(e,n){for(var r=[],i=0;i<n.length;i++){if(n[i].id===e)return n[i];r=r.concat(n[i].childNodes)}return r.length>0?t(e,r):null}(t,this.documentElement.childNodes)},C.prototype.querySelector=function(t){return b(t,this)},C.prototype.querySelectorAll=function(t){return v(t,this)},C.prototype.implementation=Object.create(null),C.prototype.implementation.hasFeature=function(t){return!1},C.prototype.implementation.createHTMLDocument=function(t){var e=new C;return e.outerHTML=t,e},t.Document=C,t.HTMLElement=T,t.Node=n,t.SVGElement=k,t.TextNode=i,t.render=function(t,e){return(t.el||t).render(e)},Object.defineProperty(t,"__esModule",{value:!0})}(e)},65606:t=>{var e,n,r=t.exports={};function i(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function a(t){if(e===setTimeout)return setTimeout(t,0);if((e===i||!e)&&setTimeout)return e=setTimeout,setTimeout(t,0);try{return e(t,0)}catch(n){try{return e.call(null,t,0)}catch(n){return e.call(this,t,0)}}}!function(){try{e="function"==typeof setTimeout?setTimeout:i}catch(t){e=i}try{n="function"==typeof clearTimeout?clearTimeout:o}catch(t){n=o}}();var u,c=[],s=!1,f=-1;function l(){s&&u&&(s=!1,u.length?c=u.concat(c):f=-1,c.length&&h())}function h(){if(!s){var t=a(l);s=!0;for(var e=c.length;e;){for(u=c,c=[];++f<e;)u&&u[f].run();f=-1,e=c.length}u=null,s=!1,function(t){if(n===clearTimeout)return clearTimeout(t);if((n===o||!n)&&clearTimeout)return n=clearTimeout,clearTimeout(t);try{return n(t)}catch(e){try{return n.call(null,t)}catch(e){return n.call(this,t)}}}(t)}}function d(t,e){this.fun=t,this.array=e}function p(){}r.nextTick=function(t){var e=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)e[n-1]=arguments[n];c.push(new d(t,e)),1!==c.length||s||a(h)},d.prototype.run=function(){this.fun.apply(null,this.array)},r.title="browser",r.browser=!0,r.env={},r.argv=[],r.version="",r.versions={},r.on=p,r.addListener=p,r.once=p,r.off=p,r.removeListener=p,r.removeAllListeners=p,r.emit=p,r.prependListener=p,r.prependOnceListener=p,r.listeners=function(t){return[]},r.binding=function(t){throw new Error("process.binding is not supported")},r.cwd=function(){return"/"},r.chdir=function(t){throw new Error("process.chdir is not supported")},r.umask=function(){return 0}},90031:(t,e)=>{!function(t){var e,n,r,i=String.fromCharCode;function o(t){for(var e,n,r=[],i=0,o=t.length;i<o;)(e=t.charCodeAt(i++))>=55296&&e<=56319&&i<o?56320==(64512&(n=t.charCodeAt(i++)))?r.push(((1023&e)<<10)+(1023&n)+65536):(r.push(e),i--):r.push(e);return r}function a(t){if(t>=55296&&t<=57343)throw Error("Lone surrogate U+"+t.toString(16).toUpperCase()+" is not a scalar value")}function u(t,e){return i(t>>e&63|128)}function c(t){if(!(4294967168&t))return i(t);var e="";return 4294965248&t?4294901760&t?4292870144&t||(e=i(t>>18&7|240),e+=u(t,12),e+=u(t,6)):(a(t),e=i(t>>12&15|224),e+=u(t,6)):e=i(t>>6&31|192),e+i(63&t|128)}function s(){if(r>=n)throw Error("Invalid byte index");var t=255&e[r];if(r++,128==(192&t))return 63&t;throw Error("Invalid continuation byte")}function f(){var t,i;if(r>n)throw Error("Invalid byte index");if(r==n)return!1;if(t=255&e[r],r++,!(128&t))return t;if(192==(224&t)){if((i=(31&t)<<6|s())>=128)return i;throw Error("Invalid continuation byte")}if(224==(240&t)){if((i=(15&t)<<12|s()<<6|s())>=2048)return a(i),i;throw Error("Invalid continuation byte")}if(240==(248&t)&&(i=(7&t)<<18|s()<<12|s()<<6|s())>=65536&&i<=1114111)return i;throw Error("Invalid UTF-8 detected")}t.version="3.0.0",t.encode=function(t){for(var e=o(t),n=e.length,r=-1,i="";++r<n;)i+=c(e[r]);return i},t.decode=function(t){e=o(t),n=e.length,r=0;for(var a,u=[];!1!==(a=f());)u.push(a);return function(t){for(var e,n=t.length,r=-1,o="";++r<n;)(e=t[r])>65535&&(o+=i((e-=65536)>>>10&1023|55296),e=56320|1023&e),o+=i(e);return o}(u)}}(e)},4633:(t,e,n)=>{var r=n(73738).default;function i(){"use strict";t.exports=i=function(){return n},t.exports.__esModule=!0,t.exports.default=t.exports;var e,n={},o=Object.prototype,a=o.hasOwnProperty,u=Object.defineProperty||function(t,e,n){t[e]=n.value},c="function"==typeof Symbol?Symbol:{},s=c.iterator||"@@iterator",f=c.asyncIterator||"@@asyncIterator",l=c.toStringTag||"@@toStringTag";function h(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{h({},"")}catch(e){h=function(t,e,n){return t[e]=n}}function d(t,e,n,r){var i=e&&e.prototype instanceof x?e:x,o=Object.create(i.prototype),a=new I(r||[]);return u(o,"_invoke",{value:F(t,n,a)}),o}function p(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}n.wrap=d;var g="suspendedStart",y="suspendedYield",m="executing",v="completed",b={};function x(){}function w(){}function _(){}var A={};h(A,s,(function(){return this}));var E=Object.getPrototypeOf,M=E&&E(E(R([])));M&&M!==o&&a.call(M,s)&&(A=M);var B=_.prototype=x.prototype=Object.create(A);function T(t){["next","throw","return"].forEach((function(e){h(t,e,(function(t){return this._invoke(e,t)}))}))}function k(t,e){function n(i,o,u,c){var s=p(t[i],t,o);if("throw"!==s.type){var f=s.arg,l=f.value;return l&&"object"==r(l)&&a.call(l,"__await")?e.resolve(l.__await).then((function(t){n("next",t,u,c)}),(function(t){n("throw",t,u,c)})):e.resolve(l).then((function(t){f.value=t,u(f)}),(function(t){return n("throw",t,u,c)}))}c(s.arg)}var i;u(this,"_invoke",{value:function(t,r){function o(){return new e((function(e,i){n(t,r,e,i)}))}return i=i?i.then(o,o):o()}})}function F(t,n,r){var i=g;return function(o,a){if(i===m)throw Error("Generator is already running");if(i===v){if("throw"===o)throw a;return{value:e,done:!0}}for(r.method=o,r.arg=a;;){var u=r.delegate;if(u){var c=S(u,r);if(c){if(c===b)continue;return c}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if(i===g)throw i=v,r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);i=m;var s=p(t,n,r);if("normal"===s.type){if(i=r.done?v:y,s.arg===b)continue;return{value:s.arg,done:r.done}}"throw"===s.type&&(i=v,r.method="throw",r.arg=s.arg)}}}function S(t,n){var r=n.method,i=t.iterator[r];if(i===e)return n.delegate=null,"throw"===r&&t.iterator.return&&(n.method="return",n.arg=e,S(t,n),"throw"===n.method)||"return"!==r&&(n.method="throw",n.arg=new TypeError("The iterator does not provide a '"+r+"' method")),b;var o=p(i,t.iterator,n.arg);if("throw"===o.type)return n.method="throw",n.arg=o.arg,n.delegate=null,b;var a=o.arg;return a?a.done?(n[t.resultName]=a.value,n.next=t.nextLoc,"return"!==n.method&&(n.method="next",n.arg=e),n.delegate=null,b):a:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,b)}function N(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 C(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function I(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(N,this),this.reset(!0)}function R(t){if(t||""===t){var n=t[s];if(n)return n.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var i=-1,o=function n(){for(;++i<t.length;)if(a.call(t,i))return n.value=t[i],n.done=!1,n;return n.value=e,n.done=!0,n};return o.next=o}}throw new TypeError(r(t)+" is not iterable")}return w.prototype=_,u(B,"constructor",{value:_,configurable:!0}),u(_,"constructor",{value:w,configurable:!0}),w.displayName=h(_,l,"GeneratorFunction"),n.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===w||"GeneratorFunction"===(e.displayName||e.name))},n.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,_):(t.__proto__=_,h(t,l,"GeneratorFunction")),t.prototype=Object.create(B),t},n.awrap=function(t){return{__await:t}},T(k.prototype),h(k.prototype,f,(function(){return this})),n.AsyncIterator=k,n.async=function(t,e,r,i,o){void 0===o&&(o=Promise);var a=new k(d(t,e,r,i),o);return n.isGeneratorFunction(e)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},T(B),h(B,l,"Generator"),h(B,s,(function(){return this})),h(B,"toString",(function(){return"[object Generator]"})),n.keys=function(t){var e=Object(t),n=[];for(var r in e)n.push(r);return n.reverse(),function t(){for(;n.length;){var r=n.pop();if(r in e)return t.value=r,t.done=!1,t}return t.done=!0,t}},n.values=R,I.prototype={constructor:I,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(C),!t)for(var n in this)"t"===n.charAt(0)&&a.call(this,n)&&!isNaN(+n.slice(1))&&(this[n]=e)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var n=this;function r(r,i){return u.type="throw",u.arg=t,n.next=r,i&&(n.method="next",n.arg=e),!!i}for(var i=this.tryEntries.length-1;i>=0;--i){var o=this.tryEntries[i],u=o.completion;if("root"===o.tryLoc)return r("end");if(o.tryLoc<=this.prev){var c=a.call(o,"catchLoc"),s=a.call(o,"finallyLoc");if(c&&s){if(this.prev<o.catchLoc)return r(o.catchLoc,!0);if(this.prev<o.finallyLoc)return r(o.finallyLoc)}else if(c){if(this.prev<o.catchLoc)return r(o.catchLoc,!0)}else{if(!s)throw Error("try statement without catch or finally");if(this.prev<o.finallyLoc)return r(o.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var r=this.tryEntries[n];if(r.tryLoc<=this.prev&&a.call(r,"finallyLoc")&&this.prev<r.finallyLoc){var i=r;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var o=i?i.completion:{};return o.type=t,o.arg=e,i?(this.method="next",this.next=i.finallyLoc,b):this.complete(o)},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),b},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),C(n),b}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var i=r.arg;C(n)}return i}}throw Error("illegal catch attempt")},delegateYield:function(t,n,r){return this.delegate={iterator:R(t),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=e),b}},n}t.exports=i,t.exports.__esModule=!0,t.exports.default=t.exports},73738:t=>{function e(n){return t.exports=e="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},t.exports.__esModule=!0,t.exports.default=t.exports,e(n)}t.exports=e,t.exports.__esModule=!0,t.exports.default=t.exports},54756:(t,e,n)=>{var r=n(4633)();t.exports=r;try{regeneratorRuntime=r}catch(t){"object"==typeof globalThis?globalThis.regeneratorRuntime=r:Function("r","regeneratorRuntime = r")(r)}}},e={};function n(r){var i=e[r];if(void 0!==i)return i.exports;var o=e[r]={exports:{}};return t[r].call(o.exports,o,o.exports,n),o.exports}n.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return n.d(e,{a:e}),e},n.d=(t,e)=>{for(var r in e)n.o(e,r)&&!n.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:e[r]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),n.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),n.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},(()=>{"use strict";var t={};n.r(t),n.d(t,{Adder:()=>L,Delaunay:()=>ec,FormatSpecifier:()=>xf,InternMap:()=>j,InternSet:()=>z,Node:()=>qg,Path:()=>ma,Voronoi:()=>Xu,ZoomTransform:()=>QM,active:()=>_o,arc:()=>DA,area:()=>YA,areaRadial:()=>tE,ascending:()=>h,autoType:()=>Rc,axisBottom:()=>ke,axisLeft:()=>Fe,axisRight:()=>Te,axisTop:()=>Be,bin:()=>_t,bisect:()=>w,bisectCenter:()=>x,bisectLeft:()=>b,bisectRight:()=>v,bisector:()=>p,blob:()=>As,blur:()=>_,blur2:()=>A,blurImage:()=>E,brush:()=>Zo,brushSelection:()=>Wo,brushX:()=>Xo,brushY:()=>Jo,buffer:()=>Ms,chord:()=>ca,chordDirected:()=>fa,chordTranspose:()=>sa,cluster:()=>Dg,color:()=>wr,contourDensity:()=>Bu,contours:()=>vu,count:()=>F,create:()=>lA,creator:()=>Pn,cross:()=>I,csv:()=>Ss,csvFormat:()=>wc,csvFormatBody:()=>_c,csvFormatRow:()=>Ec,csvFormatRows:()=>Ac,csvFormatValue:()=>Mc,csvParse:()=>bc,csvParseRows:()=>xc,cubehelix:()=>cu,cumsum:()=>R,curveBasis:()=>qE,curveBasisClosed:()=>GE,curveBasisOpen:()=>WE,curveBumpX:()=>iE,curveBumpY:()=>oE,curveBundle:()=>JE,curveCardinal:()=>QE,curveCardinalClosed:()=>eM,curveCardinalOpen:()=>rM,curveCatmullRom:()=>aM,curveCatmullRomClosed:()=>cM,curveCatmullRomOpen:()=>fM,curveLinear:()=>jA,curveLinearClosed:()=>hM,curveMonotoneX:()=>xM,curveMonotoneY:()=>wM,curveNatural:()=>EM,curveStep:()=>BM,curveStepAfter:()=>kM,curveStepBefore:()=>TM,descending:()=>d,deviation:()=>P,difference:()=>ae,disjoint:()=>ue,dispatch:()=>Oe,drag:()=>cc,dragDisable:()=>er,dragEnable:()=>nr,dsv:()=>Fs,dsvFormat:()=>mc,easeBack:()=>ms,easeBackIn:()=>gs,easeBackInOut:()=>ms,easeBackOut:()=>ys,easeBounce:()=>hs,easeBounceIn:()=>ls,easeBounceInOut:()=>ds,easeBounceOut:()=>hs,easeCircle:()=>ts,easeCircleIn:()=>Kc,easeCircleInOut:()=>ts,easeCircleOut:()=>Qc,easeCubic:()=>vo,easeCubicIn:()=>yo,easeCubicInOut:()=>vo,easeCubicOut:()=>mo,easeElastic:()=>xs,easeElasticIn:()=>bs,easeElasticInOut:()=>ws,easeElasticOut:()=>xs,easeExp:()=>Zc,easeExpIn:()=>Xc,easeExpInOut:()=>Zc,easeExpOut:()=>Jc,easeLinear:()=>Pc,easePoly:()=>zc,easePolyIn:()=>$c,easePolyInOut:()=>zc,easePolyOut:()=>jc,easeQuad:()=>Uc,easeQuadIn:()=>Dc,easeQuadInOut:()=>Uc,easeQuadOut:()=>Lc,easeSin:()=>Vc,easeSinIn:()=>Yc,easeSinInOut:()=>Vc,easeSinOut:()=>Gc,every:()=>te,extent:()=>D,fcumsum:()=>$,filter:()=>ne,flatGroup:()=>Z,flatRollup:()=>K,forceCenter:()=>Us,forceCollide:()=>Ks,forceLink:()=>ef,forceManyBody:()=>lf,forceRadial:()=>hf,forceSimulation:()=>ff,forceX:()=>df,forceY:()=>pf,format:()=>Mf,formatDefaultLocale:()=>Sf,formatLocale:()=>Ff,formatPrefix:()=>Bf,formatSpecifier:()=>bf,fsum:()=>U,geoAlbers:()=>Kp,geoAlbersUsa:()=>Qp,geoArea:()=>Rl,geoAzimuthalEqualArea:()=>rg,geoAzimuthalEqualAreaRaw:()=>ng,geoAzimuthalEquidistant:()=>og,geoAzimuthalEquidistantRaw:()=>ig,geoBounds:()=>gh,geoCentroid:()=>Th,geoCircle:()=>Lh,geoClipAntimeridian:()=>Xh,geoClipCircle:()=>Jh,geoClipExtent:()=>id,geoClipRectangle:()=>rd,geoConicConformal:()=>lg,geoConicConformalRaw:()=>fg,geoConicEqualArea:()=>Zp,geoConicEqualAreaRaw:()=>Jp,geoConicEquidistant:()=>gg,geoConicEquidistantRaw:()=>pg,geoContains:()=>wd,geoDistance:()=>hd,geoEqualEarth:()=>_g,geoEqualEarthRaw:()=>wg,geoEquirectangular:()=>dg,geoEquirectangularRaw:()=>hg,geoGnomonic:()=>Eg,geoGnomonicRaw:()=>Ag,geoGraticule:()=>Ed,geoGraticule10:()=>Md,geoIdentity:()=>Mg,geoInterpolate:()=>Bd,geoLength:()=>sd,geoMercator:()=>ug,geoMercatorRaw:()=>ag,geoNaturalEarth1:()=>Tg,geoNaturalEarth1Raw:()=>Bg,geoOrthographic:()=>Fg,geoOrthographicRaw:()=>kg,geoPath:()=>Ip,geoProjection:()=>Vp,geoProjectionMutator:()=>Wp,geoRotation:()=>Oh,geoStereographic:()=>Ng,geoStereographicRaw:()=>Sg,geoStream:()=>fl,geoTransform:()=>Rp,geoTransverseMercator:()=>Ig,geoTransverseMercatorRaw:()=>Cg,gray:()=>za,greatest:()=>Ft,greatestIndex:()=>Gt,group:()=>W,groupSort:()=>st,groups:()=>X,hcl:()=>Za,hierarchy:()=>Ug,histogram:()=>_t,hsl:()=>Rr,html:()=>Ds,image:()=>Cs,index:()=>et,indexes:()=>nt,interpolate:()=>ai,interpolateArray:()=>Kr,interpolateBasis:()=>$r,interpolateBasisClosed:()=>jr,interpolateBlues:()=>L_,interpolateBrBG:()=>Jw,interpolateBuGn:()=>p_,interpolateBuPu:()=>y_,interpolateCividis:()=>X_,interpolateCool:()=>K_,interpolateCubehelix:()=>im,interpolateCubehelixDefault:()=>J_,interpolateCubehelixLong:()=>om,interpolateDate:()=>ti,interpolateDiscrete:()=>Yy,interpolateGnBu:()=>v_,interpolateGreens:()=>$_,interpolateGreys:()=>z_,interpolateHcl:()=>em,interpolateHclLong:()=>nm,interpolateHsl:()=>Zy,interpolateHslLong:()=>Ky,interpolateHue:()=>Gy,interpolateInferno:()=>sA,interpolateLab:()=>Qy,interpolateMagma:()=>cA,interpolateNumber:()=>ei,interpolateNumberArray:()=>Jr,interpolateObject:()=>ni,interpolateOrRd:()=>x_,interpolateOranges:()=>W_,interpolatePRGn:()=>Kw,interpolatePiYG:()=>t_,interpolatePlasma:()=>fA,interpolatePuBu:()=>E_,interpolatePuBuGn:()=>__,interpolatePuOr:()=>n_,interpolatePuRd:()=>B_,interpolatePurples:()=>q_,interpolateRainbow:()=>tA,interpolateRdBu:()=>i_,interpolateRdGy:()=>a_,interpolateRdPu:()=>k_,interpolateRdYlBu:()=>c_,interpolateRdYlGn:()=>f_,interpolateReds:()=>G_,interpolateRgb:()=>Gr,interpolateRgbBasis:()=>Wr,interpolateRgbBasisClosed:()=>Xr,interpolateRound:()=>Vy,interpolateSinebow:()=>iA,interpolateSpectral:()=>h_,interpolateString:()=>oi,interpolateTransformCss:()=>qi,interpolateTransformSvg:()=>Yi,interpolateTurbo:()=>oA,interpolateViridis:()=>uA,interpolateWarm:()=>Z_,interpolateYlGn:()=>C_,interpolateYlGnBu:()=>S_,interpolateYlOrBr:()=>R_,interpolateYlOrRd:()=>P_,interpolateZoom:()=>Xy,interrupt:()=>Li,intersection:()=>ce,interval:()=>JM,isoFormat:()=>VM,isoParse:()=>XM,json:()=>Rs,lab:()=>Ha,lch:()=>Ja,least:()=>qt,leastIndex:()=>Yt,line:()=>qA,lineRadial:()=>QA,link:()=>sE,linkHorizontal:()=>fE,linkRadial:()=>hE,linkVertical:()=>lE,local:()=>dA,map:()=>re,matcher:()=>je,max:()=>At,maxIndex:()=>Et,mean:()=>Ot,median:()=>Pt,medianIndex:()=>Dt,merge:()=>Lt,min:()=>Mt,minIndex:()=>Bt,mode:()=>Ut,namespace:()=>nn,namespaces:()=>en,nice:()=>xt,now:()=>bi,pack:()=>gy,packEnclose:()=>Qg,packSiblings:()=>dy,pairs:()=>$t,partition:()=>wy,path:()=>va,pathRound:()=>ba,permute:()=>ot,pie:()=>WA,piecewise:()=>am,pointRadial:()=>eE,pointer:()=>ci,pointers:()=>gA,polygonArea:()=>cm,polygonCentroid:()=>sm,polygonContains:()=>pm,polygonHull:()=>dm,polygonLength:()=>gm,precisionFixed:()=>Nf,precisionPrefix:()=>Cf,precisionRound:()=>If,quadtree:()=>qs,quantile:()=>St,quantileIndex:()=>Ct,quantileSorted:()=>Nt,quantize:()=>um,quickselect:()=>Tt,radialArea:()=>tE,radialLine:()=>QA,randomBates:()=>_m,randomBernoulli:()=>Mm,randomBeta:()=>km,randomBinomial:()=>Fm,randomCauchy:()=>Nm,randomExponential:()=>Am,randomGamma:()=>Tm,randomGeometric:()=>Bm,randomInt:()=>vm,randomIrwinHall:()=>wm,randomLcg:()=>Dm,randomLogNormal:()=>xm,randomLogistic:()=>Cm,randomNormal:()=>bm,randomPareto:()=>Em,randomPoisson:()=>Im,randomUniform:()=>mm,randomWeibull:()=>Sm,range:()=>zt,rank:()=>Ht,reduce:()=>ie,reverse:()=>oe,rgb:()=>Mr,ribbon:()=>Sa,ribbonArrow:()=>Na,rollup:()=>Q,rollups:()=>tt,scaleBand:()=>zm,scaleDiverging:()=>Nw,scaleDivergingLog:()=>Cw,scaleDivergingPow:()=>Rw,scaleDivergingSqrt:()=>Ow,scaleDivergingSymlog:()=>Iw,scaleIdentity:()=>rv,scaleImplicit:()=>$m,scaleLinear:()=>nv,scaleLog:()=>hv,scaleOrdinal:()=>jm,scalePoint:()=>qm,scalePow:()=>wv,scaleQuantile:()=>Mv,scaleQuantize:()=>Bv,scaleRadial:()=>Ev,scaleSequential:()=>Ew,scaleSequentialLog:()=>Mw,scaleSequentialPow:()=>Tw,scaleSequentialQuantile:()=>Fw,scaleSequentialSqrt:()=>kw,scaleSequentialSymlog:()=>Bw,scaleSqrt:()=>_v,scaleSymlog:()=>yv,scaleThreshold:()=>Tv,scaleTime:()=>xw,scaleUtc:()=>ww,scan:()=>Vt,schemeAccent:()=>Lw,schemeBlues:()=>D_,schemeBrBG:()=>Xw,schemeBuGn:()=>d_,schemeBuPu:()=>g_,schemeCategory10:()=>Dw,schemeDark2:()=>Uw,schemeGnBu:()=>m_,schemeGreens:()=>U_,schemeGreys:()=>j_,schemeObservable10:()=>$w,schemeOrRd:()=>b_,schemeOranges:()=>V_,schemePRGn:()=>Zw,schemePaired:()=>jw,schemePastel1:()=>zw,schemePastel2:()=>Hw,schemePiYG:()=>Qw,schemePuBu:()=>A_,schemePuBuGn:()=>w_,schemePuOr:()=>e_,schemePuRd:()=>M_,schemePurples:()=>H_,schemeRdBu:()=>r_,schemeRdGy:()=>o_,schemeRdPu:()=>T_,schemeRdYlBu:()=>u_,schemeRdYlGn:()=>s_,schemeReds:()=>Y_,schemeSet1:()=>qw,schemeSet2:()=>Yw,schemeSet3:()=>Gw,schemeSpectral:()=>l_,schemeTableau10:()=>Vw,schemeYlGn:()=>N_,schemeYlGnBu:()=>F_,schemeYlOrBr:()=>I_,schemeYlOrRd:()=>O_,select:()=>Jn,selectAll:()=>yA,selection:()=>Xn,selector:()=>De,selectorAll:()=>$e,shuffle:()=>Wt,shuffler:()=>Xt,some:()=>ee,sort:()=>at,stack:()=>IM,stackOffsetDiverging:()=>OM,stackOffsetExpand:()=>RM,stackOffsetNone:()=>FM,stackOffsetSilhouette:()=>PM,stackOffsetWiggle:()=>DM,stackOrderAppearance:()=>LM,stackOrderAscending:()=>$M,stackOrderDescending:()=>zM,stackOrderInsideOut:()=>HM,stackOrderNone:()=>SM,stackOrderReverse:()=>qM,stratify:()=>Ty,style:()=>pn,subset:()=>he,sum:()=>Jt,superset:()=>fe,svg:()=>Ls,symbol:()=>$E,symbolAsterisk:()=>pE,symbolCircle:()=>gE,symbolCross:()=>yE,symbolDiamond:()=>bE,symbolDiamond2:()=>xE,symbolPlus:()=>wE,symbolSquare:()=>_E,symbolSquare2:()=>AE,symbolStar:()=>TE,symbolTimes:()=>DE,symbolTriangle:()=>FE,symbolTriangle2:()=>NE,symbolWye:()=>PE,symbolX:()=>DE,symbols:()=>LE,symbolsFill:()=>LE,symbolsStroke:()=>UE,text:()=>Ts,thresholdFreedmanDiaconis:()=>It,thresholdScott:()=>Rt,thresholdSturges:()=>wt,tickFormat:()=>tv,tickIncrement:()=>vt,tickStep:()=>bt,ticks:()=>mt,timeDay:()=>Xv,timeDays:()=>Jv,timeFormat:()=>Xb,timeFormatDefaultLocale:()=>yw,timeFormatLocale:()=>Vb,timeFriday:()=>ub,timeFridays:()=>pb,timeHour:()=>Yv,timeHours:()=>Gv,timeInterval:()=>Pv,timeMillisecond:()=>Dv,timeMilliseconds:()=>Lv,timeMinute:()=>jv,timeMinutes:()=>zv,timeMonday:()=>rb,timeMondays:()=>fb,timeMonth:()=>Nb,timeMonths:()=>Cb,timeParse:()=>Jb,timeSaturday:()=>cb,timeSaturdays:()=>gb,timeSecond:()=>Uv,timeSeconds:()=>$v,timeSunday:()=>nb,timeSundays:()=>sb,timeThursday:()=>ab,timeThursdays:()=>db,timeTickInterval:()=>Hb,timeTicks:()=>zb,timeTuesday:()=>ib,timeTuesdays:()=>lb,timeWednesday:()=>ob,timeWednesdays:()=>hb,timeWeek:()=>nb,timeWeeks:()=>sb,timeYear:()=>Ob,timeYears:()=>Pb,timeout:()=>Ti,timer:()=>_i,timerFlush:()=>Ai,transition:()=>ho,transpose:()=>Zt,tree:()=>Py,treemap:()=>jy,treemapBinary:()=>zy,treemapDice:()=>xy,treemapResquarify:()=>qy,treemapSlice:()=>Dy,treemapSliceDice:()=>Hy,treemapSquarify:()=>$y,tsv:()=>Ns,tsvFormat:()=>Fc,tsvFormatBody:()=>Sc,tsvFormatRow:()=>Cc,tsvFormatRows:()=>Nc,tsvFormatValue:()=>Ic,tsvParse:()=>Tc,tsvParseRows:()=>kc,union:()=>de,unixDay:()=>Qv,unixDays:()=>tb,utcDay:()=>Zv,utcDays:()=>Kv,utcFormat:()=>Zb,utcFriday:()=>_b,utcFridays:()=>Fb,utcHour:()=>Vv,utcHours:()=>Wv,utcMillisecond:()=>Dv,utcMilliseconds:()=>Lv,utcMinute:()=>Hv,utcMinutes:()=>qv,utcMonday:()=>vb,utcMondays:()=>Mb,utcMonth:()=>Ib,utcMonths:()=>Rb,utcParse:()=>Kb,utcSaturday:()=>Ab,utcSaturdays:()=>Sb,utcSecond:()=>Uv,utcSeconds:()=>$v,utcSunday:()=>mb,utcSundays:()=>Eb,utcThursday:()=>wb,utcThursdays:()=>kb,utcTickInterval:()=>jb,utcTicks:()=>$b,utcTuesday:()=>bb,utcTuesdays:()=>Bb,utcWednesday:()=>xb,utcWednesdays:()=>Tb,utcWeek:()=>mb,utcWeeks:()=>Eb,utcYear:()=>Db,utcYears:()=>Lb,variance:()=>O,window:()=>fn,xml:()=>Ps,zip:()=>Qt,zoom:()=>fB,zoomIdentity:()=>tB,zoomTransform:()=>eB});var e={};function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function i(t){return i="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},i(t)}function o(t){var e=function(t){if("object"!=i(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=i(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==i(e)?e:e+""}function a(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,o(r.key),r)}}function u(t,e,n){return e&&a(t.prototype,e),n&&a(t,n),Object.defineProperty(t,"prototype",{writable:!1}),t}function c(t,e){if(e&&("object"==i(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)}function s(t){return s=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},s(t)}function f(t,e){return f=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},f(t,e)}function l(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)}function h(t,e){return null==t||null==e?NaN:t<e?-1:t>e?1:t>=e?0:NaN}function d(t,e){return null==t||null==e?NaN:e<t?-1:e>t?1:e>=t?0:NaN}function p(t){let e,n,r;function i(t,r,i=0,o=t.length){if(i<o){if(0!==e(r,r))return o;do{const e=i+o>>>1;n(t[e],r)<0?i=e+1:o=e}while(i<o)}return i}return 2!==t.length?(e=h,n=(e,n)=>h(t(e),n),r=(e,n)=>t(e)-n):(e=t===h||t===d?t:g,n=t,r=t),{left:i,center:function(t,e,n=0,o=t.length){const a=i(t,e,n,o-1);return a>n&&r(t[a-1],e)>-r(t[a],e)?a-1:a},right:function(t,r,i=0,o=t.length){if(i<o){if(0!==e(r,r))return o;do{const e=i+o>>>1;n(t[e],r)<=0?i=e+1:o=e}while(i<o)}return i}}}function g(){return 0}function y(t){return null===t?NaN:+t}n.r(e),n.d(e,{hexbin:()=>mk});const m=p(h),v=m.right,b=m.left,x=p(y).center,w=v;function _(t,e){if(!((e=+e)>=0))throw new RangeError("invalid r");let n=t.length;if(!((n=Math.floor(n))>=0))throw new RangeError("invalid length");if(!n||!e)return t;const r=k(e),i=t.slice();return r(t,i,0,n,1),r(i,t,0,n,1),r(t,i,0,n,1),t}const A=M(k),E=M((function(t){const e=k(t);return(t,n,r,i,o)=>{e(t,n,0+(r<<=2),0+(i<<=2),o<<=2),e(t,n,r+1,i+1,o),e(t,n,r+2,i+2,o),e(t,n,r+3,i+3,o)}}));function M(t){return function(e,n,r=n){if(!((n=+n)>=0))throw new RangeError("invalid rx");if(!((r=+r)>=0))throw new RangeError("invalid ry");let{data:i,width:o,height:a}=e;if(!((o=Math.floor(o))>=0))throw new RangeError("invalid width");if(!((a=Math.floor(void 0!==a?a:i.length/o))>=0))throw new RangeError("invalid height");if(!o||!a||!n&&!r)return e;const u=n&&t(n),c=r&&t(r),s=i.slice();return u&&c?(B(u,s,i,o,a),B(u,i,s,o,a),B(u,s,i,o,a),T(c,i,s,o,a),T(c,s,i,o,a),T(c,i,s,o,a)):u?(B(u,i,s,o,a),B(u,s,i,o,a),B(u,i,s,o,a)):c&&(T(c,i,s,o,a),T(c,s,i,o,a),T(c,i,s,o,a)),e}}function B(t,e,n,r,i){for(let o=0,a=r*i;o<a;)t(e,n,o,o+=r,1)}function T(t,e,n,r,i){for(let o=0,a=r*i;o<r;++o)t(e,n,o,o+a,r)}function k(t){const e=Math.floor(t);if(e===t)return function(t){const e=2*t+1;return(n,r,i,o,a)=>{if(!((o-=a)>=i))return;let u=t*r[i];const c=a*t;for(let t=i,e=i+c;t<e;t+=a)u+=r[Math.min(o,t)];for(let t=i,s=o;t<=s;t+=a)u+=r[Math.min(o,t+c)],n[t]=u/e,u-=r[Math.max(i,t-c)]}}(t);const n=t-e,r=2*t+1;return(t,i,o,a,u)=>{if(!((a-=u)>=o))return;let c=e*i[o];const s=u*e,f=s+u;for(let t=o,e=o+s;t<e;t+=u)c+=i[Math.min(a,t)];for(let e=o,l=a;e<=l;e+=u)c+=i[Math.min(a,e+s)],t[e]=(c+n*(i[Math.max(o,e-f)]+i[Math.min(a,e+f)]))/r,c-=i[Math.max(o,e-s)]}}function F(t,e){let n=0;if(void 0===e)for(let e of t)null!=e&&(e=+e)>=e&&++n;else{let r=-1;for(let i of t)null!=(i=e(i,++r,t))&&(i=+i)>=i&&++n}return n}function S(t){return 0|t.length}function N(t){return!(t>0)}function C(t){return"object"!=typeof t||"length"in t?t:Array.from(t)}function I(...t){const e="function"==typeof t[t.length-1]&&function(t){return e=>t(...e)}(t.pop()),n=(t=t.map(C)).map(S),r=t.length-1,i=new Array(r+1).fill(0),o=[];if(r<0||n.some(N))return o;for(;;){o.push(i.map(((e,n)=>t[n][e])));let a=r;for(;++i[a]===n[a];){if(0===a)return e?o.map(e):o;i[a--]=0}}}function R(t,e){var n=0,r=0;return Float64Array.from(t,void 0===e?t=>n+=+t||0:i=>n+=+e(i,r++,t)||0)}function O(t,e){let n,r=0,i=0,o=0;if(void 0===e)for(let e of t)null!=e&&(e=+e)>=e&&(n=e-i,i+=n/++r,o+=n*(e-i));else{let a=-1;for(let u of t)null!=(u=e(u,++a,t))&&(u=+u)>=u&&(n=u-i,i+=n/++r,o+=n*(u-i))}if(r>1)return o/(r-1)}function P(t,e){const n=O(t,e);return n?Math.sqrt(n):n}function D(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 i=-1;for(let o of t)null!=(o=e(o,++i,t))&&(void 0===n?o>=o&&(n=r=o):(n>o&&(n=o),r<o&&(r=o)))}return[n,r]}class L{constructor(){this._partials=new Float64Array(32),this._n=0}add(t){const e=this._partials;let n=0;for(let r=0;r<this._n&&r<32;r++){const i=e[r],o=t+i,a=Math.abs(t)<Math.abs(i)?t-(o-i):i-(o-t);a&&(e[n++]=a),t=o}return e[n]=t,this._n=n+1,this}valueOf(){const t=this._partials;let e,n,r,i=this._n,o=0;if(i>0){for(o=t[--i];i>0&&(e=o,n=t[--i],o=e+n,r=n-(o-e),!r););i>0&&(r<0&&t[i-1]<0||r>0&&t[i-1]>0)&&(n=2*r,e=o+n,n==e-o&&(o=e))}return o}}function U(t,e){const n=new L;if(void 0===e)for(let e of t)(e=+e)&&n.add(e);else{let r=-1;for(let i of t)(i=+e(i,++r,t))&&n.add(i)}return+n}function $(t,e){const n=new L;let r=-1;return Float64Array.from(t,void 0===e?t=>n.add(+t||0):i=>n.add(+e(i,++r,t)||0))}class j extends Map{constructor(t,e=G){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:e}}),null!=t)for(const[e,n]of t)this.set(e,n)}get(t){return super.get(H(this,t))}has(t){return super.has(H(this,t))}set(t,e){return super.set(q(this,t),e)}delete(t){return super.delete(Y(this,t))}}class z extends Set{constructor(t,e=G){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:e}}),null!=t)for(const e of t)this.add(e)}has(t){return super.has(H(this,t))}add(t){return super.add(q(this,t))}delete(t){return super.delete(Y(this,t))}}function H({_intern:t,_key:e},n){const r=e(n);return t.has(r)?t.get(r):n}function q({_intern:t,_key:e},n){const r=e(n);return t.has(r)?t.get(r):(t.set(r,n),n)}function Y({_intern:t,_key:e},n){const r=e(n);return t.has(r)&&(n=t.get(r),t.delete(r)),n}function G(t){return null!==t&&"object"==typeof t?t.valueOf():t}function V(t){return t}function W(t,...e){return it(t,V,V,e)}function X(t,...e){return it(t,Array.from,V,e)}function J(t,e){for(let n=1,r=e.length;n<r;++n)t=t.flatMap((t=>t.pop().map((([e,n])=>[...t,e,n]))));return t}function Z(t,...e){return J(X(t,...e),e)}function K(t,e,...n){return J(tt(t,e,...n),n)}function Q(t,e,...n){return it(t,V,e,n)}function tt(t,e,...n){return it(t,Array.from,e,n)}function et(t,...e){return it(t,V,rt,e)}function nt(t,...e){return it(t,Array.from,rt,e)}function rt(t){if(1!==t.length)throw new Error("duplicate key");return t[0]}function it(t,e,n,r){return function t(i,o){if(o>=r.length)return n(i);const a=new j,u=r[o++];let c=-1;for(const t of i){const e=u(t,++c,i),n=a.get(e);n?n.push(t):a.set(e,[t])}for(const[e,n]of a)a.set(e,t(n,o));return e(a)}(t,0)}function ot(t,e){return Array.from(e,(e=>t[e]))}function at(t,...e){if("function"!=typeof t[Symbol.iterator])throw new TypeError("values is not iterable");t=Array.from(t);let[n]=e;if(n&&2!==n.length||e.length>1){const r=Uint32Array.from(t,((t,e)=>e));return e.length>1?(e=e.map((e=>t.map(e))),r.sort(((t,n)=>{for(const r of e){const e=ct(r[t],r[n]);if(e)return e}}))):(n=t.map(n),r.sort(((t,e)=>ct(n[t],n[e])))),ot(t,r)}return t.sort(ut(n))}function ut(t=h){if(t===h)return ct;if("function"!=typeof t)throw new TypeError("compare is not a function");return(e,n)=>{const r=t(e,n);return r||0===r?r:(0===t(n,n))-(0===t(e,e))}}function ct(t,e){return(null==t||!(t>=t))-(null==e||!(e>=e))||(t<e?-1:t>e?1:0)}function st(t,e,n){return(2!==e.length?at(Q(t,e,n),(([t,e],[n,r])=>h(e,r)||h(t,n))):at(W(t,n),(([t,n],[r,i])=>e(n,i)||h(t,r)))).map((([t])=>t))}var ft=Array.prototype,lt=ft.slice;function ht(t){return()=>t}ft.map;const dt=Math.sqrt(50),pt=Math.sqrt(10),gt=Math.sqrt(2);function yt(t,e,n){const r=(e-t)/Math.max(0,n),i=Math.floor(Math.log10(r)),o=r/Math.pow(10,i),a=o>=dt?10:o>=pt?5:o>=gt?2:1;let u,c,s;return i<0?(s=Math.pow(10,-i)/a,u=Math.round(t*s),c=Math.round(e*s),u/s<t&&++u,c/s>e&&--c,s=-s):(s=Math.pow(10,i)*a,u=Math.round(t/s),c=Math.round(e/s),u*s<t&&++u,c*s>e&&--c),c<u&&.5<=n&&n<2?yt(t,e,2*n):[u,c,s]}function mt(t,e,n){if(!((n=+n)>0))return[];if((t=+t)==(e=+e))return[t];const r=e<t,[i,o,a]=r?yt(e,t,n):yt(t,e,n);if(!(o>=i))return[];const u=o-i+1,c=new Array(u);if(r)if(a<0)for(let t=0;t<u;++t)c[t]=(o-t)/-a;else for(let t=0;t<u;++t)c[t]=(o-t)*a;else if(a<0)for(let t=0;t<u;++t)c[t]=(i+t)/-a;else for(let t=0;t<u;++t)c[t]=(i+t)*a;return c}function vt(t,e,n){return yt(t=+t,e=+e,n=+n)[2]}function bt(t,e,n){n=+n;const r=(e=+e)<(t=+t),i=r?vt(e,t,n):vt(t,e,n);return(r?-1:1)*(i<0?1/-i:i)}function xt(t,e,n){let r;for(;;){const i=vt(t,e,n);if(i===r||0===i||!isFinite(i))return[t,e];i>0?(t=Math.floor(t/i)*i,e=Math.ceil(e/i)*i):i<0&&(t=Math.ceil(t*i)/i,e=Math.floor(e*i)/i),r=i}}function wt(t){return Math.max(1,Math.ceil(Math.log(F(t))/Math.LN2)+1)}function _t(){var t=V,e=D,n=wt;function r(r){Array.isArray(r)||(r=Array.from(r));var i,o,a,u=r.length,c=new Array(u);for(i=0;i<u;++i)c[i]=t(r[i],i,r);var s=e(c),f=s[0],l=s[1],h=n(c,f,l);if(!Array.isArray(h)){const t=l,n=+h;if(e===D&&([f,l]=xt(f,l,n)),(h=mt(f,l,n))[0]<=f&&(a=vt(f,l,n)),h[h.length-1]>=l)if(t>=l&&e===D){const t=vt(f,l,n);isFinite(t)&&(t>0?l=(Math.floor(l/t)+1)*t:t<0&&(l=(Math.ceil(l*-t)+1)/-t))}else h.pop()}for(var d=h.length,p=0,g=d;h[p]<=f;)++p;for(;h[g-1]>l;)--g;(p||g<d)&&(h=h.slice(p,g),d=g-p);var y,m=new Array(d+1);for(i=0;i<=d;++i)(y=m[i]=[]).x0=i>0?h[i-1]:f,y.x1=i<d?h[i]:l;if(isFinite(a)){if(a>0)for(i=0;i<u;++i)null!=(o=c[i])&&f<=o&&o<=l&&m[Math.min(d,Math.floor((o-f)/a))].push(r[i]);else if(a<0)for(i=0;i<u;++i)if(null!=(o=c[i])&&f<=o&&o<=l){const t=Math.floor((f-o)*a);m[Math.min(d,t+(h[t]<=o))].push(r[i])}}else for(i=0;i<u;++i)null!=(o=c[i])&&f<=o&&o<=l&&m[w(h,o,0,d)].push(r[i]);return m}return r.value=function(e){return arguments.length?(t="function"==typeof e?e:ht(e),r):t},r.domain=function(t){return arguments.length?(e="function"==typeof t?t:ht([t[0],t[1]]),r):e},r.thresholds=function(t){return arguments.length?(n="function"==typeof t?t:ht(Array.isArray(t)?lt.call(t):t),r):n},r}function At(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 i of t)null!=(i=e(i,++r,t))&&(n<i||void 0===n&&i>=i)&&(n=i)}return n}function Et(t,e){let n,r=-1,i=-1;if(void 0===e)for(const e of t)++i,null!=e&&(n<e||void 0===n&&e>=e)&&(n=e,r=i);else for(let o of t)null!=(o=e(o,++i,t))&&(n<o||void 0===n&&o>=o)&&(n=o,r=i);return r}function Mt(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 i of t)null!=(i=e(i,++r,t))&&(n>i||void 0===n&&i>=i)&&(n=i)}return n}function Bt(t,e){let n,r=-1,i=-1;if(void 0===e)for(const e of t)++i,null!=e&&(n>e||void 0===n&&e>=e)&&(n=e,r=i);else for(let o of t)null!=(o=e(o,++i,t))&&(n>o||void 0===n&&o>=o)&&(n=o,r=i);return r}function Tt(t,e,n=0,r=1/0,i){if(e=Math.floor(e),n=Math.floor(Math.max(0,n)),r=Math.floor(Math.min(t.length-1,r)),!(n<=e&&e<=r))return t;for(i=void 0===i?ct:ut(i);r>n;){if(r-n>600){const o=r-n+1,a=e-n+1,u=Math.log(o),c=.5*Math.exp(2*u/3),s=.5*Math.sqrt(u*c*(o-c)/o)*(a-o/2<0?-1:1);Tt(t,e,Math.max(n,Math.floor(e-a*c/o+s)),Math.min(r,Math.floor(e+(o-a)*c/o+s)),i)}const o=t[e];let a=n,u=r;for(kt(t,n,e),i(t[r],o)>0&&kt(t,n,r);a<u;){for(kt(t,a,u),++a,--u;i(t[a],o)<0;)++a;for(;i(t[u],o)>0;)--u}0===i(t[n],o)?kt(t,n,u):(++u,kt(t,u,r)),u<=e&&(n=u+1),e<=u&&(r=u-1)}return t}function kt(t,e,n){const r=t[e];t[e]=t[n],t[n]=r}function Ft(t,e=h){let n,r=!1;if(1===e.length){let i;for(const o of t){const t=e(o);(r?h(t,i)>0:0===h(t,t))&&(n=o,i=t,r=!0)}}else for(const i of t)(r?e(i,n)>0:0===e(i,i))&&(n=i,r=!0);return n}function St(t,e,n){if(t=Float64Array.from(function*(t,e){if(void 0===e)for(let e of t)null!=e&&(e=+e)>=e&&(yield e);else{let n=-1;for(let r of t)null!=(r=e(r,++n,t))&&(r=+r)>=r&&(yield r)}}(t,n)),(r=t.length)&&!isNaN(e=+e)){if(e<=0||r<2)return Mt(t);if(e>=1)return At(t);var r,i=(r-1)*e,o=Math.floor(i),a=At(Tt(t,o).subarray(0,o+1));return a+(Mt(t.subarray(o+1))-a)*(i-o)}}function Nt(t,e,n=y){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,i=(r-1)*e,o=Math.floor(i),a=+n(t[o],o,t);return a+(+n(t[o+1],o+1,t)-a)*(i-o)}}function Ct(t,e,n=y){if(!isNaN(e=+e)){if(r=Float64Array.from(t,((e,r)=>y(n(t[r],r,t)))),e<=0)return Bt(r);if(e>=1)return Et(r);var r,i=Uint32Array.from(t,((t,e)=>e)),o=r.length-1,a=Math.floor(o*e);return Tt(i,a,0,o,((t,e)=>ct(r[t],r[e]))),(a=Ft(i.subarray(0,a+1),(t=>r[t])))>=0?a:-1}}function It(t,e,n){const r=F(t),i=St(t,.75)-St(t,.25);return r&&i?Math.ceil((n-e)/(2*i*Math.pow(r,-1/3))):1}function Rt(t,e,n){const r=F(t),i=P(t);return r&&i?Math.ceil((n-e)*Math.cbrt(r)/(3.49*i)):1}function Ot(t,e){let n=0,r=0;if(void 0===e)for(let e of t)null!=e&&(e=+e)>=e&&(++n,r+=e);else{let i=-1;for(let o of t)null!=(o=e(o,++i,t))&&(o=+o)>=o&&(++n,r+=o)}if(n)return r/n}function Pt(t,e){return St(t,.5,e)}function Dt(t,e){return Ct(t,.5,e)}function Lt(t){return Array.from(function*(t){for(const e of t)yield*e}(t))}function Ut(t,e){const n=new j;if(void 0===e)for(let e of t)null!=e&&e>=e&&n.set(e,(n.get(e)||0)+1);else{let r=-1;for(let i of t)null!=(i=e(i,++r,t))&&i>=i&&n.set(i,(n.get(i)||0)+1)}let r,i=0;for(const[t,e]of n)e>i&&(i=e,r=t);return r}function $t(t,e=jt){const n=[];let r,i=!1;for(const o of t)i&&n.push(e(r,o)),r=o,i=!0;return n}function jt(t,e){return[t,e]}function zt(t,e,n){t=+t,e=+e,n=(i=arguments.length)<2?(e=t,t=0,1):i<3?1:+n;for(var r=-1,i=0|Math.max(0,Math.ceil((e-t)/n)),o=new Array(i);++r<i;)o[r]=t+r*n;return o}function Ht(t,e=h){if("function"!=typeof t[Symbol.iterator])throw new TypeError("values is not iterable");let n=Array.from(t);const r=new Float64Array(n.length);2!==e.length&&(n=n.map(e),e=h);const i=(t,r)=>e(n[t],n[r]);let o,a;return t=Uint32Array.from(n,((t,e)=>e)),t.sort(e===h?(t,e)=>ct(n[t],n[e]):ut(i)),t.forEach(((t,e)=>{const n=i(t,void 0===o?t:o);n>=0?((void 0===o||n>0)&&(o=t,a=e),r[t]=a):r[t]=NaN})),r}function qt(t,e=h){let n,r=!1;if(1===e.length){let i;for(const o of t){const t=e(o);(r?h(t,i)<0:0===h(t,t))&&(n=o,i=t,r=!0)}}else for(const i of t)(r?e(i,n)<0:0===e(i,i))&&(n=i,r=!0);return n}function Yt(t,e=h){if(1===e.length)return Bt(t,e);let n,r=-1,i=-1;for(const o of t)++i,(r<0?0===e(o,o):e(o,n)<0)&&(n=o,r=i);return r}function Gt(t,e=h){if(1===e.length)return Et(t,e);let n,r=-1,i=-1;for(const o of t)++i,(r<0?0===e(o,o):e(o,n)>0)&&(n=o,r=i);return r}function Vt(t,e){const n=Yt(t,e);return n<0?void 0:n}const Wt=Xt(Math.random);function Xt(t){return function(e,n=0,r=e.length){let i=r-(n=+n);for(;i;){const r=t()*i--|0,o=e[i+n];e[i+n]=e[r+n],e[r+n]=o}return e}}function Jt(t,e){let n=0;if(void 0===e)for(let e of t)(e=+e)&&(n+=e);else{let r=-1;for(let i of t)(i=+e(i,++r,t))&&(n+=i)}return n}function Zt(t){if(!(i=t.length))return[];for(var e=-1,n=Mt(t,Kt),r=new Array(n);++e<n;)for(var i,o=-1,a=r[e]=new Array(i);++o<i;)a[o]=t[o][e];return r}function Kt(t){return t.length}function Qt(){return Zt(arguments)}function te(t,e){if("function"!=typeof e)throw new TypeError("test is not a function");let n=-1;for(const r of t)if(!e(r,++n,t))return!1;return!0}function ee(t,e){if("function"!=typeof e)throw new TypeError("test is not a function");let n=-1;for(const r of t)if(e(r,++n,t))return!0;return!1}function ne(t,e){if("function"!=typeof e)throw new TypeError("test is not a function");const n=[];let r=-1;for(const i of t)e(i,++r,t)&&n.push(i);return n}function re(t,e){if("function"!=typeof t[Symbol.iterator])throw new TypeError("values is not iterable");if("function"!=typeof e)throw new TypeError("mapper is not a function");return Array.from(t,((n,r)=>e(n,r,t)))}function ie(t,e,n){if("function"!=typeof e)throw new TypeError("reducer is not a function");const r=t[Symbol.iterator]();let i,o,a=-1;if(arguments.length<3){if(({done:i,value:n}=r.next()),i)return;++a}for(;({done:i,value:o}=r.next()),!i;)n=e(n,o,++a,t);return n}function oe(t){if("function"!=typeof t[Symbol.iterator])throw new TypeError("values is not iterable");return Array.from(t).reverse()}function ae(t,...e){t=new z(t);for(const n of e)for(const e of n)t.delete(e);return t}function ue(t,e){const n=e[Symbol.iterator](),r=new z;for(const e of t){if(r.has(e))return!1;let t,i;for(;({value:t,done:i}=n.next())&&!i;){if(Object.is(e,t))return!1;r.add(t)}}return!0}function ce(t,...e){t=new z(t),e=e.map(se);t:for(const n of t)for(const r of e)if(!r.has(n)){t.delete(n);continue t}return t}function se(t){return t instanceof z?t:new z(t)}function fe(t,e){const n=t[Symbol.iterator](),r=new Set;for(const t of e){const e=le(t);if(r.has(e))continue;let i,o;for(;({value:i,done:o}=n.next());){if(o)return!1;const t=le(i);if(r.add(t),Object.is(e,t))break}}return!0}function le(t){return null!==t&&"object"==typeof t?t.valueOf():t}function he(t,e){return fe(e,t)}function de(...t){const e=new z;for(const n of t)for(const t of n)e.add(t);return e}function pe(t){return t}var ge=1,ye=2,me=3,ve=4,be=1e-6;function xe(t){return"translate("+t+",0)"}function we(t){return"translate(0,"+t+")"}function _e(t){return e=>+t(e)}function Ae(t,e){return e=Math.max(0,t.bandwidth()-2*e)/2,t.round()&&(e=Math.round(e)),n=>+t(n)+e}function Ee(){return!this.__axis}function Me(t,e){var n=[],r=null,i=null,o=6,a=6,u=3,c="undefined"!=typeof window&&window.devicePixelRatio>1?0:.5,s=t===ge||t===ve?-1:1,f=t===ve||t===ye?"x":"y",l=t===ge||t===me?xe:we;function h(h){var d=null==r?e.ticks?e.ticks.apply(e,n):e.domain():r,p=null==i?e.tickFormat?e.tickFormat.apply(e,n):pe:i,g=Math.max(o,0)+u,y=e.range(),m=+y[0]+c,v=+y[y.length-1]+c,b=(e.bandwidth?Ae:_e)(e.copy(),c),x=h.selection?h.selection():h,w=x.selectAll(".domain").data([null]),_=x.selectAll(".tick").data(d,e).order(),A=_.exit(),E=_.enter().append("g").attr("class","tick"),M=_.select("line"),B=_.select("text");w=w.merge(w.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),_=_.merge(E),M=M.merge(E.append("line").attr("stroke","currentColor").attr(f+"2",s*o)),B=B.merge(E.append("text").attr("fill","currentColor").attr(f,s*g).attr("dy",t===ge?"0em":t===me?"0.71em":"0.32em")),h!==x&&(w=w.transition(h),_=_.transition(h),M=M.transition(h),B=B.transition(h),A=A.transition(h).attr("opacity",be).attr("transform",(function(t){return isFinite(t=b(t))?l(t+c):this.getAttribute("transform")})),E.attr("opacity",be).attr("transform",(function(t){var e=this.parentNode.__axis;return l((e&&isFinite(e=e(t))?e:b(t))+c)}))),A.remove(),w.attr("d",t===ve||t===ye?a?"M"+s*a+","+m+"H"+c+"V"+v+"H"+s*a:"M"+c+","+m+"V"+v:a?"M"+m+","+s*a+"V"+c+"H"+v+"V"+s*a:"M"+m+","+c+"H"+v),_.attr("opacity",1).attr("transform",(function(t){return l(b(t)+c)})),M.attr(f+"2",s*o),B.attr(f,s*g).text(p),x.filter(Ee).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",t===ye?"start":t===ve?"end":"middle"),x.each((function(){this.__axis=b}))}return h.scale=function(t){return arguments.length?(e=t,h):e},h.ticks=function(){return n=Array.from(arguments),h},h.tickArguments=function(t){return arguments.length?(n=null==t?[]:Array.from(t),h):n.slice()},h.tickValues=function(t){return arguments.length?(r=null==t?null:Array.from(t),h):r&&r.slice()},h.tickFormat=function(t){return arguments.length?(i=t,h):i},h.tickSize=function(t){return arguments.length?(o=a=+t,h):o},h.tickSizeInner=function(t){return arguments.length?(o=+t,h):o},h.tickSizeOuter=function(t){return arguments.length?(a=+t,h):a},h.tickPadding=function(t){return arguments.length?(u=+t,h):u},h.offset=function(t){return arguments.length?(c=+t,h):c},h}function Be(t){return Me(ge,t)}function Te(t){return Me(ye,t)}function ke(t){return Me(me,t)}function Fe(t){return Me(ve,t)}var Se={value:()=>{}};function Ne(){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 Ce(r)}function Ce(t){this._=t}function Ie(t,e){for(var n,r=0,i=t.length;r<i;++r)if((n=t[r]).name===e)return n.value}function Re(t,e,n){for(var r=0,i=t.length;r<i;++r)if(t[r].name===e){t[r]=Se,t=t.slice(0,r).concat(t.slice(r+1));break}return null!=n&&t.push({name:e,value:n}),t}Ce.prototype=Ne.prototype={constructor:Ce,on:function(t,e){var n,r,i=this._,o=(r=i,(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=o.length;if(!(arguments.length<2)){if(null!=e&&"function"!=typeof e)throw new Error("invalid callback: "+e);for(;++a<u;)if(n=(t=o[a]).type)i[n]=Re(i[n],t.name,e);else if(null==e)for(n in i)i[n]=Re(i[n],t.name,null);return this}for(;++a<u;)if((n=(t=o[a]).type)&&(n=Ie(i[n],t.name)))return n},copy:function(){var t={},e=this._;for(var n in e)t[n]=e[n].slice();return new Ce(t)},call:function(t,e){if((n=arguments.length-2)>0)for(var n,r,i=new Array(n),o=0;o<n;++o)i[o]=arguments[o+2];if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(o=0,n=(r=this._[t]).length;o<n;++o)r[o].value.apply(e,i)},apply:function(t,e,n){if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(var r=this._[t],i=0,o=r.length;i<o;++i)r[i].value.apply(e,n)}};const Oe=Ne;function Pe(){}function De(t){return null==t?Pe:function(){return this.querySelector(t)}}function Le(t){return null==t?[]:Array.isArray(t)?t:Array.from(t)}function Ue(){return[]}function $e(t){return null==t?Ue:function(){return this.querySelectorAll(t)}}function je(t){return function(){return this.matches(t)}}function ze(t){return function(e){return e.matches(t)}}var He=Array.prototype.find;function qe(){return this.firstElementChild}var Ye=Array.prototype.filter;function Ge(){return Array.from(this.children)}function Ve(t){return new Array(t.length)}function We(t,e){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=e}function Xe(t,e,n,r,i,o){for(var a,u=0,c=e.length,s=o.length;u<s;++u)(a=e[u])?(a.__data__=o[u],r[u]=a):n[u]=new We(t,o[u]);for(;u<c;++u)(a=e[u])&&(i[u]=a)}function Je(t,e,n,r,i,o,a){var u,c,s,f=new Map,l=e.length,h=o.length,d=new Array(l);for(u=0;u<l;++u)(c=e[u])&&(d[u]=s=a.call(c,c.__data__,u,e)+"",f.has(s)?i[u]=c:f.set(s,c));for(u=0;u<h;++u)s=a.call(t,o[u],u,o)+"",(c=f.get(s))?(r[u]=c,c.__data__=o[u],f.delete(s)):n[u]=new We(t,o[u]);for(u=0;u<l;++u)(c=e[u])&&f.get(d[u])===c&&(i[u]=c)}function Ze(t){return t.__data__}function Ke(t){return"object"==typeof t&&"length"in t?t:Array.from(t)}function Qe(t,e){return t<e?-1:t>e?1:t>=e?0:NaN}We.prototype={constructor:We,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 tn="http://www.w3.org/1999/xhtml";const en={svg:"http://www.w3.org/2000/svg",xhtml:tn,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function nn(t){var e=t+="",n=e.indexOf(":");return n>=0&&"xmlns"!==(e=t.slice(0,n))&&(t=t.slice(n+1)),en.hasOwnProperty(e)?{space:en[e],local:t}:t}function rn(t){return function(){this.removeAttribute(t)}}function on(t){return function(){this.removeAttributeNS(t.space,t.local)}}function an(t,e){return function(){this.setAttribute(t,e)}}function un(t,e){return function(){this.setAttributeNS(t.space,t.local,e)}}function cn(t,e){return function(){var n=e.apply(this,arguments);null==n?this.removeAttribute(t):this.setAttribute(t,n)}}function sn(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 fn(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}function ln(t){return function(){this.style.removeProperty(t)}}function hn(t,e,n){return function(){this.style.setProperty(t,e,n)}}function dn(t,e,n){return function(){var r=e.apply(this,arguments);null==r?this.style.removeProperty(t):this.style.setProperty(t,r,n)}}function pn(t,e){return t.style.getPropertyValue(e)||fn(t).getComputedStyle(t,null).getPropertyValue(e)}function gn(t){return function(){delete this[t]}}function yn(t,e){return function(){this[t]=e}}function mn(t,e){return function(){var n=e.apply(this,arguments);null==n?delete this[t]:this[t]=n}}function vn(t){return t.trim().split(/^|\s+/)}function bn(t){return t.classList||new xn(t)}function xn(t){this._node=t,this._names=vn(t.getAttribute("class")||"")}function wn(t,e){for(var n=bn(t),r=-1,i=e.length;++r<i;)n.add(e[r])}function _n(t,e){for(var n=bn(t),r=-1,i=e.length;++r<i;)n.remove(e[r])}function An(t){return function(){wn(this,t)}}function En(t){return function(){_n(this,t)}}function Mn(t,e){return function(){(e.apply(this,arguments)?wn:_n)(this,t)}}function Bn(){this.textContent=""}function Tn(t){return function(){this.textContent=t}}function kn(t){return function(){var e=t.apply(this,arguments);this.textContent=null==e?"":e}}function Fn(){this.innerHTML=""}function Sn(t){return function(){this.innerHTML=t}}function Nn(t){return function(){var e=t.apply(this,arguments);this.innerHTML=null==e?"":e}}function Cn(){this.nextSibling&&this.parentNode.appendChild(this)}function In(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function Rn(t){return function(){var e=this.ownerDocument,n=this.namespaceURI;return n===tn&&e.documentElement.namespaceURI===tn?e.createElement(t):e.createElementNS(n,t)}}function On(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function Pn(t){var e=nn(t);return(e.local?On:Rn)(e)}function Dn(){return null}function Ln(){var t=this.parentNode;t&&t.removeChild(this)}function Un(){var t=this.cloneNode(!1),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function $n(){var t=this.cloneNode(!0),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function jn(t){return function(){var e=this.__on;if(e){for(var n,r=0,i=-1,o=e.length;r<o;++r)n=e[r],t.type&&n.type!==t.type||n.name!==t.name?e[++i]=n:this.removeEventListener(n.type,n.listener,n.options);++i?e.length=i:delete this.__on}}}function zn(t,e,n){return function(){var r,i=this.__on,o=function(t){return function(e){t.call(this,e,this.__data__)}}(e);if(i)for(var a=0,u=i.length;a<u;++a)if((r=i[a]).type===t.type&&r.name===t.name)return this.removeEventListener(r.type,r.listener,r.options),this.addEventListener(r.type,r.listener=o,r.options=n),void(r.value=e);this.addEventListener(t.type,o,n),r={type:t.type,name:t.name,value:e,listener:o,options:n},i?i.push(r):this.__on=[r]}}function Hn(t,e,n){var r=fn(t),i=r.CustomEvent;"function"==typeof i?i=new i(e,n):(i=r.document.createEvent("Event"),n?(i.initEvent(e,n.bubbles,n.cancelable),i.detail=n.detail):i.initEvent(e,!1,!1)),t.dispatchEvent(i)}function qn(t,e){return function(){return Hn(this,t,e)}}function Yn(t,e){return function(){return Hn(this,t,e.apply(this,arguments))}}xn.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 Gn=[null];function Vn(t,e){this._groups=t,this._parents=e}function Wn(){return new Vn([[document.documentElement]],Gn)}Vn.prototype=Wn.prototype={constructor:Vn,select:function(t){"function"!=typeof t&&(t=De(t));for(var e=this._groups,n=e.length,r=new Array(n),i=0;i<n;++i)for(var o,a,u=e[i],c=u.length,s=r[i]=new Array(c),f=0;f<c;++f)(o=u[f])&&(a=t.call(o,o.__data__,f,u))&&("__data__"in o&&(a.__data__=o.__data__),s[f]=a);return new Vn(r,this._parents)},selectAll:function(t){t="function"==typeof t?function(t){return function(){return Le(t.apply(this,arguments))}}(t):$e(t);for(var e=this._groups,n=e.length,r=[],i=[],o=0;o<n;++o)for(var a,u=e[o],c=u.length,s=0;s<c;++s)(a=u[s])&&(r.push(t.call(a,a.__data__,s,u)),i.push(a));return new Vn(r,i)},selectChild:function(t){return this.select(null==t?qe:function(t){return function(){return He.call(this.children,t)}}("function"==typeof t?t:ze(t)))},selectChildren:function(t){return this.selectAll(null==t?Ge:function(t){return function(){return Ye.call(this.children,t)}}("function"==typeof t?t:ze(t)))},filter:function(t){"function"!=typeof t&&(t=je(t));for(var e=this._groups,n=e.length,r=new Array(n),i=0;i<n;++i)for(var o,a=e[i],u=a.length,c=r[i]=[],s=0;s<u;++s)(o=a[s])&&t.call(o,o.__data__,s,a)&&c.push(o);return new Vn(r,this._parents)},data:function(t,e){if(!arguments.length)return Array.from(this,Ze);var n,r=e?Je:Xe,i=this._parents,o=this._groups;"function"!=typeof t&&(n=t,t=function(){return n});for(var a=o.length,u=new Array(a),c=new Array(a),s=new Array(a),f=0;f<a;++f){var l=i[f],h=o[f],d=h.length,p=Ke(t.call(l,l&&l.__data__,f,i)),g=p.length,y=c[f]=new Array(g),m=u[f]=new Array(g);r(l,h,y,m,s[f]=new Array(d),p,e);for(var v,b,x=0,w=0;x<g;++x)if(v=y[x]){for(x>=w&&(w=x+1);!(b=m[w])&&++w<g;);v._next=b||null}}return(u=new Vn(u,i))._enter=c,u._exit=s,u},enter:function(){return new Vn(this._enter||this._groups.map(Ve),this._parents)},exit:function(){return new Vn(this._exit||this._groups.map(Ve),this._parents)},join:function(t,e,n){var r=this.enter(),i=this,o=this.exit();return"function"==typeof t?(r=t(r))&&(r=r.selection()):r=r.append(t+""),null!=e&&(i=e(i))&&(i=i.selection()),null==n?o.remove():n(o),r&&i?r.merge(i).order():i},merge:function(t){for(var e=t.selection?t.selection():t,n=this._groups,r=e._groups,i=n.length,o=r.length,a=Math.min(i,o),u=new Array(i),c=0;c<a;++c)for(var s,f=n[c],l=r[c],h=f.length,d=u[c]=new Array(h),p=0;p<h;++p)(s=f[p]||l[p])&&(d[p]=s);for(;c<i;++c)u[c]=n[c];return new Vn(u,this._parents)},selection:function(){return this},order:function(){for(var t=this._groups,e=-1,n=t.length;++e<n;)for(var r,i=t[e],o=i.length-1,a=i[o];--o>=0;)(r=i[o])&&(a&&4^r.compareDocumentPosition(a)&&a.parentNode.insertBefore(r,a),a=r);return this},sort:function(t){function e(e,n){return e&&n?t(e.__data__,n.__data__):!e-!n}t||(t=Qe);for(var n=this._groups,r=n.length,i=new Array(r),o=0;o<r;++o){for(var a,u=n[o],c=u.length,s=i[o]=new Array(c),f=0;f<c;++f)(a=u[f])&&(s[f]=a);s.sort(e)}return new Vn(i,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,n=t.length;e<n;++e)for(var r=t[e],i=0,o=r.length;i<o;++i){var a=r[i];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,n=0,r=e.length;n<r;++n)for(var i,o=e[n],a=0,u=o.length;a<u;++a)(i=o[a])&&t.call(i,i.__data__,a,o);return this},attr:function(t,e){var n=nn(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?on:rn:"function"==typeof e?n.local?sn:cn:n.local?un:an)(n,e))},style:function(t,e,n){return arguments.length>1?this.each((null==e?ln:"function"==typeof e?dn:hn)(t,e,null==n?"":n)):pn(this.node(),t)},property:function(t,e){return arguments.length>1?this.each((null==e?gn:"function"==typeof e?mn:yn)(t,e)):this.node()[t]},classed:function(t,e){var n=vn(t+"");if(arguments.length<2){for(var r=bn(this.node()),i=-1,o=n.length;++i<o;)if(!r.contains(n[i]))return!1;return!0}return this.each(("function"==typeof e?Mn:e?An:En)(n,e))},text:function(t){return arguments.length?this.each(null==t?Bn:("function"==typeof t?kn:Tn)(t)):this.node().textContent},html:function(t){return arguments.length?this.each(null==t?Fn:("function"==typeof t?Nn:Sn)(t)):this.node().innerHTML},raise:function(){return this.each(Cn)},lower:function(){return this.each(In)},append:function(t){var e="function"==typeof t?t:Pn(t);return this.select((function(){return this.appendChild(e.apply(this,arguments))}))},insert:function(t,e){var n="function"==typeof t?t:Pn(t),r=null==e?Dn:"function"==typeof e?e:De(e);return this.select((function(){return this.insertBefore(n.apply(this,arguments),r.apply(this,arguments)||null)}))},remove:function(){return this.each(Ln)},clone:function(t){return this.select(t?$n:Un)},datum:function(t){return arguments.length?this.property("__data__",t):this.node().__data__},on:function(t,e,n){var r,i,o=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=o.length;if(!(arguments.length<2)){for(u=e?zn:jn,r=0;r<a;++r)this.each(u(o[r],e,n));return this}var u=this.node().__on;if(u)for(var c,s=0,f=u.length;s<f;++s)for(r=0,c=u[s];r<a;++r)if((i=o[r]).type===c.type&&i.name===c.name)return c.value},dispatch:function(t,e){return this.each(("function"==typeof e?Yn:qn)(t,e))},[Symbol.iterator]:function*(){for(var t=this._groups,e=0,n=t.length;e<n;++e)for(var r,i=t[e],o=0,a=i.length;o<a;++o)(r=i[o])&&(yield r)}};const Xn=Wn;function Jn(t){return"string"==typeof t?new Vn([[document.querySelector(t)]],[document.documentElement]):new Vn([[t]],Gn)}const Zn={passive:!1},Kn={capture:!0,passive:!1};function Qn(t){t.stopImmediatePropagation()}function tr(t){t.preventDefault(),t.stopImmediatePropagation()}function er(t){var e=t.document.documentElement,n=Jn(t).on("dragstart.drag",tr,Kn);"onselectstart"in e?n.on("selectstart.drag",tr,Kn):(e.__noselect=e.style.MozUserSelect,e.style.MozUserSelect="none")}function nr(t,e){var n=t.document.documentElement,r=Jn(t).on("dragstart.drag",null);e&&(r.on("click.drag",tr,Kn),setTimeout((function(){r.on("click.drag",null)}),0)),"onselectstart"in n?r.on("selectstart.drag",null):(n.style.MozUserSelect=n.__noselect,delete n.__noselect)}function rr(t,e,n){t.prototype=e.prototype=n,n.constructor=t}function ir(t,e){var n=Object.create(t.prototype);for(var r in e)n[r]=e[r];return n}function or(){}var ar=.7,ur=1/ar,cr="\\s*([+-]?\\d+)\\s*",sr="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",fr="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",lr=/^#([0-9a-f]{3,8})$/,hr=new RegExp(`^rgb\\(${cr},${cr},${cr}\\)$`),dr=new RegExp(`^rgb\\(${fr},${fr},${fr}\\)$`),pr=new RegExp(`^rgba\\(${cr},${cr},${cr},${sr}\\)$`),gr=new RegExp(`^rgba\\(${fr},${fr},${fr},${sr}\\)$`),yr=new RegExp(`^hsl\\(${sr},${fr},${fr}\\)$`),mr=new RegExp(`^hsla\\(${sr},${fr},${fr},${sr}\\)$`),vr={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 br(){return this.rgb().formatHex()}function xr(){return this.rgb().formatRgb()}function wr(t){var e,n;return t=(t+"").trim().toLowerCase(),(e=lr.exec(t))?(n=e[1].length,e=parseInt(e[1],16),6===n?_r(e):3===n?new Br(e>>8&15|e>>4&240,e>>4&15|240&e,(15&e)<<4|15&e,1):8===n?Ar(e>>24&255,e>>16&255,e>>8&255,(255&e)/255):4===n?Ar(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=hr.exec(t))?new Br(e[1],e[2],e[3],1):(e=dr.exec(t))?new Br(255*e[1]/100,255*e[2]/100,255*e[3]/100,1):(e=pr.exec(t))?Ar(e[1],e[2],e[3],e[4]):(e=gr.exec(t))?Ar(255*e[1]/100,255*e[2]/100,255*e[3]/100,e[4]):(e=yr.exec(t))?Cr(e[1],e[2]/100,e[3]/100,1):(e=mr.exec(t))?Cr(e[1],e[2]/100,e[3]/100,e[4]):vr.hasOwnProperty(t)?_r(vr[t]):"transparent"===t?new Br(NaN,NaN,NaN,0):null}function _r(t){return new Br(t>>16&255,t>>8&255,255&t,1)}function Ar(t,e,n,r){return r<=0&&(t=e=n=NaN),new Br(t,e,n,r)}function Er(t){return t instanceof or||(t=wr(t)),t?new Br((t=t.rgb()).r,t.g,t.b,t.opacity):new Br}function Mr(t,e,n,r){return 1===arguments.length?Er(t):new Br(t,e,n,null==r?1:r)}function Br(t,e,n,r){this.r=+t,this.g=+e,this.b=+n,this.opacity=+r}function Tr(){return`#${Nr(this.r)}${Nr(this.g)}${Nr(this.b)}`}function kr(){const t=Fr(this.opacity);return`${1===t?"rgb(":"rgba("}${Sr(this.r)}, ${Sr(this.g)}, ${Sr(this.b)}${1===t?")":`, ${t})`}`}function Fr(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function Sr(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function Nr(t){return((t=Sr(t))<16?"0":"")+t.toString(16)}function Cr(t,e,n,r){return r<=0?t=e=n=NaN:n<=0||n>=1?t=e=NaN:e<=0&&(t=NaN),new Or(t,e,n,r)}function Ir(t){if(t instanceof Or)return new Or(t.h,t.s,t.l,t.opacity);if(t instanceof or||(t=wr(t)),!t)return new Or;if(t instanceof Or)return t;var e=(t=t.rgb()).r/255,n=t.g/255,r=t.b/255,i=Math.min(e,n,r),o=Math.max(e,n,r),a=NaN,u=o-i,c=(o+i)/2;return u?(a=e===o?(n-r)/u+6*(n<r):n===o?(r-e)/u+2:(e-n)/u+4,u/=c<.5?o+i:2-o-i,a*=60):u=c>0&&c<1?0:a,new Or(a,u,c,t.opacity)}function Rr(t,e,n,r){return 1===arguments.length?Ir(t):new Or(t,e,n,null==r?1:r)}function Or(t,e,n,r){this.h=+t,this.s=+e,this.l=+n,this.opacity=+r}function Pr(t){return(t=(t||0)%360)<0?t+360:t}function Dr(t){return Math.max(0,Math.min(1,t||0))}function Lr(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 Ur(t,e,n,r,i){var o=t*t,a=o*t;return((1-3*t+3*o-a)*e+(4-6*o+3*a)*n+(1+3*t+3*o-3*a)*r+a*i)/6}function $r(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),i=t[r],o=t[r+1],a=r>0?t[r-1]:2*i-o,u=r<e-1?t[r+2]:2*o-i;return Ur((n-r/e)*e,a,i,o,u)}}function jr(t){var e=t.length;return function(n){var r=Math.floor(((n%=1)<0?++n:n)*e),i=t[(r+e-1)%e],o=t[r%e],a=t[(r+1)%e],u=t[(r+2)%e];return Ur((n-r/e)*e,i,o,a,u)}}rr(or,wr,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:br,formatHex:br,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return Ir(this).formatHsl()},formatRgb:xr,toString:xr}),rr(Br,Mr,ir(or,{brighter(t){return t=null==t?ur:Math.pow(ur,t),new Br(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=null==t?ar:Math.pow(ar,t),new Br(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new Br(Sr(this.r),Sr(this.g),Sr(this.b),Fr(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:Tr,formatHex:Tr,formatHex8:function(){return`#${Nr(this.r)}${Nr(this.g)}${Nr(this.b)}${Nr(255*(isNaN(this.opacity)?1:this.opacity))}`},formatRgb:kr,toString:kr})),rr(Or,Rr,ir(or,{brighter(t){return t=null==t?ur:Math.pow(ur,t),new Or(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=null==t?ar:Math.pow(ar,t),new Or(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,i=2*n-r;return new Br(Lr(t>=240?t-240:t+120,i,r),Lr(t,i,r),Lr(t<120?t+240:t-120,i,r),this.opacity)},clamp(){return new Or(Pr(this.h),Dr(this.s),Dr(this.l),Fr(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=Fr(this.opacity);return`${1===t?"hsl(":"hsla("}${Pr(this.h)}, ${100*Dr(this.s)}%, ${100*Dr(this.l)}%${1===t?")":`, ${t})`}`}}));const zr=t=>()=>t;function Hr(t,e){return function(n){return t+n*e}}function qr(t,e){var n=e-t;return n?Hr(t,n>180||n<-180?n-360*Math.round(n/360):n):zr(isNaN(t)?e:t)}function Yr(t,e){var n=e-t;return n?Hr(t,n):zr(isNaN(t)?e:t)}const Gr=function t(e){var n=function(t){return 1==(t=+t)?Yr: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):zr(isNaN(e)?n:e)}}(e);function r(t,e){var r=n((t=Mr(t)).r,(e=Mr(e)).r),i=n(t.g,e.g),o=n(t.b,e.b),a=Yr(t.opacity,e.opacity);return function(e){return t.r=r(e),t.g=i(e),t.b=o(e),t.opacity=a(e),t+""}}return r.gamma=t,r}(1);function Vr(t){return function(e){var n,r,i=e.length,o=new Array(i),a=new Array(i),u=new Array(i);for(n=0;n<i;++n)r=Mr(e[n]),o[n]=r.r||0,a[n]=r.g||0,u[n]=r.b||0;return o=t(o),a=t(a),u=t(u),r.opacity=1,function(t){return r.r=o(t),r.g=a(t),r.b=u(t),r+""}}}var Wr=Vr($r),Xr=Vr(jr);function Jr(t,e){e||(e=[]);var n,r=t?Math.min(e.length,t.length):0,i=e.slice();return function(o){for(n=0;n<r;++n)i[n]=t[n]*(1-o)+e[n]*o;return i}}function Zr(t){return ArrayBuffer.isView(t)&&!(t instanceof DataView)}function Kr(t,e){return(Zr(e)?Jr:Qr)(t,e)}function Qr(t,e){var n,r=e?e.length:0,i=t?Math.min(r,t.length):0,o=new Array(i),a=new Array(r);for(n=0;n<i;++n)o[n]=ai(t[n],e[n]);for(;n<r;++n)a[n]=e[n];return function(t){for(n=0;n<i;++n)a[n]=o[n](t);return a}}function ti(t,e){var n=new Date;return t=+t,e=+e,function(r){return n.setTime(t*(1-r)+e*r),n}}function ei(t,e){return t=+t,e=+e,function(n){return t*(1-n)+e*n}}function ni(t,e){var n,r={},i={};for(n in null!==t&&"object"==typeof t||(t={}),null!==e&&"object"==typeof e||(e={}),e)n in t?r[n]=ai(t[n],e[n]):i[n]=e[n];return function(t){for(n in r)i[n]=r[n](t);return i}}var ri=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,ii=new RegExp(ri.source,"g");function oi(t,e){var n,r,i,o=ri.lastIndex=ii.lastIndex=0,a=-1,u=[],c=[];for(t+="",e+="";(n=ri.exec(t))&&(r=ii.exec(e));)(i=r.index)>o&&(i=e.slice(o,i),u[a]?u[a]+=i:u[++a]=i),(n=n[0])===(r=r[0])?u[a]?u[a]+=r:u[++a]=r:(u[++a]=null,c.push({i:a,x:ei(n,r)})),o=ii.lastIndex;return o<e.length&&(i=e.slice(o),u[a]?u[a]+=i:u[++a]=i),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 n,r=0;r<e;++r)u[(n=c[r]).i]=n.x(t);return u.join("")})}function ai(t,e){var n,r=typeof e;return null==e||"boolean"===r?zr(e):("number"===r?ei:"string"===r?(n=wr(e))?(e=n,Gr):oi:e instanceof wr?Gr:e instanceof Date?ti:Zr(e)?Jr:Array.isArray(e)?Qr:"function"!=typeof e.valueOf&&"function"!=typeof e.toString||isNaN(e)?ni:ei)(t,e)}function ui(t){let e;for(;e=t.sourceEvent;)t=e;return t}function ci(t,e){if(t=ui(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 i=e.getBoundingClientRect();return[t.clientX-i.left-e.clientLeft,t.clientY-i.top-e.clientTop]}}return[t.pageX,t.pageY]}var si,fi,li=0,hi=0,di=0,pi=0,gi=0,yi=0,mi="object"==typeof performance&&performance.now?performance:Date,vi="object"==typeof window&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(t){setTimeout(t,17)};function bi(){return gi||(vi(xi),gi=mi.now()+yi)}function xi(){gi=0}function wi(){this._call=this._time=this._next=null}function _i(t,e,n){var r=new wi;return r.restart(t,e,n),r}function Ai(){bi(),++li;for(var t,e=si;e;)(t=gi-e._time)>=0&&e._call.call(void 0,t),e=e._next;--li}function Ei(){gi=(pi=mi.now())+yi,li=hi=0;try{Ai()}finally{li=0,function(){for(var t,e,n=si,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:si=e);fi=t,Bi(r)}(),gi=0}}function Mi(){var t=mi.now(),e=t-pi;e>1e3&&(yi-=e,pi=t)}function Bi(t){li||(hi&&(hi=clearTimeout(hi)),t-gi>24?(t<1/0&&(hi=setTimeout(Ei,t-mi.now()-yi)),di&&(di=clearInterval(di))):(di||(pi=mi.now(),di=setInterval(Mi,1e3)),li=1,vi(Ei)))}function Ti(t,e,n){var r=new wi;return e=null==e?0:+e,r.restart((n=>{r.stop(),t(n+e)}),e,n),r}wi.prototype=_i.prototype={constructor:wi,restart:function(t,e,n){if("function"!=typeof t)throw new TypeError("callback is not a function");n=(null==n?bi():+n)+(null==e?0:+e),this._next||fi===this||(fi?fi._next=this:si=this,fi=this),this._call=t,this._time=n,Bi()},stop:function(){this._call&&(this._call=null,this._time=1/0,Bi())}};var ki=Oe("start","end","cancel","interrupt"),Fi=[],Si=1,Ni=2,Ci=5,Ii=6;function Ri(t,e,n,r,i,o){var a=t.__transition;if(a){if(n in a)return}else t.__transition={};!function(t,e,n){var r,i=t.__transition;function o(c){var s,f,l,h;if(n.state!==Si)return u();for(s in i)if((h=i[s]).name===n.name){if(3===h.state)return Ti(o);4===h.state?(h.state=Ii,h.timer.stop(),h.on.call("interrupt",t,t.__data__,h.index,h.group),delete i[s]):+s<e&&(h.state=Ii,h.timer.stop(),h.on.call("cancel",t,t.__data__,h.index,h.group),delete i[s])}if(Ti((function(){3===n.state&&(n.state=4,n.timer.restart(a,n.delay,n.time),a(c))})),n.state=Ni,n.on.call("start",t,t.__data__,n.index,n.group),n.state===Ni){for(n.state=3,r=new Array(l=n.tween.length),s=0,f=-1;s<l;++s)(h=n.tween[s].value.call(t,t.__data__,n.index,n.group))&&(r[++f]=h);r.length=f+1}}function a(e){for(var i=e<n.duration?n.ease.call(null,e/n.duration):(n.timer.restart(u),n.state=Ci,1),o=-1,a=r.length;++o<a;)r[o].call(t,i);n.state===Ci&&(n.on.call("end",t,t.__data__,n.index,n.group),u())}function u(){for(var r in n.state=Ii,n.timer.stop(),delete i[e],i)return;delete t.__transition}i[e]=n,n.timer=_i((function(t){n.state=Si,n.timer.restart(o,n.delay,n.time),n.delay<=t&&o(t-n.delay)}),0,n.time)}(t,n,{name:e,index:r,group:i,on:ki,tween:Fi,time:o.time,delay:o.delay,duration:o.duration,ease:o.ease,timer:null,state:0})}function Oi(t,e){var n=Di(t,e);if(n.state>0)throw new Error("too late; already scheduled");return n}function Pi(t,e){var n=Di(t,e);if(n.state>3)throw new Error("too late; already running");return n}function Di(t,e){var n=t.__transition;if(!n||!(n=n[e]))throw new Error("transition not found");return n}function Li(t,e){var n,r,i,o=t.__transition,a=!0;if(o){for(i in e=null==e?null:e+"",o)(n=o[i]).name===e?(r=n.state>Ni&&n.state<Ci,n.state=Ii,n.timer.stop(),n.on.call(r?"interrupt":"cancel",t,t.__data__,n.index,n.group),delete o[i]):a=!1;a&&delete t.__transition}}var Ui,$i=180/Math.PI,ji={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function zi(t,e,n,r,i,o){var a,u,c;return(a=Math.sqrt(t*t+e*e))&&(t/=a,e/=a),(c=t*n+e*r)&&(n-=t*c,r-=e*c),(u=Math.sqrt(n*n+r*r))&&(n/=u,r/=u,c/=u),t*r<e*n&&(t=-t,e=-e,c=-c,a=-a),{translateX:i,translateY:o,rotate:Math.atan2(e,t)*$i,skewX:Math.atan(c)*$i,scaleX:a,scaleY:u}}function Hi(t,e,n,r){function i(t){return t.length?t.pop()+" ":""}return function(o,a){var u=[],c=[];return o=t(o),a=t(a),function(t,r,i,o,a,u){if(t!==i||r!==o){var c=a.push("translate(",null,e,null,n);u.push({i:c-4,x:ei(t,i)},{i:c-2,x:ei(r,o)})}else(i||o)&&a.push("translate("+i+e+o+n)}(o.translateX,o.translateY,a.translateX,a.translateY,u,c),function(t,e,n,o){t!==e?(t-e>180?e+=360:e-t>180&&(t+=360),o.push({i:n.push(i(n)+"rotate(",null,r)-2,x:ei(t,e)})):e&&n.push(i(n)+"rotate("+e+r)}(o.rotate,a.rotate,u,c),function(t,e,n,o){t!==e?o.push({i:n.push(i(n)+"skewX(",null,r)-2,x:ei(t,e)}):e&&n.push(i(n)+"skewX("+e+r)}(o.skewX,a.skewX,u,c),function(t,e,n,r,o,a){if(t!==n||e!==r){var u=o.push(i(o)+"scale(",null,",",null,")");a.push({i:u-4,x:ei(t,n)},{i:u-2,x:ei(e,r)})}else 1===n&&1===r||o.push(i(o)+"scale("+n+","+r+")")}(o.scaleX,o.scaleY,a.scaleX,a.scaleY,u,c),o=a=null,function(t){for(var e,n=-1,r=c.length;++n<r;)u[(e=c[n]).i]=e.x(t);return u.join("")}}}var qi=Hi((function(t){const e=new("function"==typeof DOMMatrix?DOMMatrix:WebKitCSSMatrix)(t+"");return e.isIdentity?ji:zi(e.a,e.b,e.c,e.d,e.e,e.f)}),"px, ","px)","deg)"),Yi=Hi((function(t){return null==t?ji:(Ui||(Ui=document.createElementNS("http://www.w3.org/2000/svg","g")),Ui.setAttribute("transform",t),(t=Ui.transform.baseVal.consolidate())?zi((t=t.matrix).a,t.b,t.c,t.d,t.e,t.f):ji)}),", ",")",")");function Gi(t,e){var n,r;return function(){var i=Pi(this,t),o=i.tween;if(o!==n)for(var a=0,u=(r=n=o).length;a<u;++a)if(r[a].name===e){(r=r.slice()).splice(a,1);break}i.tween=r}}function Vi(t,e,n){var r,i;if("function"!=typeof n)throw new Error;return function(){var o=Pi(this,t),a=o.tween;if(a!==r){i=(r=a).slice();for(var u={name:e,value:n},c=0,s=i.length;c<s;++c)if(i[c].name===e){i[c]=u;break}c===s&&i.push(u)}o.tween=i}}function Wi(t,e,n){var r=t._id;return t.each((function(){var t=Pi(this,r);(t.value||(t.value={}))[e]=n.apply(this,arguments)})),function(t){return Di(t,r).value[e]}}function Xi(t,e){var n;return("number"==typeof e?ei:e instanceof wr?Gr:(n=wr(e))?(e=n,Gr):oi)(t,e)}function Ji(t){return function(){this.removeAttribute(t)}}function Zi(t){return function(){this.removeAttributeNS(t.space,t.local)}}function Ki(t,e,n){var r,i,o=n+"";return function(){var a=this.getAttribute(t);return a===o?null:a===r?i:i=e(r=a,n)}}function Qi(t,e,n){var r,i,o=n+"";return function(){var a=this.getAttributeNS(t.space,t.local);return a===o?null:a===r?i:i=e(r=a,n)}}function to(t,e,n){var r,i,o;return function(){var a,u,c=n(this);if(null!=c)return(a=this.getAttribute(t))===(u=c+"")?null:a===r&&u===i?o:(i=u,o=e(r=a,c));this.removeAttribute(t)}}function eo(t,e,n){var r,i,o;return function(){var a,u,c=n(this);if(null!=c)return(a=this.getAttributeNS(t.space,t.local))===(u=c+"")?null:a===r&&u===i?o:(i=u,o=e(r=a,c));this.removeAttributeNS(t.space,t.local)}}function no(t,e){var n,r;function i(){var i=e.apply(this,arguments);return i!==r&&(n=(r=i)&&function(t,e){return function(n){this.setAttributeNS(t.space,t.local,e.call(this,n))}}(t,i)),n}return i._value=e,i}function ro(t,e){var n,r;function i(){var i=e.apply(this,arguments);return i!==r&&(n=(r=i)&&function(t,e){return function(n){this.setAttribute(t,e.call(this,n))}}(t,i)),n}return i._value=e,i}function io(t,e){return function(){Oi(this,t).delay=+e.apply(this,arguments)}}function oo(t,e){return e=+e,function(){Oi(this,t).delay=e}}function ao(t,e){return function(){Pi(this,t).duration=+e.apply(this,arguments)}}function uo(t,e){return e=+e,function(){Pi(this,t).duration=e}}var co=Xn.prototype.constructor;function so(t){return function(){this.style.removeProperty(t)}}var fo=0;function lo(t,e,n,r){this._groups=t,this._parents=e,this._name=n,this._id=r}function ho(t){return Xn().transition(t)}function po(){return++fo}var go=Xn.prototype;function yo(t){return t*t*t}function mo(t){return--t*t*t+1}function vo(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}lo.prototype=ho.prototype={constructor:lo,select:function(t){var e=this._name,n=this._id;"function"!=typeof t&&(t=De(t));for(var r=this._groups,i=r.length,o=new Array(i),a=0;a<i;++a)for(var u,c,s=r[a],f=s.length,l=o[a]=new Array(f),h=0;h<f;++h)(u=s[h])&&(c=t.call(u,u.__data__,h,s))&&("__data__"in u&&(c.__data__=u.__data__),l[h]=c,Ri(l[h],e,n,h,l,Di(u,n)));return new lo(o,this._parents,e,n)},selectAll:function(t){var e=this._name,n=this._id;"function"!=typeof t&&(t=$e(t));for(var r=this._groups,i=r.length,o=[],a=[],u=0;u<i;++u)for(var c,s=r[u],f=s.length,l=0;l<f;++l)if(c=s[l]){for(var h,d=t.call(c,c.__data__,l,s),p=Di(c,n),g=0,y=d.length;g<y;++g)(h=d[g])&&Ri(h,e,n,g,d,p);o.push(d),a.push(c)}return new lo(o,a,e,n)},selectChild:go.selectChild,selectChildren:go.selectChildren,filter:function(t){"function"!=typeof t&&(t=je(t));for(var e=this._groups,n=e.length,r=new Array(n),i=0;i<n;++i)for(var o,a=e[i],u=a.length,c=r[i]=[],s=0;s<u;++s)(o=a[s])&&t.call(o,o.__data__,s,a)&&c.push(o);return new lo(r,this._parents,this._name,this._id)},merge:function(t){if(t._id!==this._id)throw new Error;for(var e=this._groups,n=t._groups,r=e.length,i=n.length,o=Math.min(r,i),a=new Array(r),u=0;u<o;++u)for(var c,s=e[u],f=n[u],l=s.length,h=a[u]=new Array(l),d=0;d<l;++d)(c=s[d]||f[d])&&(h[d]=c);for(;u<r;++u)a[u]=e[u];return new lo(a,this._parents,this._name,this._id)},selection:function(){return new co(this._groups,this._parents)},transition:function(){for(var t=this._name,e=this._id,n=po(),r=this._groups,i=r.length,o=0;o<i;++o)for(var a,u=r[o],c=u.length,s=0;s<c;++s)if(a=u[s]){var f=Di(a,e);Ri(a,t,n,s,u,{time:f.time+f.delay+f.duration,delay:0,duration:f.duration,ease:f.ease})}return new lo(r,this._parents,t,n)},call:go.call,nodes:go.nodes,node:go.node,size:go.size,empty:go.empty,each:go.each,on:function(t,e){var n=this._id;return arguments.length<2?Di(this.node(),n).on.on(t):this.each(function(t,e,n){var r,i,o=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)?Oi:Pi;return function(){var a=o(this,t),u=a.on;u!==r&&(i=(r=u).copy()).on(e,n),a.on=i}}(n,t,e))},attr:function(t,e){var n=nn(t),r="transform"===n?Yi:Xi;return this.attrTween(t,"function"==typeof e?(n.local?eo:to)(n,r,Wi(this,"attr."+t,e)):null==e?(n.local?Zi:Ji)(n):(n.local?Qi:Ki)(n,r,e))},attrTween:function(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=nn(t);return this.tween(n,(r.local?no:ro)(r,e))},style:function(t,e,n){var r="transform"==(t+="")?qi:Xi;return null==e?this.styleTween(t,function(t,e){var n,r,i;return function(){var o=pn(this,t),a=(this.style.removeProperty(t),pn(this,t));return o===a?null:o===n&&a===r?i:i=e(n=o,r=a)}}(t,r)).on("end.style."+t,so(t)):"function"==typeof e?this.styleTween(t,function(t,e,n){var r,i,o;return function(){var a=pn(this,t),u=n(this),c=u+"";return null==u&&(this.style.removeProperty(t),c=u=pn(this,t)),a===c?null:a===r&&c===i?o:(i=c,o=e(r=a,u))}}(t,r,Wi(this,"style."+t,e))).each(function(t,e){var n,r,i,o,a="style."+e,u="end."+a;return function(){var c=Pi(this,t),s=c.on,f=null==c.value[a]?o||(o=so(e)):void 0;s===n&&i===f||(r=(n=s).copy()).on(u,i=f),c.on=r}}(this._id,t)):this.styleTween(t,function(t,e,n){var r,i,o=n+"";return function(){var a=pn(this,t);return a===o?null:a===r?i:i=e(r=a,n)}}(t,r,e),n).on("end.style."+t,null)},styleTween:function(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,i;function o(){var o=e.apply(this,arguments);return o!==i&&(r=(i=o)&&function(t,e,n){return function(r){this.style.setProperty(t,e.call(this,r),n)}}(t,o,n)),r}return o._value=e,o}(t,e,null==n?"":n))},text:function(t){return this.tween("text","function"==typeof t?function(t){return function(){var e=t(this);this.textContent=null==e?"":e}}(Wi(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,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))},remove:function(){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))},tween:function(t,e){var n=this._id;if(t+="",arguments.length<2){for(var r,i=Di(this.node(),n).tween,o=0,a=i.length;o<a;++o)if((r=i[o]).name===t)return r.value;return null}return this.each((null==e?Gi:Vi)(n,t,e))},delay:function(t){var e=this._id;return arguments.length?this.each(("function"==typeof t?io:oo)(e,t)):Di(this.node(),e).delay},duration:function(t){var e=this._id;return arguments.length?this.each(("function"==typeof t?ao:uo)(e,t)):Di(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(){Pi(this,t).ease=e}}(e,t)):Di(this.node(),e).ease},easeVarying:function(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;Pi(this,t).ease=n}}(this._id,t))},end:function(){var t,e,n=this,r=n._id,i=n.size();return new Promise((function(o,a){var u={value:a},c={value:function(){0==--i&&o()}};n.each((function(){var n=Pi(this,r),i=n.on;i!==t&&((e=(t=i).copy())._.cancel.push(u),e._.interrupt.push(u),e._.end.push(c)),n.on=e})),0===i&&o()}))},[Symbol.iterator]:go[Symbol.iterator]};var bo={time:null,delay:0,duration:250,ease:vo};function xo(t,e){for(var n;!(n=t.__transition)||!(n=n[e]);)if(!(t=t.parentNode))throw new Error(`transition ${e} not found`);return n}Xn.prototype.interrupt=function(t){return this.each((function(){Li(this,t)}))},Xn.prototype.transition=function(t){var e,n;t instanceof lo?(e=t._id,t=t._name):(e=po(),(n=bo).time=bi(),t=null==t?null:t+"");for(var r=this._groups,i=r.length,o=0;o<i;++o)for(var a,u=r[o],c=u.length,s=0;s<c;++s)(a=u[s])&&Ri(a,t,e,s,u,n||xo(a,e));return new lo(r,this._parents,t,e)};var wo=[null];function _o(t,e){var n,r,i=t.__transition;if(i)for(r in e=null==e?null:e+"",i)if((n=i[r]).state>Si&&n.name===e)return new lo([[t]],wo,e,+r);return null}const Ao=t=>()=>t;function Eo(t,{sourceEvent:e,target:n,selection:r,mode:i,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},selection:{value:r,enumerable:!0,configurable:!0},mode:{value:i,enumerable:!0,configurable:!0},_:{value:o}})}function Mo(t){t.preventDefault(),t.stopImmediatePropagation()}var Bo={name:"drag"},To={name:"space"},ko={name:"handle"},Fo={name:"center"};const{abs:So,max:No,min:Co}=Math;function Io(t){return[+t[0],+t[1]]}function Ro(t){return[Io(t[0]),Io(t[1])]}var Oo={name:"x",handles:["w","e"].map(Ho),input:function(t,e){return null==t?null:[[+t[0],e[0][1]],[+t[1],e[1][1]]]},output:function(t){return t&&[t[0][0],t[1][0]]}},Po={name:"y",handles:["n","s"].map(Ho),input:function(t,e){return null==t?null:[[e[0][0],+t[0]],[e[1][0],+t[1]]]},output:function(t){return t&&[t[0][1],t[1][1]]}},Do={name:"xy",handles:["n","w","e","s","nw","ne","sw","se"].map(Ho),input:function(t){return null==t?null:Ro(t)},output:function(t){return t}},Lo={overlay:"crosshair",selection:"move",n:"ns-resize",e:"ew-resize",s:"ns-resize",w:"ew-resize",nw:"nwse-resize",ne:"nesw-resize",se:"nwse-resize",sw:"nesw-resize"},Uo={e:"w",w:"e",nw:"ne",ne:"nw",se:"sw",sw:"se"},$o={n:"s",s:"n",nw:"sw",ne:"se",se:"ne",sw:"nw"},jo={overlay:1,selection:1,n:null,e:1,s:null,w:-1,nw:-1,ne:1,se:1,sw:-1},zo={overlay:1,selection:1,n:-1,e:null,s:1,w:null,nw:-1,ne:-1,se:1,sw:1};function Ho(t){return{type:t}}function qo(t){return!t.ctrlKey&&!t.button}function Yo(){var t=this.ownerSVGElement||this;return 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]]}function Go(){return navigator.maxTouchPoints||"ontouchstart"in this}function Vo(t){for(;!t.__brush;)if(!(t=t.parentNode))return;return t.__brush}function Wo(t){var e=t.__brush;return e?e.dim.output(e.selection):null}function Xo(){return Ko(Oo)}function Jo(){return Ko(Po)}function Zo(){return Ko(Do)}function Ko(t){var e,n=Yo,r=qo,i=Go,o=!0,a=Oe("start","brush","end"),u=6;function c(e){var n=e.property("__brush",g).selectAll(".overlay").data([Ho("overlay")]);n.enter().append("rect").attr("class","overlay").attr("pointer-events","all").attr("cursor",Lo.overlay).merge(n).each((function(){var t=Vo(this).extent;Jn(this).attr("x",t[0][0]).attr("y",t[0][1]).attr("width",t[1][0]-t[0][0]).attr("height",t[1][1]-t[0][1])})),e.selectAll(".selection").data([Ho("selection")]).enter().append("rect").attr("class","selection").attr("cursor",Lo.selection).attr("fill","#777").attr("fill-opacity",.3).attr("stroke","#fff").attr("shape-rendering","crispEdges");var r=e.selectAll(".handle").data(t.handles,(function(t){return t.type}));r.exit().remove(),r.enter().append("rect").attr("class",(function(t){return"handle handle--"+t.type})).attr("cursor",(function(t){return Lo[t.type]})),e.each(s).attr("fill","none").attr("pointer-events","all").on("mousedown.brush",h).filter(i).on("touchstart.brush",h).on("touchmove.brush",d).on("touchend.brush touchcancel.brush",p).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function s(){var t=Jn(this),e=Vo(this).selection;e?(t.selectAll(".selection").style("display",null).attr("x",e[0][0]).attr("y",e[0][1]).attr("width",e[1][0]-e[0][0]).attr("height",e[1][1]-e[0][1]),t.selectAll(".handle").style("display",null).attr("x",(function(t){return"e"===t.type[t.type.length-1]?e[1][0]-u/2:e[0][0]-u/2})).attr("y",(function(t){return"s"===t.type[0]?e[1][1]-u/2:e[0][1]-u/2})).attr("width",(function(t){return"n"===t.type||"s"===t.type?e[1][0]-e[0][0]+u:u})).attr("height",(function(t){return"e"===t.type||"w"===t.type?e[1][1]-e[0][1]+u:u}))):t.selectAll(".selection,.handle").style("display","none").attr("x",null).attr("y",null).attr("width",null).attr("height",null)}function f(t,e,n){var r=t.__brush.emitter;return!r||n&&r.clean?new l(t,e,n):r}function l(t,e,n){this.that=t,this.args=e,this.state=t.__brush,this.active=0,this.clean=n}function h(n){if((!e||n.touches)&&r.apply(this,arguments)){var i,a,u,c,l,h,d,p,g,y,m,v=this,b=n.target.__data__.type,x="selection"===(o&&n.metaKey?b="overlay":b)?Bo:o&&n.altKey?Fo:ko,w=t===Po?null:jo[b],_=t===Oo?null:zo[b],A=Vo(v),E=A.extent,M=A.selection,B=E[0][0],T=E[0][1],k=E[1][0],F=E[1][1],S=0,N=0,C=w&&_&&o&&n.shiftKey,I=Array.from(n.touches||[n],(t=>{const e=t.identifier;return(t=ci(t,v)).point0=t.slice(),t.identifier=e,t}));Li(v);var R=f(v,arguments,!0).beforestart();if("overlay"===b){M&&(g=!0);const e=[I[0],I[1]||I[0]];A.selection=M=[[i=t===Po?B:Co(e[0][0],e[1][0]),u=t===Oo?T:Co(e[0][1],e[1][1])],[l=t===Po?k:No(e[0][0],e[1][0]),d=t===Oo?F:No(e[0][1],e[1][1])]],I.length>1&&U(n)}else i=M[0][0],u=M[0][1],l=M[1][0],d=M[1][1];a=i,c=u,h=l,p=d;var O=Jn(v).attr("pointer-events","none"),P=O.selectAll(".overlay").attr("cursor",Lo[b]);if(n.touches)R.moved=L,R.ended=$;else{var D=Jn(n.view).on("mousemove.brush",L,!0).on("mouseup.brush",$,!0);o&&D.on("keydown.brush",(function(t){switch(t.keyCode){case 16:C=w&&_;break;case 18:x===ko&&(w&&(l=h-S*w,i=a+S*w),_&&(d=p-N*_,u=c+N*_),x=Fo,U(t));break;case 32:x!==ko&&x!==Fo||(w<0?l=h-S:w>0&&(i=a-S),_<0?d=p-N:_>0&&(u=c-N),x=To,P.attr("cursor",Lo.selection),U(t));break;default:return}Mo(t)}),!0).on("keyup.brush",(function(t){switch(t.keyCode){case 16:C&&(y=m=C=!1,U(t));break;case 18:x===Fo&&(w<0?l=h:w>0&&(i=a),_<0?d=p:_>0&&(u=c),x=ko,U(t));break;case 32:x===To&&(t.altKey?(w&&(l=h-S*w,i=a+S*w),_&&(d=p-N*_,u=c+N*_),x=Fo):(w<0?l=h:w>0&&(i=a),_<0?d=p:_>0&&(u=c),x=ko),P.attr("cursor",Lo[b]),U(t));break;default:return}Mo(t)}),!0),er(n.view)}s.call(v),R.start(n,x.name)}function L(t){for(const e of t.changedTouches||[t])for(const t of I)t.identifier===e.identifier&&(t.cur=ci(e,v));if(C&&!y&&!m&&1===I.length){const t=I[0];So(t.cur[0]-t[0])>So(t.cur[1]-t[1])?m=!0:y=!0}for(const t of I)t.cur&&(t[0]=t.cur[0],t[1]=t.cur[1]);g=!0,Mo(t),U(t)}function U(t){const e=I[0],n=e.point0;var r;switch(S=e[0]-n[0],N=e[1]-n[1],x){case To:case Bo:w&&(S=No(B-i,Co(k-l,S)),a=i+S,h=l+S),_&&(N=No(T-u,Co(F-d,N)),c=u+N,p=d+N);break;case ko:I[1]?(w&&(a=No(B,Co(k,I[0][0])),h=No(B,Co(k,I[1][0])),w=1),_&&(c=No(T,Co(F,I[0][1])),p=No(T,Co(F,I[1][1])),_=1)):(w<0?(S=No(B-i,Co(k-i,S)),a=i+S,h=l):w>0&&(S=No(B-l,Co(k-l,S)),a=i,h=l+S),_<0?(N=No(T-u,Co(F-u,N)),c=u+N,p=d):_>0&&(N=No(T-d,Co(F-d,N)),c=u,p=d+N));break;case Fo:w&&(a=No(B,Co(k,i-S*w)),h=No(B,Co(k,l+S*w))),_&&(c=No(T,Co(F,u-N*_)),p=No(T,Co(F,d+N*_)))}h<a&&(w*=-1,r=i,i=l,l=r,r=a,a=h,h=r,b in Uo&&P.attr("cursor",Lo[b=Uo[b]])),p<c&&(_*=-1,r=u,u=d,d=r,r=c,c=p,p=r,b in $o&&P.attr("cursor",Lo[b=$o[b]])),A.selection&&(M=A.selection),y&&(a=M[0][0],h=M[1][0]),m&&(c=M[0][1],p=M[1][1]),M[0][0]===a&&M[0][1]===c&&M[1][0]===h&&M[1][1]===p||(A.selection=[[a,c],[h,p]],s.call(v),R.brush(t,x.name))}function $(t){if(function(t){t.stopImmediatePropagation()}(t),t.touches){if(t.touches.length)return;e&&clearTimeout(e),e=setTimeout((function(){e=null}),500)}else nr(t.view,g),D.on("keydown.brush keyup.brush mousemove.brush mouseup.brush",null);O.attr("pointer-events","all"),P.attr("cursor",Lo.overlay),A.selection&&(M=A.selection),function(t){return t[0][0]===t[1][0]||t[0][1]===t[1][1]}(M)&&(A.selection=null,s.call(v)),R.end(t,x.name)}}function d(t){f(this,arguments).moved(t)}function p(t){f(this,arguments).ended(t)}function g(){var e=this.__brush||{selection:null};return e.extent=Ro(n.apply(this,arguments)),e.dim=t,e}return c.move=function(e,n,r){e.tween?e.on("start.brush",(function(t){f(this,arguments).beforestart().start(t)})).on("interrupt.brush end.brush",(function(t){f(this,arguments).end(t)})).tween("brush",(function(){var e=this,r=e.__brush,i=f(e,arguments),o=r.selection,a=t.input("function"==typeof n?n.apply(this,arguments):n,r.extent),u=ai(o,a);function c(t){r.selection=1===t&&null===a?null:u(t),s.call(e),i.brush()}return null!==o&&null!==a?c:c(1)})):e.each((function(){var e=this,i=arguments,o=e.__brush,a=t.input("function"==typeof n?n.apply(e,i):n,o.extent),u=f(e,i).beforestart();Li(e),o.selection=null===a?null:a,s.call(e),u.start(r).brush(r).end(r)}))},c.clear=function(t,e){c.move(t,null,e)},l.prototype={beforestart:function(){return 1==++this.active&&(this.state.emitter=this,this.starting=!0),this},start:function(t,e){return this.starting?(this.starting=!1,this.emit("start",t,e)):this.emit("brush",t),this},brush:function(t,e){return this.emit("brush",t,e),this},end:function(t,e){return 0==--this.active&&(delete this.state.emitter,this.emit("end",t,e)),this},emit:function(e,n,r){var i=Jn(this.that).datum();a.call(e,this.that,new Eo(e,{sourceEvent:n,target:c,selection:t.output(this.state.selection),mode:r,dispatch:a}),i)}},c.extent=function(t){return arguments.length?(n="function"==typeof t?t:Ao(Ro(t)),c):n},c.filter=function(t){return arguments.length?(r="function"==typeof t?t:Ao(!!t),c):r},c.touchable=function(t){return arguments.length?(i="function"==typeof t?t:Ao(!!t),c):i},c.handleSize=function(t){return arguments.length?(u=+t,c):u},c.keyModifiers=function(t){return arguments.length?(o=!!t,c):o},c.on=function(){var t=a.on.apply(a,arguments);return t===a?c:t},c}var Qo=Math.abs,ta=Math.cos,ea=Math.sin,na=Math.PI,ra=na/2,ia=2*na,oa=Math.max,aa=1e-12;function ua(t,e){return Array.from({length:e-t},((e,n)=>t+n))}function ca(){return la(!1,!1)}function sa(){return la(!1,!0)}function fa(){return la(!0,!1)}function la(t,e){var n=0,r=null,i=null,o=null;function a(a){var u,c=a.length,s=new Array(c),f=ua(0,c),l=new Array(c*c),h=new Array(c),d=0;a=Float64Array.from({length:c*c},e?(t,e)=>a[e%c][e/c|0]:(t,e)=>a[e/c|0][e%c]);for(let e=0;e<c;++e){let n=0;for(let r=0;r<c;++r)n+=a[e*c+r]+t*a[r*c+e];d+=s[e]=n}u=(d=oa(0,ia-n*c)/d)?n:ia/c;{let e=0;r&&f.sort(((t,e)=>r(s[t],s[e])));for(const n of f){const r=e;if(t){const t=ua(1+~c,c).filter((t=>t<0?a[~t*c+n]:a[n*c+t]));i&&t.sort(((t,e)=>i(t<0?-a[~t*c+n]:a[n*c+t],e<0?-a[~e*c+n]:a[n*c+e])));for(const r of t)r<0?(l[~r*c+n]||(l[~r*c+n]={source:null,target:null})).target={index:n,startAngle:e,endAngle:e+=a[~r*c+n]*d,value:a[~r*c+n]}:(l[n*c+r]||(l[n*c+r]={source:null,target:null})).source={index:n,startAngle:e,endAngle:e+=a[n*c+r]*d,value:a[n*c+r]};h[n]={index:n,startAngle:r,endAngle:e,value:s[n]}}else{const t=ua(0,c).filter((t=>a[n*c+t]||a[t*c+n]));i&&t.sort(((t,e)=>i(a[n*c+t],a[n*c+e])));for(const r of t){let t;if(n<r?(t=l[n*c+r]||(l[n*c+r]={source:null,target:null}),t.source={index:n,startAngle:e,endAngle:e+=a[n*c+r]*d,value:a[n*c+r]}):(t=l[r*c+n]||(l[r*c+n]={source:null,target:null}),t.target={index:n,startAngle:e,endAngle:e+=a[n*c+r]*d,value:a[n*c+r]},n===r&&(t.source=t.target)),t.source&&t.target&&t.source.value<t.target.value){const e=t.source;t.source=t.target,t.target=e}}h[n]={index:n,startAngle:r,endAngle:e,value:s[n]}}e+=u}}return(l=Object.values(l)).groups=h,o?l.sort(o):l}return a.padAngle=function(t){return arguments.length?(n=oa(0,t),a):n},a.sortGroups=function(t){return arguments.length?(r=t,a):r},a.sortSubgroups=function(t){return arguments.length?(i=t,a):i},a.sortChords=function(t){return arguments.length?(null==t?o=null:(o=function(t){return function(e,n){return t(e.source.value+e.target.value,n.source.value+n.target.value)}}(t))._=t,a):o&&o._},a}const ha=Math.PI,da=2*ha,pa=1e-6,ga=da-pa;function ya(t){this._+=t[0];for(let e=1,n=t.length;e<n;++e)this._+=arguments[e]+t[e]}class ma{constructor(t){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=null==t?ya:function(t){let e=Math.floor(t);if(!(e>=0))throw new Error(`invalid digits: ${t}`);if(e>15)return ya;const n=10**e;return function(t){this._+=t[0];for(let e=1,r=t.length;e<r;++e)this._+=Math.round(arguments[e]*n)/n+t[e]}}(t)}moveTo(t,e){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+e}`}closePath(){null!==this._x1&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(t,e){this._append`L${this._x1=+t},${this._y1=+e}`}quadraticCurveTo(t,e,n,r){this._append`Q${+t},${+e},${this._x1=+n},${this._y1=+r}`}bezierCurveTo(t,e,n,r,i,o){this._append`C${+t},${+e},${+n},${+r},${this._x1=+i},${this._y1=+o}`}arcTo(t,e,n,r,i){if(t=+t,e=+e,n=+n,r=+r,(i=+i)<0)throw new Error(`negative radius: ${i}`);let o=this._x1,a=this._y1,u=n-t,c=r-e,s=o-t,f=a-e,l=s*s+f*f;if(null===this._x1)this._append`M${this._x1=t},${this._y1=e}`;else if(l>pa)if(Math.abs(f*u-c*s)>pa&&i){let h=n-o,d=r-a,p=u*u+c*c,g=h*h+d*d,y=Math.sqrt(p),m=Math.sqrt(l),v=i*Math.tan((ha-Math.acos((p+l-g)/(2*y*m)))/2),b=v/m,x=v/y;Math.abs(b-1)>pa&&this._append`L${t+b*s},${e+b*f}`,this._append`A${i},${i},0,0,${+(f*h>s*d)},${this._x1=t+x*u},${this._y1=e+x*c}`}else this._append`L${this._x1=t},${this._y1=e}`}arc(t,e,n,r,i,o){if(t=+t,e=+e,o=!!o,(n=+n)<0)throw new Error(`negative radius: ${n}`);let a=n*Math.cos(r),u=n*Math.sin(r),c=t+a,s=e+u,f=1^o,l=o?r-i:i-r;null===this._x1?this._append`M${c},${s}`:(Math.abs(this._x1-c)>pa||Math.abs(this._y1-s)>pa)&&this._append`L${c},${s}`,n&&(l<0&&(l=l%da+da),l>ga?this._append`A${n},${n},0,1,${f},${t-a},${e-u}A${n},${n},0,1,${f},${this._x1=c},${this._y1=s}`:l>pa&&this._append`A${n},${n},0,${+(l>=ha)},${f},${this._x1=t+n*Math.cos(i)},${this._y1=e+n*Math.sin(i)}`)}rect(t,e,n,r){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+e}h${n=+n}v${+r}h${-n}Z`}toString(){return this._}}function va(){return new ma}function ba(t=3){return new ma(+t)}va.prototype=ma.prototype;var xa=Array.prototype.slice;function wa(t){return function(){return t}}function _a(t){return t.source}function Aa(t){return t.target}function Ea(t){return t.radius}function Ma(t){return t.startAngle}function Ba(t){return t.endAngle}function Ta(){return 0}function ka(){return 10}function Fa(t){var e=_a,n=Aa,r=Ea,i=Ea,o=Ma,a=Ba,u=Ta,c=null;function s(){var s,f=e.apply(this,arguments),l=n.apply(this,arguments),h=u.apply(this,arguments)/2,d=xa.call(arguments),p=+r.apply(this,(d[0]=f,d)),g=o.apply(this,d)-ra,y=a.apply(this,d)-ra,m=+i.apply(this,(d[0]=l,d)),v=o.apply(this,d)-ra,b=a.apply(this,d)-ra;if(c||(c=s=va()),h>aa&&(Qo(y-g)>2*h+aa?y>g?(g+=h,y-=h):(g-=h,y+=h):g=y=(g+y)/2,Qo(b-v)>2*h+aa?b>v?(v+=h,b-=h):(v-=h,b+=h):v=b=(v+b)/2),c.moveTo(p*ta(g),p*ea(g)),c.arc(0,0,p,g,y),g!==v||y!==b)if(t){var x=m-+t.apply(this,arguments),w=(v+b)/2;c.quadraticCurveTo(0,0,x*ta(v),x*ea(v)),c.lineTo(m*ta(w),m*ea(w)),c.lineTo(x*ta(b),x*ea(b))}else c.quadraticCurveTo(0,0,m*ta(v),m*ea(v)),c.arc(0,0,m,v,b);if(c.quadraticCurveTo(0,0,p*ta(g),p*ea(g)),c.closePath(),s)return c=null,s+""||null}return t&&(s.headRadius=function(e){return arguments.length?(t="function"==typeof e?e:wa(+e),s):t}),s.radius=function(t){return arguments.length?(r=i="function"==typeof t?t:wa(+t),s):r},s.sourceRadius=function(t){return arguments.length?(r="function"==typeof t?t:wa(+t),s):r},s.targetRadius=function(t){return arguments.length?(i="function"==typeof t?t:wa(+t),s):i},s.startAngle=function(t){return arguments.length?(o="function"==typeof t?t:wa(+t),s):o},s.endAngle=function(t){return arguments.length?(a="function"==typeof t?t:wa(+t),s):a},s.padAngle=function(t){return arguments.length?(u="function"==typeof t?t:wa(+t),s):u},s.source=function(t){return arguments.length?(e=t,s):e},s.target=function(t){return arguments.length?(n=t,s):n},s.context=function(t){return arguments.length?(c=null==t?null:t,s):c},s}function Sa(){return Fa()}function Na(){return Fa(ka)}const Ca=Math.PI/180,Ia=180/Math.PI,Ra=.96422,Oa=1,Pa=.82521,Da=4/29,La=6/29,Ua=3*La*La,$a=La*La*La;function ja(t){if(t instanceof qa)return new qa(t.l,t.a,t.b,t.opacity);if(t instanceof Ka)return Qa(t);t instanceof Br||(t=Er(t));var e,n,r=Wa(t.r),i=Wa(t.g),o=Wa(t.b),a=Ya((.2225045*r+.7168786*i+.0606169*o)/Oa);return r===i&&i===o?e=n=a:(e=Ya((.4360747*r+.3850649*i+.1430804*o)/Ra),n=Ya((.0139322*r+.0971045*i+.7141733*o)/Pa)),new qa(116*a-16,500*(e-a),200*(a-n),t.opacity)}function za(t,e){return new qa(t,0,0,null==e?1:e)}function Ha(t,e,n,r){return 1===arguments.length?ja(t):new qa(t,e,n,null==r?1:r)}function qa(t,e,n,r){this.l=+t,this.a=+e,this.b=+n,this.opacity=+r}function Ya(t){return t>$a?Math.pow(t,1/3):t/Ua+Da}function Ga(t){return t>La?t*t*t:Ua*(t-Da)}function Va(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function Wa(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function Xa(t){if(t instanceof Ka)return new Ka(t.h,t.c,t.l,t.opacity);if(t instanceof qa||(t=ja(t)),0===t.a&&0===t.b)return new Ka(NaN,0<t.l&&t.l<100?0:NaN,t.l,t.opacity);var e=Math.atan2(t.b,t.a)*Ia;return new Ka(e<0?e+360:e,Math.sqrt(t.a*t.a+t.b*t.b),t.l,t.opacity)}function Ja(t,e,n,r){return 1===arguments.length?Xa(t):new Ka(n,e,t,null==r?1:r)}function Za(t,e,n,r){return 1===arguments.length?Xa(t):new Ka(t,e,n,null==r?1:r)}function Ka(t,e,n,r){this.h=+t,this.c=+e,this.l=+n,this.opacity=+r}function Qa(t){if(isNaN(t.h))return new qa(t.l,0,0,t.opacity);var e=t.h*Ca;return new qa(t.l,Math.cos(e)*t.c,Math.sin(e)*t.c,t.opacity)}rr(qa,Ha,ir(or,{brighter(t){return new qa(this.l+18*(null==t?1:t),this.a,this.b,this.opacity)},darker(t){return new qa(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 Br(Va(3.1338561*(e=Ra*Ga(e))-1.6168667*(t=Oa*Ga(t))-.4906146*(n=Pa*Ga(n))),Va(-.9787684*e+1.9161415*t+.033454*n),Va(.0719453*e-.2289914*t+1.4052427*n),this.opacity)}})),rr(Ka,Za,ir(or,{brighter(t){return new Ka(this.h,this.c,this.l+18*(null==t?1:t),this.opacity)},darker(t){return new Ka(this.h,this.c,this.l-18*(null==t?1:t),this.opacity)},rgb(){return Qa(this).rgb()}}));var tu=-.14861,eu=1.78277,nu=-.29227,ru=-.90649,iu=1.97294,ou=iu*ru,au=iu*eu,uu=eu*nu-ru*tu;function cu(t,e,n,r){return 1===arguments.length?function(t){if(t instanceof su)return new su(t.h,t.s,t.l,t.opacity);t instanceof Br||(t=Er(t));var e=t.r/255,n=t.g/255,r=t.b/255,i=(uu*r+ou*e-au*n)/(uu+ou-au),o=r-i,a=(iu*(n-i)-nu*o)/ru,u=Math.sqrt(a*a+o*o)/(iu*i*(1-i)),c=u?Math.atan2(a,o)*Ia-120:NaN;return new su(c<0?c+360:c,u,i,t.opacity)}(t):new su(t,e,n,null==r?1:r)}function su(t,e,n,r){this.h=+t,this.s=+e,this.l=+n,this.opacity=+r}rr(su,cu,ir(or,{brighter(t){return t=null==t?ur:Math.pow(ur,t),new su(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=null==t?ar:Math.pow(ar,t),new su(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=isNaN(this.h)?0:(this.h+120)*Ca,e=+this.l,n=isNaN(this.s)?0:this.s*e*(1-e),r=Math.cos(t),i=Math.sin(t);return new Br(255*(e+n*(tu*r+eu*i)),255*(e+n*(nu*r+ru*i)),255*(e+n*(iu*r)),this.opacity)}}));var fu=Array.prototype.slice;function lu(t,e){return t-e}const hu=t=>()=>t;function du(t,e){for(var n,r=-1,i=e.length;++r<i;)if(n=pu(t,e[r]))return n;return 0}function pu(t,e){for(var n=e[0],r=e[1],i=-1,o=0,a=t.length,u=a-1;o<a;u=o++){var c=t[o],s=c[0],f=c[1],l=t[u],h=l[0],d=l[1];if(gu(c,l,e))return 0;f>r!=d>r&&n<(h-s)*(r-f)/(d-f)+s&&(i=-i)}return i}function gu(t,e,n){var r,i,o,a;return function(t,e,n){return(e[0]-t[0])*(n[1]-t[1])==(n[0]-t[0])*(e[1]-t[1])}(t,e,n)&&(i=t[r=+(t[0]===e[0])],o=n[r],a=e[r],i<=o&&o<=a||a<=o&&o<=i)}function yu(){}var mu=[[],[[[1,1.5],[.5,1]]],[[[1.5,1],[1,1.5]]],[[[1.5,1],[.5,1]]],[[[1,.5],[1.5,1]]],[[[1,1.5],[.5,1]],[[1,.5],[1.5,1]]],[[[1,.5],[1,1.5]]],[[[1,.5],[.5,1]]],[[[.5,1],[1,.5]]],[[[1,1.5],[1,.5]]],[[[.5,1],[1,.5]],[[1.5,1],[1,1.5]]],[[[1.5,1],[1,.5]]],[[[.5,1],[1.5,1]]],[[[1,1.5],[1.5,1]]],[[[.5,1],[1,1.5]]],[]];function vu(){var t=1,e=1,n=wt,r=u;function i(t){var e=n(t);if(Array.isArray(e))e=e.slice().sort(lu);else{const n=D(t,bu);for(e=mt(...xt(n[0],n[1],e),e);e[e.length-1]>=n[1];)e.pop();for(;e[1]<n[0];)e.shift()}return e.map((e=>o(t,e)))}function o(n,i){const o=null==i?NaN:+i;if(isNaN(o))throw new Error(`invalid value: ${i}`);var u=[],c=[];return function(n,r,i){var o,u,c,s,f,l,h=new Array,d=new Array;for(o=u=-1,s=xu(n[0],r),mu[s<<1].forEach(p);++o<t-1;)c=s,s=xu(n[o+1],r),mu[c|s<<1].forEach(p);for(mu[0|s].forEach(p);++u<e-1;){for(o=-1,s=xu(n[u*t+t],r),f=xu(n[u*t],r),mu[s<<1|f<<2].forEach(p);++o<t-1;)c=s,s=xu(n[u*t+t+o+1],r),l=f,f=xu(n[u*t+o+1],r),mu[c|s<<1|f<<2|l<<3].forEach(p);mu[s|f<<3].forEach(p)}for(o=-1,f=n[u*t]>=r,mu[f<<2].forEach(p);++o<t-1;)l=f,f=xu(n[u*t+o+1],r),mu[f<<2|l<<3].forEach(p);function p(t){var e,n,r=[t[0][0]+o,t[0][1]+u],c=[t[1][0]+o,t[1][1]+u],s=a(r),f=a(c);(e=d[s])?(n=h[f])?(delete d[e.end],delete h[n.start],e===n?(e.ring.push(c),i(e.ring)):h[e.start]=d[n.end]={start:e.start,end:n.end,ring:e.ring.concat(n.ring)}):(delete d[e.end],e.ring.push(c),d[e.end=f]=e):(e=h[f])?(n=d[s])?(delete h[e.start],delete d[n.end],e===n?(e.ring.push(c),i(e.ring)):h[n.start]=d[e.end]={start:n.start,end:e.end,ring:n.ring.concat(e.ring)}):(delete h[e.start],e.ring.unshift(r),h[e.start=s]=e):h[s]=d[f]={start:s,end:f,ring:[r,c]}}mu[f<<3].forEach(p)}(n,o,(function(t){r(t,n,o),function(t){for(var e=0,n=t.length,r=t[n-1][1]*t[0][0]-t[n-1][0]*t[0][1];++e<n;)r+=t[e-1][1]*t[e][0]-t[e-1][0]*t[e][1];return r}(t)>0?u.push([t]):c.push(t)})),c.forEach((function(t){for(var e,n=0,r=u.length;n<r;++n)if(-1!==du((e=u[n])[0],t))return void e.push(t)})),{type:"MultiPolygon",value:i,coordinates:u}}function a(e){return 2*e[0]+e[1]*(t+1)*4}function u(n,r,i){n.forEach((function(n){var o=n[0],a=n[1],u=0|o,c=0|a,s=wu(r[c*t+u]);o>0&&o<t&&u===o&&(n[0]=_u(o,wu(r[c*t+u-1]),s,i)),a>0&&a<e&&c===a&&(n[1]=_u(a,wu(r[(c-1)*t+u]),s,i))}))}return i.contour=o,i.size=function(n){if(!arguments.length)return[t,e];var r=Math.floor(n[0]),o=Math.floor(n[1]);if(!(r>=0&&o>=0))throw new Error("invalid size");return t=r,e=o,i},i.thresholds=function(t){return arguments.length?(n="function"==typeof t?t:Array.isArray(t)?hu(fu.call(t)):hu(t),i):n},i.smooth=function(t){return arguments.length?(r=t?u:yu,i):r===u},i}function bu(t){return isFinite(t)?t:NaN}function xu(t,e){return null!=t&&+t>=e}function wu(t){return null==t||isNaN(t=+t)?-1/0:t}function _u(t,e,n,r){const i=r-e,o=n-e,a=isFinite(i)||isFinite(o)?i/o:Math.sign(i)/Math.sign(o);return isNaN(a)?t:t+a-.5}function Au(t){return t[0]}function Eu(t){return t[1]}function Mu(){return 1}function Bu(){var t=Au,e=Eu,n=Mu,r=960,i=500,o=20,a=2,u=3*o,c=r+2*u>>a,s=i+2*u>>a,f=hu(20);function l(r){var i=new Float32Array(c*s),f=Math.pow(2,-a),l=-1;for(const o of r){var h=(t(o,++l,r)+u)*f,d=(e(o,l,r)+u)*f,p=+n(o,l,r);if(p&&h>=0&&h<c&&d>=0&&d<s){var g=Math.floor(h),y=Math.floor(d),m=h-g-.5,v=d-y-.5;i[g+y*c]+=(1-m)*(1-v)*p,i[g+1+y*c]+=m*(1-v)*p,i[g+1+(y+1)*c]+=m*v*p,i[g+(y+1)*c]+=(1-m)*v*p}}return A({data:i,width:c,height:s},o*f),i}function h(t){var e=l(t),n=f(e),r=Math.pow(2,2*a);return Array.isArray(n)||(n=mt(Number.MIN_VALUE,At(e)/r,n)),vu().size([c,s]).thresholds(n.map((t=>t*r)))(e).map(((t,e)=>(t.value=+n[e],d(t))))}function d(t){return t.coordinates.forEach(p),t}function p(t){t.forEach(g)}function g(t){t.forEach(y)}function y(t){t[0]=t[0]*Math.pow(2,a)-u,t[1]=t[1]*Math.pow(2,a)-u}function m(){return c=r+2*(u=3*o)>>a,s=i+2*u>>a,h}return h.contours=function(t){var e=l(t),n=vu().size([c,s]),r=Math.pow(2,2*a),i=t=>{t=+t;var i=d(n.contour(e,t*r));return i.value=t,i};return Object.defineProperty(i,"max",{get:()=>At(e)/r}),i},h.x=function(e){return arguments.length?(t="function"==typeof e?e:hu(+e),h):t},h.y=function(t){return arguments.length?(e="function"==typeof t?t:hu(+t),h):e},h.weight=function(t){return arguments.length?(n="function"==typeof t?t:hu(+t),h):n},h.size=function(t){if(!arguments.length)return[r,i];var e=+t[0],n=+t[1];if(!(e>=0&&n>=0))throw new Error("invalid size");return r=e,i=n,m()},h.cellSize=function(t){if(!arguments.length)return 1<<a;if(!((t=+t)>=1))throw new Error("invalid cell size");return a=Math.floor(Math.log(t)/Math.LN2),m()},h.thresholds=function(t){return arguments.length?(f="function"==typeof t?t:Array.isArray(t)?hu(fu.call(t)):hu(t),h):f},h.bandwidth=function(t){if(!arguments.length)return Math.sqrt(o*(o+1));if(!((t=+t)>=0))throw new Error("invalid bandwidth");return o=(Math.sqrt(4*t*t+1)-1)/2,m()},h}const Tu=134217729;function ku(t,e,n,r,i){let o,a,u,c,s=e[0],f=r[0],l=0,h=0;f>s==f>-s?(o=s,s=e[++l]):(o=f,f=r[++h]);let d=0;if(l<t&&h<n)for(f>s==f>-s?(a=s+o,u=o-(a-s),s=e[++l]):(a=f+o,u=o-(a-f),f=r[++h]),o=a,0!==u&&(i[d++]=u);l<t&&h<n;)f>s==f>-s?(a=o+s,c=a-o,u=o-(a-c)+(s-c),s=e[++l]):(a=o+f,c=a-o,u=o-(a-c)+(f-c),f=r[++h]),o=a,0!==u&&(i[d++]=u);for(;l<t;)a=o+s,c=a-o,u=o-(a-c)+(s-c),s=e[++l],o=a,0!==u&&(i[d++]=u);for(;h<n;)a=o+f,c=a-o,u=o-(a-c)+(f-c),f=r[++h],o=a,0!==u&&(i[d++]=u);return 0===o&&0!==d||(i[d++]=o),d}function Fu(t){return new Float64Array(t)}const Su=Fu(4),Nu=Fu(8),Cu=Fu(12),Iu=Fu(16),Ru=Fu(4);function Ou(t,e,n,r,i,o){const a=(e-o)*(n-i),u=(t-i)*(r-o),c=a-u,s=Math.abs(a+u);return Math.abs(c)>=33306690738754716e-32*s?c:-function(t,e,n,r,i,o,a){let u,c,s,f,l,h,d,p,g,y,m,v,b,x,w,_,A,E;const M=t-i,B=n-i,T=e-o,k=r-o;x=M*k,h=Tu*M,d=h-(h-M),p=M-d,h=Tu*k,g=h-(h-k),y=k-g,w=p*y-(x-d*g-p*g-d*y),_=T*B,h=Tu*T,d=h-(h-T),p=T-d,h=Tu*B,g=h-(h-B),y=B-g,A=p*y-(_-d*g-p*g-d*y),m=w-A,l=w-m,Su[0]=w-(m+l)+(l-A),v=x+m,l=v-x,b=x-(v-l)+(m-l),m=b-_,l=b-m,Su[1]=b-(m+l)+(l-_),E=v+m,l=E-v,Su[2]=v-(E-l)+(m-l),Su[3]=E;let F=function(t,e){let n=e[0];for(let t=1;t<4;t++)n+=e[t];return n}(0,Su),S=22204460492503146e-32*a;if(F>=S||-F>=S)return F;if(l=t-M,u=t-(M+l)+(l-i),l=n-B,s=n-(B+l)+(l-i),l=e-T,c=e-(T+l)+(l-o),l=r-k,f=r-(k+l)+(l-o),0===u&&0===c&&0===s&&0===f)return F;if(S=11093356479670487e-47*a+33306690738754706e-32*Math.abs(F),F+=M*f+k*u-(T*s+B*c),F>=S||-F>=S)return F;x=u*k,h=Tu*u,d=h-(h-u),p=u-d,h=Tu*k,g=h-(h-k),y=k-g,w=p*y-(x-d*g-p*g-d*y),_=c*B,h=Tu*c,d=h-(h-c),p=c-d,h=Tu*B,g=h-(h-B),y=B-g,A=p*y-(_-d*g-p*g-d*y),m=w-A,l=w-m,Ru[0]=w-(m+l)+(l-A),v=x+m,l=v-x,b=x-(v-l)+(m-l),m=b-_,l=b-m,Ru[1]=b-(m+l)+(l-_),E=v+m,l=E-v,Ru[2]=v-(E-l)+(m-l),Ru[3]=E;const N=ku(4,Su,4,Ru,Nu);x=M*f,h=Tu*M,d=h-(h-M),p=M-d,h=Tu*f,g=h-(h-f),y=f-g,w=p*y-(x-d*g-p*g-d*y),_=T*s,h=Tu*T,d=h-(h-T),p=T-d,h=Tu*s,g=h-(h-s),y=s-g,A=p*y-(_-d*g-p*g-d*y),m=w-A,l=w-m,Ru[0]=w-(m+l)+(l-A),v=x+m,l=v-x,b=x-(v-l)+(m-l),m=b-_,l=b-m,Ru[1]=b-(m+l)+(l-_),E=v+m,l=E-v,Ru[2]=v-(E-l)+(m-l),Ru[3]=E;const C=ku(N,Nu,4,Ru,Cu);x=u*f,h=Tu*u,d=h-(h-u),p=u-d,h=Tu*f,g=h-(h-f),y=f-g,w=p*y-(x-d*g-p*g-d*y),_=c*s,h=Tu*c,d=h-(h-c),p=c-d,h=Tu*s,g=h-(h-s),y=s-g,A=p*y-(_-d*g-p*g-d*y),m=w-A,l=w-m,Ru[0]=w-(m+l)+(l-A),v=x+m,l=v-x,b=x-(v-l)+(m-l),m=b-_,l=b-m,Ru[1]=b-(m+l)+(l-_),E=v+m,l=E-v,Ru[2]=v-(E-l)+(m-l),Ru[3]=E;const I=ku(C,Cu,4,Ru,Iu);return Iu[I-1]}(t,e,n,r,i,o,s)}Fu(4),Fu(4),Fu(4),Fu(4),Fu(4),Fu(4),Fu(4),Fu(4),Fu(4),Fu(8),Fu(8),Fu(8),Fu(4),Fu(8),Fu(8),Fu(8),Fu(12),Fu(192),Fu(192),Fu(4),Fu(4),Fu(4),Fu(4),Fu(4),Fu(4),Fu(4),Fu(4),Fu(8),Fu(8),Fu(8),Fu(8),Fu(8),Fu(8),Fu(8),Fu(8),Fu(8),Fu(4),Fu(4),Fu(4),Fu(8),Fu(16),Fu(16),Fu(16),Fu(32),Fu(32),Fu(48),Fu(64),Fu(1152),Fu(1152),Fu(4),Fu(4),Fu(4),Fu(4),Fu(4),Fu(4),Fu(4),Fu(4),Fu(4),Fu(4),Fu(24),Fu(24),Fu(24),Fu(24),Fu(24),Fu(24),Fu(24),Fu(24),Fu(24),Fu(24),Fu(1152),Fu(1152),Fu(1152),Fu(1152),Fu(1152),Fu(2304),Fu(2304),Fu(3456),Fu(5760),Fu(8),Fu(8),Fu(8),Fu(16),Fu(24),Fu(48),Fu(48),Fu(96),Fu(192),Fu(384),Fu(384),Fu(384),Fu(768),Fu(96),Fu(96),Fu(96),Fu(1152);const Pu=Math.pow(2,-52),Du=new Uint32Array(512);class Lu{static from(t,e=qu,n=Yu){const r=t.length,i=new Float64Array(2*r);for(let o=0;o<r;o++){const r=t[o];i[2*o]=e(r),i[2*o+1]=n(r)}return new Lu(i)}constructor(t){const e=t.length>>1;if(e>0&&"number"!=typeof t[0])throw new Error("Expected coords to contain numbers.");this.coords=t;const n=Math.max(2*e-5,0);this._triangles=new Uint32Array(3*n),this._halfedges=new Int32Array(3*n),this._hashSize=Math.ceil(Math.sqrt(e)),this._hullPrev=new Uint32Array(e),this._hullNext=new Uint32Array(e),this._hullTri=new Uint32Array(e),this._hullHash=new Int32Array(this._hashSize),this._ids=new Uint32Array(e),this._dists=new Float64Array(e),this.update()}update(){const{coords:t,_hullPrev:e,_hullNext:n,_hullTri:r,_hullHash:i}=this,o=t.length>>1;let a=1/0,u=1/0,c=-1/0,s=-1/0;for(let e=0;e<o;e++){const n=t[2*e],r=t[2*e+1];n<a&&(a=n),r<u&&(u=r),n>c&&(c=n),r>s&&(s=r),this._ids[e]=e}const f=(a+c)/2,l=(u+s)/2;let h,d,p;for(let e=0,n=1/0;e<o;e++){const r=Uu(f,l,t[2*e],t[2*e+1]);r<n&&(h=e,n=r)}const g=t[2*h],y=t[2*h+1];for(let e=0,n=1/0;e<o;e++){if(e===h)continue;const r=Uu(g,y,t[2*e],t[2*e+1]);r<n&&r>0&&(d=e,n=r)}let m=t[2*d],v=t[2*d+1],b=1/0;for(let e=0;e<o;e++){if(e===h||e===d)continue;const n=ju(g,y,m,v,t[2*e],t[2*e+1]);n<b&&(p=e,b=n)}let x=t[2*p],w=t[2*p+1];if(b===1/0){for(let e=0;e<o;e++)this._dists[e]=t[2*e]-t[0]||t[2*e+1]-t[1];zu(this._ids,this._dists,0,o-1);const e=new Uint32Array(o);let n=0;for(let t=0,r=-1/0;t<o;t++){const i=this._ids[t],o=this._dists[i];o>r&&(e[n++]=i,r=o)}return this.hull=e.subarray(0,n),this.triangles=new Uint32Array(0),void(this.halfedges=new Uint32Array(0))}if(Ou(g,y,m,v,x,w)<0){const t=d,e=m,n=v;d=p,m=x,v=w,p=t,x=e,w=n}const _=function(t,e,n,r,i,o){const a=n-t,u=r-e,c=i-t,s=o-e,f=a*a+u*u,l=c*c+s*s,h=.5/(a*s-u*c);return{x:t+(s*f-u*l)*h,y:e+(a*l-c*f)*h}}(g,y,m,v,x,w);this._cx=_.x,this._cy=_.y;for(let e=0;e<o;e++)this._dists[e]=Uu(t[2*e],t[2*e+1],_.x,_.y);zu(this._ids,this._dists,0,o-1),this._hullStart=h;let A=3;n[h]=e[p]=d,n[d]=e[h]=p,n[p]=e[d]=h,r[h]=0,r[d]=1,r[p]=2,i.fill(-1),i[this._hashKey(g,y)]=h,i[this._hashKey(m,v)]=d,i[this._hashKey(x,w)]=p,this.trianglesLen=0,this._addTriangle(h,d,p,-1,-1,-1);for(let o,a,u=0;u<this._ids.length;u++){const c=this._ids[u],s=t[2*c],f=t[2*c+1];if(u>0&&Math.abs(s-o)<=Pu&&Math.abs(f-a)<=Pu)continue;if(o=s,a=f,c===h||c===d||c===p)continue;let l=0;for(let t=0,e=this._hashKey(s,f);t<this._hashSize&&(l=i[(e+t)%this._hashSize],-1===l||l===n[l]);t++);l=e[l];let g,y=l;for(;g=n[y],Ou(s,f,t[2*y],t[2*y+1],t[2*g],t[2*g+1])>=0;)if(y=g,y===l){y=-1;break}if(-1===y)continue;let m=this._addTriangle(y,c,n[y],-1,-1,r[y]);r[c]=this._legalize(m+2),r[y]=m,A++;let v=n[y];for(;g=n[v],Ou(s,f,t[2*v],t[2*v+1],t[2*g],t[2*g+1])<0;)m=this._addTriangle(v,c,g,r[c],-1,r[v]),r[c]=this._legalize(m+2),n[v]=v,A--,v=g;if(y===l)for(;g=e[y],Ou(s,f,t[2*g],t[2*g+1],t[2*y],t[2*y+1])<0;)m=this._addTriangle(g,c,y,-1,r[y],r[g]),this._legalize(m+2),r[g]=m,n[y]=y,A--,y=g;this._hullStart=e[c]=y,n[y]=e[v]=c,n[c]=v,i[this._hashKey(s,f)]=c,i[this._hashKey(t[2*y],t[2*y+1])]=y}this.hull=new Uint32Array(A);for(let t=0,e=this._hullStart;t<A;t++)this.hull[t]=e,e=n[e];this.triangles=this._triangles.subarray(0,this.trianglesLen),this.halfedges=this._halfedges.subarray(0,this.trianglesLen)}_hashKey(t,e){return Math.floor(function(t,e){const n=t/(Math.abs(t)+Math.abs(e));return(e>0?3-n:1+n)/4}(t-this._cx,e-this._cy)*this._hashSize)%this._hashSize}_legalize(t){const{_triangles:e,_halfedges:n,coords:r}=this;let i=0,o=0;for(;;){const a=n[t],u=t-t%3;if(o=u+(t+2)%3,-1===a){if(0===i)break;t=Du[--i];continue}const c=a-a%3,s=u+(t+1)%3,f=c+(a+2)%3,l=e[o],h=e[t],d=e[s],p=e[f];if($u(r[2*l],r[2*l+1],r[2*h],r[2*h+1],r[2*d],r[2*d+1],r[2*p],r[2*p+1])){e[t]=p,e[a]=l;const r=n[f];if(-1===r){let e=this._hullStart;do{if(this._hullTri[e]===f){this._hullTri[e]=t;break}e=this._hullPrev[e]}while(e!==this._hullStart)}this._link(t,r),this._link(a,n[o]),this._link(o,f);const u=c+(a+1)%3;i<Du.length&&(Du[i++]=u)}else{if(0===i)break;t=Du[--i]}}return o}_link(t,e){this._halfedges[t]=e,-1!==e&&(this._halfedges[e]=t)}_addTriangle(t,e,n,r,i,o){const a=this.trianglesLen;return this._triangles[a]=t,this._triangles[a+1]=e,this._triangles[a+2]=n,this._link(a,r),this._link(a+1,i),this._link(a+2,o),this.trianglesLen+=3,a}}function Uu(t,e,n,r){const i=t-n,o=e-r;return i*i+o*o}function $u(t,e,n,r,i,o,a,u){const c=t-a,s=e-u,f=n-a,l=r-u,h=i-a,d=o-u,p=f*f+l*l,g=h*h+d*d;return c*(l*g-p*d)-s*(f*g-p*h)+(c*c+s*s)*(f*d-l*h)<0}function ju(t,e,n,r,i,o){const a=n-t,u=r-e,c=i-t,s=o-e,f=a*a+u*u,l=c*c+s*s,h=.5/(a*s-u*c),d=(s*f-u*l)*h,p=(a*l-c*f)*h;return d*d+p*p}function zu(t,e,n,r){if(r-n<=20)for(let i=n+1;i<=r;i++){const r=t[i],o=e[r];let a=i-1;for(;a>=n&&e[t[a]]>o;)t[a+1]=t[a--];t[a+1]=r}else{let i=n+1,o=r;Hu(t,n+r>>1,i),e[t[n]]>e[t[r]]&&Hu(t,n,r),e[t[i]]>e[t[r]]&&Hu(t,i,r),e[t[n]]>e[t[i]]&&Hu(t,n,i);const a=t[i],u=e[a];for(;;){do{i++}while(e[t[i]]<u);do{o--}while(e[t[o]]>u);if(o<i)break;Hu(t,i,o)}t[n+1]=t[o],t[o]=a,r-i+1>=o-n?(zu(t,e,i,r),zu(t,e,n,o-1)):(zu(t,e,n,o-1),zu(t,e,i,r))}}function Hu(t,e,n){const r=t[e];t[e]=t[n],t[n]=r}function qu(t){return t[0]}function Yu(t){return t[1]}const Gu=1e-6;class Vu{constructor(){this._x0=this._y0=this._x1=this._y1=null,this._=""}moveTo(t,e){this._+=`M${this._x0=this._x1=+t},${this._y0=this._y1=+e}`}closePath(){null!==this._x1&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")}lineTo(t,e){this._+=`L${this._x1=+t},${this._y1=+e}`}arc(t,e,n){const r=(t=+t)+(n=+n),i=e=+e;if(n<0)throw new Error("negative radius");null===this._x1?this._+=`M${r},${i}`:(Math.abs(this._x1-r)>Gu||Math.abs(this._y1-i)>Gu)&&(this._+="L"+r+","+i),n&&(this._+=`A${n},${n},0,1,1,${t-n},${e}A${n},${n},0,1,1,${this._x1=r},${this._y1=i}`)}rect(t,e,n,r){this._+=`M${this._x0=this._x1=+t},${this._y0=this._y1=+e}h${+n}v${+r}h${-n}Z`}value(){return this._||null}}class Wu{constructor(){this._=[]}moveTo(t,e){this._.push([t,e])}closePath(){this._.push(this._[0].slice())}lineTo(t,e){this._.push([t,e])}value(){return this._.length?this._:null}}class Xu{constructor(t,[e,n,r,i]=[0,0,960,500]){if(!((r=+r)>=(e=+e)&&(i=+i)>=(n=+n)))throw new Error("invalid bounds");this.delaunay=t,this._circumcenters=new Float64Array(2*t.points.length),this.vectors=new Float64Array(2*t.points.length),this.xmax=r,this.xmin=e,this.ymax=i,this.ymin=n,this._init()}update(){return this.delaunay.update(),this._init(),this}_init(){const{delaunay:{points:t,hull:e,triangles:n},vectors:r}=this;let i,o;const a=this.circumcenters=this._circumcenters.subarray(0,n.length/3*2);for(let r,u,c=0,s=0,f=n.length;c<f;c+=3,s+=2){const f=2*n[c],l=2*n[c+1],h=2*n[c+2],d=t[f],p=t[f+1],g=t[l],y=t[l+1],m=t[h],v=t[h+1],b=g-d,x=y-p,w=m-d,_=v-p,A=2*(b*_-x*w);if(Math.abs(A)<1e-9){if(void 0===i){i=o=0;for(const n of e)i+=t[2*n],o+=t[2*n+1];i/=e.length,o/=e.length}const n=1e9*Math.sign((i-d)*_-(o-p)*w);r=(d+m)/2-n*_,u=(p+v)/2+n*w}else{const t=1/A,e=b*b+x*x,n=w*w+_*_;r=d+(_*e-x*n)*t,u=p+(b*n-w*e)*t}a[s]=r,a[s+1]=u}let u,c,s,f=e[e.length-1],l=4*f,h=t[2*f],d=t[2*f+1];r.fill(0);for(let n=0;n<e.length;++n)f=e[n],u=l,c=h,s=d,l=4*f,h=t[2*f],d=t[2*f+1],r[u+2]=r[l]=s-d,r[u+3]=r[l+1]=h-c}render(t){const e=null==t?t=new Vu:void 0,{delaunay:{halfedges:n,inedges:r,hull:i},circumcenters:o,vectors:a}=this;if(i.length<=1)return null;for(let e=0,r=n.length;e<r;++e){const r=n[e];if(r<e)continue;const i=2*Math.floor(e/3),a=2*Math.floor(r/3),u=o[i],c=o[i+1],s=o[a],f=o[a+1];this._renderSegment(u,c,s,f,t)}let u,c=i[i.length-1];for(let e=0;e<i.length;++e){u=c,c=i[e];const n=2*Math.floor(r[c]/3),s=o[n],f=o[n+1],l=4*u,h=this._project(s,f,a[l+2],a[l+3]);h&&this._renderSegment(s,f,h[0],h[1],t)}return e&&e.value()}renderBounds(t){const e=null==t?t=new Vu:void 0;return t.rect(this.xmin,this.ymin,this.xmax-this.xmin,this.ymax-this.ymin),e&&e.value()}renderCell(t,e){const n=null==e?e=new Vu:void 0,r=this._clip(t);if(null===r||!r.length)return;e.moveTo(r[0],r[1]);let i=r.length;for(;r[0]===r[i-2]&&r[1]===r[i-1]&&i>1;)i-=2;for(let t=2;t<i;t+=2)r[t]===r[t-2]&&r[t+1]===r[t-1]||e.lineTo(r[t],r[t+1]);return e.closePath(),n&&n.value()}*cellPolygons(){const{delaunay:{points:t}}=this;for(let e=0,n=t.length/2;e<n;++e){const t=this.cellPolygon(e);t&&(t.index=e,yield t)}}cellPolygon(t){const e=new Wu;return this.renderCell(t,e),e.value()}_renderSegment(t,e,n,r,i){let o;const a=this._regioncode(t,e),u=this._regioncode(n,r);0===a&&0===u?(i.moveTo(t,e),i.lineTo(n,r)):(o=this._clipSegment(t,e,n,r,a,u))&&(i.moveTo(o[0],o[1]),i.lineTo(o[2],o[3]))}contains(t,e,n){return(e=+e)==e&&(n=+n)==n&&this.delaunay._step(t,e,n)===t}*neighbors(t){const e=this._clip(t);if(e)for(const n of this.delaunay.neighbors(t)){const t=this._clip(n);if(t)t:for(let r=0,i=e.length;r<i;r+=2)for(let o=0,a=t.length;o<a;o+=2)if(e[r]===t[o]&&e[r+1]===t[o+1]&&e[(r+2)%i]===t[(o+a-2)%a]&&e[(r+3)%i]===t[(o+a-1)%a]){yield n;break t}}}_cell(t){const{circumcenters:e,delaunay:{inedges:n,halfedges:r,triangles:i}}=this,o=n[t];if(-1===o)return null;const a=[];let u=o;do{const n=Math.floor(u/3);if(a.push(e[2*n],e[2*n+1]),u=u%3==2?u-2:u+1,i[u]!==t)break;u=r[u]}while(u!==o&&-1!==u);return a}_clip(t){if(0===t&&1===this.delaunay.hull.length)return[this.xmax,this.ymin,this.xmax,this.ymax,this.xmin,this.ymax,this.xmin,this.ymin];const e=this._cell(t);if(null===e)return null;const{vectors:n}=this,r=4*t;return this._simplify(n[r]||n[r+1]?this._clipInfinite(t,e,n[r],n[r+1],n[r+2],n[r+3]):this._clipFinite(t,e))}_clipFinite(t,e){const n=e.length;let r,i,o,a,u=null,c=e[n-2],s=e[n-1],f=this._regioncode(c,s),l=0;for(let h=0;h<n;h+=2)if(r=c,i=s,c=e[h],s=e[h+1],o=f,f=this._regioncode(c,s),0===o&&0===f)a=l,l=0,u?u.push(c,s):u=[c,s];else{let e,n,h,d,p;if(0===o){if(null===(e=this._clipSegment(r,i,c,s,o,f)))continue;[n,h,d,p]=e}else{if(null===(e=this._clipSegment(c,s,r,i,f,o)))continue;[d,p,n,h]=e,a=l,l=this._edgecode(n,h),a&&l&&this._edge(t,a,l,u,u.length),u?u.push(n,h):u=[n,h]}a=l,l=this._edgecode(d,p),a&&l&&this._edge(t,a,l,u,u.length),u?u.push(d,p):u=[d,p]}if(u)a=l,l=this._edgecode(u[0],u[1]),a&&l&&this._edge(t,a,l,u,u.length);else if(this.contains(t,(this.xmin+this.xmax)/2,(this.ymin+this.ymax)/2))return[this.xmax,this.ymin,this.xmax,this.ymax,this.xmin,this.ymax,this.xmin,this.ymin];return u}_clipSegment(t,e,n,r,i,o){const a=i<o;for(a&&([t,e,n,r,i,o]=[n,r,t,e,o,i]);;){if(0===i&&0===o)return a?[n,r,t,e]:[t,e,n,r];if(i&o)return null;let u,c,s=i||o;8&s?(u=t+(n-t)*(this.ymax-e)/(r-e),c=this.ymax):4&s?(u=t+(n-t)*(this.ymin-e)/(r-e),c=this.ymin):2&s?(c=e+(r-e)*(this.xmax-t)/(n-t),u=this.xmax):(c=e+(r-e)*(this.xmin-t)/(n-t),u=this.xmin),i?(t=u,e=c,i=this._regioncode(t,e)):(n=u,r=c,o=this._regioncode(n,r))}}_clipInfinite(t,e,n,r,i,o){let a,u=Array.from(e);if((a=this._project(u[0],u[1],n,r))&&u.unshift(a[0],a[1]),(a=this._project(u[u.length-2],u[u.length-1],i,o))&&u.push(a[0],a[1]),u=this._clipFinite(t,u))for(let e,n=0,r=u.length,i=this._edgecode(u[r-2],u[r-1]);n<r;n+=2)e=i,i=this._edgecode(u[n],u[n+1]),e&&i&&(n=this._edge(t,e,i,u,n),r=u.length);else this.contains(t,(this.xmin+this.xmax)/2,(this.ymin+this.ymax)/2)&&(u=[this.xmin,this.ymin,this.xmax,this.ymin,this.xmax,this.ymax,this.xmin,this.ymax]);return u}_edge(t,e,n,r,i){for(;e!==n;){let n,o;switch(e){case 5:e=4;continue;case 4:e=6,n=this.xmax,o=this.ymin;break;case 6:e=2;continue;case 2:e=10,n=this.xmax,o=this.ymax;break;case 10:e=8;continue;case 8:e=9,n=this.xmin,o=this.ymax;break;case 9:e=1;continue;case 1:e=5,n=this.xmin,o=this.ymin}r[i]===n&&r[i+1]===o||!this.contains(t,n,o)||(r.splice(i,0,n,o),i+=2)}return i}_project(t,e,n,r){let i,o,a,u=1/0;if(r<0){if(e<=this.ymin)return null;(i=(this.ymin-e)/r)<u&&(a=this.ymin,o=t+(u=i)*n)}else if(r>0){if(e>=this.ymax)return null;(i=(this.ymax-e)/r)<u&&(a=this.ymax,o=t+(u=i)*n)}if(n>0){if(t>=this.xmax)return null;(i=(this.xmax-t)/n)<u&&(o=this.xmax,a=e+(u=i)*r)}else if(n<0){if(t<=this.xmin)return null;(i=(this.xmin-t)/n)<u&&(o=this.xmin,a=e+(u=i)*r)}return[o,a]}_edgecode(t,e){return(t===this.xmin?1:t===this.xmax?2:0)|(e===this.ymin?4:e===this.ymax?8:0)}_regioncode(t,e){return(t<this.xmin?1:t>this.xmax?2:0)|(e<this.ymin?4:e>this.ymax?8:0)}_simplify(t){if(t&&t.length>4){for(let e=0;e<t.length;e+=2){const n=(e+2)%t.length,r=(e+4)%t.length;(t[e]===t[n]&&t[n]===t[r]||t[e+1]===t[n+1]&&t[n+1]===t[r+1])&&(t.splice(n,2),e-=2)}t.length||(t=null)}return t}}const Ju=2*Math.PI,Zu=Math.pow;function Ku(t){return t[0]}function Qu(t){return t[1]}function tc(t,e,n){return[t+Math.sin(t+e)*n,e+Math.cos(t-e)*n]}class ec{static from(t,e=Ku,n=Qu,r){return new ec("length"in t?function(t,e,n,r){const i=t.length,o=new Float64Array(2*i);for(let a=0;a<i;++a){const i=t[a];o[2*a]=e.call(r,i,a,t),o[2*a+1]=n.call(r,i,a,t)}return o}(t,e,n,r):Float64Array.from(function*(t,e,n,r){let i=0;for(const o of t)yield e.call(r,o,i,t),yield n.call(r,o,i,t),++i}(t,e,n,r)))}constructor(t){this._delaunator=new Lu(t),this.inedges=new Int32Array(t.length/2),this._hullIndex=new Int32Array(t.length/2),this.points=this._delaunator.coords,this._init()}update(){return this._delaunator.update(),this._init(),this}_init(){const t=this._delaunator,e=this.points;if(t.hull&&t.hull.length>2&&function(t){const{triangles:e,coords:n}=t;for(let t=0;t<e.length;t+=3){const r=2*e[t],i=2*e[t+1],o=2*e[t+2];if((n[o]-n[r])*(n[i+1]-n[r+1])-(n[i]-n[r])*(n[o+1]-n[r+1])>1e-10)return!1}return!0}(t)){this.collinear=Int32Array.from({length:e.length/2},((t,e)=>e)).sort(((t,n)=>e[2*t]-e[2*n]||e[2*t+1]-e[2*n+1]));const t=this.collinear[0],n=this.collinear[this.collinear.length-1],r=[e[2*t],e[2*t+1],e[2*n],e[2*n+1]],i=1e-8*Math.hypot(r[3]-r[1],r[2]-r[0]);for(let t=0,n=e.length/2;t<n;++t){const n=tc(e[2*t],e[2*t+1],i);e[2*t]=n[0],e[2*t+1]=n[1]}this._delaunator=new Lu(e)}else delete this.collinear;const n=this.halfedges=this._delaunator.halfedges,r=this.hull=this._delaunator.hull,i=this.triangles=this._delaunator.triangles,o=this.inedges.fill(-1),a=this._hullIndex.fill(-1);for(let t=0,e=n.length;t<e;++t){const e=i[t%3==2?t-2:t+1];-1!==n[t]&&-1!==o[e]||(o[e]=t)}for(let t=0,e=r.length;t<e;++t)a[r[t]]=t;r.length<=2&&r.length>0&&(this.triangles=new Int32Array(3).fill(-1),this.halfedges=new Int32Array(3).fill(-1),this.triangles[0]=r[0],o[r[0]]=1,2===r.length&&(o[r[1]]=0,this.triangles[1]=r[1],this.triangles[2]=r[1]))}voronoi(t){return new Xu(this,t)}*neighbors(t){const{inedges:e,hull:n,_hullIndex:r,halfedges:i,triangles:o,collinear:a}=this;if(a){const e=a.indexOf(t);return e>0&&(yield a[e-1]),void(e<a.length-1&&(yield a[e+1]))}const u=e[t];if(-1===u)return;let c=u,s=-1;do{if(yield s=o[c],c=c%3==2?c-2:c+1,o[c]!==t)return;if(c=i[c],-1===c){const e=n[(r[t]+1)%n.length];return void(e!==s&&(yield e))}}while(c!==u)}find(t,e,n=0){if((t=+t)!=t||(e=+e)!=e)return-1;const r=n;let i;for(;(i=this._step(n,t,e))>=0&&i!==n&&i!==r;)n=i;return i}_step(t,e,n){const{inedges:r,hull:i,_hullIndex:o,halfedges:a,triangles:u,points:c}=this;if(-1===r[t]||!c.length)return(t+1)%(c.length>>1);let s=t,f=Zu(e-c[2*t],2)+Zu(n-c[2*t+1],2);const l=r[t];let h=l;do{let r=u[h];const l=Zu(e-c[2*r],2)+Zu(n-c[2*r+1],2);if(l<f&&(f=l,s=r),h=h%3==2?h-2:h+1,u[h]!==t)break;if(h=a[h],-1===h){if(h=i[(o[t]+1)%i.length],h!==r&&Zu(e-c[2*h],2)+Zu(n-c[2*h+1],2)<f)return h;break}}while(h!==l);return s}render(t){const e=null==t?t=new Vu:void 0,{points:n,halfedges:r,triangles:i}=this;for(let e=0,o=r.length;e<o;++e){const o=r[e];if(o<e)continue;const a=2*i[e],u=2*i[o];t.moveTo(n[a],n[a+1]),t.lineTo(n[u],n[u+1])}return this.renderHull(t),e&&e.value()}renderPoints(t,e){void 0!==e||t&&"function"==typeof t.moveTo||(e=t,t=null),e=null==e?2:+e;const n=null==t?t=new Vu:void 0,{points:r}=this;for(let n=0,i=r.length;n<i;n+=2){const i=r[n],o=r[n+1];t.moveTo(i+e,o),t.arc(i,o,e,0,Ju)}return n&&n.value()}renderHull(t){const e=null==t?t=new Vu:void 0,{hull:n,points:r}=this,i=2*n[0],o=n.length;t.moveTo(r[i],r[i+1]);for(let e=1;e<o;++e){const i=2*n[e];t.lineTo(r[i],r[i+1])}return t.closePath(),e&&e.value()}hullPolygon(){const t=new Wu;return this.renderHull(t),t.value()}renderTriangle(t,e){const n=null==e?e=new Vu:void 0,{points:r,triangles:i}=this,o=2*i[t*=3],a=2*i[t+1],u=2*i[t+2];return e.moveTo(r[o],r[o+1]),e.lineTo(r[a],r[a+1]),e.lineTo(r[u],r[u+1]),e.closePath(),n&&n.value()}*trianglePolygons(){const{triangles:t}=this;for(let e=0,n=t.length/3;e<n;++e)yield this.trianglePolygon(e)}trianglePolygon(t){const e=new Wu;return this.renderTriangle(t,e),e.value()}}const nc=t=>()=>t;function rc(t,{sourceEvent:e,subject:n,target:r,identifier:i,active:o,x:a,y:u,dx:c,dy:s,dispatch:f}){Object.defineProperties(this,{type:{value:t,enumerable:!0,configurable:!0},sourceEvent:{value:e,enumerable:!0,configurable:!0},subject:{value:n,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},identifier:{value:i,enumerable:!0,configurable:!0},active:{value:o,enumerable:!0,configurable:!0},x:{value:a,enumerable:!0,configurable:!0},y:{value:u,enumerable:!0,configurable:!0},dx:{value:c,enumerable:!0,configurable:!0},dy:{value:s,enumerable:!0,configurable:!0},_:{value:f}})}function ic(t){return!t.ctrlKey&&!t.button}function oc(){return this.parentNode}function ac(t,e){return null==e?{x:t.x,y:t.y}:e}function uc(){return navigator.maxTouchPoints||"ontouchstart"in this}function cc(){var t,e,n,r,i=ic,o=oc,a=ac,u=uc,c={},s=Oe("start","drag","end"),f=0,l=0;function h(t){t.on("mousedown.drag",d).filter(u).on("touchstart.drag",y).on("touchmove.drag",m,Zn).on("touchend.drag touchcancel.drag",v).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function d(a,u){if(!r&&i.call(this,a,u)){var c=b(this,o.call(this,a,u),a,u,"mouse");c&&(Jn(a.view).on("mousemove.drag",p,Kn).on("mouseup.drag",g,Kn),er(a.view),Qn(a),n=!1,t=a.clientX,e=a.clientY,c("start",a))}}function p(r){if(tr(r),!n){var i=r.clientX-t,o=r.clientY-e;n=i*i+o*o>l}c.mouse("drag",r)}function g(t){Jn(t.view).on("mousemove.drag mouseup.drag",null),nr(t.view,n),tr(t),c.mouse("end",t)}function y(t,e){if(i.call(this,t,e)){var n,r,a=t.changedTouches,u=o.call(this,t,e),c=a.length;for(n=0;n<c;++n)(r=b(this,u,t,e,a[n].identifier,a[n]))&&(Qn(t),r("start",t,a[n]))}}function m(t){var e,n,r=t.changedTouches,i=r.length;for(e=0;e<i;++e)(n=c[r[e].identifier])&&(tr(t),n("drag",t,r[e]))}function v(t){var e,n,i=t.changedTouches,o=i.length;for(r&&clearTimeout(r),r=setTimeout((function(){r=null}),500),e=0;e<o;++e)(n=c[i[e].identifier])&&(Qn(t),n("end",t,i[e]))}function b(t,e,n,r,i,o){var u,l,d,p=s.copy(),g=ci(o||n,e);if(null!=(d=a.call(t,new rc("beforestart",{sourceEvent:n,target:h,identifier:i,active:f,x:g[0],y:g[1],dx:0,dy:0,dispatch:p}),r)))return u=d.x-g[0]||0,l=d.y-g[1]||0,function n(o,a,s){var y,m=g;switch(o){case"start":c[i]=n,y=f++;break;case"end":delete c[i],--f;case"drag":g=ci(s||a,e),y=f}p.call(o,t,new rc(o,{sourceEvent:a,subject:d,target:h,identifier:i,active:y,x:g[0]+u,y:g[1]+l,dx:g[0]-m[0],dy:g[1]-m[1],dispatch:p}),r)}}return h.filter=function(t){return arguments.length?(i="function"==typeof t?t:nc(!!t),h):i},h.container=function(t){return arguments.length?(o="function"==typeof t?t:nc(t),h):o},h.subject=function(t){return arguments.length?(a="function"==typeof t?t:nc(t),h):a},h.touchable=function(t){return arguments.length?(u="function"==typeof t?t:nc(!!t),h):u},h.on=function(){var t=s.on.apply(s,arguments);return t===s?h:t},h.clickDistance=function(t){return arguments.length?(l=(t=+t)*t,h):Math.sqrt(l)},h}rc.prototype.on=function(){var t=this._.on.apply(this._,arguments);return t===this._?this:t};var sc={},fc={},lc=34,hc=10,dc=13;function pc(t){return new Function("d","return {"+t.map((function(t,e){return JSON.stringify(t)+": d["+e+'] || ""'})).join(",")+"}")}function gc(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 yc(t,e){var n=t+"",r=n.length;return r<e?new Array(e-r+1).join(0)+n:n}function mc(t){var e=new RegExp('["'+t+"\n\r]"),n=t.charCodeAt(0);function r(t,e){var r,i=[],o=t.length,a=0,u=0,c=o<=0,s=!1;function f(){if(c)return fc;if(s)return s=!1,sc;var e,r,i=a;if(t.charCodeAt(i)===lc){for(;a++<o&&t.charCodeAt(a)!==lc||t.charCodeAt(++a)===lc;);return(e=a)>=o?c=!0:(r=t.charCodeAt(a++))===hc?s=!0:r===dc&&(s=!0,t.charCodeAt(a)===hc&&++a),t.slice(i+1,e-1).replace(/""/g,'"')}for(;a<o;){if((r=t.charCodeAt(e=a++))===hc)s=!0;else if(r===dc)s=!0,t.charCodeAt(a)===hc&&++a;else if(r!==n)continue;return t.slice(i,e)}return c=!0,t.slice(i,o)}for(t.charCodeAt(o-1)===hc&&--o,t.charCodeAt(o-1)===dc&&--o;(r=f())!==fc;){for(var l=[];r!==sc&&r!==fc;)l.push(r),r=f();e&&null==(l=e(l,u++))||i.push(l)}return i}function i(e,n){return e.map((function(e){return n.map((function(t){return a(e[t])})).join(t)}))}function o(e){return e.map(a).join(t)}function a(t){return null==t?"":t instanceof Date?function(t){var e,n=t.getUTCHours(),r=t.getUTCMinutes(),i=t.getUTCSeconds(),o=t.getUTCMilliseconds();return isNaN(t)?"Invalid Date":((e=t.getUTCFullYear())<0?"-"+yc(-e,6):e>9999?"+"+yc(e,6):yc(e,4))+"-"+yc(t.getUTCMonth()+1,2)+"-"+yc(t.getUTCDate(),2)+(o?"T"+yc(n,2)+":"+yc(r,2)+":"+yc(i,2)+"."+yc(o,3)+"Z":i?"T"+yc(n,2)+":"+yc(r,2)+":"+yc(i,2)+"Z":r||n?"T"+yc(n,2)+":"+yc(r,2)+"Z":"")}(t):e.test(t+="")?'"'+t.replace(/"/g,'""')+'"':t}return{parse:function(t,e){var n,i,o=r(t,(function(t,r){if(n)return n(t,r-1);i=t,n=e?function(t,e){var n=pc(t);return function(r,i){return e(n(r),i,t)}}(t,e):pc(t)}));return o.columns=i||[],o},parseRows:r,format:function(e,n){return null==n&&(n=gc(e)),[n.map(a).join(t)].concat(i(e,n)).join("\n")},formatBody:function(t,e){return null==e&&(e=gc(t)),i(t,e).join("\n")},formatRows:function(t){return t.map(o).join("\n")},formatRow:o,formatValue:a}}var vc=mc(","),bc=vc.parse,xc=vc.parseRows,wc=vc.format,_c=vc.formatBody,Ac=vc.formatRows,Ec=vc.formatRow,Mc=vc.formatValue,Bc=mc("\t"),Tc=Bc.parse,kc=Bc.parseRows,Fc=Bc.format,Sc=Bc.formatBody,Nc=Bc.formatRows,Cc=Bc.formatRow,Ic=Bc.formatValue;function Rc(t){for(var e in t){var n,r,i=t[e].trim();if(i)if("true"===i)i=!0;else if("false"===i)i=!1;else if("NaN"===i)i=NaN;else if(isNaN(n=+i)){if(!(r=i.match(/^([-+]\d{2})?\d{4}(-\d{2}(-\d{2})?)?(T\d{2}:\d{2}(:\d{2}(\.\d{3})?)?(Z|[-+]\d{2}:\d{2})?)?$/)))continue;Oc&&r[4]&&!r[7]&&(i=i.replace(/-/g,"/").replace(/T/," ")),i=new Date(i)}else i=n;else i=null;t[e]=i}return t}const Oc=new Date("2019-01-01T00:00").getHours()||new Date("2019-07-01T00:00").getHours(),Pc=t=>+t;function Dc(t){return t*t}function Lc(t){return t*(2-t)}function Uc(t){return((t*=2)<=1?t*t:--t*(2-t)+1)/2}var $c=function t(e){function n(t){return Math.pow(t,e)}return e=+e,n.exponent=t,n}(3),jc=function t(e){function n(t){return 1-Math.pow(1-t,e)}return e=+e,n.exponent=t,n}(3),zc=function t(e){function n(t){return((t*=2)<=1?Math.pow(t,e):2-Math.pow(2-t,e))/2}return e=+e,n.exponent=t,n}(3),Hc=Math.PI,qc=Hc/2;function Yc(t){return 1==+t?1:1-Math.cos(t*qc)}function Gc(t){return Math.sin(t*qc)}function Vc(t){return(1-Math.cos(Hc*t))/2}function Wc(t){return 1.0009775171065494*(Math.pow(2,-10*t)-.0009765625)}function Xc(t){return Wc(1-+t)}function Jc(t){return 1-Wc(t)}function Zc(t){return((t*=2)<=1?Wc(1-t):2-Wc(t-1))/2}function Kc(t){return 1-Math.sqrt(1-t*t)}function Qc(t){return Math.sqrt(1- --t*t)}function ts(t){return((t*=2)<=1?1-Math.sqrt(1-t*t):Math.sqrt(1-(t-=2)*t)+1)/2}var es=4/11,ns=6/11,rs=8/11,is=3/4,os=9/11,as=10/11,us=15/16,cs=21/22,ss=63/64,fs=1/es/es;function ls(t){return 1-hs(1-t)}function hs(t){return(t=+t)<es?fs*t*t:t<rs?fs*(t-=ns)*t+is:t<as?fs*(t-=os)*t+us:fs*(t-=cs)*t+ss}function ds(t){return((t*=2)<=1?1-hs(1-t):hs(t-1)+1)/2}var ps=1.70158,gs=function t(e){function n(t){return(t=+t)*t*(e*(t-1)+t)}return e=+e,n.overshoot=t,n}(ps),ys=function t(e){function n(t){return--t*t*((t+1)*e+t)+1}return e=+e,n.overshoot=t,n}(ps),ms=function t(e){function n(t){return((t*=2)<1?t*t*((e+1)*t-e):(t-=2)*t*((e+1)*t+e)+2)/2}return e=+e,n.overshoot=t,n}(ps),vs=2*Math.PI,bs=function t(e,n){var r=Math.asin(1/(e=Math.max(1,e)))*(n/=vs);function i(t){return e*Wc(- --t)*Math.sin((r-t)/n)}return i.amplitude=function(e){return t(e,n*vs)},i.period=function(n){return t(e,n)},i}(1,.3),xs=function t(e,n){var r=Math.asin(1/(e=Math.max(1,e)))*(n/=vs);function i(t){return 1-e*Wc(t=+t)*Math.sin((t+r)/n)}return i.amplitude=function(e){return t(e,n*vs)},i.period=function(n){return t(e,n)},i}(1,.3),ws=function t(e,n){var r=Math.asin(1/(e=Math.max(1,e)))*(n/=vs);function i(t){return((t=2*t-1)<0?e*Wc(-t)*Math.sin((r-t)/n):2-e*Wc(t)*Math.sin((r+t)/n))/2}return i.amplitude=function(e){return t(e,n*vs)},i.period=function(n){return t(e,n)},i}(1,.3);function _s(t){if(!t.ok)throw new Error(t.status+" "+t.statusText);return t.blob()}function As(t,e){return fetch(t,e).then(_s)}function Es(t){if(!t.ok)throw new Error(t.status+" "+t.statusText);return t.arrayBuffer()}function Ms(t,e){return fetch(t,e).then(Es)}function Bs(t){if(!t.ok)throw new Error(t.status+" "+t.statusText);return t.text()}function Ts(t,e){return fetch(t,e).then(Bs)}function ks(t){return function(e,n,r){return 2===arguments.length&&"function"==typeof n&&(r=n,n=void 0),Ts(e,n).then((function(e){return t(e,r)}))}}function Fs(t,e,n,r){3===arguments.length&&"function"==typeof n&&(r=n,n=void 0);var i=mc(t);return Ts(e,n).then((function(t){return i.parse(t,r)}))}var Ss=ks(bc),Ns=ks(Tc);function Cs(t,e){return new Promise((function(n,r){var i=new Image;for(var o in e)i[o]=e[o];i.onerror=r,i.onload=function(){n(i)},i.src=t}))}function Is(t){if(!t.ok)throw new Error(t.status+" "+t.statusText);if(204!==t.status&&205!==t.status)return t.json()}function Rs(t,e){return fetch(t,e).then(Is)}function Os(t){return(e,n)=>Ts(e,n).then((e=>(new DOMParser).parseFromString(e,t)))}const Ps=Os("application/xml");var Ds=Os("text/html"),Ls=Os("image/svg+xml");function Us(t,e){var n,r=1;function i(){var i,o,a=n.length,u=0,c=0;for(i=0;i<a;++i)u+=(o=n[i]).x,c+=o.y;for(u=(u/a-t)*r,c=(c/a-e)*r,i=0;i<a;++i)(o=n[i]).x-=u,o.y-=c}return null==t&&(t=0),null==e&&(e=0),i.initialize=function(t){n=t},i.x=function(e){return arguments.length?(t=+e,i):t},i.y=function(t){return arguments.length?(e=+t,i):e},i.strength=function(t){return arguments.length?(r=+t,i):r},i}function $s(t,e,n,r){if(isNaN(e)||isNaN(n))return t;var i,o,a,u,c,s,f,l,h,d=t._root,p={data:r},g=t._x0,y=t._y0,m=t._x1,v=t._y1;if(!d)return t._root=p,t;for(;d.length;)if((s=e>=(o=(g+m)/2))?g=o:m=o,(f=n>=(a=(y+v)/2))?y=a:v=a,i=d,!(d=d[l=f<<1|s]))return i[l]=p,t;if(u=+t._x.call(null,d.data),c=+t._y.call(null,d.data),e===u&&n===c)return p.next=d,i?i[l]=p:t._root=p,t;do{i=i?i[l]=new Array(4):t._root=new Array(4),(s=e>=(o=(g+m)/2))?g=o:m=o,(f=n>=(a=(y+v)/2))?y=a:v=a}while((l=f<<1|s)==(h=(c>=a)<<1|u>=o));return i[h]=d,i[l]=p,t}function js(t,e,n,r,i){this.node=t,this.x0=e,this.y0=n,this.x1=r,this.y1=i}function zs(t){return t[0]}function Hs(t){return t[1]}function qs(t,e,n){var r=new Ys(null==e?zs:e,null==n?Hs:n,NaN,NaN,NaN,NaN);return null==t?r:r.addAll(t)}function Ys(t,e,n,r,i,o){this._x=t,this._y=e,this._x0=n,this._y0=r,this._x1=i,this._y1=o,this._root=void 0}function Gs(t){for(var e={data:t.data},n=e;t=t.next;)n=n.next={data:t.data};return e}var Vs=qs.prototype=Ys.prototype;function Ws(t){return function(){return t}}function Xs(t){return 1e-6*(t()-.5)}function Js(t){return t.x+t.vx}function Zs(t){return t.y+t.vy}function Ks(t){var e,n,r,i=1,o=1;function a(){for(var t,a,c,s,f,l,h,d=e.length,p=0;p<o;++p)for(a=qs(e,Js,Zs).visitAfter(u),t=0;t<d;++t)c=e[t],l=n[c.index],h=l*l,s=c.x+c.vx,f=c.y+c.vy,a.visit(g);function g(t,e,n,o,a){var u=t.data,d=t.r,p=l+d;if(!u)return e>s+p||o<s-p||n>f+p||a<f-p;if(u.index>c.index){var g=s-u.x-u.vx,y=f-u.y-u.vy,m=g*g+y*y;m<p*p&&(0===g&&(m+=(g=Xs(r))*g),0===y&&(m+=(y=Xs(r))*y),m=(p-(m=Math.sqrt(m)))/m*i,c.vx+=(g*=m)*(p=(d*=d)/(h+d)),c.vy+=(y*=m)*p,u.vx-=g*(p=1-p),u.vy-=y*p)}}}function u(t){if(t.data)return t.r=n[t.data.index];for(var e=t.r=0;e<4;++e)t[e]&&t[e].r>t.r&&(t.r=t[e].r)}function c(){if(e){var r,i,o=e.length;for(n=new Array(o),r=0;r<o;++r)i=e[r],n[i.index]=+t(i,r,e)}}return"function"!=typeof t&&(t=Ws(null==t?1:+t)),a.initialize=function(t,n){e=t,r=n,c()},a.iterations=function(t){return arguments.length?(o=+t,a):o},a.strength=function(t){return arguments.length?(i=+t,a):i},a.radius=function(e){return arguments.length?(t="function"==typeof e?e:Ws(+e),c(),a):t},a}function Qs(t){return t.index}function tf(t,e){var n=t.get(e);if(!n)throw new Error("node not found: "+e);return n}function ef(t){var e,n,r,i,o,a,u=Qs,c=function(t){return 1/Math.min(i[t.source.index],i[t.target.index])},s=Ws(30),f=1;function l(r){for(var i=0,u=t.length;i<f;++i)for(var c,s,l,h,d,p,g,y=0;y<u;++y)s=(c=t[y]).source,h=(l=c.target).x+l.vx-s.x-s.vx||Xs(a),d=l.y+l.vy-s.y-s.vy||Xs(a),h*=p=((p=Math.sqrt(h*h+d*d))-n[y])/p*r*e[y],d*=p,l.vx-=h*(g=o[y]),l.vy-=d*g,s.vx+=h*(g=1-g),s.vy+=d*g}function h(){if(r){var a,c,s=r.length,f=t.length,l=new Map(r.map(((t,e)=>[u(t,e,r),t])));for(a=0,i=new Array(s);a<f;++a)(c=t[a]).index=a,"object"!=typeof c.source&&(c.source=tf(l,c.source)),"object"!=typeof c.target&&(c.target=tf(l,c.target)),i[c.source.index]=(i[c.source.index]||0)+1,i[c.target.index]=(i[c.target.index]||0)+1;for(a=0,o=new Array(f);a<f;++a)c=t[a],o[a]=i[c.source.index]/(i[c.source.index]+i[c.target.index]);e=new Array(f),d(),n=new Array(f),p()}}function d(){if(r)for(var n=0,i=t.length;n<i;++n)e[n]=+c(t[n],n,t)}function p(){if(r)for(var e=0,i=t.length;e<i;++e)n[e]=+s(t[e],e,t)}return null==t&&(t=[]),l.initialize=function(t,e){r=t,a=e,h()},l.links=function(e){return arguments.length?(t=e,h(),l):t},l.id=function(t){return arguments.length?(u=t,l):u},l.iterations=function(t){return arguments.length?(f=+t,l):f},l.strength=function(t){return arguments.length?(c="function"==typeof t?t:Ws(+t),d(),l):c},l.distance=function(t){return arguments.length?(s="function"==typeof t?t:Ws(+t),p(),l):s},l}Vs.copy=function(){var t,e,n=new Ys(this._x,this._y,this._x0,this._y0,this._x1,this._y1),r=this._root;if(!r)return n;if(!r.length)return n._root=Gs(r),n;for(t=[{source:r,target:n._root=new Array(4)}];r=t.pop();)for(var i=0;i<4;++i)(e=r.source[i])&&(e.length?t.push({source:e,target:r.target[i]=new Array(4)}):r.target[i]=Gs(e));return n},Vs.add=function(t){const e=+this._x.call(null,t),n=+this._y.call(null,t);return $s(this.cover(e,n),e,n,t)},Vs.addAll=function(t){var e,n,r,i,o=t.length,a=new Array(o),u=new Array(o),c=1/0,s=1/0,f=-1/0,l=-1/0;for(n=0;n<o;++n)isNaN(r=+this._x.call(null,e=t[n]))||isNaN(i=+this._y.call(null,e))||(a[n]=r,u[n]=i,r<c&&(c=r),r>f&&(f=r),i<s&&(s=i),i>l&&(l=i));if(c>f||s>l)return this;for(this.cover(c,s).cover(f,l),n=0;n<o;++n)$s(this,a[n],u[n],t[n]);return this},Vs.cover=function(t,e){if(isNaN(t=+t)||isNaN(e=+e))return this;var n=this._x0,r=this._y0,i=this._x1,o=this._y1;if(isNaN(n))i=(n=Math.floor(t))+1,o=(r=Math.floor(e))+1;else{for(var a,u,c=i-n||1,s=this._root;n>t||t>=i||r>e||e>=o;)switch(u=(e<r)<<1|t<n,(a=new Array(4))[u]=s,s=a,c*=2,u){case 0:i=n+c,o=r+c;break;case 1:n=i-c,o=r+c;break;case 2:i=n+c,r=o-c;break;case 3:n=i-c,r=o-c}this._root&&this._root.length&&(this._root=s)}return this._x0=n,this._y0=r,this._x1=i,this._y1=o,this},Vs.data=function(){var t=[];return this.visit((function(e){if(!e.length)do{t.push(e.data)}while(e=e.next)})),t},Vs.extent=function(t){return arguments.length?this.cover(+t[0][0],+t[0][1]).cover(+t[1][0],+t[1][1]):isNaN(this._x0)?void 0:[[this._x0,this._y0],[this._x1,this._y1]]},Vs.find=function(t,e,n){var r,i,o,a,u,c,s,f=this._x0,l=this._y0,h=this._x1,d=this._y1,p=[],g=this._root;for(g&&p.push(new js(g,f,l,h,d)),null==n?n=1/0:(f=t-n,l=e-n,h=t+n,d=e+n,n*=n);c=p.pop();)if(!(!(g=c.node)||(i=c.x0)>h||(o=c.y0)>d||(a=c.x1)<f||(u=c.y1)<l))if(g.length){var y=(i+a)/2,m=(o+u)/2;p.push(new js(g[3],y,m,a,u),new js(g[2],i,m,y,u),new js(g[1],y,o,a,m),new js(g[0],i,o,y,m)),(s=(e>=m)<<1|t>=y)&&(c=p[p.length-1],p[p.length-1]=p[p.length-1-s],p[p.length-1-s]=c)}else{var v=t-+this._x.call(null,g.data),b=e-+this._y.call(null,g.data),x=v*v+b*b;if(x<n){var w=Math.sqrt(n=x);f=t-w,l=e-w,h=t+w,d=e+w,r=g.data}}return r},Vs.remove=function(t){if(isNaN(o=+this._x.call(null,t))||isNaN(a=+this._y.call(null,t)))return this;var e,n,r,i,o,a,u,c,s,f,l,h,d=this._root,p=this._x0,g=this._y0,y=this._x1,m=this._y1;if(!d)return this;if(d.length)for(;;){if((s=o>=(u=(p+y)/2))?p=u:y=u,(f=a>=(c=(g+m)/2))?g=c:m=c,e=d,!(d=d[l=f<<1|s]))return this;if(!d.length)break;(e[l+1&3]||e[l+2&3]||e[l+3&3])&&(n=e,h=l)}for(;d.data!==t;)if(r=d,!(d=d.next))return this;return(i=d.next)&&delete d.next,r?(i?r.next=i:delete r.next,this):e?(i?e[l]=i:delete e[l],(d=e[0]||e[1]||e[2]||e[3])&&d===(e[3]||e[2]||e[1]||e[0])&&!d.length&&(n?n[h]=d:this._root=d),this):(this._root=i,this)},Vs.removeAll=function(t){for(var e=0,n=t.length;e<n;++e)this.remove(t[e]);return this},Vs.root=function(){return this._root},Vs.size=function(){var t=0;return this.visit((function(e){if(!e.length)do{++t}while(e=e.next)})),t},Vs.visit=function(t){var e,n,r,i,o,a,u=[],c=this._root;for(c&&u.push(new js(c,this._x0,this._y0,this._x1,this._y1));e=u.pop();)if(!t(c=e.node,r=e.x0,i=e.y0,o=e.x1,a=e.y1)&&c.length){var s=(r+o)/2,f=(i+a)/2;(n=c[3])&&u.push(new js(n,s,f,o,a)),(n=c[2])&&u.push(new js(n,r,f,s,a)),(n=c[1])&&u.push(new js(n,s,i,o,f)),(n=c[0])&&u.push(new js(n,r,i,s,f))}return this},Vs.visitAfter=function(t){var e,n=[],r=[];for(this._root&&n.push(new js(this._root,this._x0,this._y0,this._x1,this._y1));e=n.pop();){var i=e.node;if(i.length){var o,a=e.x0,u=e.y0,c=e.x1,s=e.y1,f=(a+c)/2,l=(u+s)/2;(o=i[0])&&n.push(new js(o,a,u,f,l)),(o=i[1])&&n.push(new js(o,f,u,c,l)),(o=i[2])&&n.push(new js(o,a,l,f,s)),(o=i[3])&&n.push(new js(o,f,l,c,s))}r.push(e)}for(;e=r.pop();)t(e.node,e.x0,e.y0,e.x1,e.y1);return this},Vs.x=function(t){return arguments.length?(this._x=t,this):this._x},Vs.y=function(t){return arguments.length?(this._y=t,this):this._y};const nf=1664525,rf=1013904223,of=4294967296;function af(t){return t.x}function uf(t){return t.y}var cf=10,sf=Math.PI*(3-Math.sqrt(5));function ff(t){var e,n=1,r=.001,i=1-Math.pow(r,1/300),o=0,a=.6,u=new Map,c=_i(l),s=Oe("tick","end"),f=function(){let t=1;return()=>(t=(nf*t+rf)%of)/of}();function l(){h(),s.call("tick",e),n<r&&(c.stop(),s.call("end",e))}function h(r){var c,s,f=t.length;void 0===r&&(r=1);for(var l=0;l<r;++l)for(n+=(o-n)*i,u.forEach((function(t){t(n)})),c=0;c<f;++c)null==(s=t[c]).fx?s.x+=s.vx*=a:(s.x=s.fx,s.vx=0),null==s.fy?s.y+=s.vy*=a:(s.y=s.fy,s.vy=0);return e}function d(){for(var e,n=0,r=t.length;n<r;++n){if((e=t[n]).index=n,null!=e.fx&&(e.x=e.fx),null!=e.fy&&(e.y=e.fy),isNaN(e.x)||isNaN(e.y)){var i=cf*Math.sqrt(.5+n),o=n*sf;e.x=i*Math.cos(o),e.y=i*Math.sin(o)}(isNaN(e.vx)||isNaN(e.vy))&&(e.vx=e.vy=0)}}function p(e){return e.initialize&&e.initialize(t,f),e}return null==t&&(t=[]),d(),e={tick:h,restart:function(){return c.restart(l),e},stop:function(){return c.stop(),e},nodes:function(n){return arguments.length?(t=n,d(),u.forEach(p),e):t},alpha:function(t){return arguments.length?(n=+t,e):n},alphaMin:function(t){return arguments.length?(r=+t,e):r},alphaDecay:function(t){return arguments.length?(i=+t,e):+i},alphaTarget:function(t){return arguments.length?(o=+t,e):o},velocityDecay:function(t){return arguments.length?(a=1-t,e):1-a},randomSource:function(t){return arguments.length?(f=t,u.forEach(p),e):f},force:function(t,n){return arguments.length>1?(null==n?u.delete(t):u.set(t,p(n)),e):u.get(t)},find:function(e,n,r){var i,o,a,u,c,s=0,f=t.length;for(null==r?r=1/0:r*=r,s=0;s<f;++s)(a=(i=e-(u=t[s]).x)*i+(o=n-u.y)*o)<r&&(c=u,r=a);return c},on:function(t,n){return arguments.length>1?(s.on(t,n),e):s.on(t)}}}function lf(){var t,e,n,r,i,o=Ws(-30),a=1,u=1/0,c=.81;function s(n){var i,o=t.length,a=qs(t,af,uf).visitAfter(l);for(r=n,i=0;i<o;++i)e=t[i],a.visit(h)}function f(){if(t){var e,n,r=t.length;for(i=new Array(r),e=0;e<r;++e)n=t[e],i[n.index]=+o(n,e,t)}}function l(t){var e,n,r,o,a,u=0,c=0;if(t.length){for(r=o=a=0;a<4;++a)(e=t[a])&&(n=Math.abs(e.value))&&(u+=e.value,c+=n,r+=n*e.x,o+=n*e.y);t.x=r/c,t.y=o/c}else{(e=t).x=e.data.x,e.y=e.data.y;do{u+=i[e.data.index]}while(e=e.next)}t.value=u}function h(t,o,s,f){if(!t.value)return!0;var l=t.x-e.x,h=t.y-e.y,d=f-o,p=l*l+h*h;if(d*d/c<p)return p<u&&(0===l&&(p+=(l=Xs(n))*l),0===h&&(p+=(h=Xs(n))*h),p<a&&(p=Math.sqrt(a*p)),e.vx+=l*t.value*r/p,e.vy+=h*t.value*r/p),!0;if(!(t.length||p>=u)){(t.data!==e||t.next)&&(0===l&&(p+=(l=Xs(n))*l),0===h&&(p+=(h=Xs(n))*h),p<a&&(p=Math.sqrt(a*p)));do{t.data!==e&&(d=i[t.data.index]*r/p,e.vx+=l*d,e.vy+=h*d)}while(t=t.next)}}return s.initialize=function(e,r){t=e,n=r,f()},s.strength=function(t){return arguments.length?(o="function"==typeof t?t:Ws(+t),f(),s):o},s.distanceMin=function(t){return arguments.length?(a=t*t,s):Math.sqrt(a)},s.distanceMax=function(t){return arguments.length?(u=t*t,s):Math.sqrt(u)},s.theta=function(t){return arguments.length?(c=t*t,s):Math.sqrt(c)},s}function hf(t,e,n){var r,i,o,a=Ws(.1);function u(t){for(var a=0,u=r.length;a<u;++a){var c=r[a],s=c.x-e||1e-6,f=c.y-n||1e-6,l=Math.sqrt(s*s+f*f),h=(o[a]-l)*i[a]*t/l;c.vx+=s*h,c.vy+=f*h}}function c(){if(r){var e,n=r.length;for(i=new Array(n),o=new Array(n),e=0;e<n;++e)o[e]=+t(r[e],e,r),i[e]=isNaN(o[e])?0:+a(r[e],e,r)}}return"function"!=typeof t&&(t=Ws(+t)),null==e&&(e=0),null==n&&(n=0),u.initialize=function(t){r=t,c()},u.strength=function(t){return arguments.length?(a="function"==typeof t?t:Ws(+t),c(),u):a},u.radius=function(e){return arguments.length?(t="function"==typeof e?e:Ws(+e),c(),u):t},u.x=function(t){return arguments.length?(e=+t,u):e},u.y=function(t){return arguments.length?(n=+t,u):n},u}function df(t){var e,n,r,i=Ws(.1);function o(t){for(var i,o=0,a=e.length;o<a;++o)(i=e[o]).vx+=(r[o]-i.x)*n[o]*t}function a(){if(e){var o,a=e.length;for(n=new Array(a),r=new Array(a),o=0;o<a;++o)n[o]=isNaN(r[o]=+t(e[o],o,e))?0:+i(e[o],o,e)}}return"function"!=typeof t&&(t=Ws(null==t?0:+t)),o.initialize=function(t){e=t,a()},o.strength=function(t){return arguments.length?(i="function"==typeof t?t:Ws(+t),a(),o):i},o.x=function(e){return arguments.length?(t="function"==typeof e?e:Ws(+e),a(),o):t},o}function pf(t){var e,n,r,i=Ws(.1);function o(t){for(var i,o=0,a=e.length;o<a;++o)(i=e[o]).vy+=(r[o]-i.y)*n[o]*t}function a(){if(e){var o,a=e.length;for(n=new Array(a),r=new Array(a),o=0;o<a;++o)n[o]=isNaN(r[o]=+t(e[o],o,e))?0:+i(e[o],o,e)}}return"function"!=typeof t&&(t=Ws(null==t?0:+t)),o.initialize=function(t){e=t,a()},o.strength=function(t){return arguments.length?(i="function"==typeof t?t:Ws(+t),a(),o):i},o.y=function(e){return arguments.length?(t="function"==typeof e?e:Ws(+e),a(),o):t},o}function gf(t,e){if((n=(t=e?t.toExponential(e-1):t.toExponential()).indexOf("e"))<0)return null;var n,r=t.slice(0,n);return[r.length>1?r[0]+r.slice(2):r,+t.slice(n+1)]}function yf(t){return(t=gf(Math.abs(t)))?t[1]:NaN}var mf,vf=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function bf(t){if(!(e=vf.exec(t)))throw new Error("invalid format: "+t);var e;return new xf({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 xf(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 wf(t,e){var n=gf(t,e);if(!n)return t+"";var r=n[0],i=n[1];return i<0?"0."+new Array(-i).join("0")+r:r.length>i+1?r.slice(0,i+1)+"."+r.slice(i+1):r+new Array(i-r.length+2).join("0")}bf.prototype=xf.prototype,xf.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 _f={"%":(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)=>wf(100*t,e),r:wf,s:function(t,e){var n=gf(t,e);if(!n)return t+"";var r=n[0],i=n[1],o=i-(mf=3*Math.max(-8,Math.min(8,Math.floor(i/3))))+1,a=r.length;return o===a?r:o>a?r+new Array(o-a+1).join("0"):o>0?r.slice(0,o)+"."+r.slice(o):"0."+new Array(1-o).join("0")+gf(t,Math.max(0,e+o-1))[0]},X:t=>Math.round(t).toString(16).toUpperCase(),x:t=>Math.round(t).toString(16)};function Af(t){return t}var Ef,Mf,Bf,Tf=Array.prototype.map,kf=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function Ff(t){var e,n,r=void 0===t.grouping||void 0===t.thousands?Af:(e=Tf.call(t.grouping,Number),n=t.thousands+"",function(t,r){for(var i=t.length,o=[],a=0,u=e[0],c=0;i>0&&u>0&&(c+u+1>r&&(u=Math.max(1,r-c)),o.push(t.substring(i-=u,i+u)),!((c+=u+1)>r));)u=e[a=(a+1)%e.length];return o.reverse().join(n)}),i=void 0===t.currency?"":t.currency[0]+"",o=void 0===t.currency?"":t.currency[1]+"",a=void 0===t.decimal?".":t.decimal+"",u=void 0===t.numerals?Af:function(t){return function(e){return e.replace(/[0-9]/g,(function(e){return t[+e]}))}}(Tf.call(t.numerals,String)),c=void 0===t.percent?"%":t.percent+"",s=void 0===t.minus?"":t.minus+"",f=void 0===t.nan?"NaN":t.nan+"";function l(t){var e=(t=bf(t)).fill,n=t.align,l=t.sign,h=t.symbol,d=t.zero,p=t.width,g=t.comma,y=t.precision,m=t.trim,v=t.type;"n"===v?(g=!0,v="g"):_f[v]||(void 0===y&&(y=12),m=!0,v="g"),(d||"0"===e&&"="===n)&&(d=!0,e="0",n="=");var b="$"===h?i:"#"===h&&/[boxX]/.test(v)?"0"+v.toLowerCase():"",x="$"===h?o:/[%p]/.test(v)?c:"",w=_f[v],_=/[defgprs%]/.test(v);function A(t){var i,o,c,h=b,A=x;if("c"===v)A=w(t)+A,t="";else{var E=(t=+t)<0||1/t<0;if(t=isNaN(t)?f:w(Math.abs(t),y),m&&(t=function(t){t:for(var e,n=t.length,r=1,i=-1;r<n;++r)switch(t[r]){case".":i=e=r;break;case"0":0===i&&(i=r),e=r;break;default:if(!+t[r])break t;i>0&&(i=0)}return i>0?t.slice(0,i)+t.slice(e+1):t}(t)),E&&0==+t&&"+"!==l&&(E=!1),h=(E?"("===l?l:s:"-"===l||"("===l?"":l)+h,A=("s"===v?kf[8+mf/3]:"")+A+(E&&"("===l?")":""),_)for(i=-1,o=t.length;++i<o;)if(48>(c=t.charCodeAt(i))||c>57){A=(46===c?a+t.slice(i+1):t.slice(i))+A,t=t.slice(0,i);break}}g&&!d&&(t=r(t,1/0));var M=h.length+t.length+A.length,B=M<p?new Array(p-M+1).join(e):"";switch(g&&d&&(t=r(B+t,B.length?p-A.length:1/0),B=""),n){case"<":t=h+t+A+B;break;case"=":t=h+B+t+A;break;case"^":t=B.slice(0,M=B.length>>1)+h+t+A+B.slice(M);break;default:t=B+h+t+A}return u(t)}return y=void 0===y?6:/[gprs]/.test(v)?Math.max(1,Math.min(21,y)):Math.max(0,Math.min(20,y)),A.toString=function(){return t+""},A}return{format:l,formatPrefix:function(t,e){var n=l(((t=bf(t)).type="f",t)),r=3*Math.max(-8,Math.min(8,Math.floor(yf(e)/3))),i=Math.pow(10,-r),o=kf[8+r/3];return function(t){return n(i*t)+o}}}}function Sf(t){return Ef=Ff(t),Mf=Ef.format,Bf=Ef.formatPrefix,Ef}function Nf(t){return Math.max(0,-yf(Math.abs(t)))}function Cf(t,e){return Math.max(0,3*Math.max(-8,Math.min(8,Math.floor(yf(e)/3)))-yf(Math.abs(t)))}function If(t,e){return t=Math.abs(t),e=Math.abs(e)-t,Math.max(0,yf(e)-yf(t))+1}Sf({thousands:",",grouping:[3],currency:["$",""]});var Rf=1e-6,Of=1e-12,Pf=Math.PI,Df=Pf/2,Lf=Pf/4,Uf=2*Pf,$f=180/Pf,jf=Pf/180,zf=Math.abs,Hf=Math.atan,qf=Math.atan2,Yf=Math.cos,Gf=Math.ceil,Vf=Math.exp,Wf=(Math.floor,Math.hypot),Xf=Math.log,Jf=Math.pow,Zf=Math.sin,Kf=Math.sign||function(t){return t>0?1:t<0?-1:0},Qf=Math.sqrt,tl=Math.tan;function el(t){return t>1?0:t<-1?Pf:Math.acos(t)}function nl(t){return t>1?Df:t<-1?-Df:Math.asin(t)}function rl(t){return(t=Zf(t/2))*t}function il(){}function ol(t,e){t&&ul.hasOwnProperty(t.type)&&ul[t.type](t,e)}var al={Feature:function(t,e){ol(t.geometry,e)},FeatureCollection:function(t,e){for(var n=t.features,r=-1,i=n.length;++r<i;)ol(n[r].geometry,e)}},ul={Sphere:function(t,e){e.sphere()},Point:function(t,e){t=t.coordinates,e.point(t[0],t[1],t[2])},MultiPoint:function(t,e){for(var n=t.coordinates,r=-1,i=n.length;++r<i;)t=n[r],e.point(t[0],t[1],t[2])},LineString:function(t,e){cl(t.coordinates,e,0)},MultiLineString:function(t,e){for(var n=t.coordinates,r=-1,i=n.length;++r<i;)cl(n[r],e,0)},Polygon:function(t,e){sl(t.coordinates,e)},MultiPolygon:function(t,e){for(var n=t.coordinates,r=-1,i=n.length;++r<i;)sl(n[r],e)},GeometryCollection:function(t,e){for(var n=t.geometries,r=-1,i=n.length;++r<i;)ol(n[r],e)}};function cl(t,e,n){var r,i=-1,o=t.length-n;for(e.lineStart();++i<o;)r=t[i],e.point(r[0],r[1],r[2]);e.lineEnd()}function sl(t,e){var n=-1,r=t.length;for(e.polygonStart();++n<r;)cl(t[n],e,1);e.polygonEnd()}function fl(t,e){t&&al.hasOwnProperty(t.type)?al[t.type](t,e):ol(t,e)}var ll,hl,dl,pl,gl,yl,ml,vl,bl,xl,wl,_l,Al,El,Ml,Bl,Tl=new L,kl=new L,Fl={point:il,lineStart:il,lineEnd:il,polygonStart:function(){Tl=new L,Fl.lineStart=Sl,Fl.lineEnd=Nl},polygonEnd:function(){var t=+Tl;kl.add(t<0?Uf+t:t),this.lineStart=this.lineEnd=this.point=il},sphere:function(){kl.add(Uf)}};function Sl(){Fl.point=Cl}function Nl(){Il(ll,hl)}function Cl(t,e){Fl.point=Il,ll=t,hl=e,dl=t*=jf,pl=Yf(e=(e*=jf)/2+Lf),gl=Zf(e)}function Il(t,e){var n=(t*=jf)-dl,r=n>=0?1:-1,i=r*n,o=Yf(e=(e*=jf)/2+Lf),a=Zf(e),u=gl*a,c=pl*o+u*Yf(i),s=u*r*Zf(i);Tl.add(qf(s,c)),dl=t,pl=o,gl=a}function Rl(t){return kl=new L,fl(t,Fl),2*kl}function Ol(t){return[qf(t[1],t[0]),nl(t[2])]}function Pl(t){var e=t[0],n=t[1],r=Yf(n);return[r*Yf(e),r*Zf(e),Zf(n)]}function Dl(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}function Ll(t,e){return[t[1]*e[2]-t[2]*e[1],t[2]*e[0]-t[0]*e[2],t[0]*e[1]-t[1]*e[0]]}function Ul(t,e){t[0]+=e[0],t[1]+=e[1],t[2]+=e[2]}function $l(t,e){return[t[0]*e,t[1]*e,t[2]*e]}function jl(t){var e=Qf(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]);t[0]/=e,t[1]/=e,t[2]/=e}var zl,Hl,ql,Yl,Gl,Vl,Wl,Xl,Jl,Zl,Kl,Ql,th,eh,nh,rh,ih={point:oh,lineStart:uh,lineEnd:ch,polygonStart:function(){ih.point=sh,ih.lineStart=fh,ih.lineEnd=lh,El=new L,Fl.polygonStart()},polygonEnd:function(){Fl.polygonEnd(),ih.point=oh,ih.lineStart=uh,ih.lineEnd=ch,Tl<0?(yl=-(vl=180),ml=-(bl=90)):El>Rf?bl=90:El<-Rf&&(ml=-90),Bl[0]=yl,Bl[1]=vl},sphere:function(){yl=-(vl=180),ml=-(bl=90)}};function oh(t,e){Ml.push(Bl=[yl=t,vl=t]),e<ml&&(ml=e),e>bl&&(bl=e)}function ah(t,e){var n=Pl([t*jf,e*jf]);if(Al){var r=Ll(Al,n),i=Ll([r[1],-r[0],0],r);jl(i),i=Ol(i);var o,a=t-xl,u=a>0?1:-1,c=i[0]*$f*u,s=zf(a)>180;s^(u*xl<c&&c<u*t)?(o=i[1]*$f)>bl&&(bl=o):s^(u*xl<(c=(c+360)%360-180)&&c<u*t)?(o=-i[1]*$f)<ml&&(ml=o):(e<ml&&(ml=e),e>bl&&(bl=e)),s?t<xl?hh(yl,t)>hh(yl,vl)&&(vl=t):hh(t,vl)>hh(yl,vl)&&(yl=t):vl>=yl?(t<yl&&(yl=t),t>vl&&(vl=t)):t>xl?hh(yl,t)>hh(yl,vl)&&(vl=t):hh(t,vl)>hh(yl,vl)&&(yl=t)}else Ml.push(Bl=[yl=t,vl=t]);e<ml&&(ml=e),e>bl&&(bl=e),Al=n,xl=t}function uh(){ih.point=ah}function ch(){Bl[0]=yl,Bl[1]=vl,ih.point=oh,Al=null}function sh(t,e){if(Al){var n=t-xl;El.add(zf(n)>180?n+(n>0?360:-360):n)}else wl=t,_l=e;Fl.point(t,e),ah(t,e)}function fh(){Fl.lineStart()}function lh(){sh(wl,_l),Fl.lineEnd(),zf(El)>Rf&&(yl=-(vl=180)),Bl[0]=yl,Bl[1]=vl,Al=null}function hh(t,e){return(e-=t)<0?e+360:e}function dh(t,e){return t[0]-e[0]}function ph(t,e){return t[0]<=t[1]?t[0]<=e&&e<=t[1]:e<t[0]||t[1]<e}function gh(t){var e,n,r,i,o,a,u;if(bl=vl=-(yl=ml=1/0),Ml=[],fl(t,ih),n=Ml.length){for(Ml.sort(dh),e=1,o=[r=Ml[0]];e<n;++e)ph(r,(i=Ml[e])[0])||ph(r,i[1])?(hh(r[0],i[1])>hh(r[0],r[1])&&(r[1]=i[1]),hh(i[0],r[1])>hh(r[0],r[1])&&(r[0]=i[0])):o.push(r=i);for(a=-1/0,e=0,r=o[n=o.length-1];e<=n;r=i,++e)i=o[e],(u=hh(r[1],i[0]))>a&&(a=u,yl=i[0],vl=r[1])}return Ml=Bl=null,yl===1/0||ml===1/0?[[NaN,NaN],[NaN,NaN]]:[[yl,ml],[vl,bl]]}var yh={sphere:il,point:mh,lineStart:bh,lineEnd:_h,polygonStart:function(){yh.lineStart=Ah,yh.lineEnd=Eh},polygonEnd:function(){yh.lineStart=bh,yh.lineEnd=_h}};function mh(t,e){t*=jf;var n=Yf(e*=jf);vh(n*Yf(t),n*Zf(t),Zf(e))}function vh(t,e,n){++zl,ql+=(t-ql)/zl,Yl+=(e-Yl)/zl,Gl+=(n-Gl)/zl}function bh(){yh.point=xh}function xh(t,e){t*=jf;var n=Yf(e*=jf);eh=n*Yf(t),nh=n*Zf(t),rh=Zf(e),yh.point=wh,vh(eh,nh,rh)}function wh(t,e){t*=jf;var n=Yf(e*=jf),r=n*Yf(t),i=n*Zf(t),o=Zf(e),a=qf(Qf((a=nh*o-rh*i)*a+(a=rh*r-eh*o)*a+(a=eh*i-nh*r)*a),eh*r+nh*i+rh*o);Hl+=a,Vl+=a*(eh+(eh=r)),Wl+=a*(nh+(nh=i)),Xl+=a*(rh+(rh=o)),vh(eh,nh,rh)}function _h(){yh.point=mh}function Ah(){yh.point=Mh}function Eh(){Bh(Ql,th),yh.point=mh}function Mh(t,e){Ql=t,th=e,t*=jf,e*=jf,yh.point=Bh;var n=Yf(e);eh=n*Yf(t),nh=n*Zf(t),rh=Zf(e),vh(eh,nh,rh)}function Bh(t,e){t*=jf;var n=Yf(e*=jf),r=n*Yf(t),i=n*Zf(t),o=Zf(e),a=nh*o-rh*i,u=rh*r-eh*o,c=eh*i-nh*r,s=Wf(a,u,c),f=nl(s),l=s&&-f/s;Jl.add(l*a),Zl.add(l*u),Kl.add(l*c),Hl+=f,Vl+=f*(eh+(eh=r)),Wl+=f*(nh+(nh=i)),Xl+=f*(rh+(rh=o)),vh(eh,nh,rh)}function Th(t){zl=Hl=ql=Yl=Gl=Vl=Wl=Xl=0,Jl=new L,Zl=new L,Kl=new L,fl(t,yh);var e=+Jl,n=+Zl,r=+Kl,i=Wf(e,n,r);return i<Of&&(e=Vl,n=Wl,r=Xl,Hl<Rf&&(e=ql,n=Yl,r=Gl),(i=Wf(e,n,r))<Of)?[NaN,NaN]:[qf(n,e)*$f,nl(r/i)*$f]}function kh(t){return function(){return t}}function Fh(t,e){function n(n,r){return n=t(n,r),e(n[0],n[1])}return t.invert&&e.invert&&(n.invert=function(n,r){return(n=e.invert(n,r))&&t.invert(n[0],n[1])}),n}function Sh(t,e){return zf(t)>Pf&&(t-=Math.round(t/Uf)*Uf),[t,e]}function Nh(t,e,n){return(t%=Uf)?e||n?Fh(Ih(t),Rh(e,n)):Ih(t):e||n?Rh(e,n):Sh}function Ch(t){return function(e,n){return zf(e+=t)>Pf&&(e-=Math.round(e/Uf)*Uf),[e,n]}}function Ih(t){var e=Ch(t);return e.invert=Ch(-t),e}function Rh(t,e){var n=Yf(t),r=Zf(t),i=Yf(e),o=Zf(e);function a(t,e){var a=Yf(e),u=Yf(t)*a,c=Zf(t)*a,s=Zf(e),f=s*n+u*r;return[qf(c*i-f*o,u*n-s*r),nl(f*i+c*o)]}return a.invert=function(t,e){var a=Yf(e),u=Yf(t)*a,c=Zf(t)*a,s=Zf(e),f=s*i-c*o;return[qf(c*i+s*o,u*n+f*r),nl(f*n-u*r)]},a}function Oh(t){function e(e){return(e=t(e[0]*jf,e[1]*jf))[0]*=$f,e[1]*=$f,e}return t=Nh(t[0]*jf,t[1]*jf,t.length>2?t[2]*jf:0),e.invert=function(e){return(e=t.invert(e[0]*jf,e[1]*jf))[0]*=$f,e[1]*=$f,e},e}function Ph(t,e,n,r,i,o){if(n){var a=Yf(e),u=Zf(e),c=r*n;null==i?(i=e+r*Uf,o=e-c/2):(i=Dh(a,i),o=Dh(a,o),(r>0?i<o:i>o)&&(i+=r*Uf));for(var s,f=i;r>0?f>o:f<o;f-=c)s=Ol([a,-u*Yf(f),-u*Zf(f)]),t.point(s[0],s[1])}}function Dh(t,e){(e=Pl(e))[0]-=t,jl(e);var n=el(-e[1]);return((-e[2]<0?-n:n)+Uf-Rf)%Uf}function Lh(){var t,e,n=kh([0,0]),r=kh(90),i=kh(2),o={point:function(n,r){t.push(n=e(n,r)),n[0]*=$f,n[1]*=$f}};function a(){var a=n.apply(this,arguments),u=r.apply(this,arguments)*jf,c=i.apply(this,arguments)*jf;return t=[],e=Nh(-a[0]*jf,-a[1]*jf,0).invert,Ph(o,u,c,1),a={type:"Polygon",coordinates:[t]},t=e=null,a}return a.center=function(t){return arguments.length?(n="function"==typeof t?t:kh([+t[0],+t[1]]),a):n},a.radius=function(t){return arguments.length?(r="function"==typeof t?t:kh(+t),a):r},a.precision=function(t){return arguments.length?(i="function"==typeof t?t:kh(+t),a):i},a}function Uh(){var t,e=[];return{point:function(e,n,r){t.push([e,n,r])},lineStart:function(){e.push(t=[])},lineEnd:il,rejoin:function(){e.length>1&&e.push(e.pop().concat(e.shift()))},result:function(){var n=e;return e=[],t=null,n}}}function $h(t,e){return zf(t[0]-e[0])<Rf&&zf(t[1]-e[1])<Rf}function jh(t,e,n,r){this.x=t,this.z=e,this.o=n,this.e=r,this.v=!1,this.n=this.p=null}function zh(t,e,n,r,i){var o,a,u=[],c=[];if(t.forEach((function(t){if(!((e=t.length-1)<=0)){var e,n,r=t[0],a=t[e];if($h(r,a)){if(!r[2]&&!a[2]){for(i.lineStart(),o=0;o<e;++o)i.point((r=t[o])[0],r[1]);return void i.lineEnd()}a[0]+=2*Rf}u.push(n=new jh(r,t,null,!0)),c.push(n.o=new jh(r,null,n,!1)),u.push(n=new jh(a,t,null,!1)),c.push(n.o=new jh(a,null,n,!0))}})),u.length){for(c.sort(e),Hh(u),Hh(c),o=0,a=c.length;o<a;++o)c[o].e=n=!n;for(var s,f,l=u[0];;){for(var h=l,d=!0;h.v;)if((h=h.n)===l)return;s=h.z,i.lineStart();do{if(h.v=h.o.v=!0,h.e){if(d)for(o=0,a=s.length;o<a;++o)i.point((f=s[o])[0],f[1]);else r(h.x,h.n.x,1,i);h=h.n}else{if(d)for(s=h.p.z,o=s.length-1;o>=0;--o)i.point((f=s[o])[0],f[1]);else r(h.x,h.p.x,-1,i);h=h.p}s=(h=h.o).z,d=!d}while(!h.v);i.lineEnd()}}}function Hh(t){if(e=t.length){for(var e,n,r=0,i=t[0];++r<e;)i.n=n=t[r],n.p=i,i=n;i.n=n=t[0],n.p=i}}function qh(t){return zf(t[0])<=Pf?t[0]:Kf(t[0])*((zf(t[0])+Pf)%Uf-Pf)}function Yh(t,e){var n=qh(e),r=e[1],i=Zf(r),o=[Zf(n),-Yf(n),0],a=0,u=0,c=new L;1===i?r=Df+Rf:-1===i&&(r=-Df-Rf);for(var s=0,f=t.length;s<f;++s)if(h=(l=t[s]).length)for(var l,h,d=l[h-1],p=qh(d),g=d[1]/2+Lf,y=Zf(g),m=Yf(g),v=0;v<h;++v,p=x,y=_,m=A,d=b){var b=l[v],x=qh(b),w=b[1]/2+Lf,_=Zf(w),A=Yf(w),E=x-p,M=E>=0?1:-1,B=M*E,T=B>Pf,k=y*_;if(c.add(qf(k*M*Zf(B),m*A+k*Yf(B))),a+=T?E+M*Uf:E,T^p>=n^x>=n){var F=Ll(Pl(d),Pl(b));jl(F);var S=Ll(o,F);jl(S);var N=(T^E>=0?-1:1)*nl(S[2]);(r>N||r===N&&(F[0]||F[1]))&&(u+=T^E>=0?1:-1)}}return(a<-Rf||a<Rf&&c<-Of)^1&u}function Gh(t,e,n,r){return function(i){var o,a,u,c=e(i),s=Uh(),f=e(s),l=!1,h={point:d,lineStart:g,lineEnd:y,polygonStart:function(){h.point=m,h.lineStart=v,h.lineEnd=b,a=[],o=[]},polygonEnd:function(){h.point=d,h.lineStart=g,h.lineEnd=y,a=Lt(a);var t=Yh(o,r);a.length?(l||(i.polygonStart(),l=!0),zh(a,Wh,t,n,i)):t&&(l||(i.polygonStart(),l=!0),i.lineStart(),n(null,null,1,i),i.lineEnd()),l&&(i.polygonEnd(),l=!1),a=o=null},sphere:function(){i.polygonStart(),i.lineStart(),n(null,null,1,i),i.lineEnd(),i.polygonEnd()}};function d(e,n){t(e,n)&&i.point(e,n)}function p(t,e){c.point(t,e)}function g(){h.point=p,c.lineStart()}function y(){h.point=d,c.lineEnd()}function m(t,e){u.push([t,e]),f.point(t,e)}function v(){f.lineStart(),u=[]}function b(){m(u[0][0],u[0][1]),f.lineEnd();var t,e,n,r,c=f.clean(),h=s.result(),d=h.length;if(u.pop(),o.push(u),u=null,d)if(1&c){if((e=(n=h[0]).length-1)>0){for(l||(i.polygonStart(),l=!0),i.lineStart(),t=0;t<e;++t)i.point((r=n[t])[0],r[1]);i.lineEnd()}}else d>1&&2&c&&h.push(h.pop().concat(h.shift())),a.push(h.filter(Vh))}return h}}function Vh(t){return t.length>1}function Wh(t,e){return((t=t.x)[0]<0?t[1]-Df-Rf:Df-t[1])-((e=e.x)[0]<0?e[1]-Df-Rf:Df-e[1])}Sh.invert=Sh;const Xh=Gh((function(){return!0}),(function(t){var e,n=NaN,r=NaN,i=NaN;return{lineStart:function(){t.lineStart(),e=1},point:function(o,a){var u=o>0?Pf:-Pf,c=zf(o-n);zf(c-Pf)<Rf?(t.point(n,r=(r+a)/2>0?Df:-Df),t.point(i,r),t.lineEnd(),t.lineStart(),t.point(u,r),t.point(o,r),e=0):i!==u&&c>=Pf&&(zf(n-i)<Rf&&(n-=i*Rf),zf(o-u)<Rf&&(o-=u*Rf),r=function(t,e,n,r){var i,o,a=Zf(t-n);return zf(a)>Rf?Hf((Zf(e)*(o=Yf(r))*Zf(n)-Zf(r)*(i=Yf(e))*Zf(t))/(i*o*a)):(e+r)/2}(n,r,o,a),t.point(i,r),t.lineEnd(),t.lineStart(),t.point(u,r),e=0),t.point(n=o,r=a),i=u},lineEnd:function(){t.lineEnd(),n=r=NaN},clean:function(){return 2-e}}}),(function(t,e,n,r){var i;if(null==t)i=n*Df,r.point(-Pf,i),r.point(0,i),r.point(Pf,i),r.point(Pf,0),r.point(Pf,-i),r.point(0,-i),r.point(-Pf,-i),r.point(-Pf,0),r.point(-Pf,i);else if(zf(t[0]-e[0])>Rf){var o=t[0]<e[0]?Pf:-Pf;i=n*o/2,r.point(-o,i),r.point(0,i),r.point(o,i)}else r.point(e[0],e[1])}),[-Pf,-Df]);function Jh(t){var e=Yf(t),n=2*jf,r=e>0,i=zf(e)>Rf;function o(t,n){return Yf(t)*Yf(n)>e}function a(t,n,r){var i=[1,0,0],o=Ll(Pl(t),Pl(n)),a=Dl(o,o),u=o[0],c=a-u*u;if(!c)return!r&&t;var s=e*a/c,f=-e*u/c,l=Ll(i,o),h=$l(i,s);Ul(h,$l(o,f));var d=l,p=Dl(h,d),g=Dl(d,d),y=p*p-g*(Dl(h,h)-1);if(!(y<0)){var m=Qf(y),v=$l(d,(-p-m)/g);if(Ul(v,h),v=Ol(v),!r)return v;var b,x=t[0],w=n[0],_=t[1],A=n[1];w<x&&(b=x,x=w,w=b);var E=w-x,M=zf(E-Pf)<Rf;if(!M&&A<_&&(b=_,_=A,A=b),M||E<Rf?M?_+A>0^v[1]<(zf(v[0]-x)<Rf?_:A):_<=v[1]&&v[1]<=A:E>Pf^(x<=v[0]&&v[0]<=w)){var B=$l(d,(-p+m)/g);return Ul(B,h),[v,Ol(B)]}}}function u(e,n){var i=r?t:Pf-t,o=0;return e<-i?o|=1:e>i&&(o|=2),n<-i?o|=4:n>i&&(o|=8),o}return Gh(o,(function(t){var e,n,c,s,f;return{lineStart:function(){s=c=!1,f=1},point:function(l,h){var d,p=[l,h],g=o(l,h),y=r?g?0:u(l,h):g?u(l+(l<0?Pf:-Pf),h):0;if(!e&&(s=c=g)&&t.lineStart(),g!==c&&(!(d=a(e,p))||$h(e,d)||$h(p,d))&&(p[2]=1),g!==c)f=0,g?(t.lineStart(),d=a(p,e),t.point(d[0],d[1])):(d=a(e,p),t.point(d[0],d[1],2),t.lineEnd()),e=d;else if(i&&e&&r^g){var m;y&n||!(m=a(p,e,!0))||(f=0,r?(t.lineStart(),t.point(m[0][0],m[0][1]),t.point(m[1][0],m[1][1]),t.lineEnd()):(t.point(m[1][0],m[1][1]),t.lineEnd(),t.lineStart(),t.point(m[0][0],m[0][1],3)))}!g||e&&$h(e,p)||t.point(p[0],p[1]),e=p,c=g,n=y},lineEnd:function(){c&&t.lineEnd(),e=null},clean:function(){return f|(s&&c)<<1}}}),(function(e,r,i,o){Ph(o,t,n,i,e,r)}),r?[0,-t]:[-Pf,t-Pf])}var Zh,Kh,Qh,td,ed=1e9,nd=-ed;function rd(t,e,n,r){function i(i,o){return t<=i&&i<=n&&e<=o&&o<=r}function o(i,o,u,s){var f=0,l=0;if(null==i||(f=a(i,u))!==(l=a(o,u))||c(i,o)<0^u>0)do{s.point(0===f||3===f?t:n,f>1?r:e)}while((f=(f+u+4)%4)!==l);else s.point(o[0],o[1])}function a(r,i){return zf(r[0]-t)<Rf?i>0?0:3:zf(r[0]-n)<Rf?i>0?2:1:zf(r[1]-e)<Rf?i>0?1:0:i>0?3:2}function u(t,e){return c(t.x,e.x)}function c(t,e){var n=a(t,1),r=a(e,1);return n!==r?n-r:0===n?e[1]-t[1]:1===n?t[0]-e[0]:2===n?t[1]-e[1]:e[0]-t[0]}return function(a){var c,s,f,l,h,d,p,g,y,m,v,b=a,x=Uh(),w={point:_,lineStart:function(){w.point=A,s&&s.push(f=[]),m=!0,y=!1,p=g=NaN},lineEnd:function(){c&&(A(l,h),d&&y&&x.rejoin(),c.push(x.result())),w.point=_,y&&b.lineEnd()},polygonStart:function(){b=x,c=[],s=[],v=!0},polygonEnd:function(){var e=function(){for(var e=0,n=0,i=s.length;n<i;++n)for(var o,a,u=s[n],c=1,f=u.length,l=u[0],h=l[0],d=l[1];c<f;++c)o=h,a=d,h=(l=u[c])[0],d=l[1],a<=r?d>r&&(h-o)*(r-a)>(d-a)*(t-o)&&++e:d<=r&&(h-o)*(r-a)<(d-a)*(t-o)&&--e;return e}(),n=v&&e,i=(c=Lt(c)).length;(n||i)&&(a.polygonStart(),n&&(a.lineStart(),o(null,null,1,a),a.lineEnd()),i&&zh(c,u,e,o,a),a.polygonEnd()),b=a,c=s=f=null}};function _(t,e){i(t,e)&&b.point(t,e)}function A(o,a){var u=i(o,a);if(s&&f.push([o,a]),m)l=o,h=a,d=u,m=!1,u&&(b.lineStart(),b.point(o,a));else if(u&&y)b.point(o,a);else{var c=[p=Math.max(nd,Math.min(ed,p)),g=Math.max(nd,Math.min(ed,g))],x=[o=Math.max(nd,Math.min(ed,o)),a=Math.max(nd,Math.min(ed,a))];!function(t,e,n,r,i,o){var a,u=t[0],c=t[1],s=0,f=1,l=e[0]-u,h=e[1]-c;if(a=n-u,l||!(a>0)){if(a/=l,l<0){if(a<s)return;a<f&&(f=a)}else if(l>0){if(a>f)return;a>s&&(s=a)}if(a=i-u,l||!(a<0)){if(a/=l,l<0){if(a>f)return;a>s&&(s=a)}else if(l>0){if(a<s)return;a<f&&(f=a)}if(a=r-c,h||!(a>0)){if(a/=h,h<0){if(a<s)return;a<f&&(f=a)}else if(h>0){if(a>f)return;a>s&&(s=a)}if(a=o-c,h||!(a<0)){if(a/=h,h<0){if(a>f)return;a>s&&(s=a)}else if(h>0){if(a<s)return;a<f&&(f=a)}return s>0&&(t[0]=u+s*l,t[1]=c+s*h),f<1&&(e[0]=u+f*l,e[1]=c+f*h),!0}}}}}(c,x,t,e,n,r)?u&&(b.lineStart(),b.point(o,a),v=!1):(y||(b.lineStart(),b.point(c[0],c[1])),b.point(x[0],x[1]),u||b.lineEnd(),v=!1)}p=o,g=a,y=u}return w}}function id(){var t,e,n,r=0,i=0,o=960,a=500;return n={stream:function(n){return t&&e===n?t:t=rd(r,i,o,a)(e=n)},extent:function(u){return arguments.length?(r=+u[0][0],i=+u[0][1],o=+u[1][0],a=+u[1][1],t=e=null,n):[[r,i],[o,a]]}}}var od={sphere:il,point:il,lineStart:function(){od.point=ud,od.lineEnd=ad},lineEnd:il,polygonStart:il,polygonEnd:il};function ad(){od.point=od.lineEnd=il}function ud(t,e){Kh=t*=jf,Qh=Zf(e*=jf),td=Yf(e),od.point=cd}function cd(t,e){t*=jf;var n=Zf(e*=jf),r=Yf(e),i=zf(t-Kh),o=Yf(i),a=r*Zf(i),u=td*n-Qh*r*o,c=Qh*n+td*r*o;Zh.add(qf(Qf(a*a+u*u),c)),Kh=t,Qh=n,td=r}function sd(t){return Zh=new L,fl(t,od),+Zh}var fd=[null,null],ld={type:"LineString",coordinates:fd};function hd(t,e){return fd[0]=t,fd[1]=e,sd(ld)}var dd={Feature:function(t,e){return gd(t.geometry,e)},FeatureCollection:function(t,e){for(var n=t.features,r=-1,i=n.length;++r<i;)if(gd(n[r].geometry,e))return!0;return!1}},pd={Sphere:function(){return!0},Point:function(t,e){return yd(t.coordinates,e)},MultiPoint:function(t,e){for(var n=t.coordinates,r=-1,i=n.length;++r<i;)if(yd(n[r],e))return!0;return!1},LineString:function(t,e){return md(t.coordinates,e)},MultiLineString:function(t,e){for(var n=t.coordinates,r=-1,i=n.length;++r<i;)if(md(n[r],e))return!0;return!1},Polygon:function(t,e){return vd(t.coordinates,e)},MultiPolygon:function(t,e){for(var n=t.coordinates,r=-1,i=n.length;++r<i;)if(vd(n[r],e))return!0;return!1},GeometryCollection:function(t,e){for(var n=t.geometries,r=-1,i=n.length;++r<i;)if(gd(n[r],e))return!0;return!1}};function gd(t,e){return!(!t||!pd.hasOwnProperty(t.type))&&pd[t.type](t,e)}function yd(t,e){return 0===hd(t,e)}function md(t,e){for(var n,r,i,o=0,a=t.length;o<a;o++){if(0===(r=hd(t[o],e)))return!0;if(o>0&&(i=hd(t[o],t[o-1]))>0&&n<=i&&r<=i&&(n+r-i)*(1-Math.pow((n-r)/i,2))<Of*i)return!0;n=r}return!1}function vd(t,e){return!!Yh(t.map(bd),xd(e))}function bd(t){return(t=t.map(xd)).pop(),t}function xd(t){return[t[0]*jf,t[1]*jf]}function wd(t,e){return(t&&dd.hasOwnProperty(t.type)?dd[t.type]:gd)(t,e)}function _d(t,e,n){var r=zt(t,e-Rf,n).concat(e);return function(t){return r.map((function(e){return[t,e]}))}}function Ad(t,e,n){var r=zt(t,e-Rf,n).concat(e);return function(t){return r.map((function(e){return[e,t]}))}}function Ed(){var t,e,n,r,i,o,a,u,c,s,f,l,h=10,d=h,p=90,g=360,y=2.5;function m(){return{type:"MultiLineString",coordinates:v()}}function v(){return zt(Gf(r/p)*p,n,p).map(f).concat(zt(Gf(u/g)*g,a,g).map(l)).concat(zt(Gf(e/h)*h,t,h).filter((function(t){return zf(t%p)>Rf})).map(c)).concat(zt(Gf(o/d)*d,i,d).filter((function(t){return zf(t%g)>Rf})).map(s))}return m.lines=function(){return v().map((function(t){return{type:"LineString",coordinates:t}}))},m.outline=function(){return{type:"Polygon",coordinates:[f(r).concat(l(a).slice(1),f(n).reverse().slice(1),l(u).reverse().slice(1))]}},m.extent=function(t){return arguments.length?m.extentMajor(t).extentMinor(t):m.extentMinor()},m.extentMajor=function(t){return arguments.length?(r=+t[0][0],n=+t[1][0],u=+t[0][1],a=+t[1][1],r>n&&(t=r,r=n,n=t),u>a&&(t=u,u=a,a=t),m.precision(y)):[[r,u],[n,a]]},m.extentMinor=function(n){return arguments.length?(e=+n[0][0],t=+n[1][0],o=+n[0][1],i=+n[1][1],e>t&&(n=e,e=t,t=n),o>i&&(n=o,o=i,i=n),m.precision(y)):[[e,o],[t,i]]},m.step=function(t){return arguments.length?m.stepMajor(t).stepMinor(t):m.stepMinor()},m.stepMajor=function(t){return arguments.length?(p=+t[0],g=+t[1],m):[p,g]},m.stepMinor=function(t){return arguments.length?(h=+t[0],d=+t[1],m):[h,d]},m.precision=function(h){return arguments.length?(y=+h,c=_d(o,i,90),s=Ad(e,t,y),f=_d(u,a,90),l=Ad(r,n,y),m):y},m.extentMajor([[-180,-90+Rf],[180,90-Rf]]).extentMinor([[-180,-80-Rf],[180,80+Rf]])}function Md(){return Ed()()}function Bd(t,e){var n=t[0]*jf,r=t[1]*jf,i=e[0]*jf,o=e[1]*jf,a=Yf(r),u=Zf(r),c=Yf(o),s=Zf(o),f=a*Yf(n),l=a*Zf(n),h=c*Yf(i),d=c*Zf(i),p=2*nl(Qf(rl(o-r)+a*c*rl(i-n))),g=Zf(p),y=p?function(t){var e=Zf(t*=p)/g,n=Zf(p-t)/g,r=n*f+e*h,i=n*l+e*d,o=n*u+e*s;return[qf(i,r)*$f,qf(o,Qf(r*r+i*i))*$f]}:function(){return[n*$f,r*$f]};return y.distance=p,y}const Td=t=>t;var kd,Fd,Sd,Nd,Cd=new L,Id=new L,Rd={point:il,lineStart:il,lineEnd:il,polygonStart:function(){Rd.lineStart=Od,Rd.lineEnd=Ld},polygonEnd:function(){Rd.lineStart=Rd.lineEnd=Rd.point=il,Cd.add(zf(Id)),Id=new L},result:function(){var t=Cd/2;return Cd=new L,t}};function Od(){Rd.point=Pd}function Pd(t,e){Rd.point=Dd,kd=Sd=t,Fd=Nd=e}function Dd(t,e){Id.add(Nd*t-Sd*e),Sd=t,Nd=e}function Ld(){Dd(kd,Fd)}const Ud=Rd;var $d=1/0,jd=$d,zd=-$d,Hd=zd,qd={point:function(t,e){t<$d&&($d=t),t>zd&&(zd=t),e<jd&&(jd=e),e>Hd&&(Hd=e)},lineStart:il,lineEnd:il,polygonStart:il,polygonEnd:il,result:function(){var t=[[$d,jd],[zd,Hd]];return zd=Hd=-(jd=$d=1/0),t}};const Yd=qd;var Gd,Vd,Wd,Xd,Jd=0,Zd=0,Kd=0,Qd=0,tp=0,ep=0,np=0,rp=0,ip=0,op={point:ap,lineStart:up,lineEnd:fp,polygonStart:function(){op.lineStart=lp,op.lineEnd=hp},polygonEnd:function(){op.point=ap,op.lineStart=up,op.lineEnd=fp},result:function(){var t=ip?[np/ip,rp/ip]:ep?[Qd/ep,tp/ep]:Kd?[Jd/Kd,Zd/Kd]:[NaN,NaN];return Jd=Zd=Kd=Qd=tp=ep=np=rp=ip=0,t}};function ap(t,e){Jd+=t,Zd+=e,++Kd}function up(){op.point=cp}function cp(t,e){op.point=sp,ap(Wd=t,Xd=e)}function sp(t,e){var n=t-Wd,r=e-Xd,i=Qf(n*n+r*r);Qd+=i*(Wd+t)/2,tp+=i*(Xd+e)/2,ep+=i,ap(Wd=t,Xd=e)}function fp(){op.point=ap}function lp(){op.point=dp}function hp(){pp(Gd,Vd)}function dp(t,e){op.point=pp,ap(Gd=Wd=t,Vd=Xd=e)}function pp(t,e){var n=t-Wd,r=e-Xd,i=Qf(n*n+r*r);Qd+=i*(Wd+t)/2,tp+=i*(Xd+e)/2,ep+=i,np+=(i=Xd*t-Wd*e)*(Wd+t),rp+=i*(Xd+e),ip+=3*i,ap(Wd=t,Xd=e)}const gp=op;function yp(t){this._context=t}yp.prototype={_radius:4.5,pointRadius:function(t){return this._radius=t,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){0===this._line&&this._context.closePath(),this._point=NaN},point:function(t,e){switch(this._point){case 0:this._context.moveTo(t,e),this._point=1;break;case 1:this._context.lineTo(t,e);break;default:this._context.moveTo(t+this._radius,e),this._context.arc(t,e,this._radius,0,Uf)}},result:il};var mp,vp,bp,xp,wp,_p=new L,Ap={point:il,lineStart:function(){Ap.point=Ep},lineEnd:function(){mp&&Mp(vp,bp),Ap.point=il},polygonStart:function(){mp=!0},polygonEnd:function(){mp=null},result:function(){var t=+_p;return _p=new L,t}};function Ep(t,e){Ap.point=Mp,vp=xp=t,bp=wp=e}function Mp(t,e){xp-=t,wp-=e,_p.add(Qf(xp*xp+wp*wp)),xp=t,wp=e}const Bp=Ap;let Tp,kp,Fp,Sp;class Np{constructor(t){this._append=null==t?Cp:function(t){const e=Math.floor(t);if(!(e>=0))throw new RangeError(`invalid digits: ${t}`);if(e>15)return Cp;if(e!==Tp){const t=10**e;Tp=e,kp=function(e){let n=1;this._+=e[0];for(const r=e.length;n<r;++n)this._+=Math.round(arguments[n]*t)/t+e[n]}}return kp}(t),this._radius=4.5,this._=""}pointRadius(t){return this._radius=+t,this}polygonStart(){this._line=0}polygonEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){0===this._line&&(this._+="Z"),this._point=NaN}point(t,e){switch(this._point){case 0:this._append`M${t},${e}`,this._point=1;break;case 1:this._append`L${t},${e}`;break;default:if(this._append`M${t},${e}`,this._radius!==Fp||this._append!==kp){const t=this._radius,e=this._;this._="",this._append`m0,${t}a${t},${t} 0 1,1 0,${-2*t}a${t},${t} 0 1,1 0,${2*t}z`,Fp=t,kp=this._append,Sp=this._,this._=e}this._+=Sp}}result(){const t=this._;return this._="",t.length?t:null}}function Cp(t){let e=1;this._+=t[0];for(const n=t.length;e<n;++e)this._+=arguments[e]+t[e]}function Ip(t,e){let n,r,i=3,o=4.5;function a(t){return t&&("function"==typeof o&&r.pointRadius(+o.apply(this,arguments)),fl(t,n(r))),r.result()}return a.area=function(t){return fl(t,n(Ud)),Ud.result()},a.measure=function(t){return fl(t,n(Bp)),Bp.result()},a.bounds=function(t){return fl(t,n(Yd)),Yd.result()},a.centroid=function(t){return fl(t,n(gp)),gp.result()},a.projection=function(e){return arguments.length?(n=null==e?(t=null,Td):(t=e).stream,a):t},a.context=function(t){return arguments.length?(r=null==t?(e=null,new Np(i)):new yp(e=t),"function"!=typeof o&&r.pointRadius(o),a):e},a.pointRadius=function(t){return arguments.length?(o="function"==typeof t?t:(r.pointRadius(+t),+t),a):o},a.digits=function(t){if(!arguments.length)return i;if(null==t)i=null;else{const e=Math.floor(t);if(!(e>=0))throw new RangeError(`invalid digits: ${t}`);i=e}return null===e&&(r=new Np(i)),a},a.projection(t).digits(i).context(e)}function Rp(t){return{stream:Op(t)}}function Op(t){return function(e){var n=new Pp;for(var r in t)n[r]=t[r];return n.stream=e,n}}function Pp(){}function Dp(t,e,n){var r=t.clipExtent&&t.clipExtent();return t.scale(150).translate([0,0]),null!=r&&t.clipExtent(null),fl(n,t.stream(Yd)),e(Yd.result()),null!=r&&t.clipExtent(r),t}function Lp(t,e,n){return Dp(t,(function(n){var r=e[1][0]-e[0][0],i=e[1][1]-e[0][1],o=Math.min(r/(n[1][0]-n[0][0]),i/(n[1][1]-n[0][1])),a=+e[0][0]+(r-o*(n[1][0]+n[0][0]))/2,u=+e[0][1]+(i-o*(n[1][1]+n[0][1]))/2;t.scale(150*o).translate([a,u])}),n)}function Up(t,e,n){return Lp(t,[[0,0],e],n)}function $p(t,e,n){return Dp(t,(function(n){var r=+e,i=r/(n[1][0]-n[0][0]),o=(r-i*(n[1][0]+n[0][0]))/2,a=-i*n[0][1];t.scale(150*i).translate([o,a])}),n)}function jp(t,e,n){return Dp(t,(function(n){var r=+e,i=r/(n[1][1]-n[0][1]),o=-i*n[0][0],a=(r-i*(n[1][1]+n[0][1]))/2;t.scale(150*i).translate([o,a])}),n)}Pp.prototype={constructor:Pp,point:function(t,e){this.stream.point(t,e)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}};var zp=16,Hp=Yf(30*jf);function qp(t,e){return+e?function(t,e){function n(r,i,o,a,u,c,s,f,l,h,d,p,g,y){var m=s-r,v=f-i,b=m*m+v*v;if(b>4*e&&g--){var x=a+h,w=u+d,_=c+p,A=Qf(x*x+w*w+_*_),E=nl(_/=A),M=zf(zf(_)-1)<Rf||zf(o-l)<Rf?(o+l)/2:qf(w,x),B=t(M,E),T=B[0],k=B[1],F=T-r,S=k-i,N=v*F-m*S;(N*N/b>e||zf((m*F+v*S)/b-.5)>.3||a*h+u*d+c*p<Hp)&&(n(r,i,o,a,u,c,T,k,M,x/=A,w/=A,_,g,y),y.point(T,k),n(T,k,M,x,w,_,s,f,l,h,d,p,g,y))}}return function(e){var r,i,o,a,u,c,s,f,l,h,d,p,g={point:y,lineStart:m,lineEnd:b,polygonStart:function(){e.polygonStart(),g.lineStart=x},polygonEnd:function(){e.polygonEnd(),g.lineStart=m}};function y(n,r){n=t(n,r),e.point(n[0],n[1])}function m(){f=NaN,g.point=v,e.lineStart()}function v(r,i){var o=Pl([r,i]),a=t(r,i);n(f,l,s,h,d,p,f=a[0],l=a[1],s=r,h=o[0],d=o[1],p=o[2],zp,e),e.point(f,l)}function b(){g.point=y,e.lineEnd()}function x(){m(),g.point=w,g.lineEnd=_}function w(t,e){v(r=t,e),i=f,o=l,a=h,u=d,c=p,g.point=v}function _(){n(f,l,s,h,d,p,i,o,r,a,u,c,zp,e),g.lineEnd=b,b()}return g}}(t,e):function(t){return Op({point:function(e,n){e=t(e,n),this.stream.point(e[0],e[1])}})}(t)}var Yp=Op({point:function(t,e){this.stream.point(t*jf,e*jf)}});function Gp(t,e,n,r,i,o){if(!o)return function(t,e,n,r,i){function o(o,a){return[e+t*(o*=r),n-t*(a*=i)]}return o.invert=function(o,a){return[(o-e)/t*r,(n-a)/t*i]},o}(t,e,n,r,i);var a=Yf(o),u=Zf(o),c=a*t,s=u*t,f=a/t,l=u/t,h=(u*n-a*e)/t,d=(u*e+a*n)/t;function p(t,o){return[c*(t*=r)-s*(o*=i)+e,n-s*t-c*o]}return p.invert=function(t,e){return[r*(f*t-l*e+h),i*(d-l*t-f*e)]},p}function Vp(t){return Wp((function(){return t}))()}function Wp(t){var e,n,r,i,o,a,u,c,s,f,l=150,h=480,d=250,p=0,g=0,y=0,m=0,v=0,b=0,x=1,w=1,_=null,A=Xh,E=null,M=Td,B=.5;function T(t){return c(t[0]*jf,t[1]*jf)}function k(t){return(t=c.invert(t[0],t[1]))&&[t[0]*$f,t[1]*$f]}function F(){var t=Gp(l,0,0,x,w,b).apply(null,e(p,g)),r=Gp(l,h-t[0],d-t[1],x,w,b);return n=Nh(y,m,v),u=Fh(e,r),c=Fh(n,u),a=qp(u,B),S()}function S(){return s=f=null,T}return T.stream=function(t){return s&&f===t?s:s=Yp(function(t){return Op({point:function(e,n){var r=t(e,n);return this.stream.point(r[0],r[1])}})}(n)(A(a(M(f=t)))))},T.preclip=function(t){return arguments.length?(A=t,_=void 0,S()):A},T.postclip=function(t){return arguments.length?(M=t,E=r=i=o=null,S()):M},T.clipAngle=function(t){return arguments.length?(A=+t?Jh(_=t*jf):(_=null,Xh),S()):_*$f},T.clipExtent=function(t){return arguments.length?(M=null==t?(E=r=i=o=null,Td):rd(E=+t[0][0],r=+t[0][1],i=+t[1][0],o=+t[1][1]),S()):null==E?null:[[E,r],[i,o]]},T.scale=function(t){return arguments.length?(l=+t,F()):l},T.translate=function(t){return arguments.length?(h=+t[0],d=+t[1],F()):[h,d]},T.center=function(t){return arguments.length?(p=t[0]%360*jf,g=t[1]%360*jf,F()):[p*$f,g*$f]},T.rotate=function(t){return arguments.length?(y=t[0]%360*jf,m=t[1]%360*jf,v=t.length>2?t[2]%360*jf:0,F()):[y*$f,m*$f,v*$f]},T.angle=function(t){return arguments.length?(b=t%360*jf,F()):b*$f},T.reflectX=function(t){return arguments.length?(x=t?-1:1,F()):x<0},T.reflectY=function(t){return arguments.length?(w=t?-1:1,F()):w<0},T.precision=function(t){return arguments.length?(a=qp(u,B=t*t),S()):Qf(B)},T.fitExtent=function(t,e){return Lp(T,t,e)},T.fitSize=function(t,e){return Up(T,t,e)},T.fitWidth=function(t,e){return $p(T,t,e)},T.fitHeight=function(t,e){return jp(T,t,e)},function(){return e=t.apply(this,arguments),T.invert=e.invert&&k,F()}}function Xp(t){var e=0,n=Pf/3,r=Wp(t),i=r(e,n);return i.parallels=function(t){return arguments.length?r(e=t[0]*jf,n=t[1]*jf):[e*$f,n*$f]},i}function Jp(t,e){var n=Zf(t),r=(n+Zf(e))/2;if(zf(r)<Rf)return function(t){var e=Yf(t);function n(t,n){return[t*e,Zf(n)/e]}return n.invert=function(t,n){return[t/e,nl(n*e)]},n}(t);var i=1+n*(2*r-n),o=Qf(i)/r;function a(t,e){var n=Qf(i-2*r*Zf(e))/r;return[n*Zf(t*=r),o-n*Yf(t)]}return a.invert=function(t,e){var n=o-e,a=qf(t,zf(n))*Kf(n);return n*r<0&&(a-=Pf*Kf(t)*Kf(n)),[a/r,nl((i-(t*t+n*n)*r*r)/(2*r))]},a}function Zp(){return Xp(Jp).scale(155.424).center([0,33.6442])}function Kp(){return Zp().parallels([29.5,45.5]).scale(1070).translate([480,250]).rotate([96,0]).center([-.6,38.7])}function Qp(){var t,e,n,r,i,o,a=Kp(),u=Zp().rotate([154,0]).center([-2,58.5]).parallels([55,65]),c=Zp().rotate([157,0]).center([-3,19.9]).parallels([8,18]),s={point:function(t,e){o=[t,e]}};function f(t){var e=t[0],a=t[1];return o=null,n.point(e,a),o||(r.point(e,a),o)||(i.point(e,a),o)}function l(){return t=e=null,f}return f.invert=function(t){var e=a.scale(),n=a.translate(),r=(t[0]-n[0])/e,i=(t[1]-n[1])/e;return(i>=.12&&i<.234&&r>=-.425&&r<-.214?u:i>=.166&&i<.234&&r>=-.214&&r<-.115?c:a).invert(t)},f.stream=function(n){return t&&e===n?t:(r=[a.stream(e=n),u.stream(n),c.stream(n)],i=r.length,t={point:function(t,e){for(var n=-1;++n<i;)r[n].point(t,e)},sphere:function(){for(var t=-1;++t<i;)r[t].sphere()},lineStart:function(){for(var t=-1;++t<i;)r[t].lineStart()},lineEnd:function(){for(var t=-1;++t<i;)r[t].lineEnd()},polygonStart:function(){for(var t=-1;++t<i;)r[t].polygonStart()},polygonEnd:function(){for(var t=-1;++t<i;)r[t].polygonEnd()}});var r,i},f.precision=function(t){return arguments.length?(a.precision(t),u.precision(t),c.precision(t),l()):a.precision()},f.scale=function(t){return arguments.length?(a.scale(t),u.scale(.35*t),c.scale(t),f.translate(a.translate())):a.scale()},f.translate=function(t){if(!arguments.length)return a.translate();var e=a.scale(),o=+t[0],f=+t[1];return n=a.translate(t).clipExtent([[o-.455*e,f-.238*e],[o+.455*e,f+.238*e]]).stream(s),r=u.translate([o-.307*e,f+.201*e]).clipExtent([[o-.425*e+Rf,f+.12*e+Rf],[o-.214*e-Rf,f+.234*e-Rf]]).stream(s),i=c.translate([o-.205*e,f+.212*e]).clipExtent([[o-.214*e+Rf,f+.166*e+Rf],[o-.115*e-Rf,f+.234*e-Rf]]).stream(s),l()},f.fitExtent=function(t,e){return Lp(f,t,e)},f.fitSize=function(t,e){return Up(f,t,e)},f.fitWidth=function(t,e){return $p(f,t,e)},f.fitHeight=function(t,e){return jp(f,t,e)},f.scale(1070)}function tg(t){return function(e,n){var r=Yf(e),i=Yf(n),o=t(r*i);return o===1/0?[2,0]:[o*i*Zf(e),o*Zf(n)]}}function eg(t){return function(e,n){var r=Qf(e*e+n*n),i=t(r),o=Zf(i),a=Yf(i);return[qf(e*o,r*a),nl(r&&n*o/r)]}}var ng=tg((function(t){return Qf(2/(1+t))}));function rg(){return Vp(ng).scale(124.75).clipAngle(179.999)}ng.invert=eg((function(t){return 2*nl(t/2)}));var ig=tg((function(t){return(t=el(t))&&t/Zf(t)}));function og(){return Vp(ig).scale(79.4188).clipAngle(179.999)}function ag(t,e){return[t,Xf(tl((Df+e)/2))]}function ug(){return cg(ag).scale(961/Uf)}function cg(t){var e,n,r,i=Vp(t),o=i.center,a=i.scale,u=i.translate,c=i.clipExtent,s=null;function f(){var o=Pf*a(),u=i(Oh(i.rotate()).invert([0,0]));return c(null==s?[[u[0]-o,u[1]-o],[u[0]+o,u[1]+o]]:t===ag?[[Math.max(u[0]-o,s),e],[Math.min(u[0]+o,n),r]]:[[s,Math.max(u[1]-o,e)],[n,Math.min(u[1]+o,r)]])}return i.scale=function(t){return arguments.length?(a(t),f()):a()},i.translate=function(t){return arguments.length?(u(t),f()):u()},i.center=function(t){return arguments.length?(o(t),f()):o()},i.clipExtent=function(t){return arguments.length?(null==t?s=e=n=r=null:(s=+t[0][0],e=+t[0][1],n=+t[1][0],r=+t[1][1]),f()):null==s?null:[[s,e],[n,r]]},f()}function sg(t){return tl((Df+t)/2)}function fg(t,e){var n=Yf(t),r=t===e?Zf(t):Xf(n/Yf(e))/Xf(sg(e)/sg(t)),i=n*Jf(sg(t),r)/r;if(!r)return ag;function o(t,e){i>0?e<-Df+Rf&&(e=-Df+Rf):e>Df-Rf&&(e=Df-Rf);var n=i/Jf(sg(e),r);return[n*Zf(r*t),i-n*Yf(r*t)]}return o.invert=function(t,e){var n=i-e,o=Kf(r)*Qf(t*t+n*n),a=qf(t,zf(n))*Kf(n);return n*r<0&&(a-=Pf*Kf(t)*Kf(n)),[a/r,2*Hf(Jf(i/o,1/r))-Df]},o}function lg(){return Xp(fg).scale(109.5).parallels([30,30])}function hg(t,e){return[t,e]}function dg(){return Vp(hg).scale(152.63)}function pg(t,e){var n=Yf(t),r=t===e?Zf(t):(n-Yf(e))/(e-t),i=n/r+t;if(zf(r)<Rf)return hg;function o(t,e){var n=i-e,o=r*t;return[n*Zf(o),i-n*Yf(o)]}return o.invert=function(t,e){var n=i-e,o=qf(t,zf(n))*Kf(n);return n*r<0&&(o-=Pf*Kf(t)*Kf(n)),[o/r,i-Kf(r)*Qf(t*t+n*n)]},o}function gg(){return Xp(pg).scale(131.154).center([0,13.9389])}ig.invert=eg((function(t){return t})),ag.invert=function(t,e){return[t,2*Hf(Vf(e))-Df]},hg.invert=hg;var yg=1.340264,mg=-.081106,vg=893e-6,bg=.003796,xg=Qf(3)/2;function wg(t,e){var n=nl(xg*Zf(e)),r=n*n,i=r*r*r;return[t*Yf(n)/(xg*(yg+3*mg*r+i*(7*vg+9*bg*r))),n*(yg+mg*r+i*(vg+bg*r))]}function _g(){return Vp(wg).scale(177.158)}function Ag(t,e){var n=Yf(e),r=Yf(t)*n;return[n*Zf(t)/r,Zf(e)/r]}function Eg(){return Vp(Ag).scale(144.049).clipAngle(60)}function Mg(){var t,e,n,r,i,o,a,u=1,c=0,s=0,f=1,l=1,h=0,d=null,p=1,g=1,y=Op({point:function(t,e){var n=b([t,e]);this.stream.point(n[0],n[1])}}),m=Td;function v(){return p=u*f,g=u*l,o=a=null,b}function b(n){var r=n[0]*p,i=n[1]*g;if(h){var o=i*t-r*e;r=r*t+i*e,i=o}return[r+c,i+s]}return b.invert=function(n){var r=n[0]-c,i=n[1]-s;if(h){var o=i*t+r*e;r=r*t-i*e,i=o}return[r/p,i/g]},b.stream=function(t){return o&&a===t?o:o=y(m(a=t))},b.postclip=function(t){return arguments.length?(m=t,d=n=r=i=null,v()):m},b.clipExtent=function(t){return arguments.length?(m=null==t?(d=n=r=i=null,Td):rd(d=+t[0][0],n=+t[0][1],r=+t[1][0],i=+t[1][1]),v()):null==d?null:[[d,n],[r,i]]},b.scale=function(t){return arguments.length?(u=+t,v()):u},b.translate=function(t){return arguments.length?(c=+t[0],s=+t[1],v()):[c,s]},b.angle=function(n){return arguments.length?(e=Zf(h=n%360*jf),t=Yf(h),v()):h*$f},b.reflectX=function(t){return arguments.length?(f=t?-1:1,v()):f<0},b.reflectY=function(t){return arguments.length?(l=t?-1:1,v()):l<0},b.fitExtent=function(t,e){return Lp(b,t,e)},b.fitSize=function(t,e){return Up(b,t,e)},b.fitWidth=function(t,e){return $p(b,t,e)},b.fitHeight=function(t,e){return jp(b,t,e)},b}function Bg(t,e){var n=e*e,r=n*n;return[t*(.8707-.131979*n+r*(r*(.003971*n-.001529*r)-.013791)),e*(1.007226+n*(.015085+r*(.028874*n-.044475-.005916*r)))]}function Tg(){return Vp(Bg).scale(175.295)}function kg(t,e){return[Yf(e)*Zf(t),Zf(e)]}function Fg(){return Vp(kg).scale(249.5).clipAngle(90+Rf)}function Sg(t,e){var n=Yf(e),r=1+Yf(t)*n;return[n*Zf(t)/r,Zf(e)/r]}function Ng(){return Vp(Sg).scale(250).clipAngle(142)}function Cg(t,e){return[Xf(tl((Df+e)/2)),-t]}function Ig(){var t=cg(Cg),e=t.center,n=t.rotate;return t.center=function(t){return arguments.length?e([-t[1],t[0]]):[(t=e())[1],-t[0]]},t.rotate=function(t){return arguments.length?n([t[0],t[1],t.length>2?t[2]+90:90]):[(t=n())[0],t[1],t[2]-90]},n([0,0,90]).scale(159.155)}function Rg(t,e){return t.parent===e.parent?1:2}function Og(t,e){return t+e.x}function Pg(t,e){return Math.max(t,e.y)}function Dg(){var t=Rg,e=1,n=1,r=!1;function i(i){var o,a=0;i.eachAfter((function(e){var n=e.children;n?(e.x=function(t){return t.reduce(Og,0)/t.length}(n),e.y=function(t){return 1+t.reduce(Pg,0)}(n)):(e.x=o?a+=t(e,o):0,e.y=0,o=e)}));var u=function(t){for(var e;e=t.children;)t=e[0];return t}(i),c=function(t){for(var e;e=t.children;)t=e[e.length-1];return t}(i),s=u.x-t(u,c)/2,f=c.x+t(c,u)/2;return i.eachAfter(r?function(t){t.x=(t.x-i.x)*e,t.y=(i.y-t.y)*n}:function(t){t.x=(t.x-s)/(f-s)*e,t.y=(1-(i.y?t.y/i.y:1))*n})}return i.separation=function(e){return arguments.length?(t=e,i):t},i.size=function(t){return arguments.length?(r=!1,e=+t[0],n=+t[1],i):r?null:[e,n]},i.nodeSize=function(t){return arguments.length?(r=!0,e=+t[0],n=+t[1],i):r?[e,n]:null},i}function Lg(t){var e=0,n=t.children,r=n&&n.length;if(r)for(;--r>=0;)e+=n[r].value;else e=1;t.value=e}function Ug(t,e){t instanceof Map?(t=[void 0,t],void 0===e&&(e=jg)):void 0===e&&(e=$g);for(var n,r,i,o,a,u=new qg(t),c=[u];n=c.pop();)if((i=e(n.data))&&(a=(i=Array.from(i)).length))for(n.children=i,o=a-1;o>=0;--o)c.push(r=i[o]=new qg(i[o])),r.parent=n,r.depth=n.depth+1;return u.eachBefore(Hg)}function $g(t){return t.children}function jg(t){return Array.isArray(t)?t[1]:null}function zg(t){void 0!==t.data.value&&(t.value=t.data.value),t.data=t.data.data}function Hg(t){var e=0;do{t.height=e}while((t=t.parent)&&t.height<++e)}function qg(t){this.data=t,this.depth=this.height=0,this.parent=null}function Yg(t){return null==t?null:Gg(t)}function Gg(t){if("function"!=typeof t)throw new Error;return t}function Vg(){return 0}function Wg(t){return function(){return t}}wg.invert=function(t,e){for(var n,r=e,i=r*r,o=i*i*i,a=0;a<12&&(o=(i=(r-=n=(r*(yg+mg*i+o*(vg+bg*i))-e)/(yg+3*mg*i+o*(7*vg+9*bg*i)))*r)*i*i,!(zf(n)<Of));++a);return[xg*t*(yg+3*mg*i+o*(7*vg+9*bg*i))/Yf(r),nl(Zf(r)/xg)]},Ag.invert=eg(Hf),Bg.invert=function(t,e){var n,r=e,i=25;do{var o=r*r,a=o*o;r-=n=(r*(1.007226+o*(.015085+a*(.028874*o-.044475-.005916*a)))-e)/(1.007226+o*(.045255+a*(.259866*o-.311325-.005916*11*a)))}while(zf(n)>Rf&&--i>0);return[t/(.8707+(o=r*r)*(o*(o*o*o*(.003971-.001529*o)-.013791)-.131979)),r]},kg.invert=eg(nl),Sg.invert=eg((function(t){return 2*Hf(t)})),Cg.invert=function(t,e){return[-e,2*Hf(Vf(t))-Df]},qg.prototype=Ug.prototype={constructor:qg,count:function(){return this.eachAfter(Lg)},each:function(t,e){let n=-1;for(const r of this)t.call(e,r,++n,this);return this},eachAfter:function(t,e){for(var n,r,i,o=this,a=[o],u=[],c=-1;o=a.pop();)if(u.push(o),n=o.children)for(r=0,i=n.length;r<i;++r)a.push(n[r]);for(;o=u.pop();)t.call(e,o,++c,this);return this},eachBefore:function(t,e){for(var n,r,i=this,o=[i],a=-1;i=o.pop();)if(t.call(e,i,++a,this),n=i.children)for(r=n.length-1;r>=0;--r)o.push(n[r]);return this},find:function(t,e){let n=-1;for(const r of this)if(t.call(e,r,++n,this))return r},sum:function(t){return this.eachAfter((function(e){for(var n=+t(e.data)||0,r=e.children,i=r&&r.length;--i>=0;)n+=r[i].value;e.value=n}))},sort:function(t){return this.eachBefore((function(e){e.children&&e.children.sort(t)}))},path:function(t){for(var e=this,n=function(t,e){if(t===e)return t;var n=t.ancestors(),r=e.ancestors(),i=null;for(t=n.pop(),e=r.pop();t===e;)i=t,t=n.pop(),e=r.pop();return i}(e,t),r=[e];e!==n;)e=e.parent,r.push(e);for(var i=r.length;t!==n;)r.splice(i,0,t),t=t.parent;return r},ancestors:function(){for(var t=this,e=[t];t=t.parent;)e.push(t);return e},descendants:function(){return Array.from(this)},leaves:function(){var t=[];return this.eachBefore((function(e){e.children||t.push(e)})),t},links:function(){var t=this,e=[];return t.each((function(n){n!==t&&e.push({source:n.parent,target:n})})),e},copy:function(){return Ug(this).eachBefore(zg)},[Symbol.iterator]:function*(){var t,e,n,r,i=this,o=[i];do{for(t=o.reverse(),o=[];i=t.pop();)if(yield i,e=i.children)for(n=0,r=e.length;n<r;++n)o.push(e[n])}while(o.length)}};const Xg=1664525,Jg=1013904223,Zg=4294967296;function Kg(){let t=1;return()=>(t=(Xg*t+Jg)%Zg)/Zg}function Qg(t){return ty(t,Kg())}function ty(t,e){for(var n,r,i=0,o=(t=function(t,e){let n,r,i=t.length;for(;i;)r=e()*i--|0,n=t[i],t[i]=t[r],t[r]=n;return t}(Array.from(t),e)).length,a=[];i<o;)n=t[i],r&&ry(r,n)?++i:(r=oy(a=ey(a,n)),i=0);return r}function ey(t,e){var n,r;if(iy(e,t))return[e];for(n=0;n<t.length;++n)if(ny(e,t[n])&&iy(ay(t[n],e),t))return[t[n],e];for(n=0;n<t.length-1;++n)for(r=n+1;r<t.length;++r)if(ny(ay(t[n],t[r]),e)&&ny(ay(t[n],e),t[r])&&ny(ay(t[r],e),t[n])&&iy(uy(t[n],t[r],e),t))return[t[n],t[r],e];throw new Error}function ny(t,e){var n=t.r-e.r,r=e.x-t.x,i=e.y-t.y;return n<0||n*n<r*r+i*i}function ry(t,e){var n=t.r-e.r+1e-9*Math.max(t.r,e.r,1),r=e.x-t.x,i=e.y-t.y;return n>0&&n*n>r*r+i*i}function iy(t,e){for(var n=0;n<e.length;++n)if(!ry(t,e[n]))return!1;return!0}function oy(t){switch(t.length){case 1:return function(t){return{x:t.x,y:t.y,r:t.r}}(t[0]);case 2:return ay(t[0],t[1]);case 3:return uy(t[0],t[1],t[2])}}function ay(t,e){var n=t.x,r=t.y,i=t.r,o=e.x,a=e.y,u=e.r,c=o-n,s=a-r,f=u-i,l=Math.sqrt(c*c+s*s);return{x:(n+o+c/l*f)/2,y:(r+a+s/l*f)/2,r:(l+i+u)/2}}function uy(t,e,n){var r=t.x,i=t.y,o=t.r,a=e.x,u=e.y,c=e.r,s=n.x,f=n.y,l=n.r,h=r-a,d=r-s,p=i-u,g=i-f,y=c-o,m=l-o,v=r*r+i*i-o*o,b=v-a*a-u*u+c*c,x=v-s*s-f*f+l*l,w=d*p-h*g,_=(p*x-g*b)/(2*w)-r,A=(g*y-p*m)/w,E=(d*b-h*x)/(2*w)-i,M=(h*m-d*y)/w,B=A*A+M*M-1,T=2*(o+_*A+E*M),k=_*_+E*E-o*o,F=-(Math.abs(B)>1e-6?(T+Math.sqrt(T*T-4*B*k))/(2*B):k/T);return{x:r+_+A*F,y:i+E+M*F,r:F}}function cy(t,e,n){var r,i,o,a,u=t.x-e.x,c=t.y-e.y,s=u*u+c*c;s?(i=e.r+n.r,i*=i,a=t.r+n.r,i>(a*=a)?(r=(s+a-i)/(2*s),o=Math.sqrt(Math.max(0,a/s-r*r)),n.x=t.x-r*u-o*c,n.y=t.y-r*c+o*u):(r=(s+i-a)/(2*s),o=Math.sqrt(Math.max(0,i/s-r*r)),n.x=e.x+r*u-o*c,n.y=e.y+r*c+o*u)):(n.x=e.x+n.r,n.y=e.y)}function sy(t,e){var n=t.r+e.r-1e-6,r=e.x-t.x,i=e.y-t.y;return n>0&&n*n>r*r+i*i}function fy(t){var e=t._,n=t.next._,r=e.r+n.r,i=(e.x*n.r+n.x*e.r)/r,o=(e.y*n.r+n.y*e.r)/r;return i*i+o*o}function ly(t){this._=t,this.next=null,this.previous=null}function hy(t,e){if(!(a=(n=t,t="object"==typeof n&&"length"in n?n:Array.from(n)).length))return 0;var n,r,i,o,a,u,c,s,f,l,h,d;if((r=t[0]).x=0,r.y=0,!(a>1))return r.r;if(i=t[1],r.x=-i.r,i.x=r.r,i.y=0,!(a>2))return r.r+i.r;cy(i,r,o=t[2]),r=new ly(r),i=new ly(i),o=new ly(o),r.next=o.previous=i,i.next=r.previous=o,o.next=i.previous=r;t:for(s=3;s<a;++s){cy(r._,i._,o=t[s]),o=new ly(o),f=i.next,l=r.previous,h=i._.r,d=r._.r;do{if(h<=d){if(sy(f._,o._)){i=f,r.next=i,i.previous=r,--s;continue t}h+=f._.r,f=f.next}else{if(sy(l._,o._)){(r=l).next=i,i.previous=r,--s;continue t}d+=l._.r,l=l.previous}}while(f!==l.next);for(o.previous=r,o.next=i,r.next=i.previous=i=o,u=fy(r);(o=o.next)!==i;)(c=fy(o))<u&&(r=o,u=c);i=r.next}for(r=[i._],o=i;(o=o.next)!==i;)r.push(o._);for(o=ty(r,e),s=0;s<a;++s)(r=t[s]).x-=o.x,r.y-=o.y;return o.r}function dy(t){return hy(t,Kg()),t}function py(t){return Math.sqrt(t.value)}function gy(){var t=null,e=1,n=1,r=Vg;function i(i){const o=Kg();return i.x=e/2,i.y=n/2,t?i.eachBefore(yy(t)).eachAfter(my(r,.5,o)).eachBefore(vy(1)):i.eachBefore(yy(py)).eachAfter(my(Vg,1,o)).eachAfter(my(r,i.r/Math.min(e,n),o)).eachBefore(vy(Math.min(e,n)/(2*i.r))),i}return i.radius=function(e){return arguments.length?(t=Yg(e),i):t},i.size=function(t){return arguments.length?(e=+t[0],n=+t[1],i):[e,n]},i.padding=function(t){return arguments.length?(r="function"==typeof t?t:Wg(+t),i):r},i}function yy(t){return function(e){e.children||(e.r=Math.max(0,+t(e)||0))}}function my(t,e,n){return function(r){if(i=r.children){var i,o,a,u=i.length,c=t(r)*e||0;if(c)for(o=0;o<u;++o)i[o].r+=c;if(a=hy(i,n),c)for(o=0;o<u;++o)i[o].r-=c;r.r=a+c}}}function vy(t){return function(e){var n=e.parent;e.r*=t,n&&(e.x=n.x+t*e.x,e.y=n.y+t*e.y)}}function by(t){t.x0=Math.round(t.x0),t.y0=Math.round(t.y0),t.x1=Math.round(t.x1),t.y1=Math.round(t.y1)}function xy(t,e,n,r,i){for(var o,a=t.children,u=-1,c=a.length,s=t.value&&(r-e)/t.value;++u<c;)(o=a[u]).y0=n,o.y1=i,o.x0=e,o.x1=e+=o.value*s}function wy(){var t=1,e=1,n=0,r=!1;function i(i){var o=i.height+1;return i.x0=i.y0=n,i.x1=t,i.y1=e/o,i.eachBefore(function(t,e){return function(r){r.children&&xy(r,r.x0,t*(r.depth+1)/e,r.x1,t*(r.depth+2)/e);var i=r.x0,o=r.y0,a=r.x1-n,u=r.y1-n;a<i&&(i=a=(i+a)/2),u<o&&(o=u=(o+u)/2),r.x0=i,r.y0=o,r.x1=a,r.y1=u}}(e,o)),r&&i.eachBefore(by),i}return i.round=function(t){return arguments.length?(r=!!t,i):r},i.size=function(n){return arguments.length?(t=+n[0],e=+n[1],i):[t,e]},i.padding=function(t){return arguments.length?(n=+t,i):n},i}var _y={depth:-1},Ay={},Ey={};function My(t){return t.id}function By(t){return t.parentId}function Ty(){var t,e=My,n=By;function r(r){var i,o,a,u,c,s,f,l,h=Array.from(r),d=e,p=n,g=new Map;if(null!=t){const e=h.map(((e,n)=>function(t){let e=(t=`${t}`).length;return Fy(t,e-1)&&!Fy(t,e-2)&&(t=t.slice(0,-1)),"/"===t[0]?t:`/${t}`}(t(e,n,r)))),n=e.map(ky),i=new Set(e).add("");for(const t of n)i.has(t)||(i.add(t),e.push(t),n.push(ky(t)),h.push(Ey));d=(t,n)=>e[n],p=(t,e)=>n[e]}for(a=0,i=h.length;a<i;++a)o=h[a],s=h[a]=new qg(o),null!=(f=d(o,a,r))&&(f+="")&&(l=s.id=f,g.set(l,g.has(l)?Ay:s)),null!=(f=p(o,a,r))&&(f+="")&&(s.parent=f);for(a=0;a<i;++a)if(f=(s=h[a]).parent){if(!(c=g.get(f)))throw new Error("missing: "+f);if(c===Ay)throw new Error("ambiguous: "+f);c.children?c.children.push(s):c.children=[s],s.parent=c}else{if(u)throw new Error("multiple roots");u=s}if(!u)throw new Error("no root");if(null!=t){for(;u.data===Ey&&1===u.children.length;)u=u.children[0],--i;for(let t=h.length-1;t>=0&&(s=h[t]).data===Ey;--t)s.data=null}if(u.parent=_y,u.eachBefore((function(t){t.depth=t.parent.depth+1,--i})).eachBefore(Hg),u.parent=null,i>0)throw new Error("cycle");return u}return r.id=function(t){return arguments.length?(e=Yg(t),r):e},r.parentId=function(t){return arguments.length?(n=Yg(t),r):n},r.path=function(e){return arguments.length?(t=Yg(e),r):t},r}function ky(t){let e=t.length;if(e<2)return"";for(;--e>1&&!Fy(t,e););return t.slice(0,e)}function Fy(t,e){if("/"===t[e]){let n=0;for(;e>0&&"\\"===t[--e];)++n;if(!(1&n))return!0}return!1}function Sy(t,e){return t.parent===e.parent?1:2}function Ny(t){var e=t.children;return e?e[0]:t.t}function Cy(t){var e=t.children;return e?e[e.length-1]:t.t}function Iy(t,e,n){var r=n/(e.i-t.i);e.c-=r,e.s+=n,t.c+=r,e.z+=n,e.m+=n}function Ry(t,e,n){return t.a.parent===e.parent?t.a:n}function Oy(t,e){this._=t,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=e}function Py(){var t=Sy,e=1,n=1,r=null;function i(i){var c=function(t){for(var e,n,r,i,o,a=new Oy(t,0),u=[a];e=u.pop();)if(r=e._.children)for(e.children=new Array(o=r.length),i=o-1;i>=0;--i)u.push(n=e.children[i]=new Oy(r[i],i)),n.parent=e;return(a.parent=new Oy(null,0)).children=[a],a}(i);if(c.eachAfter(o),c.parent.m=-c.z,c.eachBefore(a),r)i.eachBefore(u);else{var s=i,f=i,l=i;i.eachBefore((function(t){t.x<s.x&&(s=t),t.x>f.x&&(f=t),t.depth>l.depth&&(l=t)}));var h=s===f?1:t(s,f)/2,d=h-s.x,p=e/(f.x+h+d),g=n/(l.depth||1);i.eachBefore((function(t){t.x=(t.x+d)*p,t.y=t.depth*g}))}return i}function o(e){var n=e.children,r=e.parent.children,i=e.i?r[e.i-1]:null;if(n){!function(t){for(var e,n=0,r=0,i=t.children,o=i.length;--o>=0;)(e=i[o]).z+=n,e.m+=n,n+=e.s+(r+=e.c)}(e);var o=(n[0].z+n[n.length-1].z)/2;i?(e.z=i.z+t(e._,i._),e.m=e.z-o):e.z=o}else i&&(e.z=i.z+t(e._,i._));e.parent.A=function(e,n,r){if(n){for(var i,o=e,a=e,u=n,c=o.parent.children[0],s=o.m,f=a.m,l=u.m,h=c.m;u=Cy(u),o=Ny(o),u&&o;)c=Ny(c),(a=Cy(a)).a=e,(i=u.z+l-o.z-s+t(u._,o._))>0&&(Iy(Ry(u,e,r),e,i),s+=i,f+=i),l+=u.m,s+=o.m,h+=c.m,f+=a.m;u&&!Cy(a)&&(a.t=u,a.m+=l-f),o&&!Ny(c)&&(c.t=o,c.m+=s-h,r=e)}return r}(e,i,e.parent.A||r[0])}function a(t){t._.x=t.z+t.parent.m,t.m+=t.parent.m}function u(t){t.x*=e,t.y=t.depth*n}return i.separation=function(e){return arguments.length?(t=e,i):t},i.size=function(t){return arguments.length?(r=!1,e=+t[0],n=+t[1],i):r?null:[e,n]},i.nodeSize=function(t){return arguments.length?(r=!0,e=+t[0],n=+t[1],i):r?[e,n]:null},i}function Dy(t,e,n,r,i){for(var o,a=t.children,u=-1,c=a.length,s=t.value&&(i-n)/t.value;++u<c;)(o=a[u]).x0=e,o.x1=r,o.y0=n,o.y1=n+=o.value*s}Oy.prototype=Object.create(qg.prototype);var Ly=(1+Math.sqrt(5))/2;function Uy(t,e,n,r,i,o){for(var a,u,c,s,f,l,h,d,p,g,y,m=[],v=e.children,b=0,x=0,w=v.length,_=e.value;b<w;){c=i-n,s=o-r;do{f=v[x++].value}while(!f&&x<w);for(l=h=f,y=f*f*(g=Math.max(s/c,c/s)/(_*t)),p=Math.max(h/y,y/l);x<w;++x){if(f+=u=v[x].value,u<l&&(l=u),u>h&&(h=u),y=f*f*g,(d=Math.max(h/y,y/l))>p){f-=u;break}p=d}m.push(a={value:f,dice:c<s,children:v.slice(b,x)}),a.dice?xy(a,n,r,i,_?r+=s*f/_:o):Dy(a,n,r,_?n+=c*f/_:i,o),_-=f,b=x}return m}const $y=function t(e){function n(t,n,r,i,o){Uy(e,t,n,r,i,o)}return n.ratio=function(e){return t((e=+e)>1?e:1)},n}(Ly);function jy(){var t=$y,e=!1,n=1,r=1,i=[0],o=Vg,a=Vg,u=Vg,c=Vg,s=Vg;function f(t){return t.x0=t.y0=0,t.x1=n,t.y1=r,t.eachBefore(l),i=[0],e&&t.eachBefore(by),t}function l(e){var n=i[e.depth],r=e.x0+n,f=e.y0+n,l=e.x1-n,h=e.y1-n;l<r&&(r=l=(r+l)/2),h<f&&(f=h=(f+h)/2),e.x0=r,e.y0=f,e.x1=l,e.y1=h,e.children&&(n=i[e.depth+1]=o(e)/2,r+=s(e)-n,f+=a(e)-n,(l-=u(e)-n)<r&&(r=l=(r+l)/2),(h-=c(e)-n)<f&&(f=h=(f+h)/2),t(e,r,f,l,h))}return f.round=function(t){return arguments.length?(e=!!t,f):e},f.size=function(t){return arguments.length?(n=+t[0],r=+t[1],f):[n,r]},f.tile=function(e){return arguments.length?(t=Gg(e),f):t},f.padding=function(t){return arguments.length?f.paddingInner(t).paddingOuter(t):f.paddingInner()},f.paddingInner=function(t){return arguments.length?(o="function"==typeof t?t:Wg(+t),f):o},f.paddingOuter=function(t){return arguments.length?f.paddingTop(t).paddingRight(t).paddingBottom(t).paddingLeft(t):f.paddingTop()},f.paddingTop=function(t){return arguments.length?(a="function"==typeof t?t:Wg(+t),f):a},f.paddingRight=function(t){return arguments.length?(u="function"==typeof t?t:Wg(+t),f):u},f.paddingBottom=function(t){return arguments.length?(c="function"==typeof t?t:Wg(+t),f):c},f.paddingLeft=function(t){return arguments.length?(s="function"==typeof t?t:Wg(+t),f):s},f}function zy(t,e,n,r,i){var o,a,u=t.children,c=u.length,s=new Array(c+1);for(s[0]=a=o=0;o<c;++o)s[o+1]=a+=u[o].value;!function t(e,n,r,i,o,a,c){if(e>=n-1){var f=u[e];return f.x0=i,f.y0=o,f.x1=a,void(f.y1=c)}for(var l=s[e],h=r/2+l,d=e+1,p=n-1;d<p;){var g=d+p>>>1;s[g]<h?d=g+1:p=g}h-s[d-1]<s[d]-h&&e+1<d&&--d;var y=s[d]-l,m=r-y;if(a-i>c-o){var v=r?(i*m+a*y)/r:a;t(e,d,y,i,o,v,c),t(d,n,m,v,o,a,c)}else{var b=r?(o*m+c*y)/r:c;t(e,d,y,i,o,a,b),t(d,n,m,i,b,a,c)}}(0,c,t.value,e,n,r,i)}function Hy(t,e,n,r,i){(1&t.depth?Dy:xy)(t,e,n,r,i)}const qy=function t(e){function n(t,n,r,i,o){if((a=t._squarify)&&a.ratio===e)for(var a,u,c,s,f,l=-1,h=a.length,d=t.value;++l<h;){for(c=(u=a[l]).children,s=u.value=0,f=c.length;s<f;++s)u.value+=c[s].value;u.dice?xy(u,n,r,i,d?r+=(o-r)*u.value/d:o):Dy(u,n,r,d?n+=(i-n)*u.value/d:i,o),d-=u.value}else t._squarify=a=Uy(e,t,n,r,i,o),a.ratio=e}return n.ratio=function(e){return t((e=+e)>1?e:1)},n}(Ly);function Yy(t){var e=t.length;return function(n){return t[Math.max(0,Math.min(e-1,Math.floor(n*e)))]}}function Gy(t,e){var n=qr(+t,+e);return function(t){var e=n(t);return e-360*Math.floor(e/360)}}function Vy(t,e){return t=+t,e=+e,function(n){return Math.round(t*(1-n)+e*n)}}function Wy(t){return((t=Math.exp(t))+1/t)/2}const Xy=function t(e,n,r){function i(t,i){var o,a,u=t[0],c=t[1],s=t[2],f=i[0],l=i[1],h=i[2],d=f-u,p=l-c,g=d*d+p*p;if(g<1e-12)a=Math.log(h/s)/e,o=function(t){return[u+t*d,c+t*p,s*Math.exp(e*t*a)]};else{var y=Math.sqrt(g),m=(h*h-s*s+r*g)/(2*s*n*y),v=(h*h-s*s-r*g)/(2*h*n*y),b=Math.log(Math.sqrt(m*m+1)-m),x=Math.log(Math.sqrt(v*v+1)-v);a=(x-b)/e,o=function(t){var r,i=t*a,o=Wy(b),f=s/(n*y)*(o*(r=e*i+b,((r=Math.exp(2*r))-1)/(r+1))-function(t){return((t=Math.exp(t))-1/t)/2}(b));return[u+f*d,c+f*p,s*o/Wy(e*i+b)]}}return o.duration=1e3*a*e/Math.SQRT2,o}return i.rho=function(e){var n=Math.max(.001,+e),r=n*n;return t(n,r,r*r)},i}(Math.SQRT2,2,4);function Jy(t){return function(e,n){var r=t((e=Rr(e)).h,(n=Rr(n)).h),i=Yr(e.s,n.s),o=Yr(e.l,n.l),a=Yr(e.opacity,n.opacity);return function(t){return e.h=r(t),e.s=i(t),e.l=o(t),e.opacity=a(t),e+""}}}const Zy=Jy(qr);var Ky=Jy(Yr);function Qy(t,e){var n=Yr((t=Ha(t)).l,(e=Ha(e)).l),r=Yr(t.a,e.a),i=Yr(t.b,e.b),o=Yr(t.opacity,e.opacity);return function(e){return t.l=n(e),t.a=r(e),t.b=i(e),t.opacity=o(e),t+""}}function tm(t){return function(e,n){var r=t((e=Za(e)).h,(n=Za(n)).h),i=Yr(e.c,n.c),o=Yr(e.l,n.l),a=Yr(e.opacity,n.opacity);return function(t){return e.h=r(t),e.c=i(t),e.l=o(t),e.opacity=a(t),e+""}}}const em=tm(qr);var nm=tm(Yr);function rm(t){return function e(n){function r(e,r){var i=t((e=cu(e)).h,(r=cu(r)).h),o=Yr(e.s,r.s),a=Yr(e.l,r.l),u=Yr(e.opacity,r.opacity);return function(t){return e.h=i(t),e.s=o(t),e.l=a(Math.pow(t,n)),e.opacity=u(t),e+""}}return n=+n,r.gamma=e,r}(1)}const im=rm(qr);var om=rm(Yr);function am(t,e){void 0===e&&(e=t,t=ai);for(var n=0,r=e.length-1,i=e[0],o=new Array(r<0?0:r);n<r;)o[n]=t(i,i=e[++n]);return function(t){var e=Math.max(0,Math.min(r-1,Math.floor(t*=r)));return o[e](t-e)}}function um(t,e){for(var n=new Array(e),r=0;r<e;++r)n[r]=t(r/(e-1));return n}function cm(t){for(var e,n=-1,r=t.length,i=t[r-1],o=0;++n<r;)e=i,i=t[n],o+=e[1]*i[0]-e[0]*i[1];return o/2}function sm(t){for(var e,n,r=-1,i=t.length,o=0,a=0,u=t[i-1],c=0;++r<i;)e=u,u=t[r],c+=n=e[0]*u[1]-u[0]*e[1],o+=(e[0]+u[0])*n,a+=(e[1]+u[1])*n;return[o/(c*=3),a/c]}function fm(t,e,n){return(e[0]-t[0])*(n[1]-t[1])-(e[1]-t[1])*(n[0]-t[0])}function lm(t,e){return t[0]-e[0]||t[1]-e[1]}function hm(t){const e=t.length,n=[0,1];let r,i=2;for(r=2;r<e;++r){for(;i>1&&fm(t[n[i-2]],t[n[i-1]],t[r])<=0;)--i;n[i++]=r}return n.slice(0,i)}function dm(t){if((n=t.length)<3)return null;var e,n,r=new Array(n),i=new Array(n);for(e=0;e<n;++e)r[e]=[+t[e][0],+t[e][1],e];for(r.sort(lm),e=0;e<n;++e)i[e]=[r[e][0],-r[e][1]];var o=hm(r),a=hm(i),u=a[0]===o[0],c=a[a.length-1]===o[o.length-1],s=[];for(e=o.length-1;e>=0;--e)s.push(t[r[o[e]][2]]);for(e=+u;e<a.length-c;++e)s.push(t[r[a[e]][2]]);return s}function pm(t,e){for(var n,r,i=t.length,o=t[i-1],a=e[0],u=e[1],c=o[0],s=o[1],f=!1,l=0;l<i;++l)n=(o=t[l])[0],(r=o[1])>u!=s>u&&a<(c-n)*(u-r)/(s-r)+n&&(f=!f),c=n,s=r;return f}function gm(t){for(var e,n,r=-1,i=t.length,o=t[i-1],a=o[0],u=o[1],c=0;++r<i;)e=a,n=u,e-=a=(o=t[r])[0],n-=u=o[1],c+=Math.hypot(e,n);return c}const ym=Math.random,mm=function t(e){function n(t,n){return t=null==t?0:+t,n=null==n?1:+n,1===arguments.length?(n=t,t=0):n-=t,function(){return e()*n+t}}return n.source=t,n}(ym),vm=function t(e){function n(t,n){return arguments.length<2&&(n=t,t=0),t=Math.floor(t),n=Math.floor(n)-t,function(){return Math.floor(e()*n+t)}}return n.source=t,n}(ym),bm=function t(e){function n(t,n){var r,i;return t=null==t?0:+t,n=null==n?1:+n,function(){var o;if(null!=r)o=r,r=null;else do{r=2*e()-1,o=2*e()-1,i=r*r+o*o}while(!i||i>1);return t+n*o*Math.sqrt(-2*Math.log(i)/i)}}return n.source=t,n}(ym),xm=function t(e){var n=bm.source(e);function r(){var t=n.apply(this,arguments);return function(){return Math.exp(t())}}return r.source=t,r}(ym),wm=function t(e){function n(t){return(t=+t)<=0?()=>0:function(){for(var n=0,r=t;r>1;--r)n+=e();return n+r*e()}}return n.source=t,n}(ym),_m=function t(e){var n=wm.source(e);function r(t){if(0==(t=+t))return e;var r=n(t);return function(){return r()/t}}return r.source=t,r}(ym),Am=function t(e){function n(t){return function(){return-Math.log1p(-e())/t}}return n.source=t,n}(ym),Em=function t(e){function n(t){if((t=+t)<0)throw new RangeError("invalid alpha");return t=1/-t,function(){return Math.pow(1-e(),t)}}return n.source=t,n}(ym),Mm=function t(e){function n(t){if((t=+t)<0||t>1)throw new RangeError("invalid p");return function(){return Math.floor(e()+t)}}return n.source=t,n}(ym),Bm=function t(e){function n(t){if((t=+t)<0||t>1)throw new RangeError("invalid p");return 0===t?()=>1/0:1===t?()=>1:(t=Math.log1p(-t),function(){return 1+Math.floor(Math.log1p(-e())/t)})}return n.source=t,n}(ym),Tm=function t(e){var n=bm.source(e)();function r(t,r){if((t=+t)<0)throw new RangeError("invalid k");if(0===t)return()=>0;if(r=null==r?1:+r,1===t)return()=>-Math.log1p(-e())*r;var i=(t<1?t+1:t)-1/3,o=1/(3*Math.sqrt(i)),a=t<1?()=>Math.pow(e(),1/t):()=>1;return function(){do{do{var t=n(),u=1+o*t}while(u<=0);u*=u*u;var c=1-e()}while(c>=1-.0331*t*t*t*t&&Math.log(c)>=.5*t*t+i*(1-u+Math.log(u)));return i*u*a()*r}}return r.source=t,r}(ym),km=function t(e){var n=Tm.source(e);function r(t,e){var r=n(t),i=n(e);return function(){var t=r();return 0===t?0:t/(t+i())}}return r.source=t,r}(ym),Fm=function t(e){var n=Bm.source(e),r=km.source(e);function i(t,e){return t=+t,(e=+e)>=1?()=>t:e<=0?()=>0:function(){for(var i=0,o=t,a=e;o*a>16&&o*(1-a)>16;){var u=Math.floor((o+1)*a),c=r(u,o-u+1)();c<=a?(i+=u,o-=u,a=(a-c)/(1-c)):(o=u-1,a/=c)}for(var s=a<.5,f=n(s?a:1-a),l=f(),h=0;l<=o;++h)l+=f();return i+(s?h:o-h)}}return i.source=t,i}(ym),Sm=function t(e){function n(t,n,r){var i;return 0==(t=+t)?i=t=>-Math.log(t):(t=1/t,i=e=>Math.pow(e,t)),n=null==n?0:+n,r=null==r?1:+r,function(){return n+r*i(-Math.log1p(-e()))}}return n.source=t,n}(ym),Nm=function t(e){function n(t,n){return t=null==t?0:+t,n=null==n?1:+n,function(){return t+n*Math.tan(Math.PI*e())}}return n.source=t,n}(ym),Cm=function t(e){function n(t,n){return t=null==t?0:+t,n=null==n?1:+n,function(){var r=e();return t+n*Math.log(r/(1-r))}}return n.source=t,n}(ym),Im=function t(e){var n=Tm.source(e),r=Fm.source(e);function i(t){return function(){for(var i=0,o=t;o>16;){var a=Math.floor(.875*o),u=n(a)();if(u>o)return i+r(a-1,o/u)();i+=a,o-=u}for(var c=-Math.log1p(-e()),s=0;c<=o;++s)c-=Math.log1p(-e());return i+s}}return i.source=t,i}(ym),Rm=1664525,Om=1013904223,Pm=1/4294967296;function Dm(t=Math.random()){let e=0|(0<=t&&t<1?t/Pm:Math.abs(t));return()=>(e=Rm*e+Om|0,Pm*(e>>>0))}function Lm(t,e){switch(arguments.length){case 0:break;case 1:this.range(t);break;default:this.range(e).domain(t)}return this}function Um(t,e){switch(arguments.length){case 0:break;case 1:"function"==typeof t?this.interpolator(t):this.range(t);break;default:this.domain(t),"function"==typeof e?this.interpolator(e):this.range(e)}return this}const $m=Symbol("implicit");function jm(){var t=new j,e=[],n=[],r=$m;function i(i){let o=t.get(i);if(void 0===o){if(r!==$m)return r;t.set(i,o=e.push(i)-1)}return n[o%n.length]}return i.domain=function(n){if(!arguments.length)return e.slice();e=[],t=new j;for(const r of n)t.has(r)||t.set(r,e.push(r)-1);return i},i.range=function(t){return arguments.length?(n=Array.from(t),i):n.slice()},i.unknown=function(t){return arguments.length?(r=t,i):r},i.copy=function(){return jm(e,n).unknown(r)},Lm.apply(i,arguments),i}function zm(){var t,e,n=jm().unknown(void 0),r=n.domain,i=n.range,o=0,a=1,u=!1,c=0,s=0,f=.5;function l(){var n=r().length,l=a<o,h=l?a:o,d=l?o:a;t=(d-h)/Math.max(1,n-c+2*s),u&&(t=Math.floor(t)),h+=(d-h-t*(n-c))*f,e=t*(1-c),u&&(h=Math.round(h),e=Math.round(e));var p=zt(n).map((function(e){return h+t*e}));return i(l?p.reverse():p)}return delete n.unknown,n.domain=function(t){return arguments.length?(r(t),l()):r()},n.range=function(t){return arguments.length?([o,a]=t,o=+o,a=+a,l()):[o,a]},n.rangeRound=function(t){return[o,a]=t,o=+o,a=+a,u=!0,l()},n.bandwidth=function(){return e},n.step=function(){return t},n.round=function(t){return arguments.length?(u=!!t,l()):u},n.padding=function(t){return arguments.length?(c=Math.min(1,s=+t),l()):c},n.paddingInner=function(t){return arguments.length?(c=Math.min(1,t),l()):c},n.paddingOuter=function(t){return arguments.length?(s=+t,l()):s},n.align=function(t){return arguments.length?(f=Math.max(0,Math.min(1,t)),l()):f},n.copy=function(){return zm(r(),[o,a]).round(u).paddingInner(c).paddingOuter(s).align(f)},Lm.apply(l(),arguments)}function Hm(t){var e=t.copy;return t.padding=t.paddingOuter,delete t.paddingInner,delete t.paddingOuter,t.copy=function(){return Hm(e())},t}function qm(){return Hm(zm.apply(null,arguments).paddingInner(1))}function Ym(t){return+t}var Gm=[0,1];function Vm(t){return t}function Wm(t,e){return(e-=t=+t)?function(n){return(n-t)/e}:(n=isNaN(e)?NaN:.5,function(){return n});var n}function Xm(t,e,n){var r=t[0],i=t[1],o=e[0],a=e[1];return i<r?(r=Wm(i,r),o=n(a,o)):(r=Wm(r,i),o=n(o,a)),function(t){return o(r(t))}}function Jm(t,e,n){var r=Math.min(t.length,e.length)-1,i=new Array(r),o=new Array(r),a=-1;for(t[r]<t[0]&&(t=t.slice().reverse(),e=e.slice().reverse());++a<r;)i[a]=Wm(t[a],t[a+1]),o[a]=n(e[a],e[a+1]);return function(e){var n=w(t,e,1,r)-1;return o[n](i[n](e))}}function Zm(t,e){return e.domain(t.domain()).range(t.range()).interpolate(t.interpolate()).clamp(t.clamp()).unknown(t.unknown())}function Km(){var t,e,n,r,i,o,a=Gm,u=Gm,c=ai,s=Vm;function f(){var t=Math.min(a.length,u.length);return s!==Vm&&(s=function(t,e){var n;return t>e&&(n=t,t=e,e=n),function(n){return Math.max(t,Math.min(e,n))}}(a[0],a[t-1])),r=t>2?Jm:Xm,i=o=null,l}function l(e){return null==e||isNaN(e=+e)?n:(i||(i=r(a.map(t),u,c)))(t(s(e)))}return l.invert=function(n){return s(e((o||(o=r(u,a.map(t),ei)))(n)))},l.domain=function(t){return arguments.length?(a=Array.from(t,Ym),f()):a.slice()},l.range=function(t){return arguments.length?(u=Array.from(t),f()):u.slice()},l.rangeRound=function(t){return u=Array.from(t),c=Vy,f()},l.clamp=function(t){return arguments.length?(s=!!t||Vm,f()):s!==Vm},l.interpolate=function(t){return arguments.length?(c=t,f()):c},l.unknown=function(t){return arguments.length?(n=t,l):n},function(n,r){return t=n,e=r,f()}}function Qm(){return Km()(Vm,Vm)}function tv(t,e,n,r){var i,o=bt(t,e,n);switch((r=bf(null==r?",f":r)).type){case"s":var a=Math.max(Math.abs(t),Math.abs(e));return null!=r.precision||isNaN(i=Cf(o,a))||(r.precision=i),Bf(r,a);case"":case"e":case"g":case"p":case"r":null!=r.precision||isNaN(i=If(o,Math.max(Math.abs(t),Math.abs(e))))||(r.precision=i-("e"===r.type));break;case"f":case"%":null!=r.precision||isNaN(i=Nf(o))||(r.precision=i-2*("%"===r.type))}return Mf(r)}function ev(t){var e=t.domain;return t.ticks=function(t){var n=e();return mt(n[0],n[n.length-1],null==t?10:t)},t.tickFormat=function(t,n){var r=e();return tv(r[0],r[r.length-1],null==t?10:t,n)},t.nice=function(n){null==n&&(n=10);var r,i,o=e(),a=0,u=o.length-1,c=o[a],s=o[u],f=10;for(s<c&&(i=c,c=s,s=i,i=a,a=u,u=i);f-- >0;){if((i=vt(c,s,n))===r)return o[a]=c,o[u]=s,e(o);if(i>0)c=Math.floor(c/i)*i,s=Math.ceil(s/i)*i;else{if(!(i<0))break;c=Math.ceil(c*i)/i,s=Math.floor(s*i)/i}r=i}return t},t}function nv(){var t=Qm();return t.copy=function(){return Zm(t,nv())},Lm.apply(t,arguments),ev(t)}function rv(t){var e;function n(t){return null==t||isNaN(t=+t)?e:t}return n.invert=n,n.domain=n.range=function(e){return arguments.length?(t=Array.from(e,Ym),n):t.slice()},n.unknown=function(t){return arguments.length?(e=t,n):e},n.copy=function(){return rv(t).unknown(e)},t=arguments.length?Array.from(t,Ym):[0,1],ev(n)}function iv(t,e){var n,r=0,i=(t=t.slice()).length-1,o=t[r],a=t[i];return a<o&&(n=r,r=i,i=n,n=o,o=a,a=n),t[r]=e.floor(o),t[i]=e.ceil(a),t}function ov(t){return Math.log(t)}function av(t){return Math.exp(t)}function uv(t){return-Math.log(-t)}function cv(t){return-Math.exp(-t)}function sv(t){return isFinite(t)?+("1e"+t):t<0?0:t}function fv(t){return(e,n)=>-t(-e,n)}function lv(t){const e=t(ov,av),n=e.domain;let r,i,o=10;function a(){return r=function(t){return t===Math.E?Math.log:10===t&&Math.log10||2===t&&Math.log2||(t=Math.log(t),e=>Math.log(e)/t)}(o),i=function(t){return 10===t?sv:t===Math.E?Math.exp:e=>Math.pow(t,e)}(o),n()[0]<0?(r=fv(r),i=fv(i),t(uv,cv)):t(ov,av),e}return e.base=function(t){return arguments.length?(o=+t,a()):o},e.domain=function(t){return arguments.length?(n(t),a()):n()},e.ticks=t=>{const e=n();let a=e[0],u=e[e.length-1];const c=u<a;c&&([a,u]=[u,a]);let s,f,l=r(a),h=r(u);const d=null==t?10:+t;let p=[];if(!(o%1)&&h-l<d){if(l=Math.floor(l),h=Math.ceil(h),a>0){for(;l<=h;++l)for(s=1;s<o;++s)if(f=l<0?s/i(-l):s*i(l),!(f<a)){if(f>u)break;p.push(f)}}else for(;l<=h;++l)for(s=o-1;s>=1;--s)if(f=l>0?s/i(-l):s*i(l),!(f<a)){if(f>u)break;p.push(f)}2*p.length<d&&(p=mt(a,u,d))}else p=mt(l,h,Math.min(h-l,d)).map(i);return c?p.reverse():p},e.tickFormat=(t,n)=>{if(null==t&&(t=10),null==n&&(n=10===o?"s":","),"function"!=typeof n&&(o%1||null!=(n=bf(n)).precision||(n.trim=!0),n=Mf(n)),t===1/0)return n;const a=Math.max(1,o*t/e.ticks().length);return t=>{let e=t/i(Math.round(r(t)));return e*o<o-.5&&(e*=o),e<=a?n(t):""}},e.nice=()=>n(iv(n(),{floor:t=>i(Math.floor(r(t))),ceil:t=>i(Math.ceil(r(t)))})),e}function hv(){const t=lv(Km()).domain([1,10]);return t.copy=()=>Zm(t,hv()).base(t.base()),Lm.apply(t,arguments),t}function dv(t){return function(e){return Math.sign(e)*Math.log1p(Math.abs(e/t))}}function pv(t){return function(e){return Math.sign(e)*Math.expm1(Math.abs(e))*t}}function gv(t){var e=1,n=t(dv(e),pv(e));return n.constant=function(n){return arguments.length?t(dv(e=+n),pv(e)):e},ev(n)}function yv(){var t=gv(Km());return t.copy=function(){return Zm(t,yv()).constant(t.constant())},Lm.apply(t,arguments)}function mv(t){return function(e){return e<0?-Math.pow(-e,t):Math.pow(e,t)}}function vv(t){return t<0?-Math.sqrt(-t):Math.sqrt(t)}function bv(t){return t<0?-t*t:t*t}function xv(t){var e=t(Vm,Vm),n=1;return e.exponent=function(e){return arguments.length?1==(n=+e)?t(Vm,Vm):.5===n?t(vv,bv):t(mv(n),mv(1/n)):n},ev(e)}function wv(){var t=xv(Km());return t.copy=function(){return Zm(t,wv()).exponent(t.exponent())},Lm.apply(t,arguments),t}function _v(){return wv.apply(null,arguments).exponent(.5)}function Av(t){return Math.sign(t)*t*t}function Ev(){var t,e=Qm(),n=[0,1],r=!1;function i(n){var i=function(t){return Math.sign(t)*Math.sqrt(Math.abs(t))}(e(n));return isNaN(i)?t:r?Math.round(i):i}return i.invert=function(t){return e.invert(Av(t))},i.domain=function(t){return arguments.length?(e.domain(t),i):e.domain()},i.range=function(t){return arguments.length?(e.range((n=Array.from(t,Ym)).map(Av)),i):n.slice()},i.rangeRound=function(t){return i.range(t).round(!0)},i.round=function(t){return arguments.length?(r=!!t,i):r},i.clamp=function(t){return arguments.length?(e.clamp(t),i):e.clamp()},i.unknown=function(e){return arguments.length?(t=e,i):t},i.copy=function(){return Ev(e.domain(),n).round(r).clamp(e.clamp()).unknown(t)},Lm.apply(i,arguments),ev(i)}function Mv(){var t,e=[],n=[],r=[];function i(){var t=0,i=Math.max(1,n.length);for(r=new Array(i-1);++t<i;)r[t-1]=Nt(e,t/i);return o}function o(e){return null==e||isNaN(e=+e)?t:n[w(r,e)]}return o.invertExtent=function(t){var i=n.indexOf(t);return i<0?[NaN,NaN]:[i>0?r[i-1]:e[0],i<r.length?r[i]:e[e.length-1]]},o.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(h),i()},o.range=function(t){return arguments.length?(n=Array.from(t),i()):n.slice()},o.unknown=function(e){return arguments.length?(t=e,o):t},o.quantiles=function(){return r.slice()},o.copy=function(){return Mv().domain(e).range(n).unknown(t)},Lm.apply(o,arguments)}function Bv(){var t,e=0,n=1,r=1,i=[.5],o=[0,1];function a(e){return null!=e&&e<=e?o[w(i,e,0,r)]:t}function u(){var t=-1;for(i=new Array(r);++t<r;)i[t]=((t+1)*n-(t-r)*e)/(r+1);return a}return a.domain=function(t){return arguments.length?([e,n]=t,e=+e,n=+n,u()):[e,n]},a.range=function(t){return arguments.length?(r=(o=Array.from(t)).length-1,u()):o.slice()},a.invertExtent=function(t){var a=o.indexOf(t);return a<0?[NaN,NaN]:a<1?[e,i[0]]:a>=r?[i[r-1],n]:[i[a-1],i[a]]},a.unknown=function(e){return arguments.length?(t=e,a):a},a.thresholds=function(){return i.slice()},a.copy=function(){return Bv().domain([e,n]).range(o).unknown(t)},Lm.apply(ev(a),arguments)}function Tv(){var t,e=[.5],n=[0,1],r=1;function i(i){return null!=i&&i<=i?n[w(e,i,0,r)]:t}return i.domain=function(t){return arguments.length?(e=Array.from(t),r=Math.min(e.length,n.length-1),i):e.slice()},i.range=function(t){return arguments.length?(n=Array.from(t),r=Math.min(e.length,n.length-1),i):n.slice()},i.invertExtent=function(t){var r=n.indexOf(t);return[e[r-1],e[r]]},i.unknown=function(e){return arguments.length?(t=e,i):t},i.copy=function(){return Tv().domain(e).range(n).unknown(t)},Lm.apply(i,arguments)}const kv=1e3,Fv=6e4,Sv=36e5,Nv=864e5,Cv=6048e5,Iv=31536e6,Rv=new Date,Ov=new Date;function Pv(t,e,n,r){function i(e){return t(e=0===arguments.length?new Date:new Date(+e)),e}return i.floor=e=>(t(e=new Date(+e)),e),i.ceil=n=>(t(n=new Date(n-1)),e(n,1),t(n),n),i.round=t=>{const e=i(t),n=i.ceil(t);return t-e<n-t?e:n},i.offset=(t,n)=>(e(t=new Date(+t),null==n?1:Math.floor(n)),t),i.range=(n,r,o)=>{const a=[];if(n=i.ceil(n),o=null==o?1:Math.floor(o),!(n<r&&o>0))return a;let u;do{a.push(u=new Date(+n)),e(n,o),t(n)}while(u<n&&n<r);return a},i.filter=n=>Pv((e=>{if(e>=e)for(;t(e),!n(e);)e.setTime(e-1)}),((t,r)=>{if(t>=t)if(r<0)for(;++r<=0;)for(;e(t,-1),!n(t););else for(;--r>=0;)for(;e(t,1),!n(t););})),n&&(i.count=(e,r)=>(Rv.setTime(+e),Ov.setTime(+r),t(Rv),t(Ov),Math.floor(n(Rv,Ov))),i.every=t=>(t=Math.floor(t),isFinite(t)&&t>0?t>1?i.filter(r?e=>r(e)%t==0:e=>i.count(0,e)%t==0):i:null)),i}const Dv=Pv((()=>{}),((t,e)=>{t.setTime(+t+e)}),((t,e)=>e-t));Dv.every=t=>(t=Math.floor(t),isFinite(t)&&t>0?t>1?Pv((e=>{e.setTime(Math.floor(e/t)*t)}),((e,n)=>{e.setTime(+e+n*t)}),((e,n)=>(n-e)/t)):Dv:null);const Lv=Dv.range,Uv=Pv((t=>{t.setTime(t-t.getMilliseconds())}),((t,e)=>{t.setTime(+t+e*kv)}),((t,e)=>(e-t)/kv),(t=>t.getUTCSeconds())),$v=Uv.range,jv=Pv((t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*kv)}),((t,e)=>{t.setTime(+t+e*Fv)}),((t,e)=>(e-t)/Fv),(t=>t.getMinutes())),zv=jv.range,Hv=Pv((t=>{t.setUTCSeconds(0,0)}),((t,e)=>{t.setTime(+t+e*Fv)}),((t,e)=>(e-t)/Fv),(t=>t.getUTCMinutes())),qv=Hv.range,Yv=Pv((t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*kv-t.getMinutes()*Fv)}),((t,e)=>{t.setTime(+t+e*Sv)}),((t,e)=>(e-t)/Sv),(t=>t.getHours())),Gv=Yv.range,Vv=Pv((t=>{t.setUTCMinutes(0,0,0)}),((t,e)=>{t.setTime(+t+e*Sv)}),((t,e)=>(e-t)/Sv),(t=>t.getUTCHours())),Wv=Vv.range,Xv=Pv((t=>t.setHours(0,0,0,0)),((t,e)=>t.setDate(t.getDate()+e)),((t,e)=>(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*Fv)/Nv),(t=>t.getDate()-1)),Jv=Xv.range,Zv=Pv((t=>{t.setUTCHours(0,0,0,0)}),((t,e)=>{t.setUTCDate(t.getUTCDate()+e)}),((t,e)=>(e-t)/Nv),(t=>t.getUTCDate()-1)),Kv=Zv.range,Qv=Pv((t=>{t.setUTCHours(0,0,0,0)}),((t,e)=>{t.setUTCDate(t.getUTCDate()+e)}),((t,e)=>(e-t)/Nv),(t=>Math.floor(t/Nv))),tb=Qv.range;function eb(t){return Pv((e=>{e.setDate(e.getDate()-(e.getDay()+7-t)%7),e.setHours(0,0,0,0)}),((t,e)=>{t.setDate(t.getDate()+7*e)}),((t,e)=>(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*Fv)/Cv))}const nb=eb(0),rb=eb(1),ib=eb(2),ob=eb(3),ab=eb(4),ub=eb(5),cb=eb(6),sb=nb.range,fb=rb.range,lb=ib.range,hb=ob.range,db=ab.range,pb=ub.range,gb=cb.range;function yb(t){return Pv((e=>{e.setUTCDate(e.getUTCDate()-(e.getUTCDay()+7-t)%7),e.setUTCHours(0,0,0,0)}),((t,e)=>{t.setUTCDate(t.getUTCDate()+7*e)}),((t,e)=>(e-t)/Cv))}const mb=yb(0),vb=yb(1),bb=yb(2),xb=yb(3),wb=yb(4),_b=yb(5),Ab=yb(6),Eb=mb.range,Mb=vb.range,Bb=bb.range,Tb=xb.range,kb=wb.range,Fb=_b.range,Sb=Ab.range,Nb=Pv((t=>{t.setDate(1),t.setHours(0,0,0,0)}),((t,e)=>{t.setMonth(t.getMonth()+e)}),((t,e)=>e.getMonth()-t.getMonth()+12*(e.getFullYear()-t.getFullYear())),(t=>t.getMonth())),Cb=Nb.range,Ib=Pv((t=>{t.setUTCDate(1),t.setUTCHours(0,0,0,0)}),((t,e)=>{t.setUTCMonth(t.getUTCMonth()+e)}),((t,e)=>e.getUTCMonth()-t.getUTCMonth()+12*(e.getUTCFullYear()-t.getUTCFullYear())),(t=>t.getUTCMonth())),Rb=Ib.range,Ob=Pv((t=>{t.setMonth(0,1),t.setHours(0,0,0,0)}),((t,e)=>{t.setFullYear(t.getFullYear()+e)}),((t,e)=>e.getFullYear()-t.getFullYear()),(t=>t.getFullYear()));Ob.every=t=>isFinite(t=Math.floor(t))&&t>0?Pv((e=>{e.setFullYear(Math.floor(e.getFullYear()/t)*t),e.setMonth(0,1),e.setHours(0,0,0,0)}),((e,n)=>{e.setFullYear(e.getFullYear()+n*t)})):null;const Pb=Ob.range,Db=Pv((t=>{t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)}),((t,e)=>{t.setUTCFullYear(t.getUTCFullYear()+e)}),((t,e)=>e.getUTCFullYear()-t.getUTCFullYear()),(t=>t.getUTCFullYear()));Db.every=t=>isFinite(t=Math.floor(t))&&t>0?Pv((e=>{e.setUTCFullYear(Math.floor(e.getUTCFullYear()/t)*t),e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)}),((e,n)=>{e.setUTCFullYear(e.getUTCFullYear()+n*t)})):null;const Lb=Db.range;function Ub(t,e,n,r,i,o){const a=[[Uv,1,kv],[Uv,5,5e3],[Uv,15,15e3],[Uv,30,3e4],[o,1,Fv],[o,5,3e5],[o,15,9e5],[o,30,18e5],[i,1,Sv],[i,3,108e5],[i,6,216e5],[i,12,432e5],[r,1,Nv],[r,2,1728e5],[n,1,Cv],[e,1,2592e6],[e,3,7776e6],[t,1,Iv]];function u(e,n,r){const i=Math.abs(n-e)/r,o=p((([,,t])=>t)).right(a,i);if(o===a.length)return t.every(bt(e/Iv,n/Iv,r));if(0===o)return Dv.every(Math.max(bt(e,n,r),1));const[u,c]=a[i/a[o-1][2]<a[o][2]/i?o-1:o];return u.every(c)}return[function(t,e,n){const r=e<t;r&&([t,e]=[e,t]);const i=n&&"function"==typeof n.range?n:u(t,e,n),o=i?i.range(t,+e+1):[];return r?o.reverse():o},u]}const[$b,jb]=Ub(Db,Ib,mb,Qv,Vv,Hv),[zb,Hb]=Ub(Ob,Nb,nb,Xv,Yv,jv);function qb(t){if(0<=t.y&&t.y<100){var e=new Date(-1,t.m,t.d,t.H,t.M,t.S,t.L);return e.setFullYear(t.y),e}return new Date(t.y,t.m,t.d,t.H,t.M,t.S,t.L)}function Yb(t){if(0<=t.y&&t.y<100){var e=new Date(Date.UTC(-1,t.m,t.d,t.H,t.M,t.S,t.L));return e.setUTCFullYear(t.y),e}return new Date(Date.UTC(t.y,t.m,t.d,t.H,t.M,t.S,t.L))}function Gb(t,e,n){return{y:t,m:e,d:n,H:0,M:0,S:0,L:0}}function Vb(t){var e=t.dateTime,n=t.date,r=t.time,i=t.periods,o=t.days,a=t.shortDays,u=t.months,c=t.shortMonths,s=ox(i),f=ax(i),l=ox(o),h=ax(o),d=ox(a),p=ax(a),g=ox(u),y=ax(u),m=ox(c),v=ax(c),b={a:function(t){return a[t.getDay()]},A:function(t){return o[t.getDay()]},b:function(t){return c[t.getMonth()]},B:function(t){return u[t.getMonth()]},c:null,d:Tx,e:Tx,f:Cx,g:Hx,G:Yx,H:kx,I:Fx,j:Sx,L:Nx,m:Ix,M:Rx,p:function(t){return i[+(t.getHours()>=12)]},q:function(t){return 1+~~(t.getMonth()/3)},Q:pw,s:gw,S:Ox,u:Px,U:Dx,V:Ux,w:$x,W:jx,x:null,X:null,y:zx,Y:qx,Z:Gx,"%":dw},x={a:function(t){return a[t.getUTCDay()]},A:function(t){return o[t.getUTCDay()]},b:function(t){return c[t.getUTCMonth()]},B:function(t){return u[t.getUTCMonth()]},c:null,d:Vx,e:Vx,f:Kx,g:sw,G:lw,H:Wx,I:Xx,j:Jx,L:Zx,m:Qx,M:tw,p:function(t){return i[+(t.getUTCHours()>=12)]},q:function(t){return 1+~~(t.getUTCMonth()/3)},Q:pw,s:gw,S:ew,u:nw,U:rw,V:ow,w:aw,W:uw,x:null,X:null,y:cw,Y:fw,Z:hw,"%":dw},w={a:function(t,e,n){var r=d.exec(e.slice(n));return r?(t.w=p.get(r[0].toLowerCase()),n+r[0].length):-1},A:function(t,e,n){var r=l.exec(e.slice(n));return r?(t.w=h.get(r[0].toLowerCase()),n+r[0].length):-1},b:function(t,e,n){var r=m.exec(e.slice(n));return r?(t.m=v.get(r[0].toLowerCase()),n+r[0].length):-1},B:function(t,e,n){var r=g.exec(e.slice(n));return r?(t.m=y.get(r[0].toLowerCase()),n+r[0].length):-1},c:function(t,n,r){return E(t,e,n,r)},d:mx,e:mx,f:Ax,g:dx,G:hx,H:bx,I:bx,j:vx,L:_x,m:yx,M:xx,p:function(t,e,n){var r=s.exec(e.slice(n));return r?(t.p=f.get(r[0].toLowerCase()),n+r[0].length):-1},q:gx,Q:Mx,s:Bx,S:wx,u:cx,U:sx,V:fx,w:ux,W:lx,x:function(t,e,r){return E(t,n,e,r)},X:function(t,e,n){return E(t,r,e,n)},y:dx,Y:hx,Z:px,"%":Ex};function _(t,e){return function(n){var r,i,o,a=[],u=-1,c=0,s=t.length;for(n instanceof Date||(n=new Date(+n));++u<s;)37===t.charCodeAt(u)&&(a.push(t.slice(c,u)),null!=(i=Qb[r=t.charAt(++u)])?r=t.charAt(++u):i="e"===r?" ":"0",(o=e[r])&&(r=o(n,i)),a.push(r),c=u+1);return a.push(t.slice(c,u)),a.join("")}}function A(t,e){return function(n){var r,i,o=Gb(1900,void 0,1);if(E(o,t,n+="",0)!=n.length)return null;if("Q"in o)return new Date(o.Q);if("s"in o)return new Date(1e3*o.s+("L"in o?o.L:0));if(e&&!("Z"in o)&&(o.Z=0),"p"in o&&(o.H=o.H%12+12*o.p),void 0===o.m&&(o.m="q"in o?o.q:0),"V"in o){if(o.V<1||o.V>53)return null;"w"in o||(o.w=1),"Z"in o?(i=(r=Yb(Gb(o.y,0,1))).getUTCDay(),r=i>4||0===i?vb.ceil(r):vb(r),r=Zv.offset(r,7*(o.V-1)),o.y=r.getUTCFullYear(),o.m=r.getUTCMonth(),o.d=r.getUTCDate()+(o.w+6)%7):(i=(r=qb(Gb(o.y,0,1))).getDay(),r=i>4||0===i?rb.ceil(r):rb(r),r=Xv.offset(r,7*(o.V-1)),o.y=r.getFullYear(),o.m=r.getMonth(),o.d=r.getDate()+(o.w+6)%7)}else("W"in o||"U"in o)&&("w"in o||(o.w="u"in o?o.u%7:"W"in o?1:0),i="Z"in o?Yb(Gb(o.y,0,1)).getUTCDay():qb(Gb(o.y,0,1)).getDay(),o.m=0,o.d="W"in o?(o.w+6)%7+7*o.W-(i+5)%7:o.w+7*o.U-(i+6)%7);return"Z"in o?(o.H+=o.Z/100|0,o.M+=o.Z%100,Yb(o)):qb(o)}}function E(t,e,n,r){for(var i,o,a=0,u=e.length,c=n.length;a<u;){if(r>=c)return-1;if(37===(i=e.charCodeAt(a++))){if(i=e.charAt(a++),!(o=w[i in Qb?e.charAt(a++):i])||(r=o(t,n,r))<0)return-1}else if(i!=n.charCodeAt(r++))return-1}return r}return b.x=_(n,b),b.X=_(r,b),b.c=_(e,b),x.x=_(n,x),x.X=_(r,x),x.c=_(e,x),{format:function(t){var e=_(t+="",b);return e.toString=function(){return t},e},parse:function(t){var e=A(t+="",!1);return e.toString=function(){return t},e},utcFormat:function(t){var e=_(t+="",x);return e.toString=function(){return t},e},utcParse:function(t){var e=A(t+="",!0);return e.toString=function(){return t},e}}}var Wb,Xb,Jb,Zb,Kb,Qb={"-":"",_:" ",0:"0"},tx=/^\s*\d+/,ex=/^%/,nx=/[\\^$*+?|[\]().{}]/g;function rx(t,e,n){var r=t<0?"-":"",i=(r?-t:t)+"",o=i.length;return r+(o<n?new Array(n-o+1).join(e)+i:i)}function ix(t){return t.replace(nx,"\\$&")}function ox(t){return new RegExp("^(?:"+t.map(ix).join("|")+")","i")}function ax(t){return new Map(t.map(((t,e)=>[t.toLowerCase(),e])))}function ux(t,e,n){var r=tx.exec(e.slice(n,n+1));return r?(t.w=+r[0],n+r[0].length):-1}function cx(t,e,n){var r=tx.exec(e.slice(n,n+1));return r?(t.u=+r[0],n+r[0].length):-1}function sx(t,e,n){var r=tx.exec(e.slice(n,n+2));return r?(t.U=+r[0],n+r[0].length):-1}function fx(t,e,n){var r=tx.exec(e.slice(n,n+2));return r?(t.V=+r[0],n+r[0].length):-1}function lx(t,e,n){var r=tx.exec(e.slice(n,n+2));return r?(t.W=+r[0],n+r[0].length):-1}function hx(t,e,n){var r=tx.exec(e.slice(n,n+4));return r?(t.y=+r[0],n+r[0].length):-1}function dx(t,e,n){var r=tx.exec(e.slice(n,n+2));return r?(t.y=+r[0]+(+r[0]>68?1900:2e3),n+r[0].length):-1}function px(t,e,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(e.slice(n,n+6));return r?(t.Z=r[1]?0:-(r[2]+(r[3]||"00")),n+r[0].length):-1}function gx(t,e,n){var r=tx.exec(e.slice(n,n+1));return r?(t.q=3*r[0]-3,n+r[0].length):-1}function yx(t,e,n){var r=tx.exec(e.slice(n,n+2));return r?(t.m=r[0]-1,n+r[0].length):-1}function mx(t,e,n){var r=tx.exec(e.slice(n,n+2));return r?(t.d=+r[0],n+r[0].length):-1}function vx(t,e,n){var r=tx.exec(e.slice(n,n+3));return r?(t.m=0,t.d=+r[0],n+r[0].length):-1}function bx(t,e,n){var r=tx.exec(e.slice(n,n+2));return r?(t.H=+r[0],n+r[0].length):-1}function xx(t,e,n){var r=tx.exec(e.slice(n,n+2));return r?(t.M=+r[0],n+r[0].length):-1}function wx(t,e,n){var r=tx.exec(e.slice(n,n+2));return r?(t.S=+r[0],n+r[0].length):-1}function _x(t,e,n){var r=tx.exec(e.slice(n,n+3));return r?(t.L=+r[0],n+r[0].length):-1}function Ax(t,e,n){var r=tx.exec(e.slice(n,n+6));return r?(t.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function Ex(t,e,n){var r=ex.exec(e.slice(n,n+1));return r?n+r[0].length:-1}function Mx(t,e,n){var r=tx.exec(e.slice(n));return r?(t.Q=+r[0],n+r[0].length):-1}function Bx(t,e,n){var r=tx.exec(e.slice(n));return r?(t.s=+r[0],n+r[0].length):-1}function Tx(t,e){return rx(t.getDate(),e,2)}function kx(t,e){return rx(t.getHours(),e,2)}function Fx(t,e){return rx(t.getHours()%12||12,e,2)}function Sx(t,e){return rx(1+Xv.count(Ob(t),t),e,3)}function Nx(t,e){return rx(t.getMilliseconds(),e,3)}function Cx(t,e){return Nx(t,e)+"000"}function Ix(t,e){return rx(t.getMonth()+1,e,2)}function Rx(t,e){return rx(t.getMinutes(),e,2)}function Ox(t,e){return rx(t.getSeconds(),e,2)}function Px(t){var e=t.getDay();return 0===e?7:e}function Dx(t,e){return rx(nb.count(Ob(t)-1,t),e,2)}function Lx(t){var e=t.getDay();return e>=4||0===e?ab(t):ab.ceil(t)}function Ux(t,e){return t=Lx(t),rx(ab.count(Ob(t),t)+(4===Ob(t).getDay()),e,2)}function $x(t){return t.getDay()}function jx(t,e){return rx(rb.count(Ob(t)-1,t),e,2)}function zx(t,e){return rx(t.getFullYear()%100,e,2)}function Hx(t,e){return rx((t=Lx(t)).getFullYear()%100,e,2)}function qx(t,e){return rx(t.getFullYear()%1e4,e,4)}function Yx(t,e){var n=t.getDay();return rx((t=n>=4||0===n?ab(t):ab.ceil(t)).getFullYear()%1e4,e,4)}function Gx(t){var e=t.getTimezoneOffset();return(e>0?"-":(e*=-1,"+"))+rx(e/60|0,"0",2)+rx(e%60,"0",2)}function Vx(t,e){return rx(t.getUTCDate(),e,2)}function Wx(t,e){return rx(t.getUTCHours(),e,2)}function Xx(t,e){return rx(t.getUTCHours()%12||12,e,2)}function Jx(t,e){return rx(1+Zv.count(Db(t),t),e,3)}function Zx(t,e){return rx(t.getUTCMilliseconds(),e,3)}function Kx(t,e){return Zx(t,e)+"000"}function Qx(t,e){return rx(t.getUTCMonth()+1,e,2)}function tw(t,e){return rx(t.getUTCMinutes(),e,2)}function ew(t,e){return rx(t.getUTCSeconds(),e,2)}function nw(t){var e=t.getUTCDay();return 0===e?7:e}function rw(t,e){return rx(mb.count(Db(t)-1,t),e,2)}function iw(t){var e=t.getUTCDay();return e>=4||0===e?wb(t):wb.ceil(t)}function ow(t,e){return t=iw(t),rx(wb.count(Db(t),t)+(4===Db(t).getUTCDay()),e,2)}function aw(t){return t.getUTCDay()}function uw(t,e){return rx(vb.count(Db(t)-1,t),e,2)}function cw(t,e){return rx(t.getUTCFullYear()%100,e,2)}function sw(t,e){return rx((t=iw(t)).getUTCFullYear()%100,e,2)}function fw(t,e){return rx(t.getUTCFullYear()%1e4,e,4)}function lw(t,e){var n=t.getUTCDay();return rx((t=n>=4||0===n?wb(t):wb.ceil(t)).getUTCFullYear()%1e4,e,4)}function hw(){return"+0000"}function dw(){return"%"}function pw(t){return+t}function gw(t){return Math.floor(+t/1e3)}function yw(t){return Wb=Vb(t),Xb=Wb.format,Jb=Wb.parse,Zb=Wb.utcFormat,Kb=Wb.utcParse,Wb}function mw(t){return new Date(t)}function vw(t){return t instanceof Date?+t:+new Date(+t)}function bw(t,e,n,r,i,o,a,u,c,s){var f=Qm(),l=f.invert,h=f.domain,d=s(".%L"),p=s(":%S"),g=s("%I:%M"),y=s("%I %p"),m=s("%a %d"),v=s("%b %d"),b=s("%B"),x=s("%Y");function w(t){return(c(t)<t?d:u(t)<t?p:a(t)<t?g:o(t)<t?y:r(t)<t?i(t)<t?m:v:n(t)<t?b:x)(t)}return f.invert=function(t){return new Date(l(t))},f.domain=function(t){return arguments.length?h(Array.from(t,vw)):h().map(mw)},f.ticks=function(e){var n=h();return t(n[0],n[n.length-1],null==e?10:e)},f.tickFormat=function(t,e){return null==e?w:s(e)},f.nice=function(t){var n=h();return t&&"function"==typeof t.range||(t=e(n[0],n[n.length-1],null==t?10:t)),t?h(iv(n,t)):f},f.copy=function(){return Zm(f,bw(t,e,n,r,i,o,a,u,c,s))},f}function xw(){return Lm.apply(bw(zb,Hb,Ob,Nb,nb,Xv,Yv,jv,Uv,Xb).domain([new Date(2e3,0,1),new Date(2e3,0,2)]),arguments)}function ww(){return Lm.apply(bw($b,jb,Db,Ib,mb,Zv,Vv,Hv,Uv,Zb).domain([Date.UTC(2e3,0,1),Date.UTC(2e3,0,2)]),arguments)}function _w(){var t,e,n,r,i,o=0,a=1,u=Vm,c=!1;function s(e){return null==e||isNaN(e=+e)?i:u(0===n?.5:(e=(r(e)-t)*n,c?Math.max(0,Math.min(1,e)):e))}function f(t){return function(e){var n,r;return arguments.length?([n,r]=e,u=t(n,r),s):[u(0),u(1)]}}return s.domain=function(i){return arguments.length?([o,a]=i,t=r(o=+o),e=r(a=+a),n=t===e?0:1/(e-t),s):[o,a]},s.clamp=function(t){return arguments.length?(c=!!t,s):c},s.interpolator=function(t){return arguments.length?(u=t,s):u},s.range=f(ai),s.rangeRound=f(Vy),s.unknown=function(t){return arguments.length?(i=t,s):i},function(i){return r=i,t=i(o),e=i(a),n=t===e?0:1/(e-t),s}}function Aw(t,e){return e.domain(t.domain()).interpolator(t.interpolator()).clamp(t.clamp()).unknown(t.unknown())}function Ew(){var t=ev(_w()(Vm));return t.copy=function(){return Aw(t,Ew())},Um.apply(t,arguments)}function Mw(){var t=lv(_w()).domain([1,10]);return t.copy=function(){return Aw(t,Mw()).base(t.base())},Um.apply(t,arguments)}function Bw(){var t=gv(_w());return t.copy=function(){return Aw(t,Bw()).constant(t.constant())},Um.apply(t,arguments)}function Tw(){var t=xv(_w());return t.copy=function(){return Aw(t,Tw()).exponent(t.exponent())},Um.apply(t,arguments)}function kw(){return Tw.apply(null,arguments).exponent(.5)}function Fw(){var t=[],e=Vm;function n(n){if(null!=n&&!isNaN(n=+n))return e((w(t,n,1)-1)/(t.length-1))}return n.domain=function(e){if(!arguments.length)return t.slice();t=[];for(let n of e)null==n||isNaN(n=+n)||t.push(n);return t.sort(h),n},n.interpolator=function(t){return arguments.length?(e=t,n):e},n.range=function(){return t.map(((n,r)=>e(r/(t.length-1))))},n.quantiles=function(e){return Array.from({length:e+1},((n,r)=>St(t,r/e)))},n.copy=function(){return Fw(e).domain(t)},Um.apply(n,arguments)}function Sw(){var t,e,n,r,i,o,a,u=0,c=.5,s=1,f=1,l=Vm,h=!1;function d(t){return isNaN(t=+t)?a:(t=.5+((t=+o(t))-e)*(f*t<f*e?r:i),l(h?Math.max(0,Math.min(1,t)):t))}function p(t){return function(e){var n,r,i;return arguments.length?([n,r,i]=e,l=am(t,[n,r,i]),d):[l(0),l(.5),l(1)]}}return d.domain=function(a){return arguments.length?([u,c,s]=a,t=o(u=+u),e=o(c=+c),n=o(s=+s),r=t===e?0:.5/(e-t),i=e===n?0:.5/(n-e),f=e<t?-1:1,d):[u,c,s]},d.clamp=function(t){return arguments.length?(h=!!t,d):h},d.interpolator=function(t){return arguments.length?(l=t,d):l},d.range=p(ai),d.rangeRound=p(Vy),d.unknown=function(t){return arguments.length?(a=t,d):a},function(a){return o=a,t=a(u),e=a(c),n=a(s),r=t===e?0:.5/(e-t),i=e===n?0:.5/(n-e),f=e<t?-1:1,d}}function Nw(){var t=ev(Sw()(Vm));return t.copy=function(){return Aw(t,Nw())},Um.apply(t,arguments)}function Cw(){var t=lv(Sw()).domain([.1,1,10]);return t.copy=function(){return Aw(t,Cw()).base(t.base())},Um.apply(t,arguments)}function Iw(){var t=gv(Sw());return t.copy=function(){return Aw(t,Iw()).constant(t.constant())},Um.apply(t,arguments)}function Rw(){var t=xv(Sw());return t.copy=function(){return Aw(t,Rw()).exponent(t.exponent())},Um.apply(t,arguments)}function Ow(){return Rw.apply(null,arguments).exponent(.5)}function Pw(t){for(var e=t.length/6|0,n=new Array(e),r=0;r<e;)n[r]="#"+t.slice(6*r,6*++r);return n}yw({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});const Dw=Pw("1f77b4ff7f0e2ca02cd627289467bd8c564be377c27f7f7fbcbd2217becf"),Lw=Pw("7fc97fbeaed4fdc086ffff99386cb0f0027fbf5b17666666"),Uw=Pw("1b9e77d95f027570b3e7298a66a61ee6ab02a6761d666666"),$w=Pw("4269d0efb118ff725c6cc5b03ca951ff8ab7a463f297bbf59c6b4e9498a0"),jw=Pw("a6cee31f78b4b2df8a33a02cfb9a99e31a1cfdbf6fff7f00cab2d66a3d9affff99b15928"),zw=Pw("fbb4aeb3cde3ccebc5decbe4fed9a6ffffcce5d8bdfddaecf2f2f2"),Hw=Pw("b3e2cdfdcdaccbd5e8f4cae4e6f5c9fff2aef1e2cccccccc"),qw=Pw("e41a1c377eb84daf4a984ea3ff7f00ffff33a65628f781bf999999"),Yw=Pw("66c2a5fc8d628da0cbe78ac3a6d854ffd92fe5c494b3b3b3"),Gw=Pw("8dd3c7ffffb3bebadafb807280b1d3fdb462b3de69fccde5d9d9d9bc80bdccebc5ffed6f"),Vw=Pw("4e79a7f28e2ce1575976b7b259a14fedc949af7aa1ff9da79c755fbab0ab"),Ww=t=>Wr(t[t.length-1]);var Xw=new Array(3).concat("d8b365f5f5f55ab4ac","a6611adfc27d80cdc1018571","a6611adfc27df5f5f580cdc1018571","8c510ad8b365f6e8c3c7eae55ab4ac01665e","8c510ad8b365f6e8c3f5f5f5c7eae55ab4ac01665e","8c510abf812ddfc27df6e8c3c7eae580cdc135978f01665e","8c510abf812ddfc27df6e8c3f5f5f5c7eae580cdc135978f01665e","5430058c510abf812ddfc27df6e8c3c7eae580cdc135978f01665e003c30","5430058c510abf812ddfc27df6e8c3f5f5f5c7eae580cdc135978f01665e003c30").map(Pw);const Jw=Ww(Xw);var Zw=new Array(3).concat("af8dc3f7f7f77fbf7b","7b3294c2a5cfa6dba0008837","7b3294c2a5cff7f7f7a6dba0008837","762a83af8dc3e7d4e8d9f0d37fbf7b1b7837","762a83af8dc3e7d4e8f7f7f7d9f0d37fbf7b1b7837","762a839970abc2a5cfe7d4e8d9f0d3a6dba05aae611b7837","762a839970abc2a5cfe7d4e8f7f7f7d9f0d3a6dba05aae611b7837","40004b762a839970abc2a5cfe7d4e8d9f0d3a6dba05aae611b783700441b","40004b762a839970abc2a5cfe7d4e8f7f7f7d9f0d3a6dba05aae611b783700441b").map(Pw);const Kw=Ww(Zw);var Qw=new Array(3).concat("e9a3c9f7f7f7a1d76a","d01c8bf1b6dab8e1864dac26","d01c8bf1b6daf7f7f7b8e1864dac26","c51b7de9a3c9fde0efe6f5d0a1d76a4d9221","c51b7de9a3c9fde0eff7f7f7e6f5d0a1d76a4d9221","c51b7dde77aef1b6dafde0efe6f5d0b8e1867fbc414d9221","c51b7dde77aef1b6dafde0eff7f7f7e6f5d0b8e1867fbc414d9221","8e0152c51b7dde77aef1b6dafde0efe6f5d0b8e1867fbc414d9221276419","8e0152c51b7dde77aef1b6dafde0eff7f7f7e6f5d0b8e1867fbc414d9221276419").map(Pw);const t_=Ww(Qw);var e_=new Array(3).concat("998ec3f7f7f7f1a340","5e3c99b2abd2fdb863e66101","5e3c99b2abd2f7f7f7fdb863e66101","542788998ec3d8daebfee0b6f1a340b35806","542788998ec3d8daebf7f7f7fee0b6f1a340b35806","5427888073acb2abd2d8daebfee0b6fdb863e08214b35806","5427888073acb2abd2d8daebf7f7f7fee0b6fdb863e08214b35806","2d004b5427888073acb2abd2d8daebfee0b6fdb863e08214b358067f3b08","2d004b5427888073acb2abd2d8daebf7f7f7fee0b6fdb863e08214b358067f3b08").map(Pw);const n_=Ww(e_);var r_=new Array(3).concat("ef8a62f7f7f767a9cf","ca0020f4a58292c5de0571b0","ca0020f4a582f7f7f792c5de0571b0","b2182bef8a62fddbc7d1e5f067a9cf2166ac","b2182bef8a62fddbc7f7f7f7d1e5f067a9cf2166ac","b2182bd6604df4a582fddbc7d1e5f092c5de4393c32166ac","b2182bd6604df4a582fddbc7f7f7f7d1e5f092c5de4393c32166ac","67001fb2182bd6604df4a582fddbc7d1e5f092c5de4393c32166ac053061","67001fb2182bd6604df4a582fddbc7f7f7f7d1e5f092c5de4393c32166ac053061").map(Pw);const i_=Ww(r_);var o_=new Array(3).concat("ef8a62ffffff999999","ca0020f4a582bababa404040","ca0020f4a582ffffffbababa404040","b2182bef8a62fddbc7e0e0e09999994d4d4d","b2182bef8a62fddbc7ffffffe0e0e09999994d4d4d","b2182bd6604df4a582fddbc7e0e0e0bababa8787874d4d4d","b2182bd6604df4a582fddbc7ffffffe0e0e0bababa8787874d4d4d","67001fb2182bd6604df4a582fddbc7e0e0e0bababa8787874d4d4d1a1a1a","67001fb2182bd6604df4a582fddbc7ffffffe0e0e0bababa8787874d4d4d1a1a1a").map(Pw);const a_=Ww(o_);var u_=new Array(3).concat("fc8d59ffffbf91bfdb","d7191cfdae61abd9e92c7bb6","d7191cfdae61ffffbfabd9e92c7bb6","d73027fc8d59fee090e0f3f891bfdb4575b4","d73027fc8d59fee090ffffbfe0f3f891bfdb4575b4","d73027f46d43fdae61fee090e0f3f8abd9e974add14575b4","d73027f46d43fdae61fee090ffffbfe0f3f8abd9e974add14575b4","a50026d73027f46d43fdae61fee090e0f3f8abd9e974add14575b4313695","a50026d73027f46d43fdae61fee090ffffbfe0f3f8abd9e974add14575b4313695").map(Pw);const c_=Ww(u_);var s_=new Array(3).concat("fc8d59ffffbf91cf60","d7191cfdae61a6d96a1a9641","d7191cfdae61ffffbfa6d96a1a9641","d73027fc8d59fee08bd9ef8b91cf601a9850","d73027fc8d59fee08bffffbfd9ef8b91cf601a9850","d73027f46d43fdae61fee08bd9ef8ba6d96a66bd631a9850","d73027f46d43fdae61fee08bffffbfd9ef8ba6d96a66bd631a9850","a50026d73027f46d43fdae61fee08bd9ef8ba6d96a66bd631a9850006837","a50026d73027f46d43fdae61fee08bffffbfd9ef8ba6d96a66bd631a9850006837").map(Pw);const f_=Ww(s_);var l_=new Array(3).concat("fc8d59ffffbf99d594","d7191cfdae61abdda42b83ba","d7191cfdae61ffffbfabdda42b83ba","d53e4ffc8d59fee08be6f59899d5943288bd","d53e4ffc8d59fee08bffffbfe6f59899d5943288bd","d53e4ff46d43fdae61fee08be6f598abdda466c2a53288bd","d53e4ff46d43fdae61fee08bffffbfe6f598abdda466c2a53288bd","9e0142d53e4ff46d43fdae61fee08be6f598abdda466c2a53288bd5e4fa2","9e0142d53e4ff46d43fdae61fee08bffffbfe6f598abdda466c2a53288bd5e4fa2").map(Pw);const h_=Ww(l_);var d_=new Array(3).concat("e5f5f999d8c92ca25f","edf8fbb2e2e266c2a4238b45","edf8fbb2e2e266c2a42ca25f006d2c","edf8fbccece699d8c966c2a42ca25f006d2c","edf8fbccece699d8c966c2a441ae76238b45005824","f7fcfde5f5f9ccece699d8c966c2a441ae76238b45005824","f7fcfde5f5f9ccece699d8c966c2a441ae76238b45006d2c00441b").map(Pw);const p_=Ww(d_);var g_=new Array(3).concat("e0ecf49ebcda8856a7","edf8fbb3cde38c96c688419d","edf8fbb3cde38c96c68856a7810f7c","edf8fbbfd3e69ebcda8c96c68856a7810f7c","edf8fbbfd3e69ebcda8c96c68c6bb188419d6e016b","f7fcfde0ecf4bfd3e69ebcda8c96c68c6bb188419d6e016b","f7fcfde0ecf4bfd3e69ebcda8c96c68c6bb188419d810f7c4d004b").map(Pw);const y_=Ww(g_);var m_=new Array(3).concat("e0f3dba8ddb543a2ca","f0f9e8bae4bc7bccc42b8cbe","f0f9e8bae4bc7bccc443a2ca0868ac","f0f9e8ccebc5a8ddb57bccc443a2ca0868ac","f0f9e8ccebc5a8ddb57bccc44eb3d32b8cbe08589e","f7fcf0e0f3dbccebc5a8ddb57bccc44eb3d32b8cbe08589e","f7fcf0e0f3dbccebc5a8ddb57bccc44eb3d32b8cbe0868ac084081").map(Pw);const v_=Ww(m_);var b_=new Array(3).concat("fee8c8fdbb84e34a33","fef0d9fdcc8afc8d59d7301f","fef0d9fdcc8afc8d59e34a33b30000","fef0d9fdd49efdbb84fc8d59e34a33b30000","fef0d9fdd49efdbb84fc8d59ef6548d7301f990000","fff7ecfee8c8fdd49efdbb84fc8d59ef6548d7301f990000","fff7ecfee8c8fdd49efdbb84fc8d59ef6548d7301fb300007f0000").map(Pw);const x_=Ww(b_);var w_=new Array(3).concat("ece2f0a6bddb1c9099","f6eff7bdc9e167a9cf02818a","f6eff7bdc9e167a9cf1c9099016c59","f6eff7d0d1e6a6bddb67a9cf1c9099016c59","f6eff7d0d1e6a6bddb67a9cf3690c002818a016450","fff7fbece2f0d0d1e6a6bddb67a9cf3690c002818a016450","fff7fbece2f0d0d1e6a6bddb67a9cf3690c002818a016c59014636").map(Pw);const __=Ww(w_);var A_=new Array(3).concat("ece7f2a6bddb2b8cbe","f1eef6bdc9e174a9cf0570b0","f1eef6bdc9e174a9cf2b8cbe045a8d","f1eef6d0d1e6a6bddb74a9cf2b8cbe045a8d","f1eef6d0d1e6a6bddb74a9cf3690c00570b0034e7b","fff7fbece7f2d0d1e6a6bddb74a9cf3690c00570b0034e7b","fff7fbece7f2d0d1e6a6bddb74a9cf3690c00570b0045a8d023858").map(Pw);const E_=Ww(A_);var M_=new Array(3).concat("e7e1efc994c7dd1c77","f1eef6d7b5d8df65b0ce1256","f1eef6d7b5d8df65b0dd1c77980043","f1eef6d4b9dac994c7df65b0dd1c77980043","f1eef6d4b9dac994c7df65b0e7298ace125691003f","f7f4f9e7e1efd4b9dac994c7df65b0e7298ace125691003f","f7f4f9e7e1efd4b9dac994c7df65b0e7298ace125698004367001f").map(Pw);const B_=Ww(M_);var T_=new Array(3).concat("fde0ddfa9fb5c51b8a","feebe2fbb4b9f768a1ae017e","feebe2fbb4b9f768a1c51b8a7a0177","feebe2fcc5c0fa9fb5f768a1c51b8a7a0177","feebe2fcc5c0fa9fb5f768a1dd3497ae017e7a0177","fff7f3fde0ddfcc5c0fa9fb5f768a1dd3497ae017e7a0177","fff7f3fde0ddfcc5c0fa9fb5f768a1dd3497ae017e7a017749006a").map(Pw);const k_=Ww(T_);var F_=new Array(3).concat("edf8b17fcdbb2c7fb8","ffffcca1dab441b6c4225ea8","ffffcca1dab441b6c42c7fb8253494","ffffccc7e9b47fcdbb41b6c42c7fb8253494","ffffccc7e9b47fcdbb41b6c41d91c0225ea80c2c84","ffffd9edf8b1c7e9b47fcdbb41b6c41d91c0225ea80c2c84","ffffd9edf8b1c7e9b47fcdbb41b6c41d91c0225ea8253494081d58").map(Pw);const S_=Ww(F_);var N_=new Array(3).concat("f7fcb9addd8e31a354","ffffccc2e69978c679238443","ffffccc2e69978c67931a354006837","ffffccd9f0a3addd8e78c67931a354006837","ffffccd9f0a3addd8e78c67941ab5d238443005a32","ffffe5f7fcb9d9f0a3addd8e78c67941ab5d238443005a32","ffffe5f7fcb9d9f0a3addd8e78c67941ab5d238443006837004529").map(Pw);const C_=Ww(N_);var I_=new Array(3).concat("fff7bcfec44fd95f0e","ffffd4fed98efe9929cc4c02","ffffd4fed98efe9929d95f0e993404","ffffd4fee391fec44ffe9929d95f0e993404","ffffd4fee391fec44ffe9929ec7014cc4c028c2d04","ffffe5fff7bcfee391fec44ffe9929ec7014cc4c028c2d04","ffffe5fff7bcfee391fec44ffe9929ec7014cc4c02993404662506").map(Pw);const R_=Ww(I_);var O_=new Array(3).concat("ffeda0feb24cf03b20","ffffb2fecc5cfd8d3ce31a1c","ffffb2fecc5cfd8d3cf03b20bd0026","ffffb2fed976feb24cfd8d3cf03b20bd0026","ffffb2fed976feb24cfd8d3cfc4e2ae31a1cb10026","ffffccffeda0fed976feb24cfd8d3cfc4e2ae31a1cb10026","ffffccffeda0fed976feb24cfd8d3cfc4e2ae31a1cbd0026800026").map(Pw);const P_=Ww(O_);var D_=new Array(3).concat("deebf79ecae13182bd","eff3ffbdd7e76baed62171b5","eff3ffbdd7e76baed63182bd08519c","eff3ffc6dbef9ecae16baed63182bd08519c","eff3ffc6dbef9ecae16baed64292c62171b5084594","f7fbffdeebf7c6dbef9ecae16baed64292c62171b5084594","f7fbffdeebf7c6dbef9ecae16baed64292c62171b508519c08306b").map(Pw);const L_=Ww(D_);var U_=new Array(3).concat("e5f5e0a1d99b31a354","edf8e9bae4b374c476238b45","edf8e9bae4b374c47631a354006d2c","edf8e9c7e9c0a1d99b74c47631a354006d2c","edf8e9c7e9c0a1d99b74c47641ab5d238b45005a32","f7fcf5e5f5e0c7e9c0a1d99b74c47641ab5d238b45005a32","f7fcf5e5f5e0c7e9c0a1d99b74c47641ab5d238b45006d2c00441b").map(Pw);const $_=Ww(U_);var j_=new Array(3).concat("f0f0f0bdbdbd636363","f7f7f7cccccc969696525252","f7f7f7cccccc969696636363252525","f7f7f7d9d9d9bdbdbd969696636363252525","f7f7f7d9d9d9bdbdbd969696737373525252252525","fffffff0f0f0d9d9d9bdbdbd969696737373525252252525","fffffff0f0f0d9d9d9bdbdbd969696737373525252252525000000").map(Pw);const z_=Ww(j_);var H_=new Array(3).concat("efedf5bcbddc756bb1","f2f0f7cbc9e29e9ac86a51a3","f2f0f7cbc9e29e9ac8756bb154278f","f2f0f7dadaebbcbddc9e9ac8756bb154278f","f2f0f7dadaebbcbddc9e9ac8807dba6a51a34a1486","fcfbfdefedf5dadaebbcbddc9e9ac8807dba6a51a34a1486","fcfbfdefedf5dadaebbcbddc9e9ac8807dba6a51a354278f3f007d").map(Pw);const q_=Ww(H_);var Y_=new Array(3).concat("fee0d2fc9272de2d26","fee5d9fcae91fb6a4acb181d","fee5d9fcae91fb6a4ade2d26a50f15","fee5d9fcbba1fc9272fb6a4ade2d26a50f15","fee5d9fcbba1fc9272fb6a4aef3b2ccb181d99000d","fff5f0fee0d2fcbba1fc9272fb6a4aef3b2ccb181d99000d","fff5f0fee0d2fcbba1fc9272fb6a4aef3b2ccb181da50f1567000d").map(Pw);const G_=Ww(Y_);var V_=new Array(3).concat("fee6cefdae6be6550d","feeddefdbe85fd8d3cd94701","feeddefdbe85fd8d3ce6550da63603","feeddefdd0a2fdae6bfd8d3ce6550da63603","feeddefdd0a2fdae6bfd8d3cf16913d948018c2d04","fff5ebfee6cefdd0a2fdae6bfd8d3cf16913d948018c2d04","fff5ebfee6cefdd0a2fdae6bfd8d3cf16913d94801a636037f2704").map(Pw);const W_=Ww(V_);function X_(t){return t=Math.max(0,Math.min(1,t)),"rgb("+Math.max(0,Math.min(255,Math.round(-4.54-t*(35.34-t*(2381.73-t*(6402.7-t*(7024.72-2710.57*t)))))))+", "+Math.max(0,Math.min(255,Math.round(32.49+t*(170.73+t*(52.82-t*(131.46-t*(176.58-67.37*t)))))))+", "+Math.max(0,Math.min(255,Math.round(81.24+t*(442.36-t*(2482.43-t*(6167.24-t*(6614.94-2475.67*t)))))))+")"}const J_=om(cu(300,.5,0),cu(-240,.5,1));var Z_=om(cu(-100,.75,.35),cu(80,1.5,.8)),K_=om(cu(260,.75,.35),cu(80,1.5,.8)),Q_=cu();function tA(t){(t<0||t>1)&&(t-=Math.floor(t));var e=Math.abs(t-.5);return Q_.h=360*t-100,Q_.s=1.5-1.5*e,Q_.l=.8-.9*e,Q_+""}var eA=Mr(),nA=Math.PI/3,rA=2*Math.PI/3;function iA(t){var e;return t=(.5-t)*Math.PI,eA.r=255*(e=Math.sin(t))*e,eA.g=255*(e=Math.sin(t+nA))*e,eA.b=255*(e=Math.sin(t+rA))*e,eA+""}function oA(t){return t=Math.max(0,Math.min(1,t)),"rgb("+Math.max(0,Math.min(255,Math.round(34.61+t*(1172.33-t*(10793.56-t*(33300.12-t*(38394.49-14825.05*t)))))))+", "+Math.max(0,Math.min(255,Math.round(23.31+t*(557.33+t*(1225.33-t*(3574.96-t*(1073.77+707.56*t)))))))+", "+Math.max(0,Math.min(255,Math.round(27.2+t*(3211.1-t*(15327.97-t*(27814-t*(22569.18-6838.66*t)))))))+")"}function aA(t){var e=t.length;return function(n){return t[Math.max(0,Math.min(e-1,Math.floor(n*e)))]}}const uA=aA(Pw("44015444025645045745055946075a46085c460a5d460b5e470d60470e6147106347116447136548146748166848176948186a481a6c481b6d481c6e481d6f481f70482071482173482374482475482576482677482878482979472a7a472c7a472d7b472e7c472f7d46307e46327e46337f463480453581453781453882443983443a83443b84433d84433e85423f854240864241864142874144874045884046883f47883f48893e49893e4a893e4c8a3d4d8a3d4e8a3c4f8a3c508b3b518b3b528b3a538b3a548c39558c39568c38588c38598c375a8c375b8d365c8d365d8d355e8d355f8d34608d34618d33628d33638d32648e32658e31668e31678e31688e30698e306a8e2f6b8e2f6c8e2e6d8e2e6e8e2e6f8e2d708e2d718e2c718e2c728e2c738e2b748e2b758e2a768e2a778e2a788e29798e297a8e297b8e287c8e287d8e277e8e277f8e27808e26818e26828e26828e25838e25848e25858e24868e24878e23888e23898e238a8d228b8d228c8d228d8d218e8d218f8d21908d21918c20928c20928c20938c1f948c1f958b1f968b1f978b1f988b1f998a1f9a8a1e9b8a1e9c891e9d891f9e891f9f881fa0881fa1881fa1871fa28720a38620a48621a58521a68522a78522a88423a98324aa8325ab8225ac8226ad8127ad8128ae8029af7f2ab07f2cb17e2db27d2eb37c2fb47c31b57b32b67a34b67935b77937b87838b9773aba763bbb753dbc743fbc7340bd7242be7144bf7046c06f48c16e4ac16d4cc26c4ec36b50c46a52c56954c56856c66758c7655ac8645cc8635ec96260ca6063cb5f65cb5e67cc5c69cd5b6ccd5a6ece5870cf5773d05675d05477d1537ad1517cd2507fd34e81d34d84d44b86d54989d5488bd6468ed64590d74393d74195d84098d83e9bd93c9dd93ba0da39a2da37a5db36a8db34aadc32addc30b0dd2fb2dd2db5de2bb8de29bade28bddf26c0df25c2df23c5e021c8e020cae11fcde11dd0e11cd2e21bd5e21ad8e219dae319dde318dfe318e2e418e5e419e7e419eae51aece51befe51cf1e51df4e61ef6e620f8e621fbe723fde725"));var cA=aA(Pw("00000401000501010601010802010902020b02020d03030f03031204041405041606051806051a07061c08071e0907200a08220b09240c09260d0a290e0b2b100b2d110c2f120d31130d34140e36150e38160f3b180f3d19103f1a10421c10441d11471e114920114b21114e22115024125325125527125829115a2a115c2c115f2d11612f116331116533106734106936106b38106c390f6e3b0f703d0f713f0f72400f74420f75440f764510774710784910784a10794c117a4e117b4f127b51127c52137c54137d56147d57157e59157e5a167e5c167f5d177f5f187f601880621980641a80651a80671b80681c816a1c816b1d816d1d816e1e81701f81721f817320817521817621817822817922827b23827c23827e24828025828125818326818426818627818827818928818b29818c29818e2a81902a81912b81932b80942c80962c80982d80992d809b2e7f9c2e7f9e2f7fa02f7fa1307ea3307ea5317ea6317da8327daa337dab337cad347cae347bb0357bb2357bb3367ab5367ab73779b83779ba3878bc3978bd3977bf3a77c03a76c23b75c43c75c53c74c73d73c83e73ca3e72cc3f71cd4071cf4070d0416fd2426fd3436ed5446dd6456cd8456cd9466bdb476adc4869de4968df4a68e04c67e24d66e34e65e44f64e55064e75263e85362e95462ea5661eb5760ec5860ed5a5fee5b5eef5d5ef05f5ef1605df2625df2645cf3655cf4675cf4695cf56b5cf66c5cf66e5cf7705cf7725cf8745cf8765cf9785df9795df97b5dfa7d5efa7f5efa815ffb835ffb8560fb8761fc8961fc8a62fc8c63fc8e64fc9065fd9266fd9467fd9668fd9869fd9a6afd9b6bfe9d6cfe9f6dfea16efea36ffea571fea772fea973feaa74feac76feae77feb078feb27afeb47bfeb67cfeb77efeb97ffebb81febd82febf84fec185fec287fec488fec68afec88cfeca8dfecc8ffecd90fecf92fed194fed395fed597fed799fed89afdda9cfddc9efddea0fde0a1fde2a3fde3a5fde5a7fde7a9fde9aafdebacfcecaefceeb0fcf0b2fcf2b4fcf4b6fcf6b8fcf7b9fcf9bbfcfbbdfcfdbf")),sA=aA(Pw("00000401000501010601010802010a02020c02020e03021004031204031405041706041907051b08051d09061f0a07220b07240c08260d08290e092b10092d110a30120a32140b34150b37160b39180c3c190c3e1b0c411c0c431e0c451f0c48210c4a230c4c240c4f260c51280b53290b552b0b572d0b592f0a5b310a5c320a5e340a5f3609613809623909633b09643d09653e0966400a67420a68440a68450a69470b6a490b6a4a0c6b4c0c6b4d0d6c4f0d6c510e6c520e6d540f6d550f6d57106e59106e5a116e5c126e5d126e5f136e61136e62146e64156e65156e67166e69166e6a176e6c186e6d186e6f196e71196e721a6e741a6e751b6e771c6d781c6d7a1d6d7c1d6d7d1e6d7f1e6c801f6c82206c84206b85216b87216b88226a8a226a8c23698d23698f24699025689225689326679526679727669827669a28659b29649d29649f2a63a02a63a22b62a32c61a52c60a62d60a82e5fa92e5eab2f5ead305dae305cb0315bb1325ab3325ab43359b63458b73557b93556ba3655bc3754bd3853bf3952c03a51c13a50c33b4fc43c4ec63d4dc73e4cc83f4bca404acb4149cc4248ce4347cf4446d04545d24644d34743d44842d54a41d74b3fd84c3ed94d3dda4e3cdb503bdd513ade5238df5337e05536e15635e25734e35933e45a31e55c30e65d2fe75e2ee8602de9612bea632aeb6429eb6628ec6726ed6925ee6a24ef6c23ef6e21f06f20f1711ff1731df2741cf3761bf37819f47918f57b17f57d15f67e14f68013f78212f78410f8850ff8870ef8890cf98b0bf98c0af98e09fa9008fa9207fa9407fb9606fb9706fb9906fb9b06fb9d07fc9f07fca108fca309fca50afca60cfca80dfcaa0ffcac11fcae12fcb014fcb216fcb418fbb61afbb81dfbba1ffbbc21fbbe23fac026fac228fac42afac62df9c72ff9c932f9cb35f8cd37f8cf3af7d13df7d340f6d543f6d746f5d949f5db4cf4dd4ff4df53f4e156f3e35af3e55df2e661f2e865f2ea69f1ec6df1ed71f1ef75f1f179f2f27df2f482f3f586f3f68af4f88ef5f992f6fa96f8fb9af9fc9dfafda1fcffa4")),fA=aA(Pw("0d088710078813078916078a19068c1b068d1d068e20068f2206902406912605912805922a05932c05942e05952f059631059733059735049837049938049a3a049a3c049b3e049c3f049c41049d43039e44039e46039f48039f4903a04b03a14c02a14e02a25002a25102a35302a35502a45601a45801a45901a55b01a55c01a65e01a66001a66100a76300a76400a76600a76700a86900a86a00a86c00a86e00a86f00a87100a87201a87401a87501a87701a87801a87a02a87b02a87d03a87e03a88004a88104a78305a78405a78606a68707a68808a68a09a58b0aa58d0ba58e0ca48f0da4910ea3920fa39410a29511a19613a19814a099159f9a169f9c179e9d189d9e199da01a9ca11b9ba21d9aa31e9aa51f99a62098a72197a82296aa2395ab2494ac2694ad2793ae2892b02991b12a90b22b8fb32c8eb42e8db52f8cb6308bb7318ab83289ba3388bb3488bc3587bd3786be3885bf3984c03a83c13b82c23c81c33d80c43e7fc5407ec6417dc7427cc8437bc9447aca457acb4679cc4778cc4977cd4a76ce4b75cf4c74d04d73d14e72d24f71d35171d45270d5536fd5546ed6556dd7566cd8576bd9586ada5a6ada5b69db5c68dc5d67dd5e66de5f65de6164df6263e06363e16462e26561e26660e3685fe4695ee56a5de56b5de66c5ce76e5be76f5ae87059e97158e97257ea7457eb7556eb7655ec7754ed7953ed7a52ee7b51ef7c51ef7e50f07f4ff0804ef1814df1834cf2844bf3854bf3874af48849f48948f58b47f58c46f68d45f68f44f79044f79143f79342f89441f89540f9973ff9983ef99a3efa9b3dfa9c3cfa9e3bfb9f3afba139fba238fca338fca537fca636fca835fca934fdab33fdac33fdae32fdaf31fdb130fdb22ffdb42ffdb52efeb72dfeb82cfeba2cfebb2bfebd2afebe2afec029fdc229fdc328fdc527fdc627fdc827fdca26fdcb26fccd25fcce25fcd025fcd225fbd324fbd524fbd724fad824fada24f9dc24f9dd25f8df25f8e125f7e225f7e425f6e626f6e826f5e926f5eb27f4ed27f3ee27f3f027f2f227f1f426f1f525f0f724f0f921"));function lA(t){return Jn(Pn(t).call(document.documentElement))}var hA=0;function dA(){return new pA}function pA(){this._="@"+(++hA).toString(36)}function gA(t,e){return t.target&&(t=ui(t),void 0===e&&(e=t.currentTarget),t=t.touches||[t]),Array.from(t,(t=>ci(t,e)))}function yA(t){return"string"==typeof t?new Vn([document.querySelectorAll(t)],[document.documentElement]):new Vn([Le(t)],Gn)}function mA(t){return function(){return t}}pA.prototype=dA.prototype={constructor:pA,get:function(t){for(var e=this._;!(e in t);)if(!(t=t.parentNode))return;return t[e]},set:function(t,e){return t[this._]=e},remove:function(t){return this._ in t&&delete t[this._]},toString:function(){return this._}};const vA=Math.abs,bA=Math.atan2,xA=Math.cos,wA=Math.max,_A=Math.min,AA=Math.sin,EA=Math.sqrt,MA=1e-12,BA=Math.PI,TA=BA/2,kA=2*BA;function FA(t){return t>=1?TA:t<=-1?-TA:Math.asin(t)}function SA(t){let e=3;return t.digits=function(n){if(!arguments.length)return e;if(null==n)e=null;else{const t=Math.floor(n);if(!(t>=0))throw new RangeError(`invalid digits: ${n}`);e=t}return t},()=>new ma(e)}function NA(t){return t.innerRadius}function CA(t){return t.outerRadius}function IA(t){return t.startAngle}function RA(t){return t.endAngle}function OA(t){return t&&t.padAngle}function PA(t,e,n,r,i,o,a){var u=t-n,c=e-r,s=(a?o:-o)/EA(u*u+c*c),f=s*c,l=-s*u,h=t+f,d=e+l,p=n+f,g=r+l,y=(h+p)/2,m=(d+g)/2,v=p-h,b=g-d,x=v*v+b*b,w=i-o,_=h*g-p*d,A=(b<0?-1:1)*EA(wA(0,w*w*x-_*_)),E=(_*b-v*A)/x,M=(-_*v-b*A)/x,B=(_*b+v*A)/x,T=(-_*v+b*A)/x,k=E-y,F=M-m,S=B-y,N=T-m;return k*k+F*F>S*S+N*N&&(E=B,M=T),{cx:E,cy:M,x01:-f,y01:-l,x11:E*(i/w-1),y11:M*(i/w-1)}}function DA(){var t=NA,e=CA,n=mA(0),r=null,i=IA,o=RA,a=OA,u=null,c=SA(s);function s(){var s,f,l,h=+t.apply(this,arguments),d=+e.apply(this,arguments),p=i.apply(this,arguments)-TA,g=o.apply(this,arguments)-TA,y=vA(g-p),m=g>p;if(u||(u=s=c()),d<h&&(f=d,d=h,h=f),d>MA)if(y>kA-MA)u.moveTo(d*xA(p),d*AA(p)),u.arc(0,0,d,p,g,!m),h>MA&&(u.moveTo(h*xA(g),h*AA(g)),u.arc(0,0,h,g,p,m));else{var v,b,x=p,w=g,_=p,A=g,E=y,M=y,B=a.apply(this,arguments)/2,T=B>MA&&(r?+r.apply(this,arguments):EA(h*h+d*d)),k=_A(vA(d-h)/2,+n.apply(this,arguments)),F=k,S=k;if(T>MA){var N=FA(T/h*AA(B)),C=FA(T/d*AA(B));(E-=2*N)>MA?(_+=N*=m?1:-1,A-=N):(E=0,_=A=(p+g)/2),(M-=2*C)>MA?(x+=C*=m?1:-1,w-=C):(M=0,x=w=(p+g)/2)}var I=d*xA(x),R=d*AA(x),O=h*xA(A),P=h*AA(A);if(k>MA){var D,L=d*xA(w),U=d*AA(w),$=h*xA(_),j=h*AA(_);if(y<BA)if(D=function(t,e,n,r,i,o,a,u){var c=n-t,s=r-e,f=a-i,l=u-o,h=l*c-f*s;if(!(h*h<MA))return[t+(h=(f*(e-o)-l*(t-i))/h)*c,e+h*s]}(I,R,$,j,L,U,O,P)){var z=I-D[0],H=R-D[1],q=L-D[0],Y=U-D[1],G=1/AA(((l=(z*q+H*Y)/(EA(z*z+H*H)*EA(q*q+Y*Y)))>1?0:l<-1?BA:Math.acos(l))/2),V=EA(D[0]*D[0]+D[1]*D[1]);F=_A(k,(h-V)/(G-1)),S=_A(k,(d-V)/(G+1))}else F=S=0}M>MA?S>MA?(v=PA($,j,I,R,d,S,m),b=PA(L,U,O,P,d,S,m),u.moveTo(v.cx+v.x01,v.cy+v.y01),S<k?u.arc(v.cx,v.cy,S,bA(v.y01,v.x01),bA(b.y01,b.x01),!m):(u.arc(v.cx,v.cy,S,bA(v.y01,v.x01),bA(v.y11,v.x11),!m),u.arc(0,0,d,bA(v.cy+v.y11,v.cx+v.x11),bA(b.cy+b.y11,b.cx+b.x11),!m),u.arc(b.cx,b.cy,S,bA(b.y11,b.x11),bA(b.y01,b.x01),!m))):(u.moveTo(I,R),u.arc(0,0,d,x,w,!m)):u.moveTo(I,R),h>MA&&E>MA?F>MA?(v=PA(O,P,L,U,h,-F,m),b=PA(I,R,$,j,h,-F,m),u.lineTo(v.cx+v.x01,v.cy+v.y01),F<k?u.arc(v.cx,v.cy,F,bA(v.y01,v.x01),bA(b.y01,b.x01),!m):(u.arc(v.cx,v.cy,F,bA(v.y01,v.x01),bA(v.y11,v.x11),!m),u.arc(0,0,h,bA(v.cy+v.y11,v.cx+v.x11),bA(b.cy+b.y11,b.cx+b.x11),m),u.arc(b.cx,b.cy,F,bA(b.y11,b.x11),bA(b.y01,b.x01),!m))):u.arc(0,0,h,A,_,m):u.lineTo(O,P)}else u.moveTo(0,0);if(u.closePath(),s)return u=null,s+""||null}return s.centroid=function(){var n=(+t.apply(this,arguments)+ +e.apply(this,arguments))/2,r=(+i.apply(this,arguments)+ +o.apply(this,arguments))/2-BA/2;return[xA(r)*n,AA(r)*n]},s.innerRadius=function(e){return arguments.length?(t="function"==typeof e?e:mA(+e),s):t},s.outerRadius=function(t){return arguments.length?(e="function"==typeof t?t:mA(+t),s):e},s.cornerRadius=function(t){return arguments.length?(n="function"==typeof t?t:mA(+t),s):n},s.padRadius=function(t){return arguments.length?(r=null==t?null:"function"==typeof t?t:mA(+t),s):r},s.startAngle=function(t){return arguments.length?(i="function"==typeof t?t:mA(+t),s):i},s.endAngle=function(t){return arguments.length?(o="function"==typeof t?t:mA(+t),s):o},s.padAngle=function(t){return arguments.length?(a="function"==typeof t?t:mA(+t),s):a},s.context=function(t){return arguments.length?(u=null==t?null:t,s):u},s}var LA=Array.prototype.slice;function UA(t){return"object"==typeof t&&"length"in t?t:Array.from(t)}function $A(t){this._context=t}function jA(t){return new $A(t)}function zA(t){return t[0]}function HA(t){return t[1]}function qA(t,e){var n=mA(!0),r=null,i=jA,o=null,a=SA(u);function u(u){var c,s,f,l=(u=UA(u)).length,h=!1;for(null==r&&(o=i(f=a())),c=0;c<=l;++c)!(c<l&&n(s=u[c],c,u))===h&&((h=!h)?o.lineStart():o.lineEnd()),h&&o.point(+t(s,c,u),+e(s,c,u));if(f)return o=null,f+""||null}return t="function"==typeof t?t:void 0===t?zA:mA(t),e="function"==typeof e?e:void 0===e?HA:mA(e),u.x=function(e){return arguments.length?(t="function"==typeof e?e:mA(+e),u):t},u.y=function(t){return arguments.length?(e="function"==typeof t?t:mA(+t),u):e},u.defined=function(t){return arguments.length?(n="function"==typeof t?t:mA(!!t),u):n},u.curve=function(t){return arguments.length?(i=t,null!=r&&(o=i(r)),u):i},u.context=function(t){return arguments.length?(null==t?r=o=null:o=i(r=t),u):r},u}function YA(t,e,n){var r=null,i=mA(!0),o=null,a=jA,u=null,c=SA(s);function s(s){var f,l,h,d,p,g=(s=UA(s)).length,y=!1,m=new Array(g),v=new Array(g);for(null==o&&(u=a(p=c())),f=0;f<=g;++f){if(!(f<g&&i(d=s[f],f,s))===y)if(y=!y)l=f,u.areaStart(),u.lineStart();else{for(u.lineEnd(),u.lineStart(),h=f-1;h>=l;--h)u.point(m[h],v[h]);u.lineEnd(),u.areaEnd()}y&&(m[f]=+t(d,f,s),v[f]=+e(d,f,s),u.point(r?+r(d,f,s):m[f],n?+n(d,f,s):v[f]))}if(p)return u=null,p+""||null}function f(){return qA().defined(i).curve(a).context(o)}return t="function"==typeof t?t:void 0===t?zA:mA(+t),e="function"==typeof e?e:mA(void 0===e?0:+e),n="function"==typeof n?n:void 0===n?HA:mA(+n),s.x=function(e){return arguments.length?(t="function"==typeof e?e:mA(+e),r=null,s):t},s.x0=function(e){return arguments.length?(t="function"==typeof e?e:mA(+e),s):t},s.x1=function(t){return arguments.length?(r=null==t?null:"function"==typeof t?t:mA(+t),s):r},s.y=function(t){return arguments.length?(e="function"==typeof t?t:mA(+t),n=null,s):e},s.y0=function(t){return arguments.length?(e="function"==typeof t?t:mA(+t),s):e},s.y1=function(t){return arguments.length?(n=null==t?null:"function"==typeof t?t:mA(+t),s):n},s.lineX0=s.lineY0=function(){return f().x(t).y(e)},s.lineY1=function(){return f().x(t).y(n)},s.lineX1=function(){return f().x(r).y(e)},s.defined=function(t){return arguments.length?(i="function"==typeof t?t:mA(!!t),s):i},s.curve=function(t){return arguments.length?(a=t,null!=o&&(u=a(o)),s):a},s.context=function(t){return arguments.length?(null==t?o=u=null:u=a(o=t),s):o},s}function GA(t,e){return e<t?-1:e>t?1:e>=t?0:NaN}function VA(t){return t}function WA(){var t=VA,e=GA,n=null,r=mA(0),i=mA(kA),o=mA(0);function a(a){var u,c,s,f,l,h=(a=UA(a)).length,d=0,p=new Array(h),g=new Array(h),y=+r.apply(this,arguments),m=Math.min(kA,Math.max(-kA,i.apply(this,arguments)-y)),v=Math.min(Math.abs(m)/h,o.apply(this,arguments)),b=v*(m<0?-1:1);for(u=0;u<h;++u)(l=g[p[u]=u]=+t(a[u],u,a))>0&&(d+=l);for(null!=e?p.sort((function(t,n){return e(g[t],g[n])})):null!=n&&p.sort((function(t,e){return n(a[t],a[e])})),u=0,s=d?(m-h*b)/d:0;u<h;++u,y=f)c=p[u],f=y+((l=g[c])>0?l*s:0)+b,g[c]={data:a[c],index:u,value:l,startAngle:y,endAngle:f,padAngle:v};return g}return a.value=function(e){return arguments.length?(t="function"==typeof e?e:mA(+e),a):t},a.sortValues=function(t){return arguments.length?(e=t,n=null,a):e},a.sort=function(t){return arguments.length?(n=t,e=null,a):n},a.startAngle=function(t){return arguments.length?(r="function"==typeof t?t:mA(+t),a):r},a.endAngle=function(t){return arguments.length?(i="function"==typeof t?t:mA(+t),a):i},a.padAngle=function(t){return arguments.length?(o="function"==typeof t?t:mA(+t),a):o},a}$A.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:this._context.lineTo(t,e)}}};var XA=ZA(jA);function JA(t){this._curve=t}function ZA(t){function e(e){return new JA(t(e))}return e._curve=t,e}function KA(t){var e=t.curve;return t.angle=t.x,delete t.x,t.radius=t.y,delete t.y,t.curve=function(t){return arguments.length?e(ZA(t)):e()._curve},t}function QA(){return KA(qA().curve(XA))}function tE(){var t=YA().curve(XA),e=t.curve,n=t.lineX0,r=t.lineX1,i=t.lineY0,o=t.lineY1;return t.angle=t.x,delete t.x,t.startAngle=t.x0,delete t.x0,t.endAngle=t.x1,delete t.x1,t.radius=t.y,delete t.y,t.innerRadius=t.y0,delete t.y0,t.outerRadius=t.y1,delete t.y1,t.lineStartAngle=function(){return KA(n())},delete t.lineX0,t.lineEndAngle=function(){return KA(r())},delete t.lineX1,t.lineInnerRadius=function(){return KA(i())},delete t.lineY0,t.lineOuterRadius=function(){return KA(o())},delete t.lineY1,t.curve=function(t){return arguments.length?e(ZA(t)):e()._curve},t}function eE(t,e){return[(e=+e)*Math.cos(t-=Math.PI/2),e*Math.sin(t)]}JA.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(t,e){this._curve.point(e*Math.sin(t),e*-Math.cos(t))}};class nE{constructor(t,e){this._context=t,this._x=e}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line}point(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:this._x?this._context.bezierCurveTo(this._x0=(this._x0+t)/2,this._y0,this._x0,e,t,e):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+e)/2,t,this._y0,t,e)}this._x0=t,this._y0=e}}class rE{constructor(t){this._context=t}lineStart(){this._point=0}lineEnd(){}point(t,e){if(t=+t,e=+e,0===this._point)this._point=1;else{const n=eE(this._x0,this._y0),r=eE(this._x0,this._y0=(this._y0+e)/2),i=eE(t,this._y0),o=eE(t,e);this._context.moveTo(...n),this._context.bezierCurveTo(...r,...i,...o)}this._x0=t,this._y0=e}}function iE(t){return new nE(t,!0)}function oE(t){return new nE(t,!1)}function aE(t){return new rE(t)}function uE(t){return t.source}function cE(t){return t.target}function sE(t){let e=uE,n=cE,r=zA,i=HA,o=null,a=null,u=SA(c);function c(){let c;const s=LA.call(arguments),f=e.apply(this,s),l=n.apply(this,s);if(null==o&&(a=t(c=u())),a.lineStart(),s[0]=f,a.point(+r.apply(this,s),+i.apply(this,s)),s[0]=l,a.point(+r.apply(this,s),+i.apply(this,s)),a.lineEnd(),c)return a=null,c+""||null}return c.source=function(t){return arguments.length?(e=t,c):e},c.target=function(t){return arguments.length?(n=t,c):n},c.x=function(t){return arguments.length?(r="function"==typeof t?t:mA(+t),c):r},c.y=function(t){return arguments.length?(i="function"==typeof t?t:mA(+t),c):i},c.context=function(e){return arguments.length?(null==e?o=a=null:a=t(o=e),c):o},c}function fE(){return sE(iE)}function lE(){return sE(oE)}function hE(){const t=sE(aE);return t.angle=t.x,delete t.x,t.radius=t.y,delete t.y,t}const dE=EA(3),pE={draw(t,e){const n=.59436*EA(e+_A(e/28,.75)),r=n/2,i=r*dE;t.moveTo(0,n),t.lineTo(0,-n),t.moveTo(-i,-r),t.lineTo(i,r),t.moveTo(-i,r),t.lineTo(i,-r)}},gE={draw(t,e){const n=EA(e/BA);t.moveTo(n,0),t.arc(0,0,n,0,kA)}},yE={draw(t,e){const n=EA(e/5)/2;t.moveTo(-3*n,-n),t.lineTo(-n,-n),t.lineTo(-n,-3*n),t.lineTo(n,-3*n),t.lineTo(n,-n),t.lineTo(3*n,-n),t.lineTo(3*n,n),t.lineTo(n,n),t.lineTo(n,3*n),t.lineTo(-n,3*n),t.lineTo(-n,n),t.lineTo(-3*n,n),t.closePath()}},mE=EA(1/3),vE=2*mE,bE={draw(t,e){const n=EA(e/vE),r=n*mE;t.moveTo(0,-n),t.lineTo(r,0),t.lineTo(0,n),t.lineTo(-r,0),t.closePath()}},xE={draw(t,e){const n=.62625*EA(e);t.moveTo(0,-n),t.lineTo(n,0),t.lineTo(0,n),t.lineTo(-n,0),t.closePath()}},wE={draw(t,e){const n=.87559*EA(e-_A(e/7,2));t.moveTo(-n,0),t.lineTo(n,0),t.moveTo(0,n),t.lineTo(0,-n)}},_E={draw(t,e){const n=EA(e),r=-n/2;t.rect(r,r,n,n)}},AE={draw(t,e){const n=.4431*EA(e);t.moveTo(n,n),t.lineTo(n,-n),t.lineTo(-n,-n),t.lineTo(-n,n),t.closePath()}},EE=AA(BA/10)/AA(7*BA/10),ME=AA(kA/10)*EE,BE=-xA(kA/10)*EE,TE={draw(t,e){const n=EA(.8908130915292852*e),r=ME*n,i=BE*n;t.moveTo(0,-n),t.lineTo(r,i);for(let e=1;e<5;++e){const o=kA*e/5,a=xA(o),u=AA(o);t.lineTo(u*n,-a*n),t.lineTo(a*r-u*i,u*r+a*i)}t.closePath()}},kE=EA(3),FE={draw(t,e){const n=-EA(e/(3*kE));t.moveTo(0,2*n),t.lineTo(-kE*n,-n),t.lineTo(kE*n,-n),t.closePath()}},SE=EA(3),NE={draw(t,e){const n=.6824*EA(e),r=n/2,i=n*SE/2;t.moveTo(0,-n),t.lineTo(i,r),t.lineTo(-i,r),t.closePath()}},CE=-.5,IE=EA(3)/2,RE=1/EA(12),OE=3*(RE/2+1),PE={draw(t,e){const n=EA(e/OE),r=n/2,i=n*RE,o=r,a=n*RE+n,u=-o,c=a;t.moveTo(r,i),t.lineTo(o,a),t.lineTo(u,c),t.lineTo(CE*r-IE*i,IE*r+CE*i),t.lineTo(CE*o-IE*a,IE*o+CE*a),t.lineTo(CE*u-IE*c,IE*u+CE*c),t.lineTo(CE*r+IE*i,CE*i-IE*r),t.lineTo(CE*o+IE*a,CE*a-IE*o),t.lineTo(CE*u+IE*c,CE*c-IE*u),t.closePath()}},DE={draw(t,e){const n=.6189*EA(e-_A(e/6,1.7));t.moveTo(-n,-n),t.lineTo(n,n),t.moveTo(-n,n),t.lineTo(n,-n)}},LE=[gE,yE,bE,_E,TE,FE,PE],UE=[gE,wE,DE,NE,pE,AE,xE];function $E(t,e){let n=null,r=SA(i);function i(){let i;if(n||(n=i=r()),t.apply(this,arguments).draw(n,+e.apply(this,arguments)),i)return n=null,i+""||null}return t="function"==typeof t?t:mA(t||gE),e="function"==typeof e?e:mA(void 0===e?64:+e),i.type=function(e){return arguments.length?(t="function"==typeof e?e:mA(e),i):t},i.size=function(t){return arguments.length?(e="function"==typeof t?t:mA(+t),i):e},i.context=function(t){return arguments.length?(n=null==t?null:t,i):n},i}function jE(){}function zE(t,e,n){t._context.bezierCurveTo((2*t._x0+t._x1)/3,(2*t._y0+t._y1)/3,(t._x0+2*t._x1)/3,(t._y0+2*t._y1)/3,(t._x0+4*t._x1+e)/6,(t._y0+4*t._y1+n)/6)}function HE(t){this._context=t}function qE(t){return new HE(t)}function YE(t){this._context=t}function GE(t){return new YE(t)}function VE(t){this._context=t}function WE(t){return new VE(t)}function XE(t,e){this._basis=new HE(t),this._beta=e}HE.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:zE(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:zE(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}},YE.prototype={areaStart:jE,areaEnd:jE,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x2,this._y2),this._context.closePath();break;case 2:this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break;case 3:this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4)}},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x2=t,this._y2=e;break;case 1:this._point=2,this._x3=t,this._y3=e;break;case 2:this._point=3,this._x4=t,this._y4=e,this._context.moveTo((this._x0+4*this._x1+t)/6,(this._y0+4*this._y1+e)/6);break;default:zE(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}},VE.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var n=(this._x0+4*this._x1+t)/6,r=(this._y0+4*this._y1+e)/6;this._line?this._context.lineTo(n,r):this._context.moveTo(n,r);break;case 3:this._point=4;default:zE(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}},XE.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var t=this._x,e=this._y,n=t.length-1;if(n>0)for(var r,i=t[0],o=e[0],a=t[n]-i,u=e[n]-o,c=-1;++c<=n;)r=c/n,this._basis.point(this._beta*t[c]+(1-this._beta)*(i+r*a),this._beta*e[c]+(1-this._beta)*(o+r*u));this._x=this._y=null,this._basis.lineEnd()},point:function(t,e){this._x.push(+t),this._y.push(+e)}};const JE=function t(e){function n(t){return 1===e?new HE(t):new XE(t,e)}return n.beta=function(e){return t(+e)},n}(.85);function ZE(t,e,n){t._context.bezierCurveTo(t._x1+t._k*(t._x2-t._x0),t._y1+t._k*(t._y2-t._y0),t._x2+t._k*(t._x1-e),t._y2+t._k*(t._y1-n),t._x2,t._y2)}function KE(t,e){this._context=t,this._k=(1-e)/6}KE.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:ZE(this,this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2,this._x1=t,this._y1=e;break;case 2:this._point=3;default:ZE(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const QE=function t(e){function n(t){return new KE(t,e)}return n.tension=function(e){return t(+e)},n}(0);function tM(t,e){this._context=t,this._k=(1-e)/6}tM.prototype={areaStart:jE,areaEnd:jE,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:ZE(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const eM=function t(e){function n(t){return new tM(t,e)}return n.tension=function(e){return t(+e)},n}(0);function nM(t,e){this._context=t,this._k=(1-e)/6}nM.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:ZE(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const rM=function t(e){function n(t){return new nM(t,e)}return n.tension=function(e){return t(+e)},n}(0);function iM(t,e,n){var r=t._x1,i=t._y1,o=t._x2,a=t._y2;if(t._l01_a>MA){var u=2*t._l01_2a+3*t._l01_a*t._l12_a+t._l12_2a,c=3*t._l01_a*(t._l01_a+t._l12_a);r=(r*u-t._x0*t._l12_2a+t._x2*t._l01_2a)/c,i=(i*u-t._y0*t._l12_2a+t._y2*t._l01_2a)/c}if(t._l23_a>MA){var s=2*t._l23_2a+3*t._l23_a*t._l12_a+t._l12_2a,f=3*t._l23_a*(t._l23_a+t._l12_a);o=(o*s+t._x1*t._l23_2a-e*t._l12_2a)/f,a=(a*s+t._y1*t._l23_2a-n*t._l12_2a)/f}t._context.bezierCurveTo(r,i,o,a,t._x2,t._y2)}function oM(t,e){this._context=t,this._alpha=e}oM.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){if(t=+t,e=+e,this._point){var n=this._x2-t,r=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+r*r,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3;default:iM(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const aM=function t(e){function n(t){return e?new oM(t,e):new KE(t,0)}return n.alpha=function(e){return t(+e)},n}(.5);function uM(t,e){this._context=t,this._alpha=e}uM.prototype={areaStart:jE,areaEnd:jE,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(t,e){if(t=+t,e=+e,this._point){var n=this._x2-t,r=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+r*r,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:iM(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const cM=function t(e){function n(t){return e?new uM(t,e):new tM(t,0)}return n.alpha=function(e){return t(+e)},n}(.5);function sM(t,e){this._context=t,this._alpha=e}sM.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){if(t=+t,e=+e,this._point){var n=this._x2-t,r=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+r*r,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:iM(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const fM=function t(e){function n(t){return e?new sM(t,e):new nM(t,0)}return n.alpha=function(e){return t(+e)},n}(.5);function lM(t){this._context=t}function hM(t){return new lM(t)}function dM(t){return t<0?-1:1}function pM(t,e,n){var r=t._x1-t._x0,i=e-t._x1,o=(t._y1-t._y0)/(r||i<0&&-0),a=(n-t._y1)/(i||r<0&&-0),u=(o*i+a*r)/(r+i);return(dM(o)+dM(a))*Math.min(Math.abs(o),Math.abs(a),.5*Math.abs(u))||0}function gM(t,e){var n=t._x1-t._x0;return n?(3*(t._y1-t._y0)/n-e)/2:e}function yM(t,e,n){var r=t._x0,i=t._y0,o=t._x1,a=t._y1,u=(o-r)/3;t._context.bezierCurveTo(r+u,i+u*e,o-u,a-u*n,o,a)}function mM(t){this._context=t}function vM(t){this._context=new bM(t)}function bM(t){this._context=t}function xM(t){return new mM(t)}function wM(t){return new vM(t)}function _M(t){this._context=t}function AM(t){var e,n,r=t.length-1,i=new Array(r),o=new Array(r),a=new Array(r);for(i[0]=0,o[0]=2,a[0]=t[0]+2*t[1],e=1;e<r-1;++e)i[e]=1,o[e]=4,a[e]=4*t[e]+2*t[e+1];for(i[r-1]=2,o[r-1]=7,a[r-1]=8*t[r-1]+t[r],e=1;e<r;++e)n=i[e]/o[e-1],o[e]-=n,a[e]-=n*a[e-1];for(i[r-1]=a[r-1]/o[r-1],e=r-2;e>=0;--e)i[e]=(a[e]-i[e+1])/o[e];for(o[r-1]=(t[r]+i[r-1])/2,e=0;e<r-1;++e)o[e]=2*t[e+1]-i[e+1];return[i,o]}function EM(t){return new _M(t)}function MM(t,e){this._context=t,this._t=e}function BM(t){return new MM(t,.5)}function TM(t){return new MM(t,0)}function kM(t){return new MM(t,1)}function FM(t,e){if((i=t.length)>1)for(var n,r,i,o=1,a=t[e[0]],u=a.length;o<i;++o)for(r=a,a=t[e[o]],n=0;n<u;++n)a[n][1]+=a[n][0]=isNaN(r[n][1])?r[n][0]:r[n][1]}function SM(t){for(var e=t.length,n=new Array(e);--e>=0;)n[e]=e;return n}function NM(t,e){return t[e]}function CM(t){const e=[];return e.key=t,e}function IM(){var t=mA([]),e=SM,n=FM,r=NM;function i(i){var o,a,u=Array.from(t.apply(this,arguments),CM),c=u.length,s=-1;for(const t of i)for(o=0,++s;o<c;++o)(u[o][s]=[0,+r(t,u[o].key,s,i)]).data=t;for(o=0,a=UA(e(u));o<c;++o)u[a[o]].index=o;return n(u,a),u}return i.keys=function(e){return arguments.length?(t="function"==typeof e?e:mA(Array.from(e)),i):t},i.value=function(t){return arguments.length?(r="function"==typeof t?t:mA(+t),i):r},i.order=function(t){return arguments.length?(e=null==t?SM:"function"==typeof t?t:mA(Array.from(t)),i):e},i.offset=function(t){return arguments.length?(n=null==t?FM:t,i):n},i}function RM(t,e){if((r=t.length)>0){for(var n,r,i,o=0,a=t[0].length;o<a;++o){for(i=n=0;n<r;++n)i+=t[n][o][1]||0;if(i)for(n=0;n<r;++n)t[n][o][1]/=i}FM(t,e)}}function OM(t,e){if((u=t.length)>0)for(var n,r,i,o,a,u,c=0,s=t[e[0]].length;c<s;++c)for(o=a=0,n=0;n<u;++n)(i=(r=t[e[n]][c])[1]-r[0])>0?(r[0]=o,r[1]=o+=i):i<0?(r[1]=a,r[0]=a+=i):(r[0]=0,r[1]=i)}function PM(t,e){if((n=t.length)>0){for(var n,r=0,i=t[e[0]],o=i.length;r<o;++r){for(var a=0,u=0;a<n;++a)u+=t[a][r][1]||0;i[r][1]+=i[r][0]=-u/2}FM(t,e)}}function DM(t,e){if((i=t.length)>0&&(r=(n=t[e[0]]).length)>0){for(var n,r,i,o=0,a=1;a<r;++a){for(var u=0,c=0,s=0;u<i;++u){for(var f=t[e[u]],l=f[a][1]||0,h=(l-(f[a-1][1]||0))/2,d=0;d<u;++d){var p=t[e[d]];h+=(p[a][1]||0)-(p[a-1][1]||0)}c+=l,s+=h*l}n[a-1][1]+=n[a-1][0]=o,c&&(o-=s/c)}n[a-1][1]+=n[a-1][0]=o,FM(t,e)}}function LM(t){var e=t.map(UM);return SM(t).sort((function(t,n){return e[t]-e[n]}))}function UM(t){for(var e,n=-1,r=0,i=t.length,o=-1/0;++n<i;)(e=+t[n][1])>o&&(o=e,r=n);return r}function $M(t){var e=t.map(jM);return SM(t).sort((function(t,n){return e[t]-e[n]}))}function jM(t){for(var e,n=0,r=-1,i=t.length;++r<i;)(e=+t[r][1])&&(n+=e);return n}function zM(t){return $M(t).reverse()}function HM(t){var e,n,r=t.length,i=t.map(jM),o=LM(t),a=0,u=0,c=[],s=[];for(e=0;e<r;++e)n=o[e],a<u?(a+=i[n],c.push(n)):(u+=i[n],s.push(n));return s.reverse().concat(c)}function qM(t){return SM(t).reverse()}lM.prototype={areaStart:jE,areaEnd:jE,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(t,e){t=+t,e=+e,this._point?this._context.lineTo(t,e):(this._point=1,this._context.moveTo(t,e))}},mM.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:yM(this,this._t0,gM(this,this._t0))}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){var n=NaN;if(e=+e,(t=+t)!==this._x1||e!==this._y1){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3,yM(this,gM(this,n=pM(this,t,e)),n);break;default:yM(this,this._t0,n=pM(this,t,e))}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e,this._t0=n}}},(vM.prototype=Object.create(mM.prototype)).point=function(t,e){mM.prototype.point.call(this,e,t)},bM.prototype={moveTo:function(t,e){this._context.moveTo(e,t)},closePath:function(){this._context.closePath()},lineTo:function(t,e){this._context.lineTo(e,t)},bezierCurveTo:function(t,e,n,r,i,o){this._context.bezierCurveTo(e,t,r,n,o,i)}},_M.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var t=this._x,e=this._y,n=t.length;if(n)if(this._line?this._context.lineTo(t[0],e[0]):this._context.moveTo(t[0],e[0]),2===n)this._context.lineTo(t[1],e[1]);else for(var r=AM(t),i=AM(e),o=0,a=1;a<n;++o,++a)this._context.bezierCurveTo(r[0][o],i[0][o],r[1][o],i[1][o],t[a],e[a]);(this._line||0!==this._line&&1===n)&&this._context.closePath(),this._line=1-this._line,this._x=this._y=null},point:function(t,e){this._x.push(+t),this._y.push(+e)}},MM.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){0<this._t&&this._t<1&&2===this._point&&this._context.lineTo(this._x,this._y),(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line>=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,e),this._context.lineTo(t,e);else{var n=this._x*(1-this._t)+t*this._t;this._context.lineTo(n,this._y),this._context.lineTo(n,e)}}this._x=t,this._y=e}};var YM="%Y-%m-%dT%H:%M:%S.%LZ",GM=Date.prototype.toISOString?function(t){return t.toISOString()}:Zb(YM);const VM=GM;var WM=+new Date("2000-01-01T00:00:00.000Z")?function(t){var e=new Date(t);return isNaN(e)?null:e}:Kb(YM);const XM=WM;function JM(t,e,n){var r=new wi,i=e;return null==e?(r.restart(t,e,n),r):(r._restart=r.restart,r.restart=function(t,e,n){e=+e,n=null==n?bi():+n,r._restart((function o(a){a+=i,r._restart(o,i+=e,n),t(a)}),e,n)},r.restart(t,e,n),r)}const ZM=t=>()=>t;function KM(t,{sourceEvent:e,target:n,transform:r,dispatch:i}){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:i}})}function QM(t,e,n){this.k=t,this.x=e,this.y=n}QM.prototype={constructor:QM,scale:function(t){return 1===t?this:new QM(this.k*t,this.x,this.y)},translate:function(t,e){return 0===t&0===e?this:new QM(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 tB=new QM(1,0,0);function eB(t){for(;!t.__zoom;)if(!(t=t.parentNode))return tB;return t.__zoom}function nB(t){t.stopImmediatePropagation()}function rB(t){t.preventDefault(),t.stopImmediatePropagation()}function iB(t){return!(t.ctrlKey&&"wheel"!==t.type||t.button)}function oB(){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 aB(){return this.__zoom||tB}function uB(t){return-t.deltaY*(1===t.deltaMode?.05:t.deltaMode?1:.002)*(t.ctrlKey?10:1)}function cB(){return navigator.maxTouchPoints||"ontouchstart"in this}function sB(t,e,n){var r=t.invertX(e[0][0])-n[0][0],i=t.invertX(e[1][0])-n[1][0],o=t.invertY(e[0][1])-n[0][1],a=t.invertY(e[1][1])-n[1][1];return t.translate(i>r?(r+i)/2:Math.min(0,r)||Math.max(0,i),a>o?(o+a)/2:Math.min(0,o)||Math.max(0,a))}function fB(){var t,e,n,r=iB,i=oB,o=sB,a=uB,u=cB,c=[0,1/0],s=[[-1/0,-1/0],[1/0,1/0]],f=250,l=Xy,h=Oe("start","zoom","end"),d=0,p=10;function g(t){t.property("__zoom",aB).on("wheel.zoom",_,{passive:!1}).on("mousedown.zoom",A).on("dblclick.zoom",E).filter(u).on("touchstart.zoom",M).on("touchmove.zoom",B).on("touchend.zoom touchcancel.zoom",T).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function y(t,e){return(e=Math.max(c[0],Math.min(c[1],e)))===t.k?t:new QM(e,t.x,t.y)}function m(t,e,n){var r=e[0]-n[0]*t.k,i=e[1]-n[1]*t.k;return r===t.x&&i===t.y?t:new QM(t.k,r,i)}function v(t){return[(+t[0][0]+ +t[1][0])/2,(+t[0][1]+ +t[1][1])/2]}function b(t,e,n,r){t.on("start.zoom",(function(){x(this,arguments).event(r).start()})).on("interrupt.zoom end.zoom",(function(){x(this,arguments).event(r).end()})).tween("zoom",(function(){var t=this,o=arguments,a=x(t,o).event(r),u=i.apply(t,o),c=null==n?v(u):"function"==typeof n?n.apply(t,o):n,s=Math.max(u[1][0]-u[0][0],u[1][1]-u[0][1]),f=t.__zoom,h="function"==typeof e?e.apply(t,o):e,d=l(f.invert(c).concat(s/f.k),h.invert(c).concat(s/h.k));return function(t){if(1===t)t=h;else{var e=d(t),n=s/e[2];t=new QM(n,c[0]-e[0]*n,c[1]-e[1]*n)}a.zoom(null,t)}}))}function x(t,e,n){return!n&&t.__zooming||new w(t,e)}function w(t,e){this.that=t,this.args=e,this.active=0,this.sourceEvent=null,this.extent=i.apply(t,e),this.taps=0}function _(t,...e){if(r.apply(this,arguments)){var n=x(this,e).event(t),i=this.__zoom,u=Math.max(c[0],Math.min(c[1],i.k*Math.pow(2,a.apply(this,arguments)))),f=ci(t);if(n.wheel)n.mouse[0][0]===f[0]&&n.mouse[0][1]===f[1]||(n.mouse[1]=i.invert(n.mouse[0]=f)),clearTimeout(n.wheel);else{if(i.k===u)return;n.mouse=[f,i.invert(f)],Li(this),n.start()}rB(t),n.wheel=setTimeout((function(){n.wheel=null,n.end()}),150),n.zoom("mouse",o(m(y(i,u),n.mouse[0],n.mouse[1]),n.extent,s))}}function A(t,...e){if(!n&&r.apply(this,arguments)){var i=t.currentTarget,a=x(this,e,!0).event(t),u=Jn(t.view).on("mousemove.zoom",(function(t){if(rB(t),!a.moved){var e=t.clientX-f,n=t.clientY-l;a.moved=e*e+n*n>d}a.event(t).zoom("mouse",o(m(a.that.__zoom,a.mouse[0]=ci(t,i),a.mouse[1]),a.extent,s))}),!0).on("mouseup.zoom",(function(t){u.on("mousemove.zoom mouseup.zoom",null),nr(t.view,a.moved),rB(t),a.event(t).end()}),!0),c=ci(t,i),f=t.clientX,l=t.clientY;er(t.view),nB(t),a.mouse=[c,this.__zoom.invert(c)],Li(this),a.start()}}function E(t,...e){if(r.apply(this,arguments)){var n=this.__zoom,a=ci(t.changedTouches?t.changedTouches[0]:t,this),u=n.invert(a),c=n.k*(t.shiftKey?.5:2),l=o(m(y(n,c),a,u),i.apply(this,e),s);rB(t),f>0?Jn(this).transition().duration(f).call(b,l,a,t):Jn(this).call(g.transform,l,a,t)}}function M(n,...i){if(r.apply(this,arguments)){var o,a,u,c,s=n.touches,f=s.length,l=x(this,i,n.changedTouches.length===f).event(n);for(nB(n),a=0;a<f;++a)c=[c=ci(u=s[a],this),this.__zoom.invert(c),u.identifier],l.touch0?l.touch1||l.touch0[2]===c[2]||(l.touch1=c,l.taps=0):(l.touch0=c,o=!0,l.taps=1+!!t);t&&(t=clearTimeout(t)),o&&(l.taps<2&&(e=c[0],t=setTimeout((function(){t=null}),500)),Li(this),l.start())}}function B(t,...e){if(this.__zooming){var n,r,i,a,u=x(this,e).event(t),c=t.changedTouches,f=c.length;for(rB(t),n=0;n<f;++n)i=ci(r=c[n],this),u.touch0&&u.touch0[2]===r.identifier?u.touch0[0]=i:u.touch1&&u.touch1[2]===r.identifier&&(u.touch1[0]=i);if(r=u.that.__zoom,u.touch1){var l=u.touch0[0],h=u.touch0[1],d=u.touch1[0],p=u.touch1[1],g=(g=d[0]-l[0])*g+(g=d[1]-l[1])*g,v=(v=p[0]-h[0])*v+(v=p[1]-h[1])*v;r=y(r,Math.sqrt(g/v)),i=[(l[0]+d[0])/2,(l[1]+d[1])/2],a=[(h[0]+p[0])/2,(h[1]+p[1])/2]}else{if(!u.touch0)return;i=u.touch0[0],a=u.touch0[1]}u.zoom("touch",o(m(r,i,a),u.extent,s))}}function T(t,...r){if(this.__zooming){var i,o,a=x(this,r).event(t),u=t.changedTouches,c=u.length;for(nB(t),n&&clearTimeout(n),n=setTimeout((function(){n=null}),500),i=0;i<c;++i)o=u[i],a.touch0&&a.touch0[2]===o.identifier?delete a.touch0:a.touch1&&a.touch1[2]===o.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&&(o=ci(o,this),Math.hypot(e[0]-o[0],e[1]-o[1])<p)){var s=Jn(this).on("dblclick.zoom");s&&s.apply(this,arguments)}}}return g.transform=function(t,e,n,r){var i=t.selection?t.selection():t;i.property("__zoom",aB),t!==i?b(t,e,n,r):i.interrupt().each((function(){x(this,arguments).event(r).start().zoom(null,"function"==typeof e?e.apply(this,arguments):e).end()}))},g.scaleBy=function(t,e,n,r){g.scaleTo(t,(function(){return this.__zoom.k*("function"==typeof e?e.apply(this,arguments):e)}),n,r)},g.scaleTo=function(t,e,n,r){g.transform(t,(function(){var t=i.apply(this,arguments),r=this.__zoom,a=null==n?v(t):"function"==typeof n?n.apply(this,arguments):n,u=r.invert(a),c="function"==typeof e?e.apply(this,arguments):e;return o(m(y(r,c),a,u),t,s)}),n,r)},g.translateBy=function(t,e,n,r){g.transform(t,(function(){return o(this.__zoom.translate("function"==typeof e?e.apply(this,arguments):e,"function"==typeof n?n.apply(this,arguments):n),i.apply(this,arguments),s)}),null,r)},g.translateTo=function(t,e,n,r,a){g.transform(t,(function(){var t=i.apply(this,arguments),a=this.__zoom,u=null==r?v(t):"function"==typeof r?r.apply(this,arguments):r;return o(tB.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,s)}),r,a)},w.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=Jn(this.that).datum();h.call(t,this.that,new KM(t,{sourceEvent:this.sourceEvent,target:g,type:t,transform:this.that.__zoom,dispatch:h}),e)}},g.wheelDelta=function(t){return arguments.length?(a="function"==typeof t?t:ZM(+t),g):a},g.filter=function(t){return arguments.length?(r="function"==typeof t?t:ZM(!!t),g):r},g.touchable=function(t){return arguments.length?(u="function"==typeof t?t:ZM(!!t),g):u},g.extent=function(t){return arguments.length?(i="function"==typeof t?t:ZM([[+t[0][0],+t[0][1]],[+t[1][0],+t[1][1]]]),g):i},g.scaleExtent=function(t){return arguments.length?(c[0]=+t[0],c[1]=+t[1],g):[c[0],c[1]]},g.translateExtent=function(t){return arguments.length?(s[0][0]=+t[0][0],s[1][0]=+t[1][0],s[0][1]=+t[0][1],s[1][1]=+t[1][1],g):[[s[0][0],s[0][1]],[s[1][0],s[1][1]]]},g.constrain=function(t){return arguments.length?(o=t,g):o},g.duration=function(t){return arguments.length?(f=+t,g):f},g.interpolate=function(t){return arguments.length?(l=t,g):l},g.on=function(){var t=h.on.apply(h,arguments);return t===h?g:t},g.clickDistance=function(t){return arguments.length?(d=(t=+t)*t,g):Math.sqrt(d)},g.tapDistance=function(t){return arguments.length?(p=+t,g):p},g}eB.prototype=QM.prototype;var lB=n(78194),hB=n.n(lB);function dB(t,e,n,r,i,o,a){try{var u=t[o](a),c=u.value}catch(t){return void n(t)}u.done?e(c):Promise.resolve(c).then(r,i)}function pB(t){return function(){var e=this,n=arguments;return new Promise((function(r,i){var o=t.apply(e,n);function a(t){dB(o,r,i,a,u,"next",t)}function u(t){dB(o,r,i,a,u,"throw",t)}a(void 0)}))}}var gB=n(54756),yB=n.n(gB);function mB(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 vB(t,e){if(t){if("string"==typeof t)return mB(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)?mB(t,e):void 0}}function bB(t){return function(t){if(Array.isArray(t))return mB(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||vB(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}var xB=n(73065),wB=n.n(xB),_B=n(90031),AB=n.n(_B);function EB(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(EB=function(){return!!t})()}const MB=function(t){function e(){var t,n,i,o;r(this,e);for(var a=arguments.length,u=new Array(a),f=0;f<a;f++)u[f]=arguments[f];return n=this,i=e,o=[].concat(u),i=s(i),(t=c(n,EB()?Reflect.construct(i,o||[],s(n).constructor):i.apply(n,o))).type="OperationError",Error.captureStackTrace&&Error.captureStackTrace(t,e),t}return l(e,t),u(e)}(function(t){function e(){var e=Reflect.construct(t,Array.from(arguments));return Object.setPrototypeOf(e,Object.getPrototypeOf(this)),e}return e.prototype=Object.create(t.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t,e}(Error));function BB(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"A-Za-z0-9+/=";if(!t)return"";if("string"==typeof t&&(t=DB.strToArrayBuffer(t)),t instanceof ArrayBuffer&&(t=new Uint8Array(t)),64!==(e=DB.expandAlphRange(e).join("")).length&&65!==e.length)throw new MB(`Invalid Base64 alphabet length (${e.length}): ${e}`);for(var n,r,i,o,a,u,c,s="",f=0;f<t.length;)o=(n=t[f++])>>2,a=(3&n)<<4|(r=t[f++])>>4,u=(15&r)<<2|(i=t[f++])>>6,c=63&i,isNaN(r)?u=c=64:isNaN(i)&&(c=64),s+=e.charAt(o)+e.charAt(a)+e.charAt(u)+e.charAt(c);return s}function TB(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"A-Za-z0-9+/=",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"string",r=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],i=arguments.length>4&&void 0!==arguments[4]&&arguments[4];if(!t)return"string"===n?"":[];if(e=e||"A-Za-z0-9+/=",64!==(e=DB.expandAlphRange(e).join("")).length&&65!==e.length)throw new MB(`Error: Base64 alphabet should be 64 characters long, or 65 with a padding character. Found ${e.length}: ${e}`);if(r){var o=new RegExp("[^"+e.replace(/[[\]\\\-^$]/g,"\\$&")+"]","g");t=t.replace(o,"")}if(i){if(t.length%4==1)throw new MB(`Error: Invalid Base64 input length (${t.length}). Cannot be 4n+1, even without padding chars.`);if(65===e.length){var a=e.charAt(64),u=t.indexOf(a);if(u>=0){if(u<t.length-2||t.charAt(t.length-1)!==a)throw new MB(`Error: Base64 padding character (${a}) not used in the correct place.`);if(t.length%4!=0)throw new MB("Error: Base64 not padded to a multiple of 4.")}}}for(var c,s,f,l,h,d,p,g=[],y=0;y<t.length;){if(l=e.indexOf(t.charAt(y++)||null),h=e.indexOf(t.charAt(y++)||null),d=e.indexOf(t.charAt(y++)||null),p=e.indexOf(t.charAt(y++)||null),i&&(l<0||h<0||d<0||p<0))throw new MB("Error: Base64 input contains non-alphabet char(s)");s=(15&h)<<4|d>>2,f=(3&d)<<6|p,(c=l<<2|h>>4)>=0&&c<256&&g.push(c),s>=0&&s<256&&64!==d&&g.push(s),f>=0&&f<256&&64!==p&&g.push(f)}return"string"===n?DB.byteArrayToUtf8(g):g}function kB(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"Auto",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:2;if(n<1||Math.round(n)!==n)throw new MB("Byte length must be a positive integer");if("None"!==e){var r="Auto"===e?/[^a-f\d]|0x/gi:DB.regexRep(e);t=t.split(r)}else t=[t];for(var i=[],o=0;o<t.length;o++)for(var a=0;a<t[o].length;a+=n)i.push(parseInt(t[o].substr(a,n),16));return i}function FB(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"Auto";e=DB.charRep(e);var n=[],r=t.split(e);""===r[r.length-1]&&(r=r.slice(0,r.length-1));for(var i=0;i<r.length;i++)n[i]=parseInt(r[i],10);return n}function SB(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"Space",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:8;if(n<1||Math.round(n)!==n)throw new MB("Byte length must be a positive integer");var r=DB.regexRep(e);t=t.replace(r,"");for(var i=[],o=0;o<t.length;o+=n)i.push(parseInt(t.substr(o,n),2));return i}["Auto"].concat(["Space","Percent","Comma","Semi-colon","Colon","Line feed","CRLF","0x","0x with comma","\\x","None"]);var NB=n(48287).Buffer,CB=n(65606),IB=function(){function t(){r(this,t)}return u(t,null,[{key:"chr",value:function(t){if(t>65535){t-=65536;var e=String.fromCharCode(t>>>10&1023|55296);return t=56320|1023&t,e+String.fromCharCode(t)}return String.fromCharCode(t)}},{key:"ord",value:function(t){if(2===t.length){var e=t.charCodeAt(0),n=t.charCodeAt(1);if(e>=55296&&e<56320&&n>=56320&&n<57344)return 1024*(e-55296)+n-56320+65536}return t.charCodeAt(0)}},{key:"padBytesRight",value:function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,r=new Array(e);return r.fill(n),bB(t).forEach((function(t,e){r[e]=t})),r}},{key:"truncate",value:function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"...";return t.length>e&&(t=t.slice(0,e-n.length)+n),t}},{key:"hex",value:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:2;return(e="string"==typeof e?t.ord(e):e).toString(16).padStart(n,"0")}},{key:"bin",value:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:8;return(e="string"==typeof e?t.ord(e):e).toString(2).padStart(n,"0")}},{key:"printable",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return arguments.length>2&&void 0!==arguments[2]&&arguments[2]?t.replace(/[^\x20-\x7f]/g,"."):(t=t.replace(/[\0-\x08\x0B-\x0C\x0E-\x1F\x7F-\x9F\xAD\u0378\u0379\u037F-\u0383\u038B\u038D\u03A2\u0528-\u0530\u0557\u0558\u0560\u0588\u058B-\u058E\u0590\u05C8-\u05CF\u05EB-\u05EF\u05F5-\u0605\u061C\u061D\u06DD\u070E\u070F\u074B\u074C\u07B2-\u07BF\u07FB-\u07FF\u082E\u082F\u083F\u085C\u085D\u085F-\u089F\u08A1\u08AD-\u08E3\u08FF\u0978\u0980\u0984\u098D\u098E\u0991\u0992\u09A9\u09B1\u09B3-\u09B5\u09BA\u09BB\u09C5\u09C6\u09C9\u09CA\u09CF-\u09D6\u09D8-\u09DB\u09DE\u09E4\u09E5\u09FC-\u0A00\u0A04\u0A0B-\u0A0E\u0A11\u0A12\u0A29\u0A31\u0A34\u0A37\u0A3A\u0A3B\u0A3D\u0A43-\u0A46\u0A49\u0A4A\u0A4E-\u0A50\u0A52-\u0A58\u0A5D\u0A5F-\u0A65\u0A76-\u0A80\u0A84\u0A8E\u0A92\u0AA9\u0AB1\u0AB4\u0ABA\u0ABB\u0AC6\u0ACA\u0ACE\u0ACF\u0AD1-\u0ADF\u0AE4\u0AE5\u0AF2-\u0B00\u0B04\u0B0D\u0B0E\u0B11\u0B12\u0B29\u0B31\u0B34\u0B3A\u0B3B\u0B45\u0B46\u0B49\u0B4A\u0B4E-\u0B55\u0B58-\u0B5B\u0B5E\u0B64\u0B65\u0B78-\u0B81\u0B84\u0B8B-\u0B8D\u0B91\u0B96-\u0B98\u0B9B\u0B9D\u0BA0-\u0BA2\u0BA5-\u0BA7\u0BAB-\u0BAD\u0BBA-\u0BBD\u0BC3-\u0BC5\u0BC9\u0BCE\u0BCF\u0BD1-\u0BD6\u0BD8-\u0BE5\u0BFB-\u0C00\u0C04\u0C0D\u0C11\u0C29\u0C34\u0C3A-\u0C3C\u0C45\u0C49\u0C4E-\u0C54\u0C57\u0C5A-\u0C5F\u0C64\u0C65\u0C70-\u0C77\u0C80\u0C81\u0C84\u0C8D\u0C91\u0CA9\u0CB4\u0CBA\u0CBB\u0CC5\u0CC9\u0CCE-\u0CD4\u0CD7-\u0CDD\u0CDF\u0CE4\u0CE5\u0CF0\u0CF3-\u0D01\u0D04\u0D0D\u0D11\u0D3B\u0D3C\u0D45\u0D49\u0D4F-\u0D56\u0D58-\u0D5F\u0D64\u0D65\u0D76-\u0D78\u0D80\u0D81\u0D84\u0D97-\u0D99\u0DB2\u0DBC\u0DBE\u0DBF\u0DC7-\u0DC9\u0DCB-\u0DCE\u0DD5\u0DD7\u0DE0-\u0DF1\u0DF5-\u0E00\u0E3B-\u0E3E\u0E5C-\u0E80\u0E83\u0E85\u0E86\u0E89\u0E8B\u0E8C\u0E8E-\u0E93\u0E98\u0EA0\u0EA4\u0EA6\u0EA8\u0EA9\u0EAC\u0EBA\u0EBE\u0EBF\u0EC5\u0EC7\u0ECE\u0ECF\u0EDA\u0EDB\u0EE0-\u0EFF\u0F48\u0F6D-\u0F70\u0F98\u0FBD\u0FCD\u0FDB-\u0FFF\u10C6\u10C8-\u10CC\u10CE\u10CF\u1249\u124E\u124F\u1257\u1259\u125E\u125F\u1289\u128E\u128F\u12B1\u12B6\u12B7\u12BF\u12C1\u12C6\u12C7\u12D7\u1311\u1316\u1317\u135B\u135C\u137D-\u137F\u139A-\u139F\u13F5-\u13FF\u169D-\u169F\u16F1-\u16FF\u170D\u1715-\u171F\u1737-\u173F\u1754-\u175F\u176D\u1771\u1774-\u177F\u17DE\u17DF\u17EA-\u17EF\u17FA-\u17FF\u180F\u181A-\u181F\u1878-\u187F\u18AB-\u18AF\u18F6-\u18FF\u191D-\u191F\u192C-\u192F\u193C-\u193F\u1941-\u1943\u196E\u196F\u1975-\u197F\u19AC-\u19AF\u19CA-\u19CF\u19DB-\u19DD\u1A1C\u1A1D\u1A5F\u1A7D\u1A7E\u1A8A-\u1A8F\u1A9A-\u1A9F\u1AAE-\u1AFF\u1B4C-\u1B4F\u1B7D-\u1B7F\u1BF4-\u1BFB\u1C38-\u1C3A\u1C4A-\u1C4C\u1C80-\u1CBF\u1CC8-\u1CCF\u1CF7-\u1CFF\u1DE7-\u1DFB\u1F16\u1F17\u1F1E\u1F1F\u1F46\u1F47\u1F4E\u1F4F\u1F58\u1F5A\u1F5C\u1F5E\u1F7E\u1F7F\u1FB5\u1FC5\u1FD4\u1FD5\u1FDC\u1FF0\u1FF1\u1FF5\u1FFF\u200B-\u200F\u202A-\u202E\u2060-\u206F\u2072\u2073\u208F\u209D-\u209F\u20BB-\u20CF\u20F1-\u20FF\u218A-\u218F\u23F4-\u23FF\u2427-\u243F\u244B-\u245F\u2700\u2B4D-\u2B4F\u2B5A-\u2BFF\u2C2F\u2C5F\u2CF4-\u2CF8\u2D26\u2D28-\u2D2C\u2D2E\u2D2F\u2D68-\u2D6E\u2D71-\u2D7E\u2D97-\u2D9F\u2DA7\u2DAF\u2DB7\u2DBF\u2DC7\u2DCF\u2DD7\u2DDF\u2E3C-\u2E7F\u2E9A\u2EF4-\u2EFF\u2FD6-\u2FEF\u2FFC-\u2FFF\u3040\u3097\u3098\u3100-\u3104\u312E-\u3130\u318F\u31BB-\u31BF\u31E4-\u31EF\u321F\u32FF\u4DB6-\u4DBF\u9FCD-\u9FFF\uA48D-\uA48F\uA4C7-\uA4CF\uA62C-\uA63F\uA698-\uA69E\uA6F8-\uA6FF\uA78F\uA794-\uA79F\uA7AB-\uA7F7\uA82C-\uA82F\uA83A-\uA83F\uA878-\uA87F\uA8C5-\uA8CD\uA8DA-\uA8DF\uA8FC-\uA8FF\uA954-\uA95E\uA97D-\uA97F\uA9CE\uA9DA-\uA9DD\uA9E0-\uA9FF\uAA37-\uAA3F\uAA4E\uAA4F\uAA5A\uAA5B\uAA7C-\uAA7F\uAAC3-\uAADA\uAAF7-\uAB00\uAB07\uAB08\uAB0F\uAB10\uAB17-\uAB1F\uAB27\uAB2F-\uABBF\uABEE\uABEF\uABFA-\uABFF\uD7A4-\uD7AF\uD7C7-\uD7CA\uD7FC-\uD7FF\uE000-\uF8FF\uFA6E\uFA6F\uFADA-\uFAFF\uFB07-\uFB12\uFB18-\uFB1C\uFB37\uFB3D\uFB3F\uFB42\uFB45\uFBC2-\uFBD2\uFD40-\uFD4F\uFD90\uFD91\uFDC8-\uFDEF\uFDFE\uFDFF\uFE1A-\uFE1F\uFE27-\uFE2F\uFE53\uFE67\uFE6C-\uFE6F\uFE75\uFEFD-\uFF00\uFFBF-\uFFC1\uFFC8\uFFC9\uFFD0\uFFD1\uFFD8\uFFD9\uFFDD-\uFFDF\uFFE7\uFFEF-\uFFFB\uFFFE\uFFFF]/g,"."),e||(t=t.replace(/[\x09-\x10\u2028\u2029]/g,".")),t)}},{key:"escapeWhitespace",value:function(t){return t.replace(/[\x09-\x10]/g,(function(t){return String.fromCharCode(57344+t.charCodeAt(0))}))}},{key:"parseEscapedChars",value:function(t){return t.replace(/\\([abfnrtv'"]|[0-3][0-7]{2}|[0-7]{1,2}|x[\da-fA-F]{2}|u[\da-fA-F]{4}|u\{[\da-fA-F]{1,6}\}|\\)/g,(function(t,e){switch(e[0]){case"\\":return"\\";case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":return String.fromCharCode(parseInt(e,8));case"a":return String.fromCharCode(7);case"b":return"\b";case"t":return"\t";case"n":return"\n";case"v":return"\v";case"f":return"\f";case"r":return"\r";case'"':return'"';case"'":return"'";case"x":return String.fromCharCode(parseInt(e.substr(1),16));case"u":return"{"===e[1]?String.fromCodePoint(parseInt(e.slice(2,-1),16)):String.fromCharCode(parseInt(e.substr(1),16))}}))}},{key:"escapeRegex",value:function(t){return t.replace(/([.*+?^=!:${}()|[\]/\\])/g,"\\$1")}},{key:"expandAlphRange",value:function(e){for(var n=[],r=0;r<e.length;r++)if(r<e.length-2&&"-"===e[r+1]&&"\\"!==e[r]){for(var i=t.ord(e[r]),o=t.ord(e[r+2]),a=i;a<=o;a++)n.push(t.chr(a));r+=2}else r<e.length-2&&"\\"===e[r]&&"-"===e[r+1]?(n.push("-"),r++):n.push(e[r]);return n}},{key:"convertToByteArray",value:function(e,n){switch(n.toLowerCase()){case"binary":return SB(e);case"hex":return kB(e);case"decimal":return FB(e);case"base64":return TB(e,null,"byteArray");case"utf8":return t.strToUtf8ByteArray(e);default:return t.strToByteArray(e)}}},{key:"convertToByteString",value:function(e,n){switch(n.toLowerCase()){case"binary":return t.byteArrayToChars(SB(e));case"hex":return t.byteArrayToChars(kB(e));case"decimal":return t.byteArrayToChars(FB(e));case"base64":return t.byteArrayToChars(TB(e,null,"byteArray"));case"utf8":return AB().encode(e);default:return e}}},{key:"byteArrayToInt",value:function(t,e){var n=0;if("big"===e)for(var r=0;r<t.length;r++)n=256*n+t[r];else for(var i=t.length-1;i>=0;i--)n=256*n+t[i];return n}},{key:"intToByteArray",value:function(t,e,n){var r=new Array(e);if("little"===n)for(var i=0;i<e;i++)r[i]=255&t,t>>>=8;else for(var o=e-1;o>=0;o--)r[o]=255&t,t>>>=8;return r}},{key:"strToArrayBuffer",value:function(e){if(wB().debug(`Converting string[${null==e?void 0:e.length}] to array buffer`),!e)return new ArrayBuffer;for(var n,r=new Uint8Array(e.length),i=e.length;i--;)if(n=e.charCodeAt(i),r[i]=n,n>255)return t.strToUtf8ArrayBuffer(e);return r.buffer}},{key:"strToUtf8ArrayBuffer",value:function(t){if(wB().debug(`Converting string[${null==t?void 0:t.length}] to UTF8 array buffer`),!t)return new ArrayBuffer;var e=new TextEncoder("utf-8").encode(t);return t.length!==e.length&&(PB()&&self&&"function"==typeof self.setOption?self.setOption("attemptHighlight",!1):OB()&&(window.app.options.attemptHighlight=!1)),e.buffer}},{key:"strToByteArray",value:function(e){if(wB().debug(`Converting string[${null==e?void 0:e.length}] to byte array`),!e)return[];for(var n,r=new Array(e.length),i=e.length;i--;)if(n=e.charCodeAt(i),r[i]=n,n>255)return t.strToUtf8ByteArray(e);return r}},{key:"strToUtf8ByteArray",value:function(e){if(wB().debug(`Converting string[${null==e?void 0:e.length}] to UTF8 byte array`),!e)return[];var n=AB().encode(e);return e.length!==n.length&&(PB()?self.setOption("attemptHighlight",!1):OB()&&(window.app.options.attemptHighlight=!1)),t.strToByteArray(n)}},{key:"strToCharcode",value:function(e){if(wB().debug(`Converting string[${null==e?void 0:e.length}] to charcode`),!e)return[];for(var n=[],r=0;r<e.length;r++){var i=e.charCodeAt(r);if(r<e.length-1&&i>=55296&&i<56320){var o=e[r+1].charCodeAt(0);o>=56320&&o<57344&&(i=t.ord(e[r]+e[++r]))}n.push(i)}return n}},{key:"byteArrayToUtf8",value:function(e){var n;if(wB().debug(`Converting byte array[${null===(n=e)||void 0===n?void 0:n.length}] to UTF8`),!e||!e.length)return"";e instanceof Uint8Array||(e=new Uint8Array(e));try{var r=new TextDecoder("utf-8",{fatal:!0}).decode(e);return r.length!==e.length&&(PB()?self.setOption("attemptHighlight",!1):OB()&&(window.app.options.attemptHighlight=!1)),r}catch(n){return t.byteArrayToChars(e)}}},{key:"byteArrayToChars",value:function(t){if(wB().debug(`Converting byte array[${null==t?void 0:t.length}] to chars`),!t||!t.length)return"";for(var e="",n=0;n<t.length;n+=2e4)e+=String.fromCharCode.apply(String,bB(t.slice(n,n+2e4)));return e}},{key:"arrayBufferToStr",value:function(e){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(wB().debug(`Converting array buffer[${null==e?void 0:e.byteLength}] to str`),!e||!e.byteLength)return"";var r=new Uint8Array(e);return n?t.byteArrayToUtf8(r):t.byteArrayToChars(r)}},{key:"calculateShannonEntropy",value:function(t){t instanceof ArrayBuffer&&(t=new Uint8Array(t));var e,n=[],r=new Array(256).fill(0);for(e=0;e<t.length;e++)r[t[e]]++;for(e=0;e<r.length;e++)r[e]>0&&n.push(r[e]/t.length);var i,o=0;for(e=0;e<n.length;e++)o+=(i=n[e])*Math.log(i)/Math.log(2);return-o}},{key:"parseCSV",value:function(t){var e,n,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[","],i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:["\n","\r"],o=!1,a=!1,u="",c=[],s=[];t.length&&"\ufeff"===t[0]&&(t=t.substr(1));for(var f=0;f<t.length;f++)e=t[f],n=t[f+1]||"",o?(u+=e,o=!1):'"'!==e||a?'"'===e&&a?'"'===n?o=!0:a=!1:!a&&r.indexOf(e)>=0?(c.push(u),u=""):!a&&i.indexOf(e)>=0?(c.push(u),u="",s.push(c),c=[],i.indexOf(n)>=0&&n!==e&&f++):u+=e:a=!0;return c.length&&(c.push(u),s.push(c)),s}},{key:"stripHtmlTags",value:function(t){function e(t,n){var r=n.replace(t,"");return r.length===n.length?r:e(t,r)}return arguments.length>1&&void 0!==arguments[1]&&arguments[1]&&(t=e(/<script[^>]*>(\s|\S)*?<\/script[^>]*>/gi,t),t=e(/<style[^>]*>(\s|\S)*?<\/style[^>]*>/gi,t)),e(/<[^>]+>/g,t)}},{key:"escapeHtml",value:function(t){var e={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;","\0":""};return t?t.replace(/[&<>"'`\u0000]/g,(function(t){return e[t]})):t}},{key:"unescapeHtml",value:function(t){var e={"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#x27;":"'","&#x2F;":"/","&#x60;":"`","":"\0"};return t.replace(/(&#?x?[a-z0-9]{2,4};|\ue000)/gi,(function(t){return e[t]||t}))}},{key:"toTitleCase",value:function(t){return t.replace(/\w\S*/g,(function(t){return t.charAt(0).toUpperCase()+t.substr(1).toLowerCase()}))}},{key:"encodeURIFragment",value:function(t){var e={"%2D":"-","%2E":".","%5F":"_","%7E":"~","%21":"!","%24":"$","%27":"'","%28":"(","%29":")","%2A":"*","%2C":",","%3B":";","%3A":":","%40":"@","%2F":"/","%3F":"?"};return(t=encodeURIComponent(t)).replace(/%[0-9A-F]{2}/g,(function(t){return e[t]||t}))}},{key:"generatePrettyRecipe",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n="",r="",i="",o="",a="";return t.forEach((function(t){r=t.op.replace(/ /g,"_"),i=JSON.stringify(t.args).slice(1,-1).replace(/'/g,"\\'").replace(/"((?:[^"\\]|\\.)*)"/g,"'$1'").replace(/\\"/g,'"'),o=t.disabled?"/disabled":"",a=t.breakpoint?"/breakpoint":"",n+=`${r}(${i}${o}${a})`,e&&(n+="\n")})),n}},{key:"parseRecipeConfig",value:function(t){if(0===(t=t.trim()).length)return[];if("["===t[0])return JSON.parse(t);var e,n;t=t.replace(/\n/g,"");for(var r=/([^(]+)\(((?:'[^'\\]*(?:\\.[^'\\]*)*'|[^)/'])*)(\/[^)]+)?\)/g,i=[];e=r.exec(t);){n="["+(n=e[2].replace(/"/g,'\\"').replace(/(^|,|{|:)'/g,'$1"').replace(/([^\\]|(?:\\\\)+)'(,|:|}|$)/g,'$1"$2').replace(/\\'/g,"'"))+"]";var o={op:e[1].replace(/_/g," "),args:JSON.parse(n)};e[3]&&e[3].indexOf("disabled")>0&&(o.disabled=!0),e[3]&&e[3].indexOf("breakpoint")>0&&(o.breakpoint=!0),i.push(o)}return i}},{key:"displayFilesAsHTML",value:(e=pB(yB().mark((function e(n){var r,i,o,a,u;return yB().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:r=function(e){return`<div class='card' style='white-space: normal;'>\n <div class='card-header'>\n <h6 class="mb-0">\n ${t.escapeHtml(e.name)}\n </h6>\n </div>\n </div>`},i=function(e,n){if(n.startsWith("image")){var r="data:";return r+=n+";","<img style='max-width: 100%;' src='"+(r+="base64,"+BB(e))+"'>"}return`<pre>${t.escapeHtml(t.arrayBufferToStr(e.buffer))}</pre>`},o=function(){var e=pB(yB().mark((function e(n,r){var o,a,u,c;return yB().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.readFile(n);case 2:return o=e.sent,a=new Blob([o],{type:n.type||"octet/stream"}),u=URL.createObjectURL(a),c=`<div class='card' style='white-space: normal;'>\n <div class='card-header' id='heading${r}'>\n <h6 class='mb-0'>\n <a class='collapsed'\n data-toggle='collapse'\n href='#collapse${r}'\n aria-expanded='false'\n aria-controls='collapse${r}'\n title="Show/hide contents of '${t.escapeHtml(n.name)}'">\n ${t.escapeHtml(n.name)}</a>\n <span class='float-right' style="margin-top: -3px">\n ${n.size.toLocaleString()} bytes\n <a title="Download ${t.escapeHtml(n.name)}"\n href="${u}"\n download="${t.escapeHtml(n.name)}"\n data-toggle="tooltip">\n <i class="material-icons" style="vertical-align: bottom">save</i>\n </a>\n <a title="Move to input"\n href="#"\n blob-url="${u}"\n file-name="${t.escapeHtml(n.name)}"\n class="extract-file"\n data-toggle="tooltip">\n <i class="material-icons" style="vertical-align: bottom">open_in_browser</i>\n </a>\n </span>\n </h6>\n </div>\n <div id='collapse${r}' class='collapse' aria-labelledby='heading${r}' data-parent="#files">\n <div class='card-body'>\n ${i(o,n.type)}\n </div>\n </div>\n </div>`,e.abrupt("return",c);case 7:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}(),a=`<div style='padding: 5px; white-space: normal;'>\n ${n.length} file(s) found\n </div><div id="files" style="padding: 20px">`,u=0;case 5:if(!(u<n.length)){e.next=17;break}if(!n[u].name.endsWith("/")){e.next=10;break}a+=r(n[u]),e.next=14;break;case 10:return e.t0=a,e.next=13,o(n[u],u);case 13:a=e.t0+=e.sent;case 14:u++,e.next=5;break;case 17:return e.abrupt("return",a+="</div>");case 18:case"end":return e.stop()}}),e)}))),function(t){return e.apply(this,arguments)})},{key:"parseURIParams",value:function(t){if(""===t)return{};"?"!==t[0]&&"#"!==t[0]||(t=t.substr(1));for(var e=t.split("&"),n={},r=0;r<e.length;r++){var i=e[r].split("=");2!==i.length?n[e[r]]=!0:n[i[0]]=decodeURIComponent(i[1].replace(/\+/g," "))}return n}},{key:"readFile",value:function(t){return RB()?NB.from(t).buffer:new Promise((function(e,n){var r=new FileReader,i=new Uint8Array(t.size),o=0,a=10485760,u=function(){if(o>=t.size)e(i);else{var n=t.slice(o,o+a);r.readAsArrayBuffer(n)}};r.onload=function(t){i.set(new Uint8Array(r.result),o),o+=a,u()},r.onerror=function(t){n(r.error.message)},u()}))}},{key:"readFileSync",value:function(t){if(!RB())throw new TypeError("Browser environment cannot support readFileSync");return Uint8Array.from(t.data).buffer}},{key:"mod",value:function(t,e){return(t%e+e)%e}},{key:"gcd",value:function(e,n){return n?t.gcd(n,e%n):e}},{key:"modInv",value:function(t,e){t%=e;for(var n=1;n<e;n++)if(t*n%26==1)return n}},{key:"charRep",value:function(t){return{Space:" ",Percent:"%",Comma:",","Semi-colon":";",Colon:":",Tab:"\t","Line feed":"\n",CRLF:"\r\n","Forward slash":"/",Backslash:"\\","0x":"0x","\\x":"\\x","Nothing (separate chars)":"",None:""}[t]}},{key:"regexRep",value:function(t){return{Space:/\s+/g,Percent:/%/g,Comma:/,/g,"Semi-colon":/;/g,Colon:/:/g,"Line feed":/\n/g,CRLF:/\r\n/g,"Forward slash":/\//g,Backslash:/\\/g,"0x with comma":/,?0x/g,"0x":/0x/g,"\\x":/\\x/g,None:/\s+/g}[t]}},{key:"chunked",value:yB().mark((function t(e,n){var r,i,o,a;return yB().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:r=e[Symbol.iterator]();case 1:i=[],o=0;case 4:if(!(o<n)){t.next=12;break}if(!(a=r.next()).done){t.next=8;break}return t.abrupt("break",12);case 8:i.push(a.value);case 9:o++,t.next=4;break;case 12:if(!i.length){t.next=17;break}return t.next=15,i;case 15:t.next=18;break;case 17:return t.abrupt("return");case 18:t.next=1;break;case 20:case"end":return t.stop()}}),t)}))}]);var e}();function RB(){return void 0!==CB&&null!=CB.versions&&null!=CB.versions.node}function OB(){return"object"==typeof window}function PB(){return"function"==typeof importScripts}const DB=IB;function LB(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(LB=function(){return!!t})()}Array.prototype.unique=function(){for(var t={},e=[],n=0,r=this.length;n<r;n++)Object.prototype.hasOwnProperty.call(t,this[n])||(e.push(this[n]),t[this[n]]=1);return e},Array.prototype.max=function(){return Math.max.apply(null,this)},Array.prototype.min=function(){return Math.min.apply(null,this)},Array.prototype.sum=function(){return this.reduce((function(t,e){return t+e}),0)},Array.prototype.equals=function(t){if(!t)return!1;var e=this.length;if(e!==t.length)return!1;for(;e--;)if(this[e]!==t[e])return!1;return!0},String.prototype.count=function(t){return this.split(t).length-1},String.prototype.padStart||(String.prototype.padStart=function(t,e){return t|=0,e=String(void 0!==e?e:" "),this.length>t?String(this):((t-=this.length)>e.length&&(e+=e.repeat(t/e.length)),e.slice(0,t)+String(this))}),String.prototype.padEnd||(String.prototype.padEnd=function(t,e){return t|=0,e=String(void 0!==e?e:" "),this.length>t?String(this):((t-=this.length)>e.length&&(e+=e.repeat(t/e.length)),String(this)+e.slice(0,t))});const UB=function(t){function e(){var t,n,i,o;r(this,e);for(var a=arguments.length,u=new Array(a),f=0;f<a;f++)u[f]=arguments[f];return n=this,i=e,o=[].concat(u),i=s(i),(t=c(n,LB()?Reflect.construct(i,o||[],s(n).constructor):i.apply(n,o))).type="DishError",Error.captureStackTrace&&Error.captureStackTrace(t,e),t}return l(e,t),u(e)}(function(t){function e(){var e=Reflect.construct(t,Array.from(arguments));return Object.setPrototypeOf(e,Object.getPrototypeOf(this)),e}return e.prototype=Object.create(t.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t,e}(Error));var $B=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,jB=Math.ceil,zB=Math.floor,HB="[BigNumber Error] ",qB=HB+"Number primitive has more than 15 significant digits: ",YB=1e14,GB=14,VB=9007199254740991,WB=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],XB=1e7,JB=1e9;function ZB(t){var e=0|t;return t>0||t===e?e:e-1}function KB(t){for(var e,n,r=1,i=t.length,o=t[0]+"";r<i;){for(e=t[r++]+"",n=GB-e.length;n--;e="0"+e);o+=e}for(i=o.length;48===o.charCodeAt(--i););return o.slice(0,i+1||1)}function QB(t,e){var n,r,i=t.c,o=e.c,a=t.s,u=e.s,c=t.e,s=e.e;if(!a||!u)return null;if(n=i&&!i[0],r=o&&!o[0],n||r)return n?r?0:-u:a;if(a!=u)return a;if(n=a<0,r=c==s,!i||!o)return r?0:!i^n?1:-1;if(!r)return c>s^n?1:-1;for(u=(c=i.length)<(s=o.length)?c:s,a=0;a<u;a++)if(i[a]!=o[a])return i[a]>o[a]^n?1:-1;return c==s?0:c>s^n?1:-1}function tT(t,e,n,r){if(t<e||t>n||t!==zB(t))throw Error(HB+(r||"Argument")+("number"==typeof t?t<e||t>n?" out of range: ":" not an integer: ":" not a primitive number: ")+String(t))}function eT(t){var e=t.c.length-1;return ZB(t.e/GB)==e&&t.c[e]%2!=0}function nT(t,e){return(t.length>1?t.charAt(0)+"."+t.slice(1):t)+(e<0?"e":"e+")+e}function rT(t,e,n){var r,i;if(e<0){for(i=n+".";++e;i+=n);t=i+t}else if(++e>(r=t.length)){for(i=n,e-=r;--e;i+=n);t+=i}else e<r&&(t=t.slice(0,e)+"."+t.slice(e));return t}var iT=function t(e){var n,r,i,o,a,u,c,s,f,l,h=B.prototype={constructor:B,toString:null,valueOf:null},d=new B(1),p=20,g=4,y=-7,m=21,v=-1e7,b=1e7,x=!1,w=1,_=0,A={prefix:"",groupSize:3,secondaryGroupSize:0,groupSeparator:",",decimalSeparator:".",fractionGroupSize:0,fractionGroupSeparator:" ",suffix:""},E="0123456789abcdefghijklmnopqrstuvwxyz",M=!0;function B(t,e){var n,o,a,u,c,s,f,l,h=this;if(!(h instanceof B))return new B(t,e);if(null==e){if(t&&!0===t._isBigNumber)return h.s=t.s,void(!t.c||t.e>b?h.c=h.e=null:t.e<v?h.c=[h.e=0]:(h.e=t.e,h.c=t.c.slice()));if((s="number"==typeof t)&&0*t==0){if(h.s=1/t<0?(t=-t,-1):1,t===~~t){for(u=0,c=t;c>=10;c/=10,u++);return void(u>b?h.c=h.e=null:(h.e=u,h.c=[t]))}l=String(t)}else{if(!$B.test(l=String(t)))return i(h,l,s);h.s=45==l.charCodeAt(0)?(l=l.slice(1),-1):1}(u=l.indexOf("."))>-1&&(l=l.replace(".","")),(c=l.search(/e/i))>0?(u<0&&(u=c),u+=+l.slice(c+1),l=l.substring(0,c)):u<0&&(u=l.length)}else{if(tT(e,2,E.length,"Base"),10==e&&M)return S(h=new B(t),p+h.e+1,g);if(l=String(t),s="number"==typeof t){if(0*t!=0)return i(h,l,s,e);if(h.s=1/t<0?(l=l.slice(1),-1):1,B.DEBUG&&l.replace(/^0\.0*|\./,"").length>15)throw Error(qB+t)}else h.s=45===l.charCodeAt(0)?(l=l.slice(1),-1):1;for(n=E.slice(0,e),u=c=0,f=l.length;c<f;c++)if(n.indexOf(o=l.charAt(c))<0){if("."==o){if(c>u){u=f;continue}}else if(!a&&(l==l.toUpperCase()&&(l=l.toLowerCase())||l==l.toLowerCase()&&(l=l.toUpperCase()))){a=!0,c=-1,u=0;continue}return i(h,String(t),s,e)}s=!1,(u=(l=r(l,e,10,h.s)).indexOf("."))>-1?l=l.replace(".",""):u=l.length}for(c=0;48===l.charCodeAt(c);c++);for(f=l.length;48===l.charCodeAt(--f););if(l=l.slice(c,++f)){if(f-=c,s&&B.DEBUG&&f>15&&(t>VB||t!==zB(t)))throw Error(qB+h.s*t);if((u=u-c-1)>b)h.c=h.e=null;else if(u<v)h.c=[h.e=0];else{if(h.e=u,h.c=[],c=(u+1)%GB,u<0&&(c+=GB),c<f){for(c&&h.c.push(+l.slice(0,c)),f-=GB;c<f;)h.c.push(+l.slice(c,c+=GB));c=GB-(l=l.slice(c)).length}else c-=f;for(;c--;l+="0");h.c.push(+l)}}else h.c=[h.e=0]}function T(t,e,n,r){var i,o,a,u,c;if(null==n?n=g:tT(n,0,8),!t.c)return t.toString();if(i=t.c[0],a=t.e,null==e)c=KB(t.c),c=1==r||2==r&&(a<=y||a>=m)?nT(c,a):rT(c,a,"0");else if(o=(t=S(new B(t),e,n)).e,u=(c=KB(t.c)).length,1==r||2==r&&(e<=o||o<=y)){for(;u<e;c+="0",u++);c=nT(c,o)}else if(e-=a,c=rT(c,o,"0"),o+1>u){if(--e>0)for(c+=".";e--;c+="0");}else if((e+=o-u)>0)for(o+1==u&&(c+=".");e--;c+="0");return t.s<0&&i?"-"+c:c}function k(t,e){for(var n,r,i=1,o=new B(t[0]);i<t.length;i++)(!(r=new B(t[i])).s||(n=QB(o,r))===e||0===n&&o.s===e)&&(o=r);return o}function F(t,e,n){for(var r=1,i=e.length;!e[--i];e.pop());for(i=e[0];i>=10;i/=10,r++);return(n=r+n*GB-1)>b?t.c=t.e=null:n<v?t.c=[t.e=0]:(t.e=n,t.c=e),t}function S(t,e,n,r){var i,o,a,u,c,s,f,l=t.c,h=WB;if(l){t:{for(i=1,u=l[0];u>=10;u/=10,i++);if((o=e-i)<0)o+=GB,a=e,c=l[s=0],f=zB(c/h[i-a-1]%10);else if((s=jB((o+1)/GB))>=l.length){if(!r)break t;for(;l.length<=s;l.push(0));c=f=0,i=1,a=(o%=GB)-GB+1}else{for(c=u=l[s],i=1;u>=10;u/=10,i++);f=(a=(o%=GB)-GB+i)<0?0:zB(c/h[i-a-1]%10)}if(r=r||e<0||null!=l[s+1]||(a<0?c:c%h[i-a-1]),r=n<4?(f||r)&&(0==n||n==(t.s<0?3:2)):f>5||5==f&&(4==n||r||6==n&&(o>0?a>0?c/h[i-a]:0:l[s-1])%10&1||n==(t.s<0?8:7)),e<1||!l[0])return l.length=0,r?(e-=t.e+1,l[0]=h[(GB-e%GB)%GB],t.e=-e||0):l[0]=t.e=0,t;if(0==o?(l.length=s,u=1,s--):(l.length=s+1,u=h[GB-o],l[s]=a>0?zB(c/h[i-a]%h[a])*u:0),r)for(;;){if(0==s){for(o=1,a=l[0];a>=10;a/=10,o++);for(a=l[0]+=u,u=1;a>=10;a/=10,u++);o!=u&&(t.e++,l[0]==YB&&(l[0]=1));break}if(l[s]+=u,l[s]!=YB)break;l[s--]=0,u=1}for(o=l.length;0===l[--o];l.pop());}t.e>b?t.c=t.e=null:t.e<v&&(t.c=[t.e=0])}return t}function N(t){var e,n=t.e;return null===n?t.toString():(e=KB(t.c),e=n<=y||n>=m?nT(e,n):rT(e,n,"0"),t.s<0?"-"+e:e)}return B.clone=t,B.ROUND_UP=0,B.ROUND_DOWN=1,B.ROUND_CEIL=2,B.ROUND_FLOOR=3,B.ROUND_HALF_UP=4,B.ROUND_HALF_DOWN=5,B.ROUND_HALF_EVEN=6,B.ROUND_HALF_CEIL=7,B.ROUND_HALF_FLOOR=8,B.EUCLID=9,B.config=B.set=function(t){var e,n;if(null!=t){if("object"!=typeof t)throw Error(HB+"Object expected: "+t);if(t.hasOwnProperty(e="DECIMAL_PLACES")&&(tT(n=t[e],0,JB,e),p=n),t.hasOwnProperty(e="ROUNDING_MODE")&&(tT(n=t[e],0,8,e),g=n),t.hasOwnProperty(e="EXPONENTIAL_AT")&&((n=t[e])&&n.pop?(tT(n[0],-JB,0,e),tT(n[1],0,JB,e),y=n[0],m=n[1]):(tT(n,-JB,JB,e),y=-(m=n<0?-n:n))),t.hasOwnProperty(e="RANGE"))if((n=t[e])&&n.pop)tT(n[0],-JB,-1,e),tT(n[1],1,JB,e),v=n[0],b=n[1];else{if(tT(n,-JB,JB,e),!n)throw Error(HB+e+" cannot be zero: "+n);v=-(b=n<0?-n:n)}if(t.hasOwnProperty(e="CRYPTO")){if((n=t[e])!==!!n)throw Error(HB+e+" not true or false: "+n);if(n){if("undefined"==typeof crypto||!crypto||!crypto.getRandomValues&&!crypto.randomBytes)throw x=!n,Error(HB+"crypto unavailable");x=n}else x=n}if(t.hasOwnProperty(e="MODULO_MODE")&&(tT(n=t[e],0,9,e),w=n),t.hasOwnProperty(e="POW_PRECISION")&&(tT(n=t[e],0,JB,e),_=n),t.hasOwnProperty(e="FORMAT")){if("object"!=typeof(n=t[e]))throw Error(HB+e+" not an object: "+n);A=n}if(t.hasOwnProperty(e="ALPHABET")){if("string"!=typeof(n=t[e])||/^.?$|[+\-.\s]|(.).*\1/.test(n))throw Error(HB+e+" invalid: "+n);M="0123456789"==n.slice(0,10),E=n}}return{DECIMAL_PLACES:p,ROUNDING_MODE:g,EXPONENTIAL_AT:[y,m],RANGE:[v,b],CRYPTO:x,MODULO_MODE:w,POW_PRECISION:_,FORMAT:A,ALPHABET:E}},B.isBigNumber=function(t){if(!t||!0!==t._isBigNumber)return!1;if(!B.DEBUG)return!0;var e,n,r=t.c,i=t.e,o=t.s;t:if("[object Array]"=={}.toString.call(r)){if((1===o||-1===o)&&i>=-JB&&i<=JB&&i===zB(i)){if(0===r[0]){if(0===i&&1===r.length)return!0;break t}if((e=(i+1)%GB)<1&&(e+=GB),String(r[0]).length==e){for(e=0;e<r.length;e++)if((n=r[e])<0||n>=YB||n!==zB(n))break t;if(0!==n)return!0}}}else if(null===r&&null===i&&(null===o||1===o||-1===o))return!0;throw Error(HB+"Invalid BigNumber: "+t)},B.maximum=B.max=function(){return k(arguments,-1)},B.minimum=B.min=function(){return k(arguments,1)},B.random=(o=9007199254740992,a=Math.random()*o&2097151?function(){return zB(Math.random()*o)}:function(){return 8388608*(1073741824*Math.random()|0)+(8388608*Math.random()|0)},function(t){var e,n,r,i,o,u=0,c=[],s=new B(d);if(null==t?t=p:tT(t,0,JB),i=jB(t/GB),x)if(crypto.getRandomValues){for(e=crypto.getRandomValues(new Uint32Array(i*=2));u<i;)(o=131072*e[u]+(e[u+1]>>>11))>=9e15?(n=crypto.getRandomValues(new Uint32Array(2)),e[u]=n[0],e[u+1]=n[1]):(c.push(o%1e14),u+=2);u=i/2}else{if(!crypto.randomBytes)throw x=!1,Error(HB+"crypto unavailable");for(e=crypto.randomBytes(i*=7);u<i;)(o=281474976710656*(31&e[u])+1099511627776*e[u+1]+4294967296*e[u+2]+16777216*e[u+3]+(e[u+4]<<16)+(e[u+5]<<8)+e[u+6])>=9e15?crypto.randomBytes(7).copy(e,u):(c.push(o%1e14),u+=7);u=i/7}if(!x)for(;u<i;)(o=a())<9e15&&(c[u++]=o%1e14);for(i=c[--u],t%=GB,i&&t&&(o=WB[GB-t],c[u]=zB(i/o)*o);0===c[u];c.pop(),u--);if(u<0)c=[r=0];else{for(r=-1;0===c[0];c.splice(0,1),r-=GB);for(u=1,o=c[0];o>=10;o/=10,u++);u<GB&&(r-=GB-u)}return s.e=r,s.c=c,s}),B.sum=function(){for(var t=1,e=arguments,n=new B(e[0]);t<e.length;)n=n.plus(e[t++]);return n},r=function(){var t="0123456789";function e(t,e,n,r){for(var i,o,a=[0],u=0,c=t.length;u<c;){for(o=a.length;o--;a[o]*=e);for(a[0]+=r.indexOf(t.charAt(u++)),i=0;i<a.length;i++)a[i]>n-1&&(null==a[i+1]&&(a[i+1]=0),a[i+1]+=a[i]/n|0,a[i]%=n)}return a.reverse()}return function(r,i,o,a,u){var c,s,f,l,h,d,y,m,v=r.indexOf("."),b=p,x=g;for(v>=0&&(l=_,_=0,r=r.replace(".",""),d=(m=new B(i)).pow(r.length-v),_=l,m.c=e(rT(KB(d.c),d.e,"0"),10,o,t),m.e=m.c.length),f=l=(y=e(r,i,o,u?(c=E,t):(c=t,E))).length;0==y[--l];y.pop());if(!y[0])return c.charAt(0);if(v<0?--f:(d.c=y,d.e=f,d.s=a,y=(d=n(d,m,b,x,o)).c,h=d.r,f=d.e),v=y[s=f+b+1],l=o/2,h=h||s<0||null!=y[s+1],h=x<4?(null!=v||h)&&(0==x||x==(d.s<0?3:2)):v>l||v==l&&(4==x||h||6==x&&1&y[s-1]||x==(d.s<0?8:7)),s<1||!y[0])r=h?rT(c.charAt(1),-b,c.charAt(0)):c.charAt(0);else{if(y.length=s,h)for(--o;++y[--s]>o;)y[s]=0,s||(++f,y=[1].concat(y));for(l=y.length;!y[--l];);for(v=0,r="";v<=l;r+=c.charAt(y[v++]));r=rT(r,f,c.charAt(0))}return r}}(),n=function(){function t(t,e,n){var r,i,o,a,u=0,c=t.length,s=e%XB,f=e/XB|0;for(t=t.slice();c--;)u=((i=s*(o=t[c]%XB)+(r=f*o+(a=t[c]/XB|0)*s)%XB*XB+u)/n|0)+(r/XB|0)+f*a,t[c]=i%n;return u&&(t=[u].concat(t)),t}function e(t,e,n,r){var i,o;if(n!=r)o=n>r?1:-1;else for(i=o=0;i<n;i++)if(t[i]!=e[i]){o=t[i]>e[i]?1:-1;break}return o}function n(t,e,n,r){for(var i=0;n--;)t[n]-=i,i=t[n]<e[n]?1:0,t[n]=i*r+t[n]-e[n];for(;!t[0]&&t.length>1;t.splice(0,1));}return function(r,i,o,a,u){var c,s,f,l,h,d,p,g,y,m,v,b,x,w,_,A,E,M=r.s==i.s?1:-1,T=r.c,k=i.c;if(!(T&&T[0]&&k&&k[0]))return new B(r.s&&i.s&&(T?!k||T[0]!=k[0]:k)?T&&0==T[0]||!k?0*M:M/0:NaN);for(y=(g=new B(M)).c=[],M=o+(s=r.e-i.e)+1,u||(u=YB,s=ZB(r.e/GB)-ZB(i.e/GB),M=M/GB|0),f=0;k[f]==(T[f]||0);f++);if(k[f]>(T[f]||0)&&s--,M<0)y.push(1),l=!0;else{for(w=T.length,A=k.length,f=0,M+=2,(h=zB(u/(k[0]+1)))>1&&(k=t(k,h,u),T=t(T,h,u),A=k.length,w=T.length),x=A,v=(m=T.slice(0,A)).length;v<A;m[v++]=0);E=k.slice(),E=[0].concat(E),_=k[0],k[1]>=u/2&&_++;do{if(h=0,(c=e(k,m,A,v))<0){if(b=m[0],A!=v&&(b=b*u+(m[1]||0)),(h=zB(b/_))>1)for(h>=u&&(h=u-1),p=(d=t(k,h,u)).length,v=m.length;1==e(d,m,p,v);)h--,n(d,A<p?E:k,p,u),p=d.length,c=1;else 0==h&&(c=h=1),p=(d=k.slice()).length;if(p<v&&(d=[0].concat(d)),n(m,d,v,u),v=m.length,-1==c)for(;e(k,m,A,v)<1;)h++,n(m,A<v?E:k,v,u),v=m.length}else 0===c&&(h++,m=[0]);y[f++]=h,m[0]?m[v++]=T[x]||0:(m=[T[x]],v=1)}while((x++<w||null!=m[0])&&M--);l=null!=m[0],y[0]||y.splice(0,1)}if(u==YB){for(f=1,M=y[0];M>=10;M/=10,f++);S(g,o+(g.e=f+s*GB-1)+1,a,l)}else g.e=s,g.r=+l;return g}}(),u=/^(-?)0([xbo])(?=\w[\w.]*$)/i,c=/^([^.]+)\.$/,s=/^\.([^.]+)$/,f=/^-?(Infinity|NaN)$/,l=/^\s*\+(?=[\w.])|^\s+|\s+$/g,i=function(t,e,n,r){var i,o=n?e:e.replace(l,"");if(f.test(o))t.s=isNaN(o)?null:o<0?-1:1;else{if(!n&&(o=o.replace(u,(function(t,e,n){return i="x"==(n=n.toLowerCase())?16:"b"==n?2:8,r&&r!=i?t:e})),r&&(i=r,o=o.replace(c,"$1").replace(s,"0.$1")),e!=o))return new B(o,i);if(B.DEBUG)throw Error(HB+"Not a"+(r?" base "+r:"")+" number: "+e);t.s=null}t.c=t.e=null},h.absoluteValue=h.abs=function(){var t=new B(this);return t.s<0&&(t.s=1),t},h.comparedTo=function(t,e){return QB(this,new B(t,e))},h.decimalPlaces=h.dp=function(t,e){var n,r,i,o=this;if(null!=t)return tT(t,0,JB),null==e?e=g:tT(e,0,8),S(new B(o),t+o.e+1,e);if(!(n=o.c))return null;if(r=((i=n.length-1)-ZB(this.e/GB))*GB,i=n[i])for(;i%10==0;i/=10,r--);return r<0&&(r=0),r},h.dividedBy=h.div=function(t,e){return n(this,new B(t,e),p,g)},h.dividedToIntegerBy=h.idiv=function(t,e){return n(this,new B(t,e),0,1)},h.exponentiatedBy=h.pow=function(t,e){var n,r,i,o,a,u,c,s,f=this;if((t=new B(t)).c&&!t.isInteger())throw Error(HB+"Exponent not an integer: "+N(t));if(null!=e&&(e=new B(e)),a=t.e>14,!f.c||!f.c[0]||1==f.c[0]&&!f.e&&1==f.c.length||!t.c||!t.c[0])return s=new B(Math.pow(+N(f),a?t.s*(2-eT(t)):+N(t))),e?s.mod(e):s;if(u=t.s<0,e){if(e.c?!e.c[0]:!e.s)return new B(NaN);(r=!u&&f.isInteger()&&e.isInteger())&&(f=f.mod(e))}else{if(t.e>9&&(f.e>0||f.e<-1||(0==f.e?f.c[0]>1||a&&f.c[1]>=24e7:f.c[0]<8e13||a&&f.c[0]<=9999975e7)))return o=f.s<0&&eT(t)?-0:0,f.e>-1&&(o=1/o),new B(u?1/o:o);_&&(o=jB(_/GB+2))}for(a?(n=new B(.5),u&&(t.s=1),c=eT(t)):c=(i=Math.abs(+N(t)))%2,s=new B(d);;){if(c){if(!(s=s.times(f)).c)break;o?s.c.length>o&&(s.c.length=o):r&&(s=s.mod(e))}if(i){if(0===(i=zB(i/2)))break;c=i%2}else if(S(t=t.times(n),t.e+1,1),t.e>14)c=eT(t);else{if(0==(i=+N(t)))break;c=i%2}f=f.times(f),o?f.c&&f.c.length>o&&(f.c.length=o):r&&(f=f.mod(e))}return r?s:(u&&(s=d.div(s)),e?s.mod(e):o?S(s,_,g,void 0):s)},h.integerValue=function(t){var e=new B(this);return null==t?t=g:tT(t,0,8),S(e,e.e+1,t)},h.isEqualTo=h.eq=function(t,e){return 0===QB(this,new B(t,e))},h.isFinite=function(){return!!this.c},h.isGreaterThan=h.gt=function(t,e){return QB(this,new B(t,e))>0},h.isGreaterThanOrEqualTo=h.gte=function(t,e){return 1===(e=QB(this,new B(t,e)))||0===e},h.isInteger=function(){return!!this.c&&ZB(this.e/GB)>this.c.length-2},h.isLessThan=h.lt=function(t,e){return QB(this,new B(t,e))<0},h.isLessThanOrEqualTo=h.lte=function(t,e){return-1===(e=QB(this,new B(t,e)))||0===e},h.isNaN=function(){return!this.s},h.isNegative=function(){return this.s<0},h.isPositive=function(){return this.s>0},h.isZero=function(){return!!this.c&&0==this.c[0]},h.minus=function(t,e){var n,r,i,o,a=this,u=a.s;if(e=(t=new B(t,e)).s,!u||!e)return new B(NaN);if(u!=e)return t.s=-e,a.plus(t);var c=a.e/GB,s=t.e/GB,f=a.c,l=t.c;if(!c||!s){if(!f||!l)return f?(t.s=-e,t):new B(l?a:NaN);if(!f[0]||!l[0])return l[0]?(t.s=-e,t):new B(f[0]?a:3==g?-0:0)}if(c=ZB(c),s=ZB(s),f=f.slice(),u=c-s){for((o=u<0)?(u=-u,i=f):(s=c,i=l),i.reverse(),e=u;e--;i.push(0));i.reverse()}else for(r=(o=(u=f.length)<(e=l.length))?u:e,u=e=0;e<r;e++)if(f[e]!=l[e]){o=f[e]<l[e];break}if(o&&(i=f,f=l,l=i,t.s=-t.s),(e=(r=l.length)-(n=f.length))>0)for(;e--;f[n++]=0);for(e=YB-1;r>u;){if(f[--r]<l[r]){for(n=r;n&&!f[--n];f[n]=e);--f[n],f[r]+=YB}f[r]-=l[r]}for(;0==f[0];f.splice(0,1),--s);return f[0]?F(t,f,s):(t.s=3==g?-1:1,t.c=[t.e=0],t)},h.modulo=h.mod=function(t,e){var r,i,o=this;return t=new B(t,e),!o.c||!t.s||t.c&&!t.c[0]?new B(NaN):!t.c||o.c&&!o.c[0]?new B(o):(9==w?(i=t.s,t.s=1,r=n(o,t,0,3),t.s=i,r.s*=i):r=n(o,t,0,w),(t=o.minus(r.times(t))).c[0]||1!=w||(t.s=o.s),t)},h.multipliedBy=h.times=function(t,e){var n,r,i,o,a,u,c,s,f,l,h,d,p,g,y,m=this,v=m.c,b=(t=new B(t,e)).c;if(!(v&&b&&v[0]&&b[0]))return!m.s||!t.s||v&&!v[0]&&!b||b&&!b[0]&&!v?t.c=t.e=t.s=null:(t.s*=m.s,v&&b?(t.c=[0],t.e=0):t.c=t.e=null),t;for(r=ZB(m.e/GB)+ZB(t.e/GB),t.s*=m.s,(c=v.length)<(l=b.length)&&(p=v,v=b,b=p,i=c,c=l,l=i),i=c+l,p=[];i--;p.push(0));for(g=YB,y=XB,i=l;--i>=0;){for(n=0,h=b[i]%y,d=b[i]/y|0,o=i+(a=c);o>i;)n=((s=h*(s=v[--a]%y)+(u=d*s+(f=v[a]/y|0)*h)%y*y+p[o]+n)/g|0)+(u/y|0)+d*f,p[o--]=s%g;p[o]=n}return n?++r:p.splice(0,1),F(t,p,r)},h.negated=function(){var t=new B(this);return t.s=-t.s||null,t},h.plus=function(t,e){var n,r=this,i=r.s;if(e=(t=new B(t,e)).s,!i||!e)return new B(NaN);if(i!=e)return t.s=-e,r.minus(t);var o=r.e/GB,a=t.e/GB,u=r.c,c=t.c;if(!o||!a){if(!u||!c)return new B(i/0);if(!u[0]||!c[0])return c[0]?t:new B(u[0]?r:0*i)}if(o=ZB(o),a=ZB(a),u=u.slice(),i=o-a){for(i>0?(a=o,n=c):(i=-i,n=u),n.reverse();i--;n.push(0));n.reverse()}for((i=u.length)-(e=c.length)<0&&(n=c,c=u,u=n,e=i),i=0;e;)i=(u[--e]=u[e]+c[e]+i)/YB|0,u[e]=YB===u[e]?0:u[e]%YB;return i&&(u=[i].concat(u),++a),F(t,u,a)},h.precision=h.sd=function(t,e){var n,r,i,o=this;if(null!=t&&t!==!!t)return tT(t,1,JB),null==e?e=g:tT(e,0,8),S(new B(o),t,e);if(!(n=o.c))return null;if(r=(i=n.length-1)*GB+1,i=n[i]){for(;i%10==0;i/=10,r--);for(i=n[0];i>=10;i/=10,r++);}return t&&o.e+1>r&&(r=o.e+1),r},h.shiftedBy=function(t){return tT(t,-9007199254740991,VB),this.times("1e"+t)},h.squareRoot=h.sqrt=function(){var t,e,r,i,o,a=this,u=a.c,c=a.s,s=a.e,f=p+4,l=new B("0.5");if(1!==c||!u||!u[0])return new B(!c||c<0&&(!u||u[0])?NaN:u?a:1/0);if(0==(c=Math.sqrt(+N(a)))||c==1/0?(((e=KB(u)).length+s)%2==0&&(e+="0"),c=Math.sqrt(+e),s=ZB((s+1)/2)-(s<0||s%2),r=new B(e=c==1/0?"5e"+s:(e=c.toExponential()).slice(0,e.indexOf("e")+1)+s)):r=new B(c+""),r.c[0])for((c=(s=r.e)+f)<3&&(c=0);;)if(o=r,r=l.times(o.plus(n(a,o,f,1))),KB(o.c).slice(0,c)===(e=KB(r.c)).slice(0,c)){if(r.e<s&&--c,"9999"!=(e=e.slice(c-3,c+1))&&(i||"4999"!=e)){+e&&(+e.slice(1)||"5"!=e.charAt(0))||(S(r,r.e+p+2,1),t=!r.times(r).eq(a));break}if(!i&&(S(o,o.e+p+2,0),o.times(o).eq(a))){r=o;break}f+=4,c+=4,i=1}return S(r,r.e+p+1,g,t)},h.toExponential=function(t,e){return null!=t&&(tT(t,0,JB),t++),T(this,t,e,1)},h.toFixed=function(t,e){return null!=t&&(tT(t,0,JB),t=t+this.e+1),T(this,t,e)},h.toFormat=function(t,e,n){var r,i=this;if(null==n)null!=t&&e&&"object"==typeof e?(n=e,e=null):t&&"object"==typeof t?(n=t,t=e=null):n=A;else if("object"!=typeof n)throw Error(HB+"Argument not an object: "+n);if(r=i.toFixed(t,e),i.c){var o,a=r.split("."),u=+n.groupSize,c=+n.secondaryGroupSize,s=n.groupSeparator||"",f=a[0],l=a[1],h=i.s<0,d=h?f.slice(1):f,p=d.length;if(c&&(o=u,u=c,c=o,p-=o),u>0&&p>0){for(o=p%u||u,f=d.substr(0,o);o<p;o+=u)f+=s+d.substr(o,u);c>0&&(f+=s+d.slice(o)),h&&(f="-"+f)}r=l?f+(n.decimalSeparator||"")+((c=+n.fractionGroupSize)?l.replace(new RegExp("\\d{"+c+"}\\B","g"),"$&"+(n.fractionGroupSeparator||"")):l):f}return(n.prefix||"")+r+(n.suffix||"")},h.toFraction=function(t){var e,r,i,o,a,u,c,s,f,l,h,p,y=this,m=y.c;if(null!=t&&(!(c=new B(t)).isInteger()&&(c.c||1!==c.s)||c.lt(d)))throw Error(HB+"Argument "+(c.isInteger()?"out of range: ":"not an integer: ")+N(c));if(!m)return new B(y);for(e=new B(d),f=r=new B(d),i=s=new B(d),p=KB(m),a=e.e=p.length-y.e-1,e.c[0]=WB[(u=a%GB)<0?GB+u:u],t=!t||c.comparedTo(e)>0?a>0?e:f:c,u=b,b=1/0,c=new B(p),s.c[0]=0;l=n(c,e,0,1),1!=(o=r.plus(l.times(i))).comparedTo(t);)r=i,i=o,f=s.plus(l.times(o=f)),s=o,e=c.minus(l.times(o=e)),c=o;return o=n(t.minus(r),i,0,1),s=s.plus(o.times(f)),r=r.plus(o.times(i)),s.s=f.s=y.s,h=n(f,i,a*=2,g).minus(y).abs().comparedTo(n(s,r,a,g).minus(y).abs())<1?[f,i]:[s,r],b=u,h},h.toNumber=function(){return+N(this)},h.toPrecision=function(t,e){return null!=t&&tT(t,1,JB),T(this,t,e,2)},h.toString=function(t){var e,n=this,i=n.s,o=n.e;return null===o?i?(e="Infinity",i<0&&(e="-"+e)):e="NaN":(null==t?e=o<=y||o>=m?nT(KB(n.c),o):rT(KB(n.c),o,"0"):10===t&&M?e=rT(KB((n=S(new B(n),p+o+1,g)).c),n.e,"0"):(tT(t,2,E.length,"Base"),e=r(rT(KB(n.c),o,"0"),10,t,i,!0)),i<0&&n.c[0]&&(e="-"+e)),e},h.valueOf=h.toJSON=function(){return N(this)},h._isBigNumber=!0,h[Symbol.toStringTag]="BigNumber",h[Symbol.for("nodejs.util.inspect.custom")]=h.valueOf,null!=e&&B.set(e),B}();const oT=iT;var aT=function(){function t(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;r(this,t),this.bytes=e,this.length=this.bytes.length,this.position=n,this.bitPos=i}return u(t,[{key:"clone",value:function(){return new t(this.bytes,this.position,this.bitPos)}},{key:"getBytes",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;if(!(this.position>this.length)){var e=null!==t?this.position+t:this.length,n=this.bytes.slice(this.position,e);return this.position=e,this.bitPos=0,n}}},{key:"readString",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(!(this.position>this.length)){-1===t&&(t=this.length-this.position);for(var e="",n=this.position;n<this.position+t;n++){var r=this.bytes[n];if(0===r)break;e+=String.fromCharCode(r)}return this.position+=t,this.bitPos=0,e}}},{key:"readInt",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"be";if(!(this.position>this.length)){var n=0;if("be"===e)for(var r=this.position;r<this.position+t;r++)n<<=8,n|=this.bytes[r];else for(var i=this.position+t-1;i>=this.position;i--)n<<=8,n|=this.bytes[i];return this.position+=t,this.bitPos=0,n}}},{key:"readBits",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"be";if(!(this.position>this.length)){var n,r=0,i=0;for(r=this.bytes[this.position++]&(n=this.bitPos,"be"===e?(1<<8-n)-1:256-(1<<n)),"be"!==e&&(r>>>=this.bitPos),i=8-this.bitPos,this.bitPos=0;i<t;)"be"===e?r=r<<i|this.bytes[this.position++]:r|=this.bytes[this.position++]<<i,i+=8;if(i>t){var o=i-t;"be"===e?r>>>=o:r&=(1<<t)-1,i-=o,this.position--,this.bitPos=8-o}return r}}},{key:"continueUntil",value:function(t){if(!(this.position>this.length))if(this.bitPos=0,"number"!=typeof t){var e=t.length,n=t[e-1];this.position=e;for(var r,i=function(t,e){var n=new Array;return t.forEach((function(t,r){n[t]=e-r})),n}(t,e);this.position<this.length;){for(;this.position<this.length&&this.bytes[this.position++]!==n;);r=!0;for(var o=e-1;o>=0;o--)if(this.bytes[this.position-e+o]!==t[o]){r=!1,this.position+=i[t[o]];break}if(r){this.position-=e;break}}}else for(;++this.position<this.length&&this.bytes[this.position]!==t;);}},{key:"consumeWhile",value:function(t){for(;this.position<this.length&&this.bytes[this.position]===t;)this.position++;this.bitPos=0}},{key:"consumeIf",value:function(t){this.bytes[this.position]===t&&(this.position++,this.bitPos=0)}},{key:"moveForwardsBy",value:function(t){var e=this.position+t;if(e<0||e>this.length)throw new Error("Cannot move to position "+e+" in stream. Out of bounds.");this.position=e,this.bitPos=0}},{key:"moveBackwardsBy",value:function(t){var e=this.position-t;if(e<0||e>this.length)throw new Error("Cannot move to position "+e+" in stream. Out of bounds.");this.position=e,this.bitPos=0}},{key:"moveBackwardsByBits",value:function(t){if(t<=this.bitPos)this.bitPos-=t;else for(this.bitPos>0&&(t-=this.bitPos,this.bitPos=0);t>0;)this.moveBackwardsBy(1),this.bitPos=8,this.moveBackwardsByBits(t),t-=8}},{key:"moveTo",value:function(t){if(t<0||t>this.length)throw new Error("Cannot move to position "+t+" in stream. Out of bounds.");this.position=t,this.bitPos=0}},{key:"hasMore",value:function(){return this.position<this.length}},{key:"carve",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.position;return this.bitPos>0&&e++,this.bytes.slice(t,e)}}])}();function uT(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 cT(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)?cT(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,i=function(){};return{s:i,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:i}}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,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,o=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw o}}}}function cT(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}var sT={Images:[{name:"Joint Photographic Experts Group image",extension:"jpg,jpeg,jpe,thm,mpo",mime:"image/jpeg",description:"",signature:{0:255,1:216,2:255,3:[192,196,219,221,224,225,226,227,228,229,231,232,234,235,236,237,238,254]},extractor:function(t,e){for(var n=new aT(t.slice(e));n.hasMore();){var r=n.getBytes(2);if(255!==r[0])throw new Error(`Invalid marker while parsing JPEG at pos ${n.position}: ${r}`);var i=0;switch(r[1]){case 216:case 1:break;case 217:return n.carve();case 192:case 193:case 194:case 195:case 196:case 197:case 198:case 199:case 200:case 201:case 202:case 203:case 204:case 205:case 206:case 207:case 219:case 222:case 224:case 225:case 226:case 227:case 228:case 229:case 230:case 231:case 232:case 233:case 234:case 235:case 236:case 237:case 238:case 239:case 254:i=n.readInt(2,"be"),n.position+=i-2;break;case 223:n.position++;break;case 220:case 221:n.position+=2;break;case 218:i=n.readInt(2,"be"),n.position+=i-2,n.continueUntil(255);break;default:n.continueUntil(255)}}throw new Error("Unable to parse JPEG successfully")}},{name:"Graphics Interchange Format image",extension:"gif",mime:"image/gif",description:"",signature:{0:71,1:73,2:70,3:56,4:[55,57],5:97},extractor:function(t,e){var n=new aT(t.slice(e));for(n.continueUntil([33,255]),n.continueUntil([33,249]),n.moveForwardsBy(2);n.hasMore();){for(n.moveForwardsBy(n.readInt(1)+1),n.moveForwardsBy(11);!Array.from(n.getBytes(2)).equals([33,249])&&(n.moveBackwardsBy(2),n.moveForwardsBy(n.readInt(1)),n.readInt(1));)n.moveBackwardsBy(1);if(59===n.readInt(1))break;n.moveForwardsBy(1)}return n.carve()}},{name:"Portable Network Graphics image",extension:"png",mime:"image/png",description:"",signature:{0:137,1:80,2:78,3:71,4:13,5:10,6:26,7:10},extractor:function(t,e){var n=new aT(t.slice(e));n.moveForwardsBy(8);for(var r=0,i="";"IEND"!==i;)r=n.readInt(4,"be"),i=n.readString(4),n.moveForwardsBy(r+4);return n.carve()}},{name:"WEBP Image",extension:"webp",mime:"image/webp",description:"",signature:{8:87,9:69,10:66,11:80},extractor:function(t,e){var n=new aT(t.slice(e));n.moveForwardsBy(4);var r=n.readInt(4,"le");return n.moveForwardsBy(r),n.carve()}},{name:"High Efficiency Image File Format",extension:"heic,heif",mime:"image/heif",description:"",signature:{0:0,1:0,2:0,3:[36,24],4:102,5:116,6:121,7:112,8:104,9:101,10:105,11:99},extractor:null},{name:"Camera Image File Format",extension:"crw",mime:"image/x-canon-crw",description:"",signature:{6:72,7:69,8:65,9:80,10:67,11:67,12:68,13:82},extractor:null},{name:"Canon CR2 raw image",extension:"cr2",mime:"image/x-canon-cr2",description:"",signature:[{0:73,1:73,2:42,3:0,8:67,9:82},{0:77,1:77,2:0,3:42,8:67,9:82}],extractor:null},{name:"Tagged Image File Format image",extension:"tif",mime:"image/tiff",description:"",signature:[{0:73,1:73,2:42,3:0},{0:77,1:77,2:0,3:42}],extractor:null},{name:"Bitmap image",extension:"bmp",mime:"image/bmp",description:"",signature:{0:66,1:77,7:0,9:0,14:[12,40,56,64,108,124],15:0,16:0,17:0},extractor:function(t,e){var n=new aT(t.slice(e));n.moveForwardsBy(2);var r=n.readInt(4,"le");return n.moveForwardsBy(r-6),n.carve()}},{name:"JPEG Extended Range image",extension:"jxr",mime:"image/vnd.ms-photo",description:"",signature:{0:73,1:73,2:188},extractor:null},{name:"Photoshop image",extension:"psd",mime:"image/vnd.adobe.photoshop",description:"",signature:{0:56,1:66,2:80,3:83,4:0,5:1,6:0,7:0,8:0,9:0,10:0,11:0},extractor:null},{name:"Photoshop Large Document",extension:"psb",mime:"application/x-photoshop",description:"",signature:{0:56,1:66,2:80,3:83,4:0,5:2,6:0,7:0,8:0,9:0,10:0,11:0,12:0},extractor:null},{name:"Paint Shop Pro image",extension:"psp",mime:"image/psp",description:"",signature:[{0:80,1:97,2:105,3:110,4:116,5:32,6:83,7:104,8:111,9:112,10:32,11:80,12:114,13:111,14:32,15:73,16:109},{0:126,1:66,2:75,3:0}],extractor:null},{name:"The GIMP image",extension:"xcf",mime:"image/x-xcf",description:"",signature:{0:103,1:105,2:109,3:112,4:32,5:120,6:99,7:102,8:32,9:[102,118],10:[105,48],11:[108,48],12:[101,49,50,51]},extractor:null},{name:"Icon image",extension:"ico",mime:"image/x-icon",description:"",signature:{0:0,1:0,2:1,3:0,4:[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21],5:0,6:[16,32,48,64,128],7:[16,32,48,64,128],9:0,10:[0,1]},extractor:function(t,e){var n=new aT(t.slice(e));n.moveTo(4);var r=n.readInt(2,"le");n.moveForwardsBy(8+16*(r-1));var i=n.readInt(4,"le"),o=n.readInt(4,"le");return n.moveTo(o+i),n.carve()}},{name:"Radiance High Dynamic Range image",extension:"hdr",mime:"image/vnd.radiance",description:"",signature:{0:35,1:63,2:82,3:65,4:68,5:73,6:65,7:78,8:67,9:69,10:10},extractor:null},{name:"Sony ARW image",extension:"arw",mime:"image/x-raw",description:"",signature:{0:5,1:0,2:0,3:0,4:65,5:87,6:49,7:46},extractor:null},{name:"Fujifilm Raw Image",extension:"raf",mime:"image/x-raw",description:"",signature:{0:70,1:85,2:74,3:73,4:70,5:73,6:76,7:77,8:67,9:67,10:68,11:45,12:82,13:65,14:87},extractor:null},{name:"Minolta RAW image",extension:"mrw",mime:"image/x-raw",description:"",signature:{0:0,1:77,2:82,3:77},extractor:null},{name:"Adobe Bridge Thumbnail Cache",extension:"bct",mime:"application/octet-stream",description:"",signature:{0:108,1:110,2:98,3:116,4:2,5:0,6:0,7:0},extractor:null},{name:"Microsoft Document Imaging",extension:"mdi",mime:"image/vnd.ms-modi",description:"",signature:{0:69,1:80,2:42,3:0},extractor:null},{name:"Joint Photographic Experts Group image (under Base64)",extension:"B64",mime:"application/octet-stream",description:"",signature:{0:47,1:57,2:106,3:47,4:52},extractor:null},{name:"Portable Network Graphics image (under Base64)",extension:"B64",mime:"application/octet-stream",description:"",signature:{0:105,1:86,2:66,3:79,4:82,5:119,6:48},extractor:null},{name:"AutoCAD Drawing",extension:"dwg,123d",mime:"application/acad",description:"",signature:{0:65,1:67,2:49,3:48,4:[48,49],5:[48,49,50,51,52,53],6:0},extractor:null},{name:"AutoCAD Drawing",extension:"dwg,dwt",mime:"application/acad",description:"",signature:[{0:65,1:67,2:49,3:48,4:49,5:56,6:0},{0:65,1:67,2:49,3:48,4:50,5:52,6:0},{0:65,1:67,2:49,3:48,4:50,5:55,6:0}],extractor:null},{name:"Targa Image",extension:"tga",mime:"image/x-targa",description:"",signature:[{0:84,1:82,2:85,3:69,4:86,5:73,6:83,7:73,8:79,9:78,10:45,11:88,12:70,13:73,14:76,15:69,16:46}],extractor:function(t,e){var n=new aT(t);n.moveTo(e-8);var r=n.readInt(4,"le"),i=n.readInt(4,"le");function o(t,e){for(var r=0;r<t;r++){n.moveBackwardsBy(1);var i=n.readInt(e,"le")-1;if(n.moveBackwardsBy(e),i===r)break}}return n.moveBackwardsBy(8),r||i?r?(o(65535,2),n.moveBackwardsBy(r)):i&&(o(4294967295,4),n.moveBackwardsBy(6),n.moveBackwardsBy(i)):(function(){n.moveBackwardsBy(5);for(var t=0;t<1048576&&n.readInt(2,"le")*n.readInt(2,"le")*n.readInt(1)/8!=t-1;t++)n.moveBackwardsBy(6)}(),n.moveBackwardsBy(17)),n.carve(n.position,e+18)}}],Video:[{name:"Matroska Multimedia Container",extension:"mkv",mime:"video/x-matroska",description:"",signature:{31:109,32:97,33:116,34:114,35:111,36:115,37:107,38:97},extractor:null},{name:"WEBM video",extension:"webm",mime:"video/webm",description:"",signature:{0:26,1:69,2:223,3:163},extractor:null},{name:"Flash MP4 video",extension:"f4v",mime:"video/mp4",description:"",signature:{4:102,5:116,6:121,7:112,8:[102,70],9:52,10:[118,86],11:32},extractor:null},{name:"MPEG-4 video",extension:"mp4",mime:"video/mp4",description:"",signature:[{0:0,1:0,2:0,3:[24,32],4:102,5:116,6:121,7:112},{0:51,1:103,2:112,3:53},{0:0,1:0,2:0,3:28,4:102,5:116,6:121,7:112,8:109,9:112,10:52,11:50,16:109,17:112,18:52,19:49,20:109,21:112,22:52,23:50,24:105,25:115,26:111,27:109}],extractor:null},{name:"M4V video",extension:"m4v",mime:"video/x-m4v",description:"",signature:{0:0,1:0,2:0,3:28,4:102,5:116,6:121,7:112,8:77,9:52,10:86},extractor:null},{name:"Quicktime video",extension:"mov",mime:"video/quicktime",description:"",signature:{0:0,1:0,2:0,3:20,4:102,5:116,6:121,7:112},extractor:null},{name:"Audio Video Interleave",extension:"avi",mime:"video/x-msvideo",description:"",signature:{0:82,1:73,2:70,3:70,8:65,9:86,10:73},extractor:null},{name:"Windows Media Video",extension:"wmv",mime:"video/x-ms-wmv",description:"",signature:{0:48,1:38,2:178,3:117,4:142,5:102,6:207,7:17,8:166,9:217},extractor:null},{name:"MPEG video",extension:"mpg",mime:"video/mpeg",description:"",signature:{0:0,1:0,2:1,3:186},extractor:null},{name:"Flash Video",extension:"flv",mime:"video/x-flv",description:"",signature:{0:70,1:76,2:86,3:1},extractor:function(t,e){var n=new aT(t.slice(e));n.moveForwardsBy(5);var r=n.readInt(4,"be");n.moveForwardsBy(r-9);for(var i=-11;n.hasMore();){var o=n.readInt(4,"be"),a=n.readInt(1);if([8,9,18].indexOf(a)<0){n.moveBackwardsBy(1);break}if(o!==i+11){n.moveBackwardsBy(i+11+5);break}i=n.readInt(3,"be"),n.moveForwardsBy(7+i)}return n.carve()}},{name:"OGG Video",extension:"ogv,ogm,opus,ogx",mime:"video/ogg",description:"",signature:[{0:79,1:103,2:103,3:83,4:0,5:2,28:1,29:118,30:105,31:100,32:101,33:111},{0:79,1:103,2:103,3:83,4:0,5:2,28:128,29:116,30:104,31:101,32:111,33:114,34:97},{0:79,1:103,2:103,3:83,4:0,5:2,28:102,29:105,30:115,31:104,32:101,33:97,34:100}],extractor:null}],Audio:[{name:"Waveform Audio",extension:"wav",mime:"audio/x-wav",description:"",signature:{0:82,1:73,2:70,3:70,8:87,9:65,10:86,11:69},extractor:function(t,e){var n=new aT(t.slice(e));return n.moveTo(4),n.moveTo(n.readInt(4,"le")+8),n.carve()}},{name:"OGG audio",extension:"ogg",mime:"audio/ogg",description:"",signature:{0:79,1:103,2:103,3:83},extractor:null},{name:"Musical Instrument Digital Interface audio",extension:"midi",mime:"audio/midi",description:"",signature:{0:77,1:84,2:104,3:100},extractor:null},{name:"MPEG-3 audio",extension:"mp3",mime:"audio/mpeg",description:"",signature:[{0:73,1:68,2:51},{0:255,1:251}],extractor:function(t,e){var n=new aT(t.slice(e)),r=["free",32e3,4e4,48e3,56e3,64e3,8e4,96e3,112e3,128e3,16e4,192e3,224e3,256e3,32e4,"bad"],i=[44100,48e3,32e3,"reserved"];if(n.getBytes(3).toString()===[73,68,51].toString()){n.moveTo(6);var o=n.readInt(1)<<21|n.readInt(1)<<14|n.readInt(1)<<7|n.readInt(1);n.moveForwardsBy(o)}else n.moveTo(0);for(;n.hasMore();){if(n.getBytes(3)===[84,65,71].toString()){n.moveForwardsBy(125);break}if(n.getBytes(2).toString()!==[255,251].toString()){n.moveBackwardsBy(2);break}var a=n.readInt(1),u=r[a>>4],c=i[(15&a)>>2],s=(2&a)>>1;if("free"===u||"bad"===u||"reserved"===c){n.moveBackwardsBy(1);break}var f=Math.floor(144*u/c+s);if(n.position+f>n.length){n.moveTo(n.length);break}n.moveForwardsBy(f-3)}return n.carve()}},{name:"MPEG-4 Part 14 audio",extension:"m4a",mime:"audio/m4a",description:"",signature:[{4:102,5:116,6:121,7:112,8:77,9:52,10:65},{0:77,1:52,2:65,3:32}],extractor:null},{name:"Free Lossless Audio Codec",extension:"flac",mime:"audio/x-flac",description:"",signature:{0:102,1:76,2:97,3:67},extractor:null},{name:"Adaptive Multi-Rate audio codec",extension:"amr",mime:"audio/amr",description:"",signature:{0:35,1:33,2:65,3:77,4:82,5:10},extractor:null},{name:"Audacity",extension:"au",mime:"audio/x-au",description:"",signature:{0:100,1:110,2:115,3:46,24:65,25:117,26:100,27:97,28:99,29:105,30:116,31:121,32:66,33:108,34:111,35:99,36:107,37:70,38:105,39:108,40:101},extractor:null},{name:"Audacity Block",extension:"auf",mime:"application/octet-stream",description:"",signature:{0:65,1:117,2:100,3:97,4:99,5:105,6:116,7:121,8:66,9:108,10:111,11:99,12:107,13:70,14:105,15:108,16:101},extractor:null},{name:"Audio Interchange File",extension:"aif",mime:"audio/x-aiff",description:"",signature:{0:70,1:79,2:82,3:77,8:65,9:73,10:70,11:70},extractor:null},{name:"Audio Interchange File (compressed)",extension:"aifc",mime:"audio/x-aifc",description:"",signature:{0:70,1:79,2:82,3:77,8:65,9:73,10:70,11:67},extractor:null}],Documents:[{name:"Portable Document Format",extension:"pdf",mime:"application/pdf",description:"",signature:{0:37,1:80,2:68,3:70},extractor:function(t,e){var n=new aT(t.slice(e));return n.continueUntil([37,37,69,79,70]),n.moveForwardsBy(5),n.consumeIf(13),n.consumeIf(10),n.carve()}},{name:"Portable Document Format (under Base64)",extension:"B64",mime:"application/octet-stream",description:"",signature:{0:65,1:74,2:86,3:66,4:69,5:82,6:105},extractor:null},{name:"Adobe PostScript",extension:"ps,eps,ai,pfa",mime:"application/postscript",description:"",signature:{0:37,1:33,2:80,3:83,4:45,5:65,6:100,7:111,8:98,9:101},extractor:null},{name:"PostScript",extension:"ps",mime:"application/postscript",description:"",signature:{0:37,1:33},extractor:null},{name:"Encapsulated PostScript",extension:"eps,ai",mime:"application/eps",description:"",signature:{0:197,1:208,2:211,3:198},extractor:null},{name:"Rich Text Format",extension:"rtf",mime:"application/rtf",description:"",signature:{0:123,1:92,2:114,3:116},extractor:function(t,e){var n=new aT(t.slice(e)),r=0;if(123!==n.readInt(1))throw new Error("Not a valid RTF file");for(r++;r>0&&n.hasMore();)switch(n.readInt(1)){case 123:r++;break;case 125:r--;break;case 92:n.consumeIf(92),n.position++}return n.carve()}},{name:"Microsoft Office document/OLE2",extension:"ole2,doc,xls,dot,ppt,xla,ppa,pps,pot,msi,sdw,db,vsd,msg",mime:"application/msword,application/vnd.ms-excel,application/vnd.ms-powerpoint",description:"Microsoft Office documents",signature:{0:208,1:207,2:17,3:224,4:161,5:177,6:26,7:225},extractor:null},{name:"Microsoft Office document/OLE2 (under Base64)",extension:"B64",mime:"application/octet-stream",description:"",signature:{0:48,1:77,2:56,3:82,4:52,5:75,6:71,7:120},extractor:null},{name:"Microsoft Office 2007+ document",extension:"docx,xlsx,pptx",mime:"application/vnd.openxmlformats-officedocument.wordprocessingml.document,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.openxmlformats-officedocument.presentationml.presentation",description:"",signature:{38:95,39:84,40:121,41:112,42:101,43:115,44:93,45:46,46:120,47:109,48:108},extractor:fT},{name:"Microsoft Access database",extension:"mdb,mda,mde,mdt,fdb,psa",mime:"application/msaccess",description:"",signature:{0:0,1:1,2:0,3:0,4:83,5:116,6:97,7:110,8:100,9:97,10:114,11:100,12:32,13:74,14:101,15:116},extractor:null},{name:"Microsoft Access 2007+ database",extension:"accdb,accde,accda,accdu",mime:"application/msaccess",description:"",signature:{0:0,1:1,2:0,3:0,4:83,5:116,6:97,7:110,8:100,9:97,10:114,11:100,12:32,13:65,14:67,15:69,16:32},extractor:null},{name:"Microsoft OneNote document",extension:"one",mime:"application/onenote",description:"",signature:{0:228,1:82,2:92,3:123,4:140,5:216,6:167,7:77,8:174,9:177,10:83,11:120,12:208,13:41,14:150,15:211},extractor:null},{name:"Outlook Express database",extension:"dbx",mime:"application/octet-stream",description:"",signature:{0:207,1:173,2:18,3:254,4:[48,197,198,199],11:17},extractor:null},{name:"Personal Storage Table (Outlook)",extension:"pst,ost,fdb,pab",mime:"application/octet-stream",description:"",signature:{0:33,1:66,2:68,3:78},extractor:null},{name:"Microsoft Exchange Database",extension:"edb",mime:"application/octet-stream",description:"",signature:{4:239,5:205,6:171,7:137,8:[32,35],9:6,10:0,11:0,12:[0,1],13:0,14:0,15:0},extractor:null},{name:"WordPerfect document",extension:"wpd,wp,wp5,wp6,wpp,bk!,wcm",mime:"application/wordperfect",description:"",signature:{0:255,1:87,2:80,3:67,7:[0,1,2],8:1,9:10},extractor:null},{name:"EPUB e-book",extension:"epub",mime:"application/epub+zip",description:"",signature:{0:80,1:75,2:3,3:4,30:109,31:105,32:109,33:101,34:116,35:121,36:112,37:101,38:97,39:112,40:112,41:108,42:105,43:99,44:97,45:116,46:105,47:111,48:110,49:47,50:101,51:112,52:117,53:98,54:43,55:122,56:105,57:112},extractor:fT}],Applications:[{name:"Windows Portable Executable",extension:"exe,dll,drv,vxd,sys,ocx,vbx,com,fon,scr",mime:"application/vnd.microsoft.portable-executable",description:"",signature:{0:77,1:90,3:[0,1,2],5:[0,1,2]},extractor:function(t,e){var n=new aT(t.slice(e));n.moveTo(60);var r=n.readInt(4,"le");n.moveTo(r),n.moveForwardsBy(6);var i=n.readInt(2,"le");n.moveForwardsBy(16);var o=523===n.readInt(2,"le")?112:96;n.moveForwardsBy(o-2),n.moveForwardsBy(32);var a=n.readInt(4,"le"),u=n.readInt(4,"le");if(a>0)return n.moveTo(a+u),n.carve();n.moveForwardsBy(88),n.moveForwardsBy(40*(i-1)),n.moveForwardsBy(16);var c=n.readInt(4,"le"),s=n.readInt(4,"le");return n.moveTo(s+c),n.carve()}},{name:"Executable and Linkable Format",extension:"elf,bin,axf,o,prx,so",mime:"application/x-executable",description:"Executable and Linkable Format file. No standard file extension.",signature:{0:127,1:69,2:76,3:70},extractor:function(t,e){var n=new aT(t.slice(e));n.moveForwardsBy(4);var r=1===n.readInt(1),i=1===n.readInt(1)?"le":"be";n.moveForwardsBy(r?26:34);var o=r?n.readInt(4,i):n.readInt(8,i);n.moveForwardsBy(10);var a=n.readInt(2,i),u=n.readInt(2,i);return n.moveTo(o),n.moveForwardsBy(a*u),n.carve()}},{name:"MacOS Mach-O object",extension:"dylib",mime:"application/octet-stream",description:"",signature:[{0:202,1:254,2:186,3:190,4:0,5:0,6:0,7:[1,2,3]},{0:206,1:250,2:237,3:254,4:7,5:0,6:0,7:0,8:[1,2,3]}],extractor:lT},{name:"MacOS Mach-O 64-bit object",extension:"dylib",mime:"application/octet-stream",description:"",signature:{0:207,1:250,2:237,3:254},extractor:lT},{name:"Adobe Flash",extension:"swf",mime:"application/x-shockwave-flash",description:"",signature:{0:[67,70],1:87,2:83},extractor:null},{name:"Java Class",extension:"class",mime:"application/java-vm",description:"",signature:{0:202,1:254,2:186,3:190},extractor:null},{name:"Dalvik Executable",extension:"dex",mime:"application/octet-stream",description:"Dalvik Executable as used by Android",signature:{0:100,1:101,2:120,3:10,4:48,5:51,6:53,7:0},extractor:null},{name:"Google Chrome Extension",extension:"crx",mime:"application/crx",description:"Google Chrome extension or packaged app",signature:{0:67,1:114,2:50,3:52},extractor:null}],Archives:[{name:"PKZIP archive",extension:"zip",mime:"application/zip",description:"",signature:{0:80,1:75,2:[3,5,7],3:[4,6,8]},extractor:fT},{name:"PKZIP archive (under Base64)",extension:"B64",mime:"application/octet-stream",description:"",signature:{0:85,1:69,2:115,3:68,4:66,5:66},extractor:null},{name:"TAR archive",extension:"tar",mime:"application/x-tar",description:"",signature:{257:117,258:115,259:116,260:97,261:114},extractor:function(t,e){for(var n=new aT(t.slice(e)),r=function(){if(n.moveForwardsBy(257),n.getBytes(5).join("")!==[117,115,116,97,114].join(""))return n.moveBackwardsBy(262),1;n.moveBackwardsBy(138);var t=0;n.getBytes(11).forEach((function(e,n){t+=(e-48).toString()})),t=512*Math.ceil(parseInt(t,8)/512),n.moveForwardsBy(t+377)};n.hasMore()&&!r(););return n.consumeWhile(0),n.carve()}},{name:"Roshal Archive",extension:"rar",mime:"application/x-rar-compressed",description:"",signature:{0:82,1:97,2:114,3:33,4:26,5:7,6:[0,1]},extractor:null},{name:"Gzip",extension:"gz",mime:"application/gzip",description:"",signature:{0:31,1:139,2:8},extractor:function(t,e){var n=new aT(t.slice(e));n.moveForwardsBy(3);var r=n.readInt(1);if(n.moveForwardsBy(4),n.readInt(1),n.moveForwardsBy(1),4&r){var i=n.readInt(2,"le");n.moveForwardsby(i)}return 8&r&&(n.continueUntil(0),n.moveForwardsBy(1)),16&r&&(n.continueUntil(0),n.moveForwardsBy(1)),2&r&&n.moveForwardsBy(2),mT(n),n.moveForwardsBy(8),n.carve()}},{name:"Bzip2",extension:"bz2",mime:"application/x-bzip2",description:"",signature:{0:66,1:90,2:104},extractor:function(t,e){for(var n=new aT(t.slice(e)),r=[[119,36,83,133,9],[238,72,167,10,18],[220,145,78,20,36],[185,34,156,40,72],[114,69,56,80,144],[187,146,41,194,132],[93,201,20,225,66],[46,228,138,112,161],[23,114,69,56,80]],i=0;i<r.length&&(n.continueUntil(r[i]),n.getBytes(5).join("")!==r[i].join(""));i++)n.moveTo(0);return n.moveForwardsBy(4),n.carve()}},{name:"7zip",extension:"7z",mime:"application/x-7z-compressed",description:"",signature:{0:55,1:122,2:188,3:175,4:39,5:28},extractor:null},{name:"Zlib Deflate",extension:"zlib",mime:"application/x-deflate",description:"",signature:{0:120,1:[1,156,218,94]},extractor:function(t,e){var n=new aT(t.slice(e));return n.moveForwardsBy(1),32&n.readInt(1)&&n.moveForwardsBy(4),mT(n),n.moveForwardsBy(4),n.carve()}},{name:"xz compression",extension:"xz",mime:"application/x-xz",description:"",signature:{0:253,1:55,2:122,3:88,4:90,5:0},extractor:function(t,e){var n=new aT(t.slice(e));return n.continueUntil([0,0,0,0,4,89,90]),n.moveForwardsBy(7),n.carve()}},{name:"Tarball",extension:"tar.z",mime:"application/x-gtar",description:"",signature:{0:31,1:[157,160]},extractor:null},{name:"ISO disk image",extension:"iso",mime:"application/octet-stream",description:"ISO 9660 CD/DVD image file",signature:[{32769:67,32770:68,32771:48,32772:48,32773:49},{34817:67,34818:68,34819:48,34820:48,34821:49},{36865:67,36866:68,36867:48,36868:48,36869:49}],extractor:null},{name:"Virtual Machine Disk",extension:"vmdk",mime:"application/vmdk,application/x-virtualbox-vmdk",description:"",signature:{0:75,1:68,2:77,3:86,5:0,6:0,7:0},extractor:null},{name:"Virtual Hard Drive",extension:"vhd",mime:"application/x-vhd",description:"",signature:{0:99,1:111,2:110,3:101,4:99,5:116,6:105,7:120},extractor:null},{name:"Macintosh disk image",extension:"dmf,dmg",mime:"application/octet-stream",description:"",signature:{0:120,1:1,2:115,3:13,4:98,5:98,6:96,7:96},extractor:null},{name:"ARJ Archive",extension:"arj",mime:"application/x-arj-compressed",description:"",signature:{0:96,1:234,8:[0,16,20],9:0,10:2},extractor:null},{name:"WinAce Archive",extension:"ace",mime:"application/x-ace-compressed",description:"",signature:{7:42,8:42,9:65,10:67,11:69,12:42,13:42},extractor:null},{name:"Macintosh BinHex Encoded File",extension:"hqx",mime:"application/mac-binhex",description:"",signature:{11:109,12:117,13:115,14:116,15:32,16:98,17:101,18:32,19:99,20:111,21:110,22:118,23:101,24:114,25:116,26:101,27:100,28:32,29:119,30:105,31:116,32:104,33:32,34:66,35:105,36:110,37:72,38:101,39:120},extractor:null},{name:"ALZip Archive",extension:"alz",mime:"application/octet-stream",description:"",signature:{0:65,1:76,2:90,3:1,4:10,5:0,6:0,7:0},extractor:null},{name:"KGB Compressed Archive",extension:"kgb",mime:"application/x-kgb-compressed",description:"",signature:{0:75,1:71,2:66,3:95,4:97,5:114,6:99,7:104,8:32,9:45},extractor:null},{name:"Microsoft Cabinet",extension:"cab",mime:"vnd.ms-cab-compressed",description:"",signature:{0:77,1:83,2:67,3:70,4:0,5:0,6:0,7:0},extractor:null},{name:"Jar Archive",extension:"jar",mime:"application/java-archive",description:"",signature:{0:95,1:39,2:168,3:137},extractor:null},{name:"Jar Archive",extension:"jar",mime:"application/java-archive",description:"",signature:{0:80,1:75,2:3,3:4,4:20,5:0,6:8,7:0,8:8,9:0},extractor:fT},{name:"lzop compressed",extension:"lzop,lzo",mime:"application/x-lzop",description:"",signature:{0:137,1:76,2:90,3:79,4:0,5:13,6:10,7:26},extractor:function(t,e){var n=new aT(t.slice(e)),r=0,i=0;n.moveForwardsBy(9);var o=n.readInt(2,"be");n.moveForwardsBy(6);var a=n.readInt(4,"be");2048&o&&n.moveForwardsBy(4),2&a&&r++,512&a&&r++,1&a&&i++,256&a&&i++,n.moveForwardsBy(8),o>=2368&&n.moveForwardsBy(4);var u=n.readInt(1,"be");if(n.moveForwardsBy(u),64&a){var c=n.readInt(4,"be");n.moveForwardsBy(c)}for(n.moveForwardsBy(4);n.hasMore();){var s=n.readInt(4,"be");if(0===s)break;var f=n.readInt(4,"be"),l=s===f?i:i+r;n.moveForwardsBy(f+4*l)}return n.carve()}},{name:"Linux deb package",extension:"deb",mime:"application/vnd.debian.binary-package",description:"",signature:{0:33,1:60,2:97,3:114,4:99,5:104,6:62},extractor:function(t,e){var n=new aT(t.slice(e));for(n.moveForwardsBy(8);n.hasMore();){n.moveForwardsBy(48);var r,i="",o=uT(n.getBytes(10));try{for(o.s();!(r=o.n()).done;){var a=r.value;i+=String.fromCharCode(a)}}catch(t){o.e(t)}finally{o.f()}i=parseInt(i.trim(),10),n.moveForwardsBy(2),n.moveForwardsBy(i)}return n.carve()}},{name:"Apple Disk Image",extension:"dmg",mime:"application/x-apple-diskimage",description:"",signature:{0:120,1:1,2:115,3:13,4:98,5:98,6:96},extractor:null}],Miscellaneous:[{name:"UTF-8 text",extension:"txt",mime:"text/plain",description:"UTF-8 encoded Unicode byte order mark, commonly but not exclusively seen in text files.",signature:{0:239,1:187,2:191},extractor:null},{name:"UTF-32 LE text",extension:"utf32le",mime:"charset/utf32le",description:"Little-endian UTF-32 encoded Unicode byte order mark.",signature:{0:255,1:254,2:0,3:0},extractor:null},{name:"UTF-16 LE text",extension:"utf16le",mime:"charset/utf16le",description:"Little-endian UTF-16 encoded Unicode byte order mark.",signature:{0:255,1:254},extractor:null},{name:"Web Open Font Format",extension:"woff",mime:"application/font-woff",description:"",signature:{0:119,1:79,2:70,3:70,4:0,5:1,6:0,7:0},extractor:null},{name:"Web Open Font Format 2",extension:"woff2",mime:"application/font-woff",description:"",signature:{0:119,1:79,2:70,3:50,4:0,5:1,6:0,7:0},extractor:null},{name:"Embedded OpenType font",extension:"eot",mime:"application/octet-stream",description:"",signature:[{8:2,9:0,10:1,34:76,35:80},{8:1,9:0,10:0,34:76,35:80},{8:2,9:0,10:2,34:76,35:80}],extractor:null},{name:"TrueType Font",extension:"ttf",mime:"application/font-sfnt",description:"",signature:{0:0,1:1,2:0,3:0,4:0},extractor:null},{name:"OpenType Font",extension:"otf",mime:"application/font-sfnt",description:"",signature:{0:79,1:84,2:84,3:79,4:0},extractor:null},{name:"SQLite",extension:"sqlite",mime:"application/x-sqlite3",description:"",signature:{0:83,1:81,2:76,3:105},extractor:function(t,e){var n=new aT(t.slice(e));n.moveTo(16);var r=n.readInt(2);n.moveTo(28);var i=n.readInt(4);return n.moveTo(r*i),n.carve()}},{name:"BitTorrent link",extension:"torrent",mime:"application/x-bittorrent",description:"",signature:[{0:100,1:56,2:58,3:97,4:110,5:110,6:111,7:117,8:110,9:99,10:101,11:35,12:35,13:58},{0:100,1:52,2:58,3:105,4:110,5:102,6:111,7:100,8:[52,53,54],9:58}],extractor:null},{name:"Cryptocurrency wallet",extension:"wallet",mime:"application/octet-stream",description:"",signature:{0:0,1:0,2:0,3:0,4:1,5:0,6:0,7:0,8:0,9:0,10:0,11:0,12:98,13:49,14:5,15:0},extractor:null},{name:"Registry fragment",extension:"hbin",mime:"application/octet-stream",description:"",signature:{0:104,1:98,2:105,3:110,4:0},extractor:null},{name:"Registry script",extension:"rgs",mime:"application/octet-stream",description:"",signature:{0:72,1:75,2:67,3:82,4:13,5:10,6:92,7:123},extractor:null},{name:"WinNT Registry Hive",extension:"registry",mime:"application/octet-stream",description:"",signature:{0:114,1:101,2:103,3:102},extractor:null},{name:"Windows Event Log",extension:"evt",mime:"application/octet-stream",description:"",signature:{0:48,1:0,2:0,3:0,4:76,5:102,6:76,7:101},extractor:function(t,e){var n=new aT(t.slice(e));n.moveTo(20);var r=n.readInt(4,"le");n.moveTo(r);var i=n.readInt(4,"le");return n.moveForwardsBy(i-4),n.carve()}},{name:"Windows Event Log",extension:"evtx",mime:"application/octet-stream",description:"",signature:{0:69,1:108,2:102,3:70,4:105,5:108,6:101},extractor:function(t,e){var n=new aT(t.slice(e));n.moveTo(40);var r=n.readInt(4,"le")-44;for(n.moveForwardsBy(r);n.hasMore()&&n.getBytes(7).join("")===[69,108,102,67,104,110,107].join("");)n.moveForwardsBy(65529);return n.consumeWhile(0),n.carve()}},{name:"Windows Pagedump",extension:"dmp",mime:"application/octet-stream",description:"",signature:{0:80,1:65,2:71,3:69,4:68,5:85,6:[77,54],7:[80,52]},extractor:function(t,e){var n=new aT(t.slice(e));return n.moveTo(112),n.moveTo(4096*(n.readInt(4,"le")+1)),n.carve()}},{name:"Windows Prefetch",extension:"pf",mime:"application/x-pf",description:"",signature:{0:[17,23,26],1:0,2:0,3:0,4:83,5:67,6:67,7:65},extractor:function(t,e){var n=new aT(t.slice(e));return n.moveTo(12),n.moveTo(n.readInt(4,"be")),n.carve()}},{name:"Windows Prefetch (Win 10)",extension:"pf",mime:"application/x-pf",description:"",signature:{0:77,1:65,2:77,3:4,7:0},extractor:function(t,e){var n=new aT(t.slice(e));return n.moveTo(n.readInt(4,"be")),n.carve()}},{name:"PList (XML)",extension:"plist",mime:"application/xml",description:"",signature:{39:60,40:33,41:68,42:79,43:67,44:84,45:89,46:80,47:69,48:32,49:112,50:108,51:105,52:115,53:116},extractor:function(t,e){var n=new aT(t.slice(e)),r=0;for(n.continueUntil([60,112,108,105,115,116]),n.moveForwardsBy(6),r++;r>0&&n.hasMore();)60===n.readInt(1)&&(n.getBytes(5).join("")===[112,108,105,115,116].join("")?r++:n.moveBackwardsBy(5),n.getBytes(7).join("")===[47,112,108,105,115,116,62].join("")?r--:n.moveBackwardsBy(7));return n.consumeIf(10),n.carve()}},{name:"PList (binary)",extension:"bplist,plist,ipmeta,abcdp,mdbackup,mdinfo,strings,nib,ichat,qtz,webbookmark,webhistory",mime:"application/x-plist",description:"",signature:{0:98,1:112,2:108,3:105,4:115,5:116,6:48,7:48},extractor:null},{name:"MacOS X Keychain",extension:"keychain",mime:"application/octet-stream",description:"",signature:{0:107,1:121,2:99,3:104,4:0,5:1},extractor:function(t,e){var n=new aT(t.slice(e));return n.moveTo(20),n.moveForwardsBy(n.readInt(4)),n.carve()}},{name:"TCP Packet",extension:"tcp",mime:"application/tcp",description:"",signature:{12:8,13:0,14:69,15:0,21:0,22:function(t){return t>=1&&t<=128},23:6},extractor:null},{name:"UDP Packet",extension:"udp",mime:"application/udp",description:"",signature:{12:8,13:0,14:69,15:0,16:[0,1,2,3,4,5],22:function(t){return t>=1&&t<=128},23:17},extractor:null},{name:"Compiled HTML",extension:"chm,chw,chi",mime:"application/vnd.ms-htmlhelp",description:"",signature:{0:73,1:84,2:83,3:70,4:3,5:0,6:0,7:0},extractor:null},{name:"Windows Password",extension:"pwl",mime:"application/octet-stream",description:"",signature:{0:227,1:130,2:133,3:150},extractor:null},{name:"Bitlocker recovery key",extension:"bitlocker",mime:"application/octet-stream",description:"",signature:{0:255,1:254,2:66,3:0,4:105,5:0,6:116,7:0,8:76,9:0,10:111,11:0,12:99,13:0,14:107,15:0,16:101,17:0,18:114,19:0,20:32,21:0},extractor:null},{name:"Certificate",extension:"cer,cat,p7b,p7c,p7m,p7s,swz,rsa,crl,crt,der",mime:"application/pkix-cert",description:"",signature:{0:48,1:130,4:[6,10,48]},extractor:null},{name:"Certificate",extension:"cat,swz,p7m",mime:"application/vnd.ms-pki.seccat",description:"",signature:{0:48,1:131,2:function(t){return 0!==t},5:6,6:9},extractor:null},{name:"PGP pubring",extension:"pkr,gpg",mime:"application/pgp-keys",description:"",signature:{0:153,1:1,2:[13,162],3:4},extractor:null},{name:"PGP secring",extension:"skr",mime:"application/pgp-keys",description:"",signature:[{0:149,1:1,2:207,3:4},{0:149,1:3,2:198,3:4},{0:149,1:5,2:134,3:4}],extractor:null},{name:"PGP Safe",extension:"pgd",mime:"application/pgp-keys",description:"",signature:{0:80,1:71,2:80,3:100,4:77,5:65,6:73,7:78,8:96,9:1,10:0},extractor:null},{name:"Task Scheduler",extension:"job",mime:"application/octet-stream",description:"",signature:{0:[0,1,2,3],1:[5,6],2:1,3:0,20:70,21:0},extractor:null},{name:"Windows Shortcut",extension:"lnk",mime:"application/x-ms-shortcut",description:"",signature:{0:76,1:0,2:0,3:0,4:1,5:20,6:2,7:0,8:0,9:0,10:0,11:0,12:192,13:0,14:0,15:0,16:0,17:0,18:0,19:70},extractor:function(t,e){var n=new aT(t.slice(e));return n.moveTo(52),n.moveTo(n.readInt(4,"le")),n.carve()}},{name:"Bash",extension:"bash",mime:"application/bash",description:"",signature:{0:35,1:33,2:47,3:98,4:105,5:110,6:47,7:98,8:97,9:115,10:104},extractor:null},{name:"Shell",extension:"sh",mime:"application/sh",description:"",signature:{0:35,1:33,2:47,3:98,4:105,5:110,6:47,7:115,8:104},extractor:null},{name:"Python",extension:"py,pyc,pyd,pyo,pyw,pyz",mime:"application/python",description:"",signature:{0:35,1:33,2:47,3:117,4:115,5:114,6:47,7:98,8:105,9:110,10:47,11:112,12:121,13:116,14:104,15:111,16:110,17:[50,51,10,13]},extractor:null},{name:"Ruby",extension:"rb",mime:"application/ruby",description:"",signature:{0:35,1:33,2:47,3:117,4:115,5:114,6:47,7:98,8:105,9:110,10:47,11:114,12:117,13:98,14:121},extractor:null},{name:"perl",extension:"pl,pm,t,pod",mime:"application/perl",description:"",signature:{0:35,1:33,2:47,3:117,4:115,5:114,6:47,7:98,8:105,9:110,10:47,11:112,12:101,13:114,14:108},extractor:null},{name:"php",extension:"php,phtml,php3,php4,php5,php7,phps,php-s,pht,phar",mime:"application/php",description:"",signature:{0:60,1:63,2:112,3:104,4:112},extractor:null},{name:"Smile",extension:"sml",mime:"\tapplication/x-jackson-smile",description:"",signature:{0:58,1:41,2:10},extractor:null},{name:"Lua Bytecode",extension:"luac",mime:"application/x-lua",description:"",signature:{0:27,1:76,2:117,3:97},extractor:null},{name:"WebAssembly binary",extension:"wasm",mime:"application/octet-stream",description:"",signature:{0:0,1:97,2:115,3:109},extractor:null}]};function fT(t,e){var n=new aT(t.slice(e));n.continueUntil([80,75,5,6]),n.moveForwardsBy(20);var r=n.readInt(2,"le");return n.moveForwardsBy(r),n.carve()}function lT(t,e){var n="207250237254",r=new aT(t.slice(e)),i=r.getBytes(4).join("");return r.moveTo(function(t,e,n){var r=28;e&&(r+=4),t.moveTo(16);var i=t.readInt(4,n);return function(t,e,n,r){for(var i=0,o=0;o<r;o++){t.moveTo(e);var a=t.readInt(4,n);25===a?(t.moveTo(e+48),i+=t.readInt(8,n),t.moveTo(e+4),e+=t.readInt(4,n)):1===a&&(t.moveTo(e+36),i+=t.readInt(4,n),t.moveTo(e+4),e+=t.readInt(4,n))}return i}(t,r,n,i)}(r,function(t){return t===n||"254237250207"===t}(i),function(t){return"206250237254"===t||t===n}(i)?"le":"be")),r.carve()}for(var hT=new Array(288),dT=0;dT<hT.length;dT++)hT[dT]=dT<=143?8:dT<=255?9:dT<=279?7:8;var pT=wT(hT),gT=wT(new Array(30).fill(5)),yT=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function mT(t){for(var e=0;!e;){e=t.readBits(1,"le");var n=t.readBits(2,"le");if(0===n){t.moveForwardsBy(1);var r=t.readInt(2,"le");t.moveForwardsBy(2+r)}else if(1===n)xT(t,pT,gT);else{if(2!==n)throw new Error(`Invalid block type while parsing DEFLATE stream at pos ${t.position}`);for(var i=t.readBits(5,"le")+257,o=t.readBits(5,"le")+1,a=t.readBits(4,"le")+4,u=new Uint8Array(yT.length),c=0;c<a;c++)u[yT[c]]=t.readBits(3,"le");for(var s=wT(u),f=new Uint8Array(i+o),l=void 0,h=void 0,d=void 0,p=0;p<i+o;)switch(l=_T(t,s)){case 16:for(h=3+t.readBits(2,"le");h--;)f[p++]=d;break;case 17:for(h=3+t.readBits(3,"le");h--;)f[p++]=0;d=0;break;case 18:for(h=11+t.readBits(7,"le");h--;)f[p++]=0;d=0;break;default:f[p++]=l,d=l}xT(t,wT(f.subarray(0,i)),wT(f.subarray(i)))}}t.bitPos>0&&t.moveForwardsBy(1)}var vT=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0],bT=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function xT(t,e,n){for(var r,i=0;(r=_T(t,e))&&256!==r;){if(++i>1e4)throw new Error("Caught in probable infinite loop while parsing Huffman Block");r<256||(t.readBits(vT[r-257],"le"),r=_T(t,n),t.readBits(bT[r],"le"))}}function wT(t){for(var e=Math.max.apply(Math,t),n=Math.min.apply(Math,t),r=1<<e,i=new Uint32Array(r),o=1,a=0,u=2;o<=e;){for(var c=0;c<t.length;c++)if(t[c]===o){var s=void 0,f=void 0,l=void 0;for(s=0,f=a,l=0;l<o;l++)s=s<<1|1&f,f>>=1;for(var h=o<<16|c,d=s;d<r;d+=u)i[d]=h;a++}o++,a<<=1,u<<=1}return[i,e,n]}function _T(t,e){var n,r,i=(r=2,function(t){if(Array.isArray(t))return t}(n=e)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var r,i,o,a,u=[],c=!0,s=!1;try{if(o=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=o.call(n)).done)&&(u.push(r.value),u.length!==e);c=!0);}catch(t){s=!0,i=t}finally{try{if(!c&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(s)throw i}}return u}}(n,r)||vB(n,r)||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.")}()),o=i[0],a=i[1],u=o[t.readBits(a,"le")&(1<<a)-1],c=u>>>16;if(c>a)throw new Error(`Invalid Huffman Code length while parsing DEFLATE block at pos ${t.position}: ${c}`);return t.moveBackwardsByBits(a-c),65535&u}function AT(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;if(t.length){for(var r=0;r<t.length;r++)if(ET(t[r],e,n))return!0;return!1}return ET(t,e,n)}function ET(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;for(var r in t){var i=parseInt(r,10)+n;switch(typeof t[r]){case"number":if(e[i]!==t[r])return!1;break;case"object":if(t[r].indexOf(e[i])<0)return!1;break;case"function":if(!t[r](e[i]))return!1;break;default:throw new Error(`Unrecognised signature type at offset ${r}`)}}return!0}var MT=function(){return u((function t(){r(this,t)}),null,[{key:"checkForValue",value:function(t){if(void 0===t)throw new Error("only use translation methods with .bind")}},{key:"toArrayBuffer",value:function(){throw new Error("toArrayBuffer has not been implemented")}},{key:"fromArrayBuffer",value:function(){throw new Error("fromArrayBuffer has not been implemented")}}])}();const BT=MT;function TT(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(TT=function(){return!!t})()}const kT=function(t){function e(){return r(this,e),t=this,i=arguments,n=s(n=e),c(t,TT()?Reflect.construct(n,i||[],s(t).constructor):n.apply(t,i));var t,n,i}return l(e,t),u(e,null,[{key:"toArrayBuffer",value:function(){e.checkForValue(this.value),this.value=new Uint8Array(this.value).buffer}},{key:"fromArrayBuffer",value:function(){e.checkForValue(this.value),this.value=Array.prototype.slice.call(new Uint8Array(this.value))}}])}(BT);function FT(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(FT=function(){return!!t})()}const ST=function(t){function e(){return r(this,e),t=this,i=arguments,n=s(n=e),c(t,FT()?Reflect.construct(n,i||[],s(t).constructor):n.apply(t,i));var t,n,i}return l(e,t),u(e,null,[{key:"toArrayBuffer",value:function(){e.checkForValue(this.value),this.value=oT.isBigNumber(this.value)?DB.strToArrayBuffer(this.value.toFixed()):new ArrayBuffer}},{key:"fromArrayBuffer",value:function(){e.checkForValue(this.value);try{this.value=new oT(DB.arrayBufferToStr(this.value))}catch(t){this.value=new oT(NaN)}}}])}(BT);function NT(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(NT=function(){return!!t})()}const CT=function(t){function e(){return r(this,e),t=this,i=arguments,n=s(n=e),c(t,NT()?Reflect.construct(n,i||[],s(t).constructor):n.apply(t,i));var t,n,i}return l(e,t),u(e,null,[{key:"toArrayBuffer",value:function(){var t=this;if(e.checkForValue(this.value),!RB())return new Promise((function(e,n){DB.readFile(t.value).then((function(e){return t.value=e.buffer})).then(e).catch(n)}));this.value=DB.readFileSync(this.value)}},{key:"fromArrayBuffer",value:function(){e.checkForValue(this.value),this.value=new File(this.value,"unknown")}}])}(BT);function IT(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(IT=function(){return!!t})()}const RT=function(t){function e(){return r(this,e),t=this,i=arguments,n=s(n=e),c(t,IT()?Reflect.construct(n,i||[],s(t).constructor):n.apply(t,i));var t,n,i}return l(e,t),u(e,null,[{key:"toArrayBuffer",value:function(){e.checkForValue(this.value),this.value=this.value?DB.strToArrayBuffer(this.value):new ArrayBuffer}},{key:"fromArrayBuffer",value:function(){e.checkForValue(this.value),this.value=this.value?DB.arrayBufferToStr(this.value):""}}])}(BT);function OT(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(OT=function(){return!!t})()}const PT=function(t){function e(){return r(this,e),t=this,i=arguments,n=s(n=e),c(t,OT()?Reflect.construct(n,i||[],s(t).constructor):n.apply(t,i));var t,n,i}return l(e,t),u(e,null,[{key:"toArrayBuffer",value:function(){e.checkForValue(this.value),this.value=this.value?DB.strToArrayBuffer(DB.unescapeHtml(DB.stripHtmlTags(this.value,!0))):new ArrayBuffer}}])}(RT);function DT(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(DT=function(){return!!t})()}const LT=function(t){function e(){return r(this,e),t=this,i=arguments,n=s(n=e),c(t,DT()?Reflect.construct(n,i||[],s(t).constructor):n.apply(t,i));var t,n,i}return l(e,t),u(e,null,[{key:"toArrayBuffer",value:function(){e.checkForValue(this.value),this.value=void 0!==this.value?DB.strToArrayBuffer(JSON.stringify(this.value,null,4)):new ArrayBuffer}},{key:"fromArrayBuffer",value:function(){e.checkForValue(this.value),this.value=JSON.parse(DB.arrayBufferToStr(this.value))}}])}(BT);function UT(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(UT=function(){return!!t})()}const $T=function(t){function e(){return r(this,e),t=this,i=arguments,n=s(n=e),c(t,UT()?Reflect.construct(n,i||[],s(t).constructor):n.apply(t,i));var t,n,i}return l(e,t),u(e,null,[{key:"toArrayBuffer",value:(i=pB(yB().mark((function t(){return yB().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(e.checkForValue(this.value),!RB()){t.next=5;break}this.value=this.value.map((function(t){return Uint8Array.from(t.data)})),t.next=8;break;case 5:return t.next=7,e.concatenateTypedArraysWithTypedElements.apply(e,bB(this.value));case 7:this.value=t.sent;case 8:case"end":return t.stop()}}),t,this)}))),function(){return i.apply(this,arguments)})},{key:"fromArrayBuffer",value:function(){e.checkForValue(this.value),this.value=[new File(this.value,"unknown")]}},{key:"concatenateTypedArraysWithTypedElements",value:(n=pB(yB().mark((function t(){var e,n,r,i,o,a,u,c,s,f,l,h,d,p=arguments;return yB().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:for(e=0,n=p.length,r=new Array(n),i=0;i<n;i++)r[i]=p[i];for(o=0,a=r;o<a.length;o++)u=a[o],e+=u.size;c=new Uint8Array(e),s=0,f=0,l=r;case 6:if(!(f<l.length)){t.next=16;break}return h=l[f],t.next=10,DB.readFile(h);case 10:d=t.sent,c.set(d,s),s+=d.length;case 13:f++,t.next=6;break;case 16:return t.abrupt("return",c);case 17:case"end":return t.stop()}}),t)}))),function(){return n.apply(this,arguments)})},{key:"concatenateTypedArrays",value:function(){for(var t=0,e=arguments.length,n=new Array(e),r=0;r<e;r++)n[r]=arguments[r];for(var i=0,o=n;i<o.length;i++)t+=o[i].length;for(var a=new Uint8Array(t),u=0,c=0,s=n;c<s.length;c++){var f=s[c];a.set(f,u),u+=f.length}return a}}]);var n,i}(BT);function jT(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(jT=function(){return!!t})()}const zT=function(t){function e(){return r(this,e),t=this,i=arguments,n=s(n=e),c(t,jT()?Reflect.construct(n,i||[],s(t).constructor):n.apply(t,i));var t,n,i}return l(e,t),u(e,null,[{key:"toArrayBuffer",value:function(){e.checkForValue(this.value),this.value="number"==typeof this.value?DB.strToArrayBuffer(this.value.toString()):new ArrayBuffer}},{key:"fromArrayBuffer",value:function(){e.checkForValue(this.value),this.value=this.value?parseFloat(DB.arrayBufferToStr(this.value)):0}}])}(BT);var HT=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;if(r(this,t),this.value=new ArrayBuffer(0),this.type=t.ARRAY_BUFFER,e&&Object.prototype.hasOwnProperty.call(e,"value")&&Object.prototype.hasOwnProperty.call(e,"type"))this.set(e.value,e.type);else if(e&&null!==n)this.set(e,n);else if(e){var i=t.typeEnum(e.constructor.name);this.set(e,i)}}return u(t,[{key:"get",value:function(e){var n=this;return"string"==typeof e&&(e=t.typeEnum(e)),this.type!==e?RB()?(this._translate(e),this.value):new Promise((function(t,r){n._translate(e).then((function(){t(n.value)})).catch(r)})):this.value}},{key:"set",value:function(e,n){if("string"==typeof n&&(n=t.typeEnum(n)),wB().debug("Dish type: "+t.enumLookup(n)),this.value=e,this.type=n,!this.valid()){var r=DB.truncate(JSON.stringify(this.value),25);throw new UB(`Data is not a valid ${t.enumLookup(n)}: ${r}`)}}},{key:"presentAs",value:function(t){return this.clone().get(t)}},{key:"detectDishType",value:function(){var t=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Object.keys(sT);if(t instanceof ArrayBuffer&&(t=new Uint8Array(t)),!(t&&t.length>1))return[];var n=[],r={};for(var i in sT)e.includes(i)&&(r[i]=sT[i]);for(var o in r)r[o].forEach((function(e){AT(e.signature,t)&&n.push(e)}));return n}(new Uint8Array(this.value.slice(0,2048)));return t.length&&t[0].mime&&"text/plain"===t[0].mime?t[0].mime:null}},{key:"getTitle",value:(e=pB(yB().mark((function e(n){var r,i;return yB().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:r="",e.t0=this.type,e.next=e.t0===t.FILE?4:e.t0===t.LIST_FILE?6:e.t0===t.JSON?8:e.t0===t.NUMBER||e.t0===t.BIG_NUMBER?10:e.t0===t.ARRAY_BUFFER||e.t0===t.BYTE_ARRAY?12:15;break;case 4:return r=this.value.name,e.abrupt("break",26);case 6:return r=`${this.value.length} file(s)`,e.abrupt("break",26);case 8:return r="application/json",e.abrupt("break",26);case 10:return r=this.value.toString(),e.abrupt("break",26);case 12:if(null===(r=this.detectDishType())){e.next=15;break}return e.abrupt("break",26);case 15:return e.prev=15,(i=this.clone()).value=i.value.slice(0,256),e.next=20,i.get(t.STRING);case 20:r=e.sent,e.next=26;break;case 23:e.prev=23,e.t1=e.catch(15),wB().error(`${t.enumLookup(this.type)} cannot be sliced. ${e.t1}`);case 26:return e.abrupt("return",r.slice(0,n));case 27:case"end":return e.stop()}}),e,this,[[15,23]])}))),function(t){return e.apply(this,arguments)})},{key:"valid",value:function(){switch(this.type){case t.BYTE_ARRAY:if(!(this.value instanceof Uint8Array||this.value instanceof Array))return!1;for(var e=0;e<this.value.length;e++)if("number"!=typeof this.value[e]||this.value[e]<0||this.value[e]>255)return!1;return!0;case t.STRING:case t.HTML:return"string"==typeof this.value;case t.NUMBER:return"number"==typeof this.value;case t.ARRAY_BUFFER:return this.value instanceof ArrayBuffer;case t.BIG_NUMBER:if(oT.isBigNumber(this.value))return!0;if(Object.keys(this.value).sort().equals(["c","e","s"])){var n=new oT;return n.c=this.value.c,n.e=this.value.e,n.s=this.value.s,this.value=n,!0}return!1;case t.JSON:return!0;case t.FILE:return this.value instanceof File;case t.LIST_FILE:return this.value instanceof Array&&this.value.reduce((function(t,e){return t&&e instanceof File}),!0);default:return!1}}},{key:"size",get:function(){switch(this.type){case t.BYTE_ARRAY:case t.STRING:case t.HTML:return this.value.length;case t.NUMBER:case t.BIG_NUMBER:return this.value.toString().length;case t.ARRAY_BUFFER:return this.value.byteLength;case t.JSON:return JSON.stringify(this.value).length;case t.FILE:return this.value.size;case t.LIST_FILE:return this.value.reduce((function(t,e){return t+e.size}),0);default:return-1}}},{key:"clone",value:function(){var e=new t;switch(this.type){case t.STRING:case t.HTML:case t.NUMBER:case t.BIG_NUMBER:e.set(this.value,this.type);break;case t.BYTE_ARRAY:case t.JSON:e.set(JSON.parse(JSON.stringify(this.value)),this.type);break;case t.ARRAY_BUFFER:e.set(this.value.slice(0),this.type);break;case t.FILE:e.set(new File([this.value],this.value.name,{type:this.value.type,lastModified:this.value.lastModified}),this.type);break;case t.LIST_FILE:e.set(this.value.map((function(t){return new File([t],t.name,{type:t.type,lastModified:t.lastModified})})),this.type);break;default:throw new UB("Cannot clone Dish, unknown type")}return e}},{key:"_translate",value:function(e){var n=this;if(wB().debug(`Translating Dish from ${t.enumLookup(this.type)} to ${t.enumLookup(e)}`),!RB())return new Promise((function(r,i){n._toArrayBuffer().then((function(){return n.type=t.ARRAY_BUFFER})).then((function(){n._fromArrayBuffer(e),r()})).catch(i)}));this._toArrayBuffer(),this.type=t.ARRAY_BUFFER,this._fromArrayBuffer(e)}},{key:"_toArrayBuffer",value:function(){var e=this,n={browser:{[t.STRING]:function(){return Promise.resolve(RT.toArrayBuffer.bind(e)())},[t.NUMBER]:function(){return Promise.resolve(zT.toArrayBuffer.bind(e)())},[t.HTML]:function(){return Promise.resolve(PT.toArrayBuffer.bind(e)())},[t.ARRAY_BUFFER]:function(){return Promise.resolve()},[t.BIG_NUMBER]:function(){return Promise.resolve(ST.toArrayBuffer.bind(e)())},[t.JSON]:function(){return Promise.resolve(LT.toArrayBuffer.bind(e)())},[t.FILE]:function(){return CT.toArrayBuffer.bind(e)()},[t.LIST_FILE]:function(){return Promise.resolve($T.toArrayBuffer.bind(e)())},[t.BYTE_ARRAY]:function(){return Promise.resolve(kT.toArrayBuffer.bind(e)())}},node:{[t.STRING]:function(){return RT.toArrayBuffer.bind(e)()},[t.NUMBER]:function(){return zT.toArrayBuffer.bind(e)()},[t.HTML]:function(){return PT.toArrayBuffer.bind(e)()},[t.ARRAY_BUFFER]:function(){},[t.BIG_NUMBER]:function(){return ST.toArrayBuffer.bind(e)()},[t.JSON]:function(){return LT.toArrayBuffer.bind(e)()},[t.FILE]:function(){return CT.toArrayBuffer.bind(e)()},[t.LIST_FILE]:function(){return $T.toArrayBuffer.bind(e)()},[t.BYTE_ARRAY]:function(){return kT.toArrayBuffer.bind(e)()}}};try{return n[RB()?"node":"browser"][this.type]()}catch(e){throw new UB(`Error translating from ${t.enumLookup(this.type)} to ArrayBuffer: ${e}`)}}},{key:"_fromArrayBuffer",value:function(e){var n=this,r={[t.STRING]:function(){return RT.fromArrayBuffer.bind(n)()},[t.NUMBER]:function(){return zT.fromArrayBuffer.bind(n)()},[t.HTML]:function(){return PT.fromArrayBuffer.bind(n)()},[t.ARRAY_BUFFER]:function(){},[t.BIG_NUMBER]:function(){return ST.fromArrayBuffer.bind(n)()},[t.JSON]:function(){return LT.fromArrayBuffer.bind(n)()},[t.FILE]:function(){return CT.fromArrayBuffer.bind(n)()},[t.LIST_FILE]:function(){return $T.fromArrayBuffer.bind(n)()},[t.BYTE_ARRAY]:function(){return kT.fromArrayBuffer.bind(n)()}};try{r[e](),this.type=e}catch(n){throw new UB(`Error translating from ArrayBuffer to ${t.enumLookup(e)}: ${n}`)}}}],[{key:"typeEnum",value:function(e){switch(e.toLowerCase()){case"bytearray":case"byte array":return t.BYTE_ARRAY;case"string":return t.STRING;case"number":return t.NUMBER;case"html":return t.HTML;case"arraybuffer":case"array buffer":return t.ARRAY_BUFFER;case"bignumber":case"big number":return t.BIG_NUMBER;case"json":case"object":return t.JSON;case"file":return t.FILE;case"list<file>":return t.LIST_FILE;default:throw new UB("Invalid data type string. No matching enum.")}}},{key:"enumLookup",value:function(e){switch(e){case t.BYTE_ARRAY:return"byteArray";case t.STRING:return"string";case t.NUMBER:return"number";case t.HTML:return"html";case t.ARRAY_BUFFER:return"ArrayBuffer";case t.BIG_NUMBER:return"BigNumber";case t.JSON:return"JSON";case t.FILE:return"File";case t.LIST_FILE:return"List<File>";default:throw new UB("Invalid data type enum. No matching type.")}}}]);var e}();HT.BYTE_ARRAY=0,HT.STRING=1,HT.NUMBER=2,HT.HTML=3,HT.ARRAY_BUFFER=4,HT.BIG_NUMBER=5,HT.JSON=6,HT.FILE=7,HT.LIST_FILE=8;const qT=HT;var YT=function(){function t(e){r(this,t),this.name="",this.type="",this._value=null,this.disabled=!1,this.hint="",this.rows=0,this.toggleValues=[],this.target=null,this.defaultIndex=0,this.maxLength=null,this.min=null,this.max=null,this.step=1,e&&this._parseConfig(e)}return u(t,[{key:"_parseConfig",value:function(t){this.name=t.name,this.type=t.type,this.defaultValue=t.value,this.disabled=!!t.disabled,this.hint=t.hint||!1,this.rows=t.rows||!1,this.toggleValues=t.toggleValues,this.target=void 0!==t.target?t.target:null,this.defaultIndex=void 0!==t.defaultIndex?t.defaultIndex:0,this.maxLength=t.maxLength||null,this.min=t.min,this.max=t.max,this.step=t.step}},{key:"config",get:function(){return this._value}},{key:"value",get:function(){return this._value},set:function(e){this._value=t.prepare(e,this.type)}}],[{key:"prepare",value:function(t,e){var n;switch(e){case"binaryString":case"binaryShortString":case"editableOption":case"editableOptionShort":return DB.parseEscapedChars(t);case"byteArray":return"string"==typeof t?kB(t=t.replace(/\s+/g,"")):t;case"number":if(null===t)return t;if(n=parseFloat(t),isNaN(n))throw"Invalid ingredient value. Not a number: "+DB.truncate(t.toString(),10);return n;default:return t}}}])}();const GT=YT;var VT=function(){return u((function t(){r(this,t),this._inputType=-1,this._outputType=-1,this._presentType=-1,this._breakpoint=!1,this._disabled=!1,this._flowControl=!1,this._manualBake=!1,this._ingList=[],this.name="",this.module="",this.description="",this.infoURL=null}),[{key:"run",value:function(t,e){return t}},{key:"highlight",value:function(t,e){return!1}},{key:"highlightReverse",value:function(t,e){return!1}},{key:"present",value:function(t,e){return t}},{key:"inputType",get:function(){return qT.enumLookup(this._inputType)},set:function(t){this._inputType=qT.typeEnum(t)}},{key:"outputType",get:function(){return qT.enumLookup(this._outputType)},set:function(t){this._outputType=qT.typeEnum(t),this._presentType<0&&(this._presentType=this._outputType)}},{key:"presentType",get:function(){return qT.enumLookup(this._presentType)},set:function(t){this._presentType=qT.typeEnum(t)}},{key:"args",get:function(){return this._ingList.map((function(t){var e={name:t.name,type:t.type,value:t.defaultValue};return t.toggleValues&&(e.toggleValues=t.toggleValues),t.hint&&(e.hint=t.hint),t.rows&&(e.rows=t.rows),t.disabled&&(e.disabled=t.disabled),t.target&&(e.target=t.target),t.defaultIndex&&(e.defaultIndex=t.defaultIndex),t.maxLength&&(e.maxLength=t.maxLength),"number"==typeof t.min&&(e.min=t.min),"number"==typeof t.max&&(e.max=t.max),t.step&&(e.step=t.step),e}))},set:function(t){var e=this;t.forEach((function(t){var n=new GT(t);e.addIngredient(n)}))}},{key:"config",get:function(){return{op:this.name,args:this._ingList.map((function(t){return t.config}))}}},{key:"addIngredient",value:function(t){this._ingList.push(t)}},{key:"ingValues",get:function(){return this._ingList.map((function(t){return t.value}))},set:function(t){var e=this;t.forEach((function(t,n){e._ingList[n].value=t}))}},{key:"breakpoint",get:function(){return this._breakpoint},set:function(t){this._breakpoint=!!t}},{key:"disabled",get:function(){return this._disabled},set:function(t){this._disabled=!!t}},{key:"flowControl",get:function(){return this._flowControl},set:function(t){this._flowControl=!!t}},{key:"manualBake",get:function(){return this._manualBake},set:function(t){this._manualBake=!!t}}])}();const WT=VT;function XT(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(XT=function(){return!!t})()}var JT=t.default?t.default:t,ZT=hB()?hB():lB,KT=function(t){function e(){var t,n,i,o;return r(this,e),n=this,i=s(i=e),(t=c(n,XT()?Reflect.construct(i,[],s(n).constructor):i.apply(n,o))).name="Entropy",t.module="Charts",t.description="Shannon Entropy, in the context of information theory, is a measure of the rate at which information is produced by a source of data. It can be used, in a broad sense, to detect whether data is likely to be structured or unstructured. 8 is the maximum, representing highly unstructured, 'random' data. English language text usually falls somewhere between 3.5 and 5. Properly encrypted or compressed data should have an entropy of over 7.5.",t.infoURL="https://wikipedia.org/wiki/Entropy_(information_theory)",t.inputType="ArrayBuffer",t.outputType="json",t.presentType="html",t.args=[{name:"Visualisation",type:"option",value:["Shannon scale","Histogram (Bar)","Histogram (Line)","Curve","Image"]}],t}return l(e,t),u(e,[{key:"calculateShannonEntropy",value:function(t){var e,n=[],r=new Array(256).fill(0);for(e=0;e<t.length;e++)r[t[e]]++;for(e=0;e<r.length;e++)r[e]>0&&n.push(r[e]/t.length);var i,o=0;for(e=0;e<n.length;e++)o+=(i=n[e])*Math.log(i)/Math.log(2);return-o}},{key:"calculateScanningEntropy",value:function(t){for(var e=[],n=t.length<256?8:256,r=0;r<t.length;r+=n){var i=t.slice(r,r+n);e.push(this.calculateShannonEntropy(i))}return{entropyData:e,binWidth:n}}},{key:"createAxes",value:function(t,e,n,r,i,o,a,u,c){var s=JT.axisLeft().scale(n),f=JT.axisBottom().scale(e);t.append("g").attr("transform",`translate(0, ${r-o.bottom})`).call(f),t.append("g").attr("transform",`translate(${o.left},0)`).call(s),t.append("text").attr("transform","rotate(-90)").attr("y",0-o.left).attr("x",0-r/2).attr("dy","1em").style("text-anchor","middle").text(c),t.append("text").attr("transform",`translate(${i/2}, ${r-o.bottom+40})`).style("text-anchor","middle").text(u),t.append("text").attr("transform",`translate(${i/2}, ${o.top-10})`).style("text-anchor","middle").text(a)}},{key:"calculateByteFrequency",value:function(t){var e,n=new Array(256).fill(0);if(0===t.length)return n;for(e=0;e<t.length;e++)n[t[e]]++;for(e=0;e<n.length;e++)n[e]=n[e]/t.length;return n}},{key:"createByteFrequencyLineHistogram",value:function(t){var e={top:30,right:20,bottom:50,left:30},n=(new ZT.Document).createElement("svg");n=JT.select(n).attr("width","100%").attr("height","100%").attr("viewBox","0 0 500 500");var r=JT.scaleLinear().domain([0,JT.max(t,(function(t){return t}))]).range([500-e.bottom,e.top]),i=JT.scaleLinear().domain([0,t.length-1]).range([e.left,500-e.right]),o=JT.line().x((function(t,e){return i(e)})).y((function(t){return r(t)})).curve(JT.curveMonotoneX);return n.append("path").datum(t).attr("fill","none").attr("stroke","steelblue").attr("d",o),this.createAxes(n,i,r,500,500,e,"","Byte","Byte Frequency"),n._groups[0][0].outerHTML}},{key:"createByteFrequencyBarHistogram",value:function(t){var e={top:30,right:20,bottom:50,left:30},n=(new ZT.Document).createElement("svg");n=JT.select(n).attr("width","100%").attr("height","100%").attr("viewBox","0 0 500 500");var r=JT.extent(t,(function(t){return t})),i=JT.scaleLinear().domain(r).range([500-e.bottom,e.top]),o=JT.scaleLinear().domain([0,t.length-1]).range([e.left-1,500-e.right]);return n.selectAll("rect").data(t).enter().append("rect").attr("x",(function(t,e){return o(e)+1})).attr("y",(function(t){return i(t)})).attr("width",1).attr("height",(function(t){return i(r[0])-i(t)})).attr("fill","blue"),this.createAxes(n,o,i,500,500,e,"","Byte","Byte Frequency"),n._groups[0][0].outerHTML}},{key:"createEntropyCurve",value:function(t){var e={top:30,right:20,bottom:50,left:30},n=(new ZT.Document).createElement("svg");n=JT.select(n).attr("width","100%").attr("height","100%").attr("viewBox","0 0 500 500");var r=JT.scaleLinear().domain([0,JT.max(t,(function(t){return t}))]).range([500-e.bottom,e.top]),i=JT.scaleLinear().domain([0,t.length]).range([e.left,500-e.right]),o=JT.line().x((function(t,e){return i(e)})).y((function(t){return r(t)})).curve(JT.curveMonotoneX);return t.length>0&&(n.append("path").datum(t).attr("d",o),n.selectAll("path").attr("fill","none").attr("stroke","steelblue")),this.createAxes(n,i,r,500,500,e,"Scanning Entropy","Block","Entropy"),n._groups[0][0].outerHTML}},{key:"createEntropyImage",value:function(t){for(var e=[],n=0;n<t.length;n++)e.push({x:n%100,y:Math.floor(n/100),entropy:t[n]});var r=(new ZT.Document).createElement("svg");r=JT.select(r).attr("width","100%").attr("height","100%").attr("viewBox","0 0 100 100");var i=JT.scaleLinear().domain([0,JT.max(t,(function(t){return t}))]).range(["#000000","#FFFFFF"]).interpolate(JT.interpolateRgb);return r.selectAll("rect").data(e).enter().append("rect").attr("x",(function(t){return 1*t.x})).attr("y",(function(t){return 1*t.y})).attr("width",1).attr("height",1).style("fill",(function(t){return i(t.entropy)})),r._groups[0][0].outerHTML}},{key:"createShannonEntropyVisualization",value:function(t){return`Shannon entropy: ${t}\n <br><canvas id='chart-area'></canvas><br>\n - 0 represents no randomness (i.e. all the bytes in the data have the same value) whereas 8, the maximum, represents a completely random string.\n - Standard English text usually falls somewhere between 3.5 and 5.\n - Properly encrypted or compressed data of a reasonable length should have an entropy of over 7.5.\n\n The following results show the entropy of chunks of the input data. Chunks with particularly high entropy could suggest encrypted or compressed sections.\n\n <br><script>\n var canvas = document.getElementById("chart-area"),\n parentRect = canvas.closest(".cm-scroller").getBoundingClientRect(),\n entropy = ${t},\n height = parentRect.height * 0.25;\n\n canvas.width = parentRect.width * 0.95;\n canvas.height = height > 150 ? 150 : height;\n\n CanvasComponents.drawScaleBar(canvas, entropy, 8, [\n {\n label: "English text",\n min: 3.5,\n max: 5\n },{\n label: "Encrypted/compressed",\n min: 7.5,\n max: 8\n }\n ]);\n <\/script>`}},{key:"run",value:function(t,e){var n=e[0];switch(t=new Uint8Array(t),n){case"Histogram (Bar)":case"Histogram (Line)":return this.calculateByteFrequency(t);case"Curve":case"Image":return this.calculateScanningEntropy(t).entropyData;default:return this.calculateShannonEntropy(t)}}},{key:"present",value:function(t,e){switch(e[0]){case"Histogram (Bar)":return this.createByteFrequencyBarHistogram(t);case"Histogram (Line)":return this.createByteFrequencyLineHistogram(t);case"Curve":return this.createEntropyCurve(t);case"Image":return this.createEntropyImage(t);default:return this.createShannonEntropyVisualization(t)}}}])}(WT);const QT=KT;function tk(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(tk=function(){return!!t})()}var ek=["Line feed","CRLF"],nk=["Space","Comma","Semi-colon","Colon","Tab"],rk="white",ik="black";function ok(t,e,n,r,i){var o,a=[];return t.split(e).forEach((function(t,e){var u=t.split(n);if(u.length!==i)throw new MB(`Each row must have length ${i}.`);r&&0===e?o=u:a.push(u)})),{headings:o,values:a}}function ak(t,e,n,r){var i=ok(t,e,n,r,2),o=i.headings,a=i.values;return o&&(o={x:o[0],y:o[1]}),{headings:o,values:a=a.map((function(t){var e=parseFloat(t[0]),n=parseFloat(t[1]);if(Number.isNaN(e))throw new MB("Values must be numbers in base 10.");if(Number.isNaN(n))throw new MB("Values must be numbers in base 10.");return[e,n]}))}}function uk(t,e,n,r){var i=ok(t,e,n,r,3),o=i.headings,a=i.values;return o&&(o={x:o[0],y:o[1]}),{headings:o,values:a=a.map((function(t){var e=parseFloat(t[0]),n=parseFloat(t[1]),r=t[2];if(Number.isNaN(e))throw new MB("Values must be numbers in base 10.");if(Number.isNaN(n))throw new MB("Values must be numbers in base 10.");return[e,n,DB.escapeHtml(r)]}))}}function ck(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(ck=function(){return!!t})()}var sk=t.default?t.default:t,fk=hB()?hB():lB,lk=function(t){function e(){var t,n,i,o;return r(this,e),n=this,i=s(i=e),(t=c(n,ck()?Reflect.construct(i,[],s(n).constructor):i.apply(n,o))).name="Heatmap chart",t.module="Charts",t.description="A heatmap is a graphical representation of data where the individual values contained in a matrix are represented as colors.",t.infoURL="https://wikipedia.org/wiki/Heat_map",t.inputType="string",t.outputType="html",t.args=[{name:"Record delimiter",type:"option",value:ek},{name:"Field delimiter",type:"option",value:nk},{name:"Number of vertical bins",type:"number",value:25},{name:"Number of horizontal bins",type:"number",value:25},{name:"Use column headers as labels",type:"boolean",value:!0},{name:"X label",type:"string",value:""},{name:"Y label",type:"string",value:""},{name:"Draw bin edges",type:"boolean",value:!1},{name:"Min colour value",type:"string",value:rk},{name:"Max colour value",type:"string",value:ik}],t}return l(e,t),u(e,[{key:"run",value:function(t,e){var n=DB.charRep(e[0]),r=DB.charRep(e[1]),i=e[2],o=e[3],a=e[4],u=e[7],c=e[8],s=e[9];if(i<=0)throw new MB("Number of vertical bins must be greater than 0");if(o<=0)throw new MB("Number of horizontal bins must be greater than 0");var f=e[5],l=e[6],h=ak(t,n,r,a),d=h.headings,p=h.values;d&&(f=d.x,l=d.y);var g=(new fk.Document).createElement("svg");g=sk.select(g).attr("width","100%").attr("height","100%").attr("viewBox","0 0 500 500");var y=470,m=450,v=y/o,b=m/i,x=g.append("g").attr("transform","translate(30,10)"),w=this.getHeatmapPacking(p,i,o),_=Math.max.apply(Math,bB(w.map((function(t){var e=t.map((function(t){return t.length}));return Math.max.apply(Math,bB(e))})))),A=sk.extent(p,(function(t){return t[0]})),E=sk.extent(p,(function(t){return t[1]})),M=sk.scaleLinear().domain(A).range([0,y]),B=sk.scaleLinear().domain(E).range([m,0]),T=sk.scaleSequential(sk.interpolateLab(c,s)).domain([0,_]);return x.append("clipPath").attr("id","clip").append("rect").attr("width",y).attr("height",m),x.append("g").attr("class","bins").attr("clip-path","url(#clip)").selectAll("g").data(w).enter().append("g").selectAll("rect").data((function(t){return t})).enter().append("rect").attr("x",(function(t){return v*t.x})).attr("y",(function(t){return m-b*(t.y+1)})).attr("width",v).attr("height",b).attr("fill",(function(t){return T(t.length)})).attr("stroke",u?"rgba(0, 0, 0, 0.5)":"none").attr("stroke-width",u?"0.5":"none").append("title").text((function(t){return`Count: ${t.length}\n\n Percentage: ${(100*t.length/p.length).toFixed(2)}%\n\n `.replace(/\s{2,}/g,"\n")})),x.append("g").attr("class","axis axis--y").call(sk.axisLeft(B).tickSizeOuter(-470)),g.append("text").attr("transform","rotate(-90)").attr("y",-30).attr("x",-225).attr("dy","1em").style("text-anchor","middle").text(l),x.append("g").attr("class","axis axis--x").attr("transform","translate(0,450)").call(sk.axisBottom(M).tickSizeOuter(-450)),g.append("text").attr("x",235).attr("y",500).style("text-anchor","middle").text(f),g._groups[0][0].outerHTML}},{key:"getHeatmapPacking",value:function(t,e,n){var r=sk.extent(t,(function(t){return t[0]})),i=sk.extent(t,(function(t){return t[1]})),o=[];if(r[0]===r[1])throw"Cannot pack points. There is no difference between the minimum and maximum X coordinate.";if(i[0]===i[1])throw"Cannot pack points. There is no difference between the minimum and maximum Y coordinate.";for(var a=0;a<e;a++){o.push([]);for(var u=0;u<n;u++){var c=[];c.y=a,c.x=u,o[a].push(c)}}return t.forEach((function(t){var a=(t[1]-i[0])/(i[1]+1e-9-i[0]),u=(t[0]-r[0])/(r[1]+1e-9-r[0]),c=Math.floor(e*a),s=Math.floor(n*u);o[c][s].push({x:t[0],y:t[1]})})),o}}])}(WT);const hk=lk;var dk=Math.PI/3,pk=[0,dk,2*dk,3*dk,4*dk,5*dk];function gk(t){return t[0]}function yk(t){return t[1]}function mk(){var t,e,n,r=0,i=0,o=1,a=1,u=gk,c=yk;function s(t){var r,i={},o=[],a=t.length;for(r=0;r<a;++r)if(!isNaN(f=+u.call(null,s=t[r],r,t))&&!isNaN(l=+c.call(null,s,r,t))){var s,f,l,h=Math.round(l/=n),d=Math.round(f=f/e-(1&h)/2),p=l-h;if(3*Math.abs(p)>1){var g=f-d,y=d+(f<d?-1:1)/2,m=h+(l<h?-1:1),v=f-y,b=l-m;g*g+p*p>v*v+b*b&&(d=y+(1&h?1:-1)/2,h=m)}var x=d+"-"+h,w=i[x];w?w.push(s):(o.push(w=i[x]=[s]),w.x=(d+(1&h)/2)*e,w.y=h*n)}return o}function f(t){var e=0,n=0;return pk.map((function(r){var i=Math.sin(r)*t,o=-Math.cos(r)*t,a=i-e,u=o-n;return e=i,n=o,[a,u]}))}return s.hexagon=function(e){return"m"+f(null==e?t:+e).join("l")+"z"},s.centers=function(){for(var u=[],c=Math.round(i/n),s=Math.round(r/e),f=c*n;f<a+t;f+=n,++c)for(var l=s*e+(1&c)*e/2;l<o+e/2;l+=e)u.push([l,f]);return u},s.mesh=function(){var e=f(t).slice(0,4).join("l");return s.centers().map((function(t){return"M"+t+"m"+e})).join("")},s.x=function(t){return arguments.length?(u=t,s):u},s.y=function(t){return arguments.length?(c=t,s):c},s.radius=function(r){return arguments.length?(e=2*(t=+r)*Math.sin(dk),n=1.5*t,s):t},s.size=function(t){return arguments.length?(r=i=0,o=+t[0],a=+t[1],s):[o-r,a-i]},s.extent=function(t){return arguments.length?(r=+t[0][0],i=+t[0][1],o=+t[1][0],a=+t[1][1],s):[[r,i],[o,a]]},s.radius(1)}function vk(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(vk=function(){return!!t})()}var bk=t.default?t.default:t,xk=e.default?e.default:e,wk=hB()?hB():lB,_k=function(t){function e(){var t,n,i,o;return r(this,e),n=this,i=s(i=e),(t=c(n,vk()?Reflect.construct(i,[],s(n).constructor):i.apply(n,o))).name="Hex Density chart",t.module="Charts",t.description="Hex density charts are used in a similar way to scatter charts, however rather than rendering tens of thousands of points, it groups the points into a few hundred hexagons to show the distribution.",t.inputType="string",t.outputType="html",t.args=[{name:"Record delimiter",type:"option",value:ek},{name:"Field delimiter",type:"option",value:nk},{name:"Pack radius",type:"number",value:25},{name:"Draw radius",type:"number",value:15},{name:"Use column headers as labels",type:"boolean",value:!0},{name:"X label",type:"string",value:""},{name:"Y label",type:"string",value:""},{name:"Draw hexagon edges",type:"boolean",value:!1},{name:"Min colour value",type:"string",value:rk},{name:"Max colour value",type:"string",value:ik},{name:"Draw empty hexagons within data boundaries",type:"boolean",value:!1}],t}return l(e,t),u(e,[{key:"run",value:function(t,e){var n=DB.charRep(e[0]),r=DB.charRep(e[1]),i=e[2],o=e[3],a=e[4],u=e[7],c=e[8],s=e[9],f=e[10],l=e[5],h=e[6],d=ak(t,n,r,a),p=d.headings,g=d.values;p&&(l=p.x,h=p.y);var y=(new wk.Document).createElement("svg"),m=470,v=450,b=(y=bk.select(y).attr("width","100%").attr("height","100%").attr("viewBox","0 0 500 500")).append("g").attr("transform","translate(30,10)"),x=xk.hexbin().radius(i).extent([0,0],[m,v]),w=x(g),_=Math.max.apply(Math,bB(w.map((function(t){return t.length})))),A=bk.extent(w,(function(t){return t.x})),E=bk.extent(w,(function(t){return t.y}));A[0]-=2*i,A[1]+=3*i,E[0]-=2*i,E[1]+=2*i;var M=bk.scaleLinear().domain(A).range([0,m]),B=bk.scaleLinear().domain(E).range([v,0]),T=bk.scaleSequential(bk.interpolateLab(c,s)).domain([0,_]);return b.append("clipPath").attr("id","clip").append("rect").attr("width",m).attr("height",v),f&&b.append("g").attr("class","empty-hexagon").selectAll("path").data(this.getEmptyHexagons(w,i)).enter().append("path").attr("d",(function(t){return`M${M(t.x)},${B(t.y)} ${x.hexagon(o)}`})).attr("fill",(function(t){return T(0)})).attr("stroke",u?"black":"none").attr("stroke-width",u?"0.5":"none").append("title").text((function(t){return`Count: 0\n\n Percentage: ${(0).toFixed(2)}%\n\n Center: ${t.x.toFixed(2)}, ${t.y.toFixed(2)}\n\n `.replace(/\s{2,}/g,"\n")})),b.append("g").attr("class","hexagon").attr("clip-path","url(#clip)").selectAll("path").data(w).enter().append("path").attr("d",(function(t){return`M${M(t.x)},${B(t.y)} ${x.hexagon(o)}`})).attr("fill",(function(t){return T(t.length)})).attr("stroke",u?"black":"none").attr("stroke-width",u?"0.5":"none").append("title").text((function(t){var e=t.length,n=100*t.length/g.length,r=t.x,i=t.y,o=Math.min.apply(Math,bB(t.map((function(t){return t[0]})))),a=Math.max.apply(Math,bB(t.map((function(t){return t[0]})))),u=Math.min.apply(Math,bB(t.map((function(t){return t[1]})))),c=Math.max.apply(Math,bB(t.map((function(t){return t[1]}))));return`Count: ${e}\n\n Percentage: ${n.toFixed(2)}%\n\n Center: ${r.toFixed(2)}, ${i.toFixed(2)}\n\n Min X: ${o.toFixed(2)}\n\n Max X: ${a.toFixed(2)}\n\n Min Y: ${u.toFixed(2)}\n\n Max Y: ${c.toFixed(2)}\n `.replace(/\s{2,}/g,"\n")})),b.append("g").attr("class","axis axis--y").call(bk.axisLeft(B).tickSizeOuter(-470)),y.append("text").attr("transform","rotate(-90)").attr("y",-30).attr("x",-225).attr("dy","1em").style("text-anchor","middle").text(h),b.append("g").attr("class","axis axis--x").attr("transform","translate(0,450)").call(bk.axisBottom(M).tickSizeOuter(-450)),y.append("text").attr("x",235).attr("y",500).style("text-anchor","middle").text(l),y._groups[0][0].outerHTML}},{key:"getEmptyHexagons",value:function(t,e){for(var n=[],r=[bk.extent(t,(function(t){return t.x})),bk.extent(t,(function(t){return t.y}))],i=Math.cos(2*Math.PI/12)*e,o=Math.sin(2*Math.PI/12)*e,a=!1,u=r[1][0];u<=r[1][1]+e;u+=o+e){for(var c=r[0][0];c<=r[0][1]+e;c+=2*i){var s=c,f=u;if(a&&c>=r[0][1])break;a&&(s+=i),n.push({x:s,y:f})}a=!a}return n}}])}(WT);const Ak=_k;function Ek(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(Ek=function(){return!!t})()}var Mk=t.default?t.default:t,Bk=hB()?hB():lB,Tk=function(t){function e(){var t,n,i,o;return r(this,e),n=this,i=s(i=e),(t=c(n,Ek()?Reflect.construct(i,[],s(n).constructor):i.apply(n,o))).name="Scatter chart",t.module="Charts",t.description="Plots two-variable data as single points on a graph.",t.infoURL="https://wikipedia.org/wiki/Scatter_plot",t.inputType="string",t.outputType="html",t.args=[{name:"Record delimiter",type:"option",value:ek},{name:"Field delimiter",type:"option",value:nk},{name:"Use column headers as labels",type:"boolean",value:!0},{name:"X label",type:"string",value:""},{name:"Y label",type:"string",value:""},{name:"Colour",type:"string",value:ik},{name:"Point radius",type:"number",value:10},{name:"Use colour from third column",type:"boolean",value:!1}],t}return l(e,t),u(e,[{key:"run",value:function(t,e){var n=DB.charRep(e[0]),r=DB.charRep(e[1]),i=e[2],o=DB.escapeHtml(e[5]),a=e[6],u=e[7],c=e[3],s=e[4],f=(u?uk:ak)(t,n,r,i),l=f.headings,h=f.values;l&&(c=l.x,s=l.y);var d=(new Bk.Document).createElement("svg"),p=470,g=450,y=(d=Mk.select(d).attr("width","100%").attr("height","100%").attr("viewBox","0 0 500 500")).append("g").attr("transform","translate(30,10)"),m=Mk.extent(h,(function(t){return t[0]})),v=m[1]-m[0],b=Mk.extent(h,(function(t){return t[1]})),x=b[1]-b[0],w=Mk.scaleLinear().domain([m[0]-.1*v,m[1]+.1*v]).range([0,p]),_=Mk.scaleLinear().domain([b[0]-.1*x,b[1]+.1*x]).range([g,0]);return y.append("clipPath").attr("id","clip").append("rect").attr("width",p).attr("height",g),y.append("g").attr("class","points").attr("clip-path","url(#clip)").selectAll("circle").data(h).enter().append("circle").attr("cx",(function(t){return w(t[0])})).attr("cy",(function(t){return _(t[1])})).attr("r",(function(t){return a})).attr("fill",(function(t){return u?t[2]:o})).attr("stroke","rgba(0, 0, 0, 0.5)").attr("stroke-width","0.5").append("title").text((function(t){return`X: ${t[0]}\n\n Y: ${t[1]}\n\n `.replace(/\s{2,}/g,"\n")})),y.append("g").attr("class","axis axis--y").call(Mk.axisLeft(_).tickSizeOuter(-470)),d.append("text").attr("transform","rotate(-90)").attr("y",-30).attr("x",-225).attr("dy","1em").style("text-anchor","middle").text(s),y.append("g").attr("class","axis axis--x").attr("transform","translate(0,450)").call(Mk.axisBottom(w).tickSizeOuter(-450)),d.append("text").attr("x",235).attr("y",500).style("text-anchor","middle").text(c),d._groups[0][0].outerHTML}}])}(WT);const kk=Tk;function Fk(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(Fk=function(){return!!t})()}var Sk=t.default?t.default:t,Nk=hB()?hB():lB,Ck=function(t){function e(){var t,n,i,o;return r(this,e),n=this,i=s(i=e),(t=c(n,Fk()?Reflect.construct(i,[],s(n).constructor):i.apply(n,o))).name="Series chart",t.module="Charts",t.description="A time series graph is a line graph of repeated measurements taken over regular time intervals.",t.inputType="string",t.outputType="html",t.args=[{name:"Record delimiter",type:"option",value:ek},{name:"Field delimiter",type:"option",value:nk},{name:"X label",type:"string",value:""},{name:"Point radius",type:"number",value:1},{name:"Series colours",type:"string",value:"mediumseagreen, dodgerblue, tomato"}],t}return l(e,t),u(e,[{key:"run",value:function(t,e){var n=DB.charRep(e[0]),r=DB.charRep(e[1]),i=e[2],o=e[3],a=e[4].split(",").map((function(t){return DB.escapeHtml(t)})),u=100,c=function(t,e,n){var r=ok(t,e,n,!1,3).values,i=new Set,o={};r.forEach((function(t){var e=t[0],n=t[1],r=parseFloat(t[2]);if(Number.isNaN(r))throw new MB("Values must be numbers in base 10.");i.add(n),void 0===o[e]&&(o[e]={}),o[e][n]=r})),i=function(t,e,n){if(tk())return Reflect.construct.apply(null,arguments);var r=[null];r.push.apply(r,e);var i=new(t.bind.apply(t,r));return n&&f(i,n.prototype),i}(Array,bB(i));var a=[];for(var u in o){var c=o[u];a.push({name:u,data:c})}return{xValues:i,series:a}}(t,n,r),s=c.xValues,l=c.series,h=120*Object.keys(l).length,d=h+50+20,p=(new Nk.Document).createElement("svg");p=Sk.select(p).attr("width","100%").attr("height","100%").attr("viewBox",`0 0 500 ${d}`);var g=Sk.scalePoint().domain(s).range([0,430]);p.append("g").attr("class","axis axis--x").attr("transform","translate(50, 50)").call(Sk.axisTop(g).tickValues(s.filter((function(t,e){return[0,Math.round(s.length/2),s.length-1].indexOf(e)>=0})))),p.append("text").attr("x",250).attr("y",25).style("text-anchor","middle").text(i);var y={},m=430/s.length;s.forEach((function(t){var e=[];l.forEach((function(n){var r=n.data[t];void 0!==r&&e.push(`${n.name}: ${r}`)})),y[t]=e.join("\n")}));var v=p.append("g").attr("transform","translate(50, 50)");v.append("g").selectAll("rect").data(s).enter().append("rect").attr("x",(function(t){return g(t)-m/2})).attr("y",0).attr("width",m).attr("height",h).attr("stroke","none").attr("fill","transparent").append("title").text((function(t){return`${t}\n\n --\n\n ${y[t]}\n\n `.replace(/\s{2,}/g,"\n")}));var b=p.append("g").attr("transform","translate(0, 50)");return l.forEach((function(t,e){var n=Sk.extent(Object.values(t.data)),r=Sk.scaleLinear().domain(n).range([u,0]),i=v.append("g").attr("transform",`translate(0, ${u*e+20*(e+1)})`),c="";s.forEach((function(e,n){var i=s[n+1],o=t.data[e],a=t.data[i];void 0!==o&&void 0!==a&&(e=g(e),i=g(i),o=r(o),a=r(a),c+=`M ${e} ${o} L ${i} ${a} z `)})),i.append("path").attr("d",c).attr("fill","none").attr("stroke",a[e%a.length]).attr("stroke-width","1"),s.forEach((function(n){var u=t.data[n];void 0!==u&&i.append("circle").attr("cx",g(n)).attr("cy",r(u)).attr("r",o).attr("fill",a[e%a.length]).append("title").text((function(t){return`${n}\n\n --\n\n ${y[n]}\n\n `.replace(/\s{2,}/g,"\n")}))})),b.append("g").attr("transform",`translate(30, ${u*e+20*(e+1)})`).attr("class","axis axis--y").call(Sk.axisLeft(r).ticks(5)),b.append("g").attr("transform",`translate(0, ${50+u*e+20*(e+1)})`).append("text").style("text-anchor","middle").attr("transform","rotate(-90)").text(t.name)})),p._groups[0][0].outerHTML}}])}(WT);const Ik=Ck;("undefined"==typeof self?{}:self.OpModules||{}).Charts={Entropy:QT,"Heatmap chart":hk,"Hex Density chart":Ak,"Scatter chart":kk,"Series chart":Ik}})()})();