Jn?(w+=M*=x?1:-1,C-=M):(k=0,w=C=(g+y)/2),(E-=2*N)>Jn?(f+=N*=x?1:-1,T-=N):(E=0,f=T=(g+y)/2)),A=m*ed(f),M=m*El(f),N=p*ed(C),g=p*El(C),Jn{bw(),Cw(),QL(),o(Q$e,"arcInnerRadius"),o(J$e,"arcOuterRadius"),o(eze,"arcStartAngle"),o(tze,"arcEndAngle"),o(rze,"arcPadAngle"),o(ize,"intersect"),o(ww,"cornerTangents"),o(Al,"default")});function ux(e){return"object"==typeof e&&"length"in e?e:Array.from(e)}var JL=z(()=>{Array.prototype.slice,o(ux,"default")});function LJ(e){this._context=e}function xc(e){return new LJ(e)}var eM=z(()=>{o(LJ,"Linear"),LJ.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._point=0},"lineStart"),lineEnd:o(function(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._context.lineTo(e,t)}},"point")},o(xc,"default")});function MJ(e){return e[0]}function NJ(e){return e[1]}var IJ=z(()=>{o(MJ,"x"),o(NJ,"y")});function _l(e,t){var r=Fi(!0),i=null,n=xc,a=null,s=kw(l);function l(u){var h,f,m,d=(u=ux(u)).length,p=!1;for(null==i&&(a=n(m=s())),h=0;h<=d;++h)!(h{JL(),bw(),eM(),QL(),IJ(),o(_l,"default")});function tM(e,t){return t{o(tM,"default")});function rM(e){return e}var BJ=z(()=>{o(rM,"default")});function Sw(){var e=rM,t=tM,r=null,i=Fi(0),n=Fi(lg),a=Fi(0);function s(l){for(var f,d,w,h=(l=ux(l)).length,p=0,m=new Array(h),g=new Array(h),y=+i.apply(this,arguments),v=Math.min(lg,Math.max(-lg,n.apply(this,arguments)-y)),b=Math.min(Math.abs(v)/h,a.apply(this,arguments)),T=b*(v<0?-1:1),u=0;u{JL(),bw(),PJ(),BJ(),Cw(),o(Sw,"default")});function hx(e){return new Ew(e,!0)}function dx(e){return new Ew(e,!1)}var Ew,$J=z(()=>{Ew=class{static{o(this,"Bump")}constructor(t,r){this._context=t,this._x=r}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line}point(t,r){switch(t=+t,r=+r,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,r):this._context.moveTo(t,r);break;case 1:this._point=2;default:this._x?this._context.bezierCurveTo(this._x0=(this._x0+t)/2,this._y0,this._x0,r,t,r):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+r)/2,t,this._y0,t,r)}this._x0=t,this._y0=r}},o(hx,"bumpX"),o(dx,"bumpY")});function ao(){}var fx=z(()=>{o(ao,"default")});function cg(e,t,r){e._context.bezierCurveTo((2*e._x0+e._x1)/3,(2*e._y0+e._y1)/3,(e._x0+2*e._x1)/3,(e._y0+2*e._y1)/3,(e._x0+4*e._x1+t)/6,(e._y0+4*e._y1+r)/6)}function px(e){this._context=e}function Dl(e){return new px(e)}var mx=z(()=>{o(cg,"point"),o(px,"Basis"),px.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 3:cg(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:cg(this,e,t)}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t},"point")},o(Dl,"default")});function zJ(e){this._context=e}function Aw(e){return new zJ(e)}var GJ=z(()=>{fx(),mx(),o(zJ,"BasisClosed"),zJ.prototype={areaStart:ao,areaEnd:ao,lineStart:o(function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 1:this._context.moveTo(this._x2,this._y2),this._context.closePath();break;case 2:this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break;case 3:this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4)}},"lineEnd"),point:o(function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x2=e,this._y2=t;break;case 1:this._point=2,this._x3=e,this._y3=t;break;case 2:this._point=3,this._x4=e,this._y4=t,this._context.moveTo((this._x0+4*this._x1+e)/6,(this._y0+4*this._y1+t)/6);break;default:cg(this,e,t)}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t},"point")},o(Aw,"default")});function VJ(e){this._context=e}function _w(e){return new VJ(e)}var WJ=z(()=>{mx(),o(VJ,"BasisOpen"),VJ.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},"lineStart"),lineEnd:o(function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var r=(this._x0+4*this._x1+e)/6,i=(this._y0+4*this._y1+t)/6;this._line?this._context.lineTo(r,i):this._context.moveTo(r,i);break;case 3:this._point=4;default:cg(this,e,t)}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t},"point")},o(_w,"default")});function qJ(e,t){this._basis=new px(e),this._beta=t}var iM,UJ=z(()=>{mx(),o(qJ,"Bundle"),qJ.prototype={lineStart:o(function(){this._x=[],this._y=[],this._basis.lineStart()},"lineStart"),lineEnd:o(function(){var e=this._x,t=this._y,r=e.length-1;if(0{o(ug,"point"),o(Dw,"Cardinal"),Dw.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:ug(this,this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2,this._x1=e,this._y1=t;break;case 2:this._point=3;default:ug(this,e,t)}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t},"point")},gx=o(function e(t){function r(i){return new Dw(i,t)}return o(r,"cardinal"),r.tension=function(i){return e(+i)},r},"custom")(0)});function Rw(e,t){this._context=e,this._k=(1-t)/6}var nM,aM=z(()=>{fx(),yx(),o(Rw,"CardinalClosed"),Rw.prototype={areaStart:ao,areaEnd:ao,lineStart:o(function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},"lineEnd"),point:o(function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x3=e,this._y3=t;break;case 1:this._point=2,this._context.moveTo(this._x4=e,this._y4=t);break;case 2:this._point=3,this._x5=e,this._y5=t;break;default:ug(this,e,t)}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t},"point")},nM=o(function e(t){function r(i){return new Rw(i,t)}return o(r,"cardinal"),r.tension=function(i){return e(+i)},r},"custom")(0)});function Lw(e,t){this._context=e,this._k=(1-t)/6}var sM,oM=z(()=>{yx(),o(Lw,"CardinalOpen"),Lw.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},"lineStart"),lineEnd:o(function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:ug(this,e,t)}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t},"point")},sM=o(function e(t){function r(i){return new Lw(i,t)}return o(r,"cardinal"),r.tension=function(i){return e(+i)},r},"custom")(0)});function vx(e,t,r){var l,u,i=e._x1,n=e._y1,a=e._x2,s=e._y2;e._l01_a>Jn&&(l=2*e._l01_2a+3*e._l01_a*e._l12_a+e._l12_2a,u=3*e._l01_a*(e._l01_a+e._l12_a),i=(i*l-e._x0*e._l12_2a+e._x2*e._l01_2a)/u,n=(n*l-e._y0*e._l12_2a+e._y2*e._l01_2a)/u),e._l23_a>Jn&&(l=2*e._l23_2a+3*e._l23_a*e._l12_a+e._l12_2a,u=3*e._l23_a*(e._l23_a+e._l12_a),a=(a*l+e._x1*e._l23_2a-t*e._l12_2a)/u,s=(s*l+e._y1*e._l23_2a-r*e._l12_2a)/u),e._context.bezierCurveTo(i,n,a,s,e._x2,e._y2)}function HJ(e,t){this._context=e,this._alpha=t}var xx,Mw=z(()=>{Cw(),yx(),o(vx,"point"),o(HJ,"CatmullRom"),HJ.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(e,t){var r,i;switch(e=+e,t=+t,this._point&&(r=this._x2-e,i=this._y2-t,this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+i*i,this._alpha))),this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3;default:vx(this,e,t)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t},"point")},xx=o(function e(t){function r(i){return t?new HJ(i,t):new Dw(i,0)}return o(r,"catmullRom"),r.alpha=function(i){return e(+i)},r},"custom")(.5)});function YJ(e,t){this._context=e,this._alpha=t}var lM,jJ=z(()=>{aM(),fx(),Mw(),o(YJ,"CatmullRomClosed"),YJ.prototype={areaStart:ao,areaEnd:ao,lineStart:o(function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},"lineEnd"),point:o(function(e,t){var r,i;switch(e=+e,t=+t,this._point&&(r=this._x2-e,i=this._y2-t,this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+i*i,this._alpha))),this._point){case 0:this._point=1,this._x3=e,this._y3=t;break;case 1:this._point=2,this._context.moveTo(this._x4=e,this._y4=t);break;case 2:this._point=3,this._x5=e,this._y5=t;break;default:vx(this,e,t)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t},"point")},lM=o(function e(t){function r(i){return t?new YJ(i,t):new Rw(i,0)}return o(r,"catmullRom"),r.alpha=function(i){return e(+i)},r},"custom")(.5)});function XJ(e,t){this._context=e,this._alpha=t}var cM,KJ=z(()=>{oM(),Mw(),o(XJ,"CatmullRomOpen"),XJ.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},"lineStart"),lineEnd:o(function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(e,t){var r,i;switch(e=+e,t=+t,this._point&&(r=this._x2-e,i=this._y2-t,this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+i*i,this._alpha))),this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:vx(this,e,t)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t},"point")},cM=o(function e(t){function r(i){return t?new XJ(i,t):new Lw(i,0)}return o(r,"catmullRom"),r.alpha=function(i){return e(+i)},r},"custom")(.5)});function ZJ(e){this._context=e}function Nw(e){return new ZJ(e)}var QJ=z(()=>{fx(),o(ZJ,"LinearClosed"),ZJ.prototype={areaStart:ao,areaEnd:ao,lineStart:o(function(){this._point=0},"lineStart"),lineEnd:o(function(){this._point&&this._context.closePath()},"lineEnd"),point:o(function(e,t){e=+e,t=+t,this._point?this._context.lineTo(e,t):(this._point=1,this._context.moveTo(e,t))},"point")},o(Nw,"default")});function JJ(e){return e<0?-1:1}function eee(e,t,r){var i=e._x1-e._x0,t=t-e._x1,a=(e._y1-e._y0)/(i||t<0&&-0),r=(r-e._y1)/(t||i<0&&-0),e=(a*t+r*i)/(i+t);return(JJ(a)+JJ(r))*Math.min(Math.abs(a),Math.abs(r),.5*Math.abs(e))||0}function tee(e,t){var r=e._x1-e._x0;return r?(3*(e._y1-e._y0)/r-t)/2:t}function uM(e,t,r){var i=e._x0,n=e._y0,a=e._x1,s=e._y1,l=(a-i)/3;e._context.bezierCurveTo(i+l,n+l*t,a-l,s-l*r,a,s)}function Iw(e){this._context=e}function ree(e){this._context=new iee(e)}function iee(e){this._context=e}function bx(e){return new Iw(e)}function Tx(e){return new ree(e)}var nee=z(()=>{o(JJ,"sign"),o(eee,"slope3"),o(tee,"slope2"),o(uM,"point"),o(Iw,"MonotoneX"),Iw.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:uM(this,this._t0,tee(this,this._t0))}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(e,t){var r=NaN;if(t=+t,(e=+e)!==this._x1||t!==this._y1){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,uM(this,tee(this,r=eee(this,e,t)),r);break;default:uM(this,this._t0,r=eee(this,e,t))}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=r}},"point")},o(ree,"MonotoneY"),(ree.prototype=Object.create(Iw.prototype)).point=function(e,t){Iw.prototype.point.call(this,t,e)},o(iee,"ReflectContext"),iee.prototype={moveTo:o(function(e,t){this._context.moveTo(t,e)},"moveTo"),closePath:o(function(){this._context.closePath()},"closePath"),lineTo:o(function(e,t){this._context.lineTo(t,e)},"lineTo"),bezierCurveTo:o(function(e,t,r,i,n,a){this._context.bezierCurveTo(t,e,i,r,a,n)},"bezierCurveTo")},o(bx,"monotoneX"),o(Tx,"monotoneY")});function see(e){this._context=e}function aee(e){var t,i,r=e.length-1,n=new Array(r),a=new Array(r),s=new Array(r);for(a[n[0]=0]=2,s[0]=e[0]+2*e[1],t=1;t{o(see,"Natural"),see.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x=[],this._y=[]},"lineStart"),lineEnd:o(function(){var e=this._x,t=this._y,r=e.length;if(r)if(this._line?this._context.lineTo(e[0],t[0]):this._context.moveTo(e[0],t[0]),2===r)this._context.lineTo(e[1],t[1]);else for(var i=aee(e),n=aee(t),a=0,s=1;s{o(Ow,"Step"),Ow.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x=this._y=NaN,this._point=0},"lineStart"),lineEnd:o(function(){0{RJ(),OJ(),FJ(),GJ(),WJ(),mx(),$J(),UJ(),aM(),oM(),yx(),jJ(),KJ(),Mw(),QJ(),eM(),nee(),oee(),lee()}),uee=z(()=>{}),hee=z(()=>{});function td(e,t,r){this.k=e,this.x=t,this.y=r}function dM(e){for(;!e.__zoom;)if(!(e=e.parentNode))return hM;return e.__zoom}var hM,pM,mp,Bw,yee,Fw,$w,fa,wx,zw,vee,mM,xee,lze,cze,uze,hze,dze,fze,pze,mze,gze,yze,vze,Nu,Rl,fM=z(()=>{o(td,"Transform"),td.prototype={constructor:td,scale:o(function(e){return 1===e?this:new td(this.k*e,this.x,this.y)},"scale"),translate:o(function(e,t){return 0===e&0===t?this:new td(this.k,this.x+this.k*e,this.y+this.k*t)},"translate"),apply:o(function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},"apply"),applyX:o(function(e){return e*this.k+this.x},"applyX"),applyY:o(function(e){return e*this.k+this.y},"applyY"),invert:o(function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},"invert"),invertX:o(function(e){return(e-this.x)/this.k},"invertX"),invertY:o(function(e){return(e-this.y)/this.k},"invertY"),rescaleX:o(function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},"rescaleX"),rescaleY:o(function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},"rescaleY"),toString:o(function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"},"toString")},hM=new td(1,0,0),dM.prototype=td.prototype,o(dM,"transform")}),dee=z(()=>{}),fee=z(()=>{Jk(),uee(),hee(),fM(),dee()}),pee=z(()=>{fee(),fM()}),Rr=z(()=>{qh(),CX(),GZ(),UZ(),Xm(),HZ(),YZ(),t8(),fK(),jZ(),WR(),XZ(),ZZ(),sL(),hQ(),OQ(),Qm(),jR(),PQ(),KZ(),BQ(),wJ(),AJ(),xl(),cee(),vw(),YL(),Yk(),Jk(),pee()}),mee=Js(ea=>{Object.defineProperty(ea,"__esModule",{value:!0}),ea.BLANK_URL=ea.relativeFirstCharacters=ea.whitespaceEscapeCharsRegex=ea.urlSchemeRegex=ea.ctrlCharactersRegex=ea.htmlCtrlEntityRegex=ea.htmlEntitiesRegex=ea.invalidProtocolRegex=void 0,ea.invalidProtocolRegex=/^([^\w]*)(javascript|data|vbscript)/im,ea.htmlEntitiesRegex=/(\w+)(^\w|;)?/g,ea.htmlCtrlEntityRegex=/&(newline|tab);/gi,ea.ctrlCharactersRegex=/[\u0000-\u001F\u007F-\u009F\u2000-\u200D\uFEFF]/gim,ea.urlSchemeRegex=/^.+(:|:)/gim,ea.whitespaceEscapeCharsRegex=/(\\|%5[cC])((%(6[eE]|72|74))|[nrt])/g,ea.relativeFirstCharacters=[".","/"],ea.BLANK_URL="about:blank"}),fg=Js(Pw=>{Object.defineProperty(Pw,"__esModule",{value:!0}),Pw.sanitizeUrl=void 0;var Da=mee();function nze(e){return-1{pM=ys(fg(),1),Rr(),Ir(),mp=o((e,t)=>{var r=e.append("rect");if(r.attr("x",t.x),r.attr("y",t.y),r.attr("fill",t.fill),r.attr("stroke",t.stroke),r.attr("width",t.width),r.attr("height",t.height),t.name&&r.attr("name",t.name),t.rx&&r.attr("rx",t.rx),t.ry&&r.attr("ry",t.ry),void 0!==t.attrs)for(var i in t.attrs)r.attr(i,t.attrs[i]);return t.class&&r.attr("class",t.class),r},"drawRect"),Bw=o((e,t)=>{t={x:t.startx,y:t.starty,width:t.stopx-t.startx,height:t.stopy-t.starty,fill:t.fill,stroke:t.stroke,class:"rect"};mp(e,t).lower()},"drawBackgroundRect"),yee=o((e,t)=>{var r=t.text.replace(Uf," "),e=e.append("text"),n=(e.attr("x",t.x),e.attr("y",t.y),e.attr("class","legend"),e.style("text-anchor",t.anchor),t.class&&e.attr("class",t.class),e.append("tspan"));return n.attr("x",t.x+2*t.textMargin),n.text(r),e},"drawText"),Fw=o((e,t,r,i)=>{e=e.append("image"),e.attr("x",t),e.attr("y",r),t=(0,pM.sanitizeUrl)(i);e.attr("xlink:href",t)},"drawImage"),$w=o((e,t,r,i)=>{e=e.append("use"),e.attr("x",t),e.attr("y",r),t=(0,pM.sanitizeUrl)(i);e.attr("xlink:href","#"+t)},"drawEmbeddedImage"),fa=o(()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),"getNoteRect"),wx=o(()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0}),"getTextObj"),zw=o(()=>{let e=Je(".mermaidTooltip");return e=e.empty()?Je("body").append("div").attr("class","mermaidTooltip").style("opacity",0).style("position","absolute").style("text-align","center").style("max-width","200px").style("padding","2px").style("font-size","12px").style("background","#ffffde").style("border","1px solid #333").style("border-radius","2px").style("pointer-events","none").style("z-index","100"):e},"createTooltip")}),bee=z(()=>{function e(n,a,s,l,u,h,d){i(a.append("text").attr("x",s+u/2).attr("y",l+h/2+5).style("text-anchor","middle").text(n),d)}function t(n,a,s,l,u,h,d,f){var{fontSize:p,fontFamily:m,fontWeight:g}=f,y=n.split(vt.lineBreakRegex);for(let v=0;v{let n=e.append("g"),a=0;for(var s of t){var l=s.textColor||"#444444",u=s.lineColor||"#444444",h=s.offsetX?parseInt(s.offsetX):0,d=s.offsetY?parseInt(s.offsetY):0;if(0===a){var m=n.append("line");m.attr("x1",s.startPoint.x),m.attr("y1",s.startPoint.y),m.attr("x2",s.endPoint.x),m.attr("y2",s.endPoint.y),m.attr("stroke-width","1"),m.attr("stroke",u),m.style("fill","none"),"rel_b"!==s.type&&m.attr("marker-end","url(#"+i+"-arrowhead)"),"birel"!==s.type&&"rel_b"!==s.type||m.attr("marker-start","url(#"+i+"-arrowend)"),a=-1}else{let m=n.append("path");m.attr("fill","none").attr("stroke-width","1").attr("stroke",u).attr("d","Mstartx,starty Qcontrolx,controly stopx,stopy ".replaceAll("startx",s.startPoint.x).replaceAll("starty",s.startPoint.y).replaceAll("controlx",s.startPoint.x+(s.endPoint.x-s.startPoint.x)/2-(s.endPoint.x-s.startPoint.x)/4).replaceAll("controly",s.startPoint.y+(s.endPoint.y-s.startPoint.y)/2).replaceAll("stopx",s.endPoint.x).replaceAll("stopy",s.endPoint.y)),"rel_b"!==s.type&&m.attr("marker-end","url(#"+i+"-arrowhead)"),"birel"!==s.type&&"rel_b"!==s.type||m.attr("marker-start","url(#"+i+"-arrowend)")}m=r.messageFont();Nu(r)(s.label.text,n,Math.min(s.startPoint.x,s.endPoint.x)+Math.abs(s.endPoint.x-s.startPoint.x)/2+h,Math.min(s.startPoint.y,s.endPoint.y)+Math.abs(s.endPoint.y-s.startPoint.y)/2+d,s.label.width,s.label.height,{fill:l},m),s.techn&&""!==s.techn.text&&(m=r.messageFont(),Nu(r)("["+s.techn.text+"]",n,Math.min(s.startPoint.x,s.endPoint.x)+Math.abs(s.endPoint.x-s.startPoint.x)/2+h,Math.min(s.startPoint.y,s.endPoint.y)+Math.abs(s.endPoint.y-s.startPoint.y)/2+r.messageFontSize+5+d,Math.max(s.label.width,s.techn.width),s.techn.height,{fill:l,"font-style":"italic"},m))}},"drawRels"),cze=o(function(e,t,r){let i=e.append("g"),n=t.bgColor||"none",a=t.borderColor||"#444444",s=t.fontColor||"black",l={"stroke-width":1,"stroke-dasharray":"7.0,7.0"};t.nodeType&&(l={"stroke-width":1});e={x:t.x,y:t.y,fill:n,stroke:a,width:t.width,height:t.height,rx:2.5,ry:2.5,attrs:l};mM(i,e);let h=r.boundaryFont();h.fontWeight="bold",h.fontSize=h.fontSize+2,h.fontColor=s,Nu(r)(t.label.text,i,t.x,t.y+t.label.Y,t.width,t.height,{fill:"#444444"},h),t.type&&""!==t.type.text&&((h=r.boundaryFont()).fontColor=s,Nu(r)(t.type.text,i,t.x,t.y+t.type.Y,t.width,t.height,{fill:"#444444"},h)),t.descr&&""!==t.descr.text&&((h=r.boundaryFont()).fontSize=h.fontSize-2,h.fontColor=s,Nu(r)(t.descr.text,i,t.x,t.y+t.descr.Y,t.width,t.height,{fill:"#444444"},h))},"drawBoundary"),uze=o(function(e,t,r){let i=t.bgColor||r[t.typeC4Shape.text+"_bg_color"],n=t.borderColor||r[t.typeC4Shape.text+"_border_color"],a=t.fontColor||"#FFFFFF",s="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";switch(t.typeC4Shape.text){case"person":s="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";break;case"external_person":s="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAAB6ElEQVR4Xu2YLY+EMBCG9+dWr0aj0Wg0Go1Go0+j8Xdv2uTCvv1gpt0ebHKPuhDaeW4605Z9mJvx4AdXUyTUdd08z+u6flmWZRnHsWkafk9DptAwDPu+f0eAYtu2PEaGWuj5fCIZrBAC2eLBAnRCsEkkxmeaJp7iDJ2QMDdHsLg8SxKFEJaAo8lAXnmuOFIhTMpxxKATebo4UiFknuNo4OniSIXQyRxEA3YsnjGCVEjVXD7yLUAqxBGUyPv/Y4W2beMgGuS7kVQIBycH0fD+oi5pezQETxdHKmQKGk1eQEYldK+jw5GxPfZ9z7Mk0Qnhf1W1m3w//EUn5BDmSZsbR44QQLBEqrBHqOrmSKaQAxdnLArCrxZcM7A7ZKs4ioRq8LFC+NpC3WCBJsvpVw5edm9iEXFuyNfxXAgSwfrFQ1c0iNda8AdejvUgnktOtJQQxmcfFzGglc5WVCj7oDgFqU18boeFSs52CUh8LE8BIVQDT1ABrB0HtgSEYlX5doJnCwv9TXocKCaKbnwhdDKPq4lf3SwU3HLq4V/+WYhHVMa/3b4IlfyikAduCkcBc7mQ3/z/Qq/cTuikhkzB12Ae/mcJC9U+Vo8Ej1gWAtgbeGgFsAMHr50BIWOLCbezvhpBFUdY6EJuJ/QDW0XoMX60zZ0AAAAASUVORK5CYII="}var l=e.append("g"),u=(l.attr("class","person-man"),fa());switch(t.typeC4Shape.text){case"person":case"external_person":case"system":case"external_system":case"container":case"external_container":case"component":case"external_component":u.x=t.x,u.y=t.y,u.fill=i,u.width=t.width,u.height=t.height,u.stroke=n,u.rx=2.5,u.ry=2.5,u.attrs={"stroke-width":.5},mM(l,u);break;case"system_db":case"external_system_db":case"container_db":case"external_container_db":case"component_db":case"external_component_db":l.append("path").attr("fill",i).attr("stroke-width","0.5").attr("stroke",n).attr("d","Mstartx,startyc0,-10 half,-10 half,-10c0,0 half,0 half,10l0,heightc0,10 -half,10 -half,10c0,0 -half,0 -half,-10l0,-height".replaceAll("startx",t.x).replaceAll("starty",t.y).replaceAll("half",t.width/2).replaceAll("height",t.height)),l.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",n).attr("d","Mstartx,startyc0,10 half,10 half,10c0,0 half,0 half,-10".replaceAll("startx",t.x).replaceAll("starty",t.y).replaceAll("half",t.width/2));break;case"system_queue":case"external_system_queue":case"container_queue":case"external_container_queue":case"component_queue":case"external_component_queue":l.append("path").attr("fill",i).attr("stroke-width","0.5").attr("stroke",n).attr("d","Mstartx,startylwidth,0c5,0 5,half 5,halfc0,0 0,half -5,halfl-width,0c-5,0 -5,-half -5,-halfc0,0 0,-half 5,-half".replaceAll("startx",t.x).replaceAll("starty",t.y).replaceAll("width",t.width).replaceAll("half",t.height/2)),l.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",n).attr("d","Mstartx,startyc-5,0 -5,half -5,halfc0,half 5,half 5,half".replaceAll("startx",t.x+t.width).replaceAll("starty",t.y).replaceAll("half",t.height/2))}e=vze(r,t.typeC4Shape.text);switch(l.append("text").attr("fill",a).attr("font-family",e.fontFamily).attr("font-size",e.fontSize-2).attr("font-style","italic").attr("lengthAdjust","spacing").attr("textLength",t.typeC4Shape.width).attr("x",t.x+t.width/2-t.typeC4Shape.width/2).attr("y",t.y+t.typeC4Shape.Y).text("<<"+t.typeC4Shape.text+">>"),t.typeC4Shape.text){case"person":case"external_person":xee(l,48,48,t.x+t.width/2-24,t.y+t.image.Y,s)}let d=r[t.typeC4Shape.text+"Font"]();return d.fontWeight="bold",d.fontSize=d.fontSize+2,d.fontColor=a,Nu(r)(t.label.text,l,t.x,t.y+t.label.Y,t.width,t.height,{fill:a},d),(d=r[t.typeC4Shape.text+"Font"]()).fontColor=a,t.techn&&""!==t.techn?.text?Nu(r)(t.techn.text,l,t.x,t.y+t.techn.Y,t.width,t.height,{fill:a,"font-style":"italic"},d):t.type&&""!==t.type.text&&Nu(r)(t.type.text,l,t.x,t.y+t.type.Y,t.width,t.height,{fill:a,"font-style":"italic"},d),t.descr&&""!==t.descr.text&&((d=r.personFont()).fontColor=a,Nu(r)(t.descr.text,l,t.x,t.y+t.descr.Y,t.width,t.height,{fill:a},d)),t.height},"drawC4Shape"),hze=o(function(e,t){e.append("defs").append("symbol").attr("id",t+"-database").attr("fill-rule","evenodd").attr("clip-rule","evenodd").append("path").attr("transform","scale(.5)").attr("d","M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z")},"insertDatabaseIcon"),dze=o(function(e,t){e.append("defs").append("symbol").attr("id",t+"-computer").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z")},"insertComputerIcon"),fze=o(function(e,t){e.append("defs").append("symbol").attr("id",t+"-clock").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z")},"insertClockIcon"),pze=o(function(e,t){e.append("defs").append("marker").attr("id",t+"-arrowhead").attr("refX",9).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z")},"insertArrowHead"),mze=o(function(e,t){e.append("defs").append("marker").attr("id",t+"-arrowend").attr("refX",1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 10 0 L 0 5 L 10 10 z")},"insertArrowEnd"),gze=o(function(e,t){e.append("defs").append("marker").attr("id",t+"-filled-head").attr("refX",18).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"insertArrowFilledHead"),yze=o(function(e,t){e=e.append("defs").append("marker").attr("id",t+"-crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",16).attr("refY",4);e.append("path").attr("fill","black").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 9,2 V 6 L16,4 Z"),e.append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 0,1 L 6,7 M 6,1 L 0,7")},"insertArrowCrossHead"),vze=o((e,t)=>({fontFamily:e[t+"FontFamily"],fontSize:e[t+"FontSize"],fontWeight:e[t+"FontWeight"]}),"getC4ShapeFont"),o(e,"byText"),o(t,"byTspan"),o(r,"byFo"),o(i,"_setTextAttrs"),Nu=function(n){return"fo"===n.textPlacement?r:"old"===n.textPlacement?e:t},Rl={drawRect:mM,drawBoundary:cze,drawC4Shape:uze,drawRels:lze,drawImage:xee,insertArrowHead:pze,insertArrowEnd:mze,insertArrowFilledHead:gze,insertArrowCrossHead:yze,insertDatabaseIcon:hze,insertComputerIcon:dze,insertClockIcon:fze}});function Tee(e){return Number.isSafeInteger(e)&&0<=e}var Cee=z(()=>{o(Tee,"isLength")});function Vw(e){return null!=e&&"function"!=typeof e&&Tee(e.length)}var gM=z(()=>{Cee(),o(Vw,"isArrayLike")});function kee(e){return"__proto__"===e}var wee=z(()=>{o(kee,"isUnsafeProperty")});function rd(e){return null==e||"object"!=typeof e&&"function"!=typeof e}var Sx=z(()=>{o(rd,"isPrimitive")});function Ww(e){return Object.getOwnPropertySymbols(e).filter(t=>Object.prototype.propertyIsEnumerable.call(e,t))}var yM=z(()=>{o(Ww,"getSymbols")});function Iu(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}var Ax,id,yp,vp,xp,_x,Dx,Rx,Lx,qw,Mx,pg,Nx,Uw,Hw,Yw,jw,Xw,Kw,Zw,Qw,Jw,Ex=z(()=>{o(Iu,"getTag")}),e4=z(()=>{Ax="[object RegExp]",id="[object String]",yp="[object Number]",vp="[object Boolean]",xp="[object Arguments]",_x="[object Symbol]",Dx="[object Date]",Rx="[object Map]",Lx="[object Set]",qw="[object Array]",Mx="[object ArrayBuffer]",pg="[object Object]",Nx="[object DataView]",Uw="[object Uint8Array]",Hw="[object Uint8ClampedArray]",Yw="[object Uint16Array]",jw="[object Uint32Array]",Xw="[object Int8Array]",Kw="[object Int16Array]",Zw="[object Int32Array]",Qw="[object Float32Array]",Jw="[object Float64Array]"});function mg(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}var t4=z(()=>{o(mg,"isTypedArray")});function See(e,t){return gg(e,void 0,e,new Map,t)}function gg(e,t,r,i=new Map,n=void 0){t=n?.(e,t,r,i);if(void 0!==t)return t;if(!rd(e)){if(i.has(e))return i.get(e);if(Array.isArray(e)){var s=new Array(e.length);i.set(e,s);for(let l=0;l{yM(),Ex(),e4(),Sx(),t4(),o(See,"cloneDeepWith"),o(gg,"cloneDeepWithImpl"),o(Po,"copyProperties"),o(xze,"isCloneableObject")});function Aee(e,t){return See(e,(r,i,n,a)=>{r=t?.(r,i,n,a);if(void 0!==r)return r;if("object"==typeof e){if(Iu(e)===pg&&"function"!=typeof e.constructor)return a.set(e,i={}),Po(i,e,n,a),i;switch(Object.prototype.toString.call(e)){case yp:case id:case vp:{let l=new e.constructor(e?.valueOf());return Po(l,e),l}case xp:{let l={};return Po(l,e),l.length=e.length,l[Symbol.iterator]=e[Symbol.iterator],l}default:return}}})}var _ee=z(()=>{Eee(),Ex(),e4(),o(Aee,"cloneDeepWith")});function vM(e){return Aee(e)}var Dee=z(()=>{_ee(),o(vM,"cloneDeep")});function Ix(e){return null!==e&&"object"==typeof e&&"[object Arguments]"===Iu(e)}var xM=z(()=>{Ex(),o(Ix,"isArguments")});function Ox(e){return"object"==typeof e&&null!==e}var bM=z(()=>{o(Ox,"isObjectLike")});function Ree(e){return Ox(e)&&Vw(e)}var Lee=z(()=>{gM(),bM(),o(Ree,"isArrayLikeObject")});function Mee(e){return Array.isArray(e)}var Nee=z(()=>{o(Mee,"isArray")});function bp(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new TypeError("Expected a function");let r=o(function(...n){var a=t?t.apply(this,n):n[0],s=r.cache;return s.has(a)?s.get(a):(n=e.apply(this,n),r.cache=s.set(a,n)||s,n)},"memoized"),i=bp.Cache||Map;return r.cache=new i,r}var Iee=z(()=>{o(bp,"memoize"),bp.Cache=Map});function Oee(){}var Pee=z(()=>{o(Oee,"noop")});function Bee(e){var t=e?.constructor;return e===("function"==typeof t?t:Object).prototype}var Fee=z(()=>{o(Bee,"isPrototype")});function nd(e){return mg(e)}var r4=z(()=>{t4(),o(nd,"isTypedArray")});function CM(e){if(rd(e))return e;var t=Iu(e);if(!bze(e))return{};if(Mee(e))return i=Array.from(e),0{n.set(s,a)}),n}if(t===Lx){let i=e,n=new Set;return i.forEach(a=>{n.add(a)}),n}if(t===xp){let i=e,n={};return TM(n,i),n.length=i.length,n[Symbol.iterator]=i[Symbol.iterator],n}var i={};return kze(i,e),TM(i,e),Tze(i,e),i}function bze(e){switch(Iu(e)){case xp:case qw:case Mx:case Nx:case vp:case Dx:case Qw:case Jw:case Xw:case Kw:case Zw:case Rx:case yp:case pg:case Ax:case Lx:case id:case _x:case Uw:case Hw:case Yw:case jw:return!0;default:return!1}}function TM(e,t){for(var r in t)Object.hasOwn(t,r)&&(e[r]=t[r])}function Tze(e,t){var r=Object.getOwnPropertySymbols(t);for(let i=0;i=r)&&(e[i]=t[i])}function kze(e,t){var r=Object.getPrototypeOf(t);null!==r&&"function"==typeof t.constructor&&Object.setPrototypeOf(e,r)}var $ee=z(()=>{Sx(),Ex(),e4(),Nee(),r4(),o(CM,"clone"),o(bze,"isCloneableObject"),o(TM,"copyOwnProperties"),o(Tze,"copySymbolProperties"),o(Cze,"cloneStringObjectProperties"),o(kze,"copyPrototype")});function i4(e){if("object"!=typeof e||null==e)return!1;if(null===Object.getPrototypeOf(e))return!0;var r;if("[object Object]"!==Object.prototype.toString.call(e))return!(null==(r=e[Symbol.toStringTag])||!Object.getOwnPropertyDescriptor(e,Symbol.toStringTag)?.writable)&&e.toString()===`[object ${r}]`;let t=e;for(;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}var zee=z(()=>{o(i4,"isPlainObject")});function Gee(e){if(rd(e))return e;if(Array.isArray(e)||mg(e)||e instanceof ArrayBuffer||typeof SharedArrayBuffer<"u"&&e instanceof SharedArrayBuffer)return e.slice(0);var t=Object.getPrototypeOf(e);if(null==t)return Object.assign(Object.create(t),e);var i,r=t.constructor;if(e instanceof Date||e instanceof Map||e instanceof Set)return new r(e);if(e instanceof RegExp)return(i=new r(e)).lastIndex=e.lastIndex,i;if(e instanceof DataView)return new r(e.buffer.slice(0));if(e instanceof Error){let i;return(i=e instanceof AggregateError?new r(e.errors,e.message,{cause:e.cause}):new r(e.message,{cause:e.cause})).stack=e.stack,Object.assign(i,e),i}if(typeof File<"u"&&e instanceof File)return new r([e],e.name,{type:e.type,lastModified:e.lastModified});if("object"!=typeof e)return e;{let i=Object.create(t);return Object.assign(i,e)}}var Vee=z(()=>{Sx(),t4(),o(Gee,"clone")});function Wee(e,...t){let r=t.slice(0,-1),i=t[t.length-1],n=e;for(let a=0;a{Dee(),wee(),Vee(),Sx(),yM(),xM(),Lee(),bM(),zee(),r4(),o(Wee,"mergeWith"),o(n4,"mergeWithDeep")});function kM(e,...t){return Wee(e,...t,Oee)}var Uee=z(()=>{qee(),Pee(),o(kM,"merge")});function a4(e){var t;return null==e||(Vw(e)?!("function"!=typeof e.splice&&"string"!=typeof e&&("u""constructor"!==r).length:0===t.length)))}var Hee=z(()=>{xM(),gM(),r4(),Fee(),o(a4,"isEmpty")}),s4=z(()=>{Iee(),$ee(),Uee(),Hee()});function EM(e,t){return e?(e="curve"+(e.charAt(0).toUpperCase()+e.slice(1)),wze[e]??t):t}function _ze(e,t){e=e.trim();if(e)return"loose"!==t.securityLevel?(0,Xee.sanitizeUrl)(e):e}function Qee(e,t){return e&&t?Math.sqrt(Math.pow(t.x-e.x,2)+Math.pow(t.y-e.y,2)):0}function Rze(e){let t,r=0;e.forEach(n=>{r+=Qee(n,t),t=n});var i=r/2;return AM(e,i)}function Lze(e){return 1===e.length?e[0]:Rze(e)}function Nze(e,t,r){var r=structuredClone(r),n=(Z.info("our points",r),"start_left"!==t&&"start_right"!==t&&r.reverse(),25+e),n=AM(r,n),e=10+.5*e,l=Math.atan2(r[0].y-n.y,r[0].x-n.x),u={x:0,y:0};return"start_left"===t?(u.x=Math.sin(l+Math.PI)*e+(r[0].x+n.x)/2,u.y=-Math.cos(l+Math.PI)*e+(r[0].y+n.y)/2):"end_right"===t?(u.x=Math.sin(l-Math.PI)*e+(r[0].x+n.x)/2-5,u.y=-Math.cos(l-Math.PI)*e+(r[0].y+n.y)/2-5):"end_left"===t?(u.x=Math.sin(l)*e+(r[0].x+n.x)/2-5,u.y=-Math.cos(l)*e+(r[0].y+n.y)/2-5):(u.x=Math.sin(l)*e+(r[0].x+n.x)/2,u.y=-Math.cos(l)*e+(r[0].y+n.y)/2),u}function _M(e){let t="",r="";for(var i of e)void 0!==i&&(i.startsWith("color:")||i.startsWith("text-align:")?r=r+i+";":t=t+i+";");return{style:t,labelStyle:r}}function Ize(e){let t="",r="0123456789abcdef",i=r.length;for(let n=0;nMath.round(parseFloat(a)).toString());return t.includes(r.toString())||t.includes(e.toString())}var Xee,SM,wze,Sze,Eze,Kee,Zee,Aze,Dze,Yee,AM,Mze,jee,DM,RM,Oze,Pze,Tp,Bze,Px,wM,o4,Fze,$ze,Za,Zt,Jee,Qa,bc,Xt=z(()=>{Xee=ys(fg(),1),Rr(),Ir(),MC(),St(),Xf(),Dm(),s4(),mk(),SM="ā",wze={curveBasis:Dl,curveBasisClosed:Aw,curveBasisOpen:_w,curveBumpX:hx,curveBumpY:dx,curveBundle:iM,curveCardinalClosed:nM,curveCardinalOpen:sM,curveCardinal:gx,curveCatmullRomClosed:lM,curveCatmullRomOpen:cM,curveCatmullRom:xx,curveLinear:xc,curveLinearClosed:Nw,curveMonotoneX:bx,curveMonotoneY:Tx,curveNatural:hg,curveStep:dg,curveStepAfter:kx,curveStepBefore:Cx},Sze=/\s*(?:(\w+)(?=:):|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,Eze=o(function(e,t){let r=Kee(e,/(?:init\b)|(?:initialize\b)/),i={};var s;if(i=Array.isArray(r)?(s=r.map(l=>l.args),Lm(s),Ai(i,[...s])):r.args){let n=zm(e,t),a="config";return void 0!==i[a]&&("flowchart-v2"===n&&(n="flowchart"),i[n]=i[a],delete i[a]),i}},"detectInit"),Kee=o(function(e,t=null){try{var r=new RegExp(`[%]{2}(?![{]${Sze.source})(?=[}][%]{2}).*
+`,"ig");e=e.trim().replace(r,"").replace(/'/gm,'"'),Z.debug(`Detecting diagram directive${null!==t?" type:"+t:""} based on the text:`+e);for(var i,a,s,n=[];null!==(i=jf.exec(e));)i.index===jf.lastIndex&&jf.lastIndex++,(i&&!t||t&&i[1]?.match(t)||t&&i[2]?.match(t))&&(a=i[1]||i[2],s=i[3]?i[3].trim():i[4]?JSON.parse(i[4].trim()):null,n.push({type:a,args:s}));return 0===n.length?{type:e,args:null}:1===n.length?n[0]:n}catch(r){return Z.error(`ERROR: ${r.message} - Unable to parse directive type: '${t}' based on the text: '${e}'`),{type:void 0,args:null}}},"detectDirective"),Zee=o(function(e){return e.replace(jf,"")},"removeDirectives"),Aze=o(function(e,t){for(var[r,i]of t.entries())if(i.match(e))return r;return-1},"isSubstringInArray"),o(EM,"interpolateToCurve"),o(_ze,"formatUrl"),Dze=o((e,...t)=>{let r=e.split("."),i=r.length-1,n=r[i],a=window;for(let s=0;s{t=Math.pow(10,t);return Math.round(e*t)/t},"roundNumber"),AM=o((e,t)=>{let r,i=t;for(var n of e){if(r){var a=Qee(n,r);if(0===a)return r;if(a{Z.info("our points "+JSON.stringify(t)),t[0]!==r&&(t=t.reverse());var r=AM(t,25),e=e?10:5,s=Math.atan2(t[0].y-r.y,t[0].x-r.x),l={x:0,y:0};return l.x=Math.sin(s)*e+(t[0].x+r.x)/2,l.y=-Math.cos(s)*e+(t[0].y+r.y)/2,l},"calcCardinalityPosition"),o(Nze,"calcTerminalLabelPosition"),o(_M,"getStylesFromArray"),jee=0,DM=o(()=>(jee++,"id-"+Math.random().toString(36).substr(2,12)+"-"+jee),"generateId"),o(Ize,"makeRandomHex"),RM=o(e=>Ize(e.length),"random"),Oze=o(function(){return{x:0,y:0,fill:void 0,anchor:"start",style:"#666",width:100,height:100,textMargin:0,rx:0,ry:0,valign:void 0,text:""}},"getTextObj"),Pze=o(function(e,t){var r=t.text.replace(vt.lineBreakRegex," "),[,i]=Za(t.fontSize),e=e.append("text"),i=(e.attr("x",t.x),e.attr("y",t.y),e.style("text-anchor",t.anchor),e.style("font-family",t.fontFamily),e.style("font-size",i),e.style("font-weight",t.fontWeight),e.attr("fill",t.fill),void 0!==t.class&&e.attr("class",t.class),e.append("tspan"));return i.attr("x",t.x+2*t.textMargin),i.attr("fill",t.fill),i.text(r),e},"drawSimpleText"),Tp=bp((e,t,r)=>{if(!e||(r=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",joinWith:"
"},r),vt.lineBreakRegex.test(e)))return e;let i=e.split(" ").filter(Boolean),n=[],a="";return i.forEach((s,l)=>{var p,m,u=ta(s+" ",r),h=ta(a,r);a=t""!==s).join(r.joinWith)},(e,t,r)=>""+e+t+r.fontSize+r.fontWeight+r.fontFamily+r.joinWith),Bze=bp((e,t,r="-",i)=>{i=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:0},i);let n=[...e],a=[],s="";return n.forEach((l,u)=>{var m,l=""+s+l;s=ta(l,i)>=t?(u=u+1,u=n.length===u,m=l+r,a.push(u?l:m),""):l}),{hyphenatedStrings:a,remainingWord:s}},(e,t,r="-",i)=>""+e+t+r+i.fontSize+i.fontWeight+i.fontFamily),o(l4,"calculateTextHeight"),o(ta,"calculateTextWidth"),Px=bp((e,t)=>{var{fontSize:t=12,fontFamily:i="Arial",fontWeight:n=400}=t;if(!e)return{width:0,height:0};var[,a]=Za(t),t=["sans-serif",i],l=e.split(vt.lineBreakRegex),u=[],i=Je("body");if(!i.remove)return{width:0,height:0,lineHeight:0};var p,d=i.append("svg");for(p of t){var y,g={width:0,height:0,lineHeight:0};for(y of l){var v=Oze(),v=(v.text=y||SM,Pze(d,v).style("font-size",a).style("font-weight",n).style("font-family",p)),v=(v._groups||v)[0][0].getBBox();if(0===v.width&&0===v.height)throw new Error("svg element not in render tree");g.width=Math.round(Math.max(g.width,v.width)),v=Math.round(v.height),g.height+=v,g.lineHeight=Math.round(Math.max(g.lineHeight,v))}u.push(g)}return d.remove(),u[isNaN(u[1].height)||isNaN(u[1].width)||isNaN(u[1].lineHeight)||u[0].height>u[1].height&&u[0].width>u[1].width&&u[0].lineHeight>u[1].lineHeight?0:1]},(e,t)=>""+e+t.fontSize+t.fontWeight+t.fontFamily),wM=class{constructor(t=!1,r){this.count=0,this.count=r?r.length:0,this.next=t?()=>this.count++:()=>Date.now()}static{o(this,"InitIDGenerator")}},Fze=o(function(e){return o4=o4||document.createElement("div"),e=escape(e).replace(/%26/g,"&").replace(/%23/g,"#").replace(/%3B/g,";"),o4.innerHTML=e,unescape(o4.textContent)},"entityDecode"),o(LM,"isDetailedError"),$ze=o((e,t,r,i)=>{var n;i&&(n=e.node()?.getBBox())&&e.append("text").text(i).attr("text-anchor","middle").attr("x",n.x+n.width/2).attr("y",-r).attr("class",t)},"insertTitle"),Za=o(e=>{var t;return"number"==typeof e?[e,e+"px"]:(t=parseInt(e??"",10),Number.isNaN(t)?[void 0,void 0]:e===String(t)?[t,e+"px"]:[t,e])},"parseFontSize"),o(Gr,"cleanAndMerge"),Zt={assignWithDepth:Ai,wrapLabel:Tp,calculateTextHeight:l4,calculateTextWidth:ta,calculateTextDimensions:Px,cleanAndMerge:Gr,detectInit:Eze,detectDirective:Kee,isSubstringInArray:Aze,interpolateToCurve:EM,calcLabelPosition:Lze,calcCardinalityPosition:Mze,calcTerminalLabelPosition:Nze,formatUrl:_ze,getStylesFromArray:_M,generateId:DM,random:RM,runFunc:Dze,entityDecode:Fze,insertTitle:$ze,isLabelCoordinateInPath:zze,parseFontSize:Za,InitIDGenerator:wM},Jee=o(function(e){let t=e;return t=(t=(t=t.replace(/style.*:\S*#.*;/g,function(r){return r.substring(0,r.length-1)})).replace(/classDef.*:\S*#.*;/g,function(r){return r.substring(0,r.length-1)})).replace(/#\w+;/g,function(r){r=r.substring(1,r.length-1);return/^\+?\d+$/.test(r)?"ļ¬Ā°Ā°"+r+"¶Ć":"ļ¬Ā°"+r+"¶Ć"})},"encodeEntities"),Qa=o(function(e){return e.replace(/ļ¬Ā°Ā°/g,"").replace(/ļ¬Ā°/g,"&").replace(/¶Ć/g,";")},"decodeEntities"),bc=o((e,t,{counter:r=0,prefix:i,suffix:n},a)=>a||(i?i+"_":"")+e+`_${t}_`+r+(n?"_"+n:""),"getEdgeId"),o(ii,"handleUndefinedAttr"),o(zze,"isLabelCoordinateInPath")});function Ll(e,t,r,i,n){if(!t[e].width)if(r)t[e].text=Tp(t[e].text,n,i),t[e].textLines=t[e].text.split(vt.lineBreakRegex).length,t[e].width=n,t[e].height=l4(t[e].text,i);else{var s,l,r=t[e].text.split(vt.lineBreakRegex);t[e].textLines=r.length;t[e].height=0,t[e].width=0;for(l of r)t[e].width=Math.max(ta(l,i),t[e].width),s=l4(l,i),t[e].height=t[e].height+s}}function nte(e,t,r,i,n){var s,l,a=new d4(n);a.data.widthLimit=r.data.widthLimit/Math.min(MM,i.length);for([s,l]of i.entries()){let u=0;l.image={width:0,height:0,Y:0},l.sprite&&(l.image.width=48,l.image.height=48,l.image.Y=u,u=l.image.Y+l.image.height);var h=l.wrap&&er.wrap,d=c4(er);if(d.fontSize=d.fontSize+2,d.fontWeight="bold",Ll("label",l,h,d,a.data.widthLimit),l.label.Y=u+8,u=l.label.Y+l.label.height,l.type&&""!==l.type.text&&(l.type.text="["+l.type.text+"]",d=c4(er),Ll("type",l,h,d,a.data.widthLimit),l.type.Y=u+5,u=l.type.Y+l.type.height),l.descr&&""!==l.descr.text){let g=c4(er);g.fontSize=g.fontSize-2,Ll("descr",l,h,g,a.data.widthLimit),l.descr.Y=u+20,u=l.descr.Y+l.descr.height}if(0==s||s%MM==0){let g=r.data.startx+er.diagramMarginX,y=r.data.stopy+er.diagramMarginY+u;a.setData(g,g,y,y)}else{let g=a.data.stopx!==a.data.startx?a.data.stopx+er.diagramMarginX:a.data.startx,y=a.data.starty;a.setData(g,g,y,y)}a.name=l.alias;d=n.db.getC4ShapeArray(l.alias),h=n.db.getC4ShapeKeys(l.alias),d=(0{Rr(),bee(),St(),ND(),Ir(),WD(),Ut(),Dm(),Xt(),Di(),h4=u4=0,tte=4,MM=2,kv.yy=Rv,er={},d4=class{static{o(this,"Bounds")}constructor(t){this.name="",this.data={},this.data.startx=void 0,this.data.stopx=void 0,this.data.starty=void 0,this.data.stopy=void 0,this.data.widthLimit=void 0,this.nextData={},this.nextData.startx=void 0,this.nextData.stopx=void 0,this.nextData.starty=void 0,this.nextData.stopy=void 0,this.nextData.cnt=0,NM(t.db.getConfig())}setData(t,r,i,n){this.nextData.startx=this.data.startx=t,this.nextData.stopx=this.data.stopx=r,this.nextData.starty=this.data.starty=i,this.nextData.stopy=this.data.stopy=n}updateVal(t,r,i,n){void 0===t[r]?t[r]=i:t[r]=n(i,t[r])}insert(t){this.nextData.cnt=this.nextData.cnt+1;let r=this.nextData.startx===this.nextData.stopx?this.nextData.stopx+t.margin:this.nextData.stopx+2*t.margin,i=r+t.width,n=this.nextData.starty+2*t.margin,a=n+t.height;(r>=this.data.widthLimit||i>=this.data.widthLimit||this.nextData.cnt>tte)&&(r=this.nextData.startx+t.margin+er.nextLinePaddingX,n=this.nextData.stopy+2*t.margin,this.nextData.stopx=i=r+t.width,this.nextData.starty=this.nextData.stopy,this.nextData.stopy=a=n+t.height,this.nextData.cnt=1),t.x=r,t.y=n,this.updateVal(this.data,"startx",r,Math.min),this.updateVal(this.data,"starty",n,Math.min),this.updateVal(this.data,"stopx",i,Math.max),this.updateVal(this.data,"stopy",a,Math.max),this.updateVal(this.nextData,"startx",r,Math.min),this.updateVal(this.nextData,"starty",n,Math.min),this.updateVal(this.nextData,"stopx",i,Math.max),this.updateVal(this.nextData,"stopy",a,Math.max)}init(t){this.name="",this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,widthLimit:void 0},this.nextData={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,cnt:0},NM(t.db.getConfig())}bumpLastMargin(t){this.data.stopx+=t,this.data.stopy+=t}},NM=o(function(e){Ai(er,e),e.fontFamily&&(er.personFontFamily=er.systemFontFamily=er.messageFontFamily=e.fontFamily),e.fontSize&&(er.personFontSize=er.systemFontSize=er.messageFontSize=e.fontSize),e.fontWeight&&(er.personFontWeight=er.systemFontWeight=er.messageFontWeight=e.fontWeight)},"setConf"),Bx=o((e,t)=>({fontFamily:e[t+"FontFamily"],fontSize:e[t+"FontSize"],fontWeight:e[t+"FontWeight"]}),"c4ShapeFont"),c4=o(e=>({fontFamily:e.boundaryFontFamily,fontSize:e.boundaryFontSize,fontWeight:e.boundaryFontWeight}),"boundaryFont"),Gze=o(e=>({fontFamily:e.messageFontFamily,fontSize:e.messageFontSize,fontWeight:e.messageFontWeight}),"messageFont"),o(Ll,"calcC4ShapeTextWH"),rte=o(function(e,t,r){t.x=r.data.startx,t.y=r.data.starty,t.width=r.data.stopx-r.data.startx,t.height=r.data.stopy-r.data.starty,t.label.y=er.c4ShapeMargin-35;var r=t.wrap&&er.wrap,n=c4(er),a=(n.fontSize=n.fontSize+2,n.fontWeight="bold",ta(t.label.text,n));Ll("label",t,r,n,a),Rl.drawBoundary(e,t,er)},"drawBoundary"),ite=o(function(e,t,r,i){let n=0;for(var a of i){n=0;var s=r[a],a=Bx(er,s.typeC4Shape.text);switch(a.fontSize=a.fontSize-2,s.typeC4Shape.width=ta("Ā«"+s.typeC4Shape.text+"Ā»",a),s.typeC4Shape.height=a.fontSize+2,s.typeC4Shape.Y=er.c4ShapePadding,n=s.typeC4Shape.Y+s.typeC4Shape.height-4,s.image={width:0,height:0,Y:0},s.typeC4Shape.text){case"person":case"external_person":s.image.width=48,s.image.height=48,s.image.Y=n,n=s.image.Y+s.image.height}s.sprite&&(s.image.width=48,s.image.height=48,s.image.Y=n,n=s.image.Y+s.image.height);var a=s.wrap&&er.wrap,h=er.width-2*er.c4ShapePadding,d=Bx(er,s.typeC4Shape.text);if(d.fontSize=d.fontSize+2,d.fontWeight="bold",Ll("label",s,a,d,h),s.label.Y=n+8,n=s.label.Y+s.label.height,s.type&&""!==s.type.text)s.type.text="["+s.type.text+"]",Ll("type",s,a,Bx(er,s.typeC4Shape.text),h),s.type.Y=n+5,n=s.type.Y+s.type.height;else if(s.techn&&""!==s.techn.text){s.techn.text="["+s.techn.text+"]";let m=Bx(er,s.techn.text);Ll("techn",s,a,m,h),s.techn.Y=n+5,n=s.techn.Y+s.techn.height}let f=n,p=s.label.width;if(s.descr&&""!==s.descr.text){let m=Bx(er,s.typeC4Shape.text);Ll("descr",s,a,m,h),s.descr.Y=n+20,n=s.descr.Y+s.descr.height,p=Math.max(s.label.width,s.descr.width),f=n-5*s.descr.textLines}p+=er.c4ShapePadding,s.width=Math.max(s.width||er.width,p,er.width),s.height=Math.max(s.height||er.height,f,er.height),s.margin=s.margin||er.c4ShapeMargin,e.insert(s),Rl.drawC4Shape(t,s,er)}e.bumpLastMargin(er.c4ShapeMargin)},"drawC4ShapeArray"),Ss=class{static{o(this,"Point")}constructor(t,r){this.x=t,this.y=r}},ete=o(function(e,t){let r=e.x,i=e.y,n=t.x,a=t.y,s=r+e.width/2,l=i+e.height/2,u=Math.abs(r-n),h=Math.abs(i-a),d=h/u,f=e.height/e.width,p=null;return i==a&&r{Uze=o(e=>`.person {
+ stroke: ${e.personBorder};
+ fill: ${e.personBkg};
+ }
+`,"getStyles"),ste=Uze}),lte={};xr(lte,{diagram:()=>Hze});var Hze,cte=z(()=>{ND(),WD(),ate(),ote(),Hze={parser:eX,db:Rv,renderer:IM,styles:ste,init:o(({c4:e,wrap:t})=>{IM.setConf(e),Rv.setWrap(t)},"init")}});function Ete(e){return"u">16&255),l.push(s>>8&255),l.push(255&s)),s=s<<6|a.indexOf(i.charAt(t));return 0==(e=n%4*6)?(l.push(s>>16&255),l.push(s>>8&255),l.push(255&s)):18==e?(l.push(s>>10&255),l.push(s>>2&255)):12==e&&l.push(s>>4&255),new Uint8Array(l)}function KGe(e){for(var n,t="",r=0,a=e.length,s=WM,i=0;i>18&63])+s[r>>12&63])+s[r>>6&63])+s[63&r]),r=(r<<8)+e[i];return 0==(n=a%3)?t=(t=(t=(t+=s[r>>18&63])+s[r>>12&63])+s[r>>6&63])+s[63&r]:2==n?t=(t=(t=(t+=s[r>>10&63])+s[r>>4&63])+s[r<<2&63])+s[64]:1==n&&(t=(t=(t=(t+=s[r>>2&63])+s[r<<4&63])+s[64])+s[64]),t}function ZGe(e){return"[object Uint8Array]"===Object.prototype.toString.call(e)}function tVe(e){if(null!==e)for(var n,a,s,t=[],l=e,r=0,i=l.length;r>10),56320+(e-65536&1023))}function Pte(e,t,r){"__proto__"===t?Object.defineProperty(e,t,{configurable:!0,enumerable:!0,writable:!0,value:r}):e[t]=r}function bVe(e,t){this.input=e,this.filename=t.filename||null,this.schema=t.schema||Lte,this.onWarning=t.onWarning||null,this.legacy=t.legacy||!1,this.json=t.json||!1,this.listener=t.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=e.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function $te(e,t){e={name:e.filename,buffer:e.input.slice(0,-1),position:e.position,line:e.line,column:e.position-e.lineStart};return e.snippet=lGe(e),new Es(t,e)}function ar(e,t){throw $te(e,t)}function m4(e,t){e.onWarning&&e.onWarning.call(null,$te(e,t))}function ad(e,t,r,i){var n,a,s,l;if(t=t){l=!0,m=e.input.charCodeAt(e.position);continue}e.position=s,e.line=u,e.lineStart=h,e.lineIndent=d;break}}l&&(ad(e,a,s,!1),UM(e,e.line-u),a=s=e.position,l=!1),kp(m)||(s=e.position+1),m=e.input.charCodeAt(++e.position)}return ad(e,a,s,!1),!!e.result||(e.kind=f,e.result=p,!1)}function CVe(e,t){var i,n,r=e.input.charCodeAt(e.position);if(39!==r)return!1;for(e.kind="scalar",e.result="",e.position++,i=n=e.position;0!==(r=e.input.charCodeAt(e.position));)if(39===r){if(ad(e,i,e.position,!0),39!==(r=e.input.charCodeAt(++e.position)))return!0;i=e.position,e.position++,n=e.position}else Tc(r)?(ad(e,i,n,!0),UM(e,En(e,!1,t)),i=n=e.position):e.position===e.lineStart&&v4(e)?ar(e,"unexpected end of the document within a single quoted scalar"):(e.position++,n=e.position);ar(e,"unexpected end of the stream within a single quoted scalar")}function kVe(e,t){var r,i,n,a,s,l=e.input.charCodeAt(e.position);if(34!==l)return!1;for(e.kind="scalar",e.result="",e.position++,r=i=e.position;0!==(l=e.input.charCodeAt(e.position));){if(34===l)return ad(e,r,e.position,!0),e.position++,!0;if(92===l){if(ad(e,r,e.position,!0),Tc(l=e.input.charCodeAt(++e.position)))En(e,!1,t);else if(l<256&&Bte[l])e.result+=Fte[l],e.position++;else if(0<(s=yVe(l))){for(n=s,a=0;0l&&(l=e.lineIndent),Tc(f))u++;else{if(e.lineIndentt)&&0!==u)ar(e,"bad indentation of a sequence entry");else if(e.lineIndentt)&&(v&&(s=e.line,l=e.lineStart,u=e.position),bg(e,t,p4,!0,n)&&(v?g=e.result:y=e.result),v||(xg(e,f,p,m,g,y,s,l,u),m=g=y=null),En(e,!0,-1),b=e.input.charCodeAt(e.position)),(e.line===a||e.lineIndent>t)&&0!==b)ar(e,"bad indentation of a mapping entry");else if(e.lineIndentt?u=1:e.lineIndent===t?u=0:e.lineIndentt?u=1:e.lineIndent===t?u=0:e.lineIndent