chart.xkcd
Version:
xkcd style chart lib
1 lines • 149 kB
JavaScript
(function () {function Oc(a){return a&&a.__esModule?{d:a.default}:{d:a}}var Zc={};function Ge(){}var Gc=function($){return null==$?Ge:function(){return this.querySelector($)}};var tf=function(e){"function"!=typeof e&&(e=Gc(e));for(var r=this._groups,t=r.length,a=new Array(t),l=0;l<t;++l)for(var $,_,o=r[l],n=o.length,i=a[l]=new Array(n),p=0;p<n;++p)($=o[p])&&(_=e.call($,$.__data__,p,o))&&("__data__"in $&&(_.__data__=$.__data__),i[p]=_);return new m(a,this._parents)};function Kd(){return[]}var Nd=function(t){return null==t?Kd:function(){return this.querySelectorAll(t)}};var Od=function(e){"function"!=typeof e&&(e=Nd(e));for(var r=this._groups,t=r.length,$=[],l=[],o=0;o<t;++o)for(var a,p=r[o],u=p.length,n=0;n<u;++n)(a=p[n])&&($.push(e.call(a,a.__data__,n,p)),l.push(a));return new m($,l)};var Wd=function(r){return function(){return this.matches(r)}};var De=function(r){"function"!=typeof r&&(r=Wd(r));for(var e=this._groups,a=e.length,t=new Array(a),$=0;$<a;++$)for(var S,o=e[$],n=o.length,p=t[$]=[],i=0;i<n;++i)(S=o[i])&&r.call(S,S.__data__,i,o)&&p.push(S);return new m(t,this._parents)};var Qb=function(e){return new Array(e.length)};var He=function(){return new m(this._enter||this._groups.map(Qb),this._parents)};function na(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}na.prototype={constructor:na,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,t){return this._parent.insertBefore(e,t)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}};var Ke=function(r){return function(){return r}};var Pb="$";function If(r,e,n,$,t,a){for(var i,o=0,l=e.length,f=a.length;o<f;++o)(i=e[o])?(i.__data__=a[o],$[o]=i):n[o]=new na(r,a[o]);for(;o<l;++o)(i=e[o])&&(t[o]=i)}function Mf(r,e,n,$,t,a,i){var o,l,f,q={},_=e.length,O=a.length,d=new Array(_);for(o=0;o<_;++o)(l=e[o])&&(d[o]=f=Pb+i.call(l,l.__data__,o,e),f in q?t[o]=l:q[f]=l);for(o=0;o<O;++o)(l=q[f=Pb+i.call(r,a[o],o,a)])?($[o]=l,l.__data__=a[o],q[f]=null):n[o]=new na(r,a[o]);for(o=0;o<_;++o)(l=e[o])&&q[d[o]]===l&&(t[o]=l)}var $f=function(r,e){if(!r)return d=new Array(this.size()),f=-1,this.each(function(r){d[++f]=r}),d;var n=e?Mf:If,$=this._parents,t=this._groups;"function"!=typeof r&&(r=Ke(r));for(var a=t.length,i=new Array(a),o=new Array(a),l=new Array(a),f=0;f<a;++f){var q=$[f],_=t[f],O=_.length,d=r.call(q,q&&q.__data__,f,$),u=d.length,v=o[f]=new Array(u),c=i[f]=new Array(u);n(q,_,v,c,l[f]=new Array(O),d,e);for(var p,y,h=0,x=0;h<u;++h)if(p=v[h]){for(h>=x&&(x=h+1);!(y=c[x])&&++x<u;);p._next=y||null}}return(i=new m(i,$))._enter=o,i._exit=l,i};var fg=function(){return new m(this._exit||this._groups.map(Qb),this._parents)};var mg=function(e,t,r){var $=this.enter(),n=this,o=this.exit();return $="function"==typeof e?e($):$.append(e+""),null!=t&&(n=t(n)),null==r?o.remove():r(o),$&&n?$.merge(n).order():n};var qg=function(r){for(var e=this._groups,t=r._groups,$=e.length,n=t.length,a=Math.min($,n),o=new Array($),x=0;x<a;++x)for(var p,i=e[x],l=t[x],u=i.length,f=o[x]=new Array(u),s=0;s<u;++s)(p=i[s]||l[s])&&(f[s]=p);for(;x<$;++x)o[x]=e[x];return new m(o,this._parents)};var Sg=function(){for(var e=this._groups,t=-1,r=e.length;++t<r;)for(var o,$=e[t],n=$.length-1,a=$[n];--n>=0;)(o=$[n])&&(a&&4^o.compareDocumentPosition(a)&&a.parentNode.insertBefore(o,a),a=o);return this};var Vg=function(r){function e(e,t){return e&&t?r(e.__data__,t.__data__):!e-!t}r||(r=Yg);for(var t=this._groups,n=t.length,$=new Array(n),a=0;a<n;++a){for(var w,o=t[a],i=o.length,u=$[a]=new Array(i),_=0;_<i;++_)(w=o[_])&&(u[_]=w);u.sort(e)}return new m($,this._parents).order()};function Yg(r,e){return r<e?-1:r>e?1:r>=e?0:NaN}var uh=function(){var t=arguments[0];return arguments[0]=this,t.apply(null,arguments),this};var Hh=function(){var t=new Array(this.size()),a=-1;return this.each(function(){t[++a]=this}),t};var kd=function(){for(var r=this._groups,t=0,e=r.length;t<e;++t)for(var $=r[t],o=0,u=$.length;o<u;++o){var a=$[o];if(a)return a}return null};var pd=function(){var e=0;return this.each(function(){++e}),e};var rd=function(){return!this.node()};var sd=function(t){for(var r=this._groups,e=0,$=r.length;e<$;++e)for(var a,n=r[e],p=0,o=n.length;p<o;++p)(a=n[p])&&t.call(a,a.__data__,p,n);return this};function xd(t){return function(){this.removeAttribute(t)}}function yd(t){return function(){this.removeAttributeNS(t.space,t.local)}}function zd(t,r){return function(){this.setAttribute(t,r)}}function Cd(t,r){return function(){this.setAttributeNS(t.space,t.local,r)}}function Ed(t,r){return function(){var e=r.apply(this,arguments);null==e?this.removeAttribute(t):this.setAttribute(t,e)}}function Jd(t,r){return function(){var e=r.apply(this,arguments);null==e?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,e)}}var Sa="http://www.w3.org/1999/xhtml";var Rb={svg:"http://www.w3.org/2000/svg",xhtml:Sa,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};var Sb=function(e){var $=e+="",a=$.indexOf(":");return a>=0&&"xmlns"!==($=e.slice(0,a))&&(e=e.slice(a+1)),Rb.hasOwnProperty($)?{space:Rb[$],local:e}:e};var Pd=function(t,r){var e=Sb(t);if(arguments.length<2){var a=this.node();return e.local?a.getAttributeNS(e.space,e.local):a.getAttribute(e)}return this.each((null==r?e.local?yd:xd:"function"==typeof r?e.local?Jd:Ed:e.local?Cd:zd)(e,r))};function Td(e){return function(){this.style.removeProperty(e)}}function Ud(e,t,r){return function(){this.style.setProperty(e,t,r)}}function Vd(e,t,r){return function(){var $=t.apply(this,arguments);null==$?this.style.removeProperty(e):this.style.setProperty(e,$,r)}}var sc=function(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView};var ve=function(e,t,r){return arguments.length>1?this.each((null==t?Td:"function"==typeof t?Vd:Ud)(e,t,null==r?"":r)):we(this.node(),e)};function we(e,t){return e.style.getPropertyValue(t)||sc(e).getComputedStyle(e,null).getPropertyValue(t)}function ye(r){return function(){delete this[r]}}function ze(r,t){return function(){this[r]=t}}function Ae(r,t){return function(){var n=t.apply(this,arguments);null==n?delete this[r]:this[r]=n}}var Be=function(r,t){return arguments.length>1?this.each((null==t?ye:"function"==typeof t?Ae:ze)(r,t)):this.node()[r]};function Hc(s){return s.trim().split(/^|\s+/)}function gb(s){return s.classList||new Rc(s)}function Rc(s){this._node=s,this._names=Hc(s.getAttribute("class")||"")}function Yc(s,t){for(var a=gb(s),$=-1,e=t.length;++$<e;)a.add(t[$])}function Ab(s,t){for(var a=gb(s),$=-1,e=t.length;++$<e;)a.remove(t[$])}function Le(s){return function(){Yc(this,s)}}function Me(s){return function(){Ab(this,s)}}function Ne(s,t){return function(){(t.apply(this,arguments)?Yc:Ab)(this,s)}}Rc.prototype={add:function(s){this._names.indexOf(s)<0&&(this._names.push(s),this._node.setAttribute("class",this._names.join(" ")))},remove:function(s){var t=this._names.indexOf(s);t>=0&&(this._names.splice(t,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(s){return this._names.indexOf(s)>=0}};var Oe=function(s,t){var a=Hc(s+"");if(arguments.length<2){for(var $=gb(this.node()),e=-1,n=a.length;++e<n;)if(!$.contains(a[e]))return!1;return!0}return this.each(("function"==typeof t?Ne:t?Le:Me)(a,t))};function Pe(){this.textContent=""}function Qe(t){return function(){this.textContent=t}}function Se(t){return function(){var n=t.apply(this,arguments);this.textContent=null==n?"":n}}var $e=function(t){return arguments.length?this.each(null==t?Pe:("function"==typeof t?Se:Qe)(t)):this.node().textContent};function _e(){this.innerHTML=""}function af(n){return function(){this.innerHTML=n}}function bf(n){return function(){var t=n.apply(this,arguments);this.innerHTML=null==t?"":t}}var df=function(n){return arguments.length?this.each(null==n?_e:("function"==typeof n?bf:af)(n)):this.node().innerHTML};function ef(){this.nextSibling&&this.parentNode.appendChild(this)}var gf=function(){return this.each(ef)};function kf(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}var pf=function(){return this.each(kf)};function rf(e){return function(){var r=this.ownerDocument,t=this.namespaceURI;return t===Sa&&r.documentElement.namespaceURI===Sa?r.createElement(e):r.createElementNS(t,e)}}function sf(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}var Hb=function(e){var r=Sb(e);return(r.local?sf:rf)(r)};var vf=function(t){var r="function"==typeof t?t:Hb(t);return this.select(function(){return this.appendChild(r.apply(this,arguments))})};function wf(){return null}var zf=function(t,r){var e="function"==typeof t?t:Hb(t),$=null==r?wf:"function"==typeof r?r:Gc(r);return this.select(function(){return this.insertBefore(e.apply(this,arguments),$.apply(this,arguments)||null)})};function Af(){var e=this.parentNode;e&&e.removeChild(this)}var Bf=function(){return this.each(Af)};function Cf(){return this.parentNode.insertBefore(this.cloneNode(!1),this.nextSibling)}function Ef(){return this.parentNode.insertBefore(this.cloneNode(!0),this.nextSibling)}var Ff=function(e){return this.select(e?Ef:Cf)};var Gf=function(t){return arguments.length?this.property("__data__",t):this.node().__data__};var Hf={},Ib=null;if("undefined"!=typeof document){var Jf=document.documentElement;"onmouseenter"in Jf||(Hf={mouseenter:"mouseover",mouseleave:"mouseout"})}function Kf(e,t,n){return e=Jb(e,t,n),function(t){var n=t.relatedTarget;n&&(n===this||8&n.compareDocumentPosition(this))||e.call(this,t)}}function Jb(e,t,n){return function(r){var $=Ib;Ib=r;try{e.call(this,this.__data__,t,n)}finally{Ib=$}}}function Nf(e){return e.trim().split(/^|\s+/).map(function(e){var t="",n=e.indexOf(".");return n>=0&&(t=e.slice(n+1),e=e.slice(0,n)),{type:e,name:t}})}function Pf(e){return function(){var t=this.__on;if(t){for(var n,r=0,$=-1,i=t.length;r<i;++r)n=t[r],e.type&&n.type!==e.type||n.name!==e.name?t[++$]=n:this.removeEventListener(n.type,n.listener,n.capture);++$?t.length=$:delete this.__on}}}function Sf(e,t,n){var r=Hf.hasOwnProperty(e.type)?Kf:Jb;return function($,i,p){var o,a=this.__on,v=r(t,i,p);if(a)for(var s=0,u=a.length;s<u;++s)if((o=a[s]).type===e.type&&o.name===e.name)return this.removeEventListener(o.type,o.listener,o.capture),this.addEventListener(o.type,o.listener=v,o.capture=n),void(o.value=t);this.addEventListener(e.type,v,n),o={type:e.type,name:e.name,value:t,listener:v,capture:n},a?a.push(o):this.__on=[o]}}var Wf=function(e,t,n){var r,$,i=Nf(e+""),p=i.length;if(!(arguments.length<2)){for(o=t?Sf:Pf,null==n&&(n=!1),r=0;r<p;++r)this.each(o(i[r],t,n));return this}var o=this.node().__on;if(o)for(var a,v=0,s=o.length;v<s;++v)for(r=0,a=o[v];r<p;++r)if(($=i[r]).type===a.type&&$.name===a.name)return a.value};function Kb(t,n,e){var $=sc(t),a=$.CustomEvent;"function"==typeof a?a=new a(n,e):(a=$.document.createEvent("Event"),e?(a.initEvent(n,e.bubbles,e.cancelable),a.detail=e.detail):a.initEvent(n,!1,!1)),t.dispatchEvent(a)}function _f(t,n){return function(){return Kb(this,t,n)}}function dg(t,n){return function(){return Kb(this,t,n.apply(this,arguments))}}var eg=function(t,n){return this.each(("function"==typeof n?dg:_f)(t,n))};var Lb=[null];function m(e,$){this._groups=e,this._parents=$}function pg(){return new m([[document.documentElement]],Lb)}m.prototype=pg.prototype={constructor:m,select:tf,selectAll:Od,filter:De,data:$f,enter:He,exit:fg,join:mg,merge:qg,order:Sg,sort:Vg,call:uh,nodes:Hh,node:kd,size:pd,empty:rd,each:sd,attr:Pd,style:ve,property:Be,classed:Oe,text:$e,html:df,raise:gf,lower:pf,append:vf,insert:zf,remove:Bf,clone:Ff,datum:Gf,on:Wf,dispatch:eg};var j=function(e){return"string"==typeof e?new m([[document.querySelector(e)]],[document.documentElement]):new m([[e]],Lb)};var Og=function(){for(var e,r=Ib;e=r.sourceEvent;)r=e;return r};var Rg=function(e,t){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]}var i=e.getBoundingClientRect();return[t.clientX-i.left-e.clientLeft,t.clientY-i.top-e.clientTop]};var A=function(e){var $=Og();return $.changedTouches&&($=$.changedTouches[0]),Rg(e,$)};function jb(){var n,r,t=Gb().unknown(void 0),e=t.domain,i=t.range,u=0,a=1,o=!1,$=0,l=0,g=.5;function d(){var t=e().length,d=a<u,p=d?a:u,c=d?u:a;n=(c-p)/Math.max(1,t-$+2*l),o&&(n=Math.floor(n)),p+=(c-p-n*(t-$))*g,r=n*(1-$),o&&(p=Math.round(p),r=Math.round(r));var f=od(t).map(function(r){return p+n*r});return i(d?f.reverse():f)}return delete t.unknown,t.domain=function(n){return arguments.length?(e(n),d()):e()},t.range=function(n){return arguments.length?([u,a]=n,u=+u,a=+a,d()):[u,a]},t.rangeRound=function(n){return[u,a]=n,u=+u,a=+a,o=!0,d()},t.bandwidth=function(){return r},t.step=function(){return n},t.round=function(n){return arguments.length?(o=!!n,d()):o},t.padding=function(n){return arguments.length?($=Math.min(1,l=+n),d()):$},t.paddingInner=function(n){return arguments.length?($=Math.min(1,n),d()):$},t.paddingOuter=function(n){return arguments.length?(l=+n,d()):l},t.align=function(n){return arguments.length?(g=Math.max(0,Math.min(1,n)),d()):g},t.copy=function(){return jb(e(),[u,a]).round(o).paddingInner($).paddingOuter(l).align(g)},Ca.apply(d(),arguments)}function ac(n){var r=n.copy;return n.padding=n.paddingOuter,delete n.paddingInner,delete n.paddingOuter,n.copy=function(){return ac(r())},n}function qh(){return ac(jb.apply(null,arguments).paddingInner(1))}var jc=function($,t){return $<t?-1:$>t?1:$>=t?0:NaN};var kc=function(r){return 1===r.length&&(r=jd(r)),{left:function(n,t,e,$){for(null==e&&(e=0),null==$&&($=n.length);e<$;){var a=e+$>>>1;r(n[a],t)<0?e=a+1:$=a}return e},right:function(n,t,e,$){for(null==e&&(e=0),null==$&&($=n.length);e<$;){var a=e+$>>>1;r(n[a],t)>0?$=a:e=a+1}return e}}};function jd(r){return function(n,t){return jc(r(n),t)}}var nc=kc(jc),ld=nc.right;var yi=nc.left;var od=function(t,e,r){t=+t,e=+e,r=(a=arguments.length)<2?(e=t,t=0,1):a<3?1:+r;for(var $=-1,a=0|Math.max(0,Math.ceil((e-t)/r)),c=new Array(a);++$<a;)c[$]=t+$*r;return c};var nb=Math.sqrt(50),pb=Math.sqrt(10),tb=Math.sqrt(2),wd=function($,t,r){var e,a,o,z,E=-1;if(r=+r,($=+$)===(t=+t)&&r>0)return[$];if((e=t<$)&&(a=$,$=t,t=a),0===(z=Da($,t,r))||!isFinite(z))return[];if(z>0)for($=Math.ceil($/z),t=Math.floor(t/z),o=new Array(a=Math.ceil(t-$+1));++E<a;)o[E]=($+E)*z;else for($=Math.floor($*z),t=Math.ceil(t*z),o=new Array(a=Math.ceil($-t+1));++E<a;)o[E]=($-E)/z;return e&&o.reverse(),o};function Da($,t,r){var e=(t-$)/Math.max(0,r),a=Math.floor(Math.log(e)/Math.LN10),o=e/Math.pow(10,a);return a>=0?(o>=nb?10:o>=pb?5:o>=tb?2:1)*Math.pow(10,a):-Math.pow(10,-a)/(o>=nb?10:o>=pb?5:o>=tb?2:1)}function Pa($,t,r){var e=Math.abs(t-$)/Math.max(0,r),a=Math.pow(10,Math.floor(Math.log(e)/Math.LN10)),o=e/a;return o>=nb?a*=10:o>=pb?a*=5:o>=tb&&(a*=2),t<$?-a:a}function Ca(t,e){switch(arguments.length){case 0:break;case 1:this.range(t);break;default:this.range(e).domain(t);}return this}const Fb=Symbol("implicit");function Gb(){var t=new Map,n=[],e=[],r=Fb;function i(i){var $=i+"",o=t.get($);if(!o){if(r!==Fb)return r;t.set($,o=n.push(i))}return e[(o-1)%e.length]}return i.domain=function(e){if(!arguments.length)return n.slice();n=[],t=new Map;for(const r of e){const e=r+"";t.has(e)||t.set(e,n.push(r))}return i},i.range=function(t){return arguments.length?(e=Array.from(t),i):e.slice()},i.unknown=function(t){return arguments.length?(r=t,i):r},i.copy=function(){return Gb(n,e).unknown(r)},Ca.apply(i,arguments),i}function Fd(t){var r=t.domain;return t.ticks=function(t){var $=r();return wd($[0],$[$.length-1],null==t?10:t)},t.tickFormat=function(t,$){var e=r();return _d(e[0],e[e.length-1],null==t?10:t,$)},t.nice=function($){null==$&&($=10);var e,i=r(),n=0,o=i.length-1,a=i[n],c=i[o];return c<a&&(e=a,a=c,c=e,e=n,n=o,o=e),(e=Da(a,c,$))>0?(a=Math.floor(a/e)*e,c=Math.ceil(c/e)*e,e=Da(a,c,$)):e<0&&(a=Math.ceil(a*e)/e,c=Math.floor(c*e)/e,e=Da(a,c,$)),e>0?(i[n]=Math.floor(a/e)*e,i[o]=Math.ceil(c/e)*e,r(i)):e<0&&(i[n]=Math.ceil(a*e)/e,i[o]=Math.floor(c*e)/e,r(i)),t},t}function K(){var t=Vc(w,w);return t.copy=function(){return Uc(t,K())},Ca.apply(t,arguments),Fd(t)}function x(){}var J=function(t,e,r){t.prototype=e.prototype=r,r.constructor=t};function $(t,e){var r=Object.create(t.prototype);for(var o in e)r[o]=e[o];return r}var C=.7;var I=1/C;var H="\\s*([+-]?\\d+)\\s*",T="\\s*([+-]?\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)\\s*",e="\\s*([+-]?\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)%\\s*",ae=/^#([0-9a-f]{3})$/,ce=/^#([0-9a-f]{6})$/,de=new RegExp("^rgb\\("+[H,H,H]+"\\)$"),ee=new RegExp("^rgb\\("+[e,e,e]+"\\)$"),fe=new RegExp("^rgba\\("+[H,H,H,T]+"\\)$"),ge=new RegExp("^rgba\\("+[e,e,e,T]+"\\)$"),me=new RegExp("^hsl\\("+[T,e,e]+"\\)$"),re=new RegExp("^hsla\\("+[T,e,e,T]+"\\)$"),Wb={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 Xb(){return this.rgb().formatHex()}function xe(){return Fc(this).formatHsl()}function _b(){return this.rgb().formatRgb()}function ba(r){var e;return r=(r+"").trim().toLowerCase(),(e=ae.exec(r))?new g((e=parseInt(e[1],16))>>8&15|e>>4&240,e>>4&15|240&e,(15&e)<<4|15&e,1):(e=ce.exec(r))?bc(parseInt(e[1],16)):(e=de.exec(r))?new g(e[1],e[2],e[3],1):(e=ee.exec(r))?new g(255*e[1]/100,255*e[2]/100,255*e[3]/100,1):(e=fe.exec(r))?fc(e[1],e[2],e[3],e[4]):(e=ge.exec(r))?fc(255*e[1]/100,255*e[2]/100,255*e[3]/100,e[4]):(e=me.exec(r))?uc(e[1],e[2]/100,e[3]/100,1):(e=re.exec(r))?uc(e[1],e[2]/100,e[3]/100,e[4]):Wb.hasOwnProperty(r)?bc(Wb[r]):"transparent"===r?new g(NaN,NaN,NaN,0):null}function bc(r){return new g(r>>16&255,r>>8&255,255&r,1)}function fc(r,e,$,t){return t<=0&&(r=e=$=NaN),new g(r,e,$,t)}function lb(r){return r instanceof x||(r=ba(r)),r?new g((r=r.rgb()).r,r.g,r.b,r.opacity):new g}function Ba(r,e,$,t){return 1===arguments.length?lb(r):new g(r,e,$,null==t?1:t)}function g(r,e,$,t){this.r=+r,this.g=+e,this.b=+$,this.opacity=+t}function oc(){return"#"+qb(this.r)+qb(this.g)+qb(this.b)}function qc(){var r=this.opacity;return(1===(r=isNaN(r)?1:Math.max(0,Math.min(1,r)))?"rgb(":"rgba(")+Math.max(0,Math.min(255,Math.round(this.r)||0))+", "+Math.max(0,Math.min(255,Math.round(this.g)||0))+", "+Math.max(0,Math.min(255,Math.round(this.b)||0))+(1===r?")":", "+r+")")}function qb(r){return((r=Math.max(0,Math.min(255,Math.round(r)||0)))<16?"0":"")+r.toString(16)}function uc(r,e,$,t){return t<=0?r=e=$=NaN:$<=0||$>=1?r=e=NaN:e<=0&&(r=NaN),new s(r,e,$,t)}function Fc(r){if(r instanceof s)return new s(r.h,r.s,r.l,r.opacity);if(r instanceof x||(r=ba(r)),!r)return new s;if(r instanceof s)return r;var e=(r=r.rgb()).r/255,$=r.g/255,t=r.b/255,a=Math.min(e,$,t),o=Math.max(e,$,t),n=NaN,i=o-a,l=(o+a)/2;return i?(n=e===o?($-t)/i+6*($<t):$===o?(t-e)/i+2:(e-$)/i+4,i/=l<.5?o+a:2-o-a,n*=60):i=l>0&&l<1?0:n,new s(n,i,l,r.opacity)}function rb(r,e,$,t){return 1===arguments.length?Fc(r):new s(r,e,$,null==t?1:t)}function s(r,e,$,t){this.h=+r,this.s=+e,this.l=+$,this.opacity=+t}function Ha(r,e,$){return 255*(r<60?e+($-e)*r/60:r<180?$:r<240?e+($-e)*(240-r)/60:e)}J(x,ba,{copy:function(r){return Object.assign(new this.constructor,this,r)},displayable:function(){return this.rgb().displayable()},hex:Xb,formatHex:Xb,formatHsl:xe,formatRgb:_b,toString:_b}),J(g,Ba,$(x,{brighter:function(r){return r=null==r?I:Math.pow(I,r),new g(this.r*r,this.g*r,this.b*r,this.opacity)},darker:function(r){return r=null==r?C:Math.pow(C,r),new g(this.r*r,this.g*r,this.b*r,this.opacity)},rgb:function(){return this},displayable:function(){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:oc,formatHex:oc,formatRgb:qc,toString:qc})),J(s,rb,$(x,{brighter:function(r){return r=null==r?I:Math.pow(I,r),new s(this.h,this.s,this.l*r,this.opacity)},darker:function(r){return r=null==r?C:Math.pow(C,r),new s(this.h,this.s,this.l*r,this.opacity)},rgb:function(){var r=this.h%360+360*(this.h<0),e=isNaN(r)||isNaN(this.s)?0:this.s,$=this.l,t=$+($<.5?$:1-$)*e,a=2*$-t;return new g(Ha(r>=240?r-240:r+120,a,t),Ha(r,a,t),Ha(r<120?r+240:r-120,a,t),this.opacity)},displayable:function(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl:function(){var r=this.opacity;return(1===(r=isNaN(r)?1:Math.max(0,Math.min(1,r)))?"hsl(":"hsla(")+(this.h||0)+", "+100*(this.s||0)+"%, "+100*(this.l||0)+"%"+(1===r?")":", "+r+")")}}));var Wc=Math.PI/180;var Xc=180/Math.PI;var za=18,_c=.96422,ad=1,yb=.82521,zb=4/29,G=6/29,Bb=3*G*G,of=G*G*G;function Cb($){if($ instanceof i)return new i($.l,$.a,$.b,$.opacity);if($ instanceof o)return Mb($);$ instanceof g||($=lb($));var r,t,a=$a($.r),f=$a($.g),e=$a($.b),n=Xa((.2225045*a+.7168786*f+.0606169*e)/ad);return a===f&&f===e?r=t=n:(r=Xa((.4360747*a+.3850649*f+.1430804*e)/_c),t=Xa((.0139322*a+.0971045*f+.7141733*e)/yb)),new i(116*n-16,500*(r-n),200*(n-t),$.opacity)}function qf($,r,t,a){return 1===arguments.length?Cb($):new i($,r,t,null==a?1:a)}function i($,r,t,a){this.l=+$,this.a=+r,this.b=+t,this.opacity=+a}function Xa($){return $>of?Math.pow($,1/3):$/Bb+zb}function Ya($){return $>G?$*$*$:Bb*($-zb)}function Za($){return 255*($<=.0031308?12.92*$:1.055*Math.pow($,1/2.4)-.055)}function $a($){return($/=255)<=.04045?$/12.92:Math.pow(($+.055)/1.055,2.4)}function xf($){if($ instanceof o)return new o($.h,$.c,$.l,$.opacity);if($ instanceof i||($=Cb($)),0===$.a&&0===$.b)return new o(NaN,0<$.l&&$.l<100?0:NaN,$.l,$.opacity);var r=Math.atan2($.b,$.a)*Xc;return new o(r<0?r+360:r,Math.sqrt($.a*$.a+$.b*$.b),$.l,$.opacity)}function fb($,r,t,a){return 1===arguments.length?xf($):new o($,r,t,null==a?1:a)}function o($,r,t,a){this.h=+$,this.c=+r,this.l=+t,this.opacity=+a}function Mb($){if(isNaN($.h))return new i($.l,0,0,$.opacity);var r=$.h*Wc;return new i($.l,Math.cos(r)*$.c,Math.sin(r)*$.c,$.opacity)}J(i,qf,$(x,{brighter:function($){return new i(this.l+za*(null==$?1:$),this.a,this.b,this.opacity)},darker:function($){return new i(this.l-za*(null==$?1:$),this.a,this.b,this.opacity)},rgb:function(){var $=(this.l+16)/116,r=isNaN(this.a)?$:$+this.a/500,t=isNaN(this.b)?$:$-this.b/200;return r=_c*Ya(r),$=ad*Ya($),t=yb*Ya(t),new g(Za(3.1338561*r-1.6168667*$-.4906146*t),Za(-.9787684*r+1.9161415*$+.033454*t),Za(.0719453*r-.2289914*$+1.4052427*t),this.opacity)}})),J(o,fb,$(x,{brighter:function($){return new o(this.h,this.c,this.l+za*(null==$?1:$),this.opacity)},darker:function($){return new o(this.h,this.c,this.l-za*(null==$?1:$),this.opacity)},rgb:function(){return Mb(this).rgb()}}));var Nb=-.14861,hb=1.78277,ib=-.29227,ya=-.90649,R=1.97294,Tb=R*ya,Ub=R*hb,Vb=hb*ib-ya*Nb;function Lf($){if($ instanceof y)return new y($.h,$.s,$.l,$.opacity);$ instanceof g||($=lb($));var r=$.r/255,t=$.g/255,e=$.b/255,C=(Vb*e+Tb*r-Ub*t)/(Vb+Tb-Ub),a=e-C,M=(R*(t-C)-ib*a)/ya,i=Math.sqrt(M*M+a*a)/(R*C*(1-C)),X=i?Math.atan2(M,a)*Xc-120:NaN;return new y(X<0?X+360:X,i,C,$.opacity)}function mb($,r,t,e){return 1===arguments.length?Lf($):new y($,r,t,null==e?1:e)}function y($,r,t,e){this.h=+$,this.s=+r,this.l=+t,this.opacity=+e}J(y,mb,$(x,{brighter:function($){return $=null==$?I:Math.pow(I,$),new y(this.h,this.s,this.l*$,this.opacity)},darker:function($){return $=null==$?C:Math.pow(C,$),new y(this.h,this.s,this.l*$,this.opacity)},rgb:function(){var $=isNaN(this.h)?0:(this.h+120)*Wc,r=+this.l,t=isNaN(this.s)?0:this.s*r*(1-r),e=Math.cos($),C=Math.sin($);return new g(255*(r+t*(Nb*e+hb*C)),255*(r+t*(ib*e+ya*C)),255*(r+t*(R*e)),this.opacity)}}));function Zb($,r,t,e,a){var l=$*$,o=l*$;return((1-3*$+3*l-o)*r+(4-6*l+3*o)*t+(1+3*$+3*l-3*o)*e+o*a)/6}var Qf=function($){var r=$.length-1;return function(t){var e=t<=0?t=0:t>=1?(t=1,r-1):Math.floor(t*r),a=$[e],l=$[e+1],o=e>0?$[e-1]:2*a-l,s=e<r-1?$[e+2]:2*l-a;return Zb((t-e/r)*r,o,a,l,s)}};var Rf=function(r){var $=r.length;return function(t){var e=Math.floor(((t%=1)<0?++t:t)*$),n=r[(e+$-1)%$],a=r[e%$],o=r[(e+1)%$],h=r[(e+2)%$];return Zb((t-e/$)*$,n,a,o,h)}};function $b($,t){return function(r){return $+r*t}}function Tf($,t,r){return $=Math.pow($,r),t=Math.pow(t,r)-$,r=1/r,function(n){return Math.pow($+n*t,r)}}function ob($,t){var r=t-$;return r?$b($,r>180||r<-180?r-360*Math.round(r/360):r):va(isNaN($)?t:$)}function Zf($){return 1==($=+$)?h:function(t,r){return r-t?Tf(t,r,$):va(isNaN(t)?r:t)}}function h($,t){var r=t-$;return r?$b($,r):va(isNaN($)?t:$)}var va=function(t){return function(){return t}};var cc=function r($){var o=Zf($);function e(r,$){var e=o((r=Ba(r)).r,($=Ba($)).r),a=o(r.g,$.g),t=o(r.b,$.b),i=h(r.opacity,$.opacity);return function($){return r.r=e($),r.g=a($),r.b=t($),r.opacity=i($),r+""}}return e.gamma=r,e}(1);function dc(r){return function($){var o,e,a=$.length,t=new Array(a),i=new Array(a),v=new Array(a);for(o=0;o<a;++o)e=Ba($[o]),t[o]=e.r||0,i[o]=e.g||0,v[o]=e.b||0;return t=r(t),i=r(i),v=r(v),e.opacity=1,function(r){return e.r=t(r),e.g=i(r),e.b=v(r),e+""}}}var xi=dc(Qf);var wi=dc(Rf);var hg=function(r,e){var t,$=e?e.length:0,a=r?Math.min($,r.length):0,n=new Array(a),o=new Array($);for(t=0;t<a;++t)n[t]=Ga(r[t],e[t]);for(;t<$;++t)o[t]=e[t];return function(r){for(t=0;t<a;++t)o[t]=n[t](r);return o}};var jg=function(e,t){var r=new Date;return t-=e=+e,function($){return r.setTime(e+t*$),r}};var v=function(t,$){return $-=t=+t,function(e){return t+$*e}};var og=function(e,r){var t,$={},i={};for(t in null!==e&&"object"==typeof e||(e={}),null!==r&&"object"==typeof r||(r={}),r)t in e?$[t]=Ga(e[t],r[t]):i[t]=r[t];return function(e){for(t in $)i[t]=$[t](e);return i}};var ub=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Fa=new RegExp(ub.source,"g");function tg(r){return function(){return r}}function Fg(r){return function($){return r($)+""}}var Hg=function(r,$){var n,e,t,a=ub.lastIndex=Fa.lastIndex=0,u=-1,E=[],o=[];for(r+="",$+="";(n=ub.exec(r))&&(e=Fa.exec($));)(t=e.index)>a&&(t=$.slice(a,t),E[u]?E[u]+=t:E[++u]=t),(n=n[0])===(e=e[0])?E[u]?E[u]+=e:E[++u]=e:(E[++u]=null,o.push({i:u,x:v(n,e)})),a=Fa.lastIndex;return a<$.length&&(t=$.slice(a),E[u]?E[u]+=t:E[++u]=t),E.length<2?o[0]?Fg(o[0].x):tg($):($=o.length,function(r){for(var n,e=0;e<$;++e)E[(n=o[e]).i]=n.x(r);return E.join("")})};var Ga=function(r,$){var e,c=typeof $;return null==$||"boolean"===c?va($):("number"===c?v:"string"===c?(e=ba($))?($=e,cc):Hg:$ instanceof ba?cc:$ instanceof Date?jg:Array.isArray($)?hg:"function"!=typeof $.valueOf&&"function"!=typeof $.toString||isNaN($)?og:v)(r,$)};var Pg=function(t,n){return n-=t=+t,function(r){return Math.round(t+n*r)}};function pc(r,e,t,n){function a(r){return r.length?r.pop()+" ":""}return function($,s){var o=[],p=[];return $=r($),s=r(s),function(r,n,a,$,s,o){if(r!==a||n!==$){var p=s.push("translate(",null,e,null,t);o.push({i:p-4,x:v(r,a)},{i:p-2,x:v(n,$)})}else(a||$)&&s.push("translate("+a+e+$+t)}($.translateX,$.translateY,s.translateX,s.translateY,o,p),function(r,e,t,$){r!==e?(r-e>180?e+=360:e-r>180&&(r+=360),$.push({i:t.push(a(t)+"rotate(",null,n)-2,x:v(r,e)})):e&&t.push(a(t)+"rotate("+e+n)}($.rotate,s.rotate,o,p),function(r,e,t,$){r!==e?$.push({i:t.push(a(t)+"skewX(",null,n)-2,x:v(r,e)}):e&&t.push(a(t)+"skewX("+e+n)}($.skewX,s.skewX,o,p),function(r,e,t,n,$,s){if(r!==t||e!==n){var o=$.push(a($)+"scale(",null,",",null,")");s.push({i:o-4,x:v(r,t)},{i:o-2,x:v(e,n)})}else 1===t&&1===n||$.push(a($)+"scale("+t+","+n+")")}($.scaleX,$.scaleY,s.scaleX,s.scaleY,o,p),$=s=null,function(r){for(var e,t=-1,n=p.length;++t<n;)o[(e=p[t]).i]=e.x(r);return o.join("")}}}var ta,rc,Xg,Ia;function gh($){return"none"===$?Ja:(ta||(ta=document.createElement("DIV"),rc=document.documentElement,Xg=document.defaultView),ta.style.transform=$,$=Xg.getComputedStyle(rc.appendChild(ta),null).getPropertyValue("transform"),rc.removeChild(ta),$=$.slice(7,-1).split(","),yc(+$[0],+$[1],+$[2],+$[3],+$[4],+$[5]))}function ih($){return null==$?Ja:(Ia||(Ia=document.createElementNS("http://www.w3.org/2000/svg","g")),Ia.setAttribute("transform",$),($=Ia.transform.baseVal.consolidate())?($=$.matrix,yc($.a,$.b,$.c,$.d,$.e,$.f)):Ja)}var tc=180/Math.PI,Ja={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};var yc=function(t,e,a,$,r,s){var X,n,w;return(X=Math.sqrt(t*t+e*e))&&(t/=X,e/=X),(w=t*a+e*$)&&(a-=t*w,$-=e*w),(n=Math.sqrt(a*a+$*$))&&(a/=n,$/=n,w/=n),t*$<e*a&&(t=-t,e=-e,w=-w,X=-X),{translateX:r,translateY:s,rotate:Math.atan2(e,t)*tc,skewX:Math.atan(w)*tc,scaleX:X,scaleY:n}};var vi=pc(gh,"px, ","px)","deg)");var ui=pc(ih,", ",")",")");var ti=Math.SQRT2;function Ec($){return function(r,e){var o=$((r=rb(r)).h,(e=rb(e)).h),t=h(r.s,e.s),l=h(r.l,e.l),d=h(r.opacity,e.opacity);return function($){return r.h=o($),r.s=t($),r.l=l($),r.opacity=d($),r+""}}}var si=Ec(ob);var ri=Ec(h);function vb($){return function(r,o){var c=$((r=fb(r)).h,(o=fb(o)).h),t=h(r.c,o.c),x=h(r.l,o.l),l=h(r.opacity,o.opacity);return function($){return r.h=c($),r.c=t($),r.l=x($),r.opacity=l($),r+""}}}var qi=vb(ob);var pi=vb(h);function Ic($){return function r(o){function V(r,V){var e=$((r=mb(r)).h,(V=mb(V)).h),t=h(r.s,V.s),i=h(r.l,V.l),l=h(r.opacity,V.opacity);return function($){return r.h=e($),r.s=t($),r.l=i(Math.pow($,o)),r.opacity=l($),r+""}}return o=+o,V.gamma=r,V}(1)}var oi=Ic(ob);var ni=Ic(h);var ud=function(t){return function(){return t}};var vd=function($){return+$};var Kc=[0,1];function w(r){return r}function Ta(r,n){return(n-=r=+r)?function(t){return(t-r)/n}:ud(isNaN(n)?NaN:.5)}function Sc(r){var n,t=r[0],e=r[r.length-1];return t>e&&(n=t,t=e,e=n),function(r){return Math.max(t,Math.min(e,r))}}function Ad(r,n,t){var e=r[0],$=r[1],a=n[0],o=n[1];return $<e?(e=Ta($,e),a=t(o,a)):(e=Ta(e,$),a=t(a,o)),function(r){return a(e(r))}}function Bd(r,n,t){var e=Math.min(r.length,n.length)-1,$=new Array(e),a=new Array(e),o=-1;for(r[e]<r[0]&&(r=r.slice().reverse(),n=n.slice().reverse());++o<e;)$[o]=Ta(r[o],r[o+1]),a[o]=t(n[o],n[o+1]);return function(n){var t=ld(r,n,1,e)-1;return a[t]($[t](n))}}function Uc(r,n){return n.domain(r.domain()).range(r.range()).interpolate(r.interpolate()).clamp(r.clamp()).unknown(r.unknown())}function Dd(){var r,n,t,e,$,a,o=Kc,i=Kc,u=Ga,p=w;function l(){return e=Math.min(o.length,i.length)>2?Bd:Ad,$=a=null,c}function c(n){return isNaN(n=+n)?t:($||($=e(o.map(r),i,u)))(r(p(n)))}return c.invert=function(t){return p(n((a||(a=e(i,o.map(r),v)))(t)))},c.domain=function(r){return arguments.length?(o=Array.from(r,vd),p===w||(p=Sc(o)),l()):o.slice()},c.range=function(r){return arguments.length?(i=Array.from(r),l()):i.slice()},c.rangeRound=function(r){return i=Array.from(r),u=Pg,l()},c.clamp=function(r){return arguments.length?(p=r?Sc(o):w,c):p!==w},c.interpolate=function(r){return arguments.length?(u=r,l()):u},c.unknown=function(r){return arguments.length?(t=r,c):t},function(t,e){return r=t,n=e,l()}}function Vc(r,n){return Dd()(r,n)}var Wa,Gd,Hd;function Id($){return Wa=Xd($),Gd=Wa.format,Hd=Wa.formatPrefix,Wa}var Ea=function(e,t){if((l=(e=t?e.toExponential(t-1):e.toExponential()).indexOf("e"))<0)return null;var l,n=e.slice(0,l);return[n.length>1?n[0]+n.slice(2):n,+e.slice(l+1)]};var F=function(t){return(t=Ea(Math.abs(t)))?t[1]:NaN};var Ld=function(r,t){return function(e,n){for(var $=e.length,u=[],o=0,a=r[0],f=0;$>0&&a>0&&(f+a+1>n&&(a=Math.max(1,n-f)),u.push(e.substring($-=a,$+a)),!((f+=a+1)>n));)a=r[o=(o+1)%r.length];return u.reverse().join(t)}};var Md=function(t){return function(e){return e.replace(/[0-9]/g,function(e){return t[+e]})}};var Mh=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function oa(i){return new Ma(i)}function Ma(i){if(!(t=Mh.exec(i)))throw new Error("invalid format: "+i);var t;this.fill=t[1]||" ",this.align=t[2]||">",this.sign=t[3]||"-",this.symbol=t[4]||"",this.zero=!!t[5],this.width=t[6]&&+t[6],this.comma=!!t[7],this.precision=t[8]&&+t[8].slice(1),this.trim=!!t[9],this.type=t[10]||""}oa.prototype=Ma.prototype,Ma.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(null==this.width?"":Math.max(1,0|this.width))+(this.comma?",":"")+(null==this.precision?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type};var Qd=function(e){e:for(var r,t=e.length,a=1,$=-1;a<t;++a)switch(e[a]){case".":$=r=a;break;case"0":0===$&&($=a),r=a;break;default:if($>0){if(!+e[a])break e;$=0}}return $>0?e.slice(0,$)+e.slice(r+1):e};var Rd;var Sd=function(e,p){var r,$=Ea(e,p);if(!$)return e+"";var t=$[0],f=$[1],o=f-(r=Rd=3*Math.max(-8,Math.min(8,Math.floor(f/3))),r)+1,x=t.length;return o===x?t:o>x?t+new Array(o-x+1).join("0"):o>0?t.slice(0,o)+"."+t.slice(o):"0."+new Array(1-o).join("0")+Ea(e,Math.max(0,p+o-1))[0]};var bd=function(r,e){var t=Ea(r,e);if(!t)return r+"";var $=t[0],a=t[1];return a<0?"0."+new Array(-a).join("0")+$:$.length>a+1?$.slice(0,a+1)+"."+$.slice(a+1):$+new Array(a-$.length+2).join("0")};var cd={"%":function(t,r){return(100*t).toFixed(r)},b:function(t){return Math.round(t).toString(2)},c:function(t){return t+""},d:function(t){return Math.round(t).toString(10)},e:function(t,r){return t.toExponential(r)},f:function(t,r){return t.toFixed(r)},g:function(t,r){return t.toPrecision(r)},o:function(t){return Math.round(t).toString(8)},p:function(t,r){return bd(100*t,r)},r:bd,s:Sd,X:function(t){return Math.round(t).toString(16).toUpperCase()},x:function(t){return Math.round(t).toString(16)}};var wb=function(t){return t};var xb=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"],Xd=function(r){var e=r.grouping&&r.thousands?Ld(r.grouping,r.thousands):wb,t=r.currency,a=r.decimal,m=r.numerals?Md(r.numerals):wb,$=r.percent||"%";function i(r){var i=(r=oa(r)).fill,o=r.align,n=r.sign,p=r.symbol,f=r.zero,l=r.width,s=r.comma,u=r.precision,M=r.trim,c=r.type;"n"===c?(s=!0,c="g"):cd[c]||(null==u&&(u=12),M=!0,c="g"),(f||"0"===i&&"="===o)&&(f=!0,i="0",o="=");var I="$"===p?t[0]:"#"===p&&/[boxX]/.test(c)?"0"+c.toLowerCase():"",V="$"===p?t[1]:/[%p]/.test(c)?$:"",h=cd[c],g=/[defgprs%]/.test(c);function x(r){var t,$,p,x=I,d=V;if("c"===c)d=h(r)+d,r="";else{var v=(r=+r)<0;if(r=h(Math.abs(r),u),M&&(r=Qd(r)),v&&0==+r&&(v=!1),x=(v?"("===n?n:"-":"-"===n||"("===n?"":n)+x,d=("s"===c?xb[8+Rd/3]:"")+d+(v&&"("===n?")":""),g)for(t=-1,$=r.length;++t<$;)if(48>(p=r.charCodeAt(t))||p>57){d=(46===p?a+r.slice(t+1):r.slice(t))+d,r=r.slice(0,t);break}}s&&!f&&(r=e(r,1/0));var y=x.length+r.length+d.length,q=y<l?new Array(l-y+1).join(i):"";switch(s&&f&&(r=e(q+r,q.length?l-d.length:1/0),q=""),o){case"<":r=x+r+d+q;break;case"=":r=x+q+r+d;break;case"^":r=q.slice(0,y=q.length>>1)+x+r+d+q.slice(y);break;default:r=q+x+r+d;}return m(r)}return u=null==u?6:/[gprs]/.test(c)?Math.max(1,Math.min(21,u)):Math.max(0,Math.min(20,u)),x.toString=function(){return r+""},x}return{format:i,formatPrefix:function(r,e){var t=i(((r=oa(r)).type="f",r)),a=3*Math.max(-8,Math.min(8,Math.floor(F(e)/3))),m=Math.pow(10,-a),$=xb[8+a/3];return function(r){return t(m*r)+$}}}};Id({decimal:".",thousands:",",grouping:[3],currency:["$",""]});var Yd=function(e){return Math.max(0,-F(Math.abs(e)))};var Zd=function(t,$){return Math.max(0,3*Math.max(-8,Math.min(8,Math.floor(F($)/3)))-F(Math.abs(t)))};var $d=function($,e){return $=Math.abs($),e=Math.abs(e)-$,Math.max(0,F(e)-F($))+1};var _d=function(a,r,e,i){var $,t=Pa(a,r,e);switch((i=oa(null==i?",f":i)).type){case"s":var p=Math.max(Math.abs(a),Math.abs(r));return null!=i.precision||isNaN($=Zd(t,p))||(i.precision=$),Hd(i,p);case"":case"e":case"g":case"p":case"r":null!=i.precision||isNaN($=$d(t,Math.max(Math.abs(a),Math.abs(r))))||(i.precision=$-("e"===i.type));break;case"f":case"%":null!=i.precision||isNaN($=Yd(t))||(i.precision=$-2*("%"===i.type));}return Gd(i)};var ab=Array.prototype.slice;var be=function(x){return x};var bb=1,cb=2,eb=3,aa=4,Db=1e-6;function he(t){return"translate("+(t+.5)+",0)"}function ie(t){return"translate(0,"+(t+.5)+")"}function je(t){return function(r){return+t(r)}}function ke(t){var r=Math.max(0,t.bandwidth()-1)/2;return t.round()&&(r=Math.round(r)),function($){return+t($)+r}}function le(){return!this.__axis}function Eb(t,r){var $=[],n=null,e=null,a=6,i=6,c=3,o=t===bb||t===aa?-1:1,l=t===aa||t===cb?"x":"y",s=t===bb||t===eb?he:ie;function u(u){var f=null==n?r.ticks?r.ticks.apply(r,$):r.domain():n,p=null==e?r.tickFormat?r.tickFormat.apply(r,$):be:e,v=Math.max(a,0)+c,x=r.range(),m=+x[0]+.5,h=+x[x.length-1]+.5,g=(r.bandwidth?ke:je)(r.copy()),d=u.selection?u.selection():u,k=d.selectAll(".domain").data([null]),y=d.selectAll(".tick").data(f,r).order(),b=y.exit(),M=y.enter().append("g").attr("class","tick"),_=y.select("line"),F=y.select("text");k=k.merge(k.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),y=y.merge(M),_=_.merge(M.append("line").attr("stroke","currentColor").attr(l+"2",o*a)),F=F.merge(M.append("text").attr("fill","currentColor").attr(l,o*v).attr("dy",t===bb?"0em":t===eb?"0.71em":"0.32em")),u!==d&&(k=k.transition(u),y=y.transition(u),_=_.transition(u),F=F.transition(u),b=b.transition(u).attr("opacity",Db).attr("transform",function(t){return isFinite(t=g(t))?s(t):this.getAttribute("transform")}),M.attr("opacity",Db).attr("transform",function(t){var r=this.parentNode.__axis;return s(r&&isFinite(r=r(t))?r:g(t))})),b.remove(),k.attr("d",t===aa||t==cb?i?"M"+o*i+","+m+"H0.5V"+h+"H"+o*i:"M0.5,"+m+"V"+h:i?"M"+m+","+o*i+"V0.5H"+h+"V"+o*i:"M"+m+",0.5H"+h),y.attr("opacity",1).attr("transform",function(t){return s(g(t))}),_.attr(l+"2",o*a),F.attr(l,o*v).text(p),d.filter(le).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",t===cb?"start":t===aa?"end":"middle"),d.each(function(){this.__axis=g})}return u.scale=function(t){return arguments.length?(r=t,u):r},u.ticks=function(){return $=ab.call(arguments),u},u.tickArguments=function(t){return arguments.length?($=null==t?[]:ab.call(t),u):$.slice()},u.tickValues=function(t){return arguments.length?(n=null==t?null:ab.call(t),u):n&&n.slice()},u.tickFormat=function(t){return arguments.length?(e=t,u):e},u.tickSize=function(t){return arguments.length?(a=i=+t,u):a},u.tickSizeInner=function(t){return arguments.length?(a=+t,u):a},u.tickSizeOuter=function(t){return arguments.length?(i=+t,u):i},u.tickPadding=function(t){return arguments.length?(c=+t,u):c},u}function ne(t){return Eb(eb,t)}function oe(t){return Eb(aa,t)}const pe=(t,{yScale:l,tickCount:e,fontFamily:i,unxkcdify:a})=>{t.append("g").call(oe(l).tickSize(1).tickPadding(10).ticks(e,"s")),t.selectAll(".domain").attr("filter",a?null:"url(#xkcdify)").style("stroke","black"),t.selectAll(".tick > text").style("font-family",i).style("font-size","16")},qe=(t,{xScale:l,tickCount:e,moveDown:i,fontFamily:a,unxkcdify:s})=>{t.append("g").attr("transform",`translate(0,${i})`).call(ne(l).tickSize(0).tickPadding(6).ticks(e)),t.selectAll(".domain").attr("filter",s?null:"url(#xkcdify)").style("stroke","black"),t.selectAll(".tick > text").style("font-family",a).style("font-size","16")};var E={xAxis:qe,yAxis:pe};const se=(t,e)=>{t.append("text").style("font-size","20").style("font-weight","bold").attr("x","50%").attr("y",30).attr("text-anchor","middle").text(e)},te=(t,e)=>{t.append("text").style("font-size",17).attr("x","50%").attr("y",t.attr("height")-10).attr("text-anchor","middle").text(e)},ue=(t,e)=>{t.append("text").attr("text-anchor","end").attr("dy",".75em").attr("transform","rotate(-90)").style("font-size",17).text(e).attr("y",6).call(e=>{const a=e.node().getComputedTextLength();e.attr("x",0-t.attr("height")/2+a/2)})};var u={title:se,xLabel:te,yLabel:ue};const b={positionType:{upLeft:1,upRight:2,downLeft:3,downRight:4}};class L{constructor({parent:t,title:i,items:e,position:s,unxkcdify:r}){this.title=i,this.items=e,this.position=s,this.filter=r?null:"url(#xkcdify)",this.svg=t.append("svg").attr("x",this._getUpLeftX()).attr("y",this._getUpLeftY()).style("visibility","hidden"),this.tipBackground=this.svg.append("rect").style("fill","white").attr("fill-opacity",.85).attr("stroke","#aaa").attr("stroke-width",2).attr("rx",5).attr("ry",5).attr("filter",this.filter).attr("width",this._getBackgroundWidth()).attr("height",this._getBackgroundHeight()).attr("x",5).attr("y",5),this.tipTitle=this.svg.append("text").style("font-size",15).style("font-weight","bold").attr("x",15).attr("y",25).text(i),this.tipItems=e.map((t,i)=>{const e=this.svg.append("g");return e.append("rect").style("fill",t.color).attr("width",8).attr("height",8).attr("rx",2).attr("ry",2).attr("filter",this.filter).attr("x",15).attr("y",37+20*i),e.append("text").style("font-size","15").style("font-weight","lighter").attr("x",27).attr("y",37+20*i+8).text(t.text),e})}show(){this.svg.style("visibility","visible")}hide(){this.svg.style("visibility","hidden")}update({title:t,items:i,position:e}){t&&t!==this.title&&(this.title=t,this.tipTitle.text(t)),i&&JSON.stringify(i)!==JSON.stringify(this.items)&&(this.items=i,this.tipItems.forEach(t=>t.remove()),this.tipItems=this.items.map((t,i)=>{const e=this.svg.append("g");return e.append("rect").style("fill",t.color).attr("width",8).attr("height",8).attr("rx",2).attr("ry",2).attr("filter",this.filter).attr("x",15).attr("y",37+20*i),e.append("text").style("font-size","15").attr("x",27).attr("y",37+20*i+8).text(t.text),e}),this.tipBackground.attr("width",this._getBackgroundWidth()).attr("height",this._getBackgroundHeight())),e&&(this.position=e,this.svg.attr("x",this._getUpLeftX()),this.svg.attr("y",this._getUpLeftY()))}_getBackgroundWidth(){const t=this.items.reduce((t,i)=>t>i.text.length?t:i.text.length,0);return 7.4*Math.max(t,this.title.length)+25}_getBackgroundHeight(){return 20*(this.items.length+1)+10}_getUpLeftX(){return this.position.type===b.positionType.upRight||this.position.type===b.positionType.downRight?this.position.x:this.position.x-this._getBackgroundWidth()-20}_getUpLeftY(){return this.position.type===b.positionType.downLeft||this.position.type===b.positionType.downRight?this.position.y:this.position.y-this._getBackgroundHeight()-20}}function M(A){A.append("defs").append("style").attr("type","text/css").text("@font-face {\n font-family: \"xkcd\";\n src: url(data:application/font-woff;charset=utf-8;base64,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