el-beeswarm
Version:
<div style="display: flex; padding: 1rem; flex-direction: column; align-items: center; justify-content: center; height: 100vh; text-align: center; display: flex;
1 lines • 104 kB
JavaScript
!function(t,n){"object"==typeof exports&&"object"==typeof module?module.exports=n():"function"==typeof define&&define.amd?define([],n):"object"==typeof exports?exports.vis=n():t.vis=n()}(self,(()=>(()=>{"use strict";var t={756:(t,n,e)=>{e.d(n,{Z:()=>s});var r=e(81),i=e.n(r),o=e(645),a=e.n(o)()(i());a.push([t.id,"@import url(https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;700&display=swap);"]),a.push([t.id,".light-theme {\r\n --bg-color: #fefefe;\r\n --font-color: #1C1E21;\r\n --axis-color: #666666;\r\n --color: #1C1E21;\r\n --item-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);\r\n --card-bg-color: #fefefe;\r\n --card-border-color: #e0e0e0;\r\n font-family: 'Open Sans', sans-serif;}\r\n\r\n.dark-theme {\r\n --bg-color: #242526;\r\n --font-color: #E3E3E3;\r\n --axis-color: #999999;\r\n --card-bg-color:#1B1B1D;\r\n --card-border-color: #3e3e3e;\r\n --item-shadow: 0 1px 3px rgba(255, 255, 255, 0.2);\r\n font-family: 'Open Sans', sans-serif;}\r\n\r\n.layer-axisX > text {\r\n color: var(--font-color);\r\n font-family: 'Open Sans', sans-serif; \r\n\r\n}\r\ntext{\r\n color: var(--font-color);\r\n font-family: 'Open Sans', sans-serif; \r\n font-size: 1rem;\r\n}\r\n\r\n.layer-axisY > text {\r\n color: var(--font-color);\r\n font-family: 'Open Sans', sans-serif; \r\n\r\n}\r\n\r\n.plot {\r\n background-color: var(--card-bg-color);\r\n border: 1px solid var(--card-border-color);\r\n border-radius: 10px;\r\n padding: 20px;\r\n box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);\r\n transition: background-color 0.3s ease, border-color 0.3s ease;\r\n color: var(--font-color);\r\n}\r\n\r\n.view-container .main-container .plot-title .plot-legend {\r\n background-color: var(--card-bg-color);\r\n border: 1px solid var(--card-border-color);\r\n color: var(--font-color);\r\n border-radius: 10px;\r\n padding: 20px;\r\n box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);\r\n transition: background-color 0.3s ease, border-color 0.3s ease;\r\n}\r\n/* Estilos do gráfico */\r\n.beeswarmplot {\r\n background-color: var(--bg-color);\r\n font-family: var(--font-family);\r\n color: var(--font-color);\r\n}\r\n\r\n.beeswarmplot .axis {\r\n stroke: var(--axis-color);\r\n}\r\n\r\n.beeswarmplot .item {\r\n box-shadow: var(--item-shadow);\r\n}\r\n\r\n.beeswarmplot .axis:hover {\r\n stroke: var(--font-color);\r\n cursor: pointer;\r\n}\r\n\r\n.beeswarmplot-card {\r\n background-color: var(--card-bg-color);\r\n border: 1px solid var(--card-border-color);\r\n border-radius: 10px;\r\n padding: 20px;\r\n box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);\r\n transition: background-color 0.3s ease, border-color 0.3s ease;\r\n}\r\n\r\ndiv.legend-container {\r\n border: 1px solid var(--card-border-color);\r\n border-radius: 10px;\r\n padding: 20px;\r\n box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);\r\n width: 20%;\r\n height: auto;\r\n background-color: var(--card-bg-color);\r\n margin: 5px;\r\n padding: 5px;\r\n border-radius: 10px;\r\n color: var(--font-color);\r\n}\r\n\r\nul.legend-ul {\r\n max-height: 180px;\r\n overflow: auto;\r\n margin: 0.5rem;\r\n}\r\n\r\nul.legend-ul::-webkit-scrollbar {\r\n width: 8px;\r\n}\r\n\r\nul.legend-ul::-webkit-scrollbar-track {\r\n background-color: var(--bg-color);\r\n}\r\n\r\nul.legend-ul::-webkit-scrollbar-thumb {\r\n background-color: #888;\r\n border-radius: 8px;\r\n}\r\n\r\nul.legend-ul::-webkit-scrollbar-thumb:hover {\r\n background-color: #555;\r\n}\r\n\r\nul.legend-ul > li {\r\n display: flex;\r\n margin: 2px 0px 0px 5px;\r\n}\r\n\r\nul.legend-ul > li > div {\r\n display: flex;\r\n margin: 0px 10px 0px 0px;\r\n}\r\n.legend-header {\r\n display: flex;\r\n justify-content: flex-end;\r\n}\r\n.legend-header > .close-btn {\r\n cursor: pointer;\r\n border: none;\r\n background: none;\r\n}\r\n\r\n.legend-ul.collapsed {\r\n max-height: 0;\r\n margin: 0px;\r\n padding: 0px;\r\n opacity: 0;\r\n overflow: hidden;\r\n transition: max-height 0.3s ease-out, opacity 0.3s ease-out;\r\n}\r\n\r\npath.domain {\r\n opacity: 0.1;\r\n}\r\n\r\n.tick > line {\r\n opacity: 0.1;\r\n}\r\n\r\n.plot-title {\r\n display: flex;\r\n justify-content: center;\r\n font-weight: bolder;\r\n color: var(--font-color);\r\n\r\n}\r\n.plot-legend {\r\n display: flex;\r\n justify-content: center;\r\n color: var(--font-color);\r\n\r\n}\r\n\r\nsvg.layer-backgound{\r\n}",""]);const s=a},645:t=>{t.exports=function(t){var n=[];return n.toString=function(){return this.map((function(n){var e="",r=void 0!==n[5];return n[4]&&(e+="@supports (".concat(n[4],") {")),n[2]&&(e+="@media ".concat(n[2]," {")),r&&(e+="@layer".concat(n[5].length>0?" ".concat(n[5]):""," {")),e+=t(n),r&&(e+="}"),n[2]&&(e+="}"),n[4]&&(e+="}"),e})).join("")},n.i=function(t,e,r,i,o){"string"==typeof t&&(t=[[null,t,void 0]]);var a={};if(r)for(var s=0;s<this.length;s++){var u=this[s][0];null!=u&&(a[u]=!0)}for(var l=0;l<t.length;l++){var c=[].concat(t[l]);r&&a[c[0]]||(void 0!==o&&(void 0===c[5]||(c[1]="@layer".concat(c[5].length>0?" ".concat(c[5]):""," {").concat(c[1],"}")),c[5]=o),e&&(c[2]?(c[1]="@media ".concat(c[2]," {").concat(c[1],"}"),c[2]=e):c[2]=e),i&&(c[4]?(c[1]="@supports (".concat(c[4],") {").concat(c[1],"}"),c[4]=i):c[4]="".concat(i)),n.push(c))}},n}},81:t=>{t.exports=function(t){return t[1]}},379:t=>{var n=[];function e(t){for(var e=-1,r=0;r<n.length;r++)if(n[r].identifier===t){e=r;break}return e}function r(t,r){for(var o={},a=[],s=0;s<t.length;s++){var u=t[s],l=r.base?u[0]+r.base:u[0],c=o[l]||0,h="".concat(l," ").concat(c);o[l]=c+1;var f=e(h),d={css:u[1],media:u[2],sourceMap:u[3],supports:u[4],layer:u[5]};if(-1!==f)n[f].references++,n[f].updater(d);else{var p=i(d,r);r.byIndex=s,n.splice(s,0,{identifier:h,updater:p,references:1})}a.push(h)}return a}function i(t,n){var e=n.domAPI(n);e.update(t);return function(n){if(n){if(n.css===t.css&&n.media===t.media&&n.sourceMap===t.sourceMap&&n.supports===t.supports&&n.layer===t.layer)return;e.update(t=n)}else e.remove()}}t.exports=function(t,i){var o=r(t=t||[],i=i||{});return function(t){t=t||[];for(var a=0;a<o.length;a++){var s=e(o[a]);n[s].references--}for(var u=r(t,i),l=0;l<o.length;l++){var c=e(o[l]);0===n[c].references&&(n[c].updater(),n.splice(c,1))}o=u}}},569:t=>{var n={};t.exports=function(t,e){var r=function(t){if(void 0===n[t]){var e=document.querySelector(t);if(window.HTMLIFrameElement&&e instanceof window.HTMLIFrameElement)try{e=e.contentDocument.head}catch(t){e=null}n[t]=e}return n[t]}(t);if(!r)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");r.appendChild(e)}},216:t=>{t.exports=function(t){var n=document.createElement("style");return t.setAttributes(n,t.attributes),t.insert(n,t.options),n}},565:(t,n,e)=>{t.exports=function(t){var n=e.nc;n&&t.setAttribute("nonce",n)}},795:t=>{t.exports=function(t){if("undefined"==typeof document)return{update:function(){},remove:function(){}};var n=t.insertStyleElement(t);return{update:function(e){!function(t,n,e){var r="";e.supports&&(r+="@supports (".concat(e.supports,") {")),e.media&&(r+="@media ".concat(e.media," {"));var i=void 0!==e.layer;i&&(r+="@layer".concat(e.layer.length>0?" ".concat(e.layer):""," {")),r+=e.css,i&&(r+="}"),e.media&&(r+="}"),e.supports&&(r+="}");var o=e.sourceMap;o&&"undefined"!=typeof btoa&&(r+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(o))))," */")),n.styleTagTransform(r,t,n.options)}(n,t,e)},remove:function(){!function(t){if(null===t.parentNode)return!1;t.parentNode.removeChild(t)}(n)}}}},589:t=>{t.exports=function(t,n){if(n.styleSheet)n.styleSheet.cssText=t;else{for(;n.firstChild;)n.removeChild(n.firstChild);n.appendChild(document.createTextNode(t))}}}},n={};function e(r){var i=n[r];if(void 0!==i)return i.exports;var o=n[r]={id:r,exports:{}};return t[r](o,o.exports,e),o.exports}e.n=t=>{var n=t&&t.__esModule?()=>t.default:()=>t;return e.d(n,{a:n}),n},e.d=(t,n)=>{for(var r in n)e.o(n,r)&&!e.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:n[r]})},e.o=(t,n)=>Object.prototype.hasOwnProperty.call(t,n),e.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},e.nc=void 0;var r={};return(()=>{function t(t,n){let e,r;if(void 0===n)for(const n of t)null!=n&&(void 0===e?n>=n&&(e=r=n):(e>n&&(e=n),r<n&&(r=n)));else{let i=-1;for(let o of t)null!=(o=n(o,++i,t))&&(void 0===e?o>=o&&(e=r=o):(e>o&&(e=o),r<o&&(r=o)))}return[e,r]}function n(t,n,e){t=+t,n=+n,e=(i=arguments.length)<2?(n=t,t=0,1):i<3?1:+e;for(var r=-1,i=0|Math.max(0,Math.ceil((n-t)/e)),o=new Array(i);++r<i;)o[r]=t+r*e;return o}function i(t){return t}e.r(r),e.d(r,{BeeswarmDimensions:()=>us,BeeswarmGroup:()=>ss,BeeswarmPlot:()=>as,VisualizationAbstract:()=>os});var o=1,a=2,s=3,u=4,l=1e-6;function c(t){return"translate("+t+",0)"}function h(t){return"translate(0,"+t+")"}function f(t){return n=>+t(n)}function d(t,n){return n=Math.max(0,t.bandwidth()-2*n)/2,t.round()&&(n=Math.round(n)),e=>+t(e)+n}function p(){return!this.__axis}function g(t,n){var e=[],r=null,g=null,y=6,m=6,v=3,w="undefined"!=typeof window&&window.devicePixelRatio>1?0:.5,x=t===o||t===u?-1:1,b=t===u||t===a?"x":"y",_=t===o||t===s?c:h;function M(c){var h=null==r?n.ticks?n.ticks.apply(n,e):n.domain():r,M=null==g?n.tickFormat?n.tickFormat.apply(n,e):i:g,T=Math.max(y,0)+v,A=n.range(),k=+A[0]+w,C=+A[A.length-1]+w,N=(n.bandwidth?d:f)(n.copy(),w),S=c.selection?c.selection():c,D=S.selectAll(".domain").data([null]),U=S.selectAll(".tick").data(h,n).order(),$=U.exit(),L=U.enter().append("g").attr("class","tick"),E=U.select("line"),Y=U.select("text");D=D.merge(D.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),U=U.merge(L),E=E.merge(L.append("line").attr("stroke","currentColor").attr(b+"2",x*y)),Y=Y.merge(L.append("text").attr("fill","currentColor").attr(b,x*T).attr("dy",t===o?"0em":t===s?"0.71em":"0.32em")),c!==S&&(D=D.transition(c),U=U.transition(c),E=E.transition(c),Y=Y.transition(c),$=$.transition(c).attr("opacity",l).attr("transform",(function(t){return isFinite(t=N(t))?_(t+w):this.getAttribute("transform")})),L.attr("opacity",l).attr("transform",(function(t){var n=this.parentNode.__axis;return _((n&&isFinite(n=n(t))?n:N(t))+w)}))),$.remove(),D.attr("d",t===u||t===a?m?"M"+x*m+","+k+"H"+w+"V"+C+"H"+x*m:"M"+w+","+k+"V"+C:m?"M"+k+","+x*m+"V"+w+"H"+C+"V"+x*m:"M"+k+","+w+"H"+C),U.attr("opacity",1).attr("transform",(function(t){return _(N(t)+w)})),E.attr(b+"2",x*y),Y.attr(b,x*T).text(M),S.filter(p).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",t===a?"start":t===u?"end":"middle"),S.each((function(){this.__axis=N}))}return M.scale=function(t){return arguments.length?(n=t,M):n},M.ticks=function(){return e=Array.from(arguments),M},M.tickArguments=function(t){return arguments.length?(e=null==t?[]:Array.from(t),M):e.slice()},M.tickValues=function(t){return arguments.length?(r=null==t?null:Array.from(t),M):r&&r.slice()},M.tickFormat=function(t){return arguments.length?(g=t,M):g},M.tickSize=function(t){return arguments.length?(y=m=+t,M):y},M.tickSizeInner=function(t){return arguments.length?(y=+t,M):y},M.tickSizeOuter=function(t){return arguments.length?(m=+t,M):m},M.tickPadding=function(t){return arguments.length?(v=+t,M):v},M.offset=function(t){return arguments.length?(w=+t,M):w},M}function m(t){return g(s,t)}function v(t){return g(u,t)}function w(){}function b(t){return null==t?w:function(){return this.querySelector(t)}}function _(){return[]}function M(t){return null==t?_:function(){return this.querySelectorAll(t)}}function T(t){return function(){return function(t){return null==t?[]:Array.isArray(t)?t:Array.from(t)}(t.apply(this,arguments))}}function A(t){return function(){return this.matches(t)}}function k(t){return function(n){return n.matches(t)}}var C=Array.prototype.find;function N(){return this.firstElementChild}var S=Array.prototype.filter;function D(){return Array.from(this.children)}function U(t){return new Array(t.length)}function $(t,n){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=n}function L(t,n,e,r,i,o){for(var a,s=0,u=n.length,l=o.length;s<l;++s)(a=n[s])?(a.__data__=o[s],r[s]=a):e[s]=new $(t,o[s]);for(;s<u;++s)(a=n[s])&&(i[s]=a)}function E(t,n,e,r,i,o,a){var s,u,l,c=new Map,h=n.length,f=o.length,d=new Array(h);for(s=0;s<h;++s)(u=n[s])&&(d[s]=l=a.call(u,u.__data__,s,n)+"",c.has(l)?i[s]=u:c.set(l,u));for(s=0;s<f;++s)l=a.call(t,o[s],s,o)+"",(u=c.get(l))?(r[s]=u,u.__data__=o[s],c.delete(l)):e[s]=new $(t,o[s]);for(s=0;s<h;++s)(u=n[s])&&c.get(d[s])===u&&(i[s]=u)}function Y(t){return t.__data__}function F(t){return"object"==typeof t&&"length"in t?t:Array.from(t)}function H(t,n){return t<n?-1:t>n?1:t>=n?0:NaN}$.prototype={constructor:$,appendChild:function(t){return this._parent.insertBefore(t,this._next)},insertBefore:function(t,n){return this._parent.insertBefore(t,n)},querySelector:function(t){return this._parent.querySelector(t)},querySelectorAll:function(t){return this._parent.querySelectorAll(t)}};var j="http://www.w3.org/1999/xhtml";const O={svg:"http://www.w3.org/2000/svg",xhtml:j,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function P(t){var n=t+="",e=n.indexOf(":");return e>=0&&"xmlns"!==(n=t.slice(0,e))&&(t=t.slice(e+1)),O.hasOwnProperty(n)?{space:O[n],local:t}:t}function z(t){return function(){this.removeAttribute(t)}}function X(t){return function(){this.removeAttributeNS(t.space,t.local)}}function I(t,n){return function(){this.setAttribute(t,n)}}function q(t,n){return function(){this.setAttributeNS(t.space,t.local,n)}}function R(t,n){return function(){var e=n.apply(this,arguments);null==e?this.removeAttribute(t):this.setAttribute(t,e)}}function V(t,n){return function(){var e=n.apply(this,arguments);null==e?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,e)}}function B(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}function Z(t){return function(){this.style.removeProperty(t)}}function G(t,n,e){return function(){this.style.setProperty(t,n,e)}}function W(t,n,e){return function(){var r=n.apply(this,arguments);null==r?this.style.removeProperty(t):this.style.setProperty(t,r,e)}}function J(t,n){return t.style.getPropertyValue(n)||B(t).getComputedStyle(t,null).getPropertyValue(n)}function Q(t){return function(){delete this[t]}}function K(t,n){return function(){this[t]=n}}function tt(t,n){return function(){var e=n.apply(this,arguments);null==e?delete this[t]:this[t]=e}}function nt(t){return t.trim().split(/^|\s+/)}function et(t){return t.classList||new rt(t)}function rt(t){this._node=t,this._names=nt(t.getAttribute("class")||"")}function it(t,n){for(var e=et(t),r=-1,i=n.length;++r<i;)e.add(n[r])}function ot(t,n){for(var e=et(t),r=-1,i=n.length;++r<i;)e.remove(n[r])}function at(t){return function(){it(this,t)}}function st(t){return function(){ot(this,t)}}function ut(t,n){return function(){(n.apply(this,arguments)?it:ot)(this,t)}}function lt(){this.textContent=""}function ct(t){return function(){this.textContent=t}}function ht(t){return function(){var n=t.apply(this,arguments);this.textContent=null==n?"":n}}function ft(){this.innerHTML=""}function dt(t){return function(){this.innerHTML=t}}function pt(t){return function(){var n=t.apply(this,arguments);this.innerHTML=null==n?"":n}}function gt(){this.nextSibling&&this.parentNode.appendChild(this)}function yt(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function mt(t){return function(){var n=this.ownerDocument,e=this.namespaceURI;return e===j&&n.documentElement.namespaceURI===j?n.createElement(t):n.createElementNS(e,t)}}function vt(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function wt(t){var n=P(t);return(n.local?vt:mt)(n)}function xt(){return null}function bt(){var t=this.parentNode;t&&t.removeChild(this)}function _t(){var t=this.cloneNode(!1),n=this.parentNode;return n?n.insertBefore(t,this.nextSibling):t}function Mt(){var t=this.cloneNode(!0),n=this.parentNode;return n?n.insertBefore(t,this.nextSibling):t}function Tt(t){return function(){var n=this.__on;if(n){for(var e,r=0,i=-1,o=n.length;r<o;++r)e=n[r],t.type&&e.type!==t.type||e.name!==t.name?n[++i]=e:this.removeEventListener(e.type,e.listener,e.options);++i?n.length=i:delete this.__on}}}function At(t,n,e){return function(){var r,i=this.__on,o=function(t){return function(n){t.call(this,n,this.__data__)}}(n);if(i)for(var a=0,s=i.length;a<s;++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=e),void(r.value=n);this.addEventListener(t.type,o,e),r={type:t.type,name:t.name,value:n,listener:o,options:e},i?i.push(r):this.__on=[r]}}function kt(t,n,e){var r=B(t),i=r.CustomEvent;"function"==typeof i?i=new i(n,e):(i=r.document.createEvent("Event"),e?(i.initEvent(n,e.bubbles,e.cancelable),i.detail=e.detail):i.initEvent(n,!1,!1)),t.dispatchEvent(i)}function Ct(t,n){return function(){return kt(this,t,n)}}function Nt(t,n){return function(){return kt(this,t,n.apply(this,arguments))}}rt.prototype={add:function(t){this._names.indexOf(t)<0&&(this._names.push(t),this._node.setAttribute("class",this._names.join(" ")))},remove:function(t){var n=this._names.indexOf(t);n>=0&&(this._names.splice(n,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(t){return this._names.indexOf(t)>=0}};var St=[null];function Dt(t,n){this._groups=t,this._parents=n}function Ut(){return new Dt([[document.documentElement]],St)}Dt.prototype=Ut.prototype={constructor:Dt,select:function(t){"function"!=typeof t&&(t=b(t));for(var n=this._groups,e=n.length,r=new Array(e),i=0;i<e;++i)for(var o,a,s=n[i],u=s.length,l=r[i]=new Array(u),c=0;c<u;++c)(o=s[c])&&(a=t.call(o,o.__data__,c,s))&&("__data__"in o&&(a.__data__=o.__data__),l[c]=a);return new Dt(r,this._parents)},selectAll:function(t){t="function"==typeof t?T(t):M(t);for(var n=this._groups,e=n.length,r=[],i=[],o=0;o<e;++o)for(var a,s=n[o],u=s.length,l=0;l<u;++l)(a=s[l])&&(r.push(t.call(a,a.__data__,l,s)),i.push(a));return new Dt(r,i)},selectChild:function(t){return this.select(null==t?N:function(t){return function(){return C.call(this.children,t)}}("function"==typeof t?t:k(t)))},selectChildren:function(t){return this.selectAll(null==t?D:function(t){return function(){return S.call(this.children,t)}}("function"==typeof t?t:k(t)))},filter:function(t){"function"!=typeof t&&(t=A(t));for(var n=this._groups,e=n.length,r=new Array(e),i=0;i<e;++i)for(var o,a=n[i],s=a.length,u=r[i]=[],l=0;l<s;++l)(o=a[l])&&t.call(o,o.__data__,l,a)&&u.push(o);return new Dt(r,this._parents)},data:function(t,n){if(!arguments.length)return Array.from(this,Y);var e=n?E:L,r=this._parents,i=this._groups;"function"!=typeof t&&(t=function(t){return function(){return t}}(t));for(var o=i.length,a=new Array(o),s=new Array(o),u=new Array(o),l=0;l<o;++l){var c=r[l],h=i[l],f=h.length,d=F(t.call(c,c&&c.__data__,l,r)),p=d.length,g=s[l]=new Array(p),y=a[l]=new Array(p);e(c,h,g,y,u[l]=new Array(f),d,n);for(var m,v,w=0,x=0;w<p;++w)if(m=g[w]){for(w>=x&&(x=w+1);!(v=y[x])&&++x<p;);m._next=v||null}}return(a=new Dt(a,r))._enter=s,a._exit=u,a},enter:function(){return new Dt(this._enter||this._groups.map(U),this._parents)},exit:function(){return new Dt(this._exit||this._groups.map(U),this._parents)},join:function(t,n,e){var r=this.enter(),i=this,o=this.exit();return"function"==typeof t?(r=t(r))&&(r=r.selection()):r=r.append(t+""),null!=n&&(i=n(i))&&(i=i.selection()),null==e?o.remove():e(o),r&&i?r.merge(i).order():i},merge:function(t){for(var n=t.selection?t.selection():t,e=this._groups,r=n._groups,i=e.length,o=r.length,a=Math.min(i,o),s=new Array(i),u=0;u<a;++u)for(var l,c=e[u],h=r[u],f=c.length,d=s[u]=new Array(f),p=0;p<f;++p)(l=c[p]||h[p])&&(d[p]=l);for(;u<i;++u)s[u]=e[u];return new Dt(s,this._parents)},selection:function(){return this},order:function(){for(var t=this._groups,n=-1,e=t.length;++n<e;)for(var r,i=t[n],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 n(n,e){return n&&e?t(n.__data__,e.__data__):!n-!e}t||(t=H);for(var e=this._groups,r=e.length,i=new Array(r),o=0;o<r;++o){for(var a,s=e[o],u=s.length,l=i[o]=new Array(u),c=0;c<u;++c)(a=s[c])&&(l[c]=a);l.sort(n)}return new Dt(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,n=0,e=t.length;n<e;++n)for(var r=t[n],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 n of this)++t;return t},empty:function(){return!this.node()},each:function(t){for(var n=this._groups,e=0,r=n.length;e<r;++e)for(var i,o=n[e],a=0,s=o.length;a<s;++a)(i=o[a])&&t.call(i,i.__data__,a,o);return this},attr:function(t,n){var e=P(t);if(arguments.length<2){var r=this.node();return e.local?r.getAttributeNS(e.space,e.local):r.getAttribute(e)}return this.each((null==n?e.local?X:z:"function"==typeof n?e.local?V:R:e.local?q:I)(e,n))},style:function(t,n,e){return arguments.length>1?this.each((null==n?Z:"function"==typeof n?W:G)(t,n,null==e?"":e)):J(this.node(),t)},property:function(t,n){return arguments.length>1?this.each((null==n?Q:"function"==typeof n?tt:K)(t,n)):this.node()[t]},classed:function(t,n){var e=nt(t+"");if(arguments.length<2){for(var r=et(this.node()),i=-1,o=e.length;++i<o;)if(!r.contains(e[i]))return!1;return!0}return this.each(("function"==typeof n?ut:n?at:st)(e,n))},text:function(t){return arguments.length?this.each(null==t?lt:("function"==typeof t?ht:ct)(t)):this.node().textContent},html:function(t){return arguments.length?this.each(null==t?ft:("function"==typeof t?pt:dt)(t)):this.node().innerHTML},raise:function(){return this.each(gt)},lower:function(){return this.each(yt)},append:function(t){var n="function"==typeof t?t:wt(t);return this.select((function(){return this.appendChild(n.apply(this,arguments))}))},insert:function(t,n){var e="function"==typeof t?t:wt(t),r=null==n?xt:"function"==typeof n?n:b(n);return this.select((function(){return this.insertBefore(e.apply(this,arguments),r.apply(this,arguments)||null)}))},remove:function(){return this.each(bt)},clone:function(t){return this.select(t?Mt:_t)},datum:function(t){return arguments.length?this.property("__data__",t):this.node().__data__},on:function(t,n,e){var r,i,o=function(t){return t.trim().split(/^|\s+/).map((function(t){var n="",e=t.indexOf(".");return e>=0&&(n=t.slice(e+1),t=t.slice(0,e)),{type:t,name:n}}))}(t+""),a=o.length;if(!(arguments.length<2)){for(s=n?At:Tt,r=0;r<a;++r)this.each(s(o[r],n,e));return this}var s=this.node().__on;if(s)for(var u,l=0,c=s.length;l<c;++l)for(r=0,u=s[l];r<a;++r)if((i=o[r]).type===u.type&&i.name===u.name)return u.value},dispatch:function(t,n){return this.each(("function"==typeof n?Nt:Ct)(t,n))},[Symbol.iterator]:function*(){for(var t=this._groups,n=0,e=t.length;n<e;++n)for(var r,i=t[n],o=0,a=i.length;o<a;++o)(r=i[o])&&(yield r)}};const $t=Ut;var Lt={value:()=>{}};function Et(){for(var t,n=0,e=arguments.length,r={};n<e;++n){if(!(t=arguments[n]+"")||t in r||/[\s.]/.test(t))throw new Error("illegal type: "+t);r[t]=[]}return new Yt(r)}function Yt(t){this._=t}function Ft(t,n){for(var e,r=0,i=t.length;r<i;++r)if((e=t[r]).name===n)return e.value}function Ht(t,n,e){for(var r=0,i=t.length;r<i;++r)if(t[r].name===n){t[r]=Lt,t=t.slice(0,r).concat(t.slice(r+1));break}return null!=e&&t.push({name:n,value:e}),t}Yt.prototype=Et.prototype={constructor:Yt,on:function(t,n){var e,r,i=this._,o=(r=i,(t+"").trim().split(/^|\s+/).map((function(t){var n="",e=t.indexOf(".");if(e>=0&&(n=t.slice(e+1),t=t.slice(0,e)),t&&!r.hasOwnProperty(t))throw new Error("unknown type: "+t);return{type:t,name:n}}))),a=-1,s=o.length;if(!(arguments.length<2)){if(null!=n&&"function"!=typeof n)throw new Error("invalid callback: "+n);for(;++a<s;)if(e=(t=o[a]).type)i[e]=Ht(i[e],t.name,n);else if(null==n)for(e in i)i[e]=Ht(i[e],t.name,null);return this}for(;++a<s;)if((e=(t=o[a]).type)&&(e=Ft(i[e],t.name)))return e},copy:function(){var t={},n=this._;for(var e in n)t[e]=n[e].slice();return new Yt(t)},call:function(t,n){if((e=arguments.length-2)>0)for(var e,r,i=new Array(e),o=0;o<e;++o)i[o]=arguments[o+2];if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(o=0,e=(r=this._[t]).length;o<e;++o)r[o].value.apply(n,i)},apply:function(t,n,e){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(n,e)}};const jt=Et;var Ot,Pt,zt=0,Xt=0,It=0,qt=1e3,Rt=0,Vt=0,Bt=0,Zt="object"==typeof performance&&performance.now?performance:Date,Gt="object"==typeof window&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(t){setTimeout(t,17)};function Wt(){return Vt||(Gt(Jt),Vt=Zt.now()+Bt)}function Jt(){Vt=0}function Qt(){this._call=this._time=this._next=null}function Kt(t,n,e){var r=new Qt;return r.restart(t,n,e),r}function tn(){Vt=(Rt=Zt.now())+Bt,zt=Xt=0;try{!function(){Wt(),++zt;for(var t,n=Ot;n;)(t=Vt-n._time)>=0&&n._call.call(void 0,t),n=n._next;--zt}()}finally{zt=0,function(){var t,n,e=Ot,r=1/0;for(;e;)e._call?(r>e._time&&(r=e._time),t=e,e=e._next):(n=e._next,e._next=null,e=t?t._next=n:Ot=n);Pt=t,en(r)}(),Vt=0}}function nn(){var t=Zt.now(),n=t-Rt;n>qt&&(Bt-=n,Rt=t)}function en(t){zt||(Xt&&(Xt=clearTimeout(Xt)),t-Vt>24?(t<1/0&&(Xt=setTimeout(tn,t-Zt.now()-Bt)),It&&(It=clearInterval(It))):(It||(Rt=Zt.now(),It=setInterval(nn,qt)),zt=1,Gt(tn)))}function rn(t,n,e){var r=new Qt;return n=null==n?0:+n,r.restart((e=>{r.stop(),t(e+n)}),n,e),r}Qt.prototype=Kt.prototype={constructor:Qt,restart:function(t,n,e){if("function"!=typeof t)throw new TypeError("callback is not a function");e=(null==e?Wt():+e)+(null==n?0:+n),this._next||Pt===this||(Pt?Pt._next=this:Ot=this,Pt=this),this._call=t,this._time=e,en()},stop:function(){this._call&&(this._call=null,this._time=1/0,en())}};var on=jt("start","end","cancel","interrupt"),an=[],sn=0,un=1,ln=2,cn=3,hn=4,fn=5,dn=6;function pn(t,n,e,r,i,o){var a=t.__transition;if(a){if(e in a)return}else t.__transition={};!function(t,n,e){var r,i=t.__transition;function o(t){e.state=un,e.timer.restart(a,e.delay,e.time),e.delay<=t&&a(t-e.delay)}function a(o){var l,c,h,f;if(e.state!==un)return u();for(l in i)if((f=i[l]).name===e.name){if(f.state===cn)return rn(a);f.state===hn?(f.state=dn,f.timer.stop(),f.on.call("interrupt",t,t.__data__,f.index,f.group),delete i[l]):+l<n&&(f.state=dn,f.timer.stop(),f.on.call("cancel",t,t.__data__,f.index,f.group),delete i[l])}if(rn((function(){e.state===cn&&(e.state=hn,e.timer.restart(s,e.delay,e.time),s(o))})),e.state=ln,e.on.call("start",t,t.__data__,e.index,e.group),e.state===ln){for(e.state=cn,r=new Array(h=e.tween.length),l=0,c=-1;l<h;++l)(f=e.tween[l].value.call(t,t.__data__,e.index,e.group))&&(r[++c]=f);r.length=c+1}}function s(n){for(var i=n<e.duration?e.ease.call(null,n/e.duration):(e.timer.restart(u),e.state=fn,1),o=-1,a=r.length;++o<a;)r[o].call(t,i);e.state===fn&&(e.on.call("end",t,t.__data__,e.index,e.group),u())}function u(){for(var r in e.state=dn,e.timer.stop(),delete i[n],i)return;delete t.__transition}i[n]=e,e.timer=Kt(o,0,e.time)}(t,e,{name:n,index:r,group:i,on,tween:an,time:o.time,delay:o.delay,duration:o.duration,ease:o.ease,timer:null,state:sn})}function gn(t,n){var e=mn(t,n);if(e.state>sn)throw new Error("too late; already scheduled");return e}function yn(t,n){var e=mn(t,n);if(e.state>cn)throw new Error("too late; already running");return e}function mn(t,n){var e=t.__transition;if(!e||!(e=e[n]))throw new Error("transition not found");return e}function vn(t,n){return t=+t,n=+n,function(e){return t*(1-e)+n*e}}var wn,xn=180/Math.PI,bn={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function _n(t,n,e,r,i,o){var a,s,u;return(a=Math.sqrt(t*t+n*n))&&(t/=a,n/=a),(u=t*e+n*r)&&(e-=t*u,r-=n*u),(s=Math.sqrt(e*e+r*r))&&(e/=s,r/=s,u/=s),t*r<n*e&&(t=-t,n=-n,u=-u,a=-a),{translateX:i,translateY:o,rotate:Math.atan2(n,t)*xn,skewX:Math.atan(u)*xn,scaleX:a,scaleY:s}}function Mn(t,n,e,r){function i(t){return t.length?t.pop()+" ":""}return function(o,a){var s=[],u=[];return o=t(o),a=t(a),function(t,r,i,o,a,s){if(t!==i||r!==o){var u=a.push("translate(",null,n,null,e);s.push({i:u-4,x:vn(t,i)},{i:u-2,x:vn(r,o)})}else(i||o)&&a.push("translate("+i+n+o+e)}(o.translateX,o.translateY,a.translateX,a.translateY,s,u),function(t,n,e,o){t!==n?(t-n>180?n+=360:n-t>180&&(t+=360),o.push({i:e.push(i(e)+"rotate(",null,r)-2,x:vn(t,n)})):n&&e.push(i(e)+"rotate("+n+r)}(o.rotate,a.rotate,s,u),function(t,n,e,o){t!==n?o.push({i:e.push(i(e)+"skewX(",null,r)-2,x:vn(t,n)}):n&&e.push(i(e)+"skewX("+n+r)}(o.skewX,a.skewX,s,u),function(t,n,e,r,o,a){if(t!==e||n!==r){var s=o.push(i(o)+"scale(",null,",",null,")");a.push({i:s-4,x:vn(t,e)},{i:s-2,x:vn(n,r)})}else 1===e&&1===r||o.push(i(o)+"scale("+e+","+r+")")}(o.scaleX,o.scaleY,a.scaleX,a.scaleY,s,u),o=a=null,function(t){for(var n,e=-1,r=u.length;++e<r;)s[(n=u[e]).i]=n.x(t);return s.join("")}}}var Tn=Mn((function(t){const n=new("function"==typeof DOMMatrix?DOMMatrix:WebKitCSSMatrix)(t+"");return n.isIdentity?bn:_n(n.a,n.b,n.c,n.d,n.e,n.f)}),"px, ","px)","deg)"),An=Mn((function(t){return null==t?bn:(wn||(wn=document.createElementNS("http://www.w3.org/2000/svg","g")),wn.setAttribute("transform",t),(t=wn.transform.baseVal.consolidate())?_n((t=t.matrix).a,t.b,t.c,t.d,t.e,t.f):bn)}),", ",")",")");function kn(t,n){var e,r;return function(){var i=yn(this,t),o=i.tween;if(o!==e)for(var a=0,s=(r=e=o).length;a<s;++a)if(r[a].name===n){(r=r.slice()).splice(a,1);break}i.tween=r}}function Cn(t,n,e){var r,i;if("function"!=typeof e)throw new Error;return function(){var o=yn(this,t),a=o.tween;if(a!==r){i=(r=a).slice();for(var s={name:n,value:e},u=0,l=i.length;u<l;++u)if(i[u].name===n){i[u]=s;break}u===l&&i.push(s)}o.tween=i}}function Nn(t,n,e){var r=t._id;return t.each((function(){var t=yn(this,r);(t.value||(t.value={}))[n]=e.apply(this,arguments)})),function(t){return mn(t,r).value[n]}}function Sn(t,n,e){t.prototype=n.prototype=e,e.constructor=t}function Dn(t,n){var e=Object.create(t.prototype);for(var r in n)e[r]=n[r];return e}function Un(){}var $n=.7,Ln=1/$n,En="\\s*([+-]?\\d+)\\s*",Yn="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Fn="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",Hn=/^#([0-9a-f]{3,8})$/,jn=new RegExp(`^rgb\\(${En},${En},${En}\\)$`),On=new RegExp(`^rgb\\(${Fn},${Fn},${Fn}\\)$`),Pn=new RegExp(`^rgba\\(${En},${En},${En},${Yn}\\)$`),zn=new RegExp(`^rgba\\(${Fn},${Fn},${Fn},${Yn}\\)$`),Xn=new RegExp(`^hsl\\(${Yn},${Fn},${Fn}\\)$`),In=new RegExp(`^hsla\\(${Yn},${Fn},${Fn},${Yn}\\)$`),qn={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 Rn(){return this.rgb().formatHex()}function Vn(){return this.rgb().formatRgb()}function Bn(t){var n,e;return t=(t+"").trim().toLowerCase(),(n=Hn.exec(t))?(e=n[1].length,n=parseInt(n[1],16),6===e?Zn(n):3===e?new Jn(n>>8&15|n>>4&240,n>>4&15|240&n,(15&n)<<4|15&n,1):8===e?Gn(n>>24&255,n>>16&255,n>>8&255,(255&n)/255):4===e?Gn(n>>12&15|n>>8&240,n>>8&15|n>>4&240,n>>4&15|240&n,((15&n)<<4|15&n)/255):null):(n=jn.exec(t))?new Jn(n[1],n[2],n[3],1):(n=On.exec(t))?new Jn(255*n[1]/100,255*n[2]/100,255*n[3]/100,1):(n=Pn.exec(t))?Gn(n[1],n[2],n[3],n[4]):(n=zn.exec(t))?Gn(255*n[1]/100,255*n[2]/100,255*n[3]/100,n[4]):(n=Xn.exec(t))?re(n[1],n[2]/100,n[3]/100,1):(n=In.exec(t))?re(n[1],n[2]/100,n[3]/100,n[4]):qn.hasOwnProperty(t)?Zn(qn[t]):"transparent"===t?new Jn(NaN,NaN,NaN,0):null}function Zn(t){return new Jn(t>>16&255,t>>8&255,255&t,1)}function Gn(t,n,e,r){return r<=0&&(t=n=e=NaN),new Jn(t,n,e,r)}function Wn(t,n,e,r){return 1===arguments.length?((i=t)instanceof Un||(i=Bn(i)),i?new Jn((i=i.rgb()).r,i.g,i.b,i.opacity):new Jn):new Jn(t,n,e,null==r?1:r);var i}function Jn(t,n,e,r){this.r=+t,this.g=+n,this.b=+e,this.opacity=+r}function Qn(){return`#${ee(this.r)}${ee(this.g)}${ee(this.b)}`}function Kn(){const t=te(this.opacity);return`${1===t?"rgb(":"rgba("}${ne(this.r)}, ${ne(this.g)}, ${ne(this.b)}${1===t?")":`, ${t})`}`}function te(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function ne(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function ee(t){return((t=ne(t))<16?"0":"")+t.toString(16)}function re(t,n,e,r){return r<=0?t=n=e=NaN:e<=0||e>=1?t=n=NaN:n<=0&&(t=NaN),new oe(t,n,e,r)}function ie(t){if(t instanceof oe)return new oe(t.h,t.s,t.l,t.opacity);if(t instanceof Un||(t=Bn(t)),!t)return new oe;if(t instanceof oe)return t;var n=(t=t.rgb()).r/255,e=t.g/255,r=t.b/255,i=Math.min(n,e,r),o=Math.max(n,e,r),a=NaN,s=o-i,u=(o+i)/2;return s?(a=n===o?(e-r)/s+6*(e<r):e===o?(r-n)/s+2:(n-e)/s+4,s/=u<.5?o+i:2-o-i,a*=60):s=u>0&&u<1?0:a,new oe(a,s,u,t.opacity)}function oe(t,n,e,r){this.h=+t,this.s=+n,this.l=+e,this.opacity=+r}function ae(t){return(t=(t||0)%360)<0?t+360:t}function se(t){return Math.max(0,Math.min(1,t||0))}function ue(t,n,e){return 255*(t<60?n+(e-n)*t/60:t<180?e:t<240?n+(e-n)*(240-t)/60:n)}function le(t,n,e,r,i){var o=t*t,a=o*t;return((1-3*t+3*o-a)*n+(4-6*o+3*a)*e+(1+3*t+3*o-3*a)*r+a*i)/6}Sn(Un,Bn,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:Rn,formatHex:Rn,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return ie(this).formatHsl()},formatRgb:Vn,toString:Vn}),Sn(Jn,Wn,Dn(Un,{brighter(t){return t=null==t?Ln:Math.pow(Ln,t),new Jn(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=null==t?$n:Math.pow($n,t),new Jn(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new Jn(ne(this.r),ne(this.g),ne(this.b),te(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:Qn,formatHex:Qn,formatHex8:function(){return`#${ee(this.r)}${ee(this.g)}${ee(this.b)}${ee(255*(isNaN(this.opacity)?1:this.opacity))}`},formatRgb:Kn,toString:Kn})),Sn(oe,(function(t,n,e,r){return 1===arguments.length?ie(t):new oe(t,n,e,null==r?1:r)}),Dn(Un,{brighter(t){return t=null==t?Ln:Math.pow(Ln,t),new oe(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=null==t?$n:Math.pow($n,t),new oe(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=this.h%360+360*(this.h<0),n=isNaN(t)||isNaN(this.s)?0:this.s,e=this.l,r=e+(e<.5?e:1-e)*n,i=2*e-r;return new Jn(ue(t>=240?t-240:t+120,i,r),ue(t,i,r),ue(t<120?t+240:t-120,i,r),this.opacity)},clamp(){return new oe(ae(this.h),se(this.s),se(this.l),te(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=te(this.opacity);return`${1===t?"hsl(":"hsla("}${ae(this.h)}, ${100*se(this.s)}%, ${100*se(this.l)}%${1===t?")":`, ${t})`}`}}));const ce=t=>()=>t;function he(t,n){return function(e){return t+e*n}}function fe(t){return 1==(t=+t)?de:function(n,e){return e-n?function(t,n,e){return t=Math.pow(t,e),n=Math.pow(n,e)-t,e=1/e,function(r){return Math.pow(t+r*n,e)}}(n,e,t):ce(isNaN(n)?e:n)}}function de(t,n){var e=n-t;return e?he(t,e):ce(isNaN(t)?n:t)}const pe=function t(n){var e=fe(n);function r(t,n){var r=e((t=Wn(t)).r,(n=Wn(n)).r),i=e(t.g,n.g),o=e(t.b,n.b),a=de(t.opacity,n.opacity);return function(n){return t.r=r(n),t.g=i(n),t.b=o(n),t.opacity=a(n),t+""}}return r.gamma=t,r}(1);function ge(t){return function(n){var e,r,i=n.length,o=new Array(i),a=new Array(i),s=new Array(i);for(e=0;e<i;++e)r=Wn(n[e]),o[e]=r.r||0,a[e]=r.g||0,s[e]=r.b||0;return o=t(o),a=t(a),s=t(s),r.opacity=1,function(t){return r.r=o(t),r.g=a(t),r.b=s(t),r+""}}}var ye=ge((function(t){var n=t.length-1;return function(e){var r=e<=0?e=0:e>=1?(e=1,n-1):Math.floor(e*n),i=t[r],o=t[r+1],a=r>0?t[r-1]:2*i-o,s=r<n-1?t[r+2]:2*o-i;return le((e-r/n)*n,a,i,o,s)}})),me=(ge((function(t){var n=t.length;return function(e){var r=Math.floor(((e%=1)<0?++e:e)*n),i=t[(r+n-1)%n],o=t[r%n],a=t[(r+1)%n],s=t[(r+2)%n];return le((e-r/n)*n,i,o,a,s)}})),/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g),ve=new RegExp(me.source,"g");function we(t,n){var e,r,i,o=me.lastIndex=ve.lastIndex=0,a=-1,s=[],u=[];for(t+="",n+="";(e=me.exec(t))&&(r=ve.exec(n));)(i=r.index)>o&&(i=n.slice(o,i),s[a]?s[a]+=i:s[++a]=i),(e=e[0])===(r=r[0])?s[a]?s[a]+=r:s[++a]=r:(s[++a]=null,u.push({i:a,x:vn(e,r)})),o=ve.lastIndex;return o<n.length&&(i=n.slice(o),s[a]?s[a]+=i:s[++a]=i),s.length<2?u[0]?function(t){return function(n){return t(n)+""}}(u[0].x):function(t){return function(){return t}}(n):(n=u.length,function(t){for(var e,r=0;r<n;++r)s[(e=u[r]).i]=e.x(t);return s.join("")})}function xe(t,n){var e;return("number"==typeof n?vn:n instanceof Bn?pe:(e=Bn(n))?(n=e,pe):we)(t,n)}function be(t){return function(){this.removeAttribute(t)}}function _e(t){return function(){this.removeAttributeNS(t.space,t.local)}}function Me(t,n,e){var r,i,o=e+"";return function(){var a=this.getAttribute(t);return a===o?null:a===r?i:i=n(r=a,e)}}function Te(t,n,e){var r,i,o=e+"";return function(){var a=this.getAttributeNS(t.space,t.local);return a===o?null:a===r?i:i=n(r=a,e)}}function Ae(t,n,e){var r,i,o;return function(){var a,s,u=e(this);if(null!=u)return(a=this.getAttribute(t))===(s=u+"")?null:a===r&&s===i?o:(i=s,o=n(r=a,u));this.removeAttribute(t)}}function ke(t,n,e){var r,i,o;return function(){var a,s,u=e(this);if(null!=u)return(a=this.getAttributeNS(t.space,t.local))===(s=u+"")?null:a===r&&s===i?o:(i=s,o=n(r=a,u));this.removeAttributeNS(t.space,t.local)}}function Ce(t,n){var e,r;function i(){var i=n.apply(this,arguments);return i!==r&&(e=(r=i)&&function(t,n){return function(e){this.setAttributeNS(t.space,t.local,n.call(this,e))}}(t,i)),e}return i._value=n,i}function Ne(t,n){var e,r;function i(){var i=n.apply(this,arguments);return i!==r&&(e=(r=i)&&function(t,n){return function(e){this.setAttribute(t,n.call(this,e))}}(t,i)),e}return i._value=n,i}function Se(t,n){return function(){gn(this,t).delay=+n.apply(this,arguments)}}function De(t,n){return n=+n,function(){gn(this,t).delay=n}}function Ue(t,n){return function(){yn(this,t).duration=+n.apply(this,arguments)}}function $e(t,n){return n=+n,function(){yn(this,t).duration=n}}var Le=$t.prototype.constructor;function Ee(t){return function(){this.style.removeProperty(t)}}var Ye=0;function Fe(t,n,e,r){this._groups=t,this._parents=n,this._name=e,this._id=r}function He(){return++Ye}var je=$t.prototype;Fe.prototype=function(t){return $t().transition(t)}.prototype={constructor:Fe,select:function(t){var n=this._name,e=this._id;"function"!=typeof t&&(t=b(t));for(var r=this._groups,i=r.length,o=new Array(i),a=0;a<i;++a)for(var s,u,l=r[a],c=l.length,h=o[a]=new Array(c),f=0;f<c;++f)(s=l[f])&&(u=t.call(s,s.__data__,f,l))&&("__data__"in s&&(u.__data__=s.__data__),h[f]=u,pn(h[f],n,e,f,h,mn(s,e)));return new Fe(o,this._parents,n,e)},selectAll:function(t){var n=this._name,e=this._id;"function"!=typeof t&&(t=M(t));for(var r=this._groups,i=r.length,o=[],a=[],s=0;s<i;++s)for(var u,l=r[s],c=l.length,h=0;h<c;++h)if(u=l[h]){for(var f,d=t.call(u,u.__data__,h,l),p=mn(u,e),g=0,y=d.length;g<y;++g)(f=d[g])&&pn(f,n,e,g,d,p);o.push(d),a.push(u)}return new Fe(o,a,n,e)},selectChild:je.selectChild,selectChildren:je.selectChildren,filter:function(t){"function"!=typeof t&&(t=A(t));for(var n=this._groups,e=n.length,r=new Array(e),i=0;i<e;++i)for(var o,a=n[i],s=a.length,u=r[i]=[],l=0;l<s;++l)(o=a[l])&&t.call(o,o.__data__,l,a)&&u.push(o);return new Fe(r,this._parents,this._name,this._id)},merge:function(t){if(t._id!==this._id)throw new Error;for(var n=this._groups,e=t._groups,r=n.length,i=e.length,o=Math.min(r,i),a=new Array(r),s=0;s<o;++s)for(var u,l=n[s],c=e[s],h=l.length,f=a[s]=new Array(h),d=0;d<h;++d)(u=l[d]||c[d])&&(f[d]=u);for(;s<r;++s)a[s]=n[s];return new Fe(a,this._parents,this._name,this._id)},selection:function(){return new Le(this._groups,this._parents)},transition:function(){for(var t=this._name,n=this._id,e=He(),r=this._groups,i=r.length,o=0;o<i;++o)for(var a,s=r[o],u=s.length,l=0;l<u;++l)if(a=s[l]){var c=mn(a,n);pn(a,t,e,l,s,{time:c.time+c.delay+c.duration,delay:0,duration:c.duration,ease:c.ease})}return new Fe(r,this._parents,t,e)},call:je.call,nodes:je.nodes,node:je.node,size:je.size,empty:je.empty,each:je.each,on:function(t,n){var e=this._id;return arguments.length<2?mn(this.node(),e).on.on(t):this.each(function(t,n,e){var r,i,o=function(t){return(t+"").trim().split(/^|\s+/).every((function(t){var n=t.indexOf(".");return n>=0&&(t=t.slice(0,n)),!t||"start"===t}))}(n)?gn:yn;return function(){var a=o(this,t),s=a.on;s!==r&&(i=(r=s).copy()).on(n,e),a.on=i}}(e,t,n))},attr:function(t,n){var e=P(t),r="transform"===e?An:xe;return this.attrTween(t,"function"==typeof n?(e.local?ke:Ae)(e,r,Nn(this,"attr."+t,n)):null==n?(e.local?_e:be)(e):(e.local?Te:Me)(e,r,n))},attrTween:function(t,n){var e="attr."+t;if(arguments.length<2)return(e=this.tween(e))&&e._value;if(null==n)return this.tween(e,null);if("function"!=typeof n)throw new Error;var r=P(t);return this.tween(e,(r.local?Ce:Ne)(r,n))},style:function(t,n,e){var r="transform"==(t+="")?Tn:xe;return null==n?this.styleTween(t,function(t,n){var e,r,i;return function(){var o=J(this,t),a=(this.style.removeProperty(t),J(this,t));return o===a?null:o===e&&a===r?i:i=n(e=o,r=a)}}(t,r)).on("end.style."+t,Ee(t)):"function"==typeof n?this.styleTween(t,function(t,n,e){var r,i,o;return function(){var a=J(this,t),s=e(this),u=s+"";return null==s&&(this.style.removeProperty(t),u=s=J(this,t)),a===u?null:a===r&&u===i?o:(i=u,o=n(r=a,s))}}(t,r,Nn(this,"style."+t,n))).each(function(t,n){var e,r,i,o,a="style."+n,s="end."+a;return function(){var u=yn(this,t),l=u.on,c=null==u.value[a]?o||(o=Ee(n)):void 0;l===e&&i===c||(r=(e=l).copy()).on(s,i=c),u.on=r}}(this._id,t)):this.styleTween(t,function(t,n,e){var r,i,o=e+"";return function(){var a=J(this,t);return a===o?null:a===r?i:i=n(r=a,e)}}(t,r,n),e).on("end.style."+t,null)},styleTween:function(t,n,e){var r="style."+(t+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(null==n)return this.tween(r,null);if("function"!=typeof n)throw new Error;return this.tween(r,function(t,n,e){var r,i;function o(){var o=n.apply(this,arguments);return o!==i&&(r=(i=o)&&function(t,n,e){return function(r){this.style.setProperty(t,n.call(this,r),e)}}(t,o,e)),r}return o._value=n,o}(t,n,null==e?"":e))},text:function(t){return this.tween("text","function"==typeof t?function(t){return function(){var n=t(this);this.textContent=null==n?"":n}}(Nn(this,"text",t)):function(t){return function(){this.textContent=t}}(null==t?"":t+""))},textTween:function(t){var n="text";if(arguments.length<1)return(n=this.tween(n))&&n._value;if(null==t)return this.tween(n,null);if("function"!=typeof t)throw new Error;return this.tween(n,function(t){var n,e;function r(){var r=t.apply(this,arguments);return r!==e&&(n=(e=r)&&function(t){return function(n){this.textContent=t.call(this,n)}}(r)),n}return r._value=t,r}(t))},remove:function(){return this.on("end.remove",function(t){return function(){var n=this.parentNode;for(var e in this.__transition)if(+e!==t)return;n&&n.removeChild(this)}}(this._id))},tween:function(t,n){var e=this._id;if(t+="",arguments.length<2){for(var r,i=mn(this.node(),e).tween,o=0,a=i.length;o<a;++o)if((r=i[o]).name===t)return r.value;return null}return this.each((null==n?kn:Cn)(e,t,n))},delay:function(t){var n=this._id;return arguments.length?this.each(("function"==typeof t?Se:De)(n,t)):mn(this.node(),n).delay},duration:function(t){var n=this._id;return arguments.length?this.each(("function"==typeof t?Ue:$e)(n,t)):mn(this.node(),n).duration},ease:function(t){var n=this._id;return arguments.length?this.each(function(t,n){if("function"!=typeof n)throw new Error;return function(){yn(this,t).ease=n}}(n,t)):mn(this.node(),n).ease},easeVarying:function(t){if("function"!=typeof t)throw new Error;return this.each(function(t,n){return function(){var e=n.apply(this,arguments);if("function"!=typeof e)throw new Error;yn(this,t).ease=e}}(this._id,t))},end:function(){var t,n,e=this,r=e._id,i=e.size();return new Promise((function(o,a){var s={value:a},u={value:function(){0==--i&&o()}};e.each((function(){var e=yn(this,r),i=e.on;i!==t&&((n=(t=i).copy())._.cancel.push(s),n._.interrupt.push(s),n._.end.push(u)),e.on=n})),0===i&&o()}))},[Symbol.iterator]:je[Symbol.iterator]};var Oe={time:null,delay:0,duration:250,ease:function(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}};function Pe(t,n){for(var e;!(e=t.__transition)||!(e=e[n]);)if(!(t=t.parentNode))throw new Error(`transition ${n} not found`);return e}$t.prototype.interrupt=function(t){return this.each((function(){!function(t,n){var e,r,i,o=t.__transition,a=!0;if(o){for(i in n=null==n?null:n+"",o)(e=o[i]).name===n?(r=e.state>ln&&e.state<fn,e.state=dn,e.timer.stop(),e.on.call(r?"interrupt":"cancel",t,t.__data__,e.index,e.group),delete o[i]):a=!1;a&&delete t.__transition}}(this,t)}))},$t.prototype.transition=function(t){var n,e;t instanceof Fe?(n=t._id,t=t._name):(n=He(),(e=Oe).time=Wt(),t=null==t?null:t+"");for(var r=this._groups,i=r.length,o=0;o<i;++o)for(var a,s=r[o],u=s.length,l=0;l<u;++l)(a=s[l])&&pn(a,t,n,l,s,e||Pe(a,n));return new Fe(r,this._parents,t,n)};const{abs:ze,max:Xe,min:Ie}=Math;function qe(t){return[+t[0],+t[1]]}function Re(t){return[qe(t[0]),qe(t[1])]}["w","e"].map(Ve),["n","s"].map(Ve),["n","w","e","s","nw","ne","sw","se"].map(Ve);function Ve(t){return{type:t}}function Be(t,n,e,r){if(isNaN(n)||isNaN(e))return t;var i,o,a,s,u,l,c,h,f,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((l=n>=(o=(g+m)/2))?g=o:m=o,(c=e>=(a=(y+v)/2))?y=a:v=a,i=d,!(d=d[h=c<<1|l]))return i[h]=p,t;if(s=+t._x.call(null,d.data),u=+t._y.call(null,d.data),n===s&&e===u)return p.next=d,i?i[h]=p:t._root=p,t;do{i=i?i[h]=new Array(4):t._root=new Array(4),(l=n>=(o=(g+m)/2))?g=o:m=o,(c=e>=(a=(y+v)/2))?y=a:v=a}while((h=c<<1|l)==(f=(u>=a)<<1|s>=o));return i[f]=d,i[h]=p,t}function Ze(t,n,e,r,i){this.node=t,this.x0=n,this.y0=e,this.x1=r,this.y1=i}function Ge(t){return t[0]}function We(t){return t[1]}function Je(t,n,e){var r=new Qe(null==n?Ge:n,null==e?We:e,NaN,NaN,NaN,NaN);return null==t?r:r.addAll(t)}function Qe(t,n,e,r,i,o){this._x=t,this._y=n,this._x0=e,this._y0=r,this._x1=i,this._y1=o,this._root=void 0}function Ke(t){for(var n={data:t.data},e=n;t=t.next;)e=e.next={data:t.data};return n}var tr=Je.prototype=Qe.prototype;function nr(t){return function(){return t}}function er(t){return 1e-6*(t()-.5)}function rr(t){return t.x+t.vx}function ir(t){return t.y+t.vy}tr.copy=function(){var t,n,e=new Qe(this._x,this._y,this._x0,this._y0,this._x1,this._y1),r=this._root;if(!r)return e;if(!r.length)return e._root=Ke(r),e;for(t=[{source:r,target:e._root=new Array(4)}];r=t.pop();)for(var i=0;i<4;++i)(n=r.source[i])&&(n.length?t.push({source:n,target:r.target[i]=new Array(4)}):r.target[i]=Ke(n));return e},tr.add=function(t){const n=+this._x.call(null,t),e=+this._y.call(null,t);return Be(this.cover(n,e),n,e,t)},tr.addAll=function(t){var n,e,r,i,o=t.length,a=new Array(o),s=new Array(o),u=1/0,l=1/0,c=-1/0,h=-1/0;for(e=0;e<o;++e)isNaN(r=+this._x.call(null,n=t[e]))||isNaN(i=+this._y.call(null,n))||(a[e]=r,s[e]=i,r<u&&(u=r),r>c&&(c=r),i<l&&(l=i),i>h&&(h=i));if(u>c||l>h)return this;for(this.cover(u,l).cove