mermaid
Version:
Markdown-ish syntax for generating flowcharts, sequence diagrams, class diagrams, gantt charts and git graphs.
6 lines • 2.91 MB
JavaScript
(function(yA,d0){typeof exports=="object"&&typeof module<"u"?module.exports=d0():typeof define=="function"&&define.amd?define(d0):(yA=typeof globalThis<"u"?globalThis:yA||self,yA.mermaid=d0())})(this,function(){"use strict";function yA(i){for(var a=[],f=1;f<arguments.length;f++)a[f-1]=arguments[f];var p=Array.from(typeof i=="string"?[i]:i);p[p.length-1]=p[p.length-1].replace(/\r?\n([\t ]*)$/,"");var v=p.reduce(function(E,C){var A=C.match(/\n([\t ]+|(?!\s).)/g);return A?E.concat(A.map(function(P){var F,j;return(j=(F=P.match(/[\t ]/g))===null||F===void 0?void 0:F.length)!==null&&j!==void 0?j:0})):E},[]);if(v.length){var m=new RegExp(`
[ ]{`+Math.min.apply(Math,v)+"}","g");p=p.map(function(E){return E.replace(m,`
`)})}p[0]=p[0].replace(/^\r?\n/,"");var b=p[0];return a.forEach(function(E,C){var A=b.match(/(?:^|\n)( *)$/),P=A?A[1]:"",F=E;typeof E=="string"&&E.includes(`
`)&&(F=String(E).split(`
`).map(function(j,R){return R===0?j:""+P+j}).join(`
`)),b+=F+p[C+1]}),b}var d0=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function BE(i){return i&&i.__esModule&&Object.prototype.hasOwnProperty.call(i,"default")?i.default:i}var LLt={exports:{}};(function(i,a){(function(f,p){i.exports=p()})(d0,function(){var f=1e3,p=6e4,v=36e5,m="millisecond",b="second",E="minute",C="hour",A="day",P="week",F="month",j="quarter",R="year",H="date",Y="Invalid Date",rt=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,J=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,it={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(Ct){var tt=["th","st","nd","rd"],Pt=Ct%100;return"["+Ct+(tt[(Pt-20)%10]||tt[Pt]||tt[0])+"]"}},ht=function(Ct,tt,Pt){var gt=String(Ct);return!gt||gt.length>=tt?Ct:""+Array(tt+1-gt.length).join(Pt)+Ct},Tt={s:ht,z:function(Ct){var tt=-Ct.utcOffset(),Pt=Math.abs(tt),gt=Math.floor(Pt/60),Ft=Pt%60;return(tt<=0?"+":"-")+ht(gt,2,"0")+":"+ht(Ft,2,"0")},m:function Ct(tt,Pt){if(tt.date()<Pt.date())return-Ct(Pt,tt);var gt=12*(Pt.year()-tt.year())+(Pt.month()-tt.month()),Ft=tt.clone().add(gt,F),X=Pt-Ft<0,Rt=tt.clone().add(gt+(X?-1:1),F);return+(-(gt+(Pt-Ft)/(X?Ft-Rt:Rt-Ft))||0)},a:function(Ct){return Ct<0?Math.ceil(Ct)||0:Math.floor(Ct)},p:function(Ct){return{M:F,y:R,w:P,d:A,D:H,h:C,m:E,s:b,ms:m,Q:j}[Ct]||String(Ct||"").toLowerCase().replace(/s$/,"")},u:function(Ct){return Ct===void 0}},xt="en",pt={};pt[xt]=it;var ct=function(Ct){return Ct instanceof dt},yt=function Ct(tt,Pt,gt){var Ft;if(!tt)return xt;if(typeof tt=="string"){var X=tt.toLowerCase();pt[X]&&(Ft=X),Pt&&(pt[X]=Pt,Ft=X);var Rt=tt.split("-");if(!Ft&&Rt.length>1)return Ct(Rt[0])}else{var Bt=tt.name;pt[Bt]=tt,Ft=Bt}return!gt&&Ft&&(xt=Ft),Ft||!gt&&xt},st=function(Ct,tt){if(ct(Ct))return Ct.clone();var Pt=typeof tt=="object"?tt:{};return Pt.date=Ct,Pt.args=arguments,new dt(Pt)},Et=Tt;Et.l=yt,Et.i=ct,Et.w=function(Ct,tt){return st(Ct,{locale:tt.$L,utc:tt.$u,x:tt.$x,$offset:tt.$offset})};var dt=function(){function Ct(Pt){this.$L=yt(Pt.locale,null,!0),this.parse(Pt)}var tt=Ct.prototype;return tt.parse=function(Pt){this.$d=function(gt){var Ft=gt.date,X=gt.utc;if(Ft===null)return new Date(NaN);if(Et.u(Ft))return new Date;if(Ft instanceof Date)return new Date(Ft);if(typeof Ft=="string"&&!/Z$/i.test(Ft)){var Rt=Ft.match(rt);if(Rt){var Bt=Rt[2]-1||0,wt=(Rt[7]||"0").substring(0,3);return X?new Date(Date.UTC(Rt[1],Bt,Rt[3]||1,Rt[4]||0,Rt[5]||0,Rt[6]||0,wt)):new Date(Rt[1],Bt,Rt[3]||1,Rt[4]||0,Rt[5]||0,Rt[6]||0,wt)}}return new Date(Ft)}(Pt),this.$x=Pt.x||{},this.init()},tt.init=function(){var Pt=this.$d;this.$y=Pt.getFullYear(),this.$M=Pt.getMonth(),this.$D=Pt.getDate(),this.$W=Pt.getDay(),this.$H=Pt.getHours(),this.$m=Pt.getMinutes(),this.$s=Pt.getSeconds(),this.$ms=Pt.getMilliseconds()},tt.$utils=function(){return Et},tt.isValid=function(){return this.$d.toString()!==Y},tt.isSame=function(Pt,gt){var Ft=st(Pt);return this.startOf(gt)<=Ft&&Ft<=this.endOf(gt)},tt.isAfter=function(Pt,gt){return st(Pt)<this.startOf(gt)},tt.isBefore=function(Pt,gt){return this.endOf(gt)<st(Pt)},tt.$g=function(Pt,gt,Ft){return Et.u(Pt)?this[gt]:this.set(Ft,Pt)},tt.unix=function(){return Math.floor(this.valueOf()/1e3)},tt.valueOf=function(){return this.$d.getTime()},tt.startOf=function(Pt,gt){var Ft=this,X=!!Et.u(gt)||gt,Rt=Et.p(Pt),Bt=function(Ae,ne){var ke=Et.w(Ft.$u?Date.UTC(Ft.$y,ne,Ae):new Date(Ft.$y,ne,Ae),Ft);return X?ke:ke.endOf(A)},wt=function(Ae,ne){return Et.w(Ft.toDate()[Ae].apply(Ft.toDate("s"),(X?[0,0,0,0]:[23,59,59,999]).slice(ne)),Ft)},Ot=this.$W,Vt=this.$M,qe=this.$D,_n="set"+(this.$u?"UTC":"");switch(Rt){case R:return X?Bt(1,0):Bt(31,11);case F:return X?Bt(1,Vt):Bt(0,Vt+1);case P:var Te=this.$locale().weekStart||0,Wn=(Ot<Te?Ot+7:Ot)-Te;return Bt(X?qe-Wn:qe+(6-Wn),Vt);case A:case H:return wt(_n+"Hours",0);case C:return wt(_n+"Minutes",1);case E:return wt(_n+"Seconds",2);case b:return wt(_n+"Milliseconds",3);default:return this.clone()}},tt.endOf=function(Pt){return this.startOf(Pt,!1)},tt.$set=function(Pt,gt){var Ft,X=Et.p(Pt),Rt="set"+(this.$u?"UTC":""),Bt=(Ft={},Ft[A]=Rt+"Date",Ft[H]=Rt+"Date",Ft[F]=Rt+"Month",Ft[R]=Rt+"FullYear",Ft[C]=Rt+"Hours",Ft[E]=Rt+"Minutes",Ft[b]=Rt+"Seconds",Ft[m]=Rt+"Milliseconds",Ft)[X],wt=X===A?this.$D+(gt-this.$W):gt;if(X===F||X===R){var Ot=this.clone().set(H,1);Ot.$d[Bt](wt),Ot.init(),this.$d=Ot.set(H,Math.min(this.$D,Ot.daysInMonth())).$d}else Bt&&this.$d[Bt](wt);return this.init(),this},tt.set=function(Pt,gt){return this.clone().$set(Pt,gt)},tt.get=function(Pt){return this[Et.p(Pt)]()},tt.add=function(Pt,gt){var Ft,X=this;Pt=Number(Pt);var Rt=Et.p(gt),Bt=function(Vt){var qe=st(X);return Et.w(qe.date(qe.date()+Math.round(Vt*Pt)),X)};if(Rt===F)return this.set(F,this.$M+Pt);if(Rt===R)return this.set(R,this.$y+Pt);if(Rt===A)return Bt(1);if(Rt===P)return Bt(7);var wt=(Ft={},Ft[E]=p,Ft[C]=v,Ft[b]=f,Ft)[Rt]||1,Ot=this.$d.getTime()+Pt*wt;return Et.w(Ot,this)},tt.subtract=function(Pt,gt){return this.add(-1*Pt,gt)},tt.format=function(Pt){var gt=this,Ft=this.$locale();if(!this.isValid())return Ft.invalidDate||Y;var X=Pt||"YYYY-MM-DDTHH:mm:ssZ",Rt=Et.z(this),Bt=this.$H,wt=this.$m,Ot=this.$M,Vt=Ft.weekdays,qe=Ft.months,_n=function(ne,ke,Ve,Ee){return ne&&(ne[ke]||ne(gt,X))||Ve[ke].slice(0,Ee)},Te=function(ne){return Et.s(Bt%12||12,ne,"0")},Wn=Ft.meridiem||function(ne,ke,Ve){var Ee=ne<12?"AM":"PM";return Ve?Ee.toLowerCase():Ee},Ae={YY:String(this.$y).slice(-2),YYYY:this.$y,M:Ot+1,MM:Et.s(Ot+1,2,"0"),MMM:_n(Ft.monthsShort,Ot,qe,3),MMMM:_n(qe,Ot),D:this.$D,DD:Et.s(this.$D,2,"0"),d:String(this.$W),dd:_n(Ft.weekdaysMin,this.$W,Vt,2),ddd:_n(Ft.weekdaysShort,this.$W,Vt,3),dddd:Vt[this.$W],H:String(Bt),HH:Et.s(Bt,2,"0"),h:Te(1),hh:Te(2),a:Wn(Bt,wt,!0),A:Wn(Bt,wt,!1),m:String(wt),mm:Et.s(wt,2,"0"),s:String(this.$s),ss:Et.s(this.$s,2,"0"),SSS:Et.s(this.$ms,3,"0"),Z:Rt};return X.replace(J,function(ne,ke){return ke||Ae[ne]||Rt.replace(":","")})},tt.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},tt.diff=function(Pt,gt,Ft){var X,Rt=Et.p(gt),Bt=st(Pt),wt=(Bt.utcOffset()-this.utcOffset())*p,Ot=this-Bt,Vt=Et.m(this,Bt);return Vt=(X={},X[R]=Vt/12,X[F]=Vt,X[j]=Vt/3,X[P]=(Ot-wt)/6048e5,X[A]=(Ot-wt)/864e5,X[C]=Ot/v,X[E]=Ot/p,X[b]=Ot/f,X)[Rt]||Ot,Ft?Vt:Et.a(Vt)},tt.daysInMonth=function(){return this.endOf(F).$D},tt.$locale=function(){return pt[this.$L]},tt.locale=function(Pt,gt){if(!Pt)return this.$L;var Ft=this.clone(),X=yt(Pt,gt,!0);return X&&(Ft.$L=X),Ft},tt.clone=function(){return Et.w(this.$d,this)},tt.toDate=function(){return new Date(this.valueOf())},tt.toJSON=function(){return this.isValid()?this.toISOString():null},tt.toISOString=function(){return this.$d.toISOString()},tt.toString=function(){return this.$d.toUTCString()},Ct}(),bt=dt.prototype;return st.prototype=bt,[["$ms",m],["$s",b],["$m",E],["$H",C],["$W",A],["$M",F],["$y",R],["$D",H]].forEach(function(Ct){bt[Ct[1]]=function(tt){return this.$g(tt,Ct[0],Ct[1])}}),st.extend=function(Ct,tt){return Ct.$i||(Ct(tt,dt,st),Ct.$i=!0),st},st.locale=yt,st.isDayjs=ct,st.unix=function(Ct){return st(1e3*Ct)},st.en=pt[xt],st.Ls=pt,st.p={},st})})(LLt);var z5e=LLt.exports;const up=BE(z5e),p5={trace:0,debug:1,info:2,warn:3,error:4,fatal:5},Gt={trace:(...i)=>{},debug:(...i)=>{},info:(...i)=>{},warn:(...i)=>{},error:(...i)=>{},fatal:(...i)=>{}},$ft=function(i="fatal"){let a=p5.fatal;typeof i=="string"?(i=i.toLowerCase(),i in p5&&(a=p5[i])):typeof i=="number"&&(a=i),Gt.trace=()=>{},Gt.debug=()=>{},Gt.info=()=>{},Gt.warn=()=>{},Gt.error=()=>{},Gt.fatal=()=>{},a<=p5.fatal&&(Gt.fatal=console.error?console.error.bind(console,Y2("FATAL"),"color: orange"):console.log.bind(console,"\x1B[35m",Y2("FATAL"))),a<=p5.error&&(Gt.error=console.error?console.error.bind(console,Y2("ERROR"),"color: orange"):console.log.bind(console,"\x1B[31m",Y2("ERROR"))),a<=p5.warn&&(Gt.warn=console.warn?console.warn.bind(console,Y2("WARN"),"color: orange"):console.log.bind(console,"\x1B[33m",Y2("WARN"))),a<=p5.info&&(Gt.info=console.info?console.info.bind(console,Y2("INFO"),"color: lightblue"):console.log.bind(console,"\x1B[34m",Y2("INFO"))),a<=p5.debug&&(Gt.debug=console.debug?console.debug.bind(console,Y2("DEBUG"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",Y2("DEBUG"))),a<=p5.trace&&(Gt.trace=console.debug?console.debug.bind(console,Y2("TRACE"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",Y2("TRACE")))},Y2=i=>`%c${up().format("ss.SSS")} : ${i} : `;var zft={};Object.defineProperty(zft,"__esModule",{value:!0});var Zx=zft.sanitizeUrl=void 0,q5e=/^([^\w]*)(javascript|data|vbscript)/im,H5e=/&#(\w+)(^\w|;)?/g,V5e=/&tab;/gi,G5e=/[\u0000-\u001F\u007F-\u009F\u2000-\u200D\uFEFF]/gim,U5e=/^.+(:|:)/gim,W5e=[".","/"];function K5e(i){return W5e.indexOf(i[0])>-1}function Y5e(i){return i=i.replace(V5e,"	"),i.replace(H5e,function(a,f){return String.fromCharCode(f)})}function X5e(i){var a=Y5e(i||"").replace(G5e,"").trim();if(!a)return"about:blank";if(K5e(a))return a;var f=a.match(U5e);if(!f)return a;var p=f[0];return q5e.test(p)?"about:blank":a}Zx=zft.sanitizeUrl=X5e;function gU(i,a){return i==null||a==null?NaN:i<a?-1:i>a?1:i>=a?0:NaN}function Q5e(i,a){return i==null||a==null?NaN:a<i?-1:a>i?1:a>=i?0:NaN}function qft(i){let a,f,p;i.length!==2?(a=gU,f=(E,C)=>gU(i(E),C),p=(E,C)=>i(E)-C):(a=i===gU||i===Q5e?i:Z5e,f=i,p=i);function v(E,C,A=0,P=E.length){if(A<P){if(a(C,C)!==0)return P;do{const F=A+P>>>1;f(E[F],C)<0?A=F+1:P=F}while(A<P)}return A}function m(E,C,A=0,P=E.length){if(A<P){if(a(C,C)!==0)return P;do{const F=A+P>>>1;f(E[F],C)<=0?A=F+1:P=F}while(A<P)}return A}function b(E,C,A=0,P=E.length){const F=v(E,C,A,P-1);return F>A&&p(E[F-1],C)>-p(E[F],C)?F-1:F}return{left:v,center:b,right:m}}function Z5e(){return 0}function J5e(i){return i===null?NaN:+i}const t6e=qft(gU).right;qft(J5e).center;const e6e=t6e;class MLt extends Map{constructor(a,f=i6e){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:f}}),a!=null)for(const[p,v]of a)this.set(p,v)}get(a){return super.get(DLt(this,a))}has(a){return super.has(DLt(this,a))}set(a,f){return super.set(n6e(this,a),f)}delete(a){return super.delete(r6e(this,a))}}function DLt({_intern:i,_key:a},f){const p=a(f);return i.has(p)?i.get(p):f}function n6e({_intern:i,_key:a},f){const p=a(f);return i.has(p)?i.get(p):(i.set(p,f),f)}function r6e({_intern:i,_key:a},f){const p=a(f);return i.has(p)&&(f=i.get(p),i.delete(p)),f}function i6e(i){return i!==null&&typeof i=="object"?i.valueOf():i}var Hft=Math.sqrt(50),Vft=Math.sqrt(10),Gft=Math.sqrt(2);function s6e(i,a,f){var p,v=-1,m,b,E;if(a=+a,i=+i,f=+f,i===a&&f>0)return[i];if((p=a<i)&&(m=i,i=a,a=m),(E=ILt(i,a,f))===0||!isFinite(E))return[];if(E>0){let C=Math.round(i/E),A=Math.round(a/E);for(C*E<i&&++C,A*E>a&&--A,b=new Array(m=A-C+1);++v<m;)b[v]=(C+v)*E}else{E=-E;let C=Math.round(i*E),A=Math.round(a*E);for(C/E<i&&++C,A/E>a&&--A,b=new Array(m=A-C+1);++v<m;)b[v]=(C+v)/E}return p&&b.reverse(),b}function ILt(i,a,f){var p=(a-i)/Math.max(0,f),v=Math.floor(Math.log(p)/Math.LN10),m=p/Math.pow(10,v);return v>=0?(m>=Hft?10:m>=Vft?5:m>=Gft?2:1)*Math.pow(10,v):-Math.pow(10,-v)/(m>=Hft?10:m>=Vft?5:m>=Gft?2:1)}function Uft(i,a,f){var p=Math.abs(a-i)/Math.max(0,f),v=Math.pow(10,Math.floor(Math.log(p)/Math.LN10)),m=p/v;return m>=Hft?v*=10:m>=Vft?v*=5:m>=Gft&&(v*=2),a<i?-v:v}function a6e(i,a){let f;if(a===void 0)for(const p of i)p!=null&&(f<p||f===void 0&&p>=p)&&(f=p);else{let p=-1;for(let v of i)(v=a(v,++p,i))!=null&&(f<v||f===void 0&&v>=v)&&(f=v)}return f}function o6e(i,a){let f;if(a===void 0)for(const p of i)p!=null&&(f>p||f===void 0&&p>=p)&&(f=p);else{let p=-1;for(let v of i)(v=a(v,++p,i))!=null&&(f>v||f===void 0&&v>=v)&&(f=v)}return f}function c6e(i){return i}var pU=1,Wft=2,Kft=3,bU=4,OLt=1e-6;function u6e(i){return"translate("+i+",0)"}function l6e(i){return"translate(0,"+i+")"}function h6e(i){return a=>+i(a)}function f6e(i,a){return a=Math.max(0,i.bandwidth()-a*2)/2,i.round()&&(a=Math.round(a)),f=>+i(f)+a}function d6e(){return!this.__axis}function NLt(i,a){var f=[],p=null,v=null,m=6,b=6,E=3,C=typeof window<"u"&&window.devicePixelRatio>1?0:.5,A=i===pU||i===bU?-1:1,P=i===bU||i===Wft?"x":"y",F=i===pU||i===Kft?u6e:l6e;function j(R){var H=p??(a.ticks?a.ticks.apply(a,f):a.domain()),Y=v??(a.tickFormat?a.tickFormat.apply(a,f):c6e),rt=Math.max(m,0)+E,J=a.range(),it=+J[0]+C,ht=+J[J.length-1]+C,Tt=(a.bandwidth?f6e:h6e)(a.copy(),C),xt=R.selection?R.selection():R,pt=xt.selectAll(".domain").data([null]),ct=xt.selectAll(".tick").data(H,a).order(),yt=ct.exit(),st=ct.enter().append("g").attr("class","tick"),Et=ct.select("line"),dt=ct.select("text");pt=pt.merge(pt.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),ct=ct.merge(st),Et=Et.merge(st.append("line").attr("stroke","currentColor").attr(P+"2",A*m)),dt=dt.merge(st.append("text").attr("fill","currentColor").attr(P,A*rt).attr("dy",i===pU?"0em":i===Kft?"0.71em":"0.32em")),R!==xt&&(pt=pt.transition(R),ct=ct.transition(R),Et=Et.transition(R),dt=dt.transition(R),yt=yt.transition(R).attr("opacity",OLt).attr("transform",function(bt){return isFinite(bt=Tt(bt))?F(bt+C):this.getAttribute("transform")}),st.attr("opacity",OLt).attr("transform",function(bt){var Ct=this.parentNode.__axis;return F((Ct&&isFinite(Ct=Ct(bt))?Ct:Tt(bt))+C)})),yt.remove(),pt.attr("d",i===bU||i===Wft?b?"M"+A*b+","+it+"H"+C+"V"+ht+"H"+A*b:"M"+C+","+it+"V"+ht:b?"M"+it+","+A*b+"V"+C+"H"+ht+"V"+A*b:"M"+it+","+C+"H"+ht),ct.attr("opacity",1).attr("transform",function(bt){return F(Tt(bt)+C)}),Et.attr(P+"2",A*m),dt.attr(P,A*rt).text(Y),xt.filter(d6e).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",i===Wft?"start":i===bU?"end":"middle"),xt.each(function(){this.__axis=Tt})}return j.scale=function(R){return arguments.length?(a=R,j):a},j.ticks=function(){return f=Array.from(arguments),j},j.tickArguments=function(R){return arguments.length?(f=R==null?[]:Array.from(R),j):f.slice()},j.tickValues=function(R){return arguments.length?(p=R==null?null:Array.from(R),j):p&&p.slice()},j.tickFormat=function(R){return arguments.length?(v=R,j):v},j.tickSize=function(R){return arguments.length?(m=b=+R,j):m},j.tickSizeInner=function(R){return arguments.length?(m=+R,j):m},j.tickSizeOuter=function(R){return arguments.length?(b=+R,j):b},j.tickPadding=function(R){return arguments.length?(E=+R,j):E},j.offset=function(R){return arguments.length?(C=+R,j):C},j}function g6e(i){return NLt(pU,i)}function p6e(i){return NLt(Kft,i)}var b6e={value:()=>{}};function PLt(){for(var i=0,a=arguments.length,f={},p;i<a;++i){if(!(p=arguments[i]+"")||p in f||/[\s.]/.test(p))throw new Error("illegal type: "+p);f[p]=[]}return new vU(f)}function vU(i){this._=i}function v6e(i,a){return i.trim().split(/^|\s+/).map(function(f){var p="",v=f.indexOf(".");if(v>=0&&(p=f.slice(v+1),f=f.slice(0,v)),f&&!a.hasOwnProperty(f))throw new Error("unknown type: "+f);return{type:f,name:p}})}vU.prototype=PLt.prototype={constructor:vU,on:function(i,a){var f=this._,p=v6e(i+"",f),v,m=-1,b=p.length;if(arguments.length<2){for(;++m<b;)if((v=(i=p[m]).type)&&(v=w6e(f[v],i.name)))return v;return}if(a!=null&&typeof a!="function")throw new Error("invalid callback: "+a);for(;++m<b;)if(v=(i=p[m]).type)f[v]=FLt(f[v],i.name,a);else if(a==null)for(v in f)f[v]=FLt(f[v],i.name,null);return this},copy:function(){var i={},a=this._;for(var f in a)i[f]=a[f].slice();return new vU(i)},call:function(i,a){if((v=arguments.length-2)>0)for(var f=new Array(v),p=0,v,m;p<v;++p)f[p]=arguments[p+2];if(!this._.hasOwnProperty(i))throw new Error("unknown type: "+i);for(m=this._[i],p=0,v=m.length;p<v;++p)m[p].value.apply(a,f)},apply:function(i,a,f){if(!this._.hasOwnProperty(i))throw new Error("unknown type: "+i);for(var p=this._[i],v=0,m=p.length;v<m;++v)p[v].value.apply(a,f)}};function w6e(i,a){for(var f=0,p=i.length,v;f<p;++f)if((v=i[f]).name===a)return v.value}function FLt(i,a,f){for(var p=0,v=i.length;p<v;++p)if(i[p].name===a){i[p]=b6e,i=i.slice(0,p).concat(i.slice(p+1));break}return f!=null&&i.push({name:a,value:f}),i}var Yft="http://www.w3.org/1999/xhtml";const BLt={svg:"http://www.w3.org/2000/svg",xhtml:Yft,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function wU(i){var a=i+="",f=a.indexOf(":");return f>=0&&(a=i.slice(0,f))!=="xmlns"&&(i=i.slice(f+1)),BLt.hasOwnProperty(a)?{space:BLt[a],local:i}:i}function m6e(i){return function(){var a=this.ownerDocument,f=this.namespaceURI;return f===Yft&&a.documentElement.namespaceURI===Yft?a.createElement(i):a.createElementNS(f,i)}}function y6e(i){return function(){return this.ownerDocument.createElementNS(i.space,i.local)}}function RLt(i){var a=wU(i);return(a.local?y6e:m6e)(a)}function x6e(){}function Xft(i){return i==null?x6e:function(){return this.querySelector(i)}}function k6e(i){typeof i!="function"&&(i=Xft(i));for(var a=this._groups,f=a.length,p=new Array(f),v=0;v<f;++v)for(var m=a[v],b=m.length,E=p[v]=new Array(b),C,A,P=0;P<b;++P)(C=m[P])&&(A=i.call(C,C.__data__,P,m))&&("__data__"in C&&(A.__data__=C.__data__),E[P]=A);return new eg(p,this._parents)}function jLt(i){return i==null?[]:Array.isArray(i)?i:Array.from(i)}function E6e(){return[]}function $Lt(i){return i==null?E6e:function(){return this.querySelectorAll(i)}}function T6e(i){return function(){return jLt(i.apply(this,arguments))}}function _6e(i){typeof i=="function"?i=T6e(i):i=$Lt(i);for(var a=this._groups,f=a.length,p=[],v=[],m=0;m<f;++m)for(var b=a[m],E=b.length,C,A=0;A<E;++A)(C=b[A])&&(p.push(i.call(C,C.__data__,A,b)),v.push(C));return new eg(p,v)}function zLt(i){return function(){return this.matches(i)}}function qLt(i){return function(a){return a.matches(i)}}var C6e=Array.prototype.find;function S6e(i){return function(){return C6e.call(this.children,i)}}function A6e(){return this.firstElementChild}function L6e(i){return this.select(i==null?A6e:S6e(typeof i=="function"?i:qLt(i)))}var M6e=Array.prototype.filter;function D6e(){return Array.from(this.children)}function I6e(i){return function(){return M6e.call(this.children,i)}}function O6e(i){return this.selectAll(i==null?D6e:I6e(typeof i=="function"?i:qLt(i)))}function N6e(i){typeof i!="function"&&(i=zLt(i));for(var a=this._groups,f=a.length,p=new Array(f),v=0;v<f;++v)for(var m=a[v],b=m.length,E=p[v]=[],C,A=0;A<b;++A)(C=m[A])&&i.call(C,C.__data__,A,m)&&E.push(C);return new eg(p,this._parents)}function HLt(i){return new Array(i.length)}function P6e(){return new eg(this._enter||this._groups.map(HLt),this._parents)}function mU(i,a){this.ownerDocument=i.ownerDocument,this.namespaceURI=i.namespaceURI,this._next=null,this._parent=i,this.__data__=a}mU.prototype={constructor:mU,appendChild:function(i){return this._parent.insertBefore(i,this._next)},insertBefore:function(i,a){return this._parent.insertBefore(i,a)},querySelector:function(i){return this._parent.querySelector(i)},querySelectorAll:function(i){return this._parent.querySelectorAll(i)}};function F6e(i){return function(){return i}}function B6e(i,a,f,p,v,m){for(var b=0,E,C=a.length,A=m.length;b<A;++b)(E=a[b])?(E.__data__=m[b],p[b]=E):f[b]=new mU(i,m[b]);for(;b<C;++b)(E=a[b])&&(v[b]=E)}function R6e(i,a,f,p,v,m,b){var E,C,A=new Map,P=a.length,F=m.length,j=new Array(P),R;for(E=0;E<P;++E)(C=a[E])&&(j[E]=R=b.call(C,C.__data__,E,a)+"",A.has(R)?v[E]=C:A.set(R,C));for(E=0;E<F;++E)R=b.call(i,m[E],E,m)+"",(C=A.get(R))?(p[E]=C,C.__data__=m[E],A.delete(R)):f[E]=new mU(i,m[E]);for(E=0;E<P;++E)(C=a[E])&&A.get(j[E])===C&&(v[E]=C)}function j6e(i){return i.__data__}function $6e(i,a){if(!arguments.length)return Array.from(this,j6e);var f=a?R6e:B6e,p=this._parents,v=this._groups;typeof i!="function"&&(i=F6e(i));for(var m=v.length,b=new Array(m),E=new Array(m),C=new Array(m),A=0;A<m;++A){var P=p[A],F=v[A],j=F.length,R=z6e(i.call(P,P&&P.__data__,A,p)),H=R.length,Y=E[A]=new Array(H),rt=b[A]=new Array(H),J=C[A]=new Array(j);f(P,F,Y,rt,J,R,a);for(var it=0,ht=0,Tt,xt;it<H;++it)if(Tt=Y[it]){for(it>=ht&&(ht=it+1);!(xt=rt[ht])&&++ht<H;);Tt._next=xt||null}}return b=new eg(b,p),b._enter=E,b._exit=C,b}function z6e(i){return typeof i=="object"&&"length"in i?i:Array.from(i)}function q6e(){return new eg(this._exit||this._groups.map(HLt),this._parents)}function H6e(i,a,f){var p=this.enter(),v=this,m=this.exit();return typeof i=="function"?(p=i(p),p&&(p=p.selection())):p=p.append(i+""),a!=null&&(v=a(v),v&&(v=v.selection())),f==null?m.remove():f(m),p&&v?p.merge(v).order():v}function V6e(i){for(var a=i.selection?i.selection():i,f=this._groups,p=a._groups,v=f.length,m=p.length,b=Math.min(v,m),E=new Array(v),C=0;C<b;++C)for(var A=f[C],P=p[C],F=A.length,j=E[C]=new Array(F),R,H=0;H<F;++H)(R=A[H]||P[H])&&(j[H]=R);for(;C<v;++C)E[C]=f[C];return new eg(E,this._parents)}function G6e(){for(var i=this._groups,a=-1,f=i.length;++a<f;)for(var p=i[a],v=p.length-1,m=p[v],b;--v>=0;)(b=p[v])&&(m&&b.compareDocumentPosition(m)^4&&m.parentNode.insertBefore(b,m),m=b);return this}function U6e(i){i||(i=W6e);function a(F,j){return F&&j?i(F.__data__,j.__data__):!F-!j}for(var f=this._groups,p=f.length,v=new Array(p),m=0;m<p;++m){for(var b=f[m],E=b.length,C=v[m]=new Array(E),A,P=0;P<E;++P)(A=b[P])&&(C[P]=A);C.sort(a)}return new eg(v,this._parents).order()}function W6e(i,a){return i<a?-1:i>a?1:i>=a?0:NaN}function K6e(){var i=arguments[0];return arguments[0]=this,i.apply(null,arguments),this}function Y6e(){return Array.from(this)}function X6e(){for(var i=this._groups,a=0,f=i.length;a<f;++a)for(var p=i[a],v=0,m=p.length;v<m;++v){var b=p[v];if(b)return b}return null}function Q6e(){let i=0;for(const a of this)++i;return i}function Z6e(){return!this.node()}function J6e(i){for(var a=this._groups,f=0,p=a.length;f<p;++f)for(var v=a[f],m=0,b=v.length,E;m<b;++m)(E=v[m])&&i.call(E,E.__data__,m,v);return this}function txe(i){return function(){this.removeAttribute(i)}}function exe(i){return function(){this.removeAttributeNS(i.space,i.local)}}function nxe(i,a){return function(){this.setAttribute(i,a)}}function rxe(i,a){return function(){this.setAttributeNS(i.space,i.local,a)}}function ixe(i,a){return function(){var f=a.apply(this,arguments);f==null?this.removeAttribute(i):this.setAttribute(i,f)}}function sxe(i,a){return function(){var f=a.apply(this,arguments);f==null?this.removeAttributeNS(i.space,i.local):this.setAttributeNS(i.space,i.local,f)}}function axe(i,a){var f=wU(i);if(arguments.length<2){var p=this.node();return f.local?p.getAttributeNS(f.space,f.local):p.getAttribute(f)}return this.each((a==null?f.local?exe:txe:typeof a=="function"?f.local?sxe:ixe:f.local?rxe:nxe)(f,a))}function VLt(i){return i.ownerDocument&&i.ownerDocument.defaultView||i.document&&i||i.defaultView}function oxe(i){return function(){this.style.removeProperty(i)}}function cxe(i,a,f){return function(){this.style.setProperty(i,a,f)}}function uxe(i,a,f){return function(){var p=a.apply(this,arguments);p==null?this.style.removeProperty(i):this.style.setProperty(i,p,f)}}function lxe(i,a,f){return arguments.length>1?this.each((a==null?oxe:typeof a=="function"?uxe:cxe)(i,a,f??"")):xA(this.node(),i)}function xA(i,a){return i.style.getPropertyValue(a)||VLt(i).getComputedStyle(i,null).getPropertyValue(a)}function hxe(i){return function(){delete this[i]}}function fxe(i,a){return function(){this[i]=a}}function dxe(i,a){return function(){var f=a.apply(this,arguments);f==null?delete this[i]:this[i]=f}}function gxe(i,a){return arguments.length>1?this.each((a==null?hxe:typeof a=="function"?dxe:fxe)(i,a)):this.node()[i]}function GLt(i){return i.trim().split(/^|\s+/)}function Qft(i){return i.classList||new ULt(i)}function ULt(i){this._node=i,this._names=GLt(i.getAttribute("class")||"")}ULt.prototype={add:function(i){var a=this._names.indexOf(i);a<0&&(this._names.push(i),this._node.setAttribute("class",this._names.join(" ")))},remove:function(i){var a=this._names.indexOf(i);a>=0&&(this._names.splice(a,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(i){return this._names.indexOf(i)>=0}};function WLt(i,a){for(var f=Qft(i),p=-1,v=a.length;++p<v;)f.add(a[p])}function KLt(i,a){for(var f=Qft(i),p=-1,v=a.length;++p<v;)f.remove(a[p])}function pxe(i){return function(){WLt(this,i)}}function bxe(i){return function(){KLt(this,i)}}function vxe(i,a){return function(){(a.apply(this,arguments)?WLt:KLt)(this,i)}}function wxe(i,a){var f=GLt(i+"");if(arguments.length<2){for(var p=Qft(this.node()),v=-1,m=f.length;++v<m;)if(!p.contains(f[v]))return!1;return!0}return this.each((typeof a=="function"?vxe:a?pxe:bxe)(f,a))}function mxe(){this.textContent=""}function yxe(i){return function(){this.textContent=i}}function xxe(i){return function(){var a=i.apply(this,arguments);this.textContent=a??""}}function kxe(i){return arguments.length?this.each(i==null?mxe:(typeof i=="function"?xxe:yxe)(i)):this.node().textContent}function Exe(){this.innerHTML=""}function Txe(i){return function(){this.innerHTML=i}}function _xe(i){return function(){var a=i.apply(this,arguments);this.innerHTML=a??""}}function Cxe(i){return arguments.length?this.each(i==null?Exe:(typeof i=="function"?_xe:Txe)(i)):this.node().innerHTML}function Sxe(){this.nextSibling&&this.parentNode.appendChild(this)}function Axe(){return this.each(Sxe)}function Lxe(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function Mxe(){return this.each(Lxe)}function Dxe(i){var a=typeof i=="function"?i:RLt(i);return this.select(function(){return this.appendChild(a.apply(this,arguments))})}function Ixe(){return null}function Oxe(i,a){var f=typeof i=="function"?i:RLt(i),p=a==null?Ixe:typeof a=="function"?a:Xft(a);return this.select(function(){return this.insertBefore(f.apply(this,arguments),p.apply(this,arguments)||null)})}function Nxe(){var i=this.parentNode;i&&i.removeChild(this)}function Pxe(){return this.each(Nxe)}function Fxe(){var i=this.cloneNode(!1),a=this.parentNode;return a?a.insertBefore(i,this.nextSibling):i}function Bxe(){var i=this.cloneNode(!0),a=this.parentNode;return a?a.insertBefore(i,this.nextSibling):i}function Rxe(i){return this.select(i?Bxe:Fxe)}function jxe(i){return arguments.length?this.property("__data__",i):this.node().__data__}function $xe(i){return function(a){i.call(this,a,this.__data__)}}function zxe(i){return i.trim().split(/^|\s+/).map(function(a){var f="",p=a.indexOf(".");return p>=0&&(f=a.slice(p+1),a=a.slice(0,p)),{type:a,name:f}})}function qxe(i){return function(){var a=this.__on;if(a){for(var f=0,p=-1,v=a.length,m;f<v;++f)m=a[f],(!i.type||m.type===i.type)&&m.name===i.name?this.removeEventListener(m.type,m.listener,m.options):a[++p]=m;++p?a.length=p:delete this.__on}}}function Hxe(i,a,f){return function(){var p=this.__on,v,m=$xe(a);if(p){for(var b=0,E=p.length;b<E;++b)if((v=p[b]).type===i.type&&v.name===i.name){this.removeEventListener(v.type,v.listener,v.options),this.addEventListener(v.type,v.listener=m,v.options=f),v.value=a;return}}this.addEventListener(i.type,m,f),v={type:i.type,name:i.name,value:a,listener:m,options:f},p?p.push(v):this.__on=[v]}}function Vxe(i,a,f){var p=zxe(i+""),v,m=p.length,b;if(arguments.length<2){var E=this.node().__on;if(E){for(var C=0,A=E.length,P;C<A;++C)for(v=0,P=E[C];v<m;++v)if((b=p[v]).type===P.type&&b.name===P.name)return P.value}return}for(E=a?Hxe:qxe,v=0;v<m;++v)this.each(E(p[v],a,f));return this}function YLt(i,a,f){var p=VLt(i),v=p.CustomEvent;typeof v=="function"?v=new v(a,f):(v=p.document.createEvent("Event"),f?(v.initEvent(a,f.bubbles,f.cancelable),v.detail=f.detail):v.initEvent(a,!1,!1)),i.dispatchEvent(v)}function Gxe(i,a){return function(){return YLt(this,i,a)}}function Uxe(i,a){return function(){return YLt(this,i,a.apply(this,arguments))}}function Wxe(i,a){return this.each((typeof a=="function"?Uxe:Gxe)(i,a))}function*Kxe(){for(var i=this._groups,a=0,f=i.length;a<f;++a)for(var p=i[a],v=0,m=p.length,b;v<m;++v)(b=p[v])&&(yield b)}var Zft=[null];function eg(i,a){this._groups=i,this._parents=a}function EN(){return new eg([[document.documentElement]],Zft)}function Yxe(){return this}eg.prototype=EN.prototype={constructor:eg,select:k6e,selectAll:_6e,selectChild:L6e,selectChildren:O6e,filter:N6e,data:$6e,enter:P6e,exit:q6e,join:H6e,merge:V6e,selection:Yxe,order:G6e,sort:U6e,call:K6e,nodes:Y6e,node:X6e,size:Q6e,empty:Z6e,each:J6e,attr:axe,style:lxe,property:gxe,classed:wxe,text:kxe,html:Cxe,raise:Axe,lower:Mxe,append:Dxe,insert:Oxe,remove:Pxe,clone:Rxe,datum:jxe,on:Vxe,dispatch:Wxe,[Symbol.iterator]:Kxe};function fr(i){return typeof i=="string"?new eg([[document.querySelector(i)]],[document.documentElement]):new eg([[i]],Zft)}function XLt(i){return typeof i=="string"?new eg([document.querySelectorAll(i)],[document.documentElement]):new eg([jLt(i)],Zft)}function TN(i,a,f){i.prototype=a.prototype=f,f.constructor=i}function yU(i,a){var f=Object.create(i.prototype);for(var p in a)f[p]=a[p];return f}function RE(){}var _N=.7,xU=1/_N,kA="\\s*([+-]?\\d+)\\s*",CN="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",s3="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",Xxe=/^#([0-9a-f]{3,8})$/,Qxe=new RegExp(`^rgb\\(${kA},${kA},${kA}\\)$`),Zxe=new RegExp(`^rgb\\(${s3},${s3},${s3}\\)$`),Jxe=new RegExp(`^rgba\\(${kA},${kA},${kA},${CN}\\)$`),tke=new RegExp(`^rgba\\(${s3},${s3},${s3},${CN}\\)$`),eke=new RegExp(`^hsl\\(${CN},${s3},${s3}\\)$`),nke=new RegExp(`^hsla\\(${CN},${s3},${s3},${CN}\\)$`),QLt={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};TN(RE,jE,{copy(i){return Object.assign(new this.constructor,this,i)},displayable(){return this.rgb().displayable()},hex:ZLt,formatHex:ZLt,formatHex8:rke,formatHsl:ike,formatRgb:JLt,toString:JLt});function ZLt(){return this.rgb().formatHex()}function rke(){return this.rgb().formatHex8()}function ike(){return sMt(this).formatHsl()}function JLt(){return this.rgb().formatRgb()}function jE(i){var a,f;return i=(i+"").trim().toLowerCase(),(a=Xxe.exec(i))?(f=a[1].length,a=parseInt(a[1],16),f===6?tMt(a):f===3?new g0(a>>8&15|a>>4&240,a>>4&15|a&240,(a&15)<<4|a&15,1):f===8?kU(a>>24&255,a>>16&255,a>>8&255,(a&255)/255):f===4?kU(a>>12&15|a>>8&240,a>>8&15|a>>4&240,a>>4&15|a&240,((a&15)<<4|a&15)/255):null):(a=Qxe.exec(i))?new g0(a[1],a[2],a[3],1):(a=Zxe.exec(i))?new g0(a[1]*255/100,a[2]*255/100,a[3]*255/100,1):(a=Jxe.exec(i))?kU(a[1],a[2],a[3],a[4]):(a=tke.exec(i))?kU(a[1]*255/100,a[2]*255/100,a[3]*255/100,a[4]):(a=eke.exec(i))?iMt(a[1],a[2]/100,a[3]/100,1):(a=nke.exec(i))?iMt(a[1],a[2]/100,a[3]/100,a[4]):QLt.hasOwnProperty(i)?tMt(QLt[i]):i==="transparent"?new g0(NaN,NaN,NaN,0):null}function tMt(i){return new g0(i>>16&255,i>>8&255,i&255,1)}function kU(i,a,f,p){return p<=0&&(i=a=f=NaN),new g0(i,a,f,p)}function eMt(i){return i instanceof RE||(i=jE(i)),i?(i=i.rgb(),new g0(i.r,i.g,i.b,i.opacity)):new g0}function Jft(i,a,f,p){return arguments.length===1?eMt(i):new g0(i,a,f,p??1)}function g0(i,a,f,p){this.r=+i,this.g=+a,this.b=+f,this.opacity=+p}TN(g0,Jft,yU(RE,{brighter(i){return i=i==null?xU:Math.pow(xU,i),new g0(this.r*i,this.g*i,this.b*i,this.opacity)},darker(i){return i=i==null?_N:Math.pow(_N,i),new g0(this.r*i,this.g*i,this.b*i,this.opacity)},rgb(){return this},clamp(){return new g0($E(this.r),$E(this.g),$E(this.b),EU(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:nMt,formatHex:nMt,formatHex8:ske,formatRgb:rMt,toString:rMt}));function nMt(){return`#${zE(this.r)}${zE(this.g)}${zE(this.b)}`}function ske(){return`#${zE(this.r)}${zE(this.g)}${zE(this.b)}${zE((isNaN(this.opacity)?1:this.opacity)*255)}`}function rMt(){const i=EU(this.opacity);return`${i===1?"rgb(":"rgba("}${$E(this.r)}, ${$E(this.g)}, ${$E(this.b)}${i===1?")":`, ${i})`}`}function EU(i){return isNaN(i)?1:Math.max(0,Math.min(1,i))}function $E(i){return Math.max(0,Math.min(255,Math.round(i)||0))}function zE(i){return i=$E(i),(i<16?"0":"")+i.toString(16)}function iMt(i,a,f,p){return p<=0?i=a=f=NaN:f<=0||f>=1?i=a=NaN:a<=0&&(i=NaN),new Ww(i,a,f,p)}function sMt(i){if(i instanceof Ww)return new Ww(i.h,i.s,i.l,i.opacity);if(i instanceof RE||(i=jE(i)),!i)return new Ww;if(i instanceof Ww)return i;i=i.rgb();var a=i.r/255,f=i.g/255,p=i.b/255,v=Math.min(a,f,p),m=Math.max(a,f,p),b=NaN,E=m-v,C=(m+v)/2;return E?(a===m?b=(f-p)/E+(f<p)*6:f===m?b=(p-a)/E+2:b=(a-f)/E+4,E/=C<.5?m+v:2-m-v,b*=60):E=C>0&&C<1?0:b,new Ww(b,E,C,i.opacity)}function ake(i,a,f,p){return arguments.length===1?sMt(i):new Ww(i,a,f,p??1)}function Ww(i,a,f,p){this.h=+i,this.s=+a,this.l=+f,this.opacity=+p}TN(Ww,ake,yU(RE,{brighter(i){return i=i==null?xU:Math.pow(xU,i),new Ww(this.h,this.s,this.l*i,this.opacity)},darker(i){return i=i==null?_N:Math.pow(_N,i),new Ww(this.h,this.s,this.l*i,this.opacity)},rgb(){var i=this.h%360+(this.h<0)*360,a=isNaN(i)||isNaN(this.s)?0:this.s,f=this.l,p=f+(f<.5?f:1-f)*a,v=2*f-p;return new g0(t1t(i>=240?i-240:i+120,v,p),t1t(i,v,p),t1t(i<120?i+240:i-120,v,p),this.opacity)},clamp(){return new Ww(aMt(this.h),TU(this.s),TU(this.l),EU(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 i=EU(this.opacity);return`${i===1?"hsl(":"hsla("}${aMt(this.h)}, ${TU(this.s)*100}%, ${TU(this.l)*100}%${i===1?")":`, ${i})`}`}}));function aMt(i){return i=(i||0)%360,i<0?i+360:i}function TU(i){return Math.max(0,Math.min(1,i||0))}function t1t(i,a,f){return(i<60?a+(f-a)*i/60:i<180?f:i<240?a+(f-a)*(240-i)/60:a)*255}const oke=Math.PI/180,cke=180/Math.PI,_U=18,oMt=.96422,cMt=1,uMt=.82521,lMt=4/29,EA=6/29,hMt=3*EA*EA,uke=EA*EA*EA;function fMt(i){if(i instanceof a3)return new a3(i.l,i.a,i.b,i.opacity);if(i instanceof b5)return dMt(i);i instanceof g0||(i=eMt(i));var a=i1t(i.r),f=i1t(i.g),p=i1t(i.b),v=e1t((.2225045*a+.7168786*f+.0606169*p)/cMt),m,b;return a===f&&f===p?m=b=v:(m=e1t((.4360747*a+.3850649*f+.1430804*p)/oMt),b=e1t((.0139322*a+.0971045*f+.7141733*p)/uMt)),new a3(116*v-16,500*(m-v),200*(v-b),i.opacity)}function lke(i,a,f,p){return arguments.length===1?fMt(i):new a3(i,a,f,p??1)}function a3(i,a,f,p){this.l=+i,this.a=+a,this.b=+f,this.opacity=+p}TN(a3,lke,yU(RE,{brighter(i){return new a3(this.l+_U*(i??1),this.a,this.b,this.opacity)},darker(i){return new a3(this.l-_U*(i??1),this.a,this.b,this.opacity)},rgb(){var i=(this.l+16)/116,a=isNaN(this.a)?i:i+this.a/500,f=isNaN(this.b)?i:i-this.b/200;return a=oMt*n1t(a),i=cMt*n1t(i),f=uMt*n1t(f),new g0(r1t(3.1338561*a-1.6168667*i-.4906146*f),r1t(-.9787684*a+1.9161415*i+.033454*f),r1t(.0719453*a-.2289914*i+1.4052427*f),this.opacity)}}));function e1t(i){return i>uke?Math.pow(i,1/3):i/hMt+lMt}function n1t(i){return i>EA?i*i*i:hMt*(i-lMt)}function r1t(i){return 255*(i<=.0031308?12.92*i:1.055*Math.pow(i,1/2.4)-.055)}function i1t(i){return(i/=255)<=.04045?i/12.92:Math.pow((i+.055)/1.055,2.4)}function hke(i){if(i instanceof b5)return new b5(i.h,i.c,i.l,i.opacity);if(i instanceof a3||(i=fMt(i)),i.a===0&&i.b===0)return new b5(NaN,0<i.l&&i.l<100?0:NaN,i.l,i.opacity);var a=Math.atan2(i.b,i.a)*cke;return new b5(a<0?a+360:a,Math.sqrt(i.a*i.a+i.b*i.b),i.l,i.opacity)}function s1t(i,a,f,p){return arguments.length===1?hke(i):new b5(i,a,f,p??1)}function b5(i,a,f,p){this.h=+i,this.c=+a,this.l=+f,this.opacity=+p}function dMt(i){if(isNaN(i.h))return new a3(i.l,0,0,i.opacity);var a=i.h*oke;return new a3(i.l,Math.cos(a)*i.c,Math.sin(a)*i.c,i.opacity)}TN(b5,s1t,yU(RE,{brighter(i){return new b5(this.h,this.c,this.l+_U*(i??1),this.opacity)},darker(i){return new b5(this.h,this.c,this.l-_U*(i??1),this.opacity)},rgb(){return dMt(this).rgb()}}));const CU=i=>()=>i;function gMt(i,a){return function(f){return i+f*a}}function fke(i,a,f){return i=Math.pow(i,f),a=Math.pow(a,f)-i,f=1/f,function(p){return Math.pow(i+p*a,f)}}function dke(i,a){var f=a-i;return f?gMt(i,f>180||f<-180?f-360*Math.round(f/360):f):CU(isNaN(i)?a:i)}function gke(i){return(i=+i)==1?SN:function(a,f){return f-a?fke(a,f,i):CU(isNaN(a)?f:a)}}function SN(i,a){var f=a-i;return f?gMt(i,f):CU(isNaN(i)?a:i)}const SU=function i(a){var f=gke(a);function p(v,m){var b=f((v=Jft(v)).r,(m=Jft(m)).r),E=f(v.g,m.g),C=f(v.b,m.b),A=SN(v.opacity,m.opacity);return function(P){return v.r=b(P),v.g=E(P),v.b=C(P),v.opacity=A(P),v+""}}return p.gamma=i,p}(1);function pke(i,a){a||(a=[]);var f=i?Math.min(a.length,i.length):0,p=a.slice(),v;return function(m){for(v=0;v<f;++v)p[v]=i[v]*(1-m)+a[v]*m;return p}}function bke(i){return ArrayBuffer.isView(i)&&!(i instanceof DataView)}function vke(i,a){var f=a?a.length:0,p=i?Math.min(f,i.length):0,v=new Array(p),m=new Array(f),b;for(b=0;b<p;++b)v[b]=c1t(i[b],a[b]);for(;b<f;++b)m[b]=a[b];return function(E){for(b=0;b<p;++b)m[b]=v[b](E);return m}}function wke(i,a){var f=new Date;return i=+i,a=+a,function(p){return f.setTime(i*(1-p)+a*p),f}}function Kw(i,a){return i=+i,a=+a,function(f){return i*(1-f)+a*f}}function mke(i,a){var f={},p={},v;(i===null||typeof i!="object")&&(i={}),(a===null||typeof a!="object")&&(a={});for(v in a)v in i?f[v]=c1t(i[v],a[v]):p[v]=a[v];return function(m){for(v in f)p[v]=f[v](m);return p}}var a1t=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,o1t=new RegExp(a1t.source,"g");function yke(i){return function(){return i}}function xke(i){return function(a){return i(a)+""}}function pMt(i,a){var f=a1t.lastIndex=o1t.lastIndex=0,p,v,m,b=-1,E=[],C=[];for(i=i+"",a=a+"";(p=a1t.exec(i))&&(v=o1t.exec(a));)(m=v.index)>f&&(m=a.slice(f,m),E[b]?E[b]+=m:E[++b]=m),(p=p[0])===(v=v[0])?E[b]?E[b]+=v:E[++b]=v:(E[++b]=null,C.push({i:b,x:Kw(p,v)})),f=o1t.lastIndex;return f<a.length&&(m=a.slice(f),E[b]?E[b]+=m:E[++b]=m),E.length<2?C[0]?xke(C[0].x):yke(a):(a=C.length,function(A){for(var P=0,F;P<a;++P)E[(F=C[P]).i]=F.x(A);return E.join("")})}function c1t(i,a){var f=typeof a,p;return a==null||f==="boolean"?CU(a):(f==="number"?Kw:f==="string"?(p=jE(a))?(a=p,SU):pMt:a instanceof jE?SU:a instanceof Date?wke:bke(a)?pke:Array.isArray(a)?vke:typeof a.valueOf!="function"&&typeof a.toString!="function"||isNaN(a)?mke:Kw)(i,a)}function kke(i,a){return i=+i,a=+a,function(f){return Math.round(i*(1-f)+a*f)}}var bMt=180/Math.PI,u1t={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function vMt(i,a,f,p,v,m){var b,E,C;return(b=Math.sqrt(i*i+a*a))&&(i/=b,a/=b),(C=i*f+a*p)&&(f-=i*C,p-=a*C),(E=Math.sqrt(f*f+p*p))&&(f/=E,p/=E,C/=E),i*p<a*f&&(i=-i,a=-a,C=-C,b=-b),{translateX:v,translateY:m,rotate:Math.atan2(a,i)*bMt,skewX:Math.atan(C)*bMt,scaleX:b,scaleY:E}}var AU;function Eke(i){const a=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(i+"");return a.isIdentity?u1t:vMt(a.a,a.b,a.c,a.d,a.e,a.f)}function Tke(i){return i==null||(AU||(AU=document.createElementNS("http://www.w3.org/2000/svg","g")),AU.setAttribute("transform",i),!(i=AU.transform.baseVal.consolidate()))?u1t:(i=i.matrix,vMt(i.a,i.b,i.c,i.d,i.e,i.f))}function wMt(i,a,f,p){function v(A){return A.length?A.pop()+" ":""}function m(A,P,F,j,R,H){if(A!==F||P!==j){var Y=R.push("translate(",null,a,null,f);H.push({i:Y-4,x:Kw(A,F)},{i:Y-2,x:Kw(P,j)})}else(F||j)&&R.push("translate("+F+a+j+f)}function b(A,P,F,j){A!==P?(A-P>180?P+=360:P-A>180&&(A+=360),j.push({i:F.push(v(F)+"rotate(",null,p)-2,x:Kw(A,P)})):P&&F.push(v(F)+"rotate("+P+p)}function E(A,P,F,j){A!==P?j.push({i:F.push(v(F)+"skewX(",null,p)-2,x:Kw(A,P)}):P&&F.push(v(F)+"skewX("+P+p)}function C(A,P,F,j,R,H){if(A!==F||P!==j){var Y=R.push(v(R)+"scale(",null,",",null,")");H.push({i:Y-4,x:Kw(A,F)},{i:Y-2,x:Kw(P,j)})}else(F!==1||j!==1)&&R.push(v(R)+"scale("+F+","+j+")")}return function(A,P){var F=[],j=[];return A=i(A),P=i(P),m(A.translateX,A.translateY,P.translateX,P.translateY,F,j),b(A.rotate,P.rotate,F,j),E(A.skewX,P.skewX,F,j),C(A.scaleX,A.scaleY,P.scaleX,P.scaleY,F,j),A=P=null,function(R){for(var H=-1,Y=j.length,rt;++H<Y;)F[(rt=j[H]).i]=rt.x(R);return F.join("")}}}var _ke=wMt(Eke,"px, ","px)","deg)"),Cke=wMt(Tke,", ",")",")");function Ske(i){return function(a,f){var p=i((a=s1t(a)).h,(f=s1t(f)).h),v=SN(a.c,f.c),m=SN(a.l,f.l),b=SN(a.opacity,f.opacity);return function(E){return a.h=p(E),a.c=v(E),a.l=m(E),a.opacity=b(E),a+""}}}const Ake=Ske(dke);var TA=0,AN=0,LN=0,mMt=1e3,LU,MN,MU=0,qE=0,DU=0,DN=typeof performance=="object"&&performance.now?performance:Date,yMt=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(i){setTimeout(i,17)};function l1t(){return qE||(yMt(Lke),qE=DN.now()+DU)}function Lke(){qE=0}function IU(){this._call=this._time=this._next=null}IU.prototype=xMt.prototype={constructor:IU,restart:function(i,a,f){if(typeof i!="function")throw new TypeError("callback is not a function");f=(f==null?l1t():+f)+(a==null?0:+a),!this._next&&MN!==this&&(MN?MN._next=this:LU=this,MN=this),this._call=i,this._time=f,h1t()},stop:function(){this._call&&(this._call=null,this._time=1/0,h1t())}};function xMt(i,a,f){var p=new IU;return p.restart(i,a,f),p}function Mke(){l1t(),++TA;for(var i=LU,a;i;)(a=qE-i._time)>=0&&i._call.call(void 0,a),i=i._next;--TA}function kMt(){qE=(MU=DN.now())+DU,TA=AN=0;try{Mke()}finally{TA=0,Ike(),qE=0}}function Dke(){var i=DN.now(),a=i-MU;a>mMt&&(DU-=a,MU=i)}function Ike(){for(var i,a=LU,f,p=1/0;a;)a._call?(p>a._time&&(p=a._time),i=a,a=a._next):(f=a._next,a._next=null,a=i?i._next=f:LU=f);MN=i,h1t(p)}function h1t(i){if(!TA){AN&&(AN=clearTimeout(AN));var a=i-qE;a>24?(i<1/0&&(AN=setTimeout(kMt,i-DN.now()-DU)),LN&&(LN=clearInterval(LN))):(LN||(MU=DN.now(),LN=setInterval(Dke,mMt)),TA=1,yMt(kMt))}}function EMt(i,a,f){var p=new IU;return a=a==null?0:+a,p.restart(v=>{p.stop(),i(v+a)},a,f),p}var Oke=PLt("start","end","cancel","interrupt"),Nke=[],TMt=0,_Mt=1,f1t=2,OU=3,CMt=4,d1t=5,NU=6;function PU(i,a,f,p,v,m){var b=i.__transition;if(!b)i.__transition={};else if(f in b)return;Pke(i,f,{name:a,index:p,group:v,on:Oke,tween:Nke,time:m.time,delay:m.delay,duration:m.duration,ease:m.ease,timer:null,state:TMt})}function g1t(i,a){var f=Yw(i,a);if(f.state>TMt)throw new Error("too late; already scheduled");return f}function o3(i,a){var f=Yw(i,a);if(f.state>OU)throw new Error("too late; already running");return f}function Yw(i,a){var f=i.__transition;if(!f||!(f=f[a]))throw new Error("transition not found");return f}function Pke(i,a,f){var p=i.__transition,v;p[a]=f,f.timer=xMt(m,0,f.time);function m(A){f.state=_Mt,f.timer.restart(b,f.delay,f.time),f.delay<=A&&b(A-f.delay)}function b(A){var P,F,j,R;if(f.state!==_Mt)return C();for(P in p)if(R=p[P],R.name===f.name){if(R.state===OU)return EMt(b);R.state===CMt?(R.state=NU,R.timer.stop(),R.on.call("interrupt",i,i.__data__,R.index,R.group),delete p[P]):+P<a&&(R.state=NU,R.timer.stop(),R.on.call("cancel",i,i.__data__,R.index,R.group),delete p[P])}if(EMt(function(){f.state===OU&&(f.state=CMt,f.timer.restart(E,f.delay,f.time),E(A))}),f.state=f1t,f.on.call("start",i,i.__data__,f.index,f.group),f.state===f1t){for(f.state=OU,v=new Array(j=f.tween.length),P=0,F=-1;P<j;++P)(R=f.tween[P].value.call(i,i.__data__,f.index,f.group))&&(v[++F]=R);v.length=F+1}}function E(A){for(var P=A<f.duration?f.ease.call(null,A/f.duration):(f.timer.restart(C),f.state=d1t,1),F=-1,j=v.length;++F<j;)v[F].call(i,P);f.state===d1t&&(f.on.call("end",i,i.__data__,f.index,f.group),C())}function C(){f.state=NU,f.timer.stop(),delete p[a];for(var A in p)return;delete i.__transition}}function Fke(i,a){var f=i.__transition,p,v,m=!0,b;if(f){a=a==null?null:a+"";for(b in f){if((p=f[b]).name!==a){m=!1;continue}v=p.state>f1t&&p.state<d1t,p.state=NU,p.timer.stop(),p.on.call(v?"interrupt":"cancel",i,i.__data__,p.index,p.group),delete f[b]}m&&delete i.__transition}}function Bke(i){return this.each(function(){Fke(this,i)})}function Rke(i,a){var f,p;return function(){var v=o3(this,i),m=v.tween;if(m!==f){p=f=m;for(var b=0,E=p.length;b<E;++b)if(p[b].name===a){p=p.slice(),p.splice(b,1);break}}v.tween=p}}function jke(i,a,f){var p,v;if(typeof f!="function")throw new Error;return function(){var m=o3(this,i),b=m.tween;if(b!==p){v=(p=b).slice();for(var E={name:a,value:f},C=0,A=v.length;C<A;++C)if(v[C].name===a){v[C]=E;break}C===A&&v.push(E)}m.tween=v}}function $ke(i,a){var f=this._id;if(i+="",arguments.length<2){for(var p=Yw(this.node(),f).tween,v=0,m=p.length,b;v<m;++v)if((b=p[v]).name===i)return b.value;return null}return this.each((a==null?Rke:jke)(f,i,a))}function p1t(i,a,f){var p=i._id;return i.each(function(){var v=o3(this,p);(v.value||(v.value={}))[a]=f.apply(this,arguments)}),function(v){return Yw(v,p).value[a]}}function SMt(i,a){var f;return(typeof a=="number"?Kw:a instanceof jE?SU:(f=jE(a))?(a=f,SU):pMt)(i,a)}function zke(i){return function(){this.removeAttribute(i)}}function qke(i){return function(){this.removeAttributeNS(i.space,i.local)}}function Hke(i,a,f){var p,v=f+"",m;return function(){var b=this.getAttribute(i);return b===v?null:b===p?m:m=a(p=b,f)}}function Vke(i,a,f){var p,v=f+"",m;return function(){var b=this.getAttributeNS(i.space,i.local);return b===v?null:b===p?m:m=a(p=b,f)}}function Gke(i,a,f){var p,v,m;return function(){var b,E=f(this),C;return E==null?void this.removeAttribute(i):(b=this.getAttribute(i),C=E+"",b===C?null:b===p&&C===v?m:(v=C,m=a(p=b,E)))}}function Uke(i,a,f){var p,v,m;return function(){var b,E=f(this),C;return E==null?void this.removeAttributeNS(i.space,i.local):(b=this.getAttributeNS(i.space,i.local),C=E+"",b===C?null:b===p&&C===v?m:(v=C,m=a(p=b,E)))}}function Wke(i,a){var f=wU(i),p=f==="transform"?Cke:SMt;return this.attrTween(i,typeof a=="function"?(f.local?Uke:Gke)(f,p,p1t(this,"attr."+i,a)):a==null?(f.local?qke:zke)(f):(f.local?Vke:Hke)(f,p,a))}function Kke(i,a){return function(f){this.setAttribute(i,a.call(this,f))}}function Yke(i,a){return function(f){this.setAttributeNS(i.space,i.local,a.call(this,f))}}function Xke(i,a){var f,p;function v(){var m=a.apply(this,arguments);return m!==p&&(f=(p=m)&&Yke(i,m)),f}return v._value=a,v}function Qke(i,a){var f,p;function v(){var m=a.apply(this,arguments);return m!==p&&(f=(p=m)&&Kke(i,m)),f}return v._value=a,v}function Zke(i,a){var f="attr."+i;if(arguments.length<2)return(f=this.tween(f))&&f._value;if(a==null)return this.tween(f,null);if(typeof a!="function")throw new Error;var p=wU(i);return this.tween(f,(p.local?Xke:Qke)(p,a))}function Jke(i,a){return function(){g1t(this,i).delay=+a.apply(this,arguments)}}function t8e(i,a){return a=+a,function(){g1t(this,i).delay=a}}function e8e(i){var a=this._id;return arguments.length?this.each((typeof i=="function"?Jke:t8e)(a,i)):Yw(this.node(),a).delay}function n8e(i,a){return function(){o3(this,i).duration=+a.apply(this,arguments)}}function r8e(i,a){return a=+